commit e6111032d11159191fa28a51e55ccf243bf281e7 Author: Class_Student Date: Mon Nov 11 12:07:11 2024 +0300 init commit diff --git a/console_ui/Program.cs b/console_ui/Program.cs new file mode 100644 index 0000000..1d02d22 --- /dev/null +++ b/console_ui/Program.cs @@ -0,0 +1,31 @@ +using data.RemoteData.RemoteDataBase; +using data.Repository; +using domain.UseCase; +using ui; +using Microsoft.Extensions.DependencyInjection; + +// Создаем экземпляр репозиториев + +IServiceCollection services = new ServiceCollection(); + +services + .AddDbContext() + .AddSingleton() + .AddSingleton() + .AddSingleton() + .AddSingleton() + .AddSingleton() + .AddSingleton() + .AddSingleton() + .AddSingleton() + .AddSingleton(); + + + + +var serviceProvider = services.BuildServiceProvider(); +// Создаем пользовательский интерфейс +MainMenuUI mainMenuUI = serviceProvider.GetService(); + +// Выводим главное меню +mainMenuUI.DisplayMenu(); \ No newline at end of file diff --git a/console_ui/console_ui.csproj b/console_ui/console_ui.csproj new file mode 100644 index 0000000..883c822 --- /dev/null +++ b/console_ui/console_ui.csproj @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + Exe + net8.0 + enable + enable + + + diff --git a/console_ui/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs b/console_ui/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs new file mode 100644 index 0000000..2217181 --- /dev/null +++ b/console_ui/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs @@ -0,0 +1,4 @@ +// +using System; +using System.Reflection; +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v8.0", FrameworkDisplayName = ".NET 8.0")] diff --git a/console_ui/obj/Debug/net8.0/console_ui.AssemblyInfo.cs b/console_ui/obj/Debug/net8.0/console_ui.AssemblyInfo.cs new file mode 100644 index 0000000..ac8a828 --- /dev/null +++ b/console_ui/obj/Debug/net8.0/console_ui.AssemblyInfo.cs @@ -0,0 +1,23 @@ +//------------------------------------------------------------------------------ +// +// Этот код создан программой. +// Исполняемая версия:4.0.30319.42000 +// +// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае +// повторной генерации кода. +// +//------------------------------------------------------------------------------ + +using System; +using System.Reflection; + +[assembly: System.Reflection.AssemblyCompanyAttribute("console_ui")] +[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] +[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] +[assembly: System.Reflection.AssemblyProductAttribute("console_ui")] +[assembly: System.Reflection.AssemblyTitleAttribute("console_ui")] +[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] + +// Создано классом WriteCodeFragment MSBuild. + diff --git a/console_ui/obj/Debug/net8.0/console_ui.AssemblyInfoInputs.cache b/console_ui/obj/Debug/net8.0/console_ui.AssemblyInfoInputs.cache new file mode 100644 index 0000000..62e776c --- /dev/null +++ b/console_ui/obj/Debug/net8.0/console_ui.AssemblyInfoInputs.cache @@ -0,0 +1 @@ +ba882f03fdfa9546ef7659464bc47e4a0ca2d53498595f377280140f0c41eed4 diff --git a/console_ui/obj/Debug/net8.0/console_ui.GeneratedMSBuildEditorConfig.editorconfig b/console_ui/obj/Debug/net8.0/console_ui.GeneratedMSBuildEditorConfig.editorconfig new file mode 100644 index 0000000..29a1ff8 --- /dev/null +++ b/console_ui/obj/Debug/net8.0/console_ui.GeneratedMSBuildEditorConfig.editorconfig @@ -0,0 +1,13 @@ +is_global = true +build_property.TargetFramework = net8.0 +build_property.TargetPlatformMinVersion = +build_property.UsingMicrosoftNETSdkWeb = +build_property.ProjectTypeGuids = +build_property.InvariantGlobalization = +build_property.PlatformNeutralAssembly = +build_property.EnforceExtendedAnalyzerRules = +build_property._SupportedPlatformList = Linux,macOS,Windows +build_property.RootNamespace = console_ui +build_property.ProjectDir = C:\Users\class_student\source\repos\presence\console_ui\ +build_property.EnableComHosting = +build_property.EnableGeneratedComInterfaceComImportInterop = diff --git a/console_ui/obj/Debug/net8.0/console_ui.GlobalUsings.g.cs b/console_ui/obj/Debug/net8.0/console_ui.GlobalUsings.g.cs new file mode 100644 index 0000000..8578f3d --- /dev/null +++ b/console_ui/obj/Debug/net8.0/console_ui.GlobalUsings.g.cs @@ -0,0 +1,8 @@ +// +global using global::System; +global using global::System.Collections.Generic; +global using global::System.IO; +global using global::System.Linq; +global using global::System.Net.Http; +global using global::System.Threading; +global using global::System.Threading.Tasks; diff --git a/console_ui/obj/Debug/net8.0/console_ui.assets.cache b/console_ui/obj/Debug/net8.0/console_ui.assets.cache new file mode 100644 index 0000000..397db2b Binary files /dev/null and b/console_ui/obj/Debug/net8.0/console_ui.assets.cache differ diff --git a/console_ui/obj/Debug/net8.0/console_ui.csproj.AssemblyReference.cache b/console_ui/obj/Debug/net8.0/console_ui.csproj.AssemblyReference.cache new file mode 100644 index 0000000..bd7e5d8 Binary files /dev/null and b/console_ui/obj/Debug/net8.0/console_ui.csproj.AssemblyReference.cache differ diff --git a/console_ui/obj/console_ui.csproj.nuget.dgspec.json b/console_ui/obj/console_ui.csproj.nuget.dgspec.json new file mode 100644 index 0000000..f4aa467 --- /dev/null +++ b/console_ui/obj/console_ui.csproj.nuget.dgspec.json @@ -0,0 +1,310 @@ +{ + "format": 1, + "restore": { + "C:\\Users\\class_student\\source\\repos\\presence\\console_ui\\console_ui.csproj": {} + }, + "projects": { + "C:\\Users\\class_student\\source\\repos\\presence\\console_ui\\console_ui.csproj": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "C:\\Users\\class_student\\source\\repos\\presence\\console_ui\\console_ui.csproj", + "projectName": "console_ui", + "projectPath": "C:\\Users\\class_student\\source\\repos\\presence\\console_ui\\console_ui.csproj", + "packagesPath": "C:\\Users\\class_student\\.nuget\\packages\\", + "outputPath": "C:\\Users\\class_student\\source\\repos\\presence\\console_ui\\obj\\", + "projectStyle": "PackageReference", + "fallbackFolders": [ + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" + ], + "configFilePaths": [ + "C:\\Users\\class_student\\AppData\\Roaming\\NuGet\\NuGet.Config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config" + ], + "originalTargetFrameworks": [ + "net8.0" + ], + "sources": { + "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "projectReferences": { + "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj": { + "projectPath": "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj" + }, + "C:\\Users\\class_student\\source\\repos\\presence\\domain\\domain.csproj": { + "projectPath": "C:\\Users\\class_student\\source\\repos\\presence\\domain\\domain.csproj" + }, + "C:\\Users\\class_student\\source\\repos\\presence\\ui\\ui.csproj": { + "projectPath": "C:\\Users\\class_student\\source\\repos\\presence\\ui\\ui.csproj" + } + } + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + }, + "restoreAuditProperties": { + "enableAudit": "true", + "auditLevel": "low", + "auditMode": "direct" + } + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": { + "target": "Package", + "version": "[8.0.1, )" + } + }, + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "Microsoft.NETCore.App": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.204/PortableRuntimeIdentifierGraph.json" + } + } + }, + "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj", + "projectName": "data", + "projectPath": "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj", + "packagesPath": "C:\\Users\\class_student\\.nuget\\packages\\", + "outputPath": "C:\\Users\\class_student\\source\\repos\\presence\\data\\obj\\", + "projectStyle": "PackageReference", + "fallbackFolders": [ + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" + ], + "configFilePaths": [ + "C:\\Users\\class_student\\AppData\\Roaming\\NuGet\\NuGet.Config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config" + ], + "originalTargetFrameworks": [ + "net8.0" + ], + "sources": { + "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "projectReferences": {} + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + }, + "restoreAuditProperties": { + "enableAudit": "true", + "auditLevel": "low", + "auditMode": "direct" + } + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "dependencies": { + "Microsoft.EntityFrameworkCore": { + "target": "Package", + "version": "[8.0.10, )" + }, + "Microsoft.EntityFrameworkCore.Design": { + "include": "Runtime, Build, Native, ContentFiles, Analyzers, BuildTransitive", + "suppressParent": "All", + "target": "Package", + "version": "[8.0.10, )" + }, + "Npgsql.EntityFrameworkCore.PostgreSQL": { + "target": "Package", + "version": "[8.0.10, )" + } + }, + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "Microsoft.NETCore.App": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.204/PortableRuntimeIdentifierGraph.json" + } + } + }, + "C:\\Users\\class_student\\source\\repos\\presence\\domain\\domain.csproj": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "C:\\Users\\class_student\\source\\repos\\presence\\domain\\domain.csproj", + "projectName": "domain", + "projectPath": "C:\\Users\\class_student\\source\\repos\\presence\\domain\\domain.csproj", + "packagesPath": "C:\\Users\\class_student\\.nuget\\packages\\", + "outputPath": "C:\\Users\\class_student\\source\\repos\\presence\\domain\\obj\\", + "projectStyle": "PackageReference", + "fallbackFolders": [ + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" + ], + "configFilePaths": [ + "C:\\Users\\class_student\\AppData\\Roaming\\NuGet\\NuGet.Config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config" + ], + "originalTargetFrameworks": [ + "net8.0" + ], + "sources": { + "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "projectReferences": { + "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj": { + "projectPath": "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj" + } + } + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + }, + "restoreAuditProperties": { + "enableAudit": "true", + "auditLevel": "low", + "auditMode": "direct" + } + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "dependencies": { + "ClosedXML": { + "target": "Package", + "version": "[0.104.1, )" + } + }, + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "Microsoft.NETCore.App": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.204/PortableRuntimeIdentifierGraph.json" + } + } + }, + "C:\\Users\\class_student\\source\\repos\\presence\\ui\\ui.csproj": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "C:\\Users\\class_student\\source\\repos\\presence\\ui\\ui.csproj", + "projectName": "ui", + "projectPath": "C:\\Users\\class_student\\source\\repos\\presence\\ui\\ui.csproj", + "packagesPath": "C:\\Users\\class_student\\.nuget\\packages\\", + "outputPath": "C:\\Users\\class_student\\source\\repos\\presence\\ui\\obj\\", + "projectStyle": "PackageReference", + "fallbackFolders": [ + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" + ], + "configFilePaths": [ + "C:\\Users\\class_student\\AppData\\Roaming\\NuGet\\NuGet.Config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config" + ], + "originalTargetFrameworks": [ + "net8.0" + ], + "sources": { + "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "projectReferences": { + "C:\\Users\\class_student\\source\\repos\\presence\\domain\\domain.csproj": { + "projectPath": "C:\\Users\\class_student\\source\\repos\\presence\\domain\\domain.csproj" + } + } + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + }, + "restoreAuditProperties": { + "enableAudit": "true", + "auditLevel": "low", + "auditMode": "direct" + } + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "Microsoft.NETCore.App": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.204/PortableRuntimeIdentifierGraph.json" + } + } + } + } +} \ No newline at end of file diff --git a/console_ui/obj/console_ui.csproj.nuget.g.props b/console_ui/obj/console_ui.csproj.nuget.g.props new file mode 100644 index 0000000..d669d1a --- /dev/null +++ b/console_ui/obj/console_ui.csproj.nuget.g.props @@ -0,0 +1,19 @@ + + + + True + NuGet + $(MSBuildThisFileDirectory)project.assets.json + $(UserProfile)\.nuget\packages\ + C:\Users\class_student\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages + PackageReference + 6.9.2 + + + + + + + + + \ No newline at end of file diff --git a/console_ui/obj/console_ui.csproj.nuget.g.targets b/console_ui/obj/console_ui.csproj.nuget.g.targets new file mode 100644 index 0000000..baac958 --- /dev/null +++ b/console_ui/obj/console_ui.csproj.nuget.g.targets @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/console_ui/obj/project.assets.json b/console_ui/obj/project.assets.json new file mode 100644 index 0000000..c31d889 --- /dev/null +++ b/console_ui/obj/project.assets.json @@ -0,0 +1,1144 @@ +{ + "version": 3, + "targets": { + "net8.0": { + "ClosedXML/0.104.1": { + "type": "package", + "dependencies": { + "ClosedXML.Parser": "[1.2.0, 2.0.0)", + "DocumentFormat.OpenXml": "[3.0.1, 4.0.0)", + "ExcelNumberFormat": "1.1.0", + "RBush": "3.2.0", + "SixLabors.Fonts": "1.0.0", + "System.IO.Packaging": "8.0.0" + }, + "compile": { + "lib/netstandard2.1/ClosedXML.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/netstandard2.1/ClosedXML.dll": { + "related": ".pdb;.xml" + } + } + }, + "ClosedXML.Parser/1.2.0": { + "type": "package", + "compile": { + "lib/netstandard2.1/ClosedXML.Parser.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.1/ClosedXML.Parser.dll": { + "related": ".xml" + } + } + }, + "DocumentFormat.OpenXml/3.0.1": { + "type": "package", + "dependencies": { + "DocumentFormat.OpenXml.Framework": "3.0.1" + }, + "compile": { + "lib/net8.0/DocumentFormat.OpenXml.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/DocumentFormat.OpenXml.dll": { + "related": ".xml" + } + } + }, + "DocumentFormat.OpenXml.Framework/3.0.1": { + "type": "package", + "dependencies": { + "System.IO.Packaging": "8.0.0" + }, + "compile": { + "lib/net8.0/DocumentFormat.OpenXml.Framework.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/DocumentFormat.OpenXml.Framework.dll": { + "related": ".xml" + } + } + }, + "ExcelNumberFormat/1.1.0": { + "type": "package", + "compile": { + "lib/netstandard2.0/ExcelNumberFormat.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/ExcelNumberFormat.dll": { + "related": ".xml" + } + } + }, + "Microsoft.EntityFrameworkCore/8.0.10": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore.Abstractions": "8.0.10", + "Microsoft.EntityFrameworkCore.Analyzers": "8.0.10", + "Microsoft.Extensions.Caching.Memory": "8.0.1", + "Microsoft.Extensions.Logging": "8.0.1" + }, + "compile": { + "lib/net8.0/Microsoft.EntityFrameworkCore.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.EntityFrameworkCore.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/Microsoft.EntityFrameworkCore.props": {} + } + }, + "Microsoft.EntityFrameworkCore.Abstractions/8.0.10": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": { + "related": ".xml" + } + } + }, + "Microsoft.EntityFrameworkCore.Analyzers/8.0.10": { + "type": "package", + "compile": { + "lib/netstandard2.0/_._": {} + }, + "runtime": { + "lib/netstandard2.0/_._": {} + } + }, + "Microsoft.EntityFrameworkCore.Relational/8.0.10": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore": "8.0.10", + "Microsoft.Extensions.Configuration.Abstractions": "8.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": { + "related": ".xml" + } + } + }, + "Microsoft.Extensions.Caching.Abstractions/8.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Primitives": "8.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.Caching.Memory/8.0.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Caching.Abstractions": "8.0.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2", + "Microsoft.Extensions.Logging.Abstractions": "8.0.2", + "Microsoft.Extensions.Options": "8.0.2", + "Microsoft.Extensions.Primitives": "8.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.Configuration.Abstractions/8.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Primitives": "8.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.DependencyInjection/8.0.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/8.0.2": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.Logging/8.0.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "8.0.1", + "Microsoft.Extensions.Logging.Abstractions": "8.0.2", + "Microsoft.Extensions.Options": "8.0.2" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Logging.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.Logging.Abstractions/8.0.2": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/Microsoft.Extensions.Logging.Abstractions.targets": {} + } + }, + "Microsoft.Extensions.Options/8.0.2": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.0", + "Microsoft.Extensions.Primitives": "8.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Options.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Options.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/Microsoft.Extensions.Options.targets": {} + } + }, + "Microsoft.Extensions.Primitives/8.0.0": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.Extensions.Primitives.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Primitives.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Npgsql/8.0.5": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "8.0.0" + }, + "compile": { + "lib/net8.0/Npgsql.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Npgsql.dll": { + "related": ".xml" + } + } + }, + "Npgsql.EntityFrameworkCore.PostgreSQL/8.0.10": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore": "8.0.10", + "Microsoft.EntityFrameworkCore.Abstractions": "8.0.10", + "Microsoft.EntityFrameworkCore.Relational": "8.0.10", + "Npgsql": "8.0.5" + }, + "compile": { + "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll": { + "related": ".xml" + } + } + }, + "RBush/3.2.0": { + "type": "package", + "compile": { + "lib/net6.0/RBush.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/RBush.dll": { + "related": ".xml" + } + } + }, + "SixLabors.Fonts/1.0.0": { + "type": "package", + "compile": { + "lib/netcoreapp3.1/SixLabors.Fonts.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netcoreapp3.1/SixLabors.Fonts.dll": { + "related": ".xml" + } + } + }, + "System.IO.Packaging/8.0.0": { + "type": "package", + "compile": { + "lib/net8.0/System.IO.Packaging.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.IO.Packaging.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "data/1.0.0": { + "type": "project", + "framework": ".NETCoreApp,Version=v8.0", + "dependencies": { + "Microsoft.EntityFrameworkCore": "8.0.10", + "Npgsql.EntityFrameworkCore.PostgreSQL": "8.0.10" + }, + "compile": { + "bin/placeholder/data.dll": {} + }, + "runtime": { + "bin/placeholder/data.dll": {} + } + }, + "domain/1.0.0": { + "type": "project", + "framework": ".NETCoreApp,Version=v8.0", + "dependencies": { + "ClosedXML": "0.104.1", + "data": "1.0.0" + }, + "compile": { + "bin/placeholder/domain.dll": {} + }, + "runtime": { + "bin/placeholder/domain.dll": {} + } + }, + "ui/1.0.0": { + "type": "project", + "framework": ".NETCoreApp,Version=v8.0", + "dependencies": { + "domain": "1.0.0" + }, + "compile": { + "bin/placeholder/ui.dll": {} + }, + "runtime": { + "bin/placeholder/ui.dll": {} + } + } + } + }, + "libraries": { + "ClosedXML/0.104.1": { + "sha512": "RVm2fUNWJlBJlg07shrfeWzrHPG5ypI/vARqdUOUbUdaog8yBw8l4IbCHf2MXt0AXtzaZqGNqhFaCAHigCBdfw==", + "type": "package", + "path": "closedxml/0.104.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "closedxml.0.104.1.nupkg.sha512", + "closedxml.nuspec", + "lib/netstandard2.0/ClosedXML.dll", + "lib/netstandard2.0/ClosedXML.pdb", + "lib/netstandard2.0/ClosedXML.xml", + "lib/netstandard2.1/ClosedXML.dll", + "lib/netstandard2.1/ClosedXML.pdb", + "lib/netstandard2.1/ClosedXML.xml", + "nuget-logo.png" + ] + }, + "ClosedXML.Parser/1.2.0": { + "sha512": "w+/0tsxABS3lkSH8EUlA7IGme+mq5T/Puf3DbOiTckmSuUpAUO2LK29oXYByCcWkBv6wcRHxgWlQb1lxkwI0Tw==", + "type": "package", + "path": "closedxml.parser/1.2.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "closedxml.parser.1.2.0.nupkg.sha512", + "closedxml.parser.nuspec", + "lib/netstandard2.0/ClosedXML.Parser.dll", + "lib/netstandard2.0/ClosedXML.Parser.xml", + "lib/netstandard2.1/ClosedXML.Parser.dll", + "lib/netstandard2.1/ClosedXML.Parser.xml" + ] + }, + "DocumentFormat.OpenXml/3.0.1": { + "sha512": "DCK1cwFUJ1FGGyYyo++HWl9H1RkqMWIu+FGOLRy6E4L4y0/HIhlJ7N/n1HKboFfOwKn1cMBRxt1RCuDbIEy5YQ==", + "type": "package", + "path": "documentformat.openxml/3.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "documentformat.openxml.3.0.1.nupkg.sha512", + "documentformat.openxml.nuspec", + "icon.png", + "lib/net35/DocumentFormat.OpenXml.dll", + "lib/net35/DocumentFormat.OpenXml.xml", + "lib/net40/DocumentFormat.OpenXml.dll", + "lib/net40/DocumentFormat.OpenXml.xml", + "lib/net46/DocumentFormat.OpenXml.dll", + "lib/net46/DocumentFormat.OpenXml.xml", + "lib/net8.0/DocumentFormat.OpenXml.dll", + "lib/net8.0/DocumentFormat.OpenXml.xml", + "lib/netstandard2.0/DocumentFormat.OpenXml.dll", + "lib/netstandard2.0/DocumentFormat.OpenXml.xml" + ] + }, + "DocumentFormat.OpenXml.Framework/3.0.1": { + "sha512": "ifyI7OW7sggz7LQMIAD2aUsY/zVUON9QaHrpZ4MK33iVMeHlTG4uhUE2aLWb31nry+LCs2ALDAwf8OfUJGjgBg==", + "type": "package", + "path": "documentformat.openxml.framework/3.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "documentformat.openxml.framework.3.0.1.nupkg.sha512", + "documentformat.openxml.framework.nuspec", + "icon.png", + "lib/net35/DocumentFormat.OpenXml.Framework.dll", + "lib/net35/DocumentFormat.OpenXml.Framework.xml", + "lib/net40/DocumentFormat.OpenXml.Framework.dll", + "lib/net40/DocumentFormat.OpenXml.Framework.xml", + "lib/net46/DocumentFormat.OpenXml.Framework.dll", + "lib/net46/DocumentFormat.OpenXml.Framework.xml", + "lib/net6.0/DocumentFormat.OpenXml.Framework.dll", + "lib/net6.0/DocumentFormat.OpenXml.Framework.xml", + "lib/net8.0/DocumentFormat.OpenXml.Framework.dll", + "lib/net8.0/DocumentFormat.OpenXml.Framework.xml", + "lib/netstandard2.0/DocumentFormat.OpenXml.Framework.dll", + "lib/netstandard2.0/DocumentFormat.OpenXml.Framework.xml" + ] + }, + "ExcelNumberFormat/1.1.0": { + "sha512": "R3BVHPs9O+RkExbZYTGT0+9HLbi8ZrNij1Yziyw6znd3J7P3uoIR07uwTLGOogtz1p6+0sna66eBoXu7tBiVQA==", + "type": "package", + "path": "excelnumberformat/1.1.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "excelnumberformat.1.1.0.nupkg.sha512", + "excelnumberformat.nuspec", + "icon.png", + "lib/net20/ExcelNumberFormat.dll", + "lib/net20/ExcelNumberFormat.xml", + "lib/netstandard1.0/ExcelNumberFormat.dll", + "lib/netstandard1.0/ExcelNumberFormat.xml", + "lib/netstandard2.0/ExcelNumberFormat.dll", + "lib/netstandard2.0/ExcelNumberFormat.xml" + ] + }, + "Microsoft.EntityFrameworkCore/8.0.10": { + "sha512": "PPkQdIqfR1nU3n6YgGGDk8G+eaYbaAKM1AzIQtlPNTKf10Osg3N9T+iK9AlnSA/ujsK00flPpFHVfJrbuBFS1A==", + "type": "package", + "path": "microsoft.entityframeworkcore/8.0.10", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "buildTransitive/net8.0/Microsoft.EntityFrameworkCore.props", + "lib/net8.0/Microsoft.EntityFrameworkCore.dll", + "lib/net8.0/Microsoft.EntityFrameworkCore.xml", + "microsoft.entityframeworkcore.8.0.10.nupkg.sha512", + "microsoft.entityframeworkcore.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.Abstractions/8.0.10": { + "sha512": "FV0QlcX9INY4kAD2o72uPtyOh0nZut2jB11Jf9mNYBtHay8gDLe+x4AbXFwuQg+eSvofjT7naV82e827zGfyMg==", + "type": "package", + "path": "microsoft.entityframeworkcore.abstractions/8.0.10", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll", + "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.xml", + "microsoft.entityframeworkcore.abstractions.8.0.10.nupkg.sha512", + "microsoft.entityframeworkcore.abstractions.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.Analyzers/8.0.10": { + "sha512": "51KkPIc0EMv/gVXhPIUi6cwJE9Mvh+PLr4Lap4naLcsoGZ0lF2SvOPgUUprwRV3MnN7nyD1XPhT5RJ/p+xFAXw==", + "type": "package", + "path": "microsoft.entityframeworkcore.analyzers/8.0.10", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "analyzers/dotnet/cs/Microsoft.EntityFrameworkCore.Analyzers.dll", + "docs/PACKAGE.md", + "lib/netstandard2.0/_._", + "microsoft.entityframeworkcore.analyzers.8.0.10.nupkg.sha512", + "microsoft.entityframeworkcore.analyzers.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.Relational/8.0.10": { + "sha512": "OefBEE47kGKPRPV3OT+FAW6o5BFgLk2D9EoeWVy7NbOepzUneayLQxbVE098FfedTyMwxvZQoDD9LrvZc3MadA==", + "type": "package", + "path": "microsoft.entityframeworkcore.relational/8.0.10", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll", + "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.xml", + "microsoft.entityframeworkcore.relational.8.0.10.nupkg.sha512", + "microsoft.entityframeworkcore.relational.nuspec" + ] + }, + "Microsoft.Extensions.Caching.Abstractions/8.0.0": { + "sha512": "3KuSxeHoNYdxVYfg2IRZCThcrlJ1XJqIXkAWikCsbm5C/bCjv7G0WoKDyuR98Q+T607QT2Zl5GsbGRkENcV2yQ==", + "type": "package", + "path": "microsoft.extensions.caching.abstractions/8.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Caching.Abstractions.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Caching.Abstractions.targets", + "lib/net462/Microsoft.Extensions.Caching.Abstractions.dll", + "lib/net462/Microsoft.Extensions.Caching.Abstractions.xml", + "lib/net6.0/Microsoft.Extensions.Caching.Abstractions.dll", + "lib/net6.0/Microsoft.Extensions.Caching.Abstractions.xml", + "lib/net7.0/Microsoft.Extensions.Caching.Abstractions.dll", + "lib/net7.0/Microsoft.Extensions.Caching.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.xml", + "lib/netstandard2.0/Microsoft.Extensions.Caching.Abstractions.dll", + "lib/netstandard2.0/Microsoft.Extensions.Caching.Abstractions.xml", + "microsoft.extensions.caching.abstractions.8.0.0.nupkg.sha512", + "microsoft.extensions.caching.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Caching.Memory/8.0.1": { + "sha512": "HFDnhYLccngrzyGgHkjEDU5FMLn4MpOsr5ElgsBMC4yx6lJh4jeWO7fHS8+TXPq+dgxCmUa/Trl8svObmwW4QA==", + "type": "package", + "path": "microsoft.extensions.caching.memory/8.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Caching.Memory.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Caching.Memory.targets", + "lib/net462/Microsoft.Extensions.Caching.Memory.dll", + "lib/net462/Microsoft.Extensions.Caching.Memory.xml", + "lib/net6.0/Microsoft.Extensions.Caching.Memory.dll", + "lib/net6.0/Microsoft.Extensions.Caching.Memory.xml", + "lib/net7.0/Microsoft.Extensions.Caching.Memory.dll", + "lib/net7.0/Microsoft.Extensions.Caching.Memory.xml", + "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll", + "lib/net8.0/Microsoft.Extensions.Caching.Memory.xml", + "lib/netstandard2.0/Microsoft.Extensions.Caching.Memory.dll", + "lib/netstandard2.0/Microsoft.Extensions.Caching.Memory.xml", + "microsoft.extensions.caching.memory.8.0.1.nupkg.sha512", + "microsoft.extensions.caching.memory.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Configuration.Abstractions/8.0.0": { + "sha512": "3lE/iLSutpgX1CC0NOW70FJoGARRHbyKmG7dc0klnUZ9Dd9hS6N/POPWhKhMLCEuNN5nXEY5agmlFtH562vqhQ==", + "type": "package", + "path": "microsoft.extensions.configuration.abstractions/8.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Configuration.Abstractions.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Configuration.Abstractions.targets", + "lib/net462/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/net462/Microsoft.Extensions.Configuration.Abstractions.xml", + "lib/net6.0/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/net6.0/Microsoft.Extensions.Configuration.Abstractions.xml", + "lib/net7.0/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/net7.0/Microsoft.Extensions.Configuration.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.xml", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.xml", + "microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512", + "microsoft.extensions.configuration.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.DependencyInjection/8.0.1": { + "sha512": "BmANAnR5Xd4Oqw7yQ75xOAYODybZQRzdeNucg7kS5wWKd2PNnMdYtJ2Vciy0QLylRmv42DGl5+AFL9izA6F1Rw==", + "type": "package", + "path": "microsoft.extensions.dependencyinjection/8.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.DependencyInjection.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.targets", + "lib/net462/Microsoft.Extensions.DependencyInjection.dll", + "lib/net462/Microsoft.Extensions.DependencyInjection.xml", + "lib/net6.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/net6.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/net7.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/net7.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.dll", + "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.xml", + "microsoft.extensions.dependencyinjection.8.0.1.nupkg.sha512", + "microsoft.extensions.dependencyinjection.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/8.0.2": { + "sha512": "3iE7UF7MQkCv1cxzCahz+Y/guQbTqieyxyaWKhrRO91itI9cOKO76OHeQDahqG4MmW5umr3CcCvGmK92lWNlbg==", + "type": "package", + "path": "microsoft.extensions.dependencyinjection.abstractions/8.0.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.DependencyInjection.Abstractions.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.Abstractions.targets", + "lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/net7.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net7.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "microsoft.extensions.dependencyinjection.abstractions.8.0.2.nupkg.sha512", + "microsoft.extensions.dependencyinjection.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Logging/8.0.1": { + "sha512": "4x+pzsQEbqxhNf1QYRr5TDkLP9UsLT3A6MdRKDDEgrW7h1ljiEPgTNhKYUhNCCAaVpQECVQ+onA91PTPnIp6Lw==", + "type": "package", + "path": "microsoft.extensions.logging/8.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Logging.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.targets", + "lib/net462/Microsoft.Extensions.Logging.dll", + "lib/net462/Microsoft.Extensions.Logging.xml", + "lib/net6.0/Microsoft.Extensions.Logging.dll", + "lib/net6.0/Microsoft.Extensions.Logging.xml", + "lib/net7.0/Microsoft.Extensions.Logging.dll", + "lib/net7.0/Microsoft.Extensions.Logging.xml", + "lib/net8.0/Microsoft.Extensions.Logging.dll", + "lib/net8.0/Microsoft.Extensions.Logging.xml", + "lib/netstandard2.0/Microsoft.Extensions.Logging.dll", + "lib/netstandard2.0/Microsoft.Extensions.Logging.xml", + "lib/netstandard2.1/Microsoft.Extensions.Logging.dll", + "lib/netstandard2.1/Microsoft.Extensions.Logging.xml", + "microsoft.extensions.logging.8.0.1.nupkg.sha512", + "microsoft.extensions.logging.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Logging.Abstractions/8.0.2": { + "sha512": "nroMDjS7hNBPtkZqVBbSiQaQjWRDxITI8Y7XnDs97rqG3EbzVTNLZQf7bIeUJcaHOV8bca47s1Uxq94+2oGdxA==", + "type": "package", + "path": "microsoft.extensions.logging.abstractions/8.0.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "analyzers/dotnet/roslyn3.11/cs/Microsoft.Extensions.Logging.Generators.dll", + "analyzers/dotnet/roslyn3.11/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/Microsoft.Extensions.Logging.Generators.dll", + "analyzers/dotnet/roslyn4.0/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Logging.Generators.dll", + "analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", + "buildTransitive/net461/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/net462/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/net6.0/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.targets", + "lib/net462/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/net462/Microsoft.Extensions.Logging.Abstractions.xml", + "lib/net6.0/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/net6.0/Microsoft.Extensions.Logging.Abstractions.xml", + "lib/net7.0/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/net7.0/Microsoft.Extensions.Logging.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.xml", + "lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.xml", + "microsoft.extensions.logging.abstractions.8.0.2.nupkg.sha512", + "microsoft.extensions.logging.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Options/8.0.2": { + "sha512": "dWGKvhFybsaZpGmzkGCbNNwBD1rVlWzrZKANLW/CcbFJpCEceMCGzT7zZwHOGBCbwM0SzBuceMj5HN1LKV1QqA==", + "type": "package", + "path": "microsoft.extensions.options/8.0.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Options.SourceGeneration.dll", + "analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "buildTransitive/net461/Microsoft.Extensions.Options.targets", + "buildTransitive/net462/Microsoft.Extensions.Options.targets", + "buildTransitive/net6.0/Microsoft.Extensions.Options.targets", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Options.targets", + "buildTransitive/netstandard2.0/Microsoft.Extensions.Options.targets", + "lib/net462/Microsoft.Extensions.Options.dll", + "lib/net462/Microsoft.Extensions.Options.xml", + "lib/net6.0/Microsoft.Extensions.Options.dll", + "lib/net6.0/Microsoft.Extensions.Options.xml", + "lib/net7.0/Microsoft.Extensions.Options.dll", + "lib/net7.0/Microsoft.Extensions.Options.xml", + "lib/net8.0/Microsoft.Extensions.Options.dll", + "lib/net8.0/Microsoft.Extensions.Options.xml", + "lib/netstandard2.0/Microsoft.Extensions.Options.dll", + "lib/netstandard2.0/Microsoft.Extensions.Options.xml", + "lib/netstandard2.1/Microsoft.Extensions.Options.dll", + "lib/netstandard2.1/Microsoft.Extensions.Options.xml", + "microsoft.extensions.options.8.0.2.nupkg.sha512", + "microsoft.extensions.options.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Primitives/8.0.0": { + "sha512": "bXJEZrW9ny8vjMF1JV253WeLhpEVzFo1lyaZu1vQ4ZxWUlVvknZ/+ftFgVheLubb4eZPSwwxBeqS1JkCOjxd8g==", + "type": "package", + "path": "microsoft.extensions.primitives/8.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Primitives.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Primitives.targets", + "lib/net462/Microsoft.Extensions.Primitives.dll", + "lib/net462/Microsoft.Extensions.Primitives.xml", + "lib/net6.0/Microsoft.Extensions.Primitives.dll", + "lib/net6.0/Microsoft.Extensions.Primitives.xml", + "lib/net7.0/Microsoft.Extensions.Primitives.dll", + "lib/net7.0/Microsoft.Extensions.Primitives.xml", + "lib/net8.0/Microsoft.Extensions.Primitives.dll", + "lib/net8.0/Microsoft.Extensions.Primitives.xml", + "lib/netstandard2.0/Microsoft.Extensions.Primitives.dll", + "lib/netstandard2.0/Microsoft.Extensions.Primitives.xml", + "microsoft.extensions.primitives.8.0.0.nupkg.sha512", + "microsoft.extensions.primitives.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Npgsql/8.0.5": { + "sha512": "zRG5V8cyeZLpzJlKzFKjEwkRMYIYnHWJvEor2lWXeccS2E1G2nIWYYhnukB51iz5XsWSVEtqg3AxTWM0QJ6vfg==", + "type": "package", + "path": "npgsql/8.0.5", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "lib/net6.0/Npgsql.dll", + "lib/net6.0/Npgsql.xml", + "lib/net7.0/Npgsql.dll", + "lib/net7.0/Npgsql.xml", + "lib/net8.0/Npgsql.dll", + "lib/net8.0/Npgsql.xml", + "lib/netstandard2.0/Npgsql.dll", + "lib/netstandard2.0/Npgsql.xml", + "lib/netstandard2.1/Npgsql.dll", + "lib/netstandard2.1/Npgsql.xml", + "npgsql.8.0.5.nupkg.sha512", + "npgsql.nuspec", + "postgresql.png" + ] + }, + "Npgsql.EntityFrameworkCore.PostgreSQL/8.0.10": { + "sha512": "gFPl9Dmxih7Yi4tZ3bITzZFzbxFMBx04gqTqcjoL2r5VEW+O2TA5UVw/wm/XW26NAJ7sg59Je0+9QrwiZt6MPQ==", + "type": "package", + "path": "npgsql.entityframeworkcore.postgresql/8.0.10", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll", + "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.xml", + "npgsql.entityframeworkcore.postgresql.8.0.10.nupkg.sha512", + "npgsql.entityframeworkcore.postgresql.nuspec", + "postgresql.png" + ] + }, + "RBush/3.2.0": { + "sha512": "ijGh9N0zZ7JfXk3oQkWCwK8SwSSByexbyh/MjbCjNxOft9eG5ZqKC1vdgiYq78h4IZRFmN4s3JZ/b10Jipud5w==", + "type": "package", + "path": "rbush/3.2.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net6.0/RBush.dll", + "lib/net6.0/RBush.xml", + "lib/netcoreapp3.1/RBush.dll", + "lib/netcoreapp3.1/RBush.xml", + "lib/netstandard1.2/RBush.dll", + "lib/netstandard1.2/RBush.xml", + "rbush.3.2.0.nupkg.sha512", + "rbush.nuspec", + "readme.md" + ] + }, + "SixLabors.Fonts/1.0.0": { + "sha512": "LFQsCZlV0xlUyXAOMUo5kkSl+8zAQXXbbdwWchtk0B4o7zotZhQsQOcJUELGHdfPfm/xDAsz6hONAuV25bJaAg==", + "type": "package", + "path": "sixlabors.fonts/1.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/netcoreapp3.1/SixLabors.Fonts.dll", + "lib/netcoreapp3.1/SixLabors.Fonts.xml", + "lib/netstandard2.0/SixLabors.Fonts.dll", + "lib/netstandard2.0/SixLabors.Fonts.xml", + "lib/netstandard2.1/SixLabors.Fonts.dll", + "lib/netstandard2.1/SixLabors.Fonts.xml", + "sixlabors.fonts.1.0.0.nupkg.sha512", + "sixlabors.fonts.128.png", + "sixlabors.fonts.nuspec" + ] + }, + "System.IO.Packaging/8.0.0": { + "sha512": "8g1V4YRpdGAxFcK8v9OjuMdIOJSpF30Zb1JGicwVZhly3I994WFyBdV6mQEo8d3T+URQe55/M0U0eIH0Hts1bg==", + "type": "package", + "path": "system.io.packaging/8.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.IO.Packaging.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/System.IO.Packaging.targets", + "lib/net462/System.IO.Packaging.dll", + "lib/net462/System.IO.Packaging.xml", + "lib/net6.0/System.IO.Packaging.dll", + "lib/net6.0/System.IO.Packaging.xml", + "lib/net7.0/System.IO.Packaging.dll", + "lib/net7.0/System.IO.Packaging.xml", + "lib/net8.0/System.IO.Packaging.dll", + "lib/net8.0/System.IO.Packaging.xml", + "lib/netstandard2.0/System.IO.Packaging.dll", + "lib/netstandard2.0/System.IO.Packaging.xml", + "system.io.packaging.8.0.0.nupkg.sha512", + "system.io.packaging.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "data/1.0.0": { + "type": "project", + "path": "../data/data.csproj", + "msbuildProject": "../data/data.csproj" + }, + "domain/1.0.0": { + "type": "project", + "path": "../domain/domain.csproj", + "msbuildProject": "../domain/domain.csproj" + }, + "ui/1.0.0": { + "type": "project", + "path": "../ui/ui.csproj", + "msbuildProject": "../ui/ui.csproj" + } + }, + "projectFileDependencyGroups": { + "net8.0": [ + "Microsoft.Extensions.DependencyInjection >= 8.0.1", + "data >= 1.0.0", + "domain >= 1.0.0", + "ui >= 1.0.0" + ] + }, + "packageFolders": { + "C:\\Users\\class_student\\.nuget\\packages\\": {}, + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages": {} + }, + "project": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "C:\\Users\\class_student\\source\\repos\\presence\\console_ui\\console_ui.csproj", + "projectName": "console_ui", + "projectPath": "C:\\Users\\class_student\\source\\repos\\presence\\console_ui\\console_ui.csproj", + "packagesPath": "C:\\Users\\class_student\\.nuget\\packages\\", + "outputPath": "C:\\Users\\class_student\\source\\repos\\presence\\console_ui\\obj\\", + "projectStyle": "PackageReference", + "fallbackFolders": [ + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" + ], + "configFilePaths": [ + "C:\\Users\\class_student\\AppData\\Roaming\\NuGet\\NuGet.Config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config" + ], + "originalTargetFrameworks": [ + "net8.0" + ], + "sources": { + "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "projectReferences": { + "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj": { + "projectPath": "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj" + }, + "C:\\Users\\class_student\\source\\repos\\presence\\domain\\domain.csproj": { + "projectPath": "C:\\Users\\class_student\\source\\repos\\presence\\domain\\domain.csproj" + }, + "C:\\Users\\class_student\\source\\repos\\presence\\ui\\ui.csproj": { + "projectPath": "C:\\Users\\class_student\\source\\repos\\presence\\ui\\ui.csproj" + } + } + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + }, + "restoreAuditProperties": { + "enableAudit": "true", + "auditLevel": "low", + "auditMode": "direct" + } + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": { + "target": "Package", + "version": "[8.0.1, )" + } + }, + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "Microsoft.NETCore.App": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.204/PortableRuntimeIdentifierGraph.json" + } + } + } +} \ No newline at end of file diff --git a/console_ui/obj/project.nuget.cache b/console_ui/obj/project.nuget.cache new file mode 100644 index 0000000..1db4945 --- /dev/null +++ b/console_ui/obj/project.nuget.cache @@ -0,0 +1,32 @@ +{ + "version": 2, + "dgSpecHash": "E1s2H8T8vOF8/RmQcwMKqWYSz4jZg9lB0dshd1kgyFkjOIdZxs1AH482+/GwmYcJnZVYfh9yNQ9egqvgSbtP2Q==", + "success": true, + "projectFilePath": "C:\\Users\\class_student\\source\\repos\\presence\\console_ui\\console_ui.csproj", + "expectedPackageFiles": [ + "C:\\Users\\class_student\\.nuget\\packages\\closedxml\\0.104.1\\closedxml.0.104.1.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\closedxml.parser\\1.2.0\\closedxml.parser.1.2.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\documentformat.openxml\\3.0.1\\documentformat.openxml.3.0.1.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\documentformat.openxml.framework\\3.0.1\\documentformat.openxml.framework.3.0.1.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\excelnumberformat\\1.1.0\\excelnumberformat.1.1.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.entityframeworkcore\\8.0.10\\microsoft.entityframeworkcore.8.0.10.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.entityframeworkcore.abstractions\\8.0.10\\microsoft.entityframeworkcore.abstractions.8.0.10.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.entityframeworkcore.analyzers\\8.0.10\\microsoft.entityframeworkcore.analyzers.8.0.10.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.entityframeworkcore.relational\\8.0.10\\microsoft.entityframeworkcore.relational.8.0.10.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.caching.abstractions\\8.0.0\\microsoft.extensions.caching.abstractions.8.0.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.caching.memory\\8.0.1\\microsoft.extensions.caching.memory.8.0.1.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.configuration.abstractions\\8.0.0\\microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.dependencyinjection\\8.0.1\\microsoft.extensions.dependencyinjection.8.0.1.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.dependencyinjection.abstractions\\8.0.2\\microsoft.extensions.dependencyinjection.abstractions.8.0.2.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.logging\\8.0.1\\microsoft.extensions.logging.8.0.1.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.logging.abstractions\\8.0.2\\microsoft.extensions.logging.abstractions.8.0.2.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.options\\8.0.2\\microsoft.extensions.options.8.0.2.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.primitives\\8.0.0\\microsoft.extensions.primitives.8.0.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\npgsql\\8.0.5\\npgsql.8.0.5.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\npgsql.entityframeworkcore.postgresql\\8.0.10\\npgsql.entityframeworkcore.postgresql.8.0.10.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\rbush\\3.2.0\\rbush.3.2.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\sixlabors.fonts\\1.0.0\\sixlabors.fonts.1.0.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\system.io.packaging\\8.0.0\\system.io.packaging.8.0.0.nupkg.sha512" + ], + "logs": [] +} \ No newline at end of file diff --git a/data/Exceptions/GroupNotFoundException.cs b/data/Exceptions/GroupNotFoundException.cs new file mode 100644 index 0000000..20583bf --- /dev/null +++ b/data/Exceptions/GroupNotFoundException.cs @@ -0,0 +1,10 @@ +using System; + +namespace Dataceptions +{ + public class GroupNotFoundException : RepositoryException + { + public GroupNotFoundException(int groupId) + : base($"Группа с ID {groupId} не найдена.") { } + } +} \ No newline at end of file diff --git a/data/Exceptions/RepositoryException.cs b/data/Exceptions/RepositoryException.cs new file mode 100644 index 0000000..5bb1803 --- /dev/null +++ b/data/Exceptions/RepositoryException.cs @@ -0,0 +1,9 @@ +using System; + +namespace Dataceptions +{ + public class RepositoryException : Exception + { + public RepositoryException(string message) : base(message) { } + } +} \ No newline at end of file diff --git a/data/Exceptions/UserNotFoundException.cs b/data/Exceptions/UserNotFoundException.cs new file mode 100644 index 0000000..686cb94 --- /dev/null +++ b/data/Exceptions/UserNotFoundException.cs @@ -0,0 +1,10 @@ +using System; + +namespace Dataceptions +{ + public class UserNotFoundException : RepositoryException + { + public UserNotFoundException(Guid userGuid) + : base($"Пользователь с GUID {userGuid} не найден.") { } + } +} \ No newline at end of file diff --git a/data/LocalData/Entity/Group.cs b/data/LocalData/Entity/Group.cs new file mode 100644 index 0000000..a6d1f5a --- /dev/null +++ b/data/LocalData/Entity/Group.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace domain.Models +{ + public class GroupLocalEntity + { + public required int Id { get; set; } + public required string Name { get; set; } + + } +} diff --git a/data/LocalData/Entity/Presence.cs b/data/LocalData/Entity/Presence.cs new file mode 100644 index 0000000..34d734f --- /dev/null +++ b/data/LocalData/Entity/Presence.cs @@ -0,0 +1,19 @@ + +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace domain.Models +{ + public class PresenceLocalEntity + { + public Guid UserGuid { get; set; } // Замените int на Guid + public int GroupId { get; set; } + public int LessonNumber { get; set; } + public DateTime Date { get; set; } + public bool IsAttedance { get; set; } + } + +} \ No newline at end of file diff --git a/data/LocalData/Entity/User.cs b/data/LocalData/Entity/User.cs new file mode 100644 index 0000000..fcd2fb1 --- /dev/null +++ b/data/LocalData/Entity/User.cs @@ -0,0 +1,25 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace domain.Models +{ + public class UserLocalEnity : IEquatable + { + + public required string FIO { get; set; } + public Guid Guid { get; set; } + + public required int GroupID { get; set; } + + + + public bool Equals(UserLocalEnity? other) + { + if (other == null) return false; + return this.Guid.Equals(other.Guid); + } + } +} diff --git a/data/LocalData/LocalStaticData.cs b/data/LocalData/LocalStaticData.cs new file mode 100644 index 0000000..d257752 --- /dev/null +++ b/data/LocalData/LocalStaticData.cs @@ -0,0 +1,36 @@ +using domain.Models; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Net.NetworkInformation; +using System.Text; +using System.Threading.Tasks; + +namespace data.LocalData +{ + public static class LocalStaticData + { + public static List groups => new List + + { + new GroupLocalEntity{ Id = 1, Name = "ИП1-21" }, + new GroupLocalEntity{ Id = 2, Name = "ИП1-22" }, + new GroupLocalEntity{ Id = 3, Name = "ИП1-23" }, + }; + + public static List users => new List + { + new UserLocalEnity{Guid=Guid.Parse("e6b9964d-ea9f-420a-84b9-af9633bbfab9"), FIO = "RandomFio", GroupID = 1 }, + new UserLocalEnity{Guid=Guid.Parse("8388d931-5bef-41be-a152-78f1aca980ed"), FIO = "RandomFio1", GroupID = 2 }, + new UserLocalEnity{Guid=Guid.Parse("ed174548-49ed-4503-a902-c970cbf27173"), FIO = "RandomFio2", GroupID = 3 }, + new UserLocalEnity{Guid=Guid.Parse("614c0a23-5bd5-43ae-b48e-d5750afbc282"), FIO = "RandomFio3", GroupID = 1 }, + new UserLocalEnity{Guid=Guid.Parse("efcc1473-c116-4244-b3f7-f2341a5c3003"), FIO = "RandomFio4", GroupID = 2 }, + new UserLocalEnity{Guid=Guid.Parse("60640fb3-ace2-4cad-81d5-a0a58bc2dbbd"), FIO = "RandomFio5", GroupID = 3 }, + }; + + public static List presences => new List + { + + }; + } +} diff --git a/data/RemoteData/RemoteDataBase/DAO/Excel.cs b/data/RemoteData/RemoteDataBase/DAO/Excel.cs new file mode 100644 index 0000000..9f44137 --- /dev/null +++ b/data/RemoteData/RemoteDataBase/DAO/Excel.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace data.RemoteData.RemoteDataBase.DAO +{ + public class Excel + { + public Guid UserGuid { get; set; } + public string UserName { get; set; } + public string FullName { get; set; } + public DateOnly Date { get; set; } + public bool IsAttedance { get; set; } + public int LessonNumber { get; set; } + public string GroupName { get; set; } + } +} \ No newline at end of file diff --git a/data/RemoteData/RemoteDataBase/DAO/Group.cs b/data/RemoteData/RemoteDataBase/DAO/Group.cs new file mode 100644 index 0000000..e0b98f7 --- /dev/null +++ b/data/RemoteData/RemoteDataBase/DAO/Group.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace data.RemoteData.RemoteDataBase.DAO +{ + public class GroupDao + { + public int Id { get; set; } + public string Name { get; set; } + public virtual IEnumerable Users { get; set; } + } +} diff --git a/data/RemoteData/RemoteDataBase/DAO/Presence.cs b/data/RemoteData/RemoteDataBase/DAO/Presence.cs new file mode 100644 index 0000000..b06a4a5 --- /dev/null +++ b/data/RemoteData/RemoteDataBase/DAO/Presence.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace data.RemoteData.RemoteDataBase.DAO +{ + public class PresenceDao + { + public int Id { get; set; } + public Guid UserGuid { get; set; } + public bool IsAttedance { get; set; } = true; + public DateOnly Date { get; set; } + public int LessonNumber { get; set; } + public virtual UserDao? UserDao { get; set; } + + } +} diff --git a/data/RemoteData/RemoteDataBase/DAO/User.cs b/data/RemoteData/RemoteDataBase/DAO/User.cs new file mode 100644 index 0000000..2ecc8a3 --- /dev/null +++ b/data/RemoteData/RemoteDataBase/DAO/User.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace data.RemoteData.RemoteDataBase.DAO +{ + public class UserDao + { + public string FIO { get; set; } + public Guid Guid { get; set; } + + public int GroupID { get; set; } + + public virtual GroupDao Group { get; set; } + public virtual IEnumerable Presences{ get; set; } + } +} \ No newline at end of file diff --git a/data/RemoteData/RemoteDataBase/DAO/UserAttendance.cs b/data/RemoteData/RemoteDataBase/DAO/UserAttendance.cs new file mode 100644 index 0000000..db79e89 --- /dev/null +++ b/data/RemoteData/RemoteDataBase/DAO/UserAttendance.cs @@ -0,0 +1,15 @@ +public class UserAttendance +{ + public Guid UserGuid { get; set; } + public double Attended { get; set; } + public double Missed { get; set; } + public double AttendanceRate { get; set; } +} + +public class GroupPresenceSummary +{ + public int UserCount { get; set; } + public int LessonCount { get; set; } + public double TotalAttendancePercentage { get; set; } + public List UserAttendances { get; set; } +} \ No newline at end of file diff --git a/data/RemoteData/RemoteDataBase/RemoteDatabaseContext.cs b/data/RemoteData/RemoteDataBase/RemoteDatabaseContext.cs new file mode 100644 index 0000000..d6f1161 --- /dev/null +++ b/data/RemoteData/RemoteDataBase/RemoteDatabaseContext.cs @@ -0,0 +1,43 @@ +using data.RemoteData.RemoteDataBase.DAO; +using Microsoft.EntityFrameworkCore; + +namespace data.RemoteData.RemoteDataBase +{ + public class RemoteDatabaseContext : DbContext + { + protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) + { + optionsBuilder.UseNpgsql("Host=45.67.56.214;Port=5421;Username=user15;Database=user15;Password=3XkvwMOb"); + } + + protected override void OnModelCreating(ModelBuilder modelBuilder) + { + // Настройка ключа и автоматической генерации для GroupDao + modelBuilder.Entity().HasKey(group => group.Id); + modelBuilder.Entity().Property(group => group.Id).ValueGeneratedOnAdd(); + + // Настройка ключа и автоматической генерации для UserDao + modelBuilder.Entity().HasKey(user => user.Guid); + modelBuilder.Entity().Property(user => user.Guid).ValueGeneratedOnAdd(); + + // Настройка составного ключа для PresenceDao + modelBuilder.Entity().HasKey(presense => new + { + presense.Id + + }); + + + // Настройка связи UserDao с PresenceDao + modelBuilder.Entity() + .Property(presence => presence.Id) + .ValueGeneratedOnAdd(); + modelBuilder.Entity().HasOne(presence => presence.UserDao).WithMany(user => user.Presences).HasForeignKey(presence => presence.UserGuid); + + } + + public DbSet Groups { get; set; } + public DbSet Users { get; set; } + public DbSet PresenceDaos { get; set; } + } +} diff --git a/data/Repository/GroupRepositoryImpl.cs b/data/Repository/GroupRepositoryImpl.cs new file mode 100644 index 0000000..e1125c2 --- /dev/null +++ b/data/Repository/GroupRepositoryImpl.cs @@ -0,0 +1,53 @@ +using Dataceptions; +using data.LocalData; +using data.RemoteData.RemoteDataBase.DAO; +using data.Repository; +using domain.Models; +using System.Collections.Generic; +using System.Linq; + +public class GroupRepositoryImpl : IGroupRepository +{ + private List _groups = LocalStaticData.groups; + + public GroupLocalEntity? GetGroupById(int groupId) + { + return _groups.FirstOrDefault(g => g.Id == groupId); + } + + // Метод для получения всех групп + public List GetAllGroup() => _groups; + + // Метод для добавления новой группы + public bool AddGroup(GroupLocalEntity group) + { + if (_groups.Any(g => g.Id == group.Id)) + return false; + + group.Id = _groups.Any() ? _groups.Max(g => g.Id) + 1 : 1; + _groups.Add(group); + return true; + } + + // Метод для обновления существующей группы + public bool UpdateGroupById(int groupID, GroupLocalEntity updatedGroup) + { + var existingGroup = GetGroupById(groupID); + if (existingGroup == null) + return false; + + existingGroup.Name = updatedGroup.Name; + return true; + } + + + public bool RemoveGroupById(int groupID) + { + var existingGroup = GetGroupById(groupID); + if (existingGroup == null) + return false; + + _groups.Remove(existingGroup); + return true; + } +} diff --git a/data/Repository/IGroupRepository.cs b/data/Repository/IGroupRepository.cs new file mode 100644 index 0000000..7e099bf --- /dev/null +++ b/data/Repository/IGroupRepository.cs @@ -0,0 +1,20 @@ +using data.RemoteData.RemoteDataBase.DAO; +using domain.Models; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace data.Repository +{ + public interface IGroupRepository + { + List GetAllGroup(); + bool RemoveGroupById(int groupID); + bool UpdateGroupById(int groupID, GroupLocalEntity updatedGroup); + GroupLocalEntity GetGroupById(int groupID); + bool AddGroup(GroupLocalEntity newGroup); + + } +} \ No newline at end of file diff --git a/data/Repository/IPresenceRepository.cs b/data/Repository/IPresenceRepository.cs new file mode 100644 index 0000000..789559f --- /dev/null +++ b/data/Repository/IPresenceRepository.cs @@ -0,0 +1,21 @@ +using data.RemoteData.RemoteDataBase.DAO; +using domain.Models; +using System; +using System.Collections.Generic; + +namespace data.Repository +{ + public interface IPresenceRepository + { + void SavePresence(List presences); + List GetPresenceByGroup(int groupId); + List GetPresenceByGroupAndDate(int groupId, DateTime date); + DateOnly? GetLastDateByGroupId(int groupId); + public GroupPresenceSummary GetGeneralPresenceForGroup(int groupId); + bool UpdateAtt(Guid UserGuid, int groupId, int firstLesson, int lastLesson, DateOnly date, bool isAttendance); + + void MarkUserAsAbsent(Guid userGuid, int firstLessonNumber, int lastLessonNumber); + void AddPresence(PresenceLocalEntity presence); + List GetAttendanceByGroup(int groupId); + } +} diff --git a/data/Repository/IUserRepository.cs b/data/Repository/IUserRepository.cs new file mode 100644 index 0000000..c09cb75 --- /dev/null +++ b/data/Repository/IUserRepository.cs @@ -0,0 +1,19 @@ +using data.RemoteData.RemoteDataBase.DAO; +using domain.Models; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace data.Repository +{ + public interface IUserRepository + { + IEnumerable GetAllUsers { get; } + bool RemoveUserById(Guid userGuid); + UserLocalEnity? UpdateUser(UserLocalEnity user); + List GetUserNames(); + + } +} diff --git a/data/Repository/PresenceRepositoryImpl.cs b/data/Repository/PresenceRepositoryImpl.cs new file mode 100644 index 0000000..a071263 --- /dev/null +++ b/data/Repository/PresenceRepositoryImpl.cs @@ -0,0 +1,62 @@ +using data.RemoteData.RemoteDataBase.DAO; +using domain.Models; +using System; +using System.Collections.Generic; +using System.Linq; + +namespace data.Repository +{ + public class PresenceRepositoryImpl + { + private readonly List _presences = new List(); + + public void SavePresence(List presences) + { + foreach (var presence in presences) + { + var existing = _presences.FirstOrDefault(p => + p.Date == presence.Date && + p.UserGuid == presence.UserGuid && + p.LessonNumber == presence.LessonNumber); + + if (existing == null) + { + _presences.Add(presence); + } + else + { + existing.IsAttedance = presence.IsAttedance; + } + } + } + + public void AddPresence(PresenceLocalEntity presence) + { + if (presence == null) throw new ArgumentNullException(nameof(presence)); + + _presences.Add(presence); + } + + public List GetPresenceByGroup(int groupId) + { + return _presences.Where(p => p.GroupId == groupId).ToList(); + } + + public List GetPresenceByGroupAndDate(int groupId, DateTime date) + { + return _presences.Where(p => p.GroupId == groupId && p.Date.Date == date.Date).ToList(); + } + + public void MarkUserAsAbsent(Guid userGuid, int firstLessonNumber, int lastLessonNumber) + { + foreach (var lesson in Enumerable.Range(firstLessonNumber, lastLessonNumber - firstLessonNumber + 1)) + { + var presence = _presences.FirstOrDefault(p => p.UserGuid == userGuid && p.LessonNumber == lesson); + if (presence != null) + { + presence.IsAttedance = false; // Помечаем как отсутствующего + } + } + } + } +} diff --git a/data/Repository/SQLGroupRepositoryImpl.cs b/data/Repository/SQLGroupRepositoryImpl.cs new file mode 100644 index 0000000..a1db214 --- /dev/null +++ b/data/Repository/SQLGroupRepositoryImpl.cs @@ -0,0 +1,69 @@ +using Dataceptions; +using data.LocalData; +using data.RemoteData.RemoteDataBase; +using data.RemoteData.RemoteDataBase.DAO; +using data.Repository; +using domain.Models; +using System.Collections.Generic; +using System.Linq; + +public class SQLGroupRepositoryImpl : IGroupRepository +{ + private readonly RemoteDatabaseContext _remoteDatabaseContext; + + public SQLGroupRepositoryImpl(RemoteDatabaseContext remoteDatabaseContext) + { + _remoteDatabaseContext = remoteDatabaseContext; + } + + // Метод для получения группы по ID + public GroupLocalEntity? GetGroupById(int groupId) + { + var groupDao = _remoteDatabaseContext.Groups.FirstOrDefault(g => g.Id == groupId); + return groupDao != null ? new GroupLocalEntity { Id = groupDao.Id, Name = groupDao.Name } : null; + } + + // Метод для получения всех групп + public List GetAllGroup() + { + return _remoteDatabaseContext.Groups + .Select(g => new GroupLocalEntity { Id = g.Id, Name = g.Name }) + .ToList(); + } + + // Метод для добавления новой группы + public bool AddGroup(GroupLocalEntity group) + { + if (_remoteDatabaseContext.Groups.Any(g => g.Id == group.Id)) + return false; + + var groupDao = new GroupDao { Id = group.Id, Name = group.Name }; + _remoteDatabaseContext.Groups.Add(groupDao); + _remoteDatabaseContext.SaveChanges(); + return true; + } + + // Метод для обновления существующей группы + public bool UpdateGroupById(int groupID, GroupLocalEntity updatedGroup) + { + var existingGroup = _remoteDatabaseContext.Groups.FirstOrDefault(g => g.Id == groupID); + if (existingGroup == null) + return false; + + existingGroup.Name = updatedGroup.Name; + _remoteDatabaseContext.SaveChanges(); + return true; + } + + // Метод для удаления группы по ID + public bool RemoveGroupById(int groupID) + { + var existingGroup = _remoteDatabaseContext.Groups.FirstOrDefault(g => g.Id == groupID); + if (existingGroup == null) + return false; + + _remoteDatabaseContext.Groups.Remove(existingGroup); + _remoteDatabaseContext.SaveChanges(); + return true; + } +} diff --git a/data/Repository/SQLPresenceRepositoryImpl.cs b/data/Repository/SQLPresenceRepositoryImpl.cs new file mode 100644 index 0000000..03aba1a --- /dev/null +++ b/data/Repository/SQLPresenceRepositoryImpl.cs @@ -0,0 +1,219 @@ +using data.RemoteData.RemoteDataBase; +using data.RemoteData.RemoteDataBase.DAO; +using System; +using System.Collections.Generic; +using System.Linq; +using domain.Models; +using Microsoft.EntityFrameworkCore; + +namespace data.Repository +{ + public class SQLPresenceRepositoryImpl : IPresenceRepository + { + private readonly RemoteDatabaseContext _remoteDatabaseContext; + + public SQLPresenceRepositoryImpl(RemoteDatabaseContext remoteDatabaseContext) + { + _remoteDatabaseContext = remoteDatabaseContext; + } + + public void SavePresence(List presences) + { + foreach (var presence in presences) + { + // Проверяем, существует ли запись с указанными датой, пользователем и номером занятия + var existing = _remoteDatabaseContext.PresenceDaos.FirstOrDefault(p => + p.Date == DateOnly.FromDateTime(presence.Date) && + p.UserGuid == presence.UserGuid && + p.LessonNumber == presence.LessonNumber); + + if (existing == null) + { + // Добавляем запись, если её не существует + _remoteDatabaseContext.PresenceDaos.Add(new PresenceDao + { + Date = DateOnly.FromDateTime(presence.Date), + IsAttedance = presence.IsAttedance, + LessonNumber = presence.LessonNumber, + UserGuid = presence.UserGuid + }); + } + else + { + // Обновляем запись, если она уже существует + existing.IsAttedance = presence.IsAttedance; + } + } + + // Сохраняем все изменения в базе данных + _remoteDatabaseContext.SaveChanges(); + } + + public void AddPresence(PresenceLocalEntity presence) + { + if (presence == null) throw new ArgumentNullException(nameof(presence)); + + var newPresence = new PresenceDao + { + Date = DateOnly.FromDateTime(presence.Date), + UserGuid = presence.UserGuid, + LessonNumber = presence.LessonNumber, + IsAttedance = presence.IsAttedance + }; + _remoteDatabaseContext.PresenceDaos.Add(newPresence); + } + + public List GetPresenceByGroup(int groupId) + { + return _remoteDatabaseContext.PresenceDaos.Include(user => user.UserDao) + .Where(p => p.UserDao != null && p.UserDao.GroupID == groupId) // Проверяем на null перед использованием + .Select(p => new PresenceLocalEntity + { + Date = p.Date.ToDateTime(TimeOnly.MinValue), + UserGuid = p.UserGuid, + LessonNumber = p.LessonNumber, + IsAttedance = p.IsAttedance + }) + .ToList(); + } + + public List GetPresenceByGroupAndDate(int groupId, DateTime date) + { + return _remoteDatabaseContext.PresenceDaos + .Where(p => p.UserDao != null && p.UserDao.GroupID == groupId && p.Date == DateOnly.FromDateTime(date)) + .Select(p => new PresenceLocalEntity + { + Date = p.Date.ToDateTime(TimeOnly.MinValue), + UserGuid = p.UserGuid, + LessonNumber = p.LessonNumber, + IsAttedance = p.IsAttedance + }) + .ToList(); + } + + public void MarkUserAsAbsent(Guid userGuid, int firstLessonNumber, int lastLessonNumber) + { + foreach (var lesson in Enumerable.Range(firstLessonNumber, lastLessonNumber - firstLessonNumber + 1)) + { + var presence = _remoteDatabaseContext.PresenceDaos.FirstOrDefault(p => + p.UserGuid == userGuid && + p.LessonNumber == lesson); + + if (presence != null) + { + presence.IsAttedance = false; // Помечаем как отсутствующего + } + } + } + + public DateOnly? GetLastDateByGroupId(int groupId) + { + // Проверяем наличие записей о посещаемости в базе данных для данной группы. + var lastDate = _remoteDatabaseContext.PresenceDaos + .Where(p => p.UserDao.GroupID == groupId) + .OrderByDescending(p => p.Date) + .Select(p => p.Date) + .FirstOrDefault(); + + return lastDate == default ? (DateOnly?)null : lastDate; + } + + public GroupPresenceSummary GetGeneralPresenceForGroup(int groupId) + { + var presences = _remoteDatabaseContext.PresenceDaos + .Where(p => p.UserDao.GroupID == groupId) + .OrderBy(p => p.Date).ThenBy(p => p.LessonNumber) + .ToList(); + + // Уникальные пары "дата + номер занятия" + var distinctLessonDates = presences + .Select(p => new { p.Date, p.LessonNumber }) + .Distinct() + .ToList(); + + int lessonCount = distinctLessonDates.Count; + + // Считаем количество уникальных пользователей в группе + var userGuids = presences + .Select(p => p.UserGuid) + .Distinct() + .ToHashSet(); + + // Подсчитываем общее количество посещений и общее количество возможных посещений + double totalAttendance = presences.Count(p => p.IsAttedance); + double totalPossibleAttendance = userGuids.Count * lessonCount; + + var userAttendances = userGuids.Select(userGuid => + { + var userPresences = presences.Where(p => p.UserGuid == userGuid).ToList(); + double attended = userPresences.Count(p => p.IsAttedance); + double missed = userPresences.Count(p => !p.IsAttedance); + + return new UserAttendance + { + UserGuid = userGuid, + Attended = attended, + Missed = missed, + AttendanceRate = (attended / (attended + missed)) * 100 + }; + }).ToList(); + + // Рассчитываем общий процент посещаемости группы + double totalAttendancePercentage = (totalAttendance / totalPossibleAttendance) * 100; + + return new GroupPresenceSummary + { + UserCount = userGuids.Count, + LessonCount = lessonCount, + TotalAttendancePercentage = totalAttendancePercentage, + UserAttendances = userAttendances + }; + } + + + + + + public bool UpdateAtt(Guid UserGuid, int groupId, int firstLesson, int lastLesson, DateOnly date, bool isAttendance) + { + var presences = _remoteDatabaseContext.PresenceDaos + .Where(p => p.UserGuid == UserGuid && p.UserDao.GroupID == groupId && + p.LessonNumber >= firstLesson && p.LessonNumber <= lastLesson && p.Date == date) + .ToList(); + + if (presences.Any()) + { + foreach (var presence in presences) + { + presence.IsAttedance = isAttendance; + } + _remoteDatabaseContext.SaveChanges(); + return true; // Успех + } + return false; // Данные не найдены + } + public List GetAttendanceByGroup(int groupId) + { + // Получаем пользователей указанной группы + var userGuidsInGroup = _remoteDatabaseContext.Users + .Where(u => u.GroupID == groupId) + .Select(u => u.Guid) + .ToList(); + + // Фильтруем посещаемость по пользователям из этой группы + return _remoteDatabaseContext.PresenceDaos + .Where(p => userGuidsInGroup.Contains(p.UserGuid)) + .Select(p => new PresenceDao + { + UserGuid = p.UserGuid, + Id = p.Id, + Date = p.Date, + LessonNumber = p.LessonNumber, + IsAttedance = p.IsAttedance + }) + .ToList(); + } + + + } +} diff --git a/data/Repository/SQLUserRepositoryImpl.cs b/data/Repository/SQLUserRepositoryImpl.cs new file mode 100644 index 0000000..f52b628 --- /dev/null +++ b/data/Repository/SQLUserRepositoryImpl.cs @@ -0,0 +1,71 @@ +using Dataceptions; +using data.RemoteData.RemoteDataBase; +using data.RemoteData.RemoteDataBase.DAO; +using domain.Models; +using System; +using System.Collections.Generic; +using System.Linq; + +namespace data.Repository +{ + public class SQLUserRepositoryImpl : IUserRepository + { + private readonly RemoteDatabaseContext _remoteDatabaseContext; + + public SQLUserRepositoryImpl(RemoteDatabaseContext remoteDatabaseContext) + { + _remoteDatabaseContext = remoteDatabaseContext; + } + + // Метод для получения всех пользователей + public IEnumerable GetAllUsers => _remoteDatabaseContext.Users + .Select(u => new UserLocalEnity + { + Guid = u.Guid, + FIO = u.FIO, + GroupID = u.GroupID + }) + .ToList(); + + // Метод для удаления пользователя по GUID + public bool RemoveUserById(Guid userGuid) + { + var user = _remoteDatabaseContext.Users.FirstOrDefault(u => u.Guid == userGuid); + if (user == null) throw new UserNotFoundException(userGuid); + + _remoteDatabaseContext.Users.Remove(user); + _remoteDatabaseContext.SaveChanges(); // Сохранение изменений в базе данных + return true; + } + + // Метод для обновления данных пользователя + public UserLocalEnity? UpdateUser(UserLocalEnity user) + { + var existingUser = _remoteDatabaseContext.Users.FirstOrDefault(u => u.Guid == user.Guid); + if (existingUser == null) throw new UserNotFoundException(user.Guid); + + existingUser.FIO = user.FIO; + existingUser.GroupID = user.GroupID; + _remoteDatabaseContext.SaveChanges(); // Сохранение изменений в базе данных + + // Возвращаем обновленный объект UserLocalEnity + return new UserLocalEnity + { + Guid = existingUser.Guid, + FIO = existingUser.FIO, + GroupID = existingUser.GroupID + }; + } + + // Дополнительный метод для DAO, если требуется + public IEnumerable GetAllUsersDao => _remoteDatabaseContext.Users.ToList(); + + public List GetUserNames() + { + return _remoteDatabaseContext.Users + .Select(u => new UserDao { Guid = u.Guid, FIO = u.FIO }) + .ToList(); + } + + } +} diff --git a/data/Repository/UserRepositoryImpl.cs b/data/Repository/UserRepositoryImpl.cs new file mode 100644 index 0000000..169b747 --- /dev/null +++ b/data/Repository/UserRepositoryImpl.cs @@ -0,0 +1,53 @@ +using Dataceptions; +using data.LocalData; +using data.RemoteData.RemoteDataBase.DAO; +using domain.Models; +using System; +using System.Collections.Generic; +using System.Linq; + +namespace data.Repository +{ + public class UserRepositoryImpl : IUserRepository + { + private List _users; + + public UserRepositoryImpl() + { + _users = LocalStaticData.users; + } + + public IEnumerable GetAllUsers => _users; + + public bool RemoveUserById(Guid userGuid) // Оставил Guid + { + var user = _users.FirstOrDefault(u => u.Guid == userGuid); + if (user == null) throw new UserNotFoundException(userGuid); + + _users.Remove(user); + return true; + } + + public UserLocalEnity? UpdateUser(UserLocalEnity user) + { + var existingUser = _users.FirstOrDefault(u => u.Guid == user.Guid); + if (existingUser == null) throw new UserNotFoundException(user.Guid); + + existingUser.FIO = user.FIO; + existingUser.GroupID = user.GroupID; + + return existingUser; + } + + public List GetUserNames() + { + return _users + .Select(u => new UserDao + { + Guid = u.Guid, + FIO = u.FIO + }) + .ToList(); + } + } +} diff --git a/data/data.csproj b/data/data.csproj new file mode 100644 index 0000000..2b2ccad --- /dev/null +++ b/data/data.csproj @@ -0,0 +1,18 @@ + + + + net8.0 + enable + enable + + + + + + runtime; build; native; contentfiles; analyzers; buildtransitive + all + + + + + diff --git a/data/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs b/data/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs new file mode 100644 index 0000000..2217181 --- /dev/null +++ b/data/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs @@ -0,0 +1,4 @@ +// +using System; +using System.Reflection; +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v8.0", FrameworkDisplayName = ".NET 8.0")] diff --git a/data/obj/Debug/net8.0/data.AssemblyInfo.cs b/data/obj/Debug/net8.0/data.AssemblyInfo.cs new file mode 100644 index 0000000..55a67a6 --- /dev/null +++ b/data/obj/Debug/net8.0/data.AssemblyInfo.cs @@ -0,0 +1,23 @@ +//------------------------------------------------------------------------------ +// +// Этот код создан программой. +// Исполняемая версия:4.0.30319.42000 +// +// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае +// повторной генерации кода. +// +//------------------------------------------------------------------------------ + +using System; +using System.Reflection; + +[assembly: System.Reflection.AssemblyCompanyAttribute("data")] +[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] +[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] +[assembly: System.Reflection.AssemblyProductAttribute("data")] +[assembly: System.Reflection.AssemblyTitleAttribute("data")] +[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] + +// Создано классом WriteCodeFragment MSBuild. + diff --git a/data/obj/Debug/net8.0/data.AssemblyInfoInputs.cache b/data/obj/Debug/net8.0/data.AssemblyInfoInputs.cache new file mode 100644 index 0000000..26b3a26 --- /dev/null +++ b/data/obj/Debug/net8.0/data.AssemblyInfoInputs.cache @@ -0,0 +1 @@ +6741393a5fe1cc20988265f6fd0e8bdd33ee4b9cc7b9e110a41e548fdd825a94 diff --git a/data/obj/Debug/net8.0/data.GeneratedMSBuildEditorConfig.editorconfig b/data/obj/Debug/net8.0/data.GeneratedMSBuildEditorConfig.editorconfig new file mode 100644 index 0000000..7cde3f1 --- /dev/null +++ b/data/obj/Debug/net8.0/data.GeneratedMSBuildEditorConfig.editorconfig @@ -0,0 +1,13 @@ +is_global = true +build_property.TargetFramework = net8.0 +build_property.TargetPlatformMinVersion = +build_property.UsingMicrosoftNETSdkWeb = +build_property.ProjectTypeGuids = +build_property.InvariantGlobalization = +build_property.PlatformNeutralAssembly = +build_property.EnforceExtendedAnalyzerRules = +build_property._SupportedPlatformList = Linux,macOS,Windows +build_property.RootNamespace = data +build_property.ProjectDir = C:\Users\class_student\source\repos\presence\data\ +build_property.EnableComHosting = +build_property.EnableGeneratedComInterfaceComImportInterop = diff --git a/data/obj/Debug/net8.0/data.GlobalUsings.g.cs b/data/obj/Debug/net8.0/data.GlobalUsings.g.cs new file mode 100644 index 0000000..8578f3d --- /dev/null +++ b/data/obj/Debug/net8.0/data.GlobalUsings.g.cs @@ -0,0 +1,8 @@ +// +global using global::System; +global using global::System.Collections.Generic; +global using global::System.IO; +global using global::System.Linq; +global using global::System.Net.Http; +global using global::System.Threading; +global using global::System.Threading.Tasks; diff --git a/data/obj/Debug/net8.0/data.assets.cache b/data/obj/Debug/net8.0/data.assets.cache new file mode 100644 index 0000000..9d92053 Binary files /dev/null and b/data/obj/Debug/net8.0/data.assets.cache differ diff --git a/data/obj/Debug/net8.0/data.csproj.AssemblyReference.cache b/data/obj/Debug/net8.0/data.csproj.AssemblyReference.cache new file mode 100644 index 0000000..7f7d68c Binary files /dev/null and b/data/obj/Debug/net8.0/data.csproj.AssemblyReference.cache differ diff --git a/data/obj/data.csproj.nuget.dgspec.json b/data/obj/data.csproj.nuget.dgspec.json new file mode 100644 index 0000000..2cf3b8c --- /dev/null +++ b/data/obj/data.csproj.nuget.dgspec.json @@ -0,0 +1,88 @@ +{ + "format": 1, + "restore": { + "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj": {} + }, + "projects": { + "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj", + "projectName": "data", + "projectPath": "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj", + "packagesPath": "C:\\Users\\class_student\\.nuget\\packages\\", + "outputPath": "C:\\Users\\class_student\\source\\repos\\presence\\data\\obj\\", + "projectStyle": "PackageReference", + "fallbackFolders": [ + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" + ], + "configFilePaths": [ + "C:\\Users\\class_student\\AppData\\Roaming\\NuGet\\NuGet.Config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config" + ], + "originalTargetFrameworks": [ + "net8.0" + ], + "sources": { + "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "projectReferences": {} + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + }, + "restoreAuditProperties": { + "enableAudit": "true", + "auditLevel": "low", + "auditMode": "direct" + } + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "dependencies": { + "Microsoft.EntityFrameworkCore": { + "target": "Package", + "version": "[8.0.10, )" + }, + "Microsoft.EntityFrameworkCore.Design": { + "include": "Runtime, Build, Native, ContentFiles, Analyzers, BuildTransitive", + "suppressParent": "All", + "target": "Package", + "version": "[8.0.10, )" + }, + "Npgsql.EntityFrameworkCore.PostgreSQL": { + "target": "Package", + "version": "[8.0.10, )" + } + }, + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "Microsoft.NETCore.App": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.204/PortableRuntimeIdentifierGraph.json" + } + } + } + } +} \ No newline at end of file diff --git a/data/obj/data.csproj.nuget.g.props b/data/obj/data.csproj.nuget.g.props new file mode 100644 index 0000000..bd3073a --- /dev/null +++ b/data/obj/data.csproj.nuget.g.props @@ -0,0 +1,23 @@ + + + + True + NuGet + $(MSBuildThisFileDirectory)project.assets.json + $(UserProfile)\.nuget\packages\ + C:\Users\class_student\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages + PackageReference + 6.9.1 + + + + + + + + + + + C:\Users\class_student\.nuget\packages\microsoft.codeanalysis.analyzers\3.3.3 + + \ No newline at end of file diff --git a/data/obj/data.csproj.nuget.g.targets b/data/obj/data.csproj.nuget.g.targets new file mode 100644 index 0000000..baac958 --- /dev/null +++ b/data/obj/data.csproj.nuget.g.targets @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/data/obj/project.assets.json b/data/obj/project.assets.json new file mode 100644 index 0000000..e917afb --- /dev/null +++ b/data/obj/project.assets.json @@ -0,0 +1,2196 @@ +{ + "version": 3, + "targets": { + "net8.0": { + "Humanizer.Core/2.14.1": { + "type": "package", + "compile": { + "lib/net6.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/Humanizer.dll": { + "related": ".xml" + } + } + }, + "Microsoft.Bcl.AsyncInterfaces/6.0.0": { + "type": "package", + "compile": { + "lib/netstandard2.1/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { + "related": ".xml" + } + } + }, + "Microsoft.CodeAnalysis.Analyzers/3.3.3": { + "type": "package", + "build": { + "build/_._": {} + } + }, + "Microsoft.CodeAnalysis.Common/4.5.0": { + "type": "package", + "dependencies": { + "Microsoft.CodeAnalysis.Analyzers": "3.3.3", + "System.Collections.Immutable": "6.0.0", + "System.Reflection.Metadata": "6.0.1", + "System.Runtime.CompilerServices.Unsafe": "6.0.0", + "System.Text.Encoding.CodePages": "6.0.0" + }, + "compile": { + "lib/netcoreapp3.1/_._": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.dll": { + "related": ".pdb;.xml" + } + }, + "resource": { + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.CodeAnalysis.CSharp/4.5.0": { + "type": "package", + "dependencies": { + "Microsoft.CodeAnalysis.Common": "[4.5.0]" + }, + "compile": { + "lib/netcoreapp3.1/_._": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.dll": { + "related": ".pdb;.xml" + } + }, + "resource": { + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.CodeAnalysis.CSharp.Workspaces/4.5.0": { + "type": "package", + "dependencies": { + "Humanizer.Core": "2.14.1", + "Microsoft.CodeAnalysis.CSharp": "[4.5.0]", + "Microsoft.CodeAnalysis.Common": "[4.5.0]", + "Microsoft.CodeAnalysis.Workspaces.Common": "[4.5.0]" + }, + "compile": { + "lib/netcoreapp3.1/_._": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.Workspaces.dll": { + "related": ".pdb;.xml" + } + }, + "resource": { + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.CodeAnalysis.Workspaces.Common/4.5.0": { + "type": "package", + "dependencies": { + "Humanizer.Core": "2.14.1", + "Microsoft.Bcl.AsyncInterfaces": "6.0.0", + "Microsoft.CodeAnalysis.Common": "[4.5.0]", + "System.Composition": "6.0.0", + "System.IO.Pipelines": "6.0.3", + "System.Threading.Channels": "6.0.0" + }, + "compile": { + "lib/netcoreapp3.1/_._": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Workspaces.dll": { + "related": ".pdb;.xml" + } + }, + "resource": { + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.EntityFrameworkCore/8.0.10": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore.Abstractions": "8.0.10", + "Microsoft.EntityFrameworkCore.Analyzers": "8.0.10", + "Microsoft.Extensions.Caching.Memory": "8.0.1", + "Microsoft.Extensions.Logging": "8.0.1" + }, + "compile": { + "lib/net8.0/Microsoft.EntityFrameworkCore.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.EntityFrameworkCore.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/Microsoft.EntityFrameworkCore.props": {} + } + }, + "Microsoft.EntityFrameworkCore.Abstractions/8.0.10": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": { + "related": ".xml" + } + } + }, + "Microsoft.EntityFrameworkCore.Analyzers/8.0.10": { + "type": "package", + "compile": { + "lib/netstandard2.0/_._": {} + }, + "runtime": { + "lib/netstandard2.0/_._": {} + } + }, + "Microsoft.EntityFrameworkCore.Design/8.0.10": { + "type": "package", + "dependencies": { + "Humanizer.Core": "2.14.1", + "Microsoft.CodeAnalysis.CSharp.Workspaces": "4.5.0", + "Microsoft.EntityFrameworkCore.Relational": "8.0.10", + "Microsoft.Extensions.DependencyModel": "8.0.2", + "Mono.TextTemplating": "2.2.1" + }, + "compile": { + "lib/net8.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Design.dll": { + "related": ".xml" + } + }, + "build": { + "build/net8.0/Microsoft.EntityFrameworkCore.Design.props": {} + } + }, + "Microsoft.EntityFrameworkCore.Relational/8.0.10": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore": "8.0.10", + "Microsoft.Extensions.Configuration.Abstractions": "8.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": { + "related": ".xml" + } + } + }, + "Microsoft.Extensions.Caching.Abstractions/8.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Primitives": "8.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.Caching.Memory/8.0.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Caching.Abstractions": "8.0.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2", + "Microsoft.Extensions.Logging.Abstractions": "8.0.2", + "Microsoft.Extensions.Options": "8.0.2", + "Microsoft.Extensions.Primitives": "8.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.Configuration.Abstractions/8.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Primitives": "8.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.DependencyInjection/8.0.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/8.0.2": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.DependencyModel/8.0.2": { + "type": "package", + "compile": { + "lib/net8.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyModel.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.Logging/8.0.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "8.0.1", + "Microsoft.Extensions.Logging.Abstractions": "8.0.2", + "Microsoft.Extensions.Options": "8.0.2" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Logging.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.Logging.Abstractions/8.0.2": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/Microsoft.Extensions.Logging.Abstractions.targets": {} + } + }, + "Microsoft.Extensions.Options/8.0.2": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.0", + "Microsoft.Extensions.Primitives": "8.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Options.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Options.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/Microsoft.Extensions.Options.targets": {} + } + }, + "Microsoft.Extensions.Primitives/8.0.0": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.Extensions.Primitives.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Primitives.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Mono.TextTemplating/2.2.1": { + "type": "package", + "dependencies": { + "System.CodeDom": "4.4.0" + }, + "compile": { + "lib/netstandard2.0/_._": {} + }, + "runtime": { + "lib/netstandard2.0/Mono.TextTemplating.dll": {} + } + }, + "Npgsql/8.0.5": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "8.0.0" + }, + "compile": { + "lib/net8.0/Npgsql.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Npgsql.dll": { + "related": ".xml" + } + } + }, + "Npgsql.EntityFrameworkCore.PostgreSQL/8.0.10": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore": "8.0.10", + "Microsoft.EntityFrameworkCore.Abstractions": "8.0.10", + "Microsoft.EntityFrameworkCore.Relational": "8.0.10", + "Npgsql": "8.0.5" + }, + "compile": { + "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll": { + "related": ".xml" + } + } + }, + "System.CodeDom/4.4.0": { + "type": "package", + "compile": { + "ref/netstandard2.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/System.CodeDom.dll": {} + } + }, + "System.Collections.Immutable/6.0.0": { + "type": "package", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "6.0.0" + }, + "compile": { + "lib/net6.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Collections.Immutable.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Composition/6.0.0": { + "type": "package", + "dependencies": { + "System.Composition.AttributedModel": "6.0.0", + "System.Composition.Convention": "6.0.0", + "System.Composition.Hosting": "6.0.0", + "System.Composition.Runtime": "6.0.0", + "System.Composition.TypedParts": "6.0.0" + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Composition.AttributedModel/6.0.0": { + "type": "package", + "compile": { + "lib/net6.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Composition.AttributedModel.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Composition.Convention/6.0.0": { + "type": "package", + "dependencies": { + "System.Composition.AttributedModel": "6.0.0" + }, + "compile": { + "lib/net6.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Composition.Convention.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Composition.Hosting/6.0.0": { + "type": "package", + "dependencies": { + "System.Composition.Runtime": "6.0.0" + }, + "compile": { + "lib/net6.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Composition.Hosting.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Composition.Runtime/6.0.0": { + "type": "package", + "compile": { + "lib/net6.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Composition.Runtime.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Composition.TypedParts/6.0.0": { + "type": "package", + "dependencies": { + "System.Composition.AttributedModel": "6.0.0", + "System.Composition.Hosting": "6.0.0", + "System.Composition.Runtime": "6.0.0" + }, + "compile": { + "lib/net6.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Composition.TypedParts.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.IO.Pipelines/6.0.3": { + "type": "package", + "compile": { + "lib/net6.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.IO.Pipelines.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Reflection.Metadata/6.0.1": { + "type": "package", + "dependencies": { + "System.Collections.Immutable": "6.0.0" + }, + "compile": { + "lib/net6.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Reflection.Metadata.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Runtime.CompilerServices.Unsafe/6.0.0": { + "type": "package", + "compile": { + "lib/net6.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Runtime.CompilerServices.Unsafe.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Text.Encoding.CodePages/6.0.0": { + "type": "package", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "6.0.0" + }, + "compile": { + "lib/net6.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Text.Encoding.CodePages.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + }, + "runtimeTargets": { + "runtimes/win/lib/net6.0/System.Text.Encoding.CodePages.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Threading.Channels/6.0.0": { + "type": "package", + "compile": { + "lib/net6.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Threading.Channels.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + } + } + }, + "libraries": { + "Humanizer.Core/2.14.1": { + "sha512": "lQKvtaTDOXnoVJ20ibTuSIOf2i0uO0MPbDhd1jm238I+U/2ZnRENj0cktKZhtchBMtCUSRQ5v4xBCUbKNmyVMw==", + "type": "package", + "path": "humanizer.core/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.2.14.1.nupkg.sha512", + "humanizer.core.nuspec", + "lib/net6.0/Humanizer.dll", + "lib/net6.0/Humanizer.xml", + "lib/netstandard1.0/Humanizer.dll", + "lib/netstandard1.0/Humanizer.xml", + "lib/netstandard2.0/Humanizer.dll", + "lib/netstandard2.0/Humanizer.xml", + "logo.png" + ] + }, + "Microsoft.Bcl.AsyncInterfaces/6.0.0": { + "sha512": "UcSjPsst+DfAdJGVDsu346FX0ci0ah+lw3WRtn18NUwEqRt70HaOQ7lI72vy3+1LxtqI3T5GWwV39rQSrCzAeg==", + "type": "package", + "path": "microsoft.bcl.asyncinterfaces/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net461/Microsoft.Bcl.AsyncInterfaces.dll", + "lib/net461/Microsoft.Bcl.AsyncInterfaces.xml", + "lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.dll", + "lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.xml", + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll", + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.xml", + "microsoft.bcl.asyncinterfaces.6.0.0.nupkg.sha512", + "microsoft.bcl.asyncinterfaces.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.CodeAnalysis.Analyzers/3.3.3": { + "sha512": "j/rOZtLMVJjrfLRlAMckJLPW/1rze9MT1yfWqSIbUPGRu1m1P0fuo9PmqapwsmePfGB5PJrudQLvmUOAMF0DqQ==", + "type": "package", + "path": "microsoft.codeanalysis.analyzers/3.3.3", + "hasTools": true, + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "ThirdPartyNotices.rtf", + "analyzers/dotnet/cs/Microsoft.CodeAnalysis.Analyzers.dll", + "analyzers/dotnet/cs/Microsoft.CodeAnalysis.CSharp.Analyzers.dll", + "analyzers/dotnet/cs/cs/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/cs/de/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/cs/es/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/cs/fr/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/cs/it/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/cs/ja/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/cs/ko/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/cs/pl/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/cs/pt-BR/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/cs/ru/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/cs/tr/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/cs/zh-Hans/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/cs/zh-Hant/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/vb/Microsoft.CodeAnalysis.Analyzers.dll", + "analyzers/dotnet/vb/Microsoft.CodeAnalysis.VisualBasic.Analyzers.dll", + "analyzers/dotnet/vb/cs/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/vb/de/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/vb/es/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/vb/fr/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/vb/it/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/vb/ja/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/vb/ko/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/vb/pl/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/vb/pt-BR/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/vb/ru/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/vb/tr/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/vb/zh-Hans/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/vb/zh-Hant/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "build/Microsoft.CodeAnalysis.Analyzers.props", + "build/Microsoft.CodeAnalysis.Analyzers.targets", + "build/config/analysislevel_2_9_8_all.editorconfig", + "build/config/analysislevel_2_9_8_default.editorconfig", + "build/config/analysislevel_2_9_8_minimum.editorconfig", + "build/config/analysislevel_2_9_8_none.editorconfig", + "build/config/analysislevel_2_9_8_recommended.editorconfig", + "build/config/analysislevel_3_3_all.editorconfig", + "build/config/analysislevel_3_3_default.editorconfig", + "build/config/analysislevel_3_3_minimum.editorconfig", + "build/config/analysislevel_3_3_none.editorconfig", + "build/config/analysislevel_3_3_recommended.editorconfig", + "build/config/analysislevel_3_all.editorconfig", + "build/config/analysislevel_3_default.editorconfig", + "build/config/analysislevel_3_minimum.editorconfig", + "build/config/analysislevel_3_none.editorconfig", + "build/config/analysislevel_3_recommended.editorconfig", + "build/config/analysislevelcorrectness_2_9_8_all.editorconfig", + "build/config/analysislevelcorrectness_2_9_8_default.editorconfig", + "build/config/analysislevelcorrectness_2_9_8_minimum.editorconfig", + "build/config/analysislevelcorrectness_2_9_8_none.editorconfig", + "build/config/analysislevelcorrectness_2_9_8_recommended.editorconfig", + "build/config/analysislevelcorrectness_3_3_all.editorconfig", + "build/config/analysislevelcorrectness_3_3_default.editorconfig", + "build/config/analysislevelcorrectness_3_3_minimum.editorconfig", + "build/config/analysislevelcorrectness_3_3_none.editorconfig", + "build/config/analysislevelcorrectness_3_3_recommended.editorconfig", + "build/config/analysislevelcorrectness_3_all.editorconfig", + "build/config/analysislevelcorrectness_3_default.editorconfig", + "build/config/analysislevelcorrectness_3_minimum.editorconfig", + "build/config/analysislevelcorrectness_3_none.editorconfig", + "build/config/analysislevelcorrectness_3_recommended.editorconfig", + "build/config/analysislevellibrary_2_9_8_all.editorconfig", + "build/config/analysislevellibrary_2_9_8_default.editorconfig", + "build/config/analysislevellibrary_2_9_8_minimum.editorconfig", + "build/config/analysislevellibrary_2_9_8_none.editorconfig", + "build/config/analysislevellibrary_2_9_8_recommended.editorconfig", + "build/config/analysislevellibrary_3_3_all.editorconfig", + "build/config/analysislevellibrary_3_3_default.editorconfig", + "build/config/analysislevellibrary_3_3_minimum.editorconfig", + "build/config/analysislevellibrary_3_3_none.editorconfig", + "build/config/analysislevellibrary_3_3_recommended.editorconfig", + "build/config/analysislevellibrary_3_all.editorconfig", + "build/config/analysislevellibrary_3_default.editorconfig", + "build/config/analysislevellibrary_3_minimum.editorconfig", + "build/config/analysislevellibrary_3_none.editorconfig", + "build/config/analysislevellibrary_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_3_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_3_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_3_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_3_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_3_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_3_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_3_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_3_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_3_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_3_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_3_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_3_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_3_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_3_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_3_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_recommended.editorconfig", + "documentation/Analyzer Configuration.md", + "documentation/Microsoft.CodeAnalysis.Analyzers.md", + "documentation/Microsoft.CodeAnalysis.Analyzers.sarif", + "editorconfig/AllRulesDefault/.editorconfig", + "editorconfig/AllRulesDisabled/.editorconfig", + "editorconfig/AllRulesEnabled/.editorconfig", + "editorconfig/CorrectnessRulesDefault/.editorconfig", + "editorconfig/CorrectnessRulesEnabled/.editorconfig", + "editorconfig/DataflowRulesDefault/.editorconfig", + "editorconfig/DataflowRulesEnabled/.editorconfig", + "editorconfig/LibraryRulesDefault/.editorconfig", + "editorconfig/LibraryRulesEnabled/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisCompatibilityRulesDefault/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisCompatibilityRulesEnabled/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisCorrectnessRulesDefault/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisCorrectnessRulesEnabled/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisDesignRulesDefault/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisDesignRulesEnabled/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisDocumentationRulesDefault/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisDocumentationRulesEnabled/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisLocalizationRulesDefault/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisLocalizationRulesEnabled/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisPerformanceRulesDefault/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisPerformanceRulesEnabled/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisReleaseTrackingRulesDefault/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisReleaseTrackingRulesEnabled/.editorconfig", + "editorconfig/PortedFromFxCopRulesDefault/.editorconfig", + "editorconfig/PortedFromFxCopRulesEnabled/.editorconfig", + "microsoft.codeanalysis.analyzers.3.3.3.nupkg.sha512", + "microsoft.codeanalysis.analyzers.nuspec", + "rulesets/AllRulesDefault.ruleset", + "rulesets/AllRulesDisabled.ruleset", + "rulesets/AllRulesEnabled.ruleset", + "rulesets/CorrectnessRulesDefault.ruleset", + "rulesets/CorrectnessRulesEnabled.ruleset", + "rulesets/DataflowRulesDefault.ruleset", + "rulesets/DataflowRulesEnabled.ruleset", + "rulesets/LibraryRulesDefault.ruleset", + "rulesets/LibraryRulesEnabled.ruleset", + "rulesets/MicrosoftCodeAnalysisCompatibilityRulesDefault.ruleset", + "rulesets/MicrosoftCodeAnalysisCompatibilityRulesEnabled.ruleset", + "rulesets/MicrosoftCodeAnalysisCorrectnessRulesDefault.ruleset", + "rulesets/MicrosoftCodeAnalysisCorrectnessRulesEnabled.ruleset", + "rulesets/MicrosoftCodeAnalysisDesignRulesDefault.ruleset", + "rulesets/MicrosoftCodeAnalysisDesignRulesEnabled.ruleset", + "rulesets/MicrosoftCodeAnalysisDocumentationRulesDefault.ruleset", + "rulesets/MicrosoftCodeAnalysisDocumentationRulesEnabled.ruleset", + "rulesets/MicrosoftCodeAnalysisLocalizationRulesDefault.ruleset", + "rulesets/MicrosoftCodeAnalysisLocalizationRulesEnabled.ruleset", + "rulesets/MicrosoftCodeAnalysisPerformanceRulesDefault.ruleset", + "rulesets/MicrosoftCodeAnalysisPerformanceRulesEnabled.ruleset", + "rulesets/MicrosoftCodeAnalysisReleaseTrackingRulesDefault.ruleset", + "rulesets/MicrosoftCodeAnalysisReleaseTrackingRulesEnabled.ruleset", + "rulesets/PortedFromFxCopRulesDefault.ruleset", + "rulesets/PortedFromFxCopRulesEnabled.ruleset", + "tools/install.ps1", + "tools/uninstall.ps1" + ] + }, + "Microsoft.CodeAnalysis.Common/4.5.0": { + "sha512": "lwAbIZNdnY0SUNoDmZHkVUwLO8UyNnyyh1t/4XsbFxi4Ounb3xszIYZaWhyj5ZjyfcwqwmtMbE7fUTVCqQEIdQ==", + "type": "package", + "path": "microsoft.codeanalysis.common/4.5.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "ThirdPartyNotices.rtf", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.dll", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.pdb", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.xml", + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.resources.dll", + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.resources.dll", + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.resources.dll", + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.resources.dll", + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.resources.dll", + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.resources.dll", + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.resources.dll", + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.resources.dll", + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.resources.dll", + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.resources.dll", + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.resources.dll", + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.resources.dll", + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.resources.dll", + "lib/netstandard2.0/Microsoft.CodeAnalysis.dll", + "lib/netstandard2.0/Microsoft.CodeAnalysis.pdb", + "lib/netstandard2.0/Microsoft.CodeAnalysis.xml", + "lib/netstandard2.0/cs/Microsoft.CodeAnalysis.resources.dll", + "lib/netstandard2.0/de/Microsoft.CodeAnalysis.resources.dll", + "lib/netstandard2.0/es/Microsoft.CodeAnalysis.resources.dll", + "lib/netstandard2.0/fr/Microsoft.CodeAnalysis.resources.dll", + "lib/netstandard2.0/it/Microsoft.CodeAnalysis.resources.dll", + "lib/netstandard2.0/ja/Microsoft.CodeAnalysis.resources.dll", + "lib/netstandard2.0/ko/Microsoft.CodeAnalysis.resources.dll", + "lib/netstandard2.0/pl/Microsoft.CodeAnalysis.resources.dll", + "lib/netstandard2.0/pt-BR/Microsoft.CodeAnalysis.resources.dll", + "lib/netstandard2.0/ru/Microsoft.CodeAnalysis.resources.dll", + "lib/netstandard2.0/tr/Microsoft.CodeAnalysis.resources.dll", + "lib/netstandard2.0/zh-Hans/Microsoft.CodeAnalysis.resources.dll", + "lib/netstandard2.0/zh-Hant/Microsoft.CodeAnalysis.resources.dll", + "microsoft.codeanalysis.common.4.5.0.nupkg.sha512", + "microsoft.codeanalysis.common.nuspec" + ] + }, + "Microsoft.CodeAnalysis.CSharp/4.5.0": { + "sha512": "cM59oMKAOxvdv76bdmaKPy5hfj+oR+zxikWoueEB7CwTko7mt9sVKZI8Qxlov0C/LuKEG+WQwifepqL3vuTiBQ==", + "type": "package", + "path": "microsoft.codeanalysis.csharp/4.5.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "ThirdPartyNotices.rtf", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.dll", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.pdb", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.xml", + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netstandard2.0/Microsoft.CodeAnalysis.CSharp.dll", + "lib/netstandard2.0/Microsoft.CodeAnalysis.CSharp.pdb", + "lib/netstandard2.0/Microsoft.CodeAnalysis.CSharp.xml", + "lib/netstandard2.0/cs/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netstandard2.0/de/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netstandard2.0/es/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netstandard2.0/fr/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netstandard2.0/it/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netstandard2.0/ja/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netstandard2.0/ko/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netstandard2.0/pl/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netstandard2.0/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netstandard2.0/ru/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netstandard2.0/tr/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netstandard2.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netstandard2.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll", + "microsoft.codeanalysis.csharp.4.5.0.nupkg.sha512", + "microsoft.codeanalysis.csharp.nuspec" + ] + }, + "Microsoft.CodeAnalysis.CSharp.Workspaces/4.5.0": { + "sha512": "h74wTpmGOp4yS4hj+EvNzEiPgg/KVs2wmSfTZ81upJZOtPkJsVkgfsgtxxqmAeapjT/vLKfmYV0bS8n5MNVP+g==", + "type": "package", + "path": "microsoft.codeanalysis.csharp.workspaces/4.5.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "ThirdPartyNotices.rtf", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.Workspaces.dll", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.Workspaces.pdb", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.Workspaces.xml", + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netstandard2.0/Microsoft.CodeAnalysis.CSharp.Workspaces.dll", + "lib/netstandard2.0/Microsoft.CodeAnalysis.CSharp.Workspaces.pdb", + "lib/netstandard2.0/Microsoft.CodeAnalysis.CSharp.Workspaces.xml", + "lib/netstandard2.0/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netstandard2.0/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netstandard2.0/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netstandard2.0/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netstandard2.0/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netstandard2.0/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netstandard2.0/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netstandard2.0/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netstandard2.0/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netstandard2.0/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netstandard2.0/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netstandard2.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netstandard2.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "microsoft.codeanalysis.csharp.workspaces.4.5.0.nupkg.sha512", + "microsoft.codeanalysis.csharp.workspaces.nuspec" + ] + }, + "Microsoft.CodeAnalysis.Workspaces.Common/4.5.0": { + "sha512": "l4dDRmGELXG72XZaonnOeORyD/T5RpEu5LGHOUIhnv+MmUWDY/m1kWXGwtcgQ5CJ5ynkFiRnIYzTKXYjUs7rbw==", + "type": "package", + "path": "microsoft.codeanalysis.workspaces.common/4.5.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "ThirdPartyNotices.rtf", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Workspaces.dll", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Workspaces.pdb", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Workspaces.xml", + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netstandard2.0/Microsoft.CodeAnalysis.Workspaces.dll", + "lib/netstandard2.0/Microsoft.CodeAnalysis.Workspaces.pdb", + "lib/netstandard2.0/Microsoft.CodeAnalysis.Workspaces.xml", + "lib/netstandard2.0/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netstandard2.0/de/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netstandard2.0/es/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netstandard2.0/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netstandard2.0/it/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netstandard2.0/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netstandard2.0/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netstandard2.0/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netstandard2.0/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netstandard2.0/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netstandard2.0/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netstandard2.0/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netstandard2.0/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "microsoft.codeanalysis.workspaces.common.4.5.0.nupkg.sha512", + "microsoft.codeanalysis.workspaces.common.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore/8.0.10": { + "sha512": "PPkQdIqfR1nU3n6YgGGDk8G+eaYbaAKM1AzIQtlPNTKf10Osg3N9T+iK9AlnSA/ujsK00flPpFHVfJrbuBFS1A==", + "type": "package", + "path": "microsoft.entityframeworkcore/8.0.10", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "buildTransitive/net8.0/Microsoft.EntityFrameworkCore.props", + "lib/net8.0/Microsoft.EntityFrameworkCore.dll", + "lib/net8.0/Microsoft.EntityFrameworkCore.xml", + "microsoft.entityframeworkcore.8.0.10.nupkg.sha512", + "microsoft.entityframeworkcore.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.Abstractions/8.0.10": { + "sha512": "FV0QlcX9INY4kAD2o72uPtyOh0nZut2jB11Jf9mNYBtHay8gDLe+x4AbXFwuQg+eSvofjT7naV82e827zGfyMg==", + "type": "package", + "path": "microsoft.entityframeworkcore.abstractions/8.0.10", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll", + "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.xml", + "microsoft.entityframeworkcore.abstractions.8.0.10.nupkg.sha512", + "microsoft.entityframeworkcore.abstractions.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.Analyzers/8.0.10": { + "sha512": "51KkPIc0EMv/gVXhPIUi6cwJE9Mvh+PLr4Lap4naLcsoGZ0lF2SvOPgUUprwRV3MnN7nyD1XPhT5RJ/p+xFAXw==", + "type": "package", + "path": "microsoft.entityframeworkcore.analyzers/8.0.10", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "analyzers/dotnet/cs/Microsoft.EntityFrameworkCore.Analyzers.dll", + "docs/PACKAGE.md", + "lib/netstandard2.0/_._", + "microsoft.entityframeworkcore.analyzers.8.0.10.nupkg.sha512", + "microsoft.entityframeworkcore.analyzers.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.Design/8.0.10": { + "sha512": "uGNjfKvAsql2KHRqxlK5wHo8mMC60G/FecrFKEjJgeIxtUAbSXGOgKGw/gD9flO5Fzzt1C7uxfIcr6ZsMmFkeg==", + "type": "package", + "path": "microsoft.entityframeworkcore.design/8.0.10", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "build/net8.0/Microsoft.EntityFrameworkCore.Design.props", + "lib/net8.0/Microsoft.EntityFrameworkCore.Design.dll", + "lib/net8.0/Microsoft.EntityFrameworkCore.Design.xml", + "microsoft.entityframeworkcore.design.8.0.10.nupkg.sha512", + "microsoft.entityframeworkcore.design.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.Relational/8.0.10": { + "sha512": "OefBEE47kGKPRPV3OT+FAW6o5BFgLk2D9EoeWVy7NbOepzUneayLQxbVE098FfedTyMwxvZQoDD9LrvZc3MadA==", + "type": "package", + "path": "microsoft.entityframeworkcore.relational/8.0.10", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll", + "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.xml", + "microsoft.entityframeworkcore.relational.8.0.10.nupkg.sha512", + "microsoft.entityframeworkcore.relational.nuspec" + ] + }, + "Microsoft.Extensions.Caching.Abstractions/8.0.0": { + "sha512": "3KuSxeHoNYdxVYfg2IRZCThcrlJ1XJqIXkAWikCsbm5C/bCjv7G0WoKDyuR98Q+T607QT2Zl5GsbGRkENcV2yQ==", + "type": "package", + "path": "microsoft.extensions.caching.abstractions/8.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Caching.Abstractions.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Caching.Abstractions.targets", + "lib/net462/Microsoft.Extensions.Caching.Abstractions.dll", + "lib/net462/Microsoft.Extensions.Caching.Abstractions.xml", + "lib/net6.0/Microsoft.Extensions.Caching.Abstractions.dll", + "lib/net6.0/Microsoft.Extensions.Caching.Abstractions.xml", + "lib/net7.0/Microsoft.Extensions.Caching.Abstractions.dll", + "lib/net7.0/Microsoft.Extensions.Caching.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.xml", + "lib/netstandard2.0/Microsoft.Extensions.Caching.Abstractions.dll", + "lib/netstandard2.0/Microsoft.Extensions.Caching.Abstractions.xml", + "microsoft.extensions.caching.abstractions.8.0.0.nupkg.sha512", + "microsoft.extensions.caching.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Caching.Memory/8.0.1": { + "sha512": "HFDnhYLccngrzyGgHkjEDU5FMLn4MpOsr5ElgsBMC4yx6lJh4jeWO7fHS8+TXPq+dgxCmUa/Trl8svObmwW4QA==", + "type": "package", + "path": "microsoft.extensions.caching.memory/8.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Caching.Memory.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Caching.Memory.targets", + "lib/net462/Microsoft.Extensions.Caching.Memory.dll", + "lib/net462/Microsoft.Extensions.Caching.Memory.xml", + "lib/net6.0/Microsoft.Extensions.Caching.Memory.dll", + "lib/net6.0/Microsoft.Extensions.Caching.Memory.xml", + "lib/net7.0/Microsoft.Extensions.Caching.Memory.dll", + "lib/net7.0/Microsoft.Extensions.Caching.Memory.xml", + "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll", + "lib/net8.0/Microsoft.Extensions.Caching.Memory.xml", + "lib/netstandard2.0/Microsoft.Extensions.Caching.Memory.dll", + "lib/netstandard2.0/Microsoft.Extensions.Caching.Memory.xml", + "microsoft.extensions.caching.memory.8.0.1.nupkg.sha512", + "microsoft.extensions.caching.memory.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Configuration.Abstractions/8.0.0": { + "sha512": "3lE/iLSutpgX1CC0NOW70FJoGARRHbyKmG7dc0klnUZ9Dd9hS6N/POPWhKhMLCEuNN5nXEY5agmlFtH562vqhQ==", + "type": "package", + "path": "microsoft.extensions.configuration.abstractions/8.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Configuration.Abstractions.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Configuration.Abstractions.targets", + "lib/net462/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/net462/Microsoft.Extensions.Configuration.Abstractions.xml", + "lib/net6.0/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/net6.0/Microsoft.Extensions.Configuration.Abstractions.xml", + "lib/net7.0/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/net7.0/Microsoft.Extensions.Configuration.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.xml", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.xml", + "microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512", + "microsoft.extensions.configuration.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.DependencyInjection/8.0.1": { + "sha512": "BmANAnR5Xd4Oqw7yQ75xOAYODybZQRzdeNucg7kS5wWKd2PNnMdYtJ2Vciy0QLylRmv42DGl5+AFL9izA6F1Rw==", + "type": "package", + "path": "microsoft.extensions.dependencyinjection/8.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.DependencyInjection.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.targets", + "lib/net462/Microsoft.Extensions.DependencyInjection.dll", + "lib/net462/Microsoft.Extensions.DependencyInjection.xml", + "lib/net6.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/net6.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/net7.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/net7.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.dll", + "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.xml", + "microsoft.extensions.dependencyinjection.8.0.1.nupkg.sha512", + "microsoft.extensions.dependencyinjection.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/8.0.2": { + "sha512": "3iE7UF7MQkCv1cxzCahz+Y/guQbTqieyxyaWKhrRO91itI9cOKO76OHeQDahqG4MmW5umr3CcCvGmK92lWNlbg==", + "type": "package", + "path": "microsoft.extensions.dependencyinjection.abstractions/8.0.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.DependencyInjection.Abstractions.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.Abstractions.targets", + "lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/net7.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net7.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "microsoft.extensions.dependencyinjection.abstractions.8.0.2.nupkg.sha512", + "microsoft.extensions.dependencyinjection.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.DependencyModel/8.0.2": { + "sha512": "mUBDZZRgZrSyFOsJ2qJJ9fXfqd/kXJwf3AiDoqLD9m6TjY5OO/vLNOb9fb4juC0487eq4hcGN/M2Rh/CKS7QYw==", + "type": "package", + "path": "microsoft.extensions.dependencymodel/8.0.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.DependencyModel.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyModel.targets", + "lib/net462/Microsoft.Extensions.DependencyModel.dll", + "lib/net462/Microsoft.Extensions.DependencyModel.xml", + "lib/net6.0/Microsoft.Extensions.DependencyModel.dll", + "lib/net6.0/Microsoft.Extensions.DependencyModel.xml", + "lib/net7.0/Microsoft.Extensions.DependencyModel.dll", + "lib/net7.0/Microsoft.Extensions.DependencyModel.xml", + "lib/net8.0/Microsoft.Extensions.DependencyModel.dll", + "lib/net8.0/Microsoft.Extensions.DependencyModel.xml", + "lib/netstandard2.0/Microsoft.Extensions.DependencyModel.dll", + "lib/netstandard2.0/Microsoft.Extensions.DependencyModel.xml", + "microsoft.extensions.dependencymodel.8.0.2.nupkg.sha512", + "microsoft.extensions.dependencymodel.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Logging/8.0.1": { + "sha512": "4x+pzsQEbqxhNf1QYRr5TDkLP9UsLT3A6MdRKDDEgrW7h1ljiEPgTNhKYUhNCCAaVpQECVQ+onA91PTPnIp6Lw==", + "type": "package", + "path": "microsoft.extensions.logging/8.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Logging.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.targets", + "lib/net462/Microsoft.Extensions.Logging.dll", + "lib/net462/Microsoft.Extensions.Logging.xml", + "lib/net6.0/Microsoft.Extensions.Logging.dll", + "lib/net6.0/Microsoft.Extensions.Logging.xml", + "lib/net7.0/Microsoft.Extensions.Logging.dll", + "lib/net7.0/Microsoft.Extensions.Logging.xml", + "lib/net8.0/Microsoft.Extensions.Logging.dll", + "lib/net8.0/Microsoft.Extensions.Logging.xml", + "lib/netstandard2.0/Microsoft.Extensions.Logging.dll", + "lib/netstandard2.0/Microsoft.Extensions.Logging.xml", + "lib/netstandard2.1/Microsoft.Extensions.Logging.dll", + "lib/netstandard2.1/Microsoft.Extensions.Logging.xml", + "microsoft.extensions.logging.8.0.1.nupkg.sha512", + "microsoft.extensions.logging.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Logging.Abstractions/8.0.2": { + "sha512": "nroMDjS7hNBPtkZqVBbSiQaQjWRDxITI8Y7XnDs97rqG3EbzVTNLZQf7bIeUJcaHOV8bca47s1Uxq94+2oGdxA==", + "type": "package", + "path": "microsoft.extensions.logging.abstractions/8.0.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "analyzers/dotnet/roslyn3.11/cs/Microsoft.Extensions.Logging.Generators.dll", + "analyzers/dotnet/roslyn3.11/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/Microsoft.Extensions.Logging.Generators.dll", + "analyzers/dotnet/roslyn4.0/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Logging.Generators.dll", + "analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", + "buildTransitive/net461/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/net462/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/net6.0/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.targets", + "lib/net462/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/net462/Microsoft.Extensions.Logging.Abstractions.xml", + "lib/net6.0/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/net6.0/Microsoft.Extensions.Logging.Abstractions.xml", + "lib/net7.0/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/net7.0/Microsoft.Extensions.Logging.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.xml", + "lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.xml", + "microsoft.extensions.logging.abstractions.8.0.2.nupkg.sha512", + "microsoft.extensions.logging.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Options/8.0.2": { + "sha512": "dWGKvhFybsaZpGmzkGCbNNwBD1rVlWzrZKANLW/CcbFJpCEceMCGzT7zZwHOGBCbwM0SzBuceMj5HN1LKV1QqA==", + "type": "package", + "path": "microsoft.extensions.options/8.0.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Options.SourceGeneration.dll", + "analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "buildTransitive/net461/Microsoft.Extensions.Options.targets", + "buildTransitive/net462/Microsoft.Extensions.Options.targets", + "buildTransitive/net6.0/Microsoft.Extensions.Options.targets", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Options.targets", + "buildTransitive/netstandard2.0/Microsoft.Extensions.Options.targets", + "lib/net462/Microsoft.Extensions.Options.dll", + "lib/net462/Microsoft.Extensions.Options.xml", + "lib/net6.0/Microsoft.Extensions.Options.dll", + "lib/net6.0/Microsoft.Extensions.Options.xml", + "lib/net7.0/Microsoft.Extensions.Options.dll", + "lib/net7.0/Microsoft.Extensions.Options.xml", + "lib/net8.0/Microsoft.Extensions.Options.dll", + "lib/net8.0/Microsoft.Extensions.Options.xml", + "lib/netstandard2.0/Microsoft.Extensions.Options.dll", + "lib/netstandard2.0/Microsoft.Extensions.Options.xml", + "lib/netstandard2.1/Microsoft.Extensions.Options.dll", + "lib/netstandard2.1/Microsoft.Extensions.Options.xml", + "microsoft.extensions.options.8.0.2.nupkg.sha512", + "microsoft.extensions.options.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Primitives/8.0.0": { + "sha512": "bXJEZrW9ny8vjMF1JV253WeLhpEVzFo1lyaZu1vQ4ZxWUlVvknZ/+ftFgVheLubb4eZPSwwxBeqS1JkCOjxd8g==", + "type": "package", + "path": "microsoft.extensions.primitives/8.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Primitives.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Primitives.targets", + "lib/net462/Microsoft.Extensions.Primitives.dll", + "lib/net462/Microsoft.Extensions.Primitives.xml", + "lib/net6.0/Microsoft.Extensions.Primitives.dll", + "lib/net6.0/Microsoft.Extensions.Primitives.xml", + "lib/net7.0/Microsoft.Extensions.Primitives.dll", + "lib/net7.0/Microsoft.Extensions.Primitives.xml", + "lib/net8.0/Microsoft.Extensions.Primitives.dll", + "lib/net8.0/Microsoft.Extensions.Primitives.xml", + "lib/netstandard2.0/Microsoft.Extensions.Primitives.dll", + "lib/netstandard2.0/Microsoft.Extensions.Primitives.xml", + "microsoft.extensions.primitives.8.0.0.nupkg.sha512", + "microsoft.extensions.primitives.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Mono.TextTemplating/2.2.1": { + "sha512": "KZYeKBET/2Z0gY1WlTAK7+RHTl7GSbtvTLDXEZZojUdAPqpQNDL6tHv7VUpqfX5VEOh+uRGKaZXkuD253nEOBQ==", + "type": "package", + "path": "mono.texttemplating/2.2.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net472/Mono.TextTemplating.dll", + "lib/netstandard2.0/Mono.TextTemplating.dll", + "mono.texttemplating.2.2.1.nupkg.sha512", + "mono.texttemplating.nuspec" + ] + }, + "Npgsql/8.0.5": { + "sha512": "zRG5V8cyeZLpzJlKzFKjEwkRMYIYnHWJvEor2lWXeccS2E1G2nIWYYhnukB51iz5XsWSVEtqg3AxTWM0QJ6vfg==", + "type": "package", + "path": "npgsql/8.0.5", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "lib/net6.0/Npgsql.dll", + "lib/net6.0/Npgsql.xml", + "lib/net7.0/Npgsql.dll", + "lib/net7.0/Npgsql.xml", + "lib/net8.0/Npgsql.dll", + "lib/net8.0/Npgsql.xml", + "lib/netstandard2.0/Npgsql.dll", + "lib/netstandard2.0/Npgsql.xml", + "lib/netstandard2.1/Npgsql.dll", + "lib/netstandard2.1/Npgsql.xml", + "npgsql.8.0.5.nupkg.sha512", + "npgsql.nuspec", + "postgresql.png" + ] + }, + "Npgsql.EntityFrameworkCore.PostgreSQL/8.0.10": { + "sha512": "gFPl9Dmxih7Yi4tZ3bITzZFzbxFMBx04gqTqcjoL2r5VEW+O2TA5UVw/wm/XW26NAJ7sg59Je0+9QrwiZt6MPQ==", + "type": "package", + "path": "npgsql.entityframeworkcore.postgresql/8.0.10", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll", + "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.xml", + "npgsql.entityframeworkcore.postgresql.8.0.10.nupkg.sha512", + "npgsql.entityframeworkcore.postgresql.nuspec", + "postgresql.png" + ] + }, + "System.CodeDom/4.4.0": { + "sha512": "2sCCb7doXEwtYAbqzbF/8UAeDRMNmPaQbU2q50Psg1J9KzumyVVCgKQY8s53WIPTufNT0DpSe9QRvVjOzfDWBA==", + "type": "package", + "path": "system.codedom/4.4.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net461/System.CodeDom.dll", + "lib/netstandard2.0/System.CodeDom.dll", + "ref/net461/System.CodeDom.dll", + "ref/net461/System.CodeDom.xml", + "ref/netstandard2.0/System.CodeDom.dll", + "ref/netstandard2.0/System.CodeDom.xml", + "system.codedom.4.4.0.nupkg.sha512", + "system.codedom.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Collections.Immutable/6.0.0": { + "sha512": "l4zZJ1WU2hqpQQHXz1rvC3etVZN+2DLmQMO79FhOTZHMn8tDRr+WU287sbomD0BETlmKDn0ygUgVy9k5xkkJdA==", + "type": "package", + "path": "system.collections.immutable/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Collections.Immutable.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/System.Collections.Immutable.dll", + "lib/net461/System.Collections.Immutable.xml", + "lib/net6.0/System.Collections.Immutable.dll", + "lib/net6.0/System.Collections.Immutable.xml", + "lib/netstandard2.0/System.Collections.Immutable.dll", + "lib/netstandard2.0/System.Collections.Immutable.xml", + "system.collections.immutable.6.0.0.nupkg.sha512", + "system.collections.immutable.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Composition/6.0.0": { + "sha512": "d7wMuKQtfsxUa7S13tITC8n1cQzewuhD5iDjZtK2prwFfKVzdYtgrTHgjaV03Zq7feGQ5gkP85tJJntXwInsJA==", + "type": "package", + "path": "system.composition/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Composition.targets", + "buildTransitive/netcoreapp3.1/_._", + "system.composition.6.0.0.nupkg.sha512", + "system.composition.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Composition.AttributedModel/6.0.0": { + "sha512": "WK1nSDLByK/4VoC7fkNiFuTVEiperuCN/Hyn+VN30R+W2ijO1d0Z2Qm0ScEl9xkSn1G2MyapJi8xpf4R8WRa/w==", + "type": "package", + "path": "system.composition.attributedmodel/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Composition.AttributedModel.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/System.Composition.AttributedModel.dll", + "lib/net461/System.Composition.AttributedModel.xml", + "lib/net6.0/System.Composition.AttributedModel.dll", + "lib/net6.0/System.Composition.AttributedModel.xml", + "lib/netstandard2.0/System.Composition.AttributedModel.dll", + "lib/netstandard2.0/System.Composition.AttributedModel.xml", + "system.composition.attributedmodel.6.0.0.nupkg.sha512", + "system.composition.attributedmodel.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Composition.Convention/6.0.0": { + "sha512": "XYi4lPRdu5bM4JVJ3/UIHAiG6V6lWWUlkhB9ab4IOq0FrRsp0F4wTyV4Dj+Ds+efoXJ3qbLqlvaUozDO7OLeXA==", + "type": "package", + "path": "system.composition.convention/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Composition.Convention.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/System.Composition.Convention.dll", + "lib/net461/System.Composition.Convention.xml", + "lib/net6.0/System.Composition.Convention.dll", + "lib/net6.0/System.Composition.Convention.xml", + "lib/netstandard2.0/System.Composition.Convention.dll", + "lib/netstandard2.0/System.Composition.Convention.xml", + "system.composition.convention.6.0.0.nupkg.sha512", + "system.composition.convention.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Composition.Hosting/6.0.0": { + "sha512": "w/wXjj7kvxuHPLdzZ0PAUt++qJl03t7lENmb2Oev0n3zbxyNULbWBlnd5J5WUMMv15kg5o+/TCZFb6lSwfaUUQ==", + "type": "package", + "path": "system.composition.hosting/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Composition.Hosting.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/System.Composition.Hosting.dll", + "lib/net461/System.Composition.Hosting.xml", + "lib/net6.0/System.Composition.Hosting.dll", + "lib/net6.0/System.Composition.Hosting.xml", + "lib/netstandard2.0/System.Composition.Hosting.dll", + "lib/netstandard2.0/System.Composition.Hosting.xml", + "system.composition.hosting.6.0.0.nupkg.sha512", + "system.composition.hosting.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Composition.Runtime/6.0.0": { + "sha512": "qkRH/YBaMPTnzxrS5RDk1juvqed4A6HOD/CwRcDGyPpYps1J27waBddiiq1y93jk2ZZ9wuA/kynM+NO0kb3PKg==", + "type": "package", + "path": "system.composition.runtime/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Composition.Runtime.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/System.Composition.Runtime.dll", + "lib/net461/System.Composition.Runtime.xml", + "lib/net6.0/System.Composition.Runtime.dll", + "lib/net6.0/System.Composition.Runtime.xml", + "lib/netstandard2.0/System.Composition.Runtime.dll", + "lib/netstandard2.0/System.Composition.Runtime.xml", + "system.composition.runtime.6.0.0.nupkg.sha512", + "system.composition.runtime.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Composition.TypedParts/6.0.0": { + "sha512": "iUR1eHrL8Cwd82neQCJ00MpwNIBs4NZgXzrPqx8NJf/k4+mwBO0XCRmHYJT4OLSwDDqh5nBLJWkz5cROnrGhRA==", + "type": "package", + "path": "system.composition.typedparts/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Composition.TypedParts.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/System.Composition.TypedParts.dll", + "lib/net461/System.Composition.TypedParts.xml", + "lib/net6.0/System.Composition.TypedParts.dll", + "lib/net6.0/System.Composition.TypedParts.xml", + "lib/netstandard2.0/System.Composition.TypedParts.dll", + "lib/netstandard2.0/System.Composition.TypedParts.xml", + "system.composition.typedparts.6.0.0.nupkg.sha512", + "system.composition.typedparts.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.IO.Pipelines/6.0.3": { + "sha512": "ryTgF+iFkpGZY1vRQhfCzX0xTdlV3pyaTTqRu2ETbEv+HlV7O6y7hyQURnghNIXvctl5DuZ//Dpks6HdL/Txgw==", + "type": "package", + "path": "system.io.pipelines/6.0.3", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.IO.Pipelines.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/System.IO.Pipelines.dll", + "lib/net461/System.IO.Pipelines.xml", + "lib/net6.0/System.IO.Pipelines.dll", + "lib/net6.0/System.IO.Pipelines.xml", + "lib/netcoreapp3.1/System.IO.Pipelines.dll", + "lib/netcoreapp3.1/System.IO.Pipelines.xml", + "lib/netstandard2.0/System.IO.Pipelines.dll", + "lib/netstandard2.0/System.IO.Pipelines.xml", + "system.io.pipelines.6.0.3.nupkg.sha512", + "system.io.pipelines.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Reflection.Metadata/6.0.1": { + "sha512": "III/lNMSn0ZRBuM9m5Cgbiho5j81u0FAEagFX5ta2DKbljZ3T0IpD8j+BIiHQPeKqJppWS9bGEp6JnKnWKze0g==", + "type": "package", + "path": "system.reflection.metadata/6.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Reflection.Metadata.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/System.Reflection.Metadata.dll", + "lib/net461/System.Reflection.Metadata.xml", + "lib/net6.0/System.Reflection.Metadata.dll", + "lib/net6.0/System.Reflection.Metadata.xml", + "lib/netstandard2.0/System.Reflection.Metadata.dll", + "lib/netstandard2.0/System.Reflection.Metadata.xml", + "system.reflection.metadata.6.0.1.nupkg.sha512", + "system.reflection.metadata.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Runtime.CompilerServices.Unsafe/6.0.0": { + "sha512": "/iUeP3tq1S0XdNNoMz5C9twLSrM/TH+qElHkXWaPvuNOt+99G75NrV0OS2EqHx5wMN7popYjpc8oTjC1y16DLg==", + "type": "package", + "path": "system.runtime.compilerservices.unsafe/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Runtime.CompilerServices.Unsafe.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/System.Runtime.CompilerServices.Unsafe.dll", + "lib/net461/System.Runtime.CompilerServices.Unsafe.xml", + "lib/net6.0/System.Runtime.CompilerServices.Unsafe.dll", + "lib/net6.0/System.Runtime.CompilerServices.Unsafe.xml", + "lib/netcoreapp3.1/System.Runtime.CompilerServices.Unsafe.dll", + "lib/netcoreapp3.1/System.Runtime.CompilerServices.Unsafe.xml", + "lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.dll", + "lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.xml", + "system.runtime.compilerservices.unsafe.6.0.0.nupkg.sha512", + "system.runtime.compilerservices.unsafe.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Text.Encoding.CodePages/6.0.0": { + "sha512": "ZFCILZuOvtKPauZ/j/swhvw68ZRi9ATCfvGbk1QfydmcXBkIWecWKn/250UH7rahZ5OoDBaiAudJtPvLwzw85A==", + "type": "package", + "path": "system.text.encoding.codepages/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Text.Encoding.CodePages.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net461/System.Text.Encoding.CodePages.dll", + "lib/net461/System.Text.Encoding.CodePages.xml", + "lib/net6.0/System.Text.Encoding.CodePages.dll", + "lib/net6.0/System.Text.Encoding.CodePages.xml", + "lib/netcoreapp3.1/System.Text.Encoding.CodePages.dll", + "lib/netcoreapp3.1/System.Text.Encoding.CodePages.xml", + "lib/netstandard2.0/System.Text.Encoding.CodePages.dll", + "lib/netstandard2.0/System.Text.Encoding.CodePages.xml", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "runtimes/win/lib/net461/System.Text.Encoding.CodePages.dll", + "runtimes/win/lib/net461/System.Text.Encoding.CodePages.xml", + "runtimes/win/lib/net6.0/System.Text.Encoding.CodePages.dll", + "runtimes/win/lib/net6.0/System.Text.Encoding.CodePages.xml", + "runtimes/win/lib/netcoreapp3.1/System.Text.Encoding.CodePages.dll", + "runtimes/win/lib/netcoreapp3.1/System.Text.Encoding.CodePages.xml", + "runtimes/win/lib/netstandard2.0/System.Text.Encoding.CodePages.dll", + "runtimes/win/lib/netstandard2.0/System.Text.Encoding.CodePages.xml", + "system.text.encoding.codepages.6.0.0.nupkg.sha512", + "system.text.encoding.codepages.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Threading.Channels/6.0.0": { + "sha512": "TY8/9+tI0mNaUMgntOxxaq2ndTkdXqLSxvPmas7XEqOlv9lQtB7wLjYGd756lOaO7Dvb5r/WXhluM+0Xe87v5Q==", + "type": "package", + "path": "system.threading.channels/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Threading.Channels.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/System.Threading.Channels.dll", + "lib/net461/System.Threading.Channels.xml", + "lib/net6.0/System.Threading.Channels.dll", + "lib/net6.0/System.Threading.Channels.xml", + "lib/netcoreapp3.1/System.Threading.Channels.dll", + "lib/netcoreapp3.1/System.Threading.Channels.xml", + "lib/netstandard2.0/System.Threading.Channels.dll", + "lib/netstandard2.0/System.Threading.Channels.xml", + "lib/netstandard2.1/System.Threading.Channels.dll", + "lib/netstandard2.1/System.Threading.Channels.xml", + "system.threading.channels.6.0.0.nupkg.sha512", + "system.threading.channels.nuspec", + "useSharedDesignerContext.txt" + ] + } + }, + "projectFileDependencyGroups": { + "net8.0": [ + "Microsoft.EntityFrameworkCore >= 8.0.10", + "Microsoft.EntityFrameworkCore.Design >= 8.0.10", + "Npgsql.EntityFrameworkCore.PostgreSQL >= 8.0.10" + ] + }, + "packageFolders": { + "C:\\Users\\class_student\\.nuget\\packages\\": {}, + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages": {} + }, + "project": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj", + "projectName": "data", + "projectPath": "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj", + "packagesPath": "C:\\Users\\class_student\\.nuget\\packages\\", + "outputPath": "C:\\Users\\class_student\\source\\repos\\presence\\data\\obj\\", + "projectStyle": "PackageReference", + "fallbackFolders": [ + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" + ], + "configFilePaths": [ + "C:\\Users\\class_student\\AppData\\Roaming\\NuGet\\NuGet.Config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config" + ], + "originalTargetFrameworks": [ + "net8.0" + ], + "sources": { + "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "projectReferences": {} + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + }, + "restoreAuditProperties": { + "enableAudit": "true", + "auditLevel": "low", + "auditMode": "direct" + } + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "dependencies": { + "Microsoft.EntityFrameworkCore": { + "target": "Package", + "version": "[8.0.10, )" + }, + "Microsoft.EntityFrameworkCore.Design": { + "include": "Runtime, Build, Native, ContentFiles, Analyzers, BuildTransitive", + "suppressParent": "All", + "target": "Package", + "version": "[8.0.10, )" + }, + "Npgsql.EntityFrameworkCore.PostgreSQL": { + "target": "Package", + "version": "[8.0.10, )" + } + }, + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "Microsoft.NETCore.App": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.204/PortableRuntimeIdentifierGraph.json" + } + } + } +} \ No newline at end of file diff --git a/data/obj/project.nuget.cache b/data/obj/project.nuget.cache new file mode 100644 index 0000000..ab1c6bf --- /dev/null +++ b/data/obj/project.nuget.cache @@ -0,0 +1,47 @@ +{ + "version": 2, + "dgSpecHash": "dq+xJQNSo82BcvI1YOEsRM5SyN3J419X1oAn1yZywg6ptvxskzy0YvsVYIchdWZwskiwWAGbewHiRF0FFD64Gg==", + "success": true, + "projectFilePath": "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj", + "expectedPackageFiles": [ + "C:\\Users\\class_student\\.nuget\\packages\\humanizer.core\\2.14.1\\humanizer.core.2.14.1.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.bcl.asyncinterfaces\\6.0.0\\microsoft.bcl.asyncinterfaces.6.0.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.codeanalysis.analyzers\\3.3.3\\microsoft.codeanalysis.analyzers.3.3.3.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.codeanalysis.common\\4.5.0\\microsoft.codeanalysis.common.4.5.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.codeanalysis.csharp\\4.5.0\\microsoft.codeanalysis.csharp.4.5.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.codeanalysis.csharp.workspaces\\4.5.0\\microsoft.codeanalysis.csharp.workspaces.4.5.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.codeanalysis.workspaces.common\\4.5.0\\microsoft.codeanalysis.workspaces.common.4.5.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.entityframeworkcore\\8.0.10\\microsoft.entityframeworkcore.8.0.10.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.entityframeworkcore.abstractions\\8.0.10\\microsoft.entityframeworkcore.abstractions.8.0.10.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.entityframeworkcore.analyzers\\8.0.10\\microsoft.entityframeworkcore.analyzers.8.0.10.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.entityframeworkcore.design\\8.0.10\\microsoft.entityframeworkcore.design.8.0.10.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.entityframeworkcore.relational\\8.0.10\\microsoft.entityframeworkcore.relational.8.0.10.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.caching.abstractions\\8.0.0\\microsoft.extensions.caching.abstractions.8.0.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.caching.memory\\8.0.1\\microsoft.extensions.caching.memory.8.0.1.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.configuration.abstractions\\8.0.0\\microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.dependencyinjection\\8.0.1\\microsoft.extensions.dependencyinjection.8.0.1.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.dependencyinjection.abstractions\\8.0.2\\microsoft.extensions.dependencyinjection.abstractions.8.0.2.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.dependencymodel\\8.0.2\\microsoft.extensions.dependencymodel.8.0.2.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.logging\\8.0.1\\microsoft.extensions.logging.8.0.1.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.logging.abstractions\\8.0.2\\microsoft.extensions.logging.abstractions.8.0.2.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.options\\8.0.2\\microsoft.extensions.options.8.0.2.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.primitives\\8.0.0\\microsoft.extensions.primitives.8.0.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\mono.texttemplating\\2.2.1\\mono.texttemplating.2.2.1.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\npgsql\\8.0.5\\npgsql.8.0.5.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\npgsql.entityframeworkcore.postgresql\\8.0.10\\npgsql.entityframeworkcore.postgresql.8.0.10.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\system.codedom\\4.4.0\\system.codedom.4.4.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\system.collections.immutable\\6.0.0\\system.collections.immutable.6.0.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\system.composition\\6.0.0\\system.composition.6.0.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\system.composition.attributedmodel\\6.0.0\\system.composition.attributedmodel.6.0.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\system.composition.convention\\6.0.0\\system.composition.convention.6.0.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\system.composition.hosting\\6.0.0\\system.composition.hosting.6.0.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\system.composition.runtime\\6.0.0\\system.composition.runtime.6.0.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\system.composition.typedparts\\6.0.0\\system.composition.typedparts.6.0.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\system.io.pipelines\\6.0.3\\system.io.pipelines.6.0.3.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\system.reflection.metadata\\6.0.1\\system.reflection.metadata.6.0.1.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\system.runtime.compilerservices.unsafe\\6.0.0\\system.runtime.compilerservices.unsafe.6.0.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\system.text.encoding.codepages\\6.0.0\\system.text.encoding.codepages.6.0.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\system.threading.channels\\6.0.0\\system.threading.channels.6.0.0.nupkg.sha512" + ], + "logs": [] +} \ No newline at end of file diff --git a/domain/Models/Group.cs b/domain/Models/Group.cs new file mode 100644 index 0000000..769b2ca --- /dev/null +++ b/domain/Models/Group.cs @@ -0,0 +1,14 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace domain.Models +{ + public class Group + { + public required int Id { get; set; } + public required string Name { get; set; } + } +} diff --git a/domain/Models/Presence.cs b/domain/Models/Presence.cs new file mode 100644 index 0000000..6561111 --- /dev/null +++ b/domain/Models/Presence.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace domain.Models +{ + public class Presence + { + + public required User User { get; set; } + public required int GroupId { get; set; } + public bool IsAttedance { get; set; } = true; + public required DateTime Date { get; set; } + + public required int LessonNumber { get; set; } + } +} diff --git a/domain/Models/User.cs b/domain/Models/User.cs new file mode 100644 index 0000000..cd35dc6 --- /dev/null +++ b/domain/Models/User.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace domain.Models +{ + public class User + { + public required string FIO { get; set; } + public Guid Guid { get; set; } + public required Group Group { get; set; } + } +} diff --git a/domain/UseCase/GroupUseCase.cs b/domain/UseCase/GroupUseCase.cs new file mode 100644 index 0000000..3705a45 --- /dev/null +++ b/domain/UseCase/GroupUseCase.cs @@ -0,0 +1,107 @@ +using data.LocalData; +using data.Repository; +using domain.Models; + + +namespace domain.UseCase +{ + public class GroupUseCase + { + private readonly IGroupRepository _repositoryGroupImpl; + + public GroupUseCase(IGroupRepository repositoryGroupImpl) + { + _repositoryGroupImpl = repositoryGroupImpl; + } + + // Приватный метод для валидации имени группы + + + // Приватный метод для валидации существования группы по ID + private GroupLocalEntity ValidateGroupExistence(int groupId) + { + var existingGroup = _repositoryGroupImpl.GetAllGroup() + .FirstOrDefault(g => g.Id == groupId); + + if (existingGroup == null) + { + throw new ArgumentException("Группа не найдена."); + } + + return existingGroup; + } + + + // Метод для получения списка всех групп + public List GetAllGroups() + { + return [.. _repositoryGroupImpl.GetAllGroup() + .Select(it => new Group { Id = it.Id, Name = it.Name })]; + } + + + public Group FindGroupById(int groupId) + { + var group = GetAllGroups().FirstOrDefault(g => g.Id == groupId); + + if (group == null) + { + throw new ArgumentException("Группа не найдена."); + } + + return group; + } + + + // Метод для добавления новой группы + public void AddGroup(string groupName) + { + + + var newId = _repositoryGroupImpl.GetAllGroup().Any() + ? _repositoryGroupImpl.GetAllGroup().Max(g => g.Id) + 1 + : 1; + + GroupLocalEntity newGroup = new GroupLocalEntity + { + Id = newId, + Name = groupName + }; + + _repositoryGroupImpl.AddGroup(newGroup); + } + + public void RemoveGroupById(int groupId) + { + + var existingGroup = ValidateGroupExistence(groupId); + List _groups = GetAllGroups(); + + // Находим группу по ID и удаляем ее + var groupToRemove = _groups.FirstOrDefault(g => g.Id == existingGroup.Id); + if (groupToRemove != null) + { + _groups.Remove(groupToRemove); + _repositoryGroupImpl.RemoveGroupById(existingGroup.Id); + } + else + { + throw new ArgumentException("Группа не найдена."); + // Обработка случая, если группа не найдена (например, выброс исключения) + } + } + + + // Метод для изменения названия группы + public void UpdateGroup(int groupId, string newGroupName) + { + + var existingGroup = ValidateGroupExistence(groupId); + + existingGroup.Name = newGroupName; + _repositoryGroupImpl.UpdateGroupById(existingGroup.Id, existingGroup); + + + } + } +} \ No newline at end of file diff --git a/domain/UseCase/UseCaseGeneratePresence.cs b/domain/UseCase/UseCaseGeneratePresence.cs new file mode 100644 index 0000000..94d18b1 --- /dev/null +++ b/domain/UseCase/UseCaseGeneratePresence.cs @@ -0,0 +1,175 @@ +using ClosedXML.Excel; +using data.RemoteData.RemoteDataBase.DAO; +using data.Repository; +using domain.Models; +using Microsoft.EntityFrameworkCore; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace domain.UseCase +{ + public class UseCaseGeneratePresence + { + public readonly IUserRepository _userRepository; + public readonly IPresenceRepository _presenceRepository; + private readonly IGroupRepository _groupRepository; + + public UseCaseGeneratePresence(IUserRepository userRepository, IPresenceRepository presenceRepository, IGroupRepository groupRepository) + { + _userRepository = userRepository; + _presenceRepository = presenceRepository; + _groupRepository = groupRepository; + } + + public List GetPresenceByGroupAndDate(int groupId, DateTime date) + { + return _presenceRepository.GetPresenceByGroupAndDate(groupId, date); + } + + + public void GeneratePresenceDaily(int firstLesson, int lastLesson, int groupId, DateTime currentDate) + { + var users = _userRepository.GetAllUsers.Where(u => u.GroupID == groupId).ToList(); + List presences = new List(); + for (int lessonNumber = firstLesson; lessonNumber <= lastLesson; lessonNumber++) + { + foreach (var user in users) + { + presences.Add(new PresenceLocalEntity + { + UserGuid = user.Guid, + Date = currentDate, + LessonNumber = lessonNumber, + IsAttedance = true + }); + } + } + _presenceRepository.SavePresence(presences); + } + + public void GenerateWeeklyPresence(int firstLesson, int lastLesson, int groupId, DateTime startTime) + { + for (int i = 0; i < 7; i++) + { + DateTime currentTime = startTime.AddDays(i); + GeneratePresenceDaily(firstLesson, lastLesson, groupId, currentTime); + } + } + + + + // Отметить пользователя как отсутствующего на диапазоне занятий + public void MarkUserAsAbsent(Guid userGuid, int groupId, int firstLesson, int lastLesson, DateTime date) + { + var presences = _presenceRepository.GetPresenceByGroupAndDate(groupId, date); + foreach (var presence in presences.Where(p => p.UserGuid == userGuid && p.LessonNumber >= firstLesson && p.LessonNumber <= lastLesson)) + { + presence.IsAttedance = false; + + + + } + _presenceRepository.SavePresence(presences); + } + + + + public List GetAllPresenceByGroup(int groupId) + { + return _presenceRepository.GetPresenceByGroup(groupId); + } + + public GroupPresenceSummary GetGeneralPresenceForGroup(int groupId) + { + return _presenceRepository.GetGeneralPresenceForGroup(groupId); + } + + public Dictionary> GetAllAttendanceByGroups() + { + var attendanceByGroup = new Dictionary>(); + var allGroups = _groupRepository.GetAllGroup(); + + foreach (var group in allGroups) + { + var groupAttendance = _presenceRepository.GetAttendanceByGroup(group.Id); + var attendanceRecords = new List(); + + foreach (var record in groupAttendance) + { + var names = _userRepository.GetUserNames().Where(u => u.Guid == record.UserGuid); + foreach (var name in names) + { + attendanceRecords.Add(new Excel + { + UserName = name.FIO, + UserGuid = name.Guid, + Date = record.Date, + IsAttedance = record.IsAttedance, + LessonNumber = record.LessonNumber, + GroupName = group.Name + }); + } + } + + attendanceByGroup.Add(group.Name, attendanceRecords); + } + + return attendanceByGroup; + } + + public void ExportAttendanceToExcel() + { + var attendanceByGroup = GetAllAttendanceByGroups(); + string projectDirectory = Directory.GetParent(Directory.GetCurrentDirectory()).Parent.Parent.FullName; + string reportsFolderPath = Path.Combine(projectDirectory, "Reports"); + string filePath = Path.Combine(reportsFolderPath, "AttendanceReport.xlsx"); + + // Создаем папку, если она не существует + if (!Directory.Exists(reportsFolderPath)) + { + Directory.CreateDirectory(reportsFolderPath); + } + using (var workbook = new XLWorkbook()) + { + foreach (var group in attendanceByGroup) + { + var worksheet = workbook.Worksheets.Add($"{group.Key}"); + worksheet.Cell(1, 1).Value = "ФИО"; + worksheet.Cell(1, 2).Value = "Группа"; + worksheet.Cell(1, 3).Value = "Дата"; + worksheet.Cell(1, 4).Value = "Занятие"; + worksheet.Cell(1, 5).Value = "Статус"; + + int row = 2; + int lesNum = 1; + foreach (var record in group.Value.OrderBy(r => r.Date).ThenBy(r => r.LessonNumber).ThenBy(r => r.UserGuid)) + { + if (lesNum != record.LessonNumber) + { + row++; + } + worksheet.Cell(row, 1).Value = record.UserName; + worksheet.Cell(row, 2).Value = record.GroupName; + worksheet.Cell(row, 3).Value = record.Date.ToString("dd.MM.yyyy"); + worksheet.Cell(row, 4).Value = record.LessonNumber.ToString(); + worksheet.Cell(row, 5).Value = record.IsAttedance ? "Присутствует" : "Отсутствует"; + row++; + + + + lesNum = record.LessonNumber; + } + + worksheet.Columns().AdjustToContents(); + } + + workbook.SaveAs(filePath); + } + } + + + } +} diff --git a/domain/UseCase/UserUseCase.cs b/domain/UseCase/UserUseCase.cs new file mode 100644 index 0000000..521e804 --- /dev/null +++ b/domain/UseCase/UserUseCase.cs @@ -0,0 +1,111 @@ +using Dataceptions; +using data.Repository; +using domain.Models; + +namespace domain.UseCase +{ + public class UserUseCase + { + private readonly IUserRepository _repositoryUserImpl; + private readonly IGroupRepository _repositoryGroupImpl; + + public UserUseCase(IUserRepository repositoryImpl, IGroupRepository repositoryGroupImpl) + { + _repositoryUserImpl = repositoryImpl; + _repositoryGroupImpl = repositoryGroupImpl; + } + + // Вывести всех пользователей + public List GetAllUsers() => _repositoryUserImpl.GetAllUsers + .Join(_repositoryGroupImpl.GetAllGroup(), + user => user.GroupID, + group => group.Id, + (user, group) => + new User + { + FIO = user.FIO, + Guid = user.Guid, + Group = new Group { Id = group.Id, Name = group.Name } + }).ToList(); + + // Удалить пользователя по id + public bool RemoveUserById(Guid userGuid) + { + try + { + return _repositoryUserImpl.RemoveUserById(userGuid); + } + catch (UserNotFoundException) + { + return false; + } + catch (RepositoryException) + { + return false; + } + } + + // Обновить пользователя по guid + public User UpdateUser(User user) + { + UserLocalEnity userLocalEnity = new UserLocalEnity + { + FIO = user.FIO, + GroupID = user.Group.Id, + Guid = user.Guid + }; + + UserLocalEnity? result = _repositoryUserImpl.UpdateUser(userLocalEnity); + + if (result == null) + { + throw new Exception("Ошибка при обновлении пользователя."); + } + + var groupEntity = _repositoryGroupImpl.GetAllGroup().FirstOrDefault(g => g.Id == result.GroupID); + + if (groupEntity == null) + { + throw new Exception("Группа не найдена."); + } + + return new User + { + FIO = result.FIO, + Guid = result.Guid, + Group = new Group + { + Id = groupEntity.Id, + Name = groupEntity.Name + } + }; + } + + // Найти пользователя по id + public User FindUserById(Guid userGuid) + { + var user = _repositoryUserImpl.GetAllUsers + .FirstOrDefault(u => u.Guid == userGuid); + + if (user == null) + { + throw new Exception("Пользователь не найден."); + } + + var group = _repositoryGroupImpl.GetAllGroup() + .FirstOrDefault(g => g.Id == user.GroupID); + + if (group == null) + { + throw new Exception("Группа не найдена."); + } + + return new User + { + FIO = user.FIO, + Guid = user.Guid, + Group = new Group { Id = group.Id, Name = group.Name } + }; + } + } +} diff --git a/domain/domain.csproj b/domain/domain.csproj new file mode 100644 index 0000000..992a448 --- /dev/null +++ b/domain/domain.csproj @@ -0,0 +1,17 @@ + + + + + + + + + + + + net8.0 + enable + enable + + + diff --git a/domain/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs b/domain/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs new file mode 100644 index 0000000..2217181 --- /dev/null +++ b/domain/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs @@ -0,0 +1,4 @@ +// +using System; +using System.Reflection; +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v8.0", FrameworkDisplayName = ".NET 8.0")] diff --git a/domain/obj/Debug/net8.0/domain.AssemblyInfo.cs b/domain/obj/Debug/net8.0/domain.AssemblyInfo.cs new file mode 100644 index 0000000..22f5bf2 --- /dev/null +++ b/domain/obj/Debug/net8.0/domain.AssemblyInfo.cs @@ -0,0 +1,23 @@ +//------------------------------------------------------------------------------ +// +// Этот код создан программой. +// Исполняемая версия:4.0.30319.42000 +// +// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае +// повторной генерации кода. +// +//------------------------------------------------------------------------------ + +using System; +using System.Reflection; + +[assembly: System.Reflection.AssemblyCompanyAttribute("domain")] +[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] +[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] +[assembly: System.Reflection.AssemblyProductAttribute("domain")] +[assembly: System.Reflection.AssemblyTitleAttribute("domain")] +[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] + +// Создано классом WriteCodeFragment MSBuild. + diff --git a/domain/obj/Debug/net8.0/domain.AssemblyInfoInputs.cache b/domain/obj/Debug/net8.0/domain.AssemblyInfoInputs.cache new file mode 100644 index 0000000..191d5d4 --- /dev/null +++ b/domain/obj/Debug/net8.0/domain.AssemblyInfoInputs.cache @@ -0,0 +1 @@ +50afef9105125301dd1c05ea9fb1e5f605a3f79c6aca753bbf0156749546e4dd diff --git a/domain/obj/Debug/net8.0/domain.GeneratedMSBuildEditorConfig.editorconfig b/domain/obj/Debug/net8.0/domain.GeneratedMSBuildEditorConfig.editorconfig new file mode 100644 index 0000000..65a1010 --- /dev/null +++ b/domain/obj/Debug/net8.0/domain.GeneratedMSBuildEditorConfig.editorconfig @@ -0,0 +1,13 @@ +is_global = true +build_property.TargetFramework = net8.0 +build_property.TargetPlatformMinVersion = +build_property.UsingMicrosoftNETSdkWeb = +build_property.ProjectTypeGuids = +build_property.InvariantGlobalization = +build_property.PlatformNeutralAssembly = +build_property.EnforceExtendedAnalyzerRules = +build_property._SupportedPlatformList = Linux,macOS,Windows +build_property.RootNamespace = domain +build_property.ProjectDir = C:\Users\class_student\source\repos\presence\domain\ +build_property.EnableComHosting = +build_property.EnableGeneratedComInterfaceComImportInterop = diff --git a/domain/obj/Debug/net8.0/domain.GlobalUsings.g.cs b/domain/obj/Debug/net8.0/domain.GlobalUsings.g.cs new file mode 100644 index 0000000..8578f3d --- /dev/null +++ b/domain/obj/Debug/net8.0/domain.GlobalUsings.g.cs @@ -0,0 +1,8 @@ +// +global using global::System; +global using global::System.Collections.Generic; +global using global::System.IO; +global using global::System.Linq; +global using global::System.Net.Http; +global using global::System.Threading; +global using global::System.Threading.Tasks; diff --git a/domain/obj/Debug/net8.0/domain.assets.cache b/domain/obj/Debug/net8.0/domain.assets.cache new file mode 100644 index 0000000..a98c6a8 Binary files /dev/null and b/domain/obj/Debug/net8.0/domain.assets.cache differ diff --git a/domain/obj/Debug/net8.0/domain.csproj.AssemblyReference.cache b/domain/obj/Debug/net8.0/domain.csproj.AssemblyReference.cache new file mode 100644 index 0000000..bd7e5d8 Binary files /dev/null and b/domain/obj/Debug/net8.0/domain.csproj.AssemblyReference.cache differ diff --git a/domain/obj/domain.csproj.nuget.dgspec.json b/domain/obj/domain.csproj.nuget.dgspec.json new file mode 100644 index 0000000..946f38d --- /dev/null +++ b/domain/obj/domain.csproj.nuget.dgspec.json @@ -0,0 +1,162 @@ +{ + "format": 1, + "restore": { + "C:\\Users\\class_student\\source\\repos\\presence\\domain\\domain.csproj": {} + }, + "projects": { + "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj", + "projectName": "data", + "projectPath": "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj", + "packagesPath": "C:\\Users\\class_student\\.nuget\\packages\\", + "outputPath": "C:\\Users\\class_student\\source\\repos\\presence\\data\\obj\\", + "projectStyle": "PackageReference", + "fallbackFolders": [ + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" + ], + "configFilePaths": [ + "C:\\Users\\class_student\\AppData\\Roaming\\NuGet\\NuGet.Config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config" + ], + "originalTargetFrameworks": [ + "net8.0" + ], + "sources": { + "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "projectReferences": {} + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + }, + "restoreAuditProperties": { + "enableAudit": "true", + "auditLevel": "low", + "auditMode": "direct" + } + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "dependencies": { + "Microsoft.EntityFrameworkCore": { + "target": "Package", + "version": "[8.0.10, )" + }, + "Microsoft.EntityFrameworkCore.Design": { + "include": "Runtime, Build, Native, ContentFiles, Analyzers, BuildTransitive", + "suppressParent": "All", + "target": "Package", + "version": "[8.0.10, )" + }, + "Npgsql.EntityFrameworkCore.PostgreSQL": { + "target": "Package", + "version": "[8.0.10, )" + } + }, + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "Microsoft.NETCore.App": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.204/PortableRuntimeIdentifierGraph.json" + } + } + }, + "C:\\Users\\class_student\\source\\repos\\presence\\domain\\domain.csproj": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "C:\\Users\\class_student\\source\\repos\\presence\\domain\\domain.csproj", + "projectName": "domain", + "projectPath": "C:\\Users\\class_student\\source\\repos\\presence\\domain\\domain.csproj", + "packagesPath": "C:\\Users\\class_student\\.nuget\\packages\\", + "outputPath": "C:\\Users\\class_student\\source\\repos\\presence\\domain\\obj\\", + "projectStyle": "PackageReference", + "fallbackFolders": [ + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" + ], + "configFilePaths": [ + "C:\\Users\\class_student\\AppData\\Roaming\\NuGet\\NuGet.Config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config" + ], + "originalTargetFrameworks": [ + "net8.0" + ], + "sources": { + "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "projectReferences": { + "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj": { + "projectPath": "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj" + } + } + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + }, + "restoreAuditProperties": { + "enableAudit": "true", + "auditLevel": "low", + "auditMode": "direct" + } + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "dependencies": { + "ClosedXML": { + "target": "Package", + "version": "[0.104.1, )" + } + }, + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "Microsoft.NETCore.App": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.204/PortableRuntimeIdentifierGraph.json" + } + } + } + } +} \ No newline at end of file diff --git a/domain/obj/domain.csproj.nuget.g.props b/domain/obj/domain.csproj.nuget.g.props new file mode 100644 index 0000000..d669d1a --- /dev/null +++ b/domain/obj/domain.csproj.nuget.g.props @@ -0,0 +1,19 @@ + + + + True + NuGet + $(MSBuildThisFileDirectory)project.assets.json + $(UserProfile)\.nuget\packages\ + C:\Users\class_student\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages + PackageReference + 6.9.2 + + + + + + + + + \ No newline at end of file diff --git a/domain/obj/domain.csproj.nuget.g.targets b/domain/obj/domain.csproj.nuget.g.targets new file mode 100644 index 0000000..baac958 --- /dev/null +++ b/domain/obj/domain.csproj.nuget.g.targets @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/domain/obj/project.assets.json b/domain/obj/project.assets.json new file mode 100644 index 0000000..782ca28 --- /dev/null +++ b/domain/obj/project.assets.json @@ -0,0 +1,1099 @@ +{ + "version": 3, + "targets": { + "net8.0": { + "ClosedXML/0.104.1": { + "type": "package", + "dependencies": { + "ClosedXML.Parser": "[1.2.0, 2.0.0)", + "DocumentFormat.OpenXml": "[3.0.1, 4.0.0)", + "ExcelNumberFormat": "1.1.0", + "RBush": "3.2.0", + "SixLabors.Fonts": "1.0.0", + "System.IO.Packaging": "8.0.0" + }, + "compile": { + "lib/netstandard2.1/ClosedXML.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/netstandard2.1/ClosedXML.dll": { + "related": ".pdb;.xml" + } + } + }, + "ClosedXML.Parser/1.2.0": { + "type": "package", + "compile": { + "lib/netstandard2.1/ClosedXML.Parser.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.1/ClosedXML.Parser.dll": { + "related": ".xml" + } + } + }, + "DocumentFormat.OpenXml/3.0.1": { + "type": "package", + "dependencies": { + "DocumentFormat.OpenXml.Framework": "3.0.1" + }, + "compile": { + "lib/net8.0/DocumentFormat.OpenXml.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/DocumentFormat.OpenXml.dll": { + "related": ".xml" + } + } + }, + "DocumentFormat.OpenXml.Framework/3.0.1": { + "type": "package", + "dependencies": { + "System.IO.Packaging": "8.0.0" + }, + "compile": { + "lib/net8.0/DocumentFormat.OpenXml.Framework.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/DocumentFormat.OpenXml.Framework.dll": { + "related": ".xml" + } + } + }, + "ExcelNumberFormat/1.1.0": { + "type": "package", + "compile": { + "lib/netstandard2.0/ExcelNumberFormat.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/ExcelNumberFormat.dll": { + "related": ".xml" + } + } + }, + "Microsoft.EntityFrameworkCore/8.0.10": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore.Abstractions": "8.0.10", + "Microsoft.EntityFrameworkCore.Analyzers": "8.0.10", + "Microsoft.Extensions.Caching.Memory": "8.0.1", + "Microsoft.Extensions.Logging": "8.0.1" + }, + "compile": { + "lib/net8.0/Microsoft.EntityFrameworkCore.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.EntityFrameworkCore.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/Microsoft.EntityFrameworkCore.props": {} + } + }, + "Microsoft.EntityFrameworkCore.Abstractions/8.0.10": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": { + "related": ".xml" + } + } + }, + "Microsoft.EntityFrameworkCore.Analyzers/8.0.10": { + "type": "package", + "compile": { + "lib/netstandard2.0/_._": {} + }, + "runtime": { + "lib/netstandard2.0/_._": {} + } + }, + "Microsoft.EntityFrameworkCore.Relational/8.0.10": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore": "8.0.10", + "Microsoft.Extensions.Configuration.Abstractions": "8.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": { + "related": ".xml" + } + } + }, + "Microsoft.Extensions.Caching.Abstractions/8.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Primitives": "8.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.Caching.Memory/8.0.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Caching.Abstractions": "8.0.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2", + "Microsoft.Extensions.Logging.Abstractions": "8.0.2", + "Microsoft.Extensions.Options": "8.0.2", + "Microsoft.Extensions.Primitives": "8.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.Configuration.Abstractions/8.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Primitives": "8.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.DependencyInjection/8.0.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/8.0.2": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.Logging/8.0.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "8.0.1", + "Microsoft.Extensions.Logging.Abstractions": "8.0.2", + "Microsoft.Extensions.Options": "8.0.2" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Logging.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.Logging.Abstractions/8.0.2": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/Microsoft.Extensions.Logging.Abstractions.targets": {} + } + }, + "Microsoft.Extensions.Options/8.0.2": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.0", + "Microsoft.Extensions.Primitives": "8.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Options.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Options.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/Microsoft.Extensions.Options.targets": {} + } + }, + "Microsoft.Extensions.Primitives/8.0.0": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.Extensions.Primitives.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Primitives.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Npgsql/8.0.5": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "8.0.0" + }, + "compile": { + "lib/net8.0/Npgsql.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Npgsql.dll": { + "related": ".xml" + } + } + }, + "Npgsql.EntityFrameworkCore.PostgreSQL/8.0.10": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore": "8.0.10", + "Microsoft.EntityFrameworkCore.Abstractions": "8.0.10", + "Microsoft.EntityFrameworkCore.Relational": "8.0.10", + "Npgsql": "8.0.5" + }, + "compile": { + "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll": { + "related": ".xml" + } + } + }, + "RBush/3.2.0": { + "type": "package", + "compile": { + "lib/net6.0/RBush.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/RBush.dll": { + "related": ".xml" + } + } + }, + "SixLabors.Fonts/1.0.0": { + "type": "package", + "compile": { + "lib/netcoreapp3.1/SixLabors.Fonts.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netcoreapp3.1/SixLabors.Fonts.dll": { + "related": ".xml" + } + } + }, + "System.IO.Packaging/8.0.0": { + "type": "package", + "compile": { + "lib/net8.0/System.IO.Packaging.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.IO.Packaging.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "data/1.0.0": { + "type": "project", + "framework": ".NETCoreApp,Version=v8.0", + "dependencies": { + "Microsoft.EntityFrameworkCore": "8.0.10", + "Npgsql.EntityFrameworkCore.PostgreSQL": "8.0.10" + }, + "compile": { + "bin/placeholder/data.dll": {} + }, + "runtime": { + "bin/placeholder/data.dll": {} + } + } + } + }, + "libraries": { + "ClosedXML/0.104.1": { + "sha512": "RVm2fUNWJlBJlg07shrfeWzrHPG5ypI/vARqdUOUbUdaog8yBw8l4IbCHf2MXt0AXtzaZqGNqhFaCAHigCBdfw==", + "type": "package", + "path": "closedxml/0.104.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "closedxml.0.104.1.nupkg.sha512", + "closedxml.nuspec", + "lib/netstandard2.0/ClosedXML.dll", + "lib/netstandard2.0/ClosedXML.pdb", + "lib/netstandard2.0/ClosedXML.xml", + "lib/netstandard2.1/ClosedXML.dll", + "lib/netstandard2.1/ClosedXML.pdb", + "lib/netstandard2.1/ClosedXML.xml", + "nuget-logo.png" + ] + }, + "ClosedXML.Parser/1.2.0": { + "sha512": "w+/0tsxABS3lkSH8EUlA7IGme+mq5T/Puf3DbOiTckmSuUpAUO2LK29oXYByCcWkBv6wcRHxgWlQb1lxkwI0Tw==", + "type": "package", + "path": "closedxml.parser/1.2.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "closedxml.parser.1.2.0.nupkg.sha512", + "closedxml.parser.nuspec", + "lib/netstandard2.0/ClosedXML.Parser.dll", + "lib/netstandard2.0/ClosedXML.Parser.xml", + "lib/netstandard2.1/ClosedXML.Parser.dll", + "lib/netstandard2.1/ClosedXML.Parser.xml" + ] + }, + "DocumentFormat.OpenXml/3.0.1": { + "sha512": "DCK1cwFUJ1FGGyYyo++HWl9H1RkqMWIu+FGOLRy6E4L4y0/HIhlJ7N/n1HKboFfOwKn1cMBRxt1RCuDbIEy5YQ==", + "type": "package", + "path": "documentformat.openxml/3.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "documentformat.openxml.3.0.1.nupkg.sha512", + "documentformat.openxml.nuspec", + "icon.png", + "lib/net35/DocumentFormat.OpenXml.dll", + "lib/net35/DocumentFormat.OpenXml.xml", + "lib/net40/DocumentFormat.OpenXml.dll", + "lib/net40/DocumentFormat.OpenXml.xml", + "lib/net46/DocumentFormat.OpenXml.dll", + "lib/net46/DocumentFormat.OpenXml.xml", + "lib/net8.0/DocumentFormat.OpenXml.dll", + "lib/net8.0/DocumentFormat.OpenXml.xml", + "lib/netstandard2.0/DocumentFormat.OpenXml.dll", + "lib/netstandard2.0/DocumentFormat.OpenXml.xml" + ] + }, + "DocumentFormat.OpenXml.Framework/3.0.1": { + "sha512": "ifyI7OW7sggz7LQMIAD2aUsY/zVUON9QaHrpZ4MK33iVMeHlTG4uhUE2aLWb31nry+LCs2ALDAwf8OfUJGjgBg==", + "type": "package", + "path": "documentformat.openxml.framework/3.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "documentformat.openxml.framework.3.0.1.nupkg.sha512", + "documentformat.openxml.framework.nuspec", + "icon.png", + "lib/net35/DocumentFormat.OpenXml.Framework.dll", + "lib/net35/DocumentFormat.OpenXml.Framework.xml", + "lib/net40/DocumentFormat.OpenXml.Framework.dll", + "lib/net40/DocumentFormat.OpenXml.Framework.xml", + "lib/net46/DocumentFormat.OpenXml.Framework.dll", + "lib/net46/DocumentFormat.OpenXml.Framework.xml", + "lib/net6.0/DocumentFormat.OpenXml.Framework.dll", + "lib/net6.0/DocumentFormat.OpenXml.Framework.xml", + "lib/net8.0/DocumentFormat.OpenXml.Framework.dll", + "lib/net8.0/DocumentFormat.OpenXml.Framework.xml", + "lib/netstandard2.0/DocumentFormat.OpenXml.Framework.dll", + "lib/netstandard2.0/DocumentFormat.OpenXml.Framework.xml" + ] + }, + "ExcelNumberFormat/1.1.0": { + "sha512": "R3BVHPs9O+RkExbZYTGT0+9HLbi8ZrNij1Yziyw6znd3J7P3uoIR07uwTLGOogtz1p6+0sna66eBoXu7tBiVQA==", + "type": "package", + "path": "excelnumberformat/1.1.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "excelnumberformat.1.1.0.nupkg.sha512", + "excelnumberformat.nuspec", + "icon.png", + "lib/net20/ExcelNumberFormat.dll", + "lib/net20/ExcelNumberFormat.xml", + "lib/netstandard1.0/ExcelNumberFormat.dll", + "lib/netstandard1.0/ExcelNumberFormat.xml", + "lib/netstandard2.0/ExcelNumberFormat.dll", + "lib/netstandard2.0/ExcelNumberFormat.xml" + ] + }, + "Microsoft.EntityFrameworkCore/8.0.10": { + "sha512": "PPkQdIqfR1nU3n6YgGGDk8G+eaYbaAKM1AzIQtlPNTKf10Osg3N9T+iK9AlnSA/ujsK00flPpFHVfJrbuBFS1A==", + "type": "package", + "path": "microsoft.entityframeworkcore/8.0.10", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "buildTransitive/net8.0/Microsoft.EntityFrameworkCore.props", + "lib/net8.0/Microsoft.EntityFrameworkCore.dll", + "lib/net8.0/Microsoft.EntityFrameworkCore.xml", + "microsoft.entityframeworkcore.8.0.10.nupkg.sha512", + "microsoft.entityframeworkcore.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.Abstractions/8.0.10": { + "sha512": "FV0QlcX9INY4kAD2o72uPtyOh0nZut2jB11Jf9mNYBtHay8gDLe+x4AbXFwuQg+eSvofjT7naV82e827zGfyMg==", + "type": "package", + "path": "microsoft.entityframeworkcore.abstractions/8.0.10", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll", + "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.xml", + "microsoft.entityframeworkcore.abstractions.8.0.10.nupkg.sha512", + "microsoft.entityframeworkcore.abstractions.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.Analyzers/8.0.10": { + "sha512": "51KkPIc0EMv/gVXhPIUi6cwJE9Mvh+PLr4Lap4naLcsoGZ0lF2SvOPgUUprwRV3MnN7nyD1XPhT5RJ/p+xFAXw==", + "type": "package", + "path": "microsoft.entityframeworkcore.analyzers/8.0.10", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "analyzers/dotnet/cs/Microsoft.EntityFrameworkCore.Analyzers.dll", + "docs/PACKAGE.md", + "lib/netstandard2.0/_._", + "microsoft.entityframeworkcore.analyzers.8.0.10.nupkg.sha512", + "microsoft.entityframeworkcore.analyzers.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.Relational/8.0.10": { + "sha512": "OefBEE47kGKPRPV3OT+FAW6o5BFgLk2D9EoeWVy7NbOepzUneayLQxbVE098FfedTyMwxvZQoDD9LrvZc3MadA==", + "type": "package", + "path": "microsoft.entityframeworkcore.relational/8.0.10", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll", + "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.xml", + "microsoft.entityframeworkcore.relational.8.0.10.nupkg.sha512", + "microsoft.entityframeworkcore.relational.nuspec" + ] + }, + "Microsoft.Extensions.Caching.Abstractions/8.0.0": { + "sha512": "3KuSxeHoNYdxVYfg2IRZCThcrlJ1XJqIXkAWikCsbm5C/bCjv7G0WoKDyuR98Q+T607QT2Zl5GsbGRkENcV2yQ==", + "type": "package", + "path": "microsoft.extensions.caching.abstractions/8.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Caching.Abstractions.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Caching.Abstractions.targets", + "lib/net462/Microsoft.Extensions.Caching.Abstractions.dll", + "lib/net462/Microsoft.Extensions.Caching.Abstractions.xml", + "lib/net6.0/Microsoft.Extensions.Caching.Abstractions.dll", + "lib/net6.0/Microsoft.Extensions.Caching.Abstractions.xml", + "lib/net7.0/Microsoft.Extensions.Caching.Abstractions.dll", + "lib/net7.0/Microsoft.Extensions.Caching.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.xml", + "lib/netstandard2.0/Microsoft.Extensions.Caching.Abstractions.dll", + "lib/netstandard2.0/Microsoft.Extensions.Caching.Abstractions.xml", + "microsoft.extensions.caching.abstractions.8.0.0.nupkg.sha512", + "microsoft.extensions.caching.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Caching.Memory/8.0.1": { + "sha512": "HFDnhYLccngrzyGgHkjEDU5FMLn4MpOsr5ElgsBMC4yx6lJh4jeWO7fHS8+TXPq+dgxCmUa/Trl8svObmwW4QA==", + "type": "package", + "path": "microsoft.extensions.caching.memory/8.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Caching.Memory.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Caching.Memory.targets", + "lib/net462/Microsoft.Extensions.Caching.Memory.dll", + "lib/net462/Microsoft.Extensions.Caching.Memory.xml", + "lib/net6.0/Microsoft.Extensions.Caching.Memory.dll", + "lib/net6.0/Microsoft.Extensions.Caching.Memory.xml", + "lib/net7.0/Microsoft.Extensions.Caching.Memory.dll", + "lib/net7.0/Microsoft.Extensions.Caching.Memory.xml", + "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll", + "lib/net8.0/Microsoft.Extensions.Caching.Memory.xml", + "lib/netstandard2.0/Microsoft.Extensions.Caching.Memory.dll", + "lib/netstandard2.0/Microsoft.Extensions.Caching.Memory.xml", + "microsoft.extensions.caching.memory.8.0.1.nupkg.sha512", + "microsoft.extensions.caching.memory.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Configuration.Abstractions/8.0.0": { + "sha512": "3lE/iLSutpgX1CC0NOW70FJoGARRHbyKmG7dc0klnUZ9Dd9hS6N/POPWhKhMLCEuNN5nXEY5agmlFtH562vqhQ==", + "type": "package", + "path": "microsoft.extensions.configuration.abstractions/8.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Configuration.Abstractions.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Configuration.Abstractions.targets", + "lib/net462/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/net462/Microsoft.Extensions.Configuration.Abstractions.xml", + "lib/net6.0/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/net6.0/Microsoft.Extensions.Configuration.Abstractions.xml", + "lib/net7.0/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/net7.0/Microsoft.Extensions.Configuration.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.xml", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.xml", + "microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512", + "microsoft.extensions.configuration.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.DependencyInjection/8.0.1": { + "sha512": "BmANAnR5Xd4Oqw7yQ75xOAYODybZQRzdeNucg7kS5wWKd2PNnMdYtJ2Vciy0QLylRmv42DGl5+AFL9izA6F1Rw==", + "type": "package", + "path": "microsoft.extensions.dependencyinjection/8.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.DependencyInjection.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.targets", + "lib/net462/Microsoft.Extensions.DependencyInjection.dll", + "lib/net462/Microsoft.Extensions.DependencyInjection.xml", + "lib/net6.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/net6.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/net7.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/net7.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.dll", + "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.xml", + "microsoft.extensions.dependencyinjection.8.0.1.nupkg.sha512", + "microsoft.extensions.dependencyinjection.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/8.0.2": { + "sha512": "3iE7UF7MQkCv1cxzCahz+Y/guQbTqieyxyaWKhrRO91itI9cOKO76OHeQDahqG4MmW5umr3CcCvGmK92lWNlbg==", + "type": "package", + "path": "microsoft.extensions.dependencyinjection.abstractions/8.0.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.DependencyInjection.Abstractions.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.Abstractions.targets", + "lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/net7.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net7.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "microsoft.extensions.dependencyinjection.abstractions.8.0.2.nupkg.sha512", + "microsoft.extensions.dependencyinjection.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Logging/8.0.1": { + "sha512": "4x+pzsQEbqxhNf1QYRr5TDkLP9UsLT3A6MdRKDDEgrW7h1ljiEPgTNhKYUhNCCAaVpQECVQ+onA91PTPnIp6Lw==", + "type": "package", + "path": "microsoft.extensions.logging/8.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Logging.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.targets", + "lib/net462/Microsoft.Extensions.Logging.dll", + "lib/net462/Microsoft.Extensions.Logging.xml", + "lib/net6.0/Microsoft.Extensions.Logging.dll", + "lib/net6.0/Microsoft.Extensions.Logging.xml", + "lib/net7.0/Microsoft.Extensions.Logging.dll", + "lib/net7.0/Microsoft.Extensions.Logging.xml", + "lib/net8.0/Microsoft.Extensions.Logging.dll", + "lib/net8.0/Microsoft.Extensions.Logging.xml", + "lib/netstandard2.0/Microsoft.Extensions.Logging.dll", + "lib/netstandard2.0/Microsoft.Extensions.Logging.xml", + "lib/netstandard2.1/Microsoft.Extensions.Logging.dll", + "lib/netstandard2.1/Microsoft.Extensions.Logging.xml", + "microsoft.extensions.logging.8.0.1.nupkg.sha512", + "microsoft.extensions.logging.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Logging.Abstractions/8.0.2": { + "sha512": "nroMDjS7hNBPtkZqVBbSiQaQjWRDxITI8Y7XnDs97rqG3EbzVTNLZQf7bIeUJcaHOV8bca47s1Uxq94+2oGdxA==", + "type": "package", + "path": "microsoft.extensions.logging.abstractions/8.0.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "analyzers/dotnet/roslyn3.11/cs/Microsoft.Extensions.Logging.Generators.dll", + "analyzers/dotnet/roslyn3.11/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/Microsoft.Extensions.Logging.Generators.dll", + "analyzers/dotnet/roslyn4.0/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Logging.Generators.dll", + "analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", + "buildTransitive/net461/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/net462/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/net6.0/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.targets", + "lib/net462/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/net462/Microsoft.Extensions.Logging.Abstractions.xml", + "lib/net6.0/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/net6.0/Microsoft.Extensions.Logging.Abstractions.xml", + "lib/net7.0/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/net7.0/Microsoft.Extensions.Logging.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.xml", + "lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.xml", + "microsoft.extensions.logging.abstractions.8.0.2.nupkg.sha512", + "microsoft.extensions.logging.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Options/8.0.2": { + "sha512": "dWGKvhFybsaZpGmzkGCbNNwBD1rVlWzrZKANLW/CcbFJpCEceMCGzT7zZwHOGBCbwM0SzBuceMj5HN1LKV1QqA==", + "type": "package", + "path": "microsoft.extensions.options/8.0.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Options.SourceGeneration.dll", + "analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "buildTransitive/net461/Microsoft.Extensions.Options.targets", + "buildTransitive/net462/Microsoft.Extensions.Options.targets", + "buildTransitive/net6.0/Microsoft.Extensions.Options.targets", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Options.targets", + "buildTransitive/netstandard2.0/Microsoft.Extensions.Options.targets", + "lib/net462/Microsoft.Extensions.Options.dll", + "lib/net462/Microsoft.Extensions.Options.xml", + "lib/net6.0/Microsoft.Extensions.Options.dll", + "lib/net6.0/Microsoft.Extensions.Options.xml", + "lib/net7.0/Microsoft.Extensions.Options.dll", + "lib/net7.0/Microsoft.Extensions.Options.xml", + "lib/net8.0/Microsoft.Extensions.Options.dll", + "lib/net8.0/Microsoft.Extensions.Options.xml", + "lib/netstandard2.0/Microsoft.Extensions.Options.dll", + "lib/netstandard2.0/Microsoft.Extensions.Options.xml", + "lib/netstandard2.1/Microsoft.Extensions.Options.dll", + "lib/netstandard2.1/Microsoft.Extensions.Options.xml", + "microsoft.extensions.options.8.0.2.nupkg.sha512", + "microsoft.extensions.options.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Primitives/8.0.0": { + "sha512": "bXJEZrW9ny8vjMF1JV253WeLhpEVzFo1lyaZu1vQ4ZxWUlVvknZ/+ftFgVheLubb4eZPSwwxBeqS1JkCOjxd8g==", + "type": "package", + "path": "microsoft.extensions.primitives/8.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Primitives.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Primitives.targets", + "lib/net462/Microsoft.Extensions.Primitives.dll", + "lib/net462/Microsoft.Extensions.Primitives.xml", + "lib/net6.0/Microsoft.Extensions.Primitives.dll", + "lib/net6.0/Microsoft.Extensions.Primitives.xml", + "lib/net7.0/Microsoft.Extensions.Primitives.dll", + "lib/net7.0/Microsoft.Extensions.Primitives.xml", + "lib/net8.0/Microsoft.Extensions.Primitives.dll", + "lib/net8.0/Microsoft.Extensions.Primitives.xml", + "lib/netstandard2.0/Microsoft.Extensions.Primitives.dll", + "lib/netstandard2.0/Microsoft.Extensions.Primitives.xml", + "microsoft.extensions.primitives.8.0.0.nupkg.sha512", + "microsoft.extensions.primitives.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Npgsql/8.0.5": { + "sha512": "zRG5V8cyeZLpzJlKzFKjEwkRMYIYnHWJvEor2lWXeccS2E1G2nIWYYhnukB51iz5XsWSVEtqg3AxTWM0QJ6vfg==", + "type": "package", + "path": "npgsql/8.0.5", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "lib/net6.0/Npgsql.dll", + "lib/net6.0/Npgsql.xml", + "lib/net7.0/Npgsql.dll", + "lib/net7.0/Npgsql.xml", + "lib/net8.0/Npgsql.dll", + "lib/net8.0/Npgsql.xml", + "lib/netstandard2.0/Npgsql.dll", + "lib/netstandard2.0/Npgsql.xml", + "lib/netstandard2.1/Npgsql.dll", + "lib/netstandard2.1/Npgsql.xml", + "npgsql.8.0.5.nupkg.sha512", + "npgsql.nuspec", + "postgresql.png" + ] + }, + "Npgsql.EntityFrameworkCore.PostgreSQL/8.0.10": { + "sha512": "gFPl9Dmxih7Yi4tZ3bITzZFzbxFMBx04gqTqcjoL2r5VEW+O2TA5UVw/wm/XW26NAJ7sg59Je0+9QrwiZt6MPQ==", + "type": "package", + "path": "npgsql.entityframeworkcore.postgresql/8.0.10", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll", + "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.xml", + "npgsql.entityframeworkcore.postgresql.8.0.10.nupkg.sha512", + "npgsql.entityframeworkcore.postgresql.nuspec", + "postgresql.png" + ] + }, + "RBush/3.2.0": { + "sha512": "ijGh9N0zZ7JfXk3oQkWCwK8SwSSByexbyh/MjbCjNxOft9eG5ZqKC1vdgiYq78h4IZRFmN4s3JZ/b10Jipud5w==", + "type": "package", + "path": "rbush/3.2.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net6.0/RBush.dll", + "lib/net6.0/RBush.xml", + "lib/netcoreapp3.1/RBush.dll", + "lib/netcoreapp3.1/RBush.xml", + "lib/netstandard1.2/RBush.dll", + "lib/netstandard1.2/RBush.xml", + "rbush.3.2.0.nupkg.sha512", + "rbush.nuspec", + "readme.md" + ] + }, + "SixLabors.Fonts/1.0.0": { + "sha512": "LFQsCZlV0xlUyXAOMUo5kkSl+8zAQXXbbdwWchtk0B4o7zotZhQsQOcJUELGHdfPfm/xDAsz6hONAuV25bJaAg==", + "type": "package", + "path": "sixlabors.fonts/1.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/netcoreapp3.1/SixLabors.Fonts.dll", + "lib/netcoreapp3.1/SixLabors.Fonts.xml", + "lib/netstandard2.0/SixLabors.Fonts.dll", + "lib/netstandard2.0/SixLabors.Fonts.xml", + "lib/netstandard2.1/SixLabors.Fonts.dll", + "lib/netstandard2.1/SixLabors.Fonts.xml", + "sixlabors.fonts.1.0.0.nupkg.sha512", + "sixlabors.fonts.128.png", + "sixlabors.fonts.nuspec" + ] + }, + "System.IO.Packaging/8.0.0": { + "sha512": "8g1V4YRpdGAxFcK8v9OjuMdIOJSpF30Zb1JGicwVZhly3I994WFyBdV6mQEo8d3T+URQe55/M0U0eIH0Hts1bg==", + "type": "package", + "path": "system.io.packaging/8.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.IO.Packaging.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/System.IO.Packaging.targets", + "lib/net462/System.IO.Packaging.dll", + "lib/net462/System.IO.Packaging.xml", + "lib/net6.0/System.IO.Packaging.dll", + "lib/net6.0/System.IO.Packaging.xml", + "lib/net7.0/System.IO.Packaging.dll", + "lib/net7.0/System.IO.Packaging.xml", + "lib/net8.0/System.IO.Packaging.dll", + "lib/net8.0/System.IO.Packaging.xml", + "lib/netstandard2.0/System.IO.Packaging.dll", + "lib/netstandard2.0/System.IO.Packaging.xml", + "system.io.packaging.8.0.0.nupkg.sha512", + "system.io.packaging.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "data/1.0.0": { + "type": "project", + "path": "../data/data.csproj", + "msbuildProject": "../data/data.csproj" + } + }, + "projectFileDependencyGroups": { + "net8.0": [ + "ClosedXML >= 0.104.1", + "data >= 1.0.0" + ] + }, + "packageFolders": { + "C:\\Users\\class_student\\.nuget\\packages\\": {}, + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages": {} + }, + "project": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "C:\\Users\\class_student\\source\\repos\\presence\\domain\\domain.csproj", + "projectName": "domain", + "projectPath": "C:\\Users\\class_student\\source\\repos\\presence\\domain\\domain.csproj", + "packagesPath": "C:\\Users\\class_student\\.nuget\\packages\\", + "outputPath": "C:\\Users\\class_student\\source\\repos\\presence\\domain\\obj\\", + "projectStyle": "PackageReference", + "fallbackFolders": [ + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" + ], + "configFilePaths": [ + "C:\\Users\\class_student\\AppData\\Roaming\\NuGet\\NuGet.Config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config" + ], + "originalTargetFrameworks": [ + "net8.0" + ], + "sources": { + "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "projectReferences": { + "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj": { + "projectPath": "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj" + } + } + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + }, + "restoreAuditProperties": { + "enableAudit": "true", + "auditLevel": "low", + "auditMode": "direct" + } + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "dependencies": { + "ClosedXML": { + "target": "Package", + "version": "[0.104.1, )" + } + }, + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "Microsoft.NETCore.App": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.204/PortableRuntimeIdentifierGraph.json" + } + } + } +} \ No newline at end of file diff --git a/domain/obj/project.nuget.cache b/domain/obj/project.nuget.cache new file mode 100644 index 0000000..e76a5a5 --- /dev/null +++ b/domain/obj/project.nuget.cache @@ -0,0 +1,32 @@ +{ + "version": 2, + "dgSpecHash": "lJTJ14wBwjXFnaVaxoabnlDogMX3Sp0lQVlqyaedGyWhAz5YJhifXah8drXyM7t4sf35FH72dxhiyf+6Qi+IXA==", + "success": true, + "projectFilePath": "C:\\Users\\class_student\\source\\repos\\presence\\domain\\domain.csproj", + "expectedPackageFiles": [ + "C:\\Users\\class_student\\.nuget\\packages\\closedxml\\0.104.1\\closedxml.0.104.1.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\closedxml.parser\\1.2.0\\closedxml.parser.1.2.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\documentformat.openxml\\3.0.1\\documentformat.openxml.3.0.1.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\documentformat.openxml.framework\\3.0.1\\documentformat.openxml.framework.3.0.1.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\excelnumberformat\\1.1.0\\excelnumberformat.1.1.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.entityframeworkcore\\8.0.10\\microsoft.entityframeworkcore.8.0.10.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.entityframeworkcore.abstractions\\8.0.10\\microsoft.entityframeworkcore.abstractions.8.0.10.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.entityframeworkcore.analyzers\\8.0.10\\microsoft.entityframeworkcore.analyzers.8.0.10.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.entityframeworkcore.relational\\8.0.10\\microsoft.entityframeworkcore.relational.8.0.10.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.caching.abstractions\\8.0.0\\microsoft.extensions.caching.abstractions.8.0.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.caching.memory\\8.0.1\\microsoft.extensions.caching.memory.8.0.1.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.configuration.abstractions\\8.0.0\\microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.dependencyinjection\\8.0.1\\microsoft.extensions.dependencyinjection.8.0.1.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.dependencyinjection.abstractions\\8.0.2\\microsoft.extensions.dependencyinjection.abstractions.8.0.2.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.logging\\8.0.1\\microsoft.extensions.logging.8.0.1.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.logging.abstractions\\8.0.2\\microsoft.extensions.logging.abstractions.8.0.2.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.options\\8.0.2\\microsoft.extensions.options.8.0.2.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.primitives\\8.0.0\\microsoft.extensions.primitives.8.0.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\npgsql\\8.0.5\\npgsql.8.0.5.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\npgsql.entityframeworkcore.postgresql\\8.0.10\\npgsql.entityframeworkcore.postgresql.8.0.10.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\rbush\\3.2.0\\rbush.3.2.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\sixlabors.fonts\\1.0.0\\sixlabors.fonts.1.0.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\system.io.packaging\\8.0.0\\system.io.packaging.8.0.0.nupkg.sha512" + ], + "logs": [] +} \ No newline at end of file diff --git a/presence.sln b/presence.sln new file mode 100644 index 0000000..33ce01b --- /dev/null +++ b/presence.sln @@ -0,0 +1,40 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.0.31903.59 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "data", "data\data.csproj", "{7E1D482B-6976-4984-85C3-AE6E789E7FC2}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "domain", "domain\domain.csproj", "{53B2C28F-CCC6-4399-BA63-8A21E2D26B73}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ui", "ui\ui.csproj", "{1904560F-B17D-4598-AE5C-5FA0D0C2517B}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "console_ui", "console_ui\console_ui.csproj", "{214169B6-E77C-4C7D-8D64-6E5126C243FA}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {7E1D482B-6976-4984-85C3-AE6E789E7FC2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7E1D482B-6976-4984-85C3-AE6E789E7FC2}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7E1D482B-6976-4984-85C3-AE6E789E7FC2}.Release|Any CPU.ActiveCfg = Release|Any CPU + {7E1D482B-6976-4984-85C3-AE6E789E7FC2}.Release|Any CPU.Build.0 = Release|Any CPU + {53B2C28F-CCC6-4399-BA63-8A21E2D26B73}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {53B2C28F-CCC6-4399-BA63-8A21E2D26B73}.Debug|Any CPU.Build.0 = Debug|Any CPU + {53B2C28F-CCC6-4399-BA63-8A21E2D26B73}.Release|Any CPU.ActiveCfg = Release|Any CPU + {53B2C28F-CCC6-4399-BA63-8A21E2D26B73}.Release|Any CPU.Build.0 = Release|Any CPU + {1904560F-B17D-4598-AE5C-5FA0D0C2517B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {1904560F-B17D-4598-AE5C-5FA0D0C2517B}.Debug|Any CPU.Build.0 = Debug|Any CPU + {1904560F-B17D-4598-AE5C-5FA0D0C2517B}.Release|Any CPU.ActiveCfg = Release|Any CPU + {1904560F-B17D-4598-AE5C-5FA0D0C2517B}.Release|Any CPU.Build.0 = Release|Any CPU + {214169B6-E77C-4C7D-8D64-6E5126C243FA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {214169B6-E77C-4C7D-8D64-6E5126C243FA}.Debug|Any CPU.Build.0 = Debug|Any CPU + {214169B6-E77C-4C7D-8D64-6E5126C243FA}.Release|Any CPU.ActiveCfg = Release|Any CPU + {214169B6-E77C-4C7D-8D64-6E5126C243FA}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection +EndGlobal diff --git a/ui/GroupConsole.cs b/ui/GroupConsole.cs new file mode 100644 index 0000000..8dd104c --- /dev/null +++ b/ui/GroupConsole.cs @@ -0,0 +1,97 @@ +using domain.UseCase; +using System; +using System.Text; + +namespace ui +{ + public class GroupConsoleUI + { + private readonly GroupUseCase _groupUseCase; + + public GroupConsoleUI(GroupUseCase groupUseCase) + { + _groupUseCase = groupUseCase; + } + + public void FindGroupById(int groupId) + { + try + { + var group = _groupUseCase.FindGroupById(groupId); + Console.WriteLine($"ID группы: {group.Id} Название группы: {group.Name}"); + } + catch (Exception ex) + { + Console.WriteLine($"Ошибка: {ex.Message}"); + } + } + + // Метод для отображения всех групп + public void DisplayAllGroups() + { + Console.WriteLine("\n=== Список всех групп ==="); + StringBuilder groupOutput = new StringBuilder(); + + foreach (var group in _groupUseCase.GetAllGroups()) + { + groupOutput.AppendLine($"{group.Id}\t{group.Name}"); + } + + Console.WriteLine(groupOutput); + Console.WriteLine("===========================\n"); + } + + // Метод для добавления новой группы + public void AddGroup(string groupName) + { + try + { + ValidateGroupName(groupName); // Валидация в интерфейсе + _groupUseCase.AddGroup(groupName); + Console.WriteLine($"\nГруппа {groupName} добавлена.\n"); + } + catch (Exception ex) + { + Console.WriteLine($"Ошибка: {ex.Message}\n"); + } + } + + public void RemoveGroup(string groupIdStr) + { + try + { + int groupId = int.Parse(groupIdStr); + ValidateGroupId(groupId); // Валидация в интерфейсе + _groupUseCase.RemoveGroupById(groupId); + Console.WriteLine($"Группа с ID: {groupId} удалена"); + } + catch (Exception ex) + { + Console.WriteLine($"Ошибка: {ex.Message}\n"); + } + } + + // Метод для обновления названия группы + public void UpdateGroupName(int groupId, string newGroupName) + { + _groupUseCase.UpdateGroup(groupId, newGroupName); + Console.WriteLine($"\nНазвание группы с ID {groupId} изменено на {newGroupName}.\n"); + } + + private void ValidateGroupName(string groupName) + { + if (string.IsNullOrWhiteSpace(groupName)) + { + throw new ArgumentException("Имя группы не может быть пустым."); + } + } + + private void ValidateGroupId(int GroupId) + { + if (GroupId < 1) + { + throw new ArgumentException("Введите корректный ID группы."); + } + } + } +} diff --git a/ui/MainMenu.cs b/ui/MainMenu.cs new file mode 100644 index 0000000..80343db --- /dev/null +++ b/ui/MainMenu.cs @@ -0,0 +1,229 @@ +using data.Repository; +using domain.Models; +using domain.UseCase; +using System; + +namespace ui +{ + public class MainMenuUI + { + private readonly UserConsoleUI _userConsoleUI; + private readonly GroupConsoleUI _groupConsoleUI; + private readonly PresenceConsole _presenceConsoleUI; + + public MainMenuUI(UserUseCase userUseCase, GroupUseCase groupUseCase, UseCaseGeneratePresence presenceUseCase, IPresenceRepository presenceRepository) + { + _userConsoleUI = new UserConsoleUI(userUseCase); + _groupConsoleUI = new GroupConsoleUI(groupUseCase); + _presenceConsoleUI = new PresenceConsole(presenceUseCase, presenceRepository); // Передаем presenceRepository + } + + + public void DisplayMenu() + { + while (true) + { + Console.WriteLine("\n==================== Главная Панель ====================\n"); + + Console.WriteLine("~~~~~~~~~~~~~~~ УПРАВЛЕНИЕ ПОЛЬЗОВАТЕЛЯМИ ~~~~~~~~~~~~~~~"); + Console.WriteLine("1. Показать список всех пользователей"); + Console.WriteLine("2. Удалить пользователя по его Guid"); + Console.WriteLine("3. Обновить данные пользователя по Guid"); + Console.WriteLine("4. Найти пользователя по его Guid"); + Console.WriteLine(); + + Console.WriteLine("~~~~~~~~~~~~~~~ УПРАВЛЕНИЕ ГРУППАМИ ~~~~~~~~~~~~~~~"); + Console.WriteLine("5. Показать список всех групп"); + Console.WriteLine("6. Создать новую группу"); + Console.WriteLine("7. Удалить группу по ID"); + Console.WriteLine("8. Изменить название существующей группы"); + Console.WriteLine("9. Найти группу по ее ID"); + Console.WriteLine(); + + Console.WriteLine("~~~~~~~~~~~~~~~ УПРАВЛЕНИЕ ПОСЕЩАЕМОСТЬЮ ~~~~~~~~~~~~~~~"); + Console.WriteLine("10. Сгенерировать посещаемость на текущий день"); + Console.WriteLine("11. Сгенерировать посещаемость на текущую неделю"); + Console.WriteLine("12. Показать посещаемость всех пользователей"); + Console.WriteLine("13. Отметить пользователя как отсутствующего"); + Console.WriteLine("14. Вывести посещаемость группы по ID"); + Console.WriteLine("15. Создать Excel файл"); + Console.WriteLine("16. Информация о посещаемости"); + + Console.WriteLine(); + + Console.WriteLine("========================================================"); + Console.WriteLine("0. Выход из программы"); + + Console.Write("\nВыберите команду: "); + string command = Console.ReadLine(); + Console.WriteLine(); + + switch (command) + { + case "1": + _userConsoleUI.DisplayAllUsers(); + break; + + case "2": + Console.Write("Введите Guid пользователя для удаления: "); + if (Guid.TryParse(Console.ReadLine(), out Guid userGuid)) + { + _userConsoleUI.RemoveUserById(userGuid); + } + else + { + Console.WriteLine("Неверный формат Guid"); + } + break; + + case "3": + Console.Write("Введите Guid пользователя для обновления: "); + if (Guid.TryParse(Console.ReadLine(), out Guid updateUserGuid)) + { + _userConsoleUI.UpdateUserById(updateUserGuid); + } + else + { + Console.WriteLine("Неверный формат Guid"); + } + break; + + case "4": + Console.Write("Введите Guid пользователя для поиска: "); + if (Guid.TryParse(Console.ReadLine(), out Guid findUserGuid)) + { + _userConsoleUI.FindUserById(findUserGuid); + } + else + { + Console.WriteLine("Неверный формат Guid"); + } + break; + + case "5": + _groupConsoleUI.DisplayAllGroups(); + break; + + case "6": + Console.Write("Введите название новой группы: "); + string newGroupName = Console.ReadLine(); + _groupConsoleUI.AddGroup(newGroupName); + break; + + case "7": + Console.Write("Введите ID группы для удаления: "); + string groupIdForDeleteStr = Console.ReadLine(); // Считываем ID как строку + if (!string.IsNullOrWhiteSpace(groupIdForDeleteStr) && int.TryParse(groupIdForDeleteStr, out int groupIdForDelete)) // Проверяем, что строка не пустая и может быть преобразована в int + { + _groupConsoleUI.RemoveGroup(groupIdForDeleteStr); // Передаем строку в метод + } + else + { + Console.WriteLine("Неверный формат ID группы"); + } + break; + + case "8": + Console.Write("Введите ID группы для изменения: "); + if (int.TryParse(Console.ReadLine(), out int groupIdToUpdate)) + { + Console.Write("Введите новое название группы: "); + string newName = Console.ReadLine(); + _groupConsoleUI.UpdateGroupName(groupIdToUpdate, newName); + } + else + { + Console.WriteLine("Неверный формат ID группы"); + } + break; + + case "9": + Console.Write("Введите ID группы для поиска: "); + if (int.TryParse(Console.ReadLine(), out int idGroupToFind)) + { + _groupConsoleUI.FindGroupById(idGroupToFind); + } + else + { + Console.WriteLine("Неверный формат ID группы"); + } + break; + + case "10": + Console.Write("Введите номер первого занятия: "); + int firstLesson = int.Parse(Console.ReadLine()); + Console.Write("Введите номер последнего занятия: "); + int lastLesson = int.Parse(Console.ReadLine()); + Console.Write("Введите ID группы: "); + int groupIdForPresence = int.Parse(Console.ReadLine()); + + _presenceConsoleUI.GeneratePresenceForDay(DateTime.Now, groupIdForPresence, firstLesson, lastLesson); + Console.WriteLine("Посещаемость на день сгенерирована."); + break; + + case "11": + Console.Write("Введите номер первого занятия: "); + int firstLessonForWeek = int.Parse(Console.ReadLine()); + Console.Write("Введите номер последнего занятия: "); + int lastLessonForWeek = int.Parse(Console.ReadLine()); + Console.Write("Введите ID группы: "); + int groupIdForWeekPresence = int.Parse(Console.ReadLine()); + + _presenceConsoleUI.GeneratePresenceForWeek(DateTime.Now, groupIdForWeekPresence, firstLessonForWeek, lastLessonForWeek); + Console.WriteLine("Посещаемость на неделю сгенерирована."); + break; + + case "12": + Console.Write("Введите дату (гггг-мм-дд): "); + DateTime date = DateTime.Parse(Console.ReadLine()); + Console.Write("Введите ID группы: "); + int groupForPresenceView = int.Parse(Console.ReadLine()); + + _presenceConsoleUI.DisplayPresence(date, groupForPresenceView); + break; + + case "13": + Console.Write("Введите пользователя: "); + userGuid = Guid.Parse(Console.ReadLine()); + Console.Write("Введите номер первого занятия: "); + int firstAbsLesson = int.Parse(Console.ReadLine()); + Console.Write("Введите номер последнего занятия: "); + int lastAbsLesson = int.Parse(Console.ReadLine()); + Console.Write("Введите ID группы: "); + int absGroupId = int.Parse(Console.ReadLine()); + + _presenceConsoleUI.MarkUserAsAbsent(DateTime.Now, absGroupId, userGuid, firstAbsLesson, lastAbsLesson); + Console.WriteLine("Пользователь отмечен как отсутствующий."); + break; + + case "14": + Console.Write("Введите ID группы: "); + int groupIdForAllPresence = int.Parse(Console.ReadLine()); + _presenceConsoleUI.DisplayAllPresenceByGroup(groupIdForAllPresence); + break; + + + + case "15": + _presenceConsoleUI.ExportAttendanceToExcel(); + break; + + case "16": + Console.Write("Введите ID группы: "); + int searchGroupId = int.Parse(Console.ReadLine()); + _presenceConsoleUI.DisplayGeneralPresenceForGroup(searchGroupId); + break; + + case "0": + Console.WriteLine("Выход..."); + return; + + default: + Console.WriteLine("Неверный выбор, попробуйте снова."); + break; + } + Console.WriteLine(); + } + } + } +} diff --git a/ui/PresenceConsole.cs b/ui/PresenceConsole.cs new file mode 100644 index 0000000..a34de1a --- /dev/null +++ b/ui/PresenceConsole.cs @@ -0,0 +1,210 @@ +using data.Repository; +using domain.Models; +using domain.UseCase; +using System; +using System.Collections.Generic; + +namespace ui +{ + public class PresenceConsole + { + private readonly UseCaseGeneratePresence _presenceUseCase; + private readonly IPresenceRepository _presenceRepository; + + public PresenceConsole(UseCaseGeneratePresence presenceUseCase, IPresenceRepository presenceRepository) + { + _presenceUseCase = presenceUseCase; + _presenceRepository = presenceRepository; + } + + // Метод для генерации посещаемости на день + public void GeneratePresenceForDay(DateTime date, int groupId, int firstLesson, int lastLesson) + { + try + { + _presenceUseCase.GeneratePresenceDaily(firstLesson, lastLesson, groupId, date); + Console.WriteLine("Посещаемость на день успешно сгенерирована."); + } + catch (Exception ex) + { + Console.WriteLine($"Ошибка при генерации посещаемости: {ex.Message}"); + } + } + + // Метод для генерации посещаемости на неделю + public void GeneratePresenceForWeek(DateTime date, int groupId, int firstLesson, int lastLesson) + { + try + { + _presenceUseCase.GenerateWeeklyPresence(firstLesson, lastLesson, groupId, date); + Console.WriteLine("Посещаемость на неделю успешно сгенерирована."); + } + catch (Exception ex) + { + Console.WriteLine($"Ошибка при генерации посещаемости: {ex.Message}"); + } + } + + // Метод для отображения посещаемости на конкретную дату и группу + public void DisplayPresence(DateTime date, int groupId) + { + try + { + List presences = _presenceUseCase.GetPresenceByGroupAndDate(groupId, date); + + if (presences == null || presences.Count == 0) + { + Console.WriteLine("Нет данных о посещаемости на выбранную дату."); + return; + } + + Console.WriteLine($"\n Посещаемость на {date:dd.MM.yyyy} "); + Console.WriteLine("-----------------------------------------------------"); + + // Сохраняем номер занятия для сравнения + int previousLessonNumber = -1; + + foreach (var presence in presences) + { + // Проверяем, изменился ли номер занятия + if (previousLessonNumber != presence.LessonNumber) + { + Console.WriteLine("-----------------------------------------------------"); + Console.WriteLine($" Занятие: {presence.LessonNumber} "); + Console.WriteLine("-----------------------------------------------------"); + previousLessonNumber = presence.LessonNumber; + } + + // Форматируем статус присутствия + string status = presence.IsAttedance ? "Присутствует" : "Отсутствует"; + Console.WriteLine($"Пользователь (ID: {presence.UserGuid}) - Статус: {status}"); + } + + Console.WriteLine("-----------------------------------------------------"); + } + catch (Exception ex) + { + Console.WriteLine($"Ошибка при отображении посещаемости: {ex.Message}"); + } + } + + + public void MarkUserAsAbsent(DateTime date, int groupId, Guid userGuid, int firstLesson, int lastLesson) + { + _presenceUseCase.MarkUserAsAbsent(userGuid, groupId, firstLesson, lastLesson, date); + } + + + + + public void DisplayAllPresenceByGroup(int groupId) + { + try + { + var presences = _presenceUseCase.GetAllPresenceByGroup(groupId); + + if (presences == null || !presences.Any()) + { + Console.WriteLine($"Нет данных о посещаемости для группы с ID: {groupId}."); + return; + } + + // Группируем записи посещаемости по дате + var groupedPresences = presences.GroupBy(p => p.Date); + + foreach (var group in groupedPresences) + { + Console.WriteLine("==================================================="); + Console.WriteLine($" Дата: {group.Key:dd.MM.yyyy} "); + Console.WriteLine("==================================================="); + + // Сохраняем номер занятия для сравнения + int previousLessonNumber = -1; + + foreach (var presence in group) + { + // Проверяем, изменился ли номер занятия + if (previousLessonNumber != presence.LessonNumber) + { + Console.WriteLine("---------------------------------------------------"); + Console.WriteLine($" Занятие: {presence.LessonNumber} "); + Console.WriteLine("---------------------------------------------------"); + previousLessonNumber = presence.LessonNumber; + } + + // Форматируем статус присутствия + string status = presence.IsAttedance ? "✅ Присутствует" : "❌ Отсутствует"; + Console.WriteLine($"Пользователь (ID: {presence.UserGuid}) - Статус: {status}"); + } + + Console.WriteLine("---------------------------------------------------"); + } + } + catch (Exception ex) + { + Console.WriteLine($"Ошибка при отображении посещаемости: {ex.Message}"); + } + } + + public void DisplayGeneralPresenceForGroup(int groupId) + { + var summary = _presenceRepository.GetGeneralPresenceForGroup(groupId); + + Console.WriteLine($"Человек в группе: {summary.UserCount}, " + + $"Количество проведённых занятий: {summary.LessonCount}, " + + $"Общий процент посещаемости группы: {summary.TotalAttendancePercentage}%"); + + foreach (var user in summary.UserAttendances) + { + if (user.AttendanceRate < 40) + { + Console.ForegroundColor = ConsoleColor.Red; + } + + Console.WriteLine($"GUID Пользователя: {user.UserGuid}, " + + $"Посетил: {user.Attended}, " + + $"Пропустил: {user.Missed}, " + + $"Процент посещаемости: {user.AttendanceRate}%"); + Console.ResetColor(); + } + } + public void ExportAttendanceToExcel() + { + try + { + _presenceUseCase.ExportAttendanceToExcel(); + Console.WriteLine("Данные посещаемости успешно экспортированы в Excel."); + } + catch (Exception ex) + { + Console.WriteLine($"Ошибка при экспорте посещаемости: {ex.Message}"); + } + } + + public void UpdateUserAttendance(Guid userGuid, int groupId, int firstLesson, int lastLesson, DateOnly date, bool isAttendance) + { + try + { + bool result = _presenceRepository.UpdateAtt(userGuid, groupId, firstLesson, lastLesson, date, isAttendance); + + if (result) + { + Console.WriteLine($"Статус посещаемости для пользователя {userGuid} обновлён."); + } + else + { + Console.WriteLine($"Данные о посещаемости для пользователя ID: {userGuid} не найдены."); + } + } + catch (Exception ex) + { + Console.WriteLine($"Ошибка при обновлении посещаемости: {ex.Message}"); + } + } + + } + + + +} + diff --git a/ui/UserConsole.cs b/ui/UserConsole.cs new file mode 100644 index 0000000..cf76dad --- /dev/null +++ b/ui/UserConsole.cs @@ -0,0 +1,98 @@ +using domain.Models; +using domain.UseCase; +using System; +using System.Linq; +using System.Text; + +namespace ui +{ + public class UserConsoleUI + { + private readonly UserUseCase _userUseCase; + + public UserConsoleUI(UserUseCase userUseCase) + { + _userUseCase = userUseCase; + } + + // Метод для отображения всех пользователей + public void DisplayAllUsers() + { + Console.WriteLine("\n=== Список всех пользователей ==="); + StringBuilder userOutput = new StringBuilder(); + + foreach (var user in _userUseCase.GetAllUsers()) + { + userOutput.AppendLine($"{user.Guid}\t{user.FIO}\t{user.Group.Name}"); + } + + Console.WriteLine(userOutput); + Console.WriteLine("===============================\n"); + } + + // Метод для удаления пользователя по ID + public void RemoveUserById(Guid userGuid) + { + string output = _userUseCase.RemoveUserById(userGuid) ? "Пользователь удален" : "Пользователь не найден"; + Console.WriteLine($"\n{output}\n"); + } + + // Метод для обновления пользователя по ID + public void UpdateUserById(Guid userGuid) + { + try + { + var user = _userUseCase.FindUserById(userGuid); + Console.WriteLine($"Текущие данные: {user.FIO}, {user.Group.Name}"); + Console.Write("\nВведите новое ФИО: "); + string newFIO = Console.ReadLine(); + user.FIO = newFIO; + _userUseCase.UpdateUser(user); + Console.WriteLine("\nПользователь обновлен.\n"); + } + catch (Exception ex) + { + Console.WriteLine($"Ошибка: {ex.Message}\n"); + } + } + + // Метод для поиска пользователя по ID + public void FindUserById(Guid userGuid) + { + try + { + var user = _userUseCase.FindUserById(userGuid); + Console.WriteLine($"\nПользователь найден: {user.Guid}, {user.FIO}, {user.Group.Name}\n"); + } + catch (Exception ex) + { + Console.WriteLine($"Ошибка: {ex.Message}\n"); + } + } + + private void ValidateUserFIO(string fio) + { + if (string.IsNullOrWhiteSpace(fio)) + { + throw new ArgumentException("ФИО не может быть пустым."); + } + } + + // Приватный метод для валидации существования группы по ID + private GroupLocalEntity ValidateGroupExistence(int groupId) + { + var group = _userUseCase.GetAllUsers().FirstOrDefault(u => u.Group.Id == groupId)?.Group; + if (group == null) + { + throw new Exception("Группа не найдена."); + } + + // Возвращаем правильный объект типа GroupLocalEntity + return new GroupLocalEntity + { + Id = group.Id, + Name = group.Name + }; + } + } +} diff --git a/ui/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs b/ui/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs new file mode 100644 index 0000000..2217181 --- /dev/null +++ b/ui/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs @@ -0,0 +1,4 @@ +// +using System; +using System.Reflection; +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v8.0", FrameworkDisplayName = ".NET 8.0")] diff --git a/ui/obj/Debug/net8.0/ui.AssemblyInfo.cs b/ui/obj/Debug/net8.0/ui.AssemblyInfo.cs new file mode 100644 index 0000000..f514c9f --- /dev/null +++ b/ui/obj/Debug/net8.0/ui.AssemblyInfo.cs @@ -0,0 +1,23 @@ +//------------------------------------------------------------------------------ +// +// Этот код создан программой. +// Исполняемая версия:4.0.30319.42000 +// +// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае +// повторной генерации кода. +// +//------------------------------------------------------------------------------ + +using System; +using System.Reflection; + +[assembly: System.Reflection.AssemblyCompanyAttribute("ui")] +[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] +[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] +[assembly: System.Reflection.AssemblyProductAttribute("ui")] +[assembly: System.Reflection.AssemblyTitleAttribute("ui")] +[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] + +// Создано классом WriteCodeFragment MSBuild. + diff --git a/ui/obj/Debug/net8.0/ui.AssemblyInfoInputs.cache b/ui/obj/Debug/net8.0/ui.AssemblyInfoInputs.cache new file mode 100644 index 0000000..04da69e --- /dev/null +++ b/ui/obj/Debug/net8.0/ui.AssemblyInfoInputs.cache @@ -0,0 +1 @@ +20ed1ba88db46bd37bf95cc037aa54d55b6a60c0405520a36b7f26aec1c3e1fe diff --git a/ui/obj/Debug/net8.0/ui.GeneratedMSBuildEditorConfig.editorconfig b/ui/obj/Debug/net8.0/ui.GeneratedMSBuildEditorConfig.editorconfig new file mode 100644 index 0000000..2224203 --- /dev/null +++ b/ui/obj/Debug/net8.0/ui.GeneratedMSBuildEditorConfig.editorconfig @@ -0,0 +1,13 @@ +is_global = true +build_property.TargetFramework = net8.0 +build_property.TargetPlatformMinVersion = +build_property.UsingMicrosoftNETSdkWeb = +build_property.ProjectTypeGuids = +build_property.InvariantGlobalization = +build_property.PlatformNeutralAssembly = +build_property.EnforceExtendedAnalyzerRules = +build_property._SupportedPlatformList = Linux,macOS,Windows +build_property.RootNamespace = ui +build_property.ProjectDir = C:\Users\class_student\source\repos\presence\ui\ +build_property.EnableComHosting = +build_property.EnableGeneratedComInterfaceComImportInterop = diff --git a/ui/obj/Debug/net8.0/ui.GlobalUsings.g.cs b/ui/obj/Debug/net8.0/ui.GlobalUsings.g.cs new file mode 100644 index 0000000..8578f3d --- /dev/null +++ b/ui/obj/Debug/net8.0/ui.GlobalUsings.g.cs @@ -0,0 +1,8 @@ +// +global using global::System; +global using global::System.Collections.Generic; +global using global::System.IO; +global using global::System.Linq; +global using global::System.Net.Http; +global using global::System.Threading; +global using global::System.Threading.Tasks; diff --git a/ui/obj/Debug/net8.0/ui.assets.cache b/ui/obj/Debug/net8.0/ui.assets.cache new file mode 100644 index 0000000..8fab053 Binary files /dev/null and b/ui/obj/Debug/net8.0/ui.assets.cache differ diff --git a/ui/obj/Debug/net8.0/ui.csproj.AssemblyReference.cache b/ui/obj/Debug/net8.0/ui.csproj.AssemblyReference.cache new file mode 100644 index 0000000..bd7e5d8 Binary files /dev/null and b/ui/obj/Debug/net8.0/ui.csproj.AssemblyReference.cache differ diff --git a/ui/obj/project.assets.json b/ui/obj/project.assets.json new file mode 100644 index 0000000..4aecff8 --- /dev/null +++ b/ui/obj/project.assets.json @@ -0,0 +1,1111 @@ +{ + "version": 3, + "targets": { + "net8.0": { + "ClosedXML/0.104.1": { + "type": "package", + "dependencies": { + "ClosedXML.Parser": "[1.2.0, 2.0.0)", + "DocumentFormat.OpenXml": "[3.0.1, 4.0.0)", + "ExcelNumberFormat": "1.1.0", + "RBush": "3.2.0", + "SixLabors.Fonts": "1.0.0", + "System.IO.Packaging": "8.0.0" + }, + "compile": { + "lib/netstandard2.1/ClosedXML.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/netstandard2.1/ClosedXML.dll": { + "related": ".pdb;.xml" + } + } + }, + "ClosedXML.Parser/1.2.0": { + "type": "package", + "compile": { + "lib/netstandard2.1/ClosedXML.Parser.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.1/ClosedXML.Parser.dll": { + "related": ".xml" + } + } + }, + "DocumentFormat.OpenXml/3.0.1": { + "type": "package", + "dependencies": { + "DocumentFormat.OpenXml.Framework": "3.0.1" + }, + "compile": { + "lib/net8.0/DocumentFormat.OpenXml.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/DocumentFormat.OpenXml.dll": { + "related": ".xml" + } + } + }, + "DocumentFormat.OpenXml.Framework/3.0.1": { + "type": "package", + "dependencies": { + "System.IO.Packaging": "8.0.0" + }, + "compile": { + "lib/net8.0/DocumentFormat.OpenXml.Framework.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/DocumentFormat.OpenXml.Framework.dll": { + "related": ".xml" + } + } + }, + "ExcelNumberFormat/1.1.0": { + "type": "package", + "compile": { + "lib/netstandard2.0/ExcelNumberFormat.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/ExcelNumberFormat.dll": { + "related": ".xml" + } + } + }, + "Microsoft.EntityFrameworkCore/8.0.10": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore.Abstractions": "8.0.10", + "Microsoft.EntityFrameworkCore.Analyzers": "8.0.10", + "Microsoft.Extensions.Caching.Memory": "8.0.1", + "Microsoft.Extensions.Logging": "8.0.1" + }, + "compile": { + "lib/net8.0/Microsoft.EntityFrameworkCore.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.EntityFrameworkCore.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/Microsoft.EntityFrameworkCore.props": {} + } + }, + "Microsoft.EntityFrameworkCore.Abstractions/8.0.10": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": { + "related": ".xml" + } + } + }, + "Microsoft.EntityFrameworkCore.Analyzers/8.0.10": { + "type": "package", + "compile": { + "lib/netstandard2.0/_._": {} + }, + "runtime": { + "lib/netstandard2.0/_._": {} + } + }, + "Microsoft.EntityFrameworkCore.Relational/8.0.10": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore": "8.0.10", + "Microsoft.Extensions.Configuration.Abstractions": "8.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": { + "related": ".xml" + } + } + }, + "Microsoft.Extensions.Caching.Abstractions/8.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Primitives": "8.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.Caching.Memory/8.0.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Caching.Abstractions": "8.0.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2", + "Microsoft.Extensions.Logging.Abstractions": "8.0.2", + "Microsoft.Extensions.Options": "8.0.2", + "Microsoft.Extensions.Primitives": "8.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.Configuration.Abstractions/8.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Primitives": "8.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.DependencyInjection/8.0.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/8.0.2": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.Logging/8.0.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "8.0.1", + "Microsoft.Extensions.Logging.Abstractions": "8.0.2", + "Microsoft.Extensions.Options": "8.0.2" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Logging.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.Logging.Abstractions/8.0.2": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/Microsoft.Extensions.Logging.Abstractions.targets": {} + } + }, + "Microsoft.Extensions.Options/8.0.2": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.0", + "Microsoft.Extensions.Primitives": "8.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Options.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Options.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/Microsoft.Extensions.Options.targets": {} + } + }, + "Microsoft.Extensions.Primitives/8.0.0": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.Extensions.Primitives.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Primitives.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Npgsql/8.0.5": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "8.0.0" + }, + "compile": { + "lib/net8.0/Npgsql.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Npgsql.dll": { + "related": ".xml" + } + } + }, + "Npgsql.EntityFrameworkCore.PostgreSQL/8.0.10": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore": "8.0.10", + "Microsoft.EntityFrameworkCore.Abstractions": "8.0.10", + "Microsoft.EntityFrameworkCore.Relational": "8.0.10", + "Npgsql": "8.0.5" + }, + "compile": { + "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll": { + "related": ".xml" + } + } + }, + "RBush/3.2.0": { + "type": "package", + "compile": { + "lib/net6.0/RBush.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/RBush.dll": { + "related": ".xml" + } + } + }, + "SixLabors.Fonts/1.0.0": { + "type": "package", + "compile": { + "lib/netcoreapp3.1/SixLabors.Fonts.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netcoreapp3.1/SixLabors.Fonts.dll": { + "related": ".xml" + } + } + }, + "System.IO.Packaging/8.0.0": { + "type": "package", + "compile": { + "lib/net8.0/System.IO.Packaging.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.IO.Packaging.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "data/1.0.0": { + "type": "project", + "framework": ".NETCoreApp,Version=v8.0", + "dependencies": { + "Microsoft.EntityFrameworkCore": "8.0.10", + "Npgsql.EntityFrameworkCore.PostgreSQL": "8.0.10" + }, + "compile": { + "bin/placeholder/data.dll": {} + }, + "runtime": { + "bin/placeholder/data.dll": {} + } + }, + "domain/1.0.0": { + "type": "project", + "framework": ".NETCoreApp,Version=v8.0", + "dependencies": { + "ClosedXML": "0.104.1", + "data": "1.0.0" + }, + "compile": { + "bin/placeholder/domain.dll": {} + }, + "runtime": { + "bin/placeholder/domain.dll": {} + } + } + } + }, + "libraries": { + "ClosedXML/0.104.1": { + "sha512": "RVm2fUNWJlBJlg07shrfeWzrHPG5ypI/vARqdUOUbUdaog8yBw8l4IbCHf2MXt0AXtzaZqGNqhFaCAHigCBdfw==", + "type": "package", + "path": "closedxml/0.104.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "closedxml.0.104.1.nupkg.sha512", + "closedxml.nuspec", + "lib/netstandard2.0/ClosedXML.dll", + "lib/netstandard2.0/ClosedXML.pdb", + "lib/netstandard2.0/ClosedXML.xml", + "lib/netstandard2.1/ClosedXML.dll", + "lib/netstandard2.1/ClosedXML.pdb", + "lib/netstandard2.1/ClosedXML.xml", + "nuget-logo.png" + ] + }, + "ClosedXML.Parser/1.2.0": { + "sha512": "w+/0tsxABS3lkSH8EUlA7IGme+mq5T/Puf3DbOiTckmSuUpAUO2LK29oXYByCcWkBv6wcRHxgWlQb1lxkwI0Tw==", + "type": "package", + "path": "closedxml.parser/1.2.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "closedxml.parser.1.2.0.nupkg.sha512", + "closedxml.parser.nuspec", + "lib/netstandard2.0/ClosedXML.Parser.dll", + "lib/netstandard2.0/ClosedXML.Parser.xml", + "lib/netstandard2.1/ClosedXML.Parser.dll", + "lib/netstandard2.1/ClosedXML.Parser.xml" + ] + }, + "DocumentFormat.OpenXml/3.0.1": { + "sha512": "DCK1cwFUJ1FGGyYyo++HWl9H1RkqMWIu+FGOLRy6E4L4y0/HIhlJ7N/n1HKboFfOwKn1cMBRxt1RCuDbIEy5YQ==", + "type": "package", + "path": "documentformat.openxml/3.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "documentformat.openxml.3.0.1.nupkg.sha512", + "documentformat.openxml.nuspec", + "icon.png", + "lib/net35/DocumentFormat.OpenXml.dll", + "lib/net35/DocumentFormat.OpenXml.xml", + "lib/net40/DocumentFormat.OpenXml.dll", + "lib/net40/DocumentFormat.OpenXml.xml", + "lib/net46/DocumentFormat.OpenXml.dll", + "lib/net46/DocumentFormat.OpenXml.xml", + "lib/net8.0/DocumentFormat.OpenXml.dll", + "lib/net8.0/DocumentFormat.OpenXml.xml", + "lib/netstandard2.0/DocumentFormat.OpenXml.dll", + "lib/netstandard2.0/DocumentFormat.OpenXml.xml" + ] + }, + "DocumentFormat.OpenXml.Framework/3.0.1": { + "sha512": "ifyI7OW7sggz7LQMIAD2aUsY/zVUON9QaHrpZ4MK33iVMeHlTG4uhUE2aLWb31nry+LCs2ALDAwf8OfUJGjgBg==", + "type": "package", + "path": "documentformat.openxml.framework/3.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "documentformat.openxml.framework.3.0.1.nupkg.sha512", + "documentformat.openxml.framework.nuspec", + "icon.png", + "lib/net35/DocumentFormat.OpenXml.Framework.dll", + "lib/net35/DocumentFormat.OpenXml.Framework.xml", + "lib/net40/DocumentFormat.OpenXml.Framework.dll", + "lib/net40/DocumentFormat.OpenXml.Framework.xml", + "lib/net46/DocumentFormat.OpenXml.Framework.dll", + "lib/net46/DocumentFormat.OpenXml.Framework.xml", + "lib/net6.0/DocumentFormat.OpenXml.Framework.dll", + "lib/net6.0/DocumentFormat.OpenXml.Framework.xml", + "lib/net8.0/DocumentFormat.OpenXml.Framework.dll", + "lib/net8.0/DocumentFormat.OpenXml.Framework.xml", + "lib/netstandard2.0/DocumentFormat.OpenXml.Framework.dll", + "lib/netstandard2.0/DocumentFormat.OpenXml.Framework.xml" + ] + }, + "ExcelNumberFormat/1.1.0": { + "sha512": "R3BVHPs9O+RkExbZYTGT0+9HLbi8ZrNij1Yziyw6znd3J7P3uoIR07uwTLGOogtz1p6+0sna66eBoXu7tBiVQA==", + "type": "package", + "path": "excelnumberformat/1.1.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "excelnumberformat.1.1.0.nupkg.sha512", + "excelnumberformat.nuspec", + "icon.png", + "lib/net20/ExcelNumberFormat.dll", + "lib/net20/ExcelNumberFormat.xml", + "lib/netstandard1.0/ExcelNumberFormat.dll", + "lib/netstandard1.0/ExcelNumberFormat.xml", + "lib/netstandard2.0/ExcelNumberFormat.dll", + "lib/netstandard2.0/ExcelNumberFormat.xml" + ] + }, + "Microsoft.EntityFrameworkCore/8.0.10": { + "sha512": "PPkQdIqfR1nU3n6YgGGDk8G+eaYbaAKM1AzIQtlPNTKf10Osg3N9T+iK9AlnSA/ujsK00flPpFHVfJrbuBFS1A==", + "type": "package", + "path": "microsoft.entityframeworkcore/8.0.10", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "buildTransitive/net8.0/Microsoft.EntityFrameworkCore.props", + "lib/net8.0/Microsoft.EntityFrameworkCore.dll", + "lib/net8.0/Microsoft.EntityFrameworkCore.xml", + "microsoft.entityframeworkcore.8.0.10.nupkg.sha512", + "microsoft.entityframeworkcore.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.Abstractions/8.0.10": { + "sha512": "FV0QlcX9INY4kAD2o72uPtyOh0nZut2jB11Jf9mNYBtHay8gDLe+x4AbXFwuQg+eSvofjT7naV82e827zGfyMg==", + "type": "package", + "path": "microsoft.entityframeworkcore.abstractions/8.0.10", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll", + "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.xml", + "microsoft.entityframeworkcore.abstractions.8.0.10.nupkg.sha512", + "microsoft.entityframeworkcore.abstractions.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.Analyzers/8.0.10": { + "sha512": "51KkPIc0EMv/gVXhPIUi6cwJE9Mvh+PLr4Lap4naLcsoGZ0lF2SvOPgUUprwRV3MnN7nyD1XPhT5RJ/p+xFAXw==", + "type": "package", + "path": "microsoft.entityframeworkcore.analyzers/8.0.10", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "analyzers/dotnet/cs/Microsoft.EntityFrameworkCore.Analyzers.dll", + "docs/PACKAGE.md", + "lib/netstandard2.0/_._", + "microsoft.entityframeworkcore.analyzers.8.0.10.nupkg.sha512", + "microsoft.entityframeworkcore.analyzers.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.Relational/8.0.10": { + "sha512": "OefBEE47kGKPRPV3OT+FAW6o5BFgLk2D9EoeWVy7NbOepzUneayLQxbVE098FfedTyMwxvZQoDD9LrvZc3MadA==", + "type": "package", + "path": "microsoft.entityframeworkcore.relational/8.0.10", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll", + "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.xml", + "microsoft.entityframeworkcore.relational.8.0.10.nupkg.sha512", + "microsoft.entityframeworkcore.relational.nuspec" + ] + }, + "Microsoft.Extensions.Caching.Abstractions/8.0.0": { + "sha512": "3KuSxeHoNYdxVYfg2IRZCThcrlJ1XJqIXkAWikCsbm5C/bCjv7G0WoKDyuR98Q+T607QT2Zl5GsbGRkENcV2yQ==", + "type": "package", + "path": "microsoft.extensions.caching.abstractions/8.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Caching.Abstractions.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Caching.Abstractions.targets", + "lib/net462/Microsoft.Extensions.Caching.Abstractions.dll", + "lib/net462/Microsoft.Extensions.Caching.Abstractions.xml", + "lib/net6.0/Microsoft.Extensions.Caching.Abstractions.dll", + "lib/net6.0/Microsoft.Extensions.Caching.Abstractions.xml", + "lib/net7.0/Microsoft.Extensions.Caching.Abstractions.dll", + "lib/net7.0/Microsoft.Extensions.Caching.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.xml", + "lib/netstandard2.0/Microsoft.Extensions.Caching.Abstractions.dll", + "lib/netstandard2.0/Microsoft.Extensions.Caching.Abstractions.xml", + "microsoft.extensions.caching.abstractions.8.0.0.nupkg.sha512", + "microsoft.extensions.caching.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Caching.Memory/8.0.1": { + "sha512": "HFDnhYLccngrzyGgHkjEDU5FMLn4MpOsr5ElgsBMC4yx6lJh4jeWO7fHS8+TXPq+dgxCmUa/Trl8svObmwW4QA==", + "type": "package", + "path": "microsoft.extensions.caching.memory/8.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Caching.Memory.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Caching.Memory.targets", + "lib/net462/Microsoft.Extensions.Caching.Memory.dll", + "lib/net462/Microsoft.Extensions.Caching.Memory.xml", + "lib/net6.0/Microsoft.Extensions.Caching.Memory.dll", + "lib/net6.0/Microsoft.Extensions.Caching.Memory.xml", + "lib/net7.0/Microsoft.Extensions.Caching.Memory.dll", + "lib/net7.0/Microsoft.Extensions.Caching.Memory.xml", + "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll", + "lib/net8.0/Microsoft.Extensions.Caching.Memory.xml", + "lib/netstandard2.0/Microsoft.Extensions.Caching.Memory.dll", + "lib/netstandard2.0/Microsoft.Extensions.Caching.Memory.xml", + "microsoft.extensions.caching.memory.8.0.1.nupkg.sha512", + "microsoft.extensions.caching.memory.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Configuration.Abstractions/8.0.0": { + "sha512": "3lE/iLSutpgX1CC0NOW70FJoGARRHbyKmG7dc0klnUZ9Dd9hS6N/POPWhKhMLCEuNN5nXEY5agmlFtH562vqhQ==", + "type": "package", + "path": "microsoft.extensions.configuration.abstractions/8.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Configuration.Abstractions.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Configuration.Abstractions.targets", + "lib/net462/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/net462/Microsoft.Extensions.Configuration.Abstractions.xml", + "lib/net6.0/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/net6.0/Microsoft.Extensions.Configuration.Abstractions.xml", + "lib/net7.0/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/net7.0/Microsoft.Extensions.Configuration.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.xml", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.xml", + "microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512", + "microsoft.extensions.configuration.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.DependencyInjection/8.0.1": { + "sha512": "BmANAnR5Xd4Oqw7yQ75xOAYODybZQRzdeNucg7kS5wWKd2PNnMdYtJ2Vciy0QLylRmv42DGl5+AFL9izA6F1Rw==", + "type": "package", + "path": "microsoft.extensions.dependencyinjection/8.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.DependencyInjection.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.targets", + "lib/net462/Microsoft.Extensions.DependencyInjection.dll", + "lib/net462/Microsoft.Extensions.DependencyInjection.xml", + "lib/net6.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/net6.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/net7.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/net7.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.dll", + "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.xml", + "microsoft.extensions.dependencyinjection.8.0.1.nupkg.sha512", + "microsoft.extensions.dependencyinjection.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/8.0.2": { + "sha512": "3iE7UF7MQkCv1cxzCahz+Y/guQbTqieyxyaWKhrRO91itI9cOKO76OHeQDahqG4MmW5umr3CcCvGmK92lWNlbg==", + "type": "package", + "path": "microsoft.extensions.dependencyinjection.abstractions/8.0.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.DependencyInjection.Abstractions.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.Abstractions.targets", + "lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/net7.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net7.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "microsoft.extensions.dependencyinjection.abstractions.8.0.2.nupkg.sha512", + "microsoft.extensions.dependencyinjection.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Logging/8.0.1": { + "sha512": "4x+pzsQEbqxhNf1QYRr5TDkLP9UsLT3A6MdRKDDEgrW7h1ljiEPgTNhKYUhNCCAaVpQECVQ+onA91PTPnIp6Lw==", + "type": "package", + "path": "microsoft.extensions.logging/8.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Logging.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.targets", + "lib/net462/Microsoft.Extensions.Logging.dll", + "lib/net462/Microsoft.Extensions.Logging.xml", + "lib/net6.0/Microsoft.Extensions.Logging.dll", + "lib/net6.0/Microsoft.Extensions.Logging.xml", + "lib/net7.0/Microsoft.Extensions.Logging.dll", + "lib/net7.0/Microsoft.Extensions.Logging.xml", + "lib/net8.0/Microsoft.Extensions.Logging.dll", + "lib/net8.0/Microsoft.Extensions.Logging.xml", + "lib/netstandard2.0/Microsoft.Extensions.Logging.dll", + "lib/netstandard2.0/Microsoft.Extensions.Logging.xml", + "lib/netstandard2.1/Microsoft.Extensions.Logging.dll", + "lib/netstandard2.1/Microsoft.Extensions.Logging.xml", + "microsoft.extensions.logging.8.0.1.nupkg.sha512", + "microsoft.extensions.logging.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Logging.Abstractions/8.0.2": { + "sha512": "nroMDjS7hNBPtkZqVBbSiQaQjWRDxITI8Y7XnDs97rqG3EbzVTNLZQf7bIeUJcaHOV8bca47s1Uxq94+2oGdxA==", + "type": "package", + "path": "microsoft.extensions.logging.abstractions/8.0.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "analyzers/dotnet/roslyn3.11/cs/Microsoft.Extensions.Logging.Generators.dll", + "analyzers/dotnet/roslyn3.11/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/Microsoft.Extensions.Logging.Generators.dll", + "analyzers/dotnet/roslyn4.0/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Logging.Generators.dll", + "analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", + "buildTransitive/net461/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/net462/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/net6.0/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.targets", + "lib/net462/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/net462/Microsoft.Extensions.Logging.Abstractions.xml", + "lib/net6.0/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/net6.0/Microsoft.Extensions.Logging.Abstractions.xml", + "lib/net7.0/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/net7.0/Microsoft.Extensions.Logging.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.xml", + "lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.xml", + "microsoft.extensions.logging.abstractions.8.0.2.nupkg.sha512", + "microsoft.extensions.logging.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Options/8.0.2": { + "sha512": "dWGKvhFybsaZpGmzkGCbNNwBD1rVlWzrZKANLW/CcbFJpCEceMCGzT7zZwHOGBCbwM0SzBuceMj5HN1LKV1QqA==", + "type": "package", + "path": "microsoft.extensions.options/8.0.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Options.SourceGeneration.dll", + "analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "buildTransitive/net461/Microsoft.Extensions.Options.targets", + "buildTransitive/net462/Microsoft.Extensions.Options.targets", + "buildTransitive/net6.0/Microsoft.Extensions.Options.targets", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Options.targets", + "buildTransitive/netstandard2.0/Microsoft.Extensions.Options.targets", + "lib/net462/Microsoft.Extensions.Options.dll", + "lib/net462/Microsoft.Extensions.Options.xml", + "lib/net6.0/Microsoft.Extensions.Options.dll", + "lib/net6.0/Microsoft.Extensions.Options.xml", + "lib/net7.0/Microsoft.Extensions.Options.dll", + "lib/net7.0/Microsoft.Extensions.Options.xml", + "lib/net8.0/Microsoft.Extensions.Options.dll", + "lib/net8.0/Microsoft.Extensions.Options.xml", + "lib/netstandard2.0/Microsoft.Extensions.Options.dll", + "lib/netstandard2.0/Microsoft.Extensions.Options.xml", + "lib/netstandard2.1/Microsoft.Extensions.Options.dll", + "lib/netstandard2.1/Microsoft.Extensions.Options.xml", + "microsoft.extensions.options.8.0.2.nupkg.sha512", + "microsoft.extensions.options.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Primitives/8.0.0": { + "sha512": "bXJEZrW9ny8vjMF1JV253WeLhpEVzFo1lyaZu1vQ4ZxWUlVvknZ/+ftFgVheLubb4eZPSwwxBeqS1JkCOjxd8g==", + "type": "package", + "path": "microsoft.extensions.primitives/8.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Primitives.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Primitives.targets", + "lib/net462/Microsoft.Extensions.Primitives.dll", + "lib/net462/Microsoft.Extensions.Primitives.xml", + "lib/net6.0/Microsoft.Extensions.Primitives.dll", + "lib/net6.0/Microsoft.Extensions.Primitives.xml", + "lib/net7.0/Microsoft.Extensions.Primitives.dll", + "lib/net7.0/Microsoft.Extensions.Primitives.xml", + "lib/net8.0/Microsoft.Extensions.Primitives.dll", + "lib/net8.0/Microsoft.Extensions.Primitives.xml", + "lib/netstandard2.0/Microsoft.Extensions.Primitives.dll", + "lib/netstandard2.0/Microsoft.Extensions.Primitives.xml", + "microsoft.extensions.primitives.8.0.0.nupkg.sha512", + "microsoft.extensions.primitives.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Npgsql/8.0.5": { + "sha512": "zRG5V8cyeZLpzJlKzFKjEwkRMYIYnHWJvEor2lWXeccS2E1G2nIWYYhnukB51iz5XsWSVEtqg3AxTWM0QJ6vfg==", + "type": "package", + "path": "npgsql/8.0.5", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "lib/net6.0/Npgsql.dll", + "lib/net6.0/Npgsql.xml", + "lib/net7.0/Npgsql.dll", + "lib/net7.0/Npgsql.xml", + "lib/net8.0/Npgsql.dll", + "lib/net8.0/Npgsql.xml", + "lib/netstandard2.0/Npgsql.dll", + "lib/netstandard2.0/Npgsql.xml", + "lib/netstandard2.1/Npgsql.dll", + "lib/netstandard2.1/Npgsql.xml", + "npgsql.8.0.5.nupkg.sha512", + "npgsql.nuspec", + "postgresql.png" + ] + }, + "Npgsql.EntityFrameworkCore.PostgreSQL/8.0.10": { + "sha512": "gFPl9Dmxih7Yi4tZ3bITzZFzbxFMBx04gqTqcjoL2r5VEW+O2TA5UVw/wm/XW26NAJ7sg59Je0+9QrwiZt6MPQ==", + "type": "package", + "path": "npgsql.entityframeworkcore.postgresql/8.0.10", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll", + "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.xml", + "npgsql.entityframeworkcore.postgresql.8.0.10.nupkg.sha512", + "npgsql.entityframeworkcore.postgresql.nuspec", + "postgresql.png" + ] + }, + "RBush/3.2.0": { + "sha512": "ijGh9N0zZ7JfXk3oQkWCwK8SwSSByexbyh/MjbCjNxOft9eG5ZqKC1vdgiYq78h4IZRFmN4s3JZ/b10Jipud5w==", + "type": "package", + "path": "rbush/3.2.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net6.0/RBush.dll", + "lib/net6.0/RBush.xml", + "lib/netcoreapp3.1/RBush.dll", + "lib/netcoreapp3.1/RBush.xml", + "lib/netstandard1.2/RBush.dll", + "lib/netstandard1.2/RBush.xml", + "rbush.3.2.0.nupkg.sha512", + "rbush.nuspec", + "readme.md" + ] + }, + "SixLabors.Fonts/1.0.0": { + "sha512": "LFQsCZlV0xlUyXAOMUo5kkSl+8zAQXXbbdwWchtk0B4o7zotZhQsQOcJUELGHdfPfm/xDAsz6hONAuV25bJaAg==", + "type": "package", + "path": "sixlabors.fonts/1.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/netcoreapp3.1/SixLabors.Fonts.dll", + "lib/netcoreapp3.1/SixLabors.Fonts.xml", + "lib/netstandard2.0/SixLabors.Fonts.dll", + "lib/netstandard2.0/SixLabors.Fonts.xml", + "lib/netstandard2.1/SixLabors.Fonts.dll", + "lib/netstandard2.1/SixLabors.Fonts.xml", + "sixlabors.fonts.1.0.0.nupkg.sha512", + "sixlabors.fonts.128.png", + "sixlabors.fonts.nuspec" + ] + }, + "System.IO.Packaging/8.0.0": { + "sha512": "8g1V4YRpdGAxFcK8v9OjuMdIOJSpF30Zb1JGicwVZhly3I994WFyBdV6mQEo8d3T+URQe55/M0U0eIH0Hts1bg==", + "type": "package", + "path": "system.io.packaging/8.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.IO.Packaging.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/System.IO.Packaging.targets", + "lib/net462/System.IO.Packaging.dll", + "lib/net462/System.IO.Packaging.xml", + "lib/net6.0/System.IO.Packaging.dll", + "lib/net6.0/System.IO.Packaging.xml", + "lib/net7.0/System.IO.Packaging.dll", + "lib/net7.0/System.IO.Packaging.xml", + "lib/net8.0/System.IO.Packaging.dll", + "lib/net8.0/System.IO.Packaging.xml", + "lib/netstandard2.0/System.IO.Packaging.dll", + "lib/netstandard2.0/System.IO.Packaging.xml", + "system.io.packaging.8.0.0.nupkg.sha512", + "system.io.packaging.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "data/1.0.0": { + "type": "project", + "path": "../data/data.csproj", + "msbuildProject": "../data/data.csproj" + }, + "domain/1.0.0": { + "type": "project", + "path": "../domain/domain.csproj", + "msbuildProject": "../domain/domain.csproj" + } + }, + "projectFileDependencyGroups": { + "net8.0": [ + "domain >= 1.0.0" + ] + }, + "packageFolders": { + "C:\\Users\\class_student\\.nuget\\packages\\": {}, + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages": {} + }, + "project": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "C:\\Users\\class_student\\source\\repos\\presence\\ui\\ui.csproj", + "projectName": "ui", + "projectPath": "C:\\Users\\class_student\\source\\repos\\presence\\ui\\ui.csproj", + "packagesPath": "C:\\Users\\class_student\\.nuget\\packages\\", + "outputPath": "C:\\Users\\class_student\\source\\repos\\presence\\ui\\obj\\", + "projectStyle": "PackageReference", + "fallbackFolders": [ + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" + ], + "configFilePaths": [ + "C:\\Users\\class_student\\AppData\\Roaming\\NuGet\\NuGet.Config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config" + ], + "originalTargetFrameworks": [ + "net8.0" + ], + "sources": { + "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "projectReferences": { + "C:\\Users\\class_student\\source\\repos\\presence\\domain\\domain.csproj": { + "projectPath": "C:\\Users\\class_student\\source\\repos\\presence\\domain\\domain.csproj" + } + } + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + }, + "restoreAuditProperties": { + "enableAudit": "true", + "auditLevel": "low", + "auditMode": "direct" + } + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "Microsoft.NETCore.App": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.204/PortableRuntimeIdentifierGraph.json" + } + } + } +} \ No newline at end of file diff --git a/ui/obj/project.nuget.cache b/ui/obj/project.nuget.cache new file mode 100644 index 0000000..9d6a3e9 --- /dev/null +++ b/ui/obj/project.nuget.cache @@ -0,0 +1,32 @@ +{ + "version": 2, + "dgSpecHash": "dNHY0PWkVJ9yqh4r350Pq7u6mnT7d9z4cJfYez8zScnFgIivUdw2P/yHSkjOeyGZ9zBEiinHHbXHbVE6f2TWUw==", + "success": true, + "projectFilePath": "C:\\Users\\class_student\\source\\repos\\presence\\ui\\ui.csproj", + "expectedPackageFiles": [ + "C:\\Users\\class_student\\.nuget\\packages\\closedxml\\0.104.1\\closedxml.0.104.1.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\closedxml.parser\\1.2.0\\closedxml.parser.1.2.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\documentformat.openxml\\3.0.1\\documentformat.openxml.3.0.1.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\documentformat.openxml.framework\\3.0.1\\documentformat.openxml.framework.3.0.1.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\excelnumberformat\\1.1.0\\excelnumberformat.1.1.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.entityframeworkcore\\8.0.10\\microsoft.entityframeworkcore.8.0.10.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.entityframeworkcore.abstractions\\8.0.10\\microsoft.entityframeworkcore.abstractions.8.0.10.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.entityframeworkcore.analyzers\\8.0.10\\microsoft.entityframeworkcore.analyzers.8.0.10.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.entityframeworkcore.relational\\8.0.10\\microsoft.entityframeworkcore.relational.8.0.10.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.caching.abstractions\\8.0.0\\microsoft.extensions.caching.abstractions.8.0.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.caching.memory\\8.0.1\\microsoft.extensions.caching.memory.8.0.1.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.configuration.abstractions\\8.0.0\\microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.dependencyinjection\\8.0.1\\microsoft.extensions.dependencyinjection.8.0.1.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.dependencyinjection.abstractions\\8.0.2\\microsoft.extensions.dependencyinjection.abstractions.8.0.2.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.logging\\8.0.1\\microsoft.extensions.logging.8.0.1.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.logging.abstractions\\8.0.2\\microsoft.extensions.logging.abstractions.8.0.2.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.options\\8.0.2\\microsoft.extensions.options.8.0.2.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\microsoft.extensions.primitives\\8.0.0\\microsoft.extensions.primitives.8.0.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\npgsql\\8.0.5\\npgsql.8.0.5.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\npgsql.entityframeworkcore.postgresql\\8.0.10\\npgsql.entityframeworkcore.postgresql.8.0.10.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\rbush\\3.2.0\\rbush.3.2.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\sixlabors.fonts\\1.0.0\\sixlabors.fonts.1.0.0.nupkg.sha512", + "C:\\Users\\class_student\\.nuget\\packages\\system.io.packaging\\8.0.0\\system.io.packaging.8.0.0.nupkg.sha512" + ], + "logs": [] +} \ No newline at end of file diff --git a/ui/obj/ui.csproj.nuget.dgspec.json b/ui/obj/ui.csproj.nuget.dgspec.json new file mode 100644 index 0000000..e69e4c2 --- /dev/null +++ b/ui/obj/ui.csproj.nuget.dgspec.json @@ -0,0 +1,230 @@ +{ + "format": 1, + "restore": { + "C:\\Users\\class_student\\source\\repos\\presence\\ui\\ui.csproj": {} + }, + "projects": { + "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj", + "projectName": "data", + "projectPath": "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj", + "packagesPath": "C:\\Users\\class_student\\.nuget\\packages\\", + "outputPath": "C:\\Users\\class_student\\source\\repos\\presence\\data\\obj\\", + "projectStyle": "PackageReference", + "fallbackFolders": [ + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" + ], + "configFilePaths": [ + "C:\\Users\\class_student\\AppData\\Roaming\\NuGet\\NuGet.Config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config" + ], + "originalTargetFrameworks": [ + "net8.0" + ], + "sources": { + "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "projectReferences": {} + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + }, + "restoreAuditProperties": { + "enableAudit": "true", + "auditLevel": "low", + "auditMode": "direct" + } + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "dependencies": { + "Microsoft.EntityFrameworkCore": { + "target": "Package", + "version": "[8.0.10, )" + }, + "Microsoft.EntityFrameworkCore.Design": { + "include": "Runtime, Build, Native, ContentFiles, Analyzers, BuildTransitive", + "suppressParent": "All", + "target": "Package", + "version": "[8.0.10, )" + }, + "Npgsql.EntityFrameworkCore.PostgreSQL": { + "target": "Package", + "version": "[8.0.10, )" + } + }, + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "Microsoft.NETCore.App": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.204/PortableRuntimeIdentifierGraph.json" + } + } + }, + "C:\\Users\\class_student\\source\\repos\\presence\\domain\\domain.csproj": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "C:\\Users\\class_student\\source\\repos\\presence\\domain\\domain.csproj", + "projectName": "domain", + "projectPath": "C:\\Users\\class_student\\source\\repos\\presence\\domain\\domain.csproj", + "packagesPath": "C:\\Users\\class_student\\.nuget\\packages\\", + "outputPath": "C:\\Users\\class_student\\source\\repos\\presence\\domain\\obj\\", + "projectStyle": "PackageReference", + "fallbackFolders": [ + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" + ], + "configFilePaths": [ + "C:\\Users\\class_student\\AppData\\Roaming\\NuGet\\NuGet.Config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config" + ], + "originalTargetFrameworks": [ + "net8.0" + ], + "sources": { + "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "projectReferences": { + "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj": { + "projectPath": "C:\\Users\\class_student\\source\\repos\\presence\\data\\data.csproj" + } + } + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + }, + "restoreAuditProperties": { + "enableAudit": "true", + "auditLevel": "low", + "auditMode": "direct" + } + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "dependencies": { + "ClosedXML": { + "target": "Package", + "version": "[0.104.1, )" + } + }, + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "Microsoft.NETCore.App": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.204/PortableRuntimeIdentifierGraph.json" + } + } + }, + "C:\\Users\\class_student\\source\\repos\\presence\\ui\\ui.csproj": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "C:\\Users\\class_student\\source\\repos\\presence\\ui\\ui.csproj", + "projectName": "ui", + "projectPath": "C:\\Users\\class_student\\source\\repos\\presence\\ui\\ui.csproj", + "packagesPath": "C:\\Users\\class_student\\.nuget\\packages\\", + "outputPath": "C:\\Users\\class_student\\source\\repos\\presence\\ui\\obj\\", + "projectStyle": "PackageReference", + "fallbackFolders": [ + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" + ], + "configFilePaths": [ + "C:\\Users\\class_student\\AppData\\Roaming\\NuGet\\NuGet.Config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config" + ], + "originalTargetFrameworks": [ + "net8.0" + ], + "sources": { + "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "projectReferences": { + "C:\\Users\\class_student\\source\\repos\\presence\\domain\\domain.csproj": { + "projectPath": "C:\\Users\\class_student\\source\\repos\\presence\\domain\\domain.csproj" + } + } + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + }, + "restoreAuditProperties": { + "enableAudit": "true", + "auditLevel": "low", + "auditMode": "direct" + } + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "Microsoft.NETCore.App": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.204/PortableRuntimeIdentifierGraph.json" + } + } + } + } +} \ No newline at end of file diff --git a/ui/obj/ui.csproj.nuget.g.props b/ui/obj/ui.csproj.nuget.g.props new file mode 100644 index 0000000..d669d1a --- /dev/null +++ b/ui/obj/ui.csproj.nuget.g.props @@ -0,0 +1,19 @@ + + + + True + NuGet + $(MSBuildThisFileDirectory)project.assets.json + $(UserProfile)\.nuget\packages\ + C:\Users\class_student\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages + PackageReference + 6.9.2 + + + + + + + + + \ No newline at end of file diff --git a/ui/obj/ui.csproj.nuget.g.targets b/ui/obj/ui.csproj.nuget.g.targets new file mode 100644 index 0000000..baac958 --- /dev/null +++ b/ui/obj/ui.csproj.nuget.g.targets @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/ui/ui.csproj b/ui/ui.csproj new file mode 100644 index 0000000..dcf787d --- /dev/null +++ b/ui/ui.csproj @@ -0,0 +1,13 @@ + + + + + + + + net8.0 + enable + enable + + +