From c04f802b393fcb1573f4f695c88608e2cdf025fe Mon Sep 17 00:00:00 2001 From: Akith-002 Date: Fri, 18 Jul 2025 08:27:14 +0530 Subject: [PATCH 01/21] feat: Add conditional database reset logic based on environment variable --- Data/DBInitializer.cs | 176 ++++++++++++++++++++++++++---------------- Program.cs | 10 +++ 2 files changed, 119 insertions(+), 67 deletions(-) diff --git a/Data/DBInitializer.cs b/Data/DBInitializer.cs index 7e66589..9f30907 100644 --- a/Data/DBInitializer.cs +++ b/Data/DBInitializer.cs @@ -31,8 +31,8 @@ public static void Initialize(AppDbContext context) // Update UserTasks with correct User IDs UpdateUserTaskUserIds(context); - // Remove UserTasks that are not LM (Land Miscellaneous) - RemoveNonLMUserTasks(context); + // Remove UserTasks that are not LM (Land Miscellaneous) - COMMENTED OUT to keep LA and MR tasks + // RemoveNonLMUserTasks(context); // Initialize Master Data InitializeMasterData(context); // Initialize Land Aquisition Master Files @@ -1048,7 +1048,7 @@ private static void InitializeReports(AppDbContext context) private static void InitializeUsers(AppDbContext context) { - //if (context.Users.Any()) return; + if (context.Users.Any()) return; Console.WriteLine("Seeding users..."); @@ -1136,18 +1136,31 @@ string division private static void InitializeUserTasks(AppDbContext context) { - // Calculate expected task count: 12 LA tasks + number of LM records - var expectedTaskCount = 12 + context.LandMiscellaneousMasterFiles.Count(); + // Calculate expected task count: 12 LA/MR tasks + number of LM records + var expectedLmTaskCount = context.LandMiscellaneousMasterFiles.Count(); + var expectedNonLmTaskCount = 12; + var currentLmTaskCount = context.UserTasks.Count(t => t.TaskType == "LM"); + var currentNonLmTaskCount = context.UserTasks.Count(t => t.TaskType != "LM"); - // Check if we already have enough tasks - if (context.UserTasks.Count() >= expectedTaskCount) + // Check if we have sufficient LM tasks - only reseed LM tasks if needed + bool needLmTasks = currentLmTaskCount < expectedLmTaskCount; + bool needNonLmTasks = currentNonLmTaskCount < expectedNonLmTaskCount; + + if (!needLmTasks && !needNonLmTasks) return; - // Remove all existing user tasks to ensure clean seeding - if (context.UserTasks.Any()) + // Only remove non-LM tasks if we need to reseed them + if (needNonLmTasks && currentNonLmTaskCount > 0) { - context.UserTasks.RemoveRange(context.UserTasks); + var nonLmTasks = context.UserTasks.Where(t => t.TaskType != "LM").ToList(); + Console.WriteLine($"Removing {nonLmTasks.Count} UserTask entries with TaskType other than 'LM'..."); + foreach (var task in nonLmTasks) + { + Console.WriteLine($"Removing UserTask: Username={task.Username}, TaskType={task.TaskType}, Description={task.WorkItemDescription}"); + } + context.UserTasks.RemoveRange(nonLmTasks); context.SaveChanges(); + Console.WriteLine("Non-LM UserTasks removed successfully."); } Console.WriteLine("Seeding user tasks..."); @@ -1188,57 +1201,92 @@ void AddTask(string username, string type, bool completed, string date, ); } - // Non-LM tasks (LA and MR tasks without referencing old LandMiscellaneous IDs) - // Jalina's tasks - AddTask("Jalina", "LA", true, "20250105", landAcquisitionId: 1, description: "Land acquisition survey for Highway Project", referenceNumber: "LA-2025-001"); - AddTask("Jalina", "MR", true, "20250115", requestId: 1, description: "Mass rating assessment - Colombo MC", referenceNumber: "MR-2025-001"); - AddTask("Jalina", "LA", true, "20250301", landAcquisitionId: 2, description: "Land acquisition for Bridge Project", referenceNumber: "LA-2025-002"); - - // Akith's tasks - AddTask("Akith", "MR", true, "20250120", requestId: 2, description: "Rating assessment - Galle MC", referenceNumber: "MR-2025-002"); - AddTask("Akith", "LA", false, "20250225", landAcquisitionId: 3, description: "Land acquisition survey", referenceNumber: "LA-2025-003"); - - // Dulmini's tasks - AddTask("Dulmini", "LA", true, "20250110", landAcquisitionId: 4, description: "Land acquisition documentation", referenceNumber: "LA-2025-004"); - AddTask("Dulmini", "MR", true, "20250112", requestId: 3, description: "Rating building assessment", referenceNumber: "MR-2025-003"); - AddTask("Dulmini", "MR", false, "20250302", requestId: 1, description: "Follow-up rating assessment", referenceNumber: "MR-2025-004"); - - // Vishwa's tasks - AddTask("Vishwa", "LA", true, "20250101", landAcquisitionId: 5, description: "Land acquisition initial survey", referenceNumber: "LA-2025-005"); - AddTask("Vishwa", "LA", true, "20250215", landAcquisitionId: 6, description: "Land acquisition follow-up", referenceNumber: "LA-2025-006"); - AddTask("Vishwa", "MR", true, "20250318", requestId: 2, description: "Additional rating assessment", referenceNumber: "MR-2025-005"); - - // Rithara's tasks - AddTask("Rithara", "MR", true, "20250118", requestId: 3, description: "Building rating review", referenceNumber: "MR-2025-006"); - AddTask("Rithara", "LA", false, "20250311", landAcquisitionId: 7, description: "Land acquisition assessment", referenceNumber: "LA-2025-007"); - - // LM tasks for all current land miscellaneous records - randomly distributed - var users = new[] { "Jalina", "Akith", "Dulmini", "Vishwa", "Rithara" }; - var planTypes = new[] { "PP", "Cadaster", "FVP" }; - var random = new Random(42); // Fixed seed for consistent results - - // Get all actual LandMiscellaneous records from database to use their real IDs - var landMiscRecords = context.LandMiscellaneousMasterFiles.OrderBy(lm => lm.MasterFileNo).ToList(); + // Add non-LM tasks only if needed + if (needNonLmTasks) + { + // Non-LM tasks (LA and MR tasks without referencing old LandMiscellaneous IDs) + // Jalina's tasks + AddTask("Jalina", "LA", true, "20250105", landAcquisitionId: 1, description: "Land acquisition survey for Highway Project", referenceNumber: "LA-2025-001"); + AddTask("Jalina", "MR", true, "20250115", requestId: 1, description: "Mass rating assessment - Colombo MC", referenceNumber: "MR-2025-001"); + AddTask("Jalina", "LA", true, "20250301", landAcquisitionId: 2, description: "Land acquisition for Bridge Project", referenceNumber: "LA-2025-002"); + + // Akith's tasks + AddTask("Akith", "MR", true, "20250120", requestId: 2, description: "Rating assessment - Galle MC", referenceNumber: "MR-2025-002"); + AddTask("Akith", "LA", false, "20250225", landAcquisitionId: 3, description: "Land acquisition survey", referenceNumber: "LA-2025-003"); + + // Dulmini's tasks + AddTask("Dulmini", "LA", true, "20250110", landAcquisitionId: 4, description: "Land acquisition documentation", referenceNumber: "LA-2025-004"); + AddTask("Dulmini", "MR", true, "20250112", requestId: 3, description: "Rating building assessment", referenceNumber: "MR-2025-003"); + AddTask("Dulmini", "MR", false, "20250302", requestId: 1, description: "Follow-up rating assessment", referenceNumber: "MR-2025-004"); + + // Vishwa's tasks + AddTask("Vishwa", "LA", true, "20250101", landAcquisitionId: 5, description: "Land acquisition initial survey", referenceNumber: "LA-2025-005"); + AddTask("Vishwa", "LA", true, "20250215", landAcquisitionId: 6, description: "Land acquisition follow-up", referenceNumber: "LA-2025-006"); + AddTask("Vishwa", "MR", true, "20250318", requestId: 2, description: "Additional rating assessment", referenceNumber: "MR-2025-005"); + + // Rithara's tasks + AddTask("Rithara", "MR", true, "20250118", requestId: 3, description: "Building rating review", referenceNumber: "MR-2025-006"); + AddTask("Rithara", "LA", false, "20250311", landAcquisitionId: 7, description: "Land acquisition assessment", referenceNumber: "LA-2025-007"); + + // Additional LA tasks for remaining Land Acquisition Master Files (IDs 8-22) + // Distribute among all 5 users + AddTask("Jalina", "LA", true, "20250315", landAcquisitionId: 8, description: "Land acquisition survey for Metro Line", referenceNumber: "LA-2025-008"); + AddTask("Akith", "LA", false, "20250320", landAcquisitionId: 9, description: "Land acquisition for School Development", referenceNumber: "LA-2025-009"); + AddTask("Dulmini", "LA", true, "20250325", landAcquisitionId: 10, description: "Land acquisition documentation review", referenceNumber: "LA-2025-010"); + AddTask("Vishwa", "LA", false, "20250330", landAcquisitionId: 11, description: "Land acquisition field verification", referenceNumber: "LA-2025-011"); + AddTask("Rithara", "LA", true, "20250405", landAcquisitionId: 12, description: "Land acquisition boundary survey", referenceNumber: "LA-2025-012"); + + AddTask("Jalina", "LA", false, "20250410", landAcquisitionId: 13, description: "Land acquisition for Hospital Extension", referenceNumber: "LA-2025-013"); + AddTask("Akith", "LA", true, "20250415", landAcquisitionId: 14, description: "Land acquisition compensation assessment", referenceNumber: "LA-2025-014"); + AddTask("Dulmini", "LA", false, "20250420", landAcquisitionId: 15, description: "Land acquisition legal documentation", referenceNumber: "LA-2025-015"); + AddTask("Vishwa", "LA", true, "20250425", landAcquisitionId: 16, description: "Land acquisition site inspection", referenceNumber: "LA-2025-016"); + AddTask("Rithara", "LA", false, "20250430", landAcquisitionId: 17, description: "Land acquisition valuation report", referenceNumber: "LA-2025-017"); + + AddTask("Jalina", "LA", true, "20250505", landAcquisitionId: 18, description: "Land acquisition for Road Widening", referenceNumber: "LA-2025-018"); + AddTask("Akith", "LA", false, "20250510", landAcquisitionId: 19, description: "Land acquisition preliminary survey", referenceNumber: "LA-2025-019"); + AddTask("Dulmini", "LA", true, "20250515", landAcquisitionId: 20, description: "Land acquisition title verification", referenceNumber: "LA-2025-020"); + AddTask("Vishwa", "LA", false, "20250520", landAcquisitionId: 21, description: "Land acquisition environmental assessment", referenceNumber: "LA-2025-021"); + AddTask("Rithara", "LA", true, "20250525", landAcquisitionId: 22, description: "Land acquisition final documentation", referenceNumber: "LA-2025-022"); + } - // Create tasks for each actual LandMiscellaneous record - for (int i = 0; i < landMiscRecords.Count; i++) + // Add LM tasks only if needed + if (needLmTasks) { - var record = landMiscRecords[i]; - var randomUser = users[random.Next(users.Length)]; - var randomPlanType = planTypes[random.Next(planTypes.Length)]; - var isCompleted = random.Next(100) < 30; // 30% chance of being completed - var randomDays = random.Next(1, 120); // Random date within last 120 days - var assignedDate = DateTime.Today.AddDays(-randomDays).ToString("yyyyMMdd"); - - AddTask(randomUser, "LM", isCompleted, assignedDate, - landMiscellaneousId: record.Id, // Use the actual database ID - description: $"{randomPlanType} plan verification for {record.MasterFileNo}", - referenceNumber: $"LM-2025-{(i + 1):D3}"); + // LM tasks for all current land miscellaneous records - randomly distributed + var users = new[] { "Jalina", "Akith", "Dulmini", "Vishwa", "Rithara" }; + var planTypes = new[] { "PP", "Cadaster", "FVP" }; + var random = new Random(42); // Fixed seed for consistent results + + // Get all actual LandMiscellaneous records from database to use their real IDs + var landMiscRecords = context.LandMiscellaneousMasterFiles.OrderBy(lm => lm.MasterFileNo).ToList(); + + // Create tasks for each actual LandMiscellaneous record + for (int i = 0; i < landMiscRecords.Count; i++) + { + var record = landMiscRecords[i]; + var randomUser = users[random.Next(users.Length)]; + var randomPlanType = planTypes[random.Next(planTypes.Length)]; + var isCompleted = random.Next(100) < 30; // 30% chance of being completed + var randomDays = random.Next(1, 120); // Random date within last 120 days + var assignedDate = DateTime.Today.AddDays(-randomDays).ToString("yyyyMMdd"); + + AddTask(randomUser, "LM", isCompleted, assignedDate, + landMiscellaneousId: record.Id, // Use the actual database ID + description: $"{randomPlanType} plan verification for {record.MasterFileNo}", + referenceNumber: $"LM-2025-{(i + 1):D3}"); + } } - context.UserTasks.AddRange(tasks); - context.SaveChanges(); - Console.WriteLine("User tasks seeded."); + if (tasks.Any()) + { + context.UserTasks.AddRange(tasks); + context.SaveChanges(); + Console.WriteLine($"User tasks seeded. Added {tasks.Count} tasks (LM: {tasks.Count(t => t.TaskType == "LM")}, Non-LM: {tasks.Count(t => t.TaskType != "LM")})."); + } + else + { + Console.WriteLine("No new tasks needed - all UserTasks are already properly seeded."); + } } private static void UpdateUserTaskAssignments(AppDbContext context) @@ -1483,12 +1531,9 @@ private static void InitializeRequestTypes(AppDbContext context) private static void InitializeRequests(AppDbContext context) { - // Clear existing data to allow reseeding + // Only seed if no requests exist if (context.Requests.Any()) - { - context.Requests.RemoveRange(context.Requests); - context.SaveChanges(); - } + return; Console.WriteLine("Seeding requests..."); @@ -1664,12 +1709,9 @@ private static void InitializeRequests(AppDbContext context) private static void InitializeAssets(AppDbContext context) { - // Clear existing data to allow reseeding + // Only seed if no assets exist if (context.Assets.Any()) - { - context.Assets.RemoveRange(context.Assets); - context.SaveChanges(); - } + return; Console.WriteLine("Seeding assets..."); diff --git a/Program.cs b/Program.cs index 48ba25a..e6ba50d 100644 --- a/Program.cs +++ b/Program.cs @@ -100,6 +100,16 @@ try { var dbContext = scope.ServiceProvider.GetRequiredService(); + + // Only reset database if explicitly requested (e.g., via environment variable) + var shouldResetDb = Environment.GetEnvironmentVariable("RESET_DATABASE")?.ToLower() == "true"; + + if (shouldResetDb) + { + Console.WriteLine("Resetting database..."); + // Add database reset logic here if needed + } + DbInitializer.Initialize(dbContext); Console.WriteLine("Database initialized successfully."); } From 4e33131ff380051cca096654bdefd5573b48f8dc Mon Sep 17 00:00:00 2001 From: Akith-002 Date: Mon, 21 Jul 2025 07:07:43 +0530 Subject: [PATCH 02/21] Add MasterFileRefNo to LandMiscellaneousMasterFiles - Created a new migration to add the MasterFileRefNo column to the LandMiscellaneousMasterFiles table. - Updated existing records to populate MasterFileRefNo based on MasterFileNo. - Updated the AppDbContextModelSnapshot to reflect the new column. - Modified the LandMiscellaneousMasterFile model to include the MasterFileRefNo property. --- ...oToLandMiscellaneousMasterFile.Designer.cs | 1714 +++++++++++++++++ ...rFileRefNoToLandMiscellaneousMasterFile.cs | 35 + Migrations/AppDbContextModelSnapshot.cs | 3 + Models/LandMiscellaneousMasterFile.cs | 1 + 4 files changed, 1753 insertions(+) create mode 100644 Migrations/20250720064824_AddMasterFileRefNoToLandMiscellaneousMasterFile.Designer.cs create mode 100644 Migrations/20250720064824_AddMasterFileRefNoToLandMiscellaneousMasterFile.cs diff --git a/Migrations/20250720064824_AddMasterFileRefNoToLandMiscellaneousMasterFile.Designer.cs b/Migrations/20250720064824_AddMasterFileRefNoToLandMiscellaneousMasterFile.Designer.cs new file mode 100644 index 0000000..608699d --- /dev/null +++ b/Migrations/20250720064824_AddMasterFileRefNoToLandMiscellaneousMasterFile.Designer.cs @@ -0,0 +1,1714 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using ValuationBackend.Data; + +#nullable disable + +namespace ValuationBackend.Migrations +{ + [DbContext(typeof(AppDbContext))] + [Migration("20250720064824_AddMasterFileRefNoToLandMiscellaneousMasterFile")] + partial class AddMasterFileRefNoToLandMiscellaneousMasterFile + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "9.0.5") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("LandAquisitionMasterFile", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("MasterFileNo") + .HasColumnType("integer"); + + b.Property("MasterFilesRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanType") + .IsRequired() + .HasColumnType("text"); + + b.Property("RequestingAuthorityReferenceNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Status") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("LandAquisitionMasterFiles"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Asset", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNo") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasColumnType("integer"); + + b.Property("IsRatingCard") + .HasColumnType("boolean"); + + b.Property("Owner") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("RdSt") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("RequestId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Ward") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.HasKey("Id"); + + b.HasIndex("RequestId"); + + b.ToTable("Assets"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetDivision", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Area") + .HasColumnType("numeric"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("LandType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("NewAssetNo") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("AssetDivisions"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetNumberChange", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ChangedDate") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfChange") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasMaxLength(255) + .HasColumnType("character varying(255)"); + + b.Property("FieldSize") + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("FieldType") + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("NewAssetNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("OldAssetNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Reason") + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("AssetNumberChanges"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNumber") + .HasColumnType("text"); + + b.Property("ConstructedBy") + .HasColumnType("text"); + + b.Property("Cost") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("FloorAreaSQFT") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerSQFT") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("YearOfConstruction") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("BuildingRatesLA"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccessCategory") + .IsRequired() + .HasColumnType("text"); + + b.Property("AccessCategoryDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquiredExtent") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquiringOfficerSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquisitionName") + .IsRequired() + .HasColumnType("text"); + + b.Property("AssessmentNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("AtLotNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("AtPlanNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryBottom") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryEast") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryNorth") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundarySouth") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryWest") + .IsRequired() + .HasColumnType("text"); + + b.Property("BuildingDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("BuildingInfo") + .IsRequired() + .HasColumnType("text"); + + b.Property("ChiefValuerRepresentativeSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfSection3BA") + .IsRequired() + .HasColumnType("text"); + + b.Property("DatePrepared") + .IsRequired() + .HasColumnType("text"); + + b.Property("DepthOfLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("DescriptionOfLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("DetailsOfBusiness") + .IsRequired() + .HasColumnType("text"); + + b.Property("Frontage") + .IsRequired() + .HasColumnType("text"); + + b.Property("GramasewakaSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("LandUseDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("LandUseType") + .IsRequired() + .HasColumnType("text"); + + b.Property("LevelWithAccess") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("NameOfTheLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("NameOfTheVillage") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionsDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionsInfo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlantationDetails") + .IsRequired() + .HasColumnType("text"); + + b.Property("PpCadLotNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("PpCadNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("RoadName") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("ConditionReports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.DomesticRatingCard", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Access") + .HasColumnType("text"); + + b.Property("Age") + .HasColumnType("integer"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("Condition") + .HasColumnType("text"); + + b.Property("Conveniences") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("Floor") + .HasColumnType("text"); + + b.Property("NewNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("Notes") + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .IsRequired() + .HasColumnType("text"); + + b.Property("ParkingSpace") + .HasColumnType("text"); + + b.Property("Plantations") + .HasColumnType("text"); + + b.Property("PropertySubCategory") + .HasColumnType("text"); + + b.Property("PropertyType") + .HasColumnType("text"); + + b.Property("RentPM") + .HasColumnType("numeric"); + + b.Property("RoadName") + .HasColumnType("text"); + + b.Property("SelectWalls") + .HasColumnType("text"); + + b.Property("SuggestedRate") + .HasColumnType("numeric"); + + b.Property("Terms") + .HasColumnType("text"); + + b.Property("TsBop") + .HasColumnType("text"); + + b.Property("WardNumber") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("DomesticRatingCards"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ImageData", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ImageBase64") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportId") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("ImageData"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionBuilding", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AgeYears") + .HasColumnType("text"); + + b.Property("BathroomToilet") + .HasColumnType("text"); + + b.Property("BathroomToiletDoorsFittings") + .HasColumnType("text"); + + b.Property("BuildingCategory") + .HasColumnType("text"); + + b.Property("BuildingClass") + .HasColumnType("text"); + + b.Property("BuildingConditions") + .HasColumnType("text"); + + b.Property("BuildingId") + .HasColumnType("text"); + + b.Property("BuildingName") + .HasColumnType("text"); + + b.Property("Ceiling") + .HasColumnType("text"); + + b.Property("Condition") + .HasColumnType("text"); + + b.Property("Conveniences") + .HasColumnType("text"); + + b.Property("Design") + .HasColumnType("text"); + + b.Property("DetailOfBuilding") + .HasColumnType("text"); + + b.Property("Door") + .HasColumnType("text"); + + b.Property("ExpectedLifePeriodYears") + .HasColumnType("text"); + + b.Property("FloorFinisher") + .HasColumnType("text"); + + b.Property("FloorStructure") + .HasColumnType("text"); + + b.Property("FoundationStructure") + .HasColumnType("text"); + + b.Property("HandRail") + .HasColumnType("text"); + + b.Property("InspectionReportId") + .HasColumnType("integer"); + + b.Property("NatureOfConstruction") + .HasColumnType("text"); + + b.Property("NoOfFloorsAboveGround") + .HasColumnType("text") + .HasColumnName("NoOfFloorsAboveGround"); + + b.Property("NoOfFloorsBelowGround") + .HasColumnType("text") + .HasColumnName("NoOfFloorsBelowGround"); + + b.Property("OtherDoors") + .HasColumnType("text"); + + b.Property("PantryCupboard") + .HasColumnType("text"); + + b.Property("ParkingSpace") + .HasColumnType("text"); + + b.Property("RoofFinisher") + .HasColumnType("text"); + + b.Property("RoofFrame") + .HasColumnType("text"); + + b.Property("RoofMaterial") + .HasColumnType("text"); + + b.Property("Services") + .HasColumnType("text"); + + b.Property("Structure") + .HasColumnType("text"); + + b.Property("WallFinisher") + .HasColumnType("text"); + + b.Property("WallStructure") + .HasColumnType("text"); + + b.Property("Window") + .HasColumnType("text"); + + b.Property("WindowProtection") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("InspectionReportId"); + + b.ToTable("InspectionBuildings"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.Property("InspectionReportId") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("InspectionReportId")); + + b.Property("DetailsOfAssestsInventoryItems") + .HasColumnType("text") + .HasColumnName("DetailsOfAssestsInventoryItems"); + + b.Property("DetailsOfBusiness") + .HasColumnType("text"); + + b.Property("District") + .HasColumnType("text"); + + b.Property("DsDivision") + .HasColumnType("text"); + + b.Property("GnDivision") + .HasColumnType("text"); + + b.Property("InspectionDate") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionDetails") + .HasColumnType("text"); + + b.Property("OtherInformation") + .HasColumnType("text"); + + b.Property("Province") + .HasColumnType("text"); + + b.Property("Remark") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("InspectionReportId"); + + b.HasIndex("ReportId"); + + b.ToTable("InspectionReports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMBuildingRates", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNumber") + .HasColumnType("text"); + + b.Property("ConstructedBy") + .HasColumnType("text"); + + b.Property("Cost") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("FloorArea") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerSQFT") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("YearOfConstruction") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMBuildingRates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMPastValuation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("DateOfValuation") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FileNo_GnDivision") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanOfParticulars") + .HasColumnType("text"); + + b.Property("PurposeOfValuation") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMPastValuations"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMRentalEvidence", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNo") + .HasColumnType("text"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("FloorRate") + .HasColumnType("text"); + + b.Property("HeadOfTerms") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePer") + .HasColumnType("text"); + + b.Property("RatePerMonth") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMRentalEvidences"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMSalesEvidence", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNumber") + .HasColumnType("text"); + + b.Property("Consideration") + .HasColumnType("text"); + + b.Property("DeedAttestedNumber") + .HasColumnType("text"); + + b.Property("DeedNumber") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("LandRegistryReferences") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("LotNumber") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("NotaryName") + .HasColumnType("text"); + + b.Property("PlanDate") + .HasColumnType("text"); + + b.Property("PlanNumber") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Road") + .HasColumnType("text"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("Vendor") + .HasColumnType("text"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMSalesEvidences"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LandMiscellaneousMasterFile", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Lots") + .HasColumnType("integer"); + + b.Property("MasterFileNo") + .HasColumnType("integer"); + + b.Property("MasterFileRefNo") + .HasColumnType("text"); + + b.Property("PlanNo") + .HasColumnType("text"); + + b.Property("PlanType") + .HasColumnType("text"); + + b.Property("RequestingAuthorityReferenceNo") + .HasColumnType("text"); + + b.Property("Status") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("LandMiscellaneousMasterFiles"); + }); + + modelBuilder.Entity("ValuationBackend.Models.MasterDataItem", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Category") + .IsRequired() + .HasColumnType("text"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("MasterDataItems"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfValuation") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FileNoGNDivision") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanOfParticulars") + .HasColumnType("text"); + + b.Property("PurposeOfValuation") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("PastValuationsLA"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PropertyCategory", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Name") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("PropertyCategories"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RatingRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("LocalAuthority") + .IsRequired() + .HasColumnType("text"); + + b.Property("RatingReferenceNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("RequestType") + .IsRequired() + .HasColumnType("text"); + + b.Property("Status") + .IsRequired() + .HasColumnType("text"); + + b.Property("YearOfRevision") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.ToTable("RatingRequests"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Reconciliation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("NewNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("ObsoleteNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("StreetName") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("Reconciliations"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNo") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("FloorRateSQFT") + .HasColumnType("text"); + + b.Property("HeadOfTerms") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerMonth") + .HasColumnType("text"); + + b.Property("RatePerSqft") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("RentalEvidencesLA", (string)null); + }); + + modelBuilder.Entity("ValuationBackend.Models.Report", b => + { + b.Property("ReportId") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("ReportId")); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportType") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Timestamp") + .HasColumnType("timestamp with time zone"); + + b.HasKey("ReportId"); + + b.ToTable("Reports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Request", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("LocalAuthority") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RatingReferenceNo") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RequestTypeId") + .HasColumnType("integer"); + + b.Property("Status") + .HasColumnType("boolean"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("YearOfRevision") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("RequestTypeId"); + + b.ToTable("Requests"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RequestType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Code") + .IsRequired() + .HasMaxLength(2) + .HasColumnType("character varying(2)"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("RequestTypes"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNumber") + .HasColumnType("text"); + + b.Property("Consideration") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DeedAttestedNumber") + .HasColumnType("text"); + + b.Property("DeedNumber") + .HasColumnType("text"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FloorRate") + .HasColumnType("text"); + + b.Property("LandRegistryReferences") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("LotNumber") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("NotaryName") + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("PlanDate") + .HasColumnType("text"); + + b.Property("PlanNumber") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Road") + .HasColumnType("text"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Vendor") + .HasColumnType("text"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("SalesEvidencesLA", (string)null); + }); + + modelBuilder.Entity("ValuationBackend.Models.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssignedDivision") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpEmail") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpId") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpName") + .IsRequired() + .HasColumnType("text"); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("bytea"); + + b.Property("PasswordSalt") + .IsRequired() + .HasColumnType("bytea"); + + b.Property("Position") + .IsRequired() + .HasColumnType("text"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("ValuationBackend.Models.UserTask", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssignedDate") + .HasColumnType("timestamp with time zone"); + + b.Property("IsCompleted") + .HasColumnType("boolean"); + + b.Property("LandAcquisitionId") + .HasColumnType("integer"); + + b.Property("LandMiscellaneousId") + .HasColumnType("integer"); + + b.Property("ReferenceNumber") + .HasColumnType("text"); + + b.Property("RequestId") + .HasColumnType("integer"); + + b.Property("TaskType") + .IsRequired() + .HasColumnType("text"); + + b.Property("UserId") + .HasColumnType("integer"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.Property("WorkItemDescription") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("UserId"); + + b.ToTable("UserTasks"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Asset", b => + { + b.HasOne("ValuationBackend.Models.Request", "Request") + .WithMany() + .HasForeignKey("RequestId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Request"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetDivision", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.DomesticRatingCard", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionBuilding", b => + { + b.HasOne("ValuationBackend.Models.InspectionReport", "InspectionReport") + .WithMany("Buildings") + .HasForeignKey("InspectionReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("InspectionReport"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMBuildingRates", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMPastValuation", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMRentalEvidence", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMSalesEvidence", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Reconciliation", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Request", b => + { + b.HasOne("ValuationBackend.Models.RequestType", "RequestType") + .WithMany() + .HasForeignKey("RequestTypeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("RequestType"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.UserTask", b => + { + b.HasOne("ValuationBackend.Models.User", "User") + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("User"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.Navigation("Buildings"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/Migrations/20250720064824_AddMasterFileRefNoToLandMiscellaneousMasterFile.cs b/Migrations/20250720064824_AddMasterFileRefNoToLandMiscellaneousMasterFile.cs new file mode 100644 index 0000000..10e34eb --- /dev/null +++ b/Migrations/20250720064824_AddMasterFileRefNoToLandMiscellaneousMasterFile.cs @@ -0,0 +1,35 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace ValuationBackend.Migrations +{ + /// + public partial class AddMasterFileRefNoToLandMiscellaneousMasterFile : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.AddColumn( + name: "MasterFileRefNo", + table: "LandMiscellaneousMasterFiles", + type: "text", + nullable: true); + + // Update existing records with MasterFileRefNo based on MasterFileNo + migrationBuilder.Sql(@" + UPDATE ""LandMiscellaneousMasterFiles"" + SET ""MasterFileRefNo"" = 'Metro 2/LA/' || ""MasterFileNo"" + WHERE ""MasterFileRefNo"" IS NULL; + "); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropColumn( + name: "MasterFileRefNo", + table: "LandMiscellaneousMasterFiles"); + } + } +} diff --git a/Migrations/AppDbContextModelSnapshot.cs b/Migrations/AppDbContextModelSnapshot.cs index fadf802..c3077b4 100644 --- a/Migrations/AppDbContextModelSnapshot.cs +++ b/Migrations/AppDbContextModelSnapshot.cs @@ -970,6 +970,9 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("MasterFileNo") .HasColumnType("integer"); + b.Property("MasterFileRefNo") + .HasColumnType("text"); + b.Property("PlanNo") .HasColumnType("text"); diff --git a/Models/LandMiscellaneousMasterFile.cs b/Models/LandMiscellaneousMasterFile.cs index ad6732e..75d97c8 100644 --- a/Models/LandMiscellaneousMasterFile.cs +++ b/Models/LandMiscellaneousMasterFile.cs @@ -6,6 +6,7 @@ public class LandMiscellaneousMasterFile { public int Id { get; set; } public int MasterFileNo { get; set; } + public string? MasterFileRefNo { get; set; } public string? PlanType { get; set; } public string? PlanNo { get; set; } public string? RequestingAuthorityReferenceNo { get; set; } From 98ff9a8b0611faf8e0082e0791e3a63db1980c8b Mon Sep 17 00:00:00 2001 From: "abeyweerasd.22" Date: Tue, 22 Jul 2025 00:03:17 +0530 Subject: [PATCH 03/21] Decision Field , Rating File Controller --- .../iteration2/DecisionFieldController.cs | 36 +++++++++++++++++++ .../iteration2/RatingFileController.cs | 34 ++++++++++++++++++ Data/AppDbContext.cs | 4 ++- Data/DBInitializer.cs | 14 ++++---- Data/ValuationContext.cs | 13 +++++++ Models/iteration2/DTOs/ObsoleteNumberDto.cs | 5 +++ Models/iteration2/DTOs/streets.cs | 5 +++ Models/iteration2/Decision.cs | 8 +++++ Program.cs | 4 +++ repositories/DecisionFieldRepository.cs | 32 +++++++++++++++++ services/AssetNumberChangeService.cs | 2 +- services/DecisionFieldService.cs | 29 +++++++++++++++ 12 files changed, 178 insertions(+), 8 deletions(-) create mode 100644 Controllers/iteration2/DecisionFieldController.cs create mode 100644 Controllers/iteration2/RatingFileController.cs create mode 100644 Data/ValuationContext.cs create mode 100644 Models/iteration2/DTOs/ObsoleteNumberDto.cs create mode 100644 Models/iteration2/DTOs/streets.cs create mode 100644 Models/iteration2/Decision.cs create mode 100644 repositories/DecisionFieldRepository.cs create mode 100644 services/DecisionFieldService.cs diff --git a/Controllers/iteration2/DecisionFieldController.cs b/Controllers/iteration2/DecisionFieldController.cs new file mode 100644 index 0000000..acef1d2 --- /dev/null +++ b/Controllers/iteration2/DecisionFieldController.cs @@ -0,0 +1,36 @@ +using Microsoft.AspNetCore.Mvc; +using System.Collections.Generic; +using System.Threading.Tasks; +using ValuationBackend.Models.DTOs; +using ValuationBackend.Services; +using ValuationBackend.Data; +using ValuationBackend.Models; +using Microsoft.EntityFrameworkCore; + + +[ApiController] +[Route("api/decision-fields")] +public class DecisionFieldController : ControllerBase +{ + private readonly ValuationContext _context; + + public DecisionFieldController(ValuationContext context) + { + _context = context; + } + + [HttpPost] + public async Task CreateField([FromBody] DecisionField field) + { + _context.DecisionFields.Add(field); + await _context.SaveChangesAsync(); + return Ok(field); + } + + [HttpGet] + public async Task GetAllFields() + { + var fields = await _context.DecisionFields.ToListAsync(); + return Ok(fields); + } +} diff --git a/Controllers/iteration2/RatingFileController.cs b/Controllers/iteration2/RatingFileController.cs new file mode 100644 index 0000000..0123ea2 --- /dev/null +++ b/Controllers/iteration2/RatingFileController.cs @@ -0,0 +1,34 @@ +using Microsoft.AspNetCore.Mvc; + +[ApiController] +[Route("api/{requestType}/ratingfile")] +public class RatingFileController : ControllerBase +{ + // 1. Load all street names + [HttpGet("streets")] + public IActionResult GetStreets(string requestType) + { + var streets = new[] + { + new { id = "S1", name = "Main Street" }, + new { id = "S2", name = "Highway Road" }, + new { id = "S3", name = "Park Avenue" } + }; + + return Ok(new { streets }); + } + + // 2. Load obsolete numbers for selected street + [HttpGet("streets/{streetId}/obsolete-numbers")] + public IActionResult GetObsoleteNumbers(string requestType, string streetId) + { + var obsoleteNumbers = new[] + { + new { id = "O1", number = "101" }, + new { id = "O2", number = "102" }, + new { id = "O3", number = "103" } + }; + + return Ok(new { obsoleteNumbers }); + } +} diff --git a/Data/AppDbContext.cs b/Data/AppDbContext.cs index b330b8c..76e5c9a 100644 --- a/Data/AppDbContext.cs +++ b/Data/AppDbContext.cs @@ -9,7 +9,7 @@ public AppDbContext(DbContextOptions options) : base(options) { } public DbSet RatingRequests { get; set; } - + public DbSet LandMiscellaneousMasterFiles { get; set; } public DbSet Reconciliations { get; set; } @@ -59,6 +59,8 @@ public AppDbContext(DbContextOptions options) public DbSet PropertyCategories { get; set; } + public DbSet DecisionFields { get; set; } + protected override void OnModelCreating(ModelBuilder modelBuilder) { base.OnModelCreating(modelBuilder); diff --git a/Data/DBInitializer.cs b/Data/DBInitializer.cs index 2f54527..9a540c6 100644 --- a/Data/DBInitializer.cs +++ b/Data/DBInitializer.cs @@ -35,19 +35,19 @@ public static void Initialize(AppDbContext context) InitializeRequestTypes(context); // Initialize Requests - InitializeRequests(context); - // Initialize Assets + InitializeRequests(context); + // Initialize Assets InitializeAssets(context); // Initialize Property Categories InitializePropertyCategories(context); - + // Initialize Asset Divisions InitializeAssetDivisions(context); - + // Initialize Reconciliations InitializeReconciliations(context); - + // Initialize Domestic Rating Cards DomesticRatingCardInitializer.InitializeDomesticRatingCards(context); } @@ -816,7 +816,7 @@ private static void InitializePropertyCategories(AppDbContext context) context.SaveChanges(); Console.WriteLine("Property categories seeded."); } - + private static void InitializeAssetDivisions(AppDbContext context) { // If there's any data, stop @@ -926,5 +926,7 @@ private static void InitializeReconciliations(AppDbContext context) context.SaveChanges(); Console.WriteLine("Reconciliations seeded."); } + + } } diff --git a/Data/ValuationContext.cs b/Data/ValuationContext.cs new file mode 100644 index 0000000..5554fb4 --- /dev/null +++ b/Data/ValuationContext.cs @@ -0,0 +1,13 @@ +using Microsoft.EntityFrameworkCore; +using ValuationBackend.Models; + +namespace ValuationBackend.Data +{ + public class ValuationContext : DbContext + { + public ValuationContext(DbContextOptions options) : base(options) { } + + public DbSet DecisionFields { get; set; } + // ...add other DbSets as needed... + } +} diff --git a/Models/iteration2/DTOs/ObsoleteNumberDto.cs b/Models/iteration2/DTOs/ObsoleteNumberDto.cs new file mode 100644 index 0000000..052669c --- /dev/null +++ b/Models/iteration2/DTOs/ObsoleteNumberDto.cs @@ -0,0 +1,5 @@ +public class ObsoleteNumberDto +{ + public string Id { get; set; } + public string Number { get; set; } +} diff --git a/Models/iteration2/DTOs/streets.cs b/Models/iteration2/DTOs/streets.cs new file mode 100644 index 0000000..0339563 --- /dev/null +++ b/Models/iteration2/DTOs/streets.cs @@ -0,0 +1,5 @@ +public class StreetDto +{ + public string Id { get; set; } + public string Name { get; set; } +} diff --git a/Models/iteration2/Decision.cs b/Models/iteration2/Decision.cs new file mode 100644 index 0000000..96f60eb --- /dev/null +++ b/Models/iteration2/Decision.cs @@ -0,0 +1,8 @@ +public class DecisionField +{ + public int Id { get; set; } + public string Field { get; set; } // E.g., "Zone" + public string FieldDescription { get; set; } // E.g., "Zoning Category" + public string FieldType { get; set; } // E.g., "string", "number" + public int FieldSize { get; set; } // E.g., 255 +} diff --git a/Program.cs b/Program.cs index 0149aab..9c15eaa 100644 --- a/Program.cs +++ b/Program.cs @@ -59,6 +59,10 @@ options.ExpiryMinutes = jwtSettings.ExpiryMinutes; }); +builder.Services.AddDbContext(options => + options.UseNpgsql(builder.Configuration.GetConnectionString("DefaultConnection"))); + + // Add Authentication var key = Encoding.UTF8.GetBytes(jwtSettings.SecretKey); builder.Services.AddAuthentication(options => diff --git a/repositories/DecisionFieldRepository.cs b/repositories/DecisionFieldRepository.cs new file mode 100644 index 0000000..219e17a --- /dev/null +++ b/repositories/DecisionFieldRepository.cs @@ -0,0 +1,32 @@ +using System.Collections.Generic; +using System.Threading.Tasks; +using Microsoft.EntityFrameworkCore; +using ValuationBackend.Data; +using ValuationBackend.Models; + +namespace ValuationBackend.Repositories +{ + public class DecisionFieldRepository + { + private readonly ValuationContext _context; + + public DecisionFieldRepository(ValuationContext context) + { + _context = context; + } + + public async Task> GetAllAsync() + { + return await _context.DecisionFields.ToListAsync(); + } + + public async Task AddAsync(DecisionField field) + { + _context.DecisionFields.Add(field); + await _context.SaveChangesAsync(); + return field; + } + + // Add more methods as needed (e.g., GetByIdAsync, UpdateAsync, DeleteAsync) + } +} diff --git a/services/AssetNumberChangeService.cs b/services/AssetNumberChangeService.cs index 8fe6079..4e5431e 100644 --- a/services/AssetNumberChangeService.cs +++ b/services/AssetNumberChangeService.cs @@ -37,7 +37,7 @@ public async Task> GetByNewAssetNoAsync(string ne public async Task CreateAssetNumberChangeAsync(AssetNumberChange assetNumberChange) { - // Set default values if not provided + // Set default values if not provided assetNumberChange.DateOfChange = DateTime.UtcNow; if (assetNumberChange.ChangedDate == null) { diff --git a/services/DecisionFieldService.cs b/services/DecisionFieldService.cs new file mode 100644 index 0000000..1d705f9 --- /dev/null +++ b/services/DecisionFieldService.cs @@ -0,0 +1,29 @@ +using System.Collections.Generic; +using System.Threading.Tasks; +using ValuationBackend.Models; +using ValuationBackend.Repositories; + +namespace ValuationBackend.Services +{ + public class DecisionFieldService + { + private readonly DecisionFieldRepository _repository; + + public DecisionFieldService(DecisionFieldRepository repository) + { + _repository = repository; + } + + public async Task> GetAllFieldsAsync() + { + return await _repository.GetAllAsync(); + } + + public async Task CreateFieldAsync(DecisionField field) + { + return await _repository.AddAsync(field); + } + + // Add more methods as needed for business logic + } +} From 3803ffbc371e88633674406261bc3e8dd3efb598 Mon Sep 17 00:00:00 2001 From: VishwaJaya01 Date: Tue, 22 Jul 2025 01:24:58 +0530 Subject: [PATCH 04/21] Add Password Reset functionality with OTP verification - Created PasswordResets migration and updated model snapshot. - Implemented PasswordReset model to store OTP and related data. - Added IEmailSender interface and EmailSender service for sending emails. - Developed PasswordResetService to handle password reset requests, OTP generation, and verification. - Integrated EmailSender into PasswordResetService for sending OTP emails. - Updated Program.cs to register new services in the dependency injection container. --- Controllers/AuthController.cs | 37 +- Data/AppDbContext.cs | 2 + Migrations/20250428193956_InitialCreate.cs | 16 + ...21174110_AddPasswordResetTable.Designer.cs | 1919 +++++++++++++++++ .../20250721174110_AddPasswordResetTable.cs | 39 + Migrations/AppDbContextModelSnapshot.cs | 27 + Models/PasswordReset.cs | 18 + Program.cs | 3 + services/EmailSender.cs | 35 + services/IEmailSender.cs | 9 + services/PasswordResetService.cs | 85 + 11 files changed, 2183 insertions(+), 7 deletions(-) create mode 100644 Migrations/20250721174110_AddPasswordResetTable.Designer.cs create mode 100644 Migrations/20250721174110_AddPasswordResetTable.cs create mode 100644 Models/PasswordReset.cs create mode 100644 services/EmailSender.cs create mode 100644 services/IEmailSender.cs create mode 100644 services/PasswordResetService.cs diff --git a/Controllers/AuthController.cs b/Controllers/AuthController.cs index da263d3..e855953 100644 --- a/Controllers/AuthController.cs +++ b/Controllers/AuthController.cs @@ -1,6 +1,7 @@ using Microsoft.AspNetCore.Mvc; using ValuationBackend.Models; using ValuationBackend.Services; +using System.Threading.Tasks; namespace ValuationBackend.Controllers { @@ -9,10 +10,12 @@ namespace ValuationBackend.Controllers public class AuthController : ControllerBase { private readonly IAuthService _authService; + private readonly PasswordResetService _passwordResetService; - public AuthController(IAuthService authService) + public AuthController(IAuthService authService, PasswordResetService passwordResetService) { _authService = authService; + _passwordResetService = passwordResetService; } [HttpPost("login")] @@ -46,14 +49,34 @@ public async Task Logout([FromBody] LogoutRequest request) return Ok(new { msg = "success" }); } - [HttpPost("forgot-password")] - public async Task ForgotPassword([FromBody] ForgotPasswordRequest request) + // --- New Password Reset Endpoints --- + + [HttpPost("request-password-reset")] + public async Task RequestPasswordReset([FromBody] EmailDto dto) { - var result = await _authService.ForgotPasswordAsync(request.Username); - if (!result) - return NotFound(new { msg = "User not found" }); + await _passwordResetService.RequestPasswordResetAsync(dto.Email); + return Ok(new { message = "If the email exists, an OTP has been sent." }); + } - return Ok(new { msg = "success" }); + [HttpPost("verify-otp")] + public async Task VerifyOtp([FromBody] OtpDto dto) + { + var valid = await _passwordResetService.VerifyOtpAsync(dto.Email, dto.Otp); + if (!valid) return BadRequest(new { message = "Invalid or expired OTP." }); + return Ok(new { message = "OTP verified." }); } + + [HttpPost("reset-password")] + public async Task ResetPassword([FromBody] ResetPasswordDto dto) + { + var success = await _passwordResetService.ResetPasswordAsync(dto.Email, dto.Otp, dto.NewPassword); + if (!success) return BadRequest(new { message = "Invalid OTP or email." }); + return Ok(new { message = "Password reset successful." }); + } + + // --- DTOs for password reset --- + public class EmailDto { public string Email { get; set; } } + public class OtpDto { public string Email { get; set; } public string Otp { get; set; } } + public class ResetPasswordDto { public string Email { get; set; } public string Otp { get; set; } public string NewPassword { get; set; } } } } diff --git a/Data/AppDbContext.cs b/Data/AppDbContext.cs index 2449d1a..fb7d738 100644 --- a/Data/AppDbContext.cs +++ b/Data/AppDbContext.cs @@ -62,6 +62,8 @@ public AppDbContext(DbContextOptions options) public DbSet PropertyCategories { get; set; } + public DbSet PasswordResets { get; set; } + protected override void OnModelCreating(ModelBuilder modelBuilder) { base.OnModelCreating(modelBuilder); diff --git a/Migrations/20250428193956_InitialCreate.cs b/Migrations/20250428193956_InitialCreate.cs index 5ce4d63..8d21868 100644 --- a/Migrations/20250428193956_InitialCreate.cs +++ b/Migrations/20250428193956_InitialCreate.cs @@ -27,6 +27,22 @@ protected override void Up(MigrationBuilder migrationBuilder) { table.PrimaryKey("PK_RatingRequests", x => x.Id); }); + + migrationBuilder.CreateTable( + name: "PasswordResets", + columns: table => new + { + Id = table.Column(nullable: false) + .Annotation("SqlServer:Identity", "1, 1"), + Email = table.Column(nullable: false), + Otp = table.Column(nullable: false), + ExpiresAt = table.Column(nullable: false), + Used = table.Column(nullable: false, defaultValue: false) + }, + constraints: table => + { + table.PrimaryKey("PK_PasswordResets", x => x.Id); + }); } /// diff --git a/Migrations/20250721174110_AddPasswordResetTable.Designer.cs b/Migrations/20250721174110_AddPasswordResetTable.Designer.cs new file mode 100644 index 0000000..46b5169 --- /dev/null +++ b/Migrations/20250721174110_AddPasswordResetTable.Designer.cs @@ -0,0 +1,1919 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using ValuationBackend.Data; + +#nullable disable + +namespace ValuationBackend.Migrations +{ + [DbContext(typeof(AppDbContext))] + [Migration("20250721174110_AddPasswordResetTable")] + partial class AddPasswordResetTable + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "9.0.5") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("LandAquisitionMasterFile", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("MasterFileNo") + .HasColumnType("integer"); + + b.Property("MasterFilesRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanType") + .IsRequired() + .HasColumnType("text"); + + b.Property("RequestingAuthorityReferenceNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Status") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("LandAquisitionMasterFiles"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Asset", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNo") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasColumnType("integer"); + + b.Property("IsRatingCard") + .HasColumnType("boolean"); + + b.Property("Owner") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("RdSt") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("RequestId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Ward") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.HasKey("Id"); + + b.HasIndex("RequestId"); + + b.ToTable("Assets"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetDivision", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Area") + .HasColumnType("numeric"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("LandType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("NewAssetNo") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("AssetDivisions"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetNumberChange", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ChangedDate") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfChange") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasMaxLength(255) + .HasColumnType("character varying(255)"); + + b.Property("FieldSize") + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("FieldType") + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("NewAssetNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("OldAssetNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Reason") + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("AssetNumberChanges"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNumber") + .HasColumnType("text"); + + b.Property("ConstructedBy") + .HasColumnType("text"); + + b.Property("Cost") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("FloorAreaSQFT") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerSQFT") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("YearOfConstruction") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("BuildingRatesLA"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccessCategory") + .IsRequired() + .HasColumnType("text"); + + b.Property("AccessCategoryDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquiredExtent") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquiringOfficerSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquisitionName") + .IsRequired() + .HasColumnType("text"); + + b.Property("AssessmentNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("AtLotNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("AtPlanNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryBottom") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryEast") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryNorth") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundarySouth") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryWest") + .IsRequired() + .HasColumnType("text"); + + b.Property("BuildingDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("BuildingInfo") + .IsRequired() + .HasColumnType("text"); + + b.Property("ChiefValuerRepresentativeSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfSection3BA") + .IsRequired() + .HasColumnType("text"); + + b.Property("DatePrepared") + .IsRequired() + .HasColumnType("text"); + + b.Property("DepthOfLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("DescriptionOfLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("DetailsOfBusiness") + .IsRequired() + .HasColumnType("text"); + + b.Property("Frontage") + .IsRequired() + .HasColumnType("text"); + + b.Property("GramasewakaSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("LandUseDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("LandUseType") + .IsRequired() + .HasColumnType("text"); + + b.Property("LevelWithAccess") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("NameOfTheLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("NameOfTheVillage") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionsDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionsInfo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlantationDetails") + .IsRequired() + .HasColumnType("text"); + + b.Property("PpCadLotNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("PpCadNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("RoadName") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("ConditionReports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.DomesticRatingCard", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Access") + .HasColumnType("text"); + + b.Property("Age") + .HasColumnType("integer"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("Condition") + .HasColumnType("text"); + + b.Property("Conveniences") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("Floor") + .HasColumnType("text"); + + b.Property("NewNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("Notes") + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .IsRequired() + .HasColumnType("text"); + + b.Property("ParkingSpace") + .HasColumnType("text"); + + b.Property("Plantations") + .HasColumnType("text"); + + b.Property("PropertySubCategory") + .HasColumnType("text"); + + b.Property("PropertyType") + .HasColumnType("text"); + + b.Property("RentPM") + .HasColumnType("numeric"); + + b.Property("RoadName") + .HasColumnType("text"); + + b.Property("SelectWalls") + .HasColumnType("text"); + + b.Property("SuggestedRate") + .HasColumnType("numeric"); + + b.Property("Terms") + .HasColumnType("text"); + + b.Property("TsBop") + .HasColumnType("text"); + + b.Property("WardNumber") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("DomesticRatingCards"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ImageData", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ImageBase64") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.ToTable("ImageData"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionBuilding", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AgeYears") + .HasColumnType("text"); + + b.Property("BathroomToilet") + .HasColumnType("text"); + + b.Property("BathroomToiletDoorsFittings") + .HasColumnType("text"); + + b.Property("BuildingCategory") + .HasColumnType("text"); + + b.Property("BuildingClass") + .HasColumnType("text"); + + b.Property("BuildingConditions") + .HasColumnType("text"); + + b.Property("BuildingId") + .HasColumnType("text"); + + b.Property("BuildingName") + .HasColumnType("text"); + + b.Property("Ceiling") + .HasColumnType("text"); + + b.Property("Condition") + .HasColumnType("text"); + + b.Property("Conveniences") + .HasColumnType("text"); + + b.Property("Design") + .HasColumnType("text"); + + b.Property("DetailOfBuilding") + .HasColumnType("text"); + + b.Property("Door") + .HasColumnType("text"); + + b.Property("ExpectedLifePeriodYears") + .HasColumnType("text"); + + b.Property("FloorFinisher") + .HasColumnType("text"); + + b.Property("FloorStructure") + .HasColumnType("text"); + + b.Property("FoundationStructure") + .HasColumnType("text"); + + b.Property("HandRail") + .HasColumnType("text"); + + b.Property("InspectionReportId") + .HasColumnType("integer"); + + b.Property("NatureOfConstruction") + .HasColumnType("text"); + + b.Property("NoOfFloorsAboveGround") + .HasColumnType("text") + .HasColumnName("NoOfFloorsAboveGround"); + + b.Property("NoOfFloorsBelowGround") + .HasColumnType("text") + .HasColumnName("NoOfFloorsBelowGround"); + + b.Property("OtherDoors") + .HasColumnType("text"); + + b.Property("PantryCupboard") + .HasColumnType("text"); + + b.Property("ParkingSpace") + .HasColumnType("text"); + + b.Property("RoofFinisher") + .HasColumnType("text"); + + b.Property("RoofFrame") + .HasColumnType("text"); + + b.Property("RoofMaterial") + .HasColumnType("text"); + + b.Property("Services") + .HasColumnType("text"); + + b.Property("Structure") + .HasColumnType("text"); + + b.Property("WallFinisher") + .HasColumnType("text"); + + b.Property("WallStructure") + .HasColumnType("text"); + + b.Property("Window") + .HasColumnType("text"); + + b.Property("WindowProtection") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("InspectionReportId"); + + b.ToTable("InspectionBuildings"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.Property("InspectionReportId") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("InspectionReportId")); + + b.Property("DetailsOfAssestsInventoryItems") + .HasColumnType("text") + .HasColumnName("DetailsOfAssestsInventoryItems"); + + b.Property("DetailsOfBusiness") + .HasColumnType("text"); + + b.Property("District") + .HasColumnType("text"); + + b.Property("DsDivision") + .HasColumnType("text"); + + b.Property("GnDivision") + .HasColumnType("text"); + + b.Property("InspectionDate") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionDetails") + .HasColumnType("text"); + + b.Property("OtherInformation") + .HasColumnType("text"); + + b.Property("Province") + .HasColumnType("text"); + + b.Property("Remark") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("InspectionReportId"); + + b.HasIndex("ReportId"); + + b.ToTable("InspectionReports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMBuildingRates", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNumber") + .HasColumnType("text"); + + b.Property("ConstructedBy") + .HasColumnType("text"); + + b.Property("Cost") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("FloorArea") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerSQFT") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("YearOfConstruction") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMBuildingRates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMPastValuation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("DateOfValuation") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FileNo_GnDivision") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanOfParticulars") + .HasColumnType("text"); + + b.Property("PurposeOfValuation") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMPastValuations"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMRentalEvidence", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNo") + .HasColumnType("text"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("FloorRate") + .HasColumnType("text"); + + b.Property("HeadOfTerms") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePer") + .HasColumnType("text"); + + b.Property("RatePerMonth") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMRentalEvidences"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMSalesEvidence", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNumber") + .HasColumnType("text"); + + b.Property("Consideration") + .HasColumnType("text"); + + b.Property("DeedAttestedNumber") + .HasColumnType("text"); + + b.Property("DeedNumber") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("LandRegistryReferences") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("LotNumber") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("NotaryName") + .HasColumnType("text"); + + b.Property("PlanDate") + .HasColumnType("text"); + + b.Property("PlanNumber") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Road") + .HasColumnType("text"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("Vendor") + .HasColumnType("text"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMSalesEvidences"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LandMiscellaneousMasterFile", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Lots") + .HasColumnType("integer"); + + b.Property("MasterFileNo") + .HasColumnType("integer"); + + b.Property("PlanNo") + .HasColumnType("text"); + + b.Property("PlanType") + .HasColumnType("text"); + + b.Property("RequestingAuthorityReferenceNo") + .HasColumnType("text"); + + b.Property("Status") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("LandMiscellaneousMasterFiles"); + }); + + modelBuilder.Entity("ValuationBackend.Models.MasterDataItem", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Category") + .IsRequired() + .HasColumnType("text"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("MasterDataItems"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PasswordReset", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Email") + .IsRequired() + .HasColumnType("text"); + + b.Property("ExpiresAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Otp") + .IsRequired() + .HasColumnType("text"); + + b.Property("Used") + .HasColumnType("boolean"); + + b.HasKey("Id"); + + b.ToTable("PasswordResets"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfValuation") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FileNoGNDivision") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanOfParticulars") + .HasColumnType("text"); + + b.Property("PurposeOfValuation") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("PastValuationsLA"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PropertyCategory", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Name") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("PropertyCategories"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RatingRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("LocalAuthority") + .IsRequired() + .HasColumnType("text"); + + b.Property("RatingReferenceNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("RequestType") + .IsRequired() + .HasColumnType("text"); + + b.Property("Status") + .IsRequired() + .HasColumnType("text"); + + b.Property("YearOfRevision") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.ToTable("RatingRequests"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Reconciliation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("NewNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("ObsoleteNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("StreetName") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("Reconciliations"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNo") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("FloorRateSQFT") + .HasColumnType("text"); + + b.Property("HeadOfTerms") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerMonth") + .HasColumnType("text"); + + b.Property("RatePerSqft") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("RentalEvidencesLA", (string)null); + }); + + modelBuilder.Entity("ValuationBackend.Models.Report", b => + { + b.Property("ReportId") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("ReportId")); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportType") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Timestamp") + .HasColumnType("timestamp with time zone"); + + b.HasKey("ReportId"); + + b.ToTable("Reports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Request", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("LocalAuthority") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RatingReferenceNo") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RequestTypeId") + .HasColumnType("integer"); + + b.Property("Status") + .HasColumnType("boolean"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("YearOfRevision") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("RequestTypeId"); + + b.ToTable("Requests"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RequestType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Code") + .IsRequired() + .HasMaxLength(2) + .HasColumnType("character varying(2)"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("RequestTypes"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNumber") + .HasColumnType("text"); + + b.Property("Consideration") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DeedAttestedNumber") + .HasColumnType("text"); + + b.Property("DeedNumber") + .HasColumnType("text"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FloorRate") + .HasColumnType("text"); + + b.Property("LandRegistryReferences") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("LotNumber") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("NotaryName") + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("PlanDate") + .HasColumnType("text"); + + b.Property("PlanNumber") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Road") + .HasColumnType("text"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Vendor") + .HasColumnType("text"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("SalesEvidencesLA", (string)null); + }); + + modelBuilder.Entity("ValuationBackend.Models.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssignedDivision") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpEmail") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpId") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpName") + .IsRequired() + .HasColumnType("text"); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("bytea"); + + b.Property("PasswordSalt") + .IsRequired() + .HasColumnType("bytea"); + + b.Property("Position") + .IsRequired() + .HasColumnType("text"); + + b.Property("ProfilePicture") + .HasColumnType("bytea"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("ValuationBackend.Models.UserTask", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssignedDate") + .HasColumnType("timestamp with time zone"); + + b.Property("IsCompleted") + .HasColumnType("boolean"); + + b.Property("LandAcquisitionId") + .HasColumnType("integer"); + + b.Property("LandMiscellaneousId") + .HasColumnType("integer"); + + b.Property("ReferenceNumber") + .HasColumnType("text"); + + b.Property("RequestId") + .HasColumnType("integer"); + + b.Property("TaskType") + .IsRequired() + .HasColumnType("text"); + + b.Property("UserId") + .HasColumnType("integer"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.Property("WorkItemDescription") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("UserId"); + + b.ToTable("UserTasks"); + }); + + modelBuilder.Entity("ValuationBackend.Models.iteration2.RatingCards.OfficesRatingCard", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccessType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("Age") + .HasColumnType("integer"); + + b.Property("AssessmentNumber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("BuildingSelection") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CeilingHeight") + .HasColumnType("decimal(18,2)"); + + b.Property("Condition") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Conveniences") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("CreatedBy") + .IsRequired() + .HasColumnType("text"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("FloorNumber") + .HasColumnType("integer"); + + b.Property("FloorType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("LocalAuthority") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("LocalAuthorityCode") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("NewNumber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Notes") + .IsRequired() + .HasMaxLength(2000) + .HasColumnType("character varying(2000)"); + + b.Property("ObsoleteNumber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Occupier") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("OfficeGrade") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("OfficeSuite") + .IsRequired() + .HasMaxLength(1000) + .HasColumnType("character varying(1000)"); + + b.Property("Owner") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("ParkingSpace") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("PropertySubCategory") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("PropertyType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RentPM") + .HasColumnType("decimal(18,2)"); + + b.Property("RoadName") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("SuggestedRate") + .HasColumnType("decimal(18,2)"); + + b.Property("Terms") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("TotalArea") + .HasColumnType("decimal(18,2)"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("UpdatedBy") + .HasColumnType("text"); + + b.Property("UsableFloorArea") + .HasColumnType("decimal(18,2)"); + + b.Property("WallType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("WardNumber") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("OfficesRatingCards"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Asset", b => + { + b.HasOne("ValuationBackend.Models.Request", "Request") + .WithMany() + .HasForeignKey("RequestId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Request"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetDivision", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.DomesticRatingCard", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionBuilding", b => + { + b.HasOne("ValuationBackend.Models.InspectionReport", "InspectionReport") + .WithMany("Buildings") + .HasForeignKey("InspectionReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("InspectionReport"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMBuildingRates", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMPastValuation", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMRentalEvidence", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMSalesEvidence", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Reconciliation", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Request", b => + { + b.HasOne("ValuationBackend.Models.RequestType", "RequestType") + .WithMany() + .HasForeignKey("RequestTypeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("RequestType"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.UserTask", b => + { + b.HasOne("ValuationBackend.Models.User", "User") + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("User"); + }); + + modelBuilder.Entity("ValuationBackend.Models.iteration2.RatingCards.OfficesRatingCard", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.Navigation("Buildings"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/Migrations/20250721174110_AddPasswordResetTable.cs b/Migrations/20250721174110_AddPasswordResetTable.cs new file mode 100644 index 0000000..7025b37 --- /dev/null +++ b/Migrations/20250721174110_AddPasswordResetTable.cs @@ -0,0 +1,39 @@ +using System; +using Microsoft.EntityFrameworkCore.Migrations; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; + +#nullable disable + +namespace ValuationBackend.Migrations +{ + /// + public partial class AddPasswordResetTable : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.CreateTable( + name: "PasswordResets", + columns: table => new + { + Id = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + Email = table.Column(type: "text", nullable: false), + Otp = table.Column(type: "text", nullable: false), + ExpiresAt = table.Column(type: "timestamp with time zone", nullable: false), + Used = table.Column(type: "boolean", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_PasswordResets", x => x.Id); + }); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable( + name: "PasswordResets"); + } + } +} diff --git a/Migrations/AppDbContextModelSnapshot.cs b/Migrations/AppDbContextModelSnapshot.cs index abf878b..c149e53 100644 --- a/Migrations/AppDbContextModelSnapshot.cs +++ b/Migrations/AppDbContextModelSnapshot.cs @@ -1007,6 +1007,33 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.ToTable("MasterDataItems"); }); + modelBuilder.Entity("ValuationBackend.Models.PasswordReset", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Email") + .IsRequired() + .HasColumnType("text"); + + b.Property("ExpiresAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Otp") + .IsRequired() + .HasColumnType("text"); + + b.Property("Used") + .HasColumnType("boolean"); + + b.HasKey("Id"); + + b.ToTable("PasswordResets"); + }); + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLA", b => { b.Property("Id") diff --git a/Models/PasswordReset.cs b/Models/PasswordReset.cs new file mode 100644 index 0000000..9029ecc --- /dev/null +++ b/Models/PasswordReset.cs @@ -0,0 +1,18 @@ +using System; +using System.ComponentModel.DataAnnotations; + +namespace ValuationBackend.Models +{ + public class PasswordReset + { + [Key] + public int Id { get; set; } + [Required] + public string Email { get; set; } + [Required] + public string Otp { get; set; } + [Required] + public DateTime ExpiresAt { get; set; } + public bool Used { get; set; } = false; + } +} \ No newline at end of file diff --git a/Program.cs b/Program.cs index 71407b2..11848c7 100644 --- a/Program.cs +++ b/Program.cs @@ -7,6 +7,7 @@ using ValuationBackend.Extensions; using ValuationBackend.Models; using DotNetEnv; +using ValuationBackend.Services; // Load environment variables from .env file Env.Load(); @@ -32,6 +33,8 @@ // Register repositories and services using extension methods builder.Services.AddRepositories(); builder.Services.AddServices(); +builder.Services.AddScoped(); +builder.Services.AddScoped(); // Configure PostgreSQL diff --git a/services/EmailSender.cs b/services/EmailSender.cs new file mode 100644 index 0000000..d46390e --- /dev/null +++ b/services/EmailSender.cs @@ -0,0 +1,35 @@ +using System.Net; +using System.Net.Mail; +using System.Threading.Tasks; +using System; + +namespace ValuationBackend.Services +{ + public class EmailSender : IEmailSender + { + public async Task SendAsync(string to, string subject, string body) + { + // Read from environment variables (set in .env or your deployment environment) + var gmailAddress = Environment.GetEnvironmentVariable("GMAIL_ADDRESS"); + var gmailAppPassword = Environment.GetEnvironmentVariable("GMAIL_APP_PASSWORD"); + + var smtpClient = new SmtpClient("smtp.gmail.com") + { + Port = 587, + Credentials = new NetworkCredential(gmailAddress, gmailAppPassword), + EnableSsl = true, + }; + + var mailMessage = new MailMessage + { + From = new MailAddress(gmailAddress, "Valuation Department"), + Subject = subject, + Body = body, + IsBodyHtml = false, + }; + mailMessage.To.Add(to); + + await smtpClient.SendMailAsync(mailMessage); + } + } +} \ No newline at end of file diff --git a/services/IEmailSender.cs b/services/IEmailSender.cs new file mode 100644 index 0000000..640cc53 --- /dev/null +++ b/services/IEmailSender.cs @@ -0,0 +1,9 @@ +using System.Threading.Tasks; + +namespace ValuationBackend.Services +{ + public interface IEmailSender + { + Task SendAsync(string to, string subject, string body); + } +} \ No newline at end of file diff --git a/services/PasswordResetService.cs b/services/PasswordResetService.cs new file mode 100644 index 0000000..bb3c227 --- /dev/null +++ b/services/PasswordResetService.cs @@ -0,0 +1,85 @@ +using System; +using System.Linq; +using System.Threading.Tasks; +using Microsoft.EntityFrameworkCore; +using ValuationBackend.Data; +using ValuationBackend.Models; +using ValuationBackend.Services; + +namespace ValuationBackend.Services +{ + public class PasswordResetService + { + private readonly AppDbContext _context; + private readonly IEmailSender _emailSender; + + public PasswordResetService(AppDbContext context, IEmailSender emailSender) + { + _context = context; + _emailSender = emailSender; + } + + public async Task RequestPasswordResetAsync(string email) + { + var user = await _context.Users.FirstOrDefaultAsync(u => u.EmpEmail == email); + if (user == null) return; // Don't reveal user existence + + var otp = GenerateOtp(); + var expiresAt = DateTime.UtcNow.AddMinutes(10); + + var reset = new PasswordReset + { + Email = email, + Otp = otp, + ExpiresAt = expiresAt, + Used = false + }; + _context.PasswordResets.Add(reset); + await _context.SaveChangesAsync(); + + var body = $"Your OTP is: {otp}\nThis OTP will expire in 10 minutes."; + await _emailSender.SendAsync(email, "Your OTP Code", body); + } + + public async Task VerifyOtpAsync(string email, string otp) + { + var reset = await _context.PasswordResets + .Where(r => r.Email == email && !r.Used && r.ExpiresAt > DateTime.UtcNow) + .OrderByDescending(r => r.ExpiresAt) + .FirstOrDefaultAsync(); + + if (reset == null || reset.Otp != otp) return false; + return true; + } + + public async Task ResetPasswordAsync(string email, string otp, string newPassword) + { + var reset = await _context.PasswordResets + .Where(r => r.Email == email && !r.Used && r.ExpiresAt > DateTime.UtcNow) + .OrderByDescending(r => r.ExpiresAt) + .FirstOrDefaultAsync(); + + if (reset == null || reset.Otp != otp) return false; + + var user = await _context.Users.FirstOrDefaultAsync(u => u.EmpEmail == email); + if (user == null) return false; + + // Hash the password using HMACSHA512 + using (var hmac = new System.Security.Cryptography.HMACSHA512()) + { + user.PasswordSalt = hmac.Key; + user.PasswordHash = hmac.ComputeHash(System.Text.Encoding.UTF8.GetBytes(newPassword)); + } + + reset.Used = true; + await _context.SaveChangesAsync(); + return true; + } + + private string GenerateOtp() + { + var random = new Random(); + return random.Next(100000, 999999).ToString(); + } + } +} \ No newline at end of file From e49a9e982e6a6243578e3e4783c9f185943c50d1 Mon Sep 17 00:00:00 2001 From: "abeyweerasd.22" Date: Tue, 22 Jul 2025 01:29:16 +0530 Subject: [PATCH 05/21] Decision Field --- .../iteration2/DecisionFieldController.cs | 36 +++++++++++++++++++ .../iteration2/RatingFileController.cs | 34 ++++++++++++++++++ Data/AppDbContext.cs | 4 ++- Data/DBInitializer.cs | 2 ++ Data/ValuationContext.cs | 13 +++++++ Models/iteration2/DTOs/ObsoleteNumberDto.cs | 5 +++ Models/iteration2/DTOs/streets.cs | 5 +++ Models/iteration2/Decision.cs | 8 +++++ Program.cs | 4 +++ repositories/DecisionFieldRepository.cs | 32 +++++++++++++++++ services/AssetNumberChangeService.cs | 2 +- services/DecisionFieldService.cs | 29 +++++++++++++++ 12 files changed, 172 insertions(+), 2 deletions(-) create mode 100644 Controllers/iteration2/DecisionFieldController.cs create mode 100644 Controllers/iteration2/RatingFileController.cs create mode 100644 Data/ValuationContext.cs create mode 100644 Models/iteration2/DTOs/ObsoleteNumberDto.cs create mode 100644 Models/iteration2/DTOs/streets.cs create mode 100644 Models/iteration2/Decision.cs create mode 100644 repositories/DecisionFieldRepository.cs create mode 100644 services/DecisionFieldService.cs diff --git a/Controllers/iteration2/DecisionFieldController.cs b/Controllers/iteration2/DecisionFieldController.cs new file mode 100644 index 0000000..acef1d2 --- /dev/null +++ b/Controllers/iteration2/DecisionFieldController.cs @@ -0,0 +1,36 @@ +using Microsoft.AspNetCore.Mvc; +using System.Collections.Generic; +using System.Threading.Tasks; +using ValuationBackend.Models.DTOs; +using ValuationBackend.Services; +using ValuationBackend.Data; +using ValuationBackend.Models; +using Microsoft.EntityFrameworkCore; + + +[ApiController] +[Route("api/decision-fields")] +public class DecisionFieldController : ControllerBase +{ + private readonly ValuationContext _context; + + public DecisionFieldController(ValuationContext context) + { + _context = context; + } + + [HttpPost] + public async Task CreateField([FromBody] DecisionField field) + { + _context.DecisionFields.Add(field); + await _context.SaveChangesAsync(); + return Ok(field); + } + + [HttpGet] + public async Task GetAllFields() + { + var fields = await _context.DecisionFields.ToListAsync(); + return Ok(fields); + } +} diff --git a/Controllers/iteration2/RatingFileController.cs b/Controllers/iteration2/RatingFileController.cs new file mode 100644 index 0000000..0123ea2 --- /dev/null +++ b/Controllers/iteration2/RatingFileController.cs @@ -0,0 +1,34 @@ +using Microsoft.AspNetCore.Mvc; + +[ApiController] +[Route("api/{requestType}/ratingfile")] +public class RatingFileController : ControllerBase +{ + // 1. Load all street names + [HttpGet("streets")] + public IActionResult GetStreets(string requestType) + { + var streets = new[] + { + new { id = "S1", name = "Main Street" }, + new { id = "S2", name = "Highway Road" }, + new { id = "S3", name = "Park Avenue" } + }; + + return Ok(new { streets }); + } + + // 2. Load obsolete numbers for selected street + [HttpGet("streets/{streetId}/obsolete-numbers")] + public IActionResult GetObsoleteNumbers(string requestType, string streetId) + { + var obsoleteNumbers = new[] + { + new { id = "O1", number = "101" }, + new { id = "O2", number = "102" }, + new { id = "O3", number = "103" } + }; + + return Ok(new { obsoleteNumbers }); + } +} diff --git a/Data/AppDbContext.cs b/Data/AppDbContext.cs index 2449d1a..024f4ff 100644 --- a/Data/AppDbContext.cs +++ b/Data/AppDbContext.cs @@ -10,7 +10,7 @@ public AppDbContext(DbContextOptions options) : base(options) { } public DbSet RatingRequests { get; set; } - + public DbSet LandMiscellaneousMasterFiles { get; set; } public DbSet Reconciliations { get; set; } @@ -62,6 +62,8 @@ public AppDbContext(DbContextOptions options) public DbSet PropertyCategories { get; set; } + public DbSet DecisionFields { get; set; } + protected override void OnModelCreating(ModelBuilder modelBuilder) { base.OnModelCreating(modelBuilder); diff --git a/Data/DBInitializer.cs b/Data/DBInitializer.cs index 5716f1d..1b569e0 100644 --- a/Data/DBInitializer.cs +++ b/Data/DBInitializer.cs @@ -1913,5 +1913,7 @@ private static void InitializeReconciliations(AppDbContext context) context.SaveChanges(); Console.WriteLine("Reconciliations seeded."); } + + } } diff --git a/Data/ValuationContext.cs b/Data/ValuationContext.cs new file mode 100644 index 0000000..5554fb4 --- /dev/null +++ b/Data/ValuationContext.cs @@ -0,0 +1,13 @@ +using Microsoft.EntityFrameworkCore; +using ValuationBackend.Models; + +namespace ValuationBackend.Data +{ + public class ValuationContext : DbContext + { + public ValuationContext(DbContextOptions options) : base(options) { } + + public DbSet DecisionFields { get; set; } + // ...add other DbSets as needed... + } +} diff --git a/Models/iteration2/DTOs/ObsoleteNumberDto.cs b/Models/iteration2/DTOs/ObsoleteNumberDto.cs new file mode 100644 index 0000000..052669c --- /dev/null +++ b/Models/iteration2/DTOs/ObsoleteNumberDto.cs @@ -0,0 +1,5 @@ +public class ObsoleteNumberDto +{ + public string Id { get; set; } + public string Number { get; set; } +} diff --git a/Models/iteration2/DTOs/streets.cs b/Models/iteration2/DTOs/streets.cs new file mode 100644 index 0000000..0339563 --- /dev/null +++ b/Models/iteration2/DTOs/streets.cs @@ -0,0 +1,5 @@ +public class StreetDto +{ + public string Id { get; set; } + public string Name { get; set; } +} diff --git a/Models/iteration2/Decision.cs b/Models/iteration2/Decision.cs new file mode 100644 index 0000000..96f60eb --- /dev/null +++ b/Models/iteration2/Decision.cs @@ -0,0 +1,8 @@ +public class DecisionField +{ + public int Id { get; set; } + public string Field { get; set; } // E.g., "Zone" + public string FieldDescription { get; set; } // E.g., "Zoning Category" + public string FieldType { get; set; } // E.g., "string", "number" + public int FieldSize { get; set; } // E.g., 255 +} diff --git a/Program.cs b/Program.cs index 71407b2..601871a 100644 --- a/Program.cs +++ b/Program.cs @@ -65,6 +65,10 @@ options.ExpiryMinutes = jwtSettings.ExpiryMinutes; }); +builder.Services.AddDbContext(options => + options.UseNpgsql(builder.Configuration.GetConnectionString("DefaultConnection"))); + + // Add Authentication var key = Encoding.UTF8.GetBytes(jwtSettings.SecretKey); builder.Services.AddAuthentication(options => diff --git a/repositories/DecisionFieldRepository.cs b/repositories/DecisionFieldRepository.cs new file mode 100644 index 0000000..219e17a --- /dev/null +++ b/repositories/DecisionFieldRepository.cs @@ -0,0 +1,32 @@ +using System.Collections.Generic; +using System.Threading.Tasks; +using Microsoft.EntityFrameworkCore; +using ValuationBackend.Data; +using ValuationBackend.Models; + +namespace ValuationBackend.Repositories +{ + public class DecisionFieldRepository + { + private readonly ValuationContext _context; + + public DecisionFieldRepository(ValuationContext context) + { + _context = context; + } + + public async Task> GetAllAsync() + { + return await _context.DecisionFields.ToListAsync(); + } + + public async Task AddAsync(DecisionField field) + { + _context.DecisionFields.Add(field); + await _context.SaveChangesAsync(); + return field; + } + + // Add more methods as needed (e.g., GetByIdAsync, UpdateAsync, DeleteAsync) + } +} diff --git a/services/AssetNumberChangeService.cs b/services/AssetNumberChangeService.cs index 8fe6079..4e5431e 100644 --- a/services/AssetNumberChangeService.cs +++ b/services/AssetNumberChangeService.cs @@ -37,7 +37,7 @@ public async Task> GetByNewAssetNoAsync(string ne public async Task CreateAssetNumberChangeAsync(AssetNumberChange assetNumberChange) { - // Set default values if not provided + // Set default values if not provided assetNumberChange.DateOfChange = DateTime.UtcNow; if (assetNumberChange.ChangedDate == null) { diff --git a/services/DecisionFieldService.cs b/services/DecisionFieldService.cs new file mode 100644 index 0000000..1d705f9 --- /dev/null +++ b/services/DecisionFieldService.cs @@ -0,0 +1,29 @@ +using System.Collections.Generic; +using System.Threading.Tasks; +using ValuationBackend.Models; +using ValuationBackend.Repositories; + +namespace ValuationBackend.Services +{ + public class DecisionFieldService + { + private readonly DecisionFieldRepository _repository; + + public DecisionFieldService(DecisionFieldRepository repository) + { + _repository = repository; + } + + public async Task> GetAllFieldsAsync() + { + return await _repository.GetAllAsync(); + } + + public async Task CreateFieldAsync(DecisionField field) + { + return await _repository.AddAsync(field); + } + + // Add more methods as needed for business logic + } +} From cd83781be533ecafeb947fdd30c5c0c33e3adc55 Mon Sep 17 00:00:00 2001 From: "abeyweerasd.22" Date: Tue, 22 Jul 2025 01:55:20 +0530 Subject: [PATCH 06/21] Decision field changes --- .../iteration2/DecisionFieldController.cs | 36 +++++++++++++++++++ .../iteration2/RatingFileController.cs | 34 ++++++++++++++++++ Data/AppDbContext.cs | 4 ++- Data/ValuationContext.cs | 13 +++++++ Models/iteration2/DTOs/ObsoleteNumberDto.cs | 5 +++ Models/iteration2/DTOs/streets.cs | 5 +++ Models/iteration2/Decision.cs | 8 +++++ Program.cs | 4 +++ repositories/DecisionFieldRepository.cs | 32 +++++++++++++++++ services/AssetNumberChangeService.cs | 2 +- services/DecisionFieldService.cs | 29 +++++++++++++++ 11 files changed, 170 insertions(+), 2 deletions(-) create mode 100644 Controllers/iteration2/DecisionFieldController.cs create mode 100644 Controllers/iteration2/RatingFileController.cs create mode 100644 Data/ValuationContext.cs create mode 100644 Models/iteration2/DTOs/ObsoleteNumberDto.cs create mode 100644 Models/iteration2/DTOs/streets.cs create mode 100644 Models/iteration2/Decision.cs create mode 100644 repositories/DecisionFieldRepository.cs create mode 100644 services/DecisionFieldService.cs diff --git a/Controllers/iteration2/DecisionFieldController.cs b/Controllers/iteration2/DecisionFieldController.cs new file mode 100644 index 0000000..acef1d2 --- /dev/null +++ b/Controllers/iteration2/DecisionFieldController.cs @@ -0,0 +1,36 @@ +using Microsoft.AspNetCore.Mvc; +using System.Collections.Generic; +using System.Threading.Tasks; +using ValuationBackend.Models.DTOs; +using ValuationBackend.Services; +using ValuationBackend.Data; +using ValuationBackend.Models; +using Microsoft.EntityFrameworkCore; + + +[ApiController] +[Route("api/decision-fields")] +public class DecisionFieldController : ControllerBase +{ + private readonly ValuationContext _context; + + public DecisionFieldController(ValuationContext context) + { + _context = context; + } + + [HttpPost] + public async Task CreateField([FromBody] DecisionField field) + { + _context.DecisionFields.Add(field); + await _context.SaveChangesAsync(); + return Ok(field); + } + + [HttpGet] + public async Task GetAllFields() + { + var fields = await _context.DecisionFields.ToListAsync(); + return Ok(fields); + } +} diff --git a/Controllers/iteration2/RatingFileController.cs b/Controllers/iteration2/RatingFileController.cs new file mode 100644 index 0000000..0123ea2 --- /dev/null +++ b/Controllers/iteration2/RatingFileController.cs @@ -0,0 +1,34 @@ +using Microsoft.AspNetCore.Mvc; + +[ApiController] +[Route("api/{requestType}/ratingfile")] +public class RatingFileController : ControllerBase +{ + // 1. Load all street names + [HttpGet("streets")] + public IActionResult GetStreets(string requestType) + { + var streets = new[] + { + new { id = "S1", name = "Main Street" }, + new { id = "S2", name = "Highway Road" }, + new { id = "S3", name = "Park Avenue" } + }; + + return Ok(new { streets }); + } + + // 2. Load obsolete numbers for selected street + [HttpGet("streets/{streetId}/obsolete-numbers")] + public IActionResult GetObsoleteNumbers(string requestType, string streetId) + { + var obsoleteNumbers = new[] + { + new { id = "O1", number = "101" }, + new { id = "O2", number = "102" }, + new { id = "O3", number = "103" } + }; + + return Ok(new { obsoleteNumbers }); + } +} diff --git a/Data/AppDbContext.cs b/Data/AppDbContext.cs index 2449d1a..024f4ff 100644 --- a/Data/AppDbContext.cs +++ b/Data/AppDbContext.cs @@ -10,7 +10,7 @@ public AppDbContext(DbContextOptions options) : base(options) { } public DbSet RatingRequests { get; set; } - + public DbSet LandMiscellaneousMasterFiles { get; set; } public DbSet Reconciliations { get; set; } @@ -62,6 +62,8 @@ public AppDbContext(DbContextOptions options) public DbSet PropertyCategories { get; set; } + public DbSet DecisionFields { get; set; } + protected override void OnModelCreating(ModelBuilder modelBuilder) { base.OnModelCreating(modelBuilder); diff --git a/Data/ValuationContext.cs b/Data/ValuationContext.cs new file mode 100644 index 0000000..5554fb4 --- /dev/null +++ b/Data/ValuationContext.cs @@ -0,0 +1,13 @@ +using Microsoft.EntityFrameworkCore; +using ValuationBackend.Models; + +namespace ValuationBackend.Data +{ + public class ValuationContext : DbContext + { + public ValuationContext(DbContextOptions options) : base(options) { } + + public DbSet DecisionFields { get; set; } + // ...add other DbSets as needed... + } +} diff --git a/Models/iteration2/DTOs/ObsoleteNumberDto.cs b/Models/iteration2/DTOs/ObsoleteNumberDto.cs new file mode 100644 index 0000000..052669c --- /dev/null +++ b/Models/iteration2/DTOs/ObsoleteNumberDto.cs @@ -0,0 +1,5 @@ +public class ObsoleteNumberDto +{ + public string Id { get; set; } + public string Number { get; set; } +} diff --git a/Models/iteration2/DTOs/streets.cs b/Models/iteration2/DTOs/streets.cs new file mode 100644 index 0000000..0339563 --- /dev/null +++ b/Models/iteration2/DTOs/streets.cs @@ -0,0 +1,5 @@ +public class StreetDto +{ + public string Id { get; set; } + public string Name { get; set; } +} diff --git a/Models/iteration2/Decision.cs b/Models/iteration2/Decision.cs new file mode 100644 index 0000000..96f60eb --- /dev/null +++ b/Models/iteration2/Decision.cs @@ -0,0 +1,8 @@ +public class DecisionField +{ + public int Id { get; set; } + public string Field { get; set; } // E.g., "Zone" + public string FieldDescription { get; set; } // E.g., "Zoning Category" + public string FieldType { get; set; } // E.g., "string", "number" + public int FieldSize { get; set; } // E.g., 255 +} diff --git a/Program.cs b/Program.cs index 71407b2..601871a 100644 --- a/Program.cs +++ b/Program.cs @@ -65,6 +65,10 @@ options.ExpiryMinutes = jwtSettings.ExpiryMinutes; }); +builder.Services.AddDbContext(options => + options.UseNpgsql(builder.Configuration.GetConnectionString("DefaultConnection"))); + + // Add Authentication var key = Encoding.UTF8.GetBytes(jwtSettings.SecretKey); builder.Services.AddAuthentication(options => diff --git a/repositories/DecisionFieldRepository.cs b/repositories/DecisionFieldRepository.cs new file mode 100644 index 0000000..219e17a --- /dev/null +++ b/repositories/DecisionFieldRepository.cs @@ -0,0 +1,32 @@ +using System.Collections.Generic; +using System.Threading.Tasks; +using Microsoft.EntityFrameworkCore; +using ValuationBackend.Data; +using ValuationBackend.Models; + +namespace ValuationBackend.Repositories +{ + public class DecisionFieldRepository + { + private readonly ValuationContext _context; + + public DecisionFieldRepository(ValuationContext context) + { + _context = context; + } + + public async Task> GetAllAsync() + { + return await _context.DecisionFields.ToListAsync(); + } + + public async Task AddAsync(DecisionField field) + { + _context.DecisionFields.Add(field); + await _context.SaveChangesAsync(); + return field; + } + + // Add more methods as needed (e.g., GetByIdAsync, UpdateAsync, DeleteAsync) + } +} diff --git a/services/AssetNumberChangeService.cs b/services/AssetNumberChangeService.cs index 8fe6079..4e5431e 100644 --- a/services/AssetNumberChangeService.cs +++ b/services/AssetNumberChangeService.cs @@ -37,7 +37,7 @@ public async Task> GetByNewAssetNoAsync(string ne public async Task CreateAssetNumberChangeAsync(AssetNumberChange assetNumberChange) { - // Set default values if not provided + // Set default values if not provided assetNumberChange.DateOfChange = DateTime.UtcNow; if (assetNumberChange.ChangedDate == null) { diff --git a/services/DecisionFieldService.cs b/services/DecisionFieldService.cs new file mode 100644 index 0000000..1d705f9 --- /dev/null +++ b/services/DecisionFieldService.cs @@ -0,0 +1,29 @@ +using System.Collections.Generic; +using System.Threading.Tasks; +using ValuationBackend.Models; +using ValuationBackend.Repositories; + +namespace ValuationBackend.Services +{ + public class DecisionFieldService + { + private readonly DecisionFieldRepository _repository; + + public DecisionFieldService(DecisionFieldRepository repository) + { + _repository = repository; + } + + public async Task> GetAllFieldsAsync() + { + return await _repository.GetAllAsync(); + } + + public async Task CreateFieldAsync(DecisionField field) + { + return await _repository.AddAsync(field); + } + + // Add more methods as needed for business logic + } +} From f33b60e1c47337359b9d4b2e81755aa50dddc788 Mon Sep 17 00:00:00 2001 From: "abeyweerasd.22" Date: Tue, 22 Jul 2025 02:00:43 +0530 Subject: [PATCH 07/21] changes --- Data/DBInitializer.cs | 1 + .../net8.0/ValuationBackend.assets.cache | Bin 0 -> 90332 bytes ...tionBackend.csproj.AssemblyReference.cache | Bin 0 -> 15931 bytes obj/ValuationBackend.csproj.nuget.dgspec.json | 128 + obj/project.assets.json | 8515 +++++++++++++++++ obj/project.nuget.cache | 150 + 6 files changed, 8794 insertions(+) create mode 100644 obj/Debug/net8.0/ValuationBackend.assets.cache create mode 100644 obj/Debug/net8.0/ValuationBackend.csproj.AssemblyReference.cache create mode 100644 obj/ValuationBackend.csproj.nuget.dgspec.json create mode 100644 obj/project.assets.json create mode 100644 obj/project.nuget.cache diff --git a/Data/DBInitializer.cs b/Data/DBInitializer.cs index 5716f1d..5e98f3f 100644 --- a/Data/DBInitializer.cs +++ b/Data/DBInitializer.cs @@ -1,6 +1,7 @@ using System.Security.Cryptography; using System.Text; using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore; using ValuationBackend.Models; namespace ValuationBackend.Data diff --git a/obj/Debug/net8.0/ValuationBackend.assets.cache b/obj/Debug/net8.0/ValuationBackend.assets.cache new file mode 100644 index 0000000000000000000000000000000000000000..b2d020accca5722481f4495f5433407ef487e213 GIT binary patch literal 90332 zcmd5_378y5b(UpI@_otoAxpAl`BJa;kYpKSyxNtewRKs$!Zuzov$MUsBhAi?r)RX1 zfne@4+yn>#LVyqgggXh4kN^n*LI?>tNC-Jd$bFK81akhbr;gX%RbACHv$plAHR|qH z@BQyp)vMQa9=d1G=-De)ta$L0hrjW{w|(>5!O`!0=FLC&`WGL4=(C^u{_vN!eBqYY z4SwgIADsNw_g1V}4Z0s1yKVYN6gH#jsI*u)HXYR3^I>bcQ7RuR&4Er%j7;nM*?Ox62IXjaze+lWq@yxv{2xjh%vP%_0fGLU zf{XrtDy|ou@|a^9n_MV08-WwrEB&E`wN|Bda;{lg443N7W951?WLDc5Yz?+KthPJm zaF^sTMjVU?PZP#lh2J+9KzO1R)}l(i76sM%{CuT0ACzXIR_x^=g;3v|UP31DVos5bf3iIgWCPN_cQ| zsWlUpn#jOgk$+od{^5o>*U_i}NFDExOn&!LYge3{gIz1YUL?R?jNh8WFh;C(YkhTpn36oZ2mE=v^iq?t_Kl$H3)1s3v3l!sT~dYOM7 z8o-#GsW-Aw=7_n;u1vwa3ik!tOB2jySdB|tsVdx-H^{>(C5L#mfJm;2EV&NXOA1(0 zyN+_HykKdS%ougjF_F|}$7=*gnceGg|1AHarv*uji{WCuc`~;E>O>OV{x}gg-i8#e zjkteacgCyN<|^}Tw7>8q({N|OkgTK9|C5i?4wZS?F`kygyH>!v4!@MQn{d6pcX-*V zV(}+djJABfUI3PbaWn3V)EAv+rq-(yA-T$;qouk*K$J!CM%=%nE1Mc1W-Yr-mV%Uf z)S8;`+U$E%3jEEuU+ktHi3rrQ0?7!IIq+LjNVedU$h%m3T7g0PZ4 zw-)iCSxuJtTZ2Js=rkdc?T?e$GHpme8^$j|8^QIce+5lqqtAn-aHds1h5#9{lP@^> zLbxxSnTpeK!);5U+m8E|cSa_`$x7%COBQ%mvUa2Z-HQ9AE&(-~^;W%HuSU~55C9LG zT~{&}56L9lNIM0l+wedUaR4ArW=S96i>{exg`c1@a-wU zPsV+-OCuI8YuQ3}hkzriz*BJlOm8^yOJOkB9t^2Wlu-yiO<5FT_)NG{2p`2SW!^4a z4|@w=s?>&u0_LSg&|$T8x*5*#PhtAD)1lCPaT>Fu8WU*71)AOX9d)3oHRhv-JK?ob zpPJtT@pGQQQUH8A{=as7eUmZRlk>)JZmZ?>>%gLSU1z z)ZMth$AK+spgUUrRrIpy?`b@q zpN~JE+4nqIev;9%4`@6ldXDCRKyy%_IfP%AJIhBiAJ)k6YkRl>p^J)Rx;KUCFz(x~ zoM0MfE!3v(_(G75OmIY#DMVAaf5?TX(*cIgCwNfmJDavt&F#~ouWYo@fUk_Z*;s>f zM97vk@~OBl`N>ApQtk9aMKM>svtdoX%EC^EEh~N*SX9;Y@qpDSw=$ z7^f5*$qE7EJ$MulFB|r6^iTf@r)T&cNWT`Ch zZJpA^K}}H#j-(`z$T~BFd#8`>@a1_$g9YfJv0>R}#L`K_(UenYW^o_-mDl-deWp~c zJksgru-HV^;XRz1BM4In=5X)X>z_anluK1~a+feLRt(FSOvh2pr%)~6-WA)6a-0lV zJ0T$TCmTLFM0rVu(IN&!7cvJ_5rAYIcog@pUUdnmZnKCgB@+j^tYazVtGJ){D-@MF z{OMu?fe#ID+2pEH0l8zEoMTu_VW{EW)43-x1dmi2a}^K2n!@t5O5-jh8S#e+4t52p|`aqsC~69~Mba#=bL1`LcjG>=laTDYI|D>2nd?O~fi zRQRzEL_8caRT=b`r*L9Q?Sr#HDcXIOkYL9 z{up8k_JWYhJt^cqf?o>MpM}e_hLT*LZ!#v`oafIL7-U2C9Nc>be}o~bmycmU)Ry(i zMUeWF9a?UIA4*AouD|s942^-t9ac{12V>e!FBPkYkEWzQ5BHuyH$Hzw;A<1Eyz*g1 z$~Av}O7;tI@B9Sm1Q1#_8z;8GP~i-N!A1d?HC~uP^rEg1xeKKUk-2QXIECmXxPOjc zy+qR$hn!I$|F>AGVM0#R!%i~gVZmd6Cne9lm!^=t4ELTN2+cM+3>G^d2!mONp^Ht2 zj!S*HkopSzlD~K*F4uT(B+887hOb01vA|}C3;=U!`C)-Y`i)oNzT%lT0?PtsQJ^uk z0a3o=u%O@Dq30HPbqd96aDSp0iVD7moAm~!a2>Cd(`aZ?0lu&4!(Mn&31*^`Y*HlS zpkA8-^*Y=;2c%N@ltLAVQd6nT)tigCvAPqf&|pHd;^1GO0{;fwd$!2}BWA!YhE05l z+A=nS@PJ6balA2w<417+3fG{4Fk%$qn;xSXLAiOd(W=ikOO1t-L8&@l$J2#HD=-x- zOiBi0oWZDKz=6Ig1@z6hcaEFo0>uoU`fScup{f{Wn7c)C4)QH2kU!e9HQj#R0n_aA z-gJTB*!?;|rrA>H5 zlfh9@{e+9T;|#+`7={9qjgl6KK?F2)Ji=uB*zXs@bDv5XFlZlT(EO)YB#>!H)X7#P zo6L|t#vm1#4{pP>7|paR)miWCW1#j=?xLhY{O?{2M{vu1oWXR)N0ySsOxFjPEL%Ca zcWV*g@{-W6`lko-cfS*4Z_ii=xYMS!NMFF6-V=XJTXciodWdb{;xXPG9%oibot2M!{ay1x@PS(otXYL&NPolV-QN%S}Ev})r zm!{wDt0UsBQ}6bQ_4-|+755MgiuZZel5UVlUsH&_ITRz`cPJYr2n0~ECY{Vc5%4K?M84TUPHVF}sc;=YI#C_MK1FOZ%fMOaU5tuD3=NYCgY-T6syAr!= zj4J7mccNk7lY^jXX`3{&Bw=E9W=d?5l4-iZ#!XFOBu*^TlbjS)keEeCY1Y{|cSd!I z7-BhQ@C%(5aaNzCu4u&!8ibYxmb{^?*Kbr^3Ys zEjp>u0QZWu5HKm0qy_sbGtE+yMwV8r?#xi5|8DY{tVWc3WiKA4kyJ{x;MOfCwvWi} z$DjtG$HO4Er-T%mjH<+JLNc2RXY0)pCNK7t+ek0mE|%C5IuYvYjBkSE$TAVGGZV_8 zJ|Y=3lbHLM5K2_z#(lU*DrWEfGF=^c5VfN)7#t3Uda+WL;|Nwg_QG+G!Wf;P+1rC# z3v*L;Qst}OH7{npyCkya0w%%lC=83S+9z4HXE1ot4hBbptv!|248!gHXV^tfFqPMc znW$9iFELLKrC00BuL3c1lt?z@lVC0Y?=*2qIi$F~m zBa&;3Bs#p}G|3o3&+;OgGX$TB_^a_^b;oB%5uMDzWQ!7rxk^MKwE=~mwL>o?)WnM* z8IG;hf)7<1A*SYZzTVCf&uJPC@w$}VKi3;@e5&=X%4R&L_6upwgD)lOu*asIu8z-ddRhn*JWqzTx z6w<%MPF7n^rb2NdkR^~2>x?2P#>v9rMWn|xI9Ig1fUF_9CatLvMLF&L23+~NCs29QzU^%$_Ae)l`M&p zu^bSlcbf%AOUR_gWQkT9&rCbk36~v2QQV!gDOai-f+LyN#wjLOjq=`j*7SYH&;$P$sDi2|&bqqpY^F!5XZQlp2mEW{79<86s_awv)(DpB%b zFot;`wXhn07s?K5QB^YM<-UVzJ# z_80MdSbsTs^ac)KASBo-`L7lHFS79e44$)&7{;FpH+p(vc7r35-z9?Ir51j_l;mgV zVj74S!b*OZ3x0HO(*Kw7ocBT*)?;=0wqmvl=4S<4%3%}R&*AyaUZ2fLz7%&-cG>uT z9`CL)$F49WW*SMoe?>5&V8R6OSMgkWeOpvQ99dRZ1j}Iy%P-(L^>kn37g_O(t4Yd(|1R^|H4M!?S_mdA#>@VX&?hu&%>zfi>~mPJEyux%&dOgo#zhtWxSi zfX{!uS50DUfmhS(1yCw%Me2c;GpqIt(>sv)ZCYU(17SA2K|mu9;+!gLENcd6Sxfd| z?-mC7CI;HI3ekwU+S%tX*Yj%Q%OM&iUc?a{)_ zvxXsf%=cztIJPnz{*#6(eczLXK^hW}C=z^}_hMnFwlP$$b(*?HB@HDjRVVV5liz6S zmv)`Wa9I{)24n{V;+hm=1ERJ$>1JaShGnO~avOdNv@c1kC@}rrbAfLa7PrY>bhIQ1>yZ&iwBz^kY&ny;u%Q76PD0GdY$A z7#7c^j*wqyFBE3)2bnZi@EB$H)#!E)6o%mG41w$G*MvZgZ+6CUvO&J+&*tNq`u~&h z>Q!$4hXfw_MC!sK-R^n9EK*_?ar(q;p7gTU2}4n4C_L9`Bz72aR)xd}GS7jKNq(I6 zHeq(4sbAFTMjpu(D~s}(3<-PM(}V%32q5$+(bv69n2cjW1}W>gLqc-@5NEEZ#^RZ5 zzK4mY6HdzRb?*{}rOxc&S@;t>hWMC4PdMO(pJoim;^yfN6OxPUR$-gm!0|*3Pv7?_ zVHR&QIiAbYXfKrB_9kKSmzaFdl3(j-ZxAM%?+xM^^pNas_5@*4`JN!2QoG#?gh_pr z+1WFwY^setY}HEdrJzW88Gb&K>0It2_HodRbO*9cylJP6-MT}OY5&5WkTlee#6^(k z84uhhFJ?#{$Gtw7ZTMavo`G+(Gj}GohFYtvmzwKhA?DaHX)hQ0zXHFm@jTJ23uzu} zw=;sxrGfA5;ki6nV(4~H4`zW^vl8Ixai#R`cb;JK-^k=UJJm%NL~_H3#Eui*>-x>} zmEWX$n6}l@LHBO&SXIqz^IIt|SL{sjv6>l^_owD@jL%8Uh;lsGj#`SBs zzKH8fxW0_**KvIX*KgqZDz4we^)+0-h3mI*eH~YyHJA#~eg}y1H27V-Ck=iN z7isYOxcaOCb~4ZdS;aN@1`y?G@CSHL8vG$H(%_r8`mDiRvnLJy2#E4D_!i!i27io; zH24!-eb%7T>Pdq?1)@9+{tWL)gKy&^4gMTgpEWpI>PdsY0HQn%zJvFq!C&Gc4gLyO zpEWpE?@5Ed2BJI-{s!+!gTKW^8vGruK5NjZ_N2kz15us^|A68pdevBLoW9hjCG~cbY?y zRYDOS?e$p^d$d_J}U3&7E$C}ha%?*MR-8iXGQD*VG%{ncPMg!P=v>Y zeOAOC7Zy?ELWd%2g(5sWbj|Lvwd$63BsV-PqRT}NT`m^7d>73QwTToZ_Bm7RQDPBA zE^#PwsZfLmi+xta9xN7708k%cG7p zcr2pMRStEo7V7XA@^z>55=7>1wCRi|*%oTX(DI|G&pfnT=g{vOp&t(|mr*}wm|0Z6 z^$z_u2>p1(xs3WbqtBxHZFJ~&taqHMfJPMq2J9yKOW>RqkhhSx2S%%IP}{h z^y9Jb8<(&B^NE9tsu(y_91tq0>V)o-gqzd@lNkCc~DKWEfjRKFpIe#1gP z9zZ)MeB^$g<%Vc}v2;--M;uCS6H4;1dfAn9Mc74^-0o0vhftCS+s>10EIGNPH>EE= zM(cu7uj(>rUUIi%xj}PL-S#?kn-IG3Xn7ek z%^ocmRqSquV)qEec$mD5irK^DqKfTvD7IfH#^dAHEMIAK#K%RoJK)gnpwNy7#>=jq zH83u!-64l|_X_QJMEv&N^UiuCkiGwzX_h^_$k-MA@l=p}*rDsB(3JUzIJ*9U~IJi1;^UA@BVE_HpH zL)Qm|t~}sgPF=ks?k;tmcIf(ap(~HUms3}-AiPUmpW)E;A)zY|%a>DEueiKRU7zXD zwIp=qk@`EAv3>Oo)w@)8#-VOmsLO-*<;+^I=)Fr_XC1nRLRTKoFQ=|v0ezRc&N+0Q z7rOEg|6R*ijQwN$E)`yIC|nT=^QeFM74`}HyHxn7L*ZjWVg4a-5CL|-_m!TlR#$^9 z{W%jCO(i)C7tK;W2NzAZt^&%J@k?vczKUxR_wRNUwoC2usb*1!}I@dAK)eR)c1)eOhMgE$rkF){ald zThXV{4hF;1YPWih;e3JN0{oJ7FSKB&1H*pDe4_<*<|Uo-Jq-(uz)0dSV;p}ptq;Y7 z71lr!{b_(RS>a*)5`rdv(^mKjp360d5#B$s_7`Vax)wl58QNc*l(`sJS{W*=EhzC= z?mx~TUIOt1@lsp_@iJT{h;2Z0?Vh76&J4~UEz$X-l^V|Xj?W*BchOXbS@U|cU+q0@ zIJT5Zrz{)Cfq}3t;g_(Uz;7BWFB>QEzU(Na40C)UYPECb>GWW*Be<29R)#Vr6o;d7 ze2)lx&l32a?ZEdOynk#C2xmt85DZ5~l*>GR$N}=Xc<_G-HGLPl*lO1#ve#LMvBzxEoAOvvtg zsBxQ)l>k;5&|EHxKJ9o&?)nN`X?IPn-^+pViE``&gU^qhAoy2V;J*U!T{|7=Vq!3H zFdHA;99!CUR)F|@3 zt3YMuRe)ZgayLPo0$b?<5b!V6gdt9aPLWSzx~wunTOsZiAgYTftUI zbw(wzCr(&kid--3FYD`Oiz2UsB1P({#$oz^?f$?I2K@#BT^98lEzn;N=uhkeL6}lE zrIfnaqSPCpQ~{4~%8o^B*Hg{)_&Sw7dnGkbex2ALpZ3n4!0&P;a-Oej8A`wx8A>A!%so6#Q*0D;fj3BL(zU z3(&U%sDB4k5~w;orJJK%7}lKv>uva@qVOaO)^`AFfyl!Gw%491*lQ{QX$xdE8XVOC(2I%)Pt_x$9kBHE>LN)hoG;9ZbIuK(TmB|PuJZyL{6@Lcwo|0LdzI&e7- zmtoep3!F*%9$X}SFRrw7vc`KM)wMlAM=G`t%^YqSH0n`n9uvAAHUv#xhrE)-WXHq= z@DOGhci(Nn{8PZ(x5H_e{CkA_efTAt?YGE(ALKg^YUuCbH4NnefszLF2<0IQ%AW>G zmt$U*!)+MWdsA2sTd=+#SY4ZU?Xjg}h zTj)cOLbX$(`LG4eNAUb!haVH$J5x9LY<+PW-c-ke8yfcBVz6(7s)?a*?RpG~3soCD?OyF)4W@%KS_ zSnTBwzbMC>eUk6anh9LKtA$voRI_l_Yl?EO8Lxn*GxOIV5HlbfJ6b5Pte#5^I zI1U5KMaxbkVuyw>yip48S1ovd6VF|rRI(7%gGQwh;w&GmGRU05Eea_tc}NoR%JenJ z;U5UUWx&Imso%!?;)fVzY^K7reRKj5vrju^pRXJ6P=5Xno_lVXZ#m@1fob=N20p?% z)8rVwr4+v3wcz_bJTLi$Y}q4$GSF0Hba3VJ)1y%WKa+; zVwuB8fUkAgxv1l9h3v3C?q@gXd7l0Or1D_x4=w1viRUkHO=J{>J_RqRRB>)-*hIeq zVv3?zC-&`8i8=5;N&)|t1^6H1xpUOe0=!z8UuZ3b^lxF@`*d0k`%hA^|I`Be&+xo> zX;=(frP)%eWNpD&N!TxF37rfzzAezn!1&J%=(xxE3%qv?L1k@Ak%k`Tv{_c4GNel{ z1s%KfkQA%?-x0`VTl1F&VJ+EJ{2vZP|B3gW9TqX7W;oxj zmYSiCtKy=n=E>`rLKW2*=iyE|OFZ^2f%+BrJsa2e4XCO9{{YXsJkH8q7^fDRVTq3a z;??Fo0+DPb{>y^szwz9+)G0Y-oLW~4tM<=l4QWh}@;v?@$fQyy+ur{*VB@9k|M1>5 zlp$(%>PRlO%Eac8RG*~AJXMO0MS;2XCE(m0oq`+F=krQD_w@9ZqqOW9em~B>I*cq2 zoA)&s>s(x)_EmolJ?+g>Ff`mR{Syp(Gr)OJ z1b>wQ&c}_(02kmn8Q?1$q*axONQ8p>r>t(B053Sum-mlHUh>rG2Ybax=1#p%$6{#*+^@K=pCUWXf#{+sZe^uHdzr2l4IpILtWEp0;A7LbiX z!Ui`$7yMOa;6~h-Y;Y5vr)}^FUmG+R!fLRiZ~?FwKyxdS|5AJ1B;K4-{T7SrTZHNX zekuD0aDCQS_4W)p1lqLzb!*=mg*4CJ%&-;e;IAqHgSau3fFV4m5-^NkGQ$Y2!e+q0 zd*96fo<3 z!;^4hGQ;h7PG)#Ae#s1X;BqeH5+U$>wLVj-RvwAF!Lr{)%GbARl@mD~?0XVylHW+D z0~-B#3Si-{a`AWKhSaIzJC29Fqj*m0?7}apGluJ>t~y>&oux{x&)SRwrAeFJcuv~f zgyS(YIG7k#WEijfd(K{KJ3Mf3Hbz`r}M#g=(iqFpRpLD zN+ZuVzCZB0Ex_*)z`4mihZ3+`L$J_lHDbsk`s2@RY}FTZ0Lk_u8GUj~GoKV@egwbt zmAB7=cE3P-0Kc-hyH=x%(r!bWZ(tv=2Q6R^39#I>AM~u7@*CW{JKo`Zy6l{n`IGLP zzt^JjVWILQer5iAVA)kRW?`Q-p0a3sL}>g}p)t9vH+yPq?*1=T=j-T`T3D1b5mnYA zg3dZ(Rj^-Xqd-e=M7excn1Lc6Eo_btn$ox^SPqTYiR^`?b-+?^~} z<{1lVUo!9M7VVxPw0j7@vNi2(c&CinbE)szu5xXx)6p)y%QFEGe^nz}!i}ksoxyWz zWO;VIyr0<^(oz{4(t2I`$JxL0N^28PuCT3l@DULLc6OJJ0ON?Jt)jj(*k1p_LqyAW+#y?=4HOt}BWp@q>e$&JAHH%_(p%{06@98PaPHfw{ zvm7>CmAOi})WW30emM90!E}r<<)!m&snXf7sQR!$Rp-ulxq0YP)mTa$d09l$rbW|8 zXv*7w69uLR$XdszFsOiWrdeOYOdc6D(n{jV&gXJGATMi~n$tit2Ix@TA@tcn-?-^i%-L@>FamoJ{a%1C*z5iiI-pBs&4Tg2Q) z&eWSHuI}uxc+R0xYhj`$6y1O>`vH7*%J~o&P#Mrks9FrOThZV*) z0WVxTz4`J~B; z{&2D0JUQgcyhBcGH=5b<&3jhGoA*fT%W8;+tRS-bg2hR5mHBpO>M@D%A>$^x!>L6= z0#8cfcxG!u8C-xRvvbpsfNe&T83ZIUe%z&%ivfvd6`5IFcw%!6&e9PhXE8K+cS`6K zBAh+ZUSl*Ao15q|2_pr&>omKGS@M*vlbwnGyad3T(XJoEM%MOZ1b35-Kebhut~gac zh8d+J9-I>iQkFNvIAH*sP9*R)QZcjs?R(EzNh$Efhi~6?p0efHH)hff%e0J&5?`H79H3T-wcR6rd~^b0 zd9Gqvi|W;IQy!0)f)ZUO66uwiShX3>wC4xx$uqRX=vosawSKg-{F4VL9^^KBQ+2qw zEWWMM)Er+-ON_2C2%JLoK!ld9*V~M&I@HAMBEc*%2z|5NVhK88u+GFF7%Nr7+H9#A zZS!TNQV`Q?1k-Yg}_GggF7vB~a*vs5!Zmpi3B(Ghofa_FM(EOqPV$o+YeBi#<1HSSW8J z*MeTk$T1mQj&VnUBPl0^)bj)zIT#zaX(QKXn5aCGggk@knQj(yGB`;{ETp@nH+&Pa$nX4bf2oF!qUMe~l$JEaST-kzJ8RnF;xd?RRJ7s5+BYPEVnT6Aiq+myZMGUlTQYo9u@!g&K}k%cx0SC_YwDzPq0=fb?UX)kQ&Lk2 zi07b#M95<6^!8>jJLP1VkZ9=;q&jM$om+q+1)I%61M}dO9`e2;!&bQ{S5iW|DOZf_ zJ-t06L}jR1h)hT#@-@-*C98=;h)zmkw&ZG(?#CX_Xfz^=m06=S0}?3%jYLm#P7{`( zBL*@iNWRc@ET;*xB_X!5M#VJQC295=Wl2ChRR^(L-nBVnL6u#4jT90}AE6({3#W2? zM2eE68<D16wkB76TO*Px$X*6o!+M}%0^|4QZV>Bss?vm>q ztVK0;Q;Hh3utiNz0Cao^;OJ6oCLRL7zH{i)+T}oCWLZadO{qaU*HI_GKZ{QP+FTPE zK_^ngaVWyw4oxF0bWA7h)k?H5UTLDg4r2tX=BVmihUh%NUWP66H z&Sv{r%SuG-;*v=f<5Q7-%~-qIYB$4`<%laa8+s|V*?t0Y0>P=ETR9tY38A0aHrvk~ zPD%jX$}pkBT+>en`)R*P37}g!*W@}>T7DAjXY3{=fNo`_#U&gq`AM*!Y@3t-x|K&u zT*9%sp9K4PvPlV`TY0R`B{X;^wY`FDwx8mflmNPwjp{bhGeT7`J`>eTjhk|hPff^K z-635S|8RYpZ7)%q?MIg;<=(aZ5y{%D@-RYXh z<#?-y(={a@mhMy!S~@*NR;1PA=7_X9UQ-%5Rl>{NvaiR4=iTY_ytb5FyweHWnCx`= zV_Qlt-szfcOm;fGv@InU?{wHUCOe(J+m@1xce-&KlbueFZcE9K&PIhhJOc55(2%*fLGh8WJ|&Y z+M6F+>LGi(V@tvX+8Z2O>LGheV@tvX+M5_#>LGjEVoSmW+8Y&H>LGh;VoSmW+M5wu z>LGjkVN1dV+8YjA>LGiJVN1dV+M5bn>LGg@VM}r+tB0|FxA`R-gKfF3f-M!-)7~7| zQV-eN0b3F-(B1&pQV-cZzb(lwW>|;Ix3Spa@b$KIS&m4n~7R|Do?!a;d8X%2ql zUX7fC$zkTFe49N7%RRmgp@R>%msiv1;5Y8oSUQ++P+rZagWtGUgX&;1#WK;qiFGiY z@NaY-oU-tInqdc10nevlc5qtL?93uOmo4+e5cm#utEV#sx@*(4pbF{ENvy>@cW-;K zRI6aQEM}=R!_`<_IuZ@v@$+axI8n(88DE8IqA?wr0peajDiO4srsTOMoc@SpT;p zxb=Ew5(^=TxiaV7CRPnJS)vCT9M~$H^eeftlsbkj3`DO)QsD$2O~D5f^VzY$1e|Xv zLM&Ifobhf}@39>Z|YV7DTom@NUr;!v5fo$EgO*2N#3an|O5%{sX zZld7J0;y=4*94kUb|x`V8aBBtpOBRa6Jc_>Ff#=6T(*_Je6hY>oGPjHQr_!zesZpf z#j<1u53;oBxON(X#lh}03NR6;#qhahCNc4HPfIph>C@SmOUV2)vmsl0Y0f%HkXFdd zjxCWjuj)?DI%Z`sxmqVJjZLsj5@yz;GONTRwfpQ>}3aC$W>*0{>~$a)DQag$53l27HL4srUfY?5Ut!InO-^LgdU z9rj4_AxDn$b5|i!!i-{;3u3Cgcu#;N7xpL}$QGv_ zf}NT#11CjCkmcGMBO@Z%s5t1;SyRW!4zj4nO-)R%_al=F=4ip4JpLAz5+}p*SjoUo z6Ou%2QWGnpkgF%TFmbx;jrj_)GhpSS0Rt1846($;Aww>N0Z@|+_S$4LeXOd(XqwPw zv?PUGmcrMg>i7$gme;anV6Um}>!4A7Txu=# zLPuQ$l4(fpb)pbj87B-O)>o24rPC7CA%UG!59O?8>c)_4^HUJ>oBT=lW(ri7D;l?@ zWTw|!3J=Z}Qxei_{Z^Gyx_rLgQPywMJ85?F$~=leaT?&0GU_T9l$(yQ-XJt|63Pj8 zy5K0K%xROJ`Q}_XNm{u~H?hz!-o{QwnaodTiAXKko|@lYBMg>iLmwoRTCQ`8Q_F|4 z)M^7LE5~%%)rQ1MI-VSo&6(^|meou7I4Zdgk@zcHsfY4FIcY2AQ#3nCl(1EX1-+GR zwN9Hp{Y`efXv3&#ZBIn3C93^xdBP$#ongyRs0yV z^s#EWrCn6pc;))gJ%U{{!1)byj#ZQH(Okna$EvOFq*5&Va8ldV5}uLQ1;S@_BE-2$ z*gTtSF(FNrI5DjoTkVrD1`@2gGm~OAonY485hd#+GBdMt5+X7NF&;bPQ+SjP${;bT zeiscz8Og}?3U+hpU$Cf ziraL8TM@f3Zraxvxt)`Es(el2X(59g?8KJ`WufifB!W}ND2iYAMoI9yOJ==3gRL7i zrNOX;mpU1)NVZE%QC)GG)|`rDx#o1GG`)e-nVPw54FY-WmhE6SA1|u1XCTe3J8LL@ z(`kO)*<^#ViH+a+=@%LM$kW-nDJM!FWgp3{U-psw`emOqKV={J!eAfsQE=UrA9)B| z|LoI2*FXCt`7!%+UdY{QlKbW9UKPv{!p5(Qn1@IwrVQ9W=xhw=b4W3nHXpm9&Wp%n z!YYU5oVwG9`!NR#x|}crmiCkl4&kSs>gx0p_9j~sYDhX)j0<|k*l0+pB`3N^7ZFj zRT_upJk3*;9J9_{cHJqq7OQl5f|$#0gVRTpK1REBsgB}mwrrQ$II7>^wCYNr&@byJ zRCzRaQ0Tqds4gmA6!yteD|AwHq~Y7$HZ(lKO}cM3X=m0--=PO>drKrmHN6f7pnrG z6sN9?WX9B0wUZy5@X{I+aWeS;pKk#2_lF(1=Wqq4Z6_5=OD;N`or&eW3S~F0IG3Y2 mSG&NdLs4<&lWd9816Z<1s575b%ITt~MO`KBVoJG2aQlC^xPCSO literal 0 HcmV?d00001 diff --git a/obj/Debug/net8.0/ValuationBackend.csproj.AssemblyReference.cache b/obj/Debug/net8.0/ValuationBackend.csproj.AssemblyReference.cache new file mode 100644 index 0000000000000000000000000000000000000000..f6db80920fa6555f8eebd6e9d38fc7243cac261c GIT binary patch literal 15931 zcmds830M=?7G@MgQ9(t;r-GnT%NEI=pooBA5kV@8(gr2T3?UGbkVQaIY^|VmUr}72 zf{1mih;^Z$1+7#>MeBl!J{7HkTU~2i-ppjkB+nrkB79$8!UtLAo=eX8|8wrS=bq^V zI9pg)022d!c+pBoq2wv~DdJ=vMXDA-DxRD#Oy-LqC6BLG$x`@oIi%oGX%ue?l_wDk zcv48ERPm)CUjfqKkNn|5Vdx+VD3JgFJh8>}RkX{m>N*1eV1r)=5O{OH9J`*GFR)(SGl2E@ki9Fp7DSrjpA zq#$GYj^yP~(s@powZ&cIVuB6_SNl~bIX2W!e_#4~^@*wb|B9L}=?2m*r`A;e_@>YO z_}~9^_Ov+EEg$F%f2Xq5r#(53dsqSCxRRdEF|a+wGN~_WF>i{ur*oiMqEag$Un!(k zDfkjk=LoexA{K^18BwxiNa`zqxGW(^6Vf?Q0@d4_2~Q0_0GnwH*yeO^I+bey#&)6Ol!4{igjqLzKdcK$=@a^umn(u-pXZ2PW~(x#jV zs)-#|RvZ*l(6edCNzuk5qWS!!;tdWPpDa3O-N)&04}s`_e48Fc>nQuqF<2X0%Rm;L$3dj2nrIX|N`xhLAW zetr}y21ql(8m90GVzbzMAy>%ZG8uFhlSRa*2}bAy%2cqQL(*wHI)(bN<5MYg-WZuG z98v{Ir{TySIhsK|b`3$ki}ote5g{}7tNAL}7t(Wk%=t%a<#5f>Z$QS8q-u!-n_JI$ zmKbv$+)emOIjpx(rhq7XwJH&ks>DJ*;w+S;G?f72E8tkjf!)%(ITXTgc(`BqE9J0F z0ugZ-Y+dnjX{rEJ9JiKjoNZbi>L*^UngL~%o+Yt2CIr%FK5mv1iY|?=Dt7T%(UAGw ze#Ob~uHW1Czq43W^!jD}hN)S;6L$`|^ZoIDz|(81Y|558ZVhwaIAX`u-u)eZo%QTE zbbU&LRp_!a!XqP-4*Ds6@Y!?U*RJ9h#)4@R_U!%fsM5EgckJ#Tf+u(Uu6%>4^42%t zPp5BFoX{ZxNI(+L*s%VA7XhE zu|;acH3-QfgQF{7E=IXQWf&#L1bDc=T#R$U=Fi+mq1O@58AxaYOh600Z8PM}&w9>8 zY7PBoK_72OZGEJv@VaPxRV4$pj5O3pAW&r_DEKK*noN<51PC4%jsr|$sDseq!Og?b zfS}Ee7H8e`n2BQTh$~GX0d&E@wQ2^r`Pq!XCeRy48?|s-fjyu6DnNiXg)dOT*&CWT zDO(G@zm6>K^Xw~C7!TYH@_?c%ZoZ^QA#a3sV#wT2V~7Hhps501g7Twz}ncB$G9PJ~P^Ep~z_kGw}VAkS|OWOGV^E z2QC_jiR!vO&J9Yhm@hI>Zn)_f#;~-O92hq=2{-)a|2}J!khXz7J4kKL$)pi8$fprF zM$P0%fl_3O41+5QF4RnmFjNR9L~Vg*h=veD3>rftXTDTOAfbIbkzj>sAwnii5R23b z%^vfk9HXT*M28W26A*`sj$>wIYL=4W#P(@%4)bM-qLr3tC)Ttk<-kEFD&`s5jo^|7 z3wOSaE?5-NO*sq-n=e6hQx1bBXeVZDGAW)AFvFDegNP=?vBhPBJ;oU(p+^~;$$SZv zZjwFPiA^b{q$m=ZNCfAvBy*GTn$dVtlAT1wsG(ES(m4je1k9HKQwbS>sohRMo3>NI zkTxY$G{a6D9-RI&4C4UtPK8L?d-Ofcc_M90oA8+X-l;De+#e5T}S$;%V^FKe=o&LMwp7eb=FGtY#}Zh%o%&GUki8 zz=-DU1o|w}po`&70OUX;MFv6={ix5OP+L6S48g?0P%+|&pSOTd{ z@!e;=eRo&ASUpFUd-B!Th=yDqc&p#0p!(;@?jF6y?y7)1UQ~3piYr2Op_X%EcCo^l zKq49SaVBW&PUf(KP8B53IZPHGq_Y?hov>eIHu>FyJ{OXdGHDtlP$8WuO87XFEE&eZ za+4qd+R>uKqXEta*OttoCuzQP5R=lsz4)LqF*IO_VJnExoXu#DJ3maGhy?_l1wlU` zU^30r7K#M*FX=@RKLYY(ww+x!X1*C5!1Ps(n zfHPz5+(RWAX6RI;TjG=69Olator*LmOSBVf6efm@R%Z4}@V_c^|D2qC1urJ>ZZD61y5zI-?%cKA_hmlMVedInDp0R0T77U! z`2qEX+nanlHI;njuwcMw>a~4^qFZazE-$Rf9@o8Z`LW`%Bepj--J1K`CIzk( zPJ0pnM1Q0!4x`45q~d)7lg*%W87w-RmEg^wX{@B*BkpemMyXt+Ox5(JXrV*eSHscI z@!%XEmop$5#i^6#l6Irs25Ym&$k?v#;l7MniRstup4U3WEwcVt%0 zPA|BTyUlA()t0MX)~-XgzYVcp<2pWhK5gAX$C~FpPSgL*k1T!Qem_68cg)alW$~9z z-Wzz}n@m>@^M^#+-=1O_Vs^g{a$1E>o&R3aA+` zy>nm;FQP`G2#r|em*a6b5Agz5O-A8#B_*jvyA8UC{#j@zlG0zF45V6!$dDn_2pN=e zxVtbB;?ZFK5#DGMsTqI+n^t$i>C4MV&#*Oi4M1*{Y3{ej0x9~WUrfPz?MGo!xWefF zCd2-gI_*=9DVfGsCJNNTWC`3~kGI+@)A%A0+F7r2uK^O8B6Y^=^wz^4Bja&Xhz~~& zPe(cKWLN}sf8DzgK4F{Db@tf~PXec}tbBQC=3BR#s2e>-zZ9xYr4DY2t1DhQJ>`9T zp7n+-fK2i<;MA6A&Vp}ug`%Jtcg--b5%1+TA=rZ0T4FrczbJ>^~hcWWiT9eQ$= z5q*&1vMHhWS-YG5-72grn;z2aE>5kE7-S!JoPFu+hH6LmNnS%=2jyi4Z#<6bB7kP9 zR7=$>0KQ?xaggEM0sbM;LCvDEm~4>EU^BShY$lgZ6yl6+FqJw0ehjz>k|LD_obSdl z9}7uw*eeFcV6eLw)*hB>OXPdn9}GOOhIcVzkk#xpTc65K_gR>8$m2sSuiDXfS+D-0H9IbO#mO{FhDLhLEufLGnsU6J`wopPx5v(a<@dQu#XPGq2I?9V$eGq zRzEtVEs?+faJk*L7df>7&U@2er4IEJ_*GW3jU*{=MK<;2xq8WJ z$Kp3DIu9!kuFw9D_1Bpl@~eCH*qqsTR5h`5)a}`S|GlF={PV&GO>b^?$vf^b$rZHo zaXA(pa6R8?uF^j_`9ULXL86WC1utrj>jKa20jD2@IWA(JMRf_FRV^D<{7V!dG^V-< zz%yucnvlz-(%1sJkj7*X0dK6~QJJAsK`9ha%oj=Fj6^JiE5i6|nOY$vxO*Z}BQypd zNWou6qCzGy#ATw?@1#DQ@Cgs4V-i z3U8mfk~P)xjNRPS=UtFl*#as(ApyQE6$C*hm52n!O3D}s^h-;c sDgkmc9YIMM(}ig3OM&m7(?MT*#x%%?3~DX2JYEtS(Huv;O^XHp1%L&{0{{R3 literal 0 HcmV?d00001 diff --git a/obj/ValuationBackend.csproj.nuget.dgspec.json b/obj/ValuationBackend.csproj.nuget.dgspec.json new file mode 100644 index 0000000..a6ce930 --- /dev/null +++ b/obj/ValuationBackend.csproj.nuget.dgspec.json @@ -0,0 +1,128 @@ +{ + "format": 1, + "restore": { + "C:\\VD\\appnew\\ValuationBackend\\ValuationBackend.csproj": {} + }, + "projects": { + "C:\\VD\\appnew\\ValuationBackend\\ValuationBackend.csproj": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "C:\\VD\\appnew\\ValuationBackend\\ValuationBackend.csproj", + "projectName": "ValuationBackend", + "projectPath": "C:\\VD\\appnew\\ValuationBackend\\ValuationBackend.csproj", + "packagesPath": "C:\\Users\\samik\\.nuget\\packages\\", + "outputPath": "C:\\VD\\appnew\\ValuationBackend\\obj\\", + "projectStyle": "PackageReference", + "configFilePaths": [ + "C:\\Users\\samik\\AppData\\Roaming\\NuGet\\NuGet.Config" + ], + "originalTargetFrameworks": [ + "net8.0" + ], + "sources": { + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "projectReferences": {} + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + }, + "restoreAuditProperties": { + "enableAudit": "true", + "auditLevel": "low", + "auditMode": "direct" + }, + "SdkAnalysisLevel": "9.0.200" + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "dependencies": { + "AutoMapper.Extensions.Microsoft.DependencyInjection": { + "target": "Package", + "version": "[12.0.1, )" + }, + "DotNetEnv": { + "target": "Package", + "version": "[3.1.1, )" + }, + "Microsoft.AspNetCore.Authentication.JwtBearer": { + "target": "Package", + "version": "[8.0.0, )" + }, + "Microsoft.AspNetCore.OpenApi": { + "target": "Package", + "version": "[8.0.14, )" + }, + "Microsoft.EntityFrameworkCore": { + "target": "Package", + "version": "[9.0.5, )" + }, + "Microsoft.EntityFrameworkCore.Design": { + "include": "Runtime, Build, Native, ContentFiles, Analyzers, BuildTransitive", + "suppressParent": "All", + "target": "Package", + "version": "[9.0.4, )" + }, + "Npgsql.EntityFrameworkCore.PostgreSQL": { + "target": "Package", + "version": "[9.0.4, )" + }, + "Swashbuckle.AspNetCore": { + "target": "Package", + "version": "[8.1.1, )" + }, + "System.IdentityModel.Tokens.Jwt": { + "target": "Package", + "version": "[8.10.0, )" + } + }, + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "downloadDependencies": [ + { + "name": "Microsoft.AspNetCore.App.Ref", + "version": "[8.0.17, 8.0.17]" + }, + { + "name": "Microsoft.NETCore.App.Host.win-x64", + "version": "[8.0.17, 8.0.17]" + }, + { + "name": "Microsoft.NETCore.App.Ref", + "version": "[8.0.17, 8.0.17]" + }, + { + "name": "Microsoft.WindowsDesktop.App.Ref", + "version": "[8.0.17, 8.0.17]" + } + ], + "frameworkReferences": { + "Microsoft.AspNetCore.App": { + "privateAssets": "none" + }, + "Microsoft.NETCore.App": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.205/PortableRuntimeIdentifierGraph.json" + } + } + } + } +} \ No newline at end of file diff --git a/obj/project.assets.json b/obj/project.assets.json new file mode 100644 index 0000000..24c350f --- /dev/null +++ b/obj/project.assets.json @@ -0,0 +1,8515 @@ +{ + "version": 3, + "targets": { + "net8.0": { + "AutoMapper/12.0.1": { + "type": "package", + "dependencies": { + "Microsoft.CSharp": "4.7.0" + }, + "compile": { + "lib/netstandard2.1/AutoMapper.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.1/AutoMapper.dll": { + "related": ".xml" + } + } + }, + "AutoMapper.Extensions.Microsoft.DependencyInjection/12.0.1": { + "type": "package", + "dependencies": { + "AutoMapper": "[12.0.1]", + "Microsoft.Extensions.Options": "6.0.0" + }, + "compile": { + "lib/netstandard2.1/AutoMapper.Extensions.Microsoft.DependencyInjection.dll": {} + }, + "runtime": { + "lib/netstandard2.1/AutoMapper.Extensions.Microsoft.DependencyInjection.dll": {} + } + }, + "DotNetEnv/3.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Configuration": "1.1.2", + "Microsoft.Extensions.Configuration.Abstractions": "1.1.2", + "NETStandard.Library": "1.6.1", + "Sprache": "2.3.1", + "System.Net.Http": "4.3.4", + "System.Text.RegularExpressions": "4.3.1" + }, + "compile": { + "lib/netstandard1.3/DotNetEnv.dll": {} + }, + "runtime": { + "lib/netstandard1.3/DotNetEnv.dll": {} + } + }, + "Humanizer.Core/2.14.1": { + "type": "package", + "compile": { + "lib/net6.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/Humanizer.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.Authentication.JwtBearer/8.0.0": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.Protocols.OpenIdConnect": "7.0.3" + }, + "compile": { + "lib/net8.0/Microsoft.AspNetCore.Authentication.JwtBearer.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.AspNetCore.Authentication.JwtBearer.dll": { + "related": ".xml" + } + }, + "frameworkReferences": [ + "Microsoft.AspNetCore.App" + ] + }, + "Microsoft.AspNetCore.OpenApi/8.0.14": { + "type": "package", + "dependencies": { + "Microsoft.OpenApi": "1.4.3" + }, + "compile": { + "lib/net8.0/Microsoft.AspNetCore.OpenApi.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.AspNetCore.OpenApi.dll": { + "related": ".xml" + } + }, + "frameworkReferences": [ + "Microsoft.AspNetCore.App" + ] + }, + "Microsoft.Bcl.AsyncInterfaces/7.0.0": { + "type": "package", + "compile": { + "lib/netstandard2.1/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { + "related": ".xml" + } + } + }, + "Microsoft.Build.Framework/17.8.3": { + "type": "package", + "compile": { + "ref/net8.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/_._": { + "related": ".pdb;.xml" + } + } + }, + "Microsoft.Build.Locator/1.7.8": { + "type": "package", + "compile": { + "lib/net6.0/_._": {} + }, + "runtime": { + "lib/net6.0/Microsoft.Build.Locator.dll": {} + }, + "build": { + "build/_._": {} + } + }, + "Microsoft.CodeAnalysis.Analyzers/3.3.4": { + "type": "package", + "build": { + "buildTransitive/Microsoft.CodeAnalysis.Analyzers.props": {}, + "buildTransitive/Microsoft.CodeAnalysis.Analyzers.targets": {} + } + }, + "Microsoft.CodeAnalysis.Common/4.8.0": { + "type": "package", + "dependencies": { + "Microsoft.CodeAnalysis.Analyzers": "3.3.4", + "System.Collections.Immutable": "7.0.0", + "System.Reflection.Metadata": "7.0.0", + "System.Runtime.CompilerServices.Unsafe": "6.0.0" + }, + "compile": { + "lib/net7.0/_._": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.CodeAnalysis.dll": { + "related": ".pdb;.xml" + } + }, + "resource": { + "lib/net7.0/cs/Microsoft.CodeAnalysis.resources.dll": { + "locale": "cs" + }, + "lib/net7.0/de/Microsoft.CodeAnalysis.resources.dll": { + "locale": "de" + }, + "lib/net7.0/es/Microsoft.CodeAnalysis.resources.dll": { + "locale": "es" + }, + "lib/net7.0/fr/Microsoft.CodeAnalysis.resources.dll": { + "locale": "fr" + }, + "lib/net7.0/it/Microsoft.CodeAnalysis.resources.dll": { + "locale": "it" + }, + "lib/net7.0/ja/Microsoft.CodeAnalysis.resources.dll": { + "locale": "ja" + }, + "lib/net7.0/ko/Microsoft.CodeAnalysis.resources.dll": { + "locale": "ko" + }, + "lib/net7.0/pl/Microsoft.CodeAnalysis.resources.dll": { + "locale": "pl" + }, + "lib/net7.0/pt-BR/Microsoft.CodeAnalysis.resources.dll": { + "locale": "pt-BR" + }, + "lib/net7.0/ru/Microsoft.CodeAnalysis.resources.dll": { + "locale": "ru" + }, + "lib/net7.0/tr/Microsoft.CodeAnalysis.resources.dll": { + "locale": "tr" + }, + "lib/net7.0/zh-Hans/Microsoft.CodeAnalysis.resources.dll": { + "locale": "zh-Hans" + }, + "lib/net7.0/zh-Hant/Microsoft.CodeAnalysis.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.CodeAnalysis.CSharp/4.8.0": { + "type": "package", + "dependencies": { + "Microsoft.CodeAnalysis.Common": "[4.8.0]" + }, + "compile": { + "lib/net7.0/_._": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.CodeAnalysis.CSharp.dll": { + "related": ".pdb;.xml" + } + }, + "resource": { + "lib/net7.0/cs/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "cs" + }, + "lib/net7.0/de/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "de" + }, + "lib/net7.0/es/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "es" + }, + "lib/net7.0/fr/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "fr" + }, + "lib/net7.0/it/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "it" + }, + "lib/net7.0/ja/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "ja" + }, + "lib/net7.0/ko/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "ko" + }, + "lib/net7.0/pl/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "pl" + }, + "lib/net7.0/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "pt-BR" + }, + "lib/net7.0/ru/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "ru" + }, + "lib/net7.0/tr/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "tr" + }, + "lib/net7.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "zh-Hans" + }, + "lib/net7.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.CodeAnalysis.CSharp.Workspaces/4.8.0": { + "type": "package", + "dependencies": { + "Humanizer.Core": "2.14.1", + "Microsoft.CodeAnalysis.CSharp": "[4.8.0]", + "Microsoft.CodeAnalysis.Common": "[4.8.0]", + "Microsoft.CodeAnalysis.Workspaces.Common": "[4.8.0]" + }, + "compile": { + "lib/net7.0/_._": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.CodeAnalysis.CSharp.Workspaces.dll": { + "related": ".pdb;.xml" + } + }, + "resource": { + "lib/net7.0/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "cs" + }, + "lib/net7.0/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "de" + }, + "lib/net7.0/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "es" + }, + "lib/net7.0/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "fr" + }, + "lib/net7.0/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "it" + }, + "lib/net7.0/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "ja" + }, + "lib/net7.0/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "ko" + }, + "lib/net7.0/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "pl" + }, + "lib/net7.0/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "pt-BR" + }, + "lib/net7.0/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "ru" + }, + "lib/net7.0/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "tr" + }, + "lib/net7.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "zh-Hans" + }, + "lib/net7.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.CodeAnalysis.Workspaces.Common/4.8.0": { + "type": "package", + "dependencies": { + "Humanizer.Core": "2.14.1", + "Microsoft.Bcl.AsyncInterfaces": "7.0.0", + "Microsoft.CodeAnalysis.Common": "[4.8.0]", + "System.Composition": "7.0.0", + "System.IO.Pipelines": "7.0.0", + "System.Threading.Channels": "7.0.0" + }, + "compile": { + "lib/net7.0/_._": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.CodeAnalysis.Workspaces.dll": { + "related": ".pdb;.xml" + } + }, + "resource": { + "lib/net7.0/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "cs" + }, + "lib/net7.0/de/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "de" + }, + "lib/net7.0/es/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "es" + }, + "lib/net7.0/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "fr" + }, + "lib/net7.0/it/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "it" + }, + "lib/net7.0/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "ja" + }, + "lib/net7.0/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "ko" + }, + "lib/net7.0/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "pl" + }, + "lib/net7.0/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "pt-BR" + }, + "lib/net7.0/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "ru" + }, + "lib/net7.0/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "tr" + }, + "lib/net7.0/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "zh-Hans" + }, + "lib/net7.0/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.CodeAnalysis.Workspaces.MSBuild/4.8.0": { + "type": "package", + "dependencies": { + "Microsoft.Build.Framework": "16.10.0", + "Microsoft.CodeAnalysis.Common": "[4.8.0]", + "Microsoft.CodeAnalysis.Workspaces.Common": "[4.8.0]", + "System.Text.Json": "7.0.3" + }, + "compile": { + "lib/net7.0/_._": { + "related": ".pdb;.runtimeconfig.json;.xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.dll": { + "related": ".pdb;.runtimeconfig.json;.xml" + }, + "lib/net7.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.dll": { + "related": ".BuildHost.pdb;.BuildHost.runtimeconfig.json;.BuildHost.xml;.pdb;.xml" + } + }, + "resource": { + "lib/net7.0/cs/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll": { + "locale": "cs" + }, + "lib/net7.0/de/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll": { + "locale": "de" + }, + "lib/net7.0/es/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll": { + "locale": "es" + }, + "lib/net7.0/fr/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll": { + "locale": "fr" + }, + "lib/net7.0/it/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll": { + "locale": "it" + }, + "lib/net7.0/ja/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll": { + "locale": "ja" + }, + "lib/net7.0/ko/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll": { + "locale": "ko" + }, + "lib/net7.0/pl/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll": { + "locale": "pl" + }, + "lib/net7.0/pt-BR/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll": { + "locale": "pt-BR" + }, + "lib/net7.0/ru/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll": { + "locale": "ru" + }, + "lib/net7.0/tr/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll": { + "locale": "tr" + }, + "lib/net7.0/zh-Hans/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll": { + "locale": "zh-Hans" + }, + "lib/net7.0/zh-Hant/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.CSharp/4.7.0": { + "type": "package", + "compile": { + "ref/netcoreapp2.0/_._": {} + }, + "runtime": { + "lib/netcoreapp2.0/_._": {} + } + }, + "Microsoft.EntityFrameworkCore/9.0.5": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore.Abstractions": "9.0.5", + "Microsoft.EntityFrameworkCore.Analyzers": "9.0.5", + "Microsoft.Extensions.Caching.Memory": "9.0.5", + "Microsoft.Extensions.Logging": "9.0.5" + }, + "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/9.0.5": { + "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/9.0.5": { + "type": "package" + }, + "Microsoft.EntityFrameworkCore.Design/9.0.4": { + "type": "package", + "dependencies": { + "Humanizer.Core": "2.14.1", + "Microsoft.Build.Framework": "17.8.3", + "Microsoft.Build.Locator": "1.7.8", + "Microsoft.CodeAnalysis.CSharp": "4.8.0", + "Microsoft.CodeAnalysis.CSharp.Workspaces": "4.8.0", + "Microsoft.CodeAnalysis.Workspaces.MSBuild": "4.8.0", + "Microsoft.EntityFrameworkCore.Relational": "9.0.4", + "Microsoft.Extensions.Caching.Memory": "9.0.4", + "Microsoft.Extensions.Configuration.Abstractions": "9.0.4", + "Microsoft.Extensions.DependencyModel": "9.0.4", + "Microsoft.Extensions.Logging": "9.0.4", + "Mono.TextTemplating": "3.0.0", + "System.Text.Json": "9.0.4" + }, + "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/9.0.4": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore": "9.0.4", + "Microsoft.Extensions.Caching.Memory": "9.0.4", + "Microsoft.Extensions.Configuration.Abstractions": "9.0.4", + "Microsoft.Extensions.Logging": "9.0.4" + }, + "compile": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": { + "related": ".xml" + } + } + }, + "Microsoft.Extensions.ApiDescription.Server/6.0.5": { + "type": "package", + "build": { + "build/Microsoft.Extensions.ApiDescription.Server.props": {}, + "build/Microsoft.Extensions.ApiDescription.Server.targets": {} + }, + "buildMultiTargeting": { + "buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.props": {}, + "buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.targets": {} + } + }, + "Microsoft.Extensions.Caching.Abstractions/9.0.5": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Primitives": "9.0.5" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "Microsoft.Extensions.Caching.Memory/9.0.5": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Caching.Abstractions": "9.0.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.5", + "Microsoft.Extensions.Logging.Abstractions": "9.0.5", + "Microsoft.Extensions.Options": "9.0.5", + "Microsoft.Extensions.Primitives": "9.0.5" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "Microsoft.Extensions.Configuration/1.1.2": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "1.1.2", + "NETStandard.Library": "1.6.1" + }, + "compile": { + "lib/netstandard1.1/Microsoft.Extensions.Configuration.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.1/Microsoft.Extensions.Configuration.dll": { + "related": ".xml" + } + } + }, + "Microsoft.Extensions.Configuration.Abstractions/9.0.4": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Primitives": "9.0.4" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "Microsoft.Extensions.DependencyInjection/9.0.5": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.5" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/9.0.5": { + "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/net8.0/_._": {} + } + }, + "Microsoft.Extensions.DependencyModel/9.0.4": { + "type": "package", + "dependencies": { + "System.Text.Encodings.Web": "9.0.4", + "System.Text.Json": "9.0.4" + }, + "compile": { + "lib/net8.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyModel.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "Microsoft.Extensions.Logging/9.0.5": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "9.0.5", + "Microsoft.Extensions.Logging.Abstractions": "9.0.5", + "Microsoft.Extensions.Options": "9.0.5" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Logging.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "Microsoft.Extensions.Logging.Abstractions/9.0.5": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.5", + "System.Diagnostics.DiagnosticSource": "9.0.5" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/Microsoft.Extensions.Logging.Abstractions.targets": {} + } + }, + "Microsoft.Extensions.Options/9.0.5": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.5", + "Microsoft.Extensions.Primitives": "9.0.5" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Options.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Options.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/Microsoft.Extensions.Options.targets": {} + } + }, + "Microsoft.Extensions.Primitives/9.0.5": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.Extensions.Primitives.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Primitives.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "Microsoft.IdentityModel.Abstractions/8.10.0": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.IdentityModel.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.IdentityModel.Abstractions.dll": { + "related": ".xml" + } + } + }, + "Microsoft.IdentityModel.JsonWebTokens/8.10.0": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.Tokens": "8.10.0" + }, + "compile": { + "lib/net8.0/Microsoft.IdentityModel.JsonWebTokens.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.IdentityModel.JsonWebTokens.dll": { + "related": ".xml" + } + } + }, + "Microsoft.IdentityModel.Logging/8.10.0": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.Abstractions": "8.10.0" + }, + "compile": { + "lib/net8.0/Microsoft.IdentityModel.Logging.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.IdentityModel.Logging.dll": { + "related": ".xml" + } + } + }, + "Microsoft.IdentityModel.Protocols/7.0.3": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.Logging": "7.0.3", + "Microsoft.IdentityModel.Tokens": "7.0.3" + }, + "compile": { + "lib/net8.0/Microsoft.IdentityModel.Protocols.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.IdentityModel.Protocols.dll": { + "related": ".xml" + } + } + }, + "Microsoft.IdentityModel.Protocols.OpenIdConnect/7.0.3": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.Protocols": "7.0.3", + "System.IdentityModel.Tokens.Jwt": "7.0.3" + }, + "compile": { + "lib/net8.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll": { + "related": ".xml" + } + } + }, + "Microsoft.IdentityModel.Tokens/8.10.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "8.0.0", + "Microsoft.IdentityModel.Logging": "8.10.0" + }, + "compile": { + "lib/net8.0/Microsoft.IdentityModel.Tokens.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.IdentityModel.Tokens.dll": { + "related": ".xml" + } + } + }, + "Microsoft.NETCore.Platforms/1.1.1": { + "type": "package", + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + } + }, + "Microsoft.NETCore.Targets/1.1.3": { + "type": "package", + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + } + }, + "Microsoft.OpenApi/1.6.23": { + "type": "package", + "compile": { + "lib/netstandard2.0/Microsoft.OpenApi.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.OpenApi.dll": { + "related": ".pdb;.xml" + } + } + }, + "Microsoft.Win32.Primitives/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/Microsoft.Win32.Primitives.dll": { + "related": ".xml" + } + } + }, + "Mono.TextTemplating/3.0.0": { + "type": "package", + "dependencies": { + "System.CodeDom": "6.0.0" + }, + "compile": { + "lib/net6.0/_._": {} + }, + "runtime": { + "lib/net6.0/Mono.TextTemplating.dll": {} + }, + "build": { + "buildTransitive/Mono.TextTemplating.targets": {} + } + }, + "NETStandard.Library/1.6.1": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.Win32.Primitives": "4.3.0", + "System.AppContext": "4.3.0", + "System.Collections": "4.3.0", + "System.Collections.Concurrent": "4.3.0", + "System.Console": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Diagnostics.Tools": "4.3.0", + "System.Diagnostics.Tracing": "4.3.0", + "System.Globalization": "4.3.0", + "System.Globalization.Calendars": "4.3.0", + "System.IO": "4.3.0", + "System.IO.Compression": "4.3.0", + "System.IO.Compression.ZipFile": "4.3.0", + "System.IO.FileSystem": "4.3.0", + "System.IO.FileSystem.Primitives": "4.3.0", + "System.Linq": "4.3.0", + "System.Linq.Expressions": "4.3.0", + "System.Net.Http": "4.3.0", + "System.Net.Primitives": "4.3.0", + "System.Net.Sockets": "4.3.0", + "System.ObjectModel": "4.3.0", + "System.Reflection": "4.3.0", + "System.Reflection.Extensions": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Runtime.InteropServices.RuntimeInformation": "4.3.0", + "System.Runtime.Numerics": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Security.Cryptography.X509Certificates": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Text.Encoding.Extensions": "4.3.0", + "System.Text.RegularExpressions": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0", + "System.Threading.Timer": "4.3.0", + "System.Xml.ReaderWriter": "4.3.0", + "System.Xml.XDocument": "4.3.0" + } + }, + "Npgsql/9.0.3": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "8.0.2" + }, + "compile": { + "lib/net8.0/Npgsql.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Npgsql.dll": { + "related": ".xml" + } + } + }, + "Npgsql.EntityFrameworkCore.PostgreSQL/9.0.4": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore": "[9.0.1, 10.0.0)", + "Microsoft.EntityFrameworkCore.Relational": "[9.0.1, 10.0.0)", + "Npgsql": "9.0.3" + }, + "compile": { + "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll": { + "related": ".xml" + } + } + }, + "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "type": "package", + "runtimeTargets": { + "runtimes/debian.8-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "debian.8-x64" + } + } + }, + "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "type": "package", + "runtimeTargets": { + "runtimes/fedora.23-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "fedora.23-x64" + } + } + }, + "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "type": "package", + "runtimeTargets": { + "runtimes/fedora.24-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "fedora.24-x64" + } + } + }, + "runtime.native.System/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0" + }, + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + } + }, + "runtime.native.System.IO.Compression/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0" + }, + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + } + }, + "runtime.native.System.Net.Http/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0" + }, + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + } + }, + "runtime.native.System.Security.Cryptography.Apple/4.3.0": { + "type": "package", + "dependencies": { + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple": "4.3.0" + }, + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + } + }, + "runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "type": "package", + "dependencies": { + "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2", + "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2", + "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2", + "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2", + "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2", + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2", + "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2", + "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2", + "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2", + "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2" + }, + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + } + }, + "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "type": "package", + "runtimeTargets": { + "runtimes/opensuse.13.2-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "opensuse.13.2-x64" + } + } + }, + "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "type": "package", + "runtimeTargets": { + "runtimes/opensuse.42.1-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "opensuse.42.1-x64" + } + } + }, + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple/4.3.0": { + "type": "package", + "runtimeTargets": { + "runtimes/osx.10.10-x64/native/System.Security.Cryptography.Native.Apple.dylib": { + "assetType": "native", + "rid": "osx.10.10-x64" + } + } + }, + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "type": "package", + "runtimeTargets": { + "runtimes/osx.10.10-x64/native/System.Security.Cryptography.Native.OpenSsl.dylib": { + "assetType": "native", + "rid": "osx.10.10-x64" + } + } + }, + "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "type": "package", + "runtimeTargets": { + "runtimes/rhel.7-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "rhel.7-x64" + } + } + }, + "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "type": "package", + "runtimeTargets": { + "runtimes/ubuntu.14.04-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "ubuntu.14.04-x64" + } + } + }, + "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "type": "package", + "runtimeTargets": { + "runtimes/ubuntu.16.04-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "ubuntu.16.04-x64" + } + } + }, + "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "type": "package", + "runtimeTargets": { + "runtimes/ubuntu.16.10-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "ubuntu.16.10-x64" + } + } + }, + "Sprache/2.3.1": { + "type": "package", + "dependencies": { + "System.Globalization": "4.3.0", + "System.Linq": "4.3.0", + "System.Private.Uri": "4.3.2", + "System.Runtime": "4.3.0", + "System.Text.RegularExpressions": "4.3.0" + }, + "compile": { + "lib/netstandard2.1/Sprache.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.1/Sprache.dll": { + "related": ".xml" + } + } + }, + "Swashbuckle.AspNetCore/8.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.ApiDescription.Server": "6.0.5", + "Swashbuckle.AspNetCore.Swagger": "8.1.1", + "Swashbuckle.AspNetCore.SwaggerGen": "8.1.1", + "Swashbuckle.AspNetCore.SwaggerUI": "8.1.1" + }, + "build": { + "build/Swashbuckle.AspNetCore.props": {} + }, + "buildMultiTargeting": { + "buildMultiTargeting/Swashbuckle.AspNetCore.props": {} + } + }, + "Swashbuckle.AspNetCore.Swagger/8.1.1": { + "type": "package", + "dependencies": { + "Microsoft.OpenApi": "1.6.23" + }, + "compile": { + "lib/net8.0/Swashbuckle.AspNetCore.Swagger.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/net8.0/Swashbuckle.AspNetCore.Swagger.dll": { + "related": ".pdb;.xml" + } + }, + "frameworkReferences": [ + "Microsoft.AspNetCore.App" + ] + }, + "Swashbuckle.AspNetCore.SwaggerGen/8.1.1": { + "type": "package", + "dependencies": { + "Swashbuckle.AspNetCore.Swagger": "8.1.1" + }, + "compile": { + "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll": { + "related": ".pdb;.xml" + } + } + }, + "Swashbuckle.AspNetCore.SwaggerUI/8.1.1": { + "type": "package", + "compile": { + "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll": { + "related": ".pdb;.xml" + } + }, + "frameworkReferences": [ + "Microsoft.AspNetCore.App" + ] + }, + "System.AppContext/4.3.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.6/System.AppContext.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.6/System.AppContext.dll": {} + } + }, + "System.Buffers/4.3.0": { + "type": "package", + "dependencies": { + "System.Diagnostics.Debug": "4.3.0", + "System.Diagnostics.Tracing": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Threading": "4.3.0" + }, + "compile": { + "lib/netstandard1.1/_._": {} + }, + "runtime": { + "lib/netstandard1.1/System.Buffers.dll": {} + } + }, + "System.CodeDom/6.0.0": { + "type": "package", + "compile": { + "lib/net6.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.CodeDom.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Collections/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Collections.dll": { + "related": ".xml" + } + } + }, + "System.Collections.Concurrent/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Diagnostics.Tracing": "4.3.0", + "System.Globalization": "4.3.0", + "System.Reflection": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Collections.Concurrent.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.3/System.Collections.Concurrent.dll": {} + } + }, + "System.Collections.Immutable/7.0.0": { + "type": "package", + "compile": { + "lib/net7.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/System.Collections.Immutable.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "System.Composition/7.0.0": { + "type": "package", + "dependencies": { + "System.Composition.AttributedModel": "7.0.0", + "System.Composition.Convention": "7.0.0", + "System.Composition.Hosting": "7.0.0", + "System.Composition.Runtime": "7.0.0", + "System.Composition.TypedParts": "7.0.0" + }, + "compile": { + "lib/netcoreapp2.0/_._": {} + }, + "runtime": { + "lib/netcoreapp2.0/_._": {} + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "System.Composition.AttributedModel/7.0.0": { + "type": "package", + "compile": { + "lib/net7.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/System.Composition.AttributedModel.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "System.Composition.Convention/7.0.0": { + "type": "package", + "dependencies": { + "System.Composition.AttributedModel": "7.0.0" + }, + "compile": { + "lib/net7.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/System.Composition.Convention.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "System.Composition.Hosting/7.0.0": { + "type": "package", + "dependencies": { + "System.Composition.Runtime": "7.0.0" + }, + "compile": { + "lib/net7.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/System.Composition.Hosting.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "System.Composition.Runtime/7.0.0": { + "type": "package", + "compile": { + "lib/net7.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/System.Composition.Runtime.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "System.Composition.TypedParts/7.0.0": { + "type": "package", + "dependencies": { + "System.Composition.AttributedModel": "7.0.0", + "System.Composition.Hosting": "7.0.0", + "System.Composition.Runtime": "7.0.0" + }, + "compile": { + "lib/net7.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/System.Composition.TypedParts.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "System.Console/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.IO": "4.3.0", + "System.Runtime": "4.3.0", + "System.Text.Encoding": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Console.dll": { + "related": ".xml" + } + } + }, + "System.Diagnostics.Debug/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Diagnostics.Debug.dll": { + "related": ".xml" + } + } + }, + "System.Diagnostics.DiagnosticSource/9.0.5": { + "type": "package", + "compile": { + "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "System.Diagnostics.Tools/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.0/System.Diagnostics.Tools.dll": { + "related": ".xml" + } + } + }, + "System.Diagnostics.Tracing/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.5/System.Diagnostics.Tracing.dll": { + "related": ".xml" + } + } + }, + "System.Globalization/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Globalization.dll": { + "related": ".xml" + } + } + }, + "System.Globalization.Calendars/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Globalization": "4.3.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Globalization.Calendars.dll": { + "related": ".xml" + } + } + }, + "System.Globalization.Extensions/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.Globalization": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.InteropServices": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/_._": { + "related": ".xml" + } + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard1.3/System.Globalization.Extensions.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard1.3/System.Globalization.Extensions.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.IdentityModel.Tokens.Jwt/8.10.0": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.JsonWebTokens": "8.10.0", + "Microsoft.IdentityModel.Tokens": "8.10.0" + }, + "compile": { + "lib/net8.0/System.IdentityModel.Tokens.Jwt.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.IdentityModel.Tokens.Jwt.dll": { + "related": ".xml" + } + } + }, + "System.IO/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading.Tasks": "4.3.0" + }, + "compile": { + "ref/netstandard1.5/System.IO.dll": { + "related": ".xml" + } + } + }, + "System.IO.Compression/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.Buffers": "4.3.0", + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.IO": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0", + "runtime.native.System": "4.3.0", + "runtime.native.System.IO.Compression": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.IO.Compression.dll": { + "related": ".xml" + } + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard1.3/System.IO.Compression.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard1.3/System.IO.Compression.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.IO.Compression.ZipFile/4.3.0": { + "type": "package", + "dependencies": { + "System.Buffers": "4.3.0", + "System.IO": "4.3.0", + "System.IO.Compression": "4.3.0", + "System.IO.FileSystem": "4.3.0", + "System.IO.FileSystem.Primitives": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Text.Encoding": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.IO.Compression.ZipFile.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.3/System.IO.Compression.ZipFile.dll": {} + } + }, + "System.IO.FileSystem/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.IO": "4.3.0", + "System.IO.FileSystem.Primitives": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading.Tasks": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.IO.FileSystem.dll": { + "related": ".xml" + } + } + }, + "System.IO.FileSystem.Primitives/4.3.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.IO.FileSystem.Primitives.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.3/System.IO.FileSystem.Primitives.dll": {} + } + }, + "System.IO.Pipelines/9.0.4": { + "type": "package", + "compile": { + "lib/net8.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.IO.Pipelines.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "System.Linq/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0" + }, + "compile": { + "ref/netstandard1.6/System.Linq.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.6/System.Linq.dll": {} + } + }, + "System.Linq.Expressions/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Globalization": "4.3.0", + "System.IO": "4.3.0", + "System.Linq": "4.3.0", + "System.ObjectModel": "4.3.0", + "System.Reflection": "4.3.0", + "System.Reflection.Emit": "4.3.0", + "System.Reflection.Emit.ILGeneration": "4.3.0", + "System.Reflection.Emit.Lightweight": "4.3.0", + "System.Reflection.Extensions": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Reflection.TypeExtensions": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Threading": "4.3.0" + }, + "compile": { + "ref/netstandard1.6/System.Linq.Expressions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.6/System.Linq.Expressions.dll": {} + } + }, + "System.Net.Http/4.3.4": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.1", + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Diagnostics.DiagnosticSource": "4.3.0", + "System.Diagnostics.Tracing": "4.3.0", + "System.Globalization": "4.3.0", + "System.Globalization.Extensions": "4.3.0", + "System.IO": "4.3.0", + "System.IO.FileSystem": "4.3.0", + "System.Net.Primitives": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.OpenSsl": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Security.Cryptography.X509Certificates": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0", + "runtime.native.System": "4.3.0", + "runtime.native.System.Net.Http": "4.3.0", + "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2" + }, + "compile": { + "ref/netstandard1.3/System.Net.Http.dll": {} + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard1.6/System.Net.Http.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard1.3/System.Net.Http.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Net.Primitives/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0", + "System.Runtime.Handles": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Net.Primitives.dll": { + "related": ".xml" + } + } + }, + "System.Net.Sockets/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.IO": "4.3.0", + "System.Net.Primitives": "4.3.0", + "System.Runtime": "4.3.0", + "System.Threading.Tasks": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Net.Sockets.dll": { + "related": ".xml" + } + } + }, + "System.ObjectModel/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Threading": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.ObjectModel.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.3/System.ObjectModel.dll": {} + } + }, + "System.Private.Uri/4.3.2": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.1", + "Microsoft.NETCore.Targets": "1.1.3" + }, + "compile": { + "ref/netstandard/_._": {} + } + }, + "System.Reflection/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.IO": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.5/System.Reflection.dll": { + "related": ".xml" + } + } + }, + "System.Reflection.Emit/4.3.0": { + "type": "package", + "dependencies": { + "System.IO": "4.3.0", + "System.Reflection": "4.3.0", + "System.Reflection.Emit.ILGeneration": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.1/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.3/System.Reflection.Emit.dll": {} + } + }, + "System.Reflection.Emit.ILGeneration/4.3.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.3/System.Reflection.Emit.ILGeneration.dll": {} + } + }, + "System.Reflection.Emit.Lightweight/4.3.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.3.0", + "System.Reflection.Emit.ILGeneration": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.3/System.Reflection.Emit.Lightweight.dll": {} + } + }, + "System.Reflection.Extensions/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Reflection": "4.3.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.0/System.Reflection.Extensions.dll": { + "related": ".xml" + } + } + }, + "System.Reflection.Metadata/7.0.0": { + "type": "package", + "dependencies": { + "System.Collections.Immutable": "7.0.0" + }, + "compile": { + "lib/net7.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/System.Reflection.Metadata.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "System.Reflection.Primitives/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.0/System.Reflection.Primitives.dll": { + "related": ".xml" + } + } + }, + "System.Reflection.TypeExtensions/4.3.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.3.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.5/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.5/System.Reflection.TypeExtensions.dll": {} + } + }, + "System.Resources.ResourceManager/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Globalization": "4.3.0", + "System.Reflection": "4.3.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.0/System.Resources.ResourceManager.dll": { + "related": ".xml" + } + } + }, + "System.Runtime/4.3.1": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.1", + "Microsoft.NETCore.Targets": "1.1.3" + }, + "compile": { + "ref/netstandard1.5/System.Runtime.dll": { + "related": ".xml" + } + } + }, + "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.Runtime.Extensions/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.5/System.Runtime.Extensions.dll": { + "related": ".xml" + } + } + }, + "System.Runtime.Handles/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Runtime.Handles.dll": { + "related": ".xml" + } + } + }, + "System.Runtime.InteropServices/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Reflection": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Handles": "4.3.0" + }, + "compile": { + "ref/netcoreapp1.1/System.Runtime.InteropServices.dll": {} + } + }, + "System.Runtime.InteropServices.RuntimeInformation/4.3.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.3.0", + "System.Reflection.Extensions": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Threading": "4.3.0", + "runtime.native.System": "4.3.0" + }, + "compile": { + "ref/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll": {} + }, + "runtime": { + "lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll": {} + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Runtime.Numerics/4.3.0": { + "type": "package", + "dependencies": { + "System.Globalization": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0" + }, + "compile": { + "ref/netstandard1.1/System.Runtime.Numerics.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.3/System.Runtime.Numerics.dll": {} + } + }, + "System.Security.Cryptography.Algorithms/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.Collections": "4.3.0", + "System.IO": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Runtime.Numerics": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0", + "runtime.native.System.Security.Cryptography.Apple": "4.3.0", + "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" + }, + "compile": { + "ref/netstandard1.6/System.Security.Cryptography.Algorithms.dll": {} + }, + "runtimeTargets": { + "runtimes/osx/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll": { + "assetType": "runtime", + "rid": "osx" + }, + "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Security.Cryptography.Cng/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.IO": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0" + }, + "compile": { + "ref/netstandard1.6/_._": {} + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.Cng.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.Cng.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Security.Cryptography.Csp/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.IO": "4.3.0", + "System.Reflection": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/_._": {} + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.Csp.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard1.3/System.Security.Cryptography.Csp.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Security.Cryptography.Encoding/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.Collections": "4.3.0", + "System.Collections.Concurrent": "4.3.0", + "System.Linq": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0", + "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Security.Cryptography.Encoding.dll": { + "related": ".xml" + } + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.Encoding.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard1.3/System.Security.Cryptography.Encoding.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.IO": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Runtime.Numerics": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0", + "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" + }, + "compile": { + "ref/netstandard1.6/_._": {} + }, + "runtime": { + "lib/netstandard1.6/System.Security.Cryptography.OpenSsl.dll": {} + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.OpenSsl.dll": { + "assetType": "runtime", + "rid": "unix" + } + } + }, + "System.Security.Cryptography.Primitives/4.3.0": { + "type": "package", + "dependencies": { + "System.Diagnostics.Debug": "4.3.0", + "System.Globalization": "4.3.0", + "System.IO": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Security.Cryptography.Primitives.dll": {} + }, + "runtime": { + "lib/netstandard1.3/System.Security.Cryptography.Primitives.dll": {} + } + }, + "System.Security.Cryptography.X509Certificates/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Globalization": "4.3.0", + "System.Globalization.Calendars": "4.3.0", + "System.IO": "4.3.0", + "System.IO.FileSystem": "4.3.0", + "System.IO.FileSystem.Primitives": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Runtime.Numerics": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Cng": "4.3.0", + "System.Security.Cryptography.Csp": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.OpenSsl": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading": "4.3.0", + "runtime.native.System": "4.3.0", + "runtime.native.System.Net.Http": "4.3.0", + "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" + }, + "compile": { + "ref/netstandard1.4/System.Security.Cryptography.X509Certificates.dll": { + "related": ".xml" + } + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.X509Certificates.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.X509Certificates.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Text.Encoding/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Text.Encoding.dll": { + "related": ".xml" + } + } + }, + "System.Text.Encoding.Extensions/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0", + "System.Text.Encoding": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Text.Encoding.Extensions.dll": { + "related": ".xml" + } + } + }, + "System.Text.Encodings.Web/9.0.4": { + "type": "package", + "compile": { + "lib/net8.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.Text.Encodings.Web.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + }, + "runtimeTargets": { + "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll": { + "assetType": "runtime", + "rid": "browser" + } + } + }, + "System.Text.Json/9.0.4": { + "type": "package", + "dependencies": { + "System.IO.Pipelines": "9.0.4", + "System.Text.Encodings.Web": "9.0.4" + }, + "compile": { + "lib/net8.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.Text.Json.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/System.Text.Json.targets": {} + } + }, + "System.Text.RegularExpressions/4.3.1": { + "type": "package", + "dependencies": { + "System.Runtime": "4.3.1" + }, + "compile": { + "ref/netcoreapp1.1/System.Text.RegularExpressions.dll": {} + }, + "runtime": { + "lib/netstandard1.6/System.Text.RegularExpressions.dll": {} + } + }, + "System.Threading/4.3.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.3.0", + "System.Threading.Tasks": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Threading.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.3/System.Threading.dll": {} + } + }, + "System.Threading.Channels/7.0.0": { + "type": "package", + "compile": { + "lib/net7.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/System.Threading.Channels.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "System.Threading.Tasks/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Threading.Tasks.dll": { + "related": ".xml" + } + } + }, + "System.Threading.Tasks.Extensions/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Runtime": "4.3.0", + "System.Threading.Tasks": "4.3.0" + }, + "compile": { + "lib/netstandard1.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.0/System.Threading.Tasks.Extensions.dll": { + "related": ".xml" + } + } + }, + "System.Threading.Timer/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.2/System.Threading.Timer.dll": { + "related": ".xml" + } + } + }, + "System.Xml.ReaderWriter/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Globalization": "4.3.0", + "System.IO": "4.3.0", + "System.IO.FileSystem": "4.3.0", + "System.IO.FileSystem.Primitives": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Text.Encoding.Extensions": "4.3.0", + "System.Text.RegularExpressions": "4.3.0", + "System.Threading.Tasks": "4.3.0", + "System.Threading.Tasks.Extensions": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Xml.ReaderWriter.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.3/System.Xml.ReaderWriter.dll": {} + } + }, + "System.Xml.XDocument/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Diagnostics.Tools": "4.3.0", + "System.Globalization": "4.3.0", + "System.IO": "4.3.0", + "System.Reflection": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading": "4.3.0", + "System.Xml.ReaderWriter": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Xml.XDocument.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.3/System.Xml.XDocument.dll": {} + } + } + } + }, + "libraries": { + "AutoMapper/12.0.1": { + "sha512": "hvV62vl6Hp/WfQ24yzo3Co9+OPl8wH8hApwVtgWpiAynVJkUcs7xvehnSftawL8Pe8FrPffBRM3hwzLQqWDNjA==", + "type": "package", + "path": "automapper/12.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "automapper.12.0.1.nupkg.sha512", + "automapper.nuspec", + "icon.png", + "lib/netstandard2.1/AutoMapper.dll", + "lib/netstandard2.1/AutoMapper.xml" + ] + }, + "AutoMapper.Extensions.Microsoft.DependencyInjection/12.0.1": { + "sha512": "+g/K+Vpe3gGMKGzjslMOdqNlkikScDjWfVvmWTayrDHaG/n2pPmFBMa+jKX1r/h6BDGFdkyRjAuhFE3ykW+r1g==", + "type": "package", + "path": "automapper.extensions.microsoft.dependencyinjection/12.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "automapper.extensions.microsoft.dependencyinjection.12.0.1.nupkg.sha512", + "automapper.extensions.microsoft.dependencyinjection.nuspec", + "icon.png", + "lib/netstandard2.1/AutoMapper.Extensions.Microsoft.DependencyInjection.dll" + ] + }, + "DotNetEnv/3.1.1": { + "sha512": "o4SqUVCq0pqHF/HYsZk6k22XGIVmvsDVo+Dy7l0ubq9uQ45JkXswrMRJmYvhGLXWFYF0M5OupMonytB+0zvpGQ==", + "type": "package", + "path": "dotnetenv/3.1.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "LICENSE", + "README.md", + "dotnetenv.3.1.1.nupkg.sha512", + "dotnetenv.nuspec", + "lib/netstandard1.3/DotNetEnv.dll" + ] + }, + "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.AspNetCore.Authentication.JwtBearer/8.0.0": { + "sha512": "rwxaZYHips5M9vqxRkGfJthTx+Ws4O4yCuefn17J371jL3ouC5Ker43h2hXb5yd9BMnImE9rznT75KJHm6bMgg==", + "type": "package", + "path": "microsoft.aspnetcore.authentication.jwtbearer/8.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "THIRD-PARTY-NOTICES.TXT", + "lib/net8.0/Microsoft.AspNetCore.Authentication.JwtBearer.dll", + "lib/net8.0/Microsoft.AspNetCore.Authentication.JwtBearer.xml", + "microsoft.aspnetcore.authentication.jwtbearer.8.0.0.nupkg.sha512", + "microsoft.aspnetcore.authentication.jwtbearer.nuspec" + ] + }, + "Microsoft.AspNetCore.OpenApi/8.0.14": { + "sha512": "Sar0lozRpDmlAfzRNHtr8hC/6ImdcZMYA1JLoEaW0bmRvQdPpsN0orHYGsY+/LYS3q603ZomxsYpXj1Ow+sBTA==", + "type": "package", + "path": "microsoft.aspnetcore.openapi/8.0.14", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "THIRD-PARTY-NOTICES.TXT", + "lib/net8.0/Microsoft.AspNetCore.OpenApi.dll", + "lib/net8.0/Microsoft.AspNetCore.OpenApi.xml", + "microsoft.aspnetcore.openapi.8.0.14.nupkg.sha512", + "microsoft.aspnetcore.openapi.nuspec" + ] + }, + "Microsoft.Bcl.AsyncInterfaces/7.0.0": { + "sha512": "3aeMZ1N0lJoSyzqiP03hqemtb1BijhsJADdobn/4nsMJ8V1H+CrpuduUe4hlRdx+ikBQju1VGjMD1GJ3Sk05Eg==", + "type": "package", + "path": "microsoft.bcl.asyncinterfaces/7.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Bcl.AsyncInterfaces.targets", + "buildTransitive/net462/_._", + "lib/net462/Microsoft.Bcl.AsyncInterfaces.dll", + "lib/net462/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.7.0.0.nupkg.sha512", + "microsoft.bcl.asyncinterfaces.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Build.Framework/17.8.3": { + "sha512": "NrQZJW8TlKVPx72yltGb8SVz3P5mNRk9fNiD/ao8jRSk48WqIIdCn99q4IjlVmPcruuQ+yLdjNQLL8Rb4c916g==", + "type": "package", + "path": "microsoft.build.framework/17.8.3", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "MSBuild-NuGet-Icon.png", + "README.md", + "lib/net472/Microsoft.Build.Framework.dll", + "lib/net472/Microsoft.Build.Framework.pdb", + "lib/net472/Microsoft.Build.Framework.xml", + "lib/net8.0/Microsoft.Build.Framework.dll", + "lib/net8.0/Microsoft.Build.Framework.pdb", + "lib/net8.0/Microsoft.Build.Framework.xml", + "microsoft.build.framework.17.8.3.nupkg.sha512", + "microsoft.build.framework.nuspec", + "notices/THIRDPARTYNOTICES.txt", + "ref/net472/Microsoft.Build.Framework.dll", + "ref/net472/Microsoft.Build.Framework.xml", + "ref/net8.0/Microsoft.Build.Framework.dll", + "ref/net8.0/Microsoft.Build.Framework.xml", + "ref/netstandard2.0/Microsoft.Build.Framework.dll", + "ref/netstandard2.0/Microsoft.Build.Framework.xml" + ] + }, + "Microsoft.Build.Locator/1.7.8": { + "sha512": "sPy10x527Ph16S2u0yGME4S6ohBKJ69WfjeGG/bvELYeZVmJdKjxgnlL8cJJJLGV/cZIRqSfB12UDB8ICakOog==", + "type": "package", + "path": "microsoft.build.locator/1.7.8", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "MSBuild-NuGet-Icon.png", + "build/Microsoft.Build.Locator.props", + "build/Microsoft.Build.Locator.targets", + "lib/net46/Microsoft.Build.Locator.dll", + "lib/net6.0/Microsoft.Build.Locator.dll", + "microsoft.build.locator.1.7.8.nupkg.sha512", + "microsoft.build.locator.nuspec" + ] + }, + "Microsoft.CodeAnalysis.Analyzers/3.3.4": { + "sha512": "AxkxcPR+rheX0SmvpLVIGLhOUXAKG56a64kV9VQZ4y9gR9ZmPXnqZvHJnmwLSwzrEP6junUF11vuc+aqo5r68g==", + "type": "package", + "path": "microsoft.codeanalysis.analyzers/3.3.4", + "hasTools": true, + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "ThirdPartyNotices.txt", + "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", + "buildTransitive/Microsoft.CodeAnalysis.Analyzers.props", + "buildTransitive/Microsoft.CodeAnalysis.Analyzers.targets", + "buildTransitive/config/analysislevel_2_9_8_all.globalconfig", + "buildTransitive/config/analysislevel_2_9_8_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevel_2_9_8_default.globalconfig", + "buildTransitive/config/analysislevel_2_9_8_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevel_2_9_8_minimum.globalconfig", + "buildTransitive/config/analysislevel_2_9_8_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevel_2_9_8_none.globalconfig", + "buildTransitive/config/analysislevel_2_9_8_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevel_2_9_8_recommended.globalconfig", + "buildTransitive/config/analysislevel_2_9_8_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevel_3_3_3_all.globalconfig", + "buildTransitive/config/analysislevel_3_3_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevel_3_3_3_default.globalconfig", + "buildTransitive/config/analysislevel_3_3_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevel_3_3_3_minimum.globalconfig", + "buildTransitive/config/analysislevel_3_3_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevel_3_3_3_none.globalconfig", + "buildTransitive/config/analysislevel_3_3_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevel_3_3_3_recommended.globalconfig", + "buildTransitive/config/analysislevel_3_3_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevel_3_3_all.globalconfig", + "buildTransitive/config/analysislevel_3_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevel_3_3_default.globalconfig", + "buildTransitive/config/analysislevel_3_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevel_3_3_minimum.globalconfig", + "buildTransitive/config/analysislevel_3_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevel_3_3_none.globalconfig", + "buildTransitive/config/analysislevel_3_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevel_3_3_recommended.globalconfig", + "buildTransitive/config/analysislevel_3_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevel_3_all.globalconfig", + "buildTransitive/config/analysislevel_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevel_3_default.globalconfig", + "buildTransitive/config/analysislevel_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevel_3_minimum.globalconfig", + "buildTransitive/config/analysislevel_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevel_3_none.globalconfig", + "buildTransitive/config/analysislevel_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevel_3_recommended.globalconfig", + "buildTransitive/config/analysislevel_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevel_4_3_all.globalconfig", + "buildTransitive/config/analysislevel_4_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevel_4_3_default.globalconfig", + "buildTransitive/config/analysislevel_4_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevel_4_3_minimum.globalconfig", + "buildTransitive/config/analysislevel_4_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevel_4_3_none.globalconfig", + "buildTransitive/config/analysislevel_4_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevel_4_3_recommended.globalconfig", + "buildTransitive/config/analysislevel_4_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelcorrectness_2_9_8_all.globalconfig", + "buildTransitive/config/analysislevelcorrectness_2_9_8_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelcorrectness_2_9_8_default.globalconfig", + "buildTransitive/config/analysislevelcorrectness_2_9_8_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelcorrectness_2_9_8_minimum.globalconfig", + "buildTransitive/config/analysislevelcorrectness_2_9_8_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelcorrectness_2_9_8_none.globalconfig", + "buildTransitive/config/analysislevelcorrectness_2_9_8_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelcorrectness_2_9_8_recommended.globalconfig", + "buildTransitive/config/analysislevelcorrectness_2_9_8_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_3_3_all.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_3_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_3_3_default.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_3_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_3_3_minimum.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_3_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_3_3_none.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_3_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_3_3_recommended.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_3_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_3_all.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_3_default.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_3_minimum.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_3_none.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_3_recommended.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_all.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_default.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_minimum.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_none.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_recommended.globalconfig", + "buildTransitive/config/analysislevelcorrectness_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelcorrectness_4_3_all.globalconfig", + "buildTransitive/config/analysislevelcorrectness_4_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelcorrectness_4_3_default.globalconfig", + "buildTransitive/config/analysislevelcorrectness_4_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelcorrectness_4_3_minimum.globalconfig", + "buildTransitive/config/analysislevelcorrectness_4_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelcorrectness_4_3_none.globalconfig", + "buildTransitive/config/analysislevelcorrectness_4_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelcorrectness_4_3_recommended.globalconfig", + "buildTransitive/config/analysislevelcorrectness_4_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevellibrary_2_9_8_all.globalconfig", + "buildTransitive/config/analysislevellibrary_2_9_8_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevellibrary_2_9_8_default.globalconfig", + "buildTransitive/config/analysislevellibrary_2_9_8_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevellibrary_2_9_8_minimum.globalconfig", + "buildTransitive/config/analysislevellibrary_2_9_8_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevellibrary_2_9_8_none.globalconfig", + "buildTransitive/config/analysislevellibrary_2_9_8_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevellibrary_2_9_8_recommended.globalconfig", + "buildTransitive/config/analysislevellibrary_2_9_8_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevellibrary_3_3_3_all.globalconfig", + "buildTransitive/config/analysislevellibrary_3_3_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevellibrary_3_3_3_default.globalconfig", + "buildTransitive/config/analysislevellibrary_3_3_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevellibrary_3_3_3_minimum.globalconfig", + "buildTransitive/config/analysislevellibrary_3_3_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevellibrary_3_3_3_none.globalconfig", + "buildTransitive/config/analysislevellibrary_3_3_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevellibrary_3_3_3_recommended.globalconfig", + "buildTransitive/config/analysislevellibrary_3_3_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevellibrary_3_3_all.globalconfig", + "buildTransitive/config/analysislevellibrary_3_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevellibrary_3_3_default.globalconfig", + "buildTransitive/config/analysislevellibrary_3_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevellibrary_3_3_minimum.globalconfig", + "buildTransitive/config/analysislevellibrary_3_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevellibrary_3_3_none.globalconfig", + "buildTransitive/config/analysislevellibrary_3_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevellibrary_3_3_recommended.globalconfig", + "buildTransitive/config/analysislevellibrary_3_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevellibrary_3_all.globalconfig", + "buildTransitive/config/analysislevellibrary_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevellibrary_3_default.globalconfig", + "buildTransitive/config/analysislevellibrary_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevellibrary_3_minimum.globalconfig", + "buildTransitive/config/analysislevellibrary_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevellibrary_3_none.globalconfig", + "buildTransitive/config/analysislevellibrary_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevellibrary_3_recommended.globalconfig", + "buildTransitive/config/analysislevellibrary_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevellibrary_4_3_all.globalconfig", + "buildTransitive/config/analysislevellibrary_4_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevellibrary_4_3_default.globalconfig", + "buildTransitive/config/analysislevellibrary_4_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevellibrary_4_3_minimum.globalconfig", + "buildTransitive/config/analysislevellibrary_4_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevellibrary_4_3_none.globalconfig", + "buildTransitive/config/analysislevellibrary_4_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevellibrary_4_3_recommended.globalconfig", + "buildTransitive/config/analysislevellibrary_4_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_4_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_4_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_4_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_4_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_4_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_4_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_4_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_4_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_4_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_4_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_4_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_4_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_4_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_4_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_4_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_4_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_4_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_4_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_4_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_4_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_4_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_4_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_4_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_4_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_4_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_4_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_4_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_4_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_4_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_4_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_4_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_4_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_4_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_4_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_4_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_4_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_4_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_4_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_4_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_4_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_4_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_4_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_4_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_4_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_4_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_4_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_4_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_4_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_4_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_4_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_4_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_4_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_4_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_4_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_4_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_4_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_4_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_4_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_4_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_4_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_recommended_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_4_3_all.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_4_3_all_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_4_3_default.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_4_3_default_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_4_3_minimum.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_4_3_minimum_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_4_3_none.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_4_3_none_warnaserror.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_4_3_recommended.globalconfig", + "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_4_3_recommended_warnaserror.globalconfig", + "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.4.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.8.0": { + "sha512": "/jR+e/9aT+BApoQJABlVCKnnggGQbvGh7BKq2/wI1LamxC+LbzhcLj4Vj7gXCofl1n4E521YfF9w0WcASGg/KA==", + "type": "package", + "path": "microsoft.codeanalysis.common/4.8.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "ThirdPartyNotices.rtf", + "lib/net6.0/Microsoft.CodeAnalysis.dll", + "lib/net6.0/Microsoft.CodeAnalysis.pdb", + "lib/net6.0/Microsoft.CodeAnalysis.xml", + "lib/net6.0/cs/Microsoft.CodeAnalysis.resources.dll", + "lib/net6.0/de/Microsoft.CodeAnalysis.resources.dll", + "lib/net6.0/es/Microsoft.CodeAnalysis.resources.dll", + "lib/net6.0/fr/Microsoft.CodeAnalysis.resources.dll", + "lib/net6.0/it/Microsoft.CodeAnalysis.resources.dll", + "lib/net6.0/ja/Microsoft.CodeAnalysis.resources.dll", + "lib/net6.0/ko/Microsoft.CodeAnalysis.resources.dll", + "lib/net6.0/pl/Microsoft.CodeAnalysis.resources.dll", + "lib/net6.0/pt-BR/Microsoft.CodeAnalysis.resources.dll", + "lib/net6.0/ru/Microsoft.CodeAnalysis.resources.dll", + "lib/net6.0/tr/Microsoft.CodeAnalysis.resources.dll", + "lib/net6.0/zh-Hans/Microsoft.CodeAnalysis.resources.dll", + "lib/net6.0/zh-Hant/Microsoft.CodeAnalysis.resources.dll", + "lib/net7.0/Microsoft.CodeAnalysis.dll", + "lib/net7.0/Microsoft.CodeAnalysis.pdb", + "lib/net7.0/Microsoft.CodeAnalysis.xml", + "lib/net7.0/cs/Microsoft.CodeAnalysis.resources.dll", + "lib/net7.0/de/Microsoft.CodeAnalysis.resources.dll", + "lib/net7.0/es/Microsoft.CodeAnalysis.resources.dll", + "lib/net7.0/fr/Microsoft.CodeAnalysis.resources.dll", + "lib/net7.0/it/Microsoft.CodeAnalysis.resources.dll", + "lib/net7.0/ja/Microsoft.CodeAnalysis.resources.dll", + "lib/net7.0/ko/Microsoft.CodeAnalysis.resources.dll", + "lib/net7.0/pl/Microsoft.CodeAnalysis.resources.dll", + "lib/net7.0/pt-BR/Microsoft.CodeAnalysis.resources.dll", + "lib/net7.0/ru/Microsoft.CodeAnalysis.resources.dll", + "lib/net7.0/tr/Microsoft.CodeAnalysis.resources.dll", + "lib/net7.0/zh-Hans/Microsoft.CodeAnalysis.resources.dll", + "lib/net7.0/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.8.0.nupkg.sha512", + "microsoft.codeanalysis.common.nuspec" + ] + }, + "Microsoft.CodeAnalysis.CSharp/4.8.0": { + "sha512": "+3+qfdb/aaGD8PZRCrsdobbzGs1m9u119SkkJt8e/mk3xLJz/udLtS2T6nY27OTXxBBw10HzAbC8Z9w08VyP/g==", + "type": "package", + "path": "microsoft.codeanalysis.csharp/4.8.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "ThirdPartyNotices.rtf", + "lib/net6.0/Microsoft.CodeAnalysis.CSharp.dll", + "lib/net6.0/Microsoft.CodeAnalysis.CSharp.pdb", + "lib/net6.0/Microsoft.CodeAnalysis.CSharp.xml", + "lib/net6.0/cs/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/net6.0/de/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/net6.0/es/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/net6.0/fr/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/net6.0/it/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/net6.0/ja/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/net6.0/ko/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/net6.0/pl/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/net6.0/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/net6.0/ru/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/net6.0/tr/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/net6.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/net6.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/net7.0/Microsoft.CodeAnalysis.CSharp.dll", + "lib/net7.0/Microsoft.CodeAnalysis.CSharp.pdb", + "lib/net7.0/Microsoft.CodeAnalysis.CSharp.xml", + "lib/net7.0/cs/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/net7.0/de/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/net7.0/es/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/net7.0/fr/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/net7.0/it/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/net7.0/ja/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/net7.0/ko/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/net7.0/pl/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/net7.0/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/net7.0/ru/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/net7.0/tr/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/net7.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/net7.0/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.8.0.nupkg.sha512", + "microsoft.codeanalysis.csharp.nuspec" + ] + }, + "Microsoft.CodeAnalysis.CSharp.Workspaces/4.8.0": { + "sha512": "3amm4tq4Lo8/BGvg9p3BJh3S9nKq2wqCXfS7138i69TUpo/bD+XvD0hNurpEBtcNZhi1FyutiomKJqVF39ugYA==", + "type": "package", + "path": "microsoft.codeanalysis.csharp.workspaces/4.8.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "ThirdPartyNotices.rtf", + "lib/net6.0/Microsoft.CodeAnalysis.CSharp.Workspaces.dll", + "lib/net6.0/Microsoft.CodeAnalysis.CSharp.Workspaces.pdb", + "lib/net6.0/Microsoft.CodeAnalysis.CSharp.Workspaces.xml", + "lib/net6.0/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/net6.0/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/net6.0/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/net6.0/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/net6.0/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/net6.0/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/net6.0/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/net6.0/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/net6.0/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/net6.0/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/net6.0/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/net6.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/net6.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/net7.0/Microsoft.CodeAnalysis.CSharp.Workspaces.dll", + "lib/net7.0/Microsoft.CodeAnalysis.CSharp.Workspaces.pdb", + "lib/net7.0/Microsoft.CodeAnalysis.CSharp.Workspaces.xml", + "lib/net7.0/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/net7.0/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/net7.0/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/net7.0/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/net7.0/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/net7.0/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/net7.0/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/net7.0/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/net7.0/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/net7.0/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/net7.0/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/net7.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/net7.0/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.8.0.nupkg.sha512", + "microsoft.codeanalysis.csharp.workspaces.nuspec" + ] + }, + "Microsoft.CodeAnalysis.Workspaces.Common/4.8.0": { + "sha512": "LXyV+MJKsKRu3FGJA3OmSk40OUIa/dQCFLOnm5X8MNcujx7hzGu8o+zjXlb/cy5xUdZK2UKYb9YaQ2E8m9QehQ==", + "type": "package", + "path": "microsoft.codeanalysis.workspaces.common/4.8.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "ThirdPartyNotices.rtf", + "lib/net6.0/Microsoft.CodeAnalysis.Workspaces.dll", + "lib/net6.0/Microsoft.CodeAnalysis.Workspaces.pdb", + "lib/net6.0/Microsoft.CodeAnalysis.Workspaces.xml", + "lib/net6.0/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/net6.0/de/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/net6.0/es/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/net6.0/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/net6.0/it/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/net6.0/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/net6.0/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/net6.0/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/net6.0/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/net6.0/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/net6.0/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/net6.0/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/net6.0/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/net7.0/Microsoft.CodeAnalysis.Workspaces.dll", + "lib/net7.0/Microsoft.CodeAnalysis.Workspaces.pdb", + "lib/net7.0/Microsoft.CodeAnalysis.Workspaces.xml", + "lib/net7.0/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/net7.0/de/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/net7.0/es/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/net7.0/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/net7.0/it/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/net7.0/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/net7.0/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/net7.0/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/net7.0/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/net7.0/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/net7.0/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/net7.0/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/net7.0/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.8.0.nupkg.sha512", + "microsoft.codeanalysis.workspaces.common.nuspec" + ] + }, + "Microsoft.CodeAnalysis.Workspaces.MSBuild/4.8.0": { + "sha512": "IEYreI82QZKklp54yPHxZNG9EKSK6nHEkeuf+0Asie9llgS1gp0V1hw7ODG+QyoB7MuAnNQHmeV1Per/ECpv6A==", + "type": "package", + "path": "microsoft.codeanalysis.workspaces.msbuild/4.8.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "ThirdPartyNotices.rtf", + "lib/net472/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.exe", + "lib/net472/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.pdb", + "lib/net472/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.xml", + "lib/net472/Microsoft.CodeAnalysis.Workspaces.MSBuild.dll", + "lib/net472/Microsoft.CodeAnalysis.Workspaces.MSBuild.pdb", + "lib/net472/Microsoft.CodeAnalysis.Workspaces.MSBuild.xml", + "lib/net472/cs/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net472/de/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net472/es/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net472/fr/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net472/it/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net472/ja/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net472/ko/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net472/pl/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net472/pt-BR/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net472/ru/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net472/tr/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net472/zh-Hans/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net472/zh-Hant/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net6.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.dll", + "lib/net6.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.pdb", + "lib/net6.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.runtimeconfig.json", + "lib/net6.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.xml", + "lib/net6.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.dll", + "lib/net6.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.pdb", + "lib/net6.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.xml", + "lib/net6.0/cs/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net6.0/de/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net6.0/es/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net6.0/fr/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net6.0/it/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net6.0/ja/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net6.0/ko/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net6.0/pl/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net6.0/pt-BR/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net6.0/ru/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net6.0/tr/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net6.0/zh-Hans/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net6.0/zh-Hant/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net7.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.dll", + "lib/net7.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.pdb", + "lib/net7.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.runtimeconfig.json", + "lib/net7.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.xml", + "lib/net7.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.dll", + "lib/net7.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.pdb", + "lib/net7.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.xml", + "lib/net7.0/cs/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net7.0/de/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net7.0/es/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net7.0/fr/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net7.0/it/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net7.0/ja/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net7.0/ko/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net7.0/pl/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net7.0/pt-BR/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net7.0/ru/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net7.0/tr/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net7.0/zh-Hans/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "lib/net7.0/zh-Hant/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", + "microsoft.codeanalysis.workspaces.msbuild.4.8.0.nupkg.sha512", + "microsoft.codeanalysis.workspaces.msbuild.nuspec" + ] + }, + "Microsoft.CSharp/4.7.0": { + "sha512": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==", + "type": "package", + "path": "microsoft.csharp/4.7.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/Microsoft.CSharp.dll", + "lib/netcoreapp2.0/_._", + "lib/netstandard1.3/Microsoft.CSharp.dll", + "lib/netstandard2.0/Microsoft.CSharp.dll", + "lib/netstandard2.0/Microsoft.CSharp.xml", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/uap10.0.16299/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "microsoft.csharp.4.7.0.nupkg.sha512", + "microsoft.csharp.nuspec", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/Microsoft.CSharp.dll", + "ref/netcore50/Microsoft.CSharp.xml", + "ref/netcore50/de/Microsoft.CSharp.xml", + "ref/netcore50/es/Microsoft.CSharp.xml", + "ref/netcore50/fr/Microsoft.CSharp.xml", + "ref/netcore50/it/Microsoft.CSharp.xml", + "ref/netcore50/ja/Microsoft.CSharp.xml", + "ref/netcore50/ko/Microsoft.CSharp.xml", + "ref/netcore50/ru/Microsoft.CSharp.xml", + "ref/netcore50/zh-hans/Microsoft.CSharp.xml", + "ref/netcore50/zh-hant/Microsoft.CSharp.xml", + "ref/netcoreapp2.0/_._", + "ref/netstandard1.0/Microsoft.CSharp.dll", + "ref/netstandard1.0/Microsoft.CSharp.xml", + "ref/netstandard1.0/de/Microsoft.CSharp.xml", + "ref/netstandard1.0/es/Microsoft.CSharp.xml", + "ref/netstandard1.0/fr/Microsoft.CSharp.xml", + "ref/netstandard1.0/it/Microsoft.CSharp.xml", + "ref/netstandard1.0/ja/Microsoft.CSharp.xml", + "ref/netstandard1.0/ko/Microsoft.CSharp.xml", + "ref/netstandard1.0/ru/Microsoft.CSharp.xml", + "ref/netstandard1.0/zh-hans/Microsoft.CSharp.xml", + "ref/netstandard1.0/zh-hant/Microsoft.CSharp.xml", + "ref/netstandard2.0/Microsoft.CSharp.dll", + "ref/netstandard2.0/Microsoft.CSharp.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/uap10.0.16299/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "Microsoft.EntityFrameworkCore/9.0.5": { + "sha512": "TeCtb/vc+jxvgkVAqeJlZKOoG5w/w8AigWQQyOmeJsJ7+0SkONX8bqEV/wB+ojnT0sXuJrrfXQOEC3ws6asEng==", + "type": "package", + "path": "microsoft.entityframeworkcore/9.0.5", + "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.9.0.5.nupkg.sha512", + "microsoft.entityframeworkcore.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.Abstractions/9.0.5": { + "sha512": "81fGyIibhGc4rq4ZxmVZE/1CFSvGMQOZqdRyCBLKz/Hb8eE973dmSfcdXpXhQ/5f+nbax4VGkWhwPGxWUNWaCQ==", + "type": "package", + "path": "microsoft.entityframeworkcore.abstractions/9.0.5", + "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.9.0.5.nupkg.sha512", + "microsoft.entityframeworkcore.abstractions.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.Analyzers/9.0.5": { + "sha512": "kWRrD69qCXo7lahPZPt7C127UfK0I024laFZEDMfT3JbALB1EWneFvq1utWM0cNKPFuYis1E1oaYTuRGI/9inQ==", + "type": "package", + "path": "microsoft.entityframeworkcore.analyzers/9.0.5", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "analyzers/dotnet/cs/Microsoft.EntityFrameworkCore.Analyzers.dll", + "docs/PACKAGE.md", + "microsoft.entityframeworkcore.analyzers.9.0.5.nupkg.sha512", + "microsoft.entityframeworkcore.analyzers.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.Design/9.0.4": { + "sha512": "0NdtmsbYfMr2HyF+W6L+kPaHJl1nAmFjWj0MfI5G+CFeWZxDwltQxzzwSmZQ4QhS5z8zjczGXwHZ8e3iFaoiXA==", + "type": "package", + "path": "microsoft.entityframeworkcore.design/9.0.4", + "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.9.0.4.nupkg.sha512", + "microsoft.entityframeworkcore.design.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.Relational/9.0.4": { + "sha512": "OjJ+xh/wQff5b0wiC3SPvoQqTA2boZeJQf+15+3+OJPtjBKzvxuwr25QRIu1p1t+K8ryQ8pzaoZ7eOpXfNzVGA==", + "type": "package", + "path": "microsoft.entityframeworkcore.relational/9.0.4", + "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.9.0.4.nupkg.sha512", + "microsoft.entityframeworkcore.relational.nuspec" + ] + }, + "Microsoft.Extensions.ApiDescription.Server/6.0.5": { + "sha512": "Ckb5EDBUNJdFWyajfXzUIMRkhf52fHZOQuuZg/oiu8y7zDCVwD0iHhew6MnThjHmevanpxL3f5ci2TtHQEN6bw==", + "type": "package", + "path": "microsoft.extensions.apidescription.server/6.0.5", + "hasTools": true, + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "build/Microsoft.Extensions.ApiDescription.Server.props", + "build/Microsoft.Extensions.ApiDescription.Server.targets", + "buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.props", + "buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.targets", + "microsoft.extensions.apidescription.server.6.0.5.nupkg.sha512", + "microsoft.extensions.apidescription.server.nuspec", + "tools/Newtonsoft.Json.dll", + "tools/dotnet-getdocument.deps.json", + "tools/dotnet-getdocument.dll", + "tools/dotnet-getdocument.runtimeconfig.json", + "tools/net461-x86/GetDocument.Insider.exe", + "tools/net461-x86/GetDocument.Insider.exe.config", + "tools/net461-x86/Microsoft.Win32.Primitives.dll", + "tools/net461-x86/System.AppContext.dll", + "tools/net461-x86/System.Buffers.dll", + "tools/net461-x86/System.Collections.Concurrent.dll", + "tools/net461-x86/System.Collections.NonGeneric.dll", + "tools/net461-x86/System.Collections.Specialized.dll", + "tools/net461-x86/System.Collections.dll", + "tools/net461-x86/System.ComponentModel.EventBasedAsync.dll", + "tools/net461-x86/System.ComponentModel.Primitives.dll", + "tools/net461-x86/System.ComponentModel.TypeConverter.dll", + "tools/net461-x86/System.ComponentModel.dll", + "tools/net461-x86/System.Console.dll", + "tools/net461-x86/System.Data.Common.dll", + "tools/net461-x86/System.Diagnostics.Contracts.dll", + "tools/net461-x86/System.Diagnostics.Debug.dll", + "tools/net461-x86/System.Diagnostics.DiagnosticSource.dll", + "tools/net461-x86/System.Diagnostics.FileVersionInfo.dll", + "tools/net461-x86/System.Diagnostics.Process.dll", + "tools/net461-x86/System.Diagnostics.StackTrace.dll", + "tools/net461-x86/System.Diagnostics.TextWriterTraceListener.dll", + "tools/net461-x86/System.Diagnostics.Tools.dll", + "tools/net461-x86/System.Diagnostics.TraceSource.dll", + "tools/net461-x86/System.Diagnostics.Tracing.dll", + "tools/net461-x86/System.Drawing.Primitives.dll", + "tools/net461-x86/System.Dynamic.Runtime.dll", + "tools/net461-x86/System.Globalization.Calendars.dll", + "tools/net461-x86/System.Globalization.Extensions.dll", + "tools/net461-x86/System.Globalization.dll", + "tools/net461-x86/System.IO.Compression.ZipFile.dll", + "tools/net461-x86/System.IO.Compression.dll", + "tools/net461-x86/System.IO.FileSystem.DriveInfo.dll", + "tools/net461-x86/System.IO.FileSystem.Primitives.dll", + "tools/net461-x86/System.IO.FileSystem.Watcher.dll", + "tools/net461-x86/System.IO.FileSystem.dll", + "tools/net461-x86/System.IO.IsolatedStorage.dll", + "tools/net461-x86/System.IO.MemoryMappedFiles.dll", + "tools/net461-x86/System.IO.Pipes.dll", + "tools/net461-x86/System.IO.UnmanagedMemoryStream.dll", + "tools/net461-x86/System.IO.dll", + "tools/net461-x86/System.Linq.Expressions.dll", + "tools/net461-x86/System.Linq.Parallel.dll", + "tools/net461-x86/System.Linq.Queryable.dll", + "tools/net461-x86/System.Linq.dll", + "tools/net461-x86/System.Memory.dll", + "tools/net461-x86/System.Net.Http.dll", + "tools/net461-x86/System.Net.NameResolution.dll", + "tools/net461-x86/System.Net.NetworkInformation.dll", + "tools/net461-x86/System.Net.Ping.dll", + "tools/net461-x86/System.Net.Primitives.dll", + "tools/net461-x86/System.Net.Requests.dll", + "tools/net461-x86/System.Net.Security.dll", + "tools/net461-x86/System.Net.Sockets.dll", + "tools/net461-x86/System.Net.WebHeaderCollection.dll", + "tools/net461-x86/System.Net.WebSockets.Client.dll", + "tools/net461-x86/System.Net.WebSockets.dll", + "tools/net461-x86/System.Numerics.Vectors.dll", + "tools/net461-x86/System.ObjectModel.dll", + "tools/net461-x86/System.Reflection.Extensions.dll", + "tools/net461-x86/System.Reflection.Primitives.dll", + "tools/net461-x86/System.Reflection.dll", + "tools/net461-x86/System.Resources.Reader.dll", + "tools/net461-x86/System.Resources.ResourceManager.dll", + "tools/net461-x86/System.Resources.Writer.dll", + "tools/net461-x86/System.Runtime.CompilerServices.Unsafe.dll", + "tools/net461-x86/System.Runtime.CompilerServices.VisualC.dll", + "tools/net461-x86/System.Runtime.Extensions.dll", + "tools/net461-x86/System.Runtime.Handles.dll", + "tools/net461-x86/System.Runtime.InteropServices.RuntimeInformation.dll", + "tools/net461-x86/System.Runtime.InteropServices.dll", + "tools/net461-x86/System.Runtime.Numerics.dll", + "tools/net461-x86/System.Runtime.Serialization.Formatters.dll", + "tools/net461-x86/System.Runtime.Serialization.Json.dll", + "tools/net461-x86/System.Runtime.Serialization.Primitives.dll", + "tools/net461-x86/System.Runtime.Serialization.Xml.dll", + "tools/net461-x86/System.Runtime.dll", + "tools/net461-x86/System.Security.Claims.dll", + "tools/net461-x86/System.Security.Cryptography.Algorithms.dll", + "tools/net461-x86/System.Security.Cryptography.Csp.dll", + "tools/net461-x86/System.Security.Cryptography.Encoding.dll", + "tools/net461-x86/System.Security.Cryptography.Primitives.dll", + "tools/net461-x86/System.Security.Cryptography.X509Certificates.dll", + "tools/net461-x86/System.Security.Principal.dll", + "tools/net461-x86/System.Security.SecureString.dll", + "tools/net461-x86/System.Text.Encoding.Extensions.dll", + "tools/net461-x86/System.Text.Encoding.dll", + "tools/net461-x86/System.Text.RegularExpressions.dll", + "tools/net461-x86/System.Threading.Overlapped.dll", + "tools/net461-x86/System.Threading.Tasks.Parallel.dll", + "tools/net461-x86/System.Threading.Tasks.dll", + "tools/net461-x86/System.Threading.Thread.dll", + "tools/net461-x86/System.Threading.ThreadPool.dll", + "tools/net461-x86/System.Threading.Timer.dll", + "tools/net461-x86/System.Threading.dll", + "tools/net461-x86/System.ValueTuple.dll", + "tools/net461-x86/System.Xml.ReaderWriter.dll", + "tools/net461-x86/System.Xml.XDocument.dll", + "tools/net461-x86/System.Xml.XPath.XDocument.dll", + "tools/net461-x86/System.Xml.XPath.dll", + "tools/net461-x86/System.Xml.XmlDocument.dll", + "tools/net461-x86/System.Xml.XmlSerializer.dll", + "tools/net461-x86/netstandard.dll", + "tools/net461/GetDocument.Insider.exe", + "tools/net461/GetDocument.Insider.exe.config", + "tools/net461/Microsoft.Win32.Primitives.dll", + "tools/net461/System.AppContext.dll", + "tools/net461/System.Buffers.dll", + "tools/net461/System.Collections.Concurrent.dll", + "tools/net461/System.Collections.NonGeneric.dll", + "tools/net461/System.Collections.Specialized.dll", + "tools/net461/System.Collections.dll", + "tools/net461/System.ComponentModel.EventBasedAsync.dll", + "tools/net461/System.ComponentModel.Primitives.dll", + "tools/net461/System.ComponentModel.TypeConverter.dll", + "tools/net461/System.ComponentModel.dll", + "tools/net461/System.Console.dll", + "tools/net461/System.Data.Common.dll", + "tools/net461/System.Diagnostics.Contracts.dll", + "tools/net461/System.Diagnostics.Debug.dll", + "tools/net461/System.Diagnostics.DiagnosticSource.dll", + "tools/net461/System.Diagnostics.FileVersionInfo.dll", + "tools/net461/System.Diagnostics.Process.dll", + "tools/net461/System.Diagnostics.StackTrace.dll", + "tools/net461/System.Diagnostics.TextWriterTraceListener.dll", + "tools/net461/System.Diagnostics.Tools.dll", + "tools/net461/System.Diagnostics.TraceSource.dll", + "tools/net461/System.Diagnostics.Tracing.dll", + "tools/net461/System.Drawing.Primitives.dll", + "tools/net461/System.Dynamic.Runtime.dll", + "tools/net461/System.Globalization.Calendars.dll", + "tools/net461/System.Globalization.Extensions.dll", + "tools/net461/System.Globalization.dll", + "tools/net461/System.IO.Compression.ZipFile.dll", + "tools/net461/System.IO.Compression.dll", + "tools/net461/System.IO.FileSystem.DriveInfo.dll", + "tools/net461/System.IO.FileSystem.Primitives.dll", + "tools/net461/System.IO.FileSystem.Watcher.dll", + "tools/net461/System.IO.FileSystem.dll", + "tools/net461/System.IO.IsolatedStorage.dll", + "tools/net461/System.IO.MemoryMappedFiles.dll", + "tools/net461/System.IO.Pipes.dll", + "tools/net461/System.IO.UnmanagedMemoryStream.dll", + "tools/net461/System.IO.dll", + "tools/net461/System.Linq.Expressions.dll", + "tools/net461/System.Linq.Parallel.dll", + "tools/net461/System.Linq.Queryable.dll", + "tools/net461/System.Linq.dll", + "tools/net461/System.Memory.dll", + "tools/net461/System.Net.Http.dll", + "tools/net461/System.Net.NameResolution.dll", + "tools/net461/System.Net.NetworkInformation.dll", + "tools/net461/System.Net.Ping.dll", + "tools/net461/System.Net.Primitives.dll", + "tools/net461/System.Net.Requests.dll", + "tools/net461/System.Net.Security.dll", + "tools/net461/System.Net.Sockets.dll", + "tools/net461/System.Net.WebHeaderCollection.dll", + "tools/net461/System.Net.WebSockets.Client.dll", + "tools/net461/System.Net.WebSockets.dll", + "tools/net461/System.Numerics.Vectors.dll", + "tools/net461/System.ObjectModel.dll", + "tools/net461/System.Reflection.Extensions.dll", + "tools/net461/System.Reflection.Primitives.dll", + "tools/net461/System.Reflection.dll", + "tools/net461/System.Resources.Reader.dll", + "tools/net461/System.Resources.ResourceManager.dll", + "tools/net461/System.Resources.Writer.dll", + "tools/net461/System.Runtime.CompilerServices.Unsafe.dll", + "tools/net461/System.Runtime.CompilerServices.VisualC.dll", + "tools/net461/System.Runtime.Extensions.dll", + "tools/net461/System.Runtime.Handles.dll", + "tools/net461/System.Runtime.InteropServices.RuntimeInformation.dll", + "tools/net461/System.Runtime.InteropServices.dll", + "tools/net461/System.Runtime.Numerics.dll", + "tools/net461/System.Runtime.Serialization.Formatters.dll", + "tools/net461/System.Runtime.Serialization.Json.dll", + "tools/net461/System.Runtime.Serialization.Primitives.dll", + "tools/net461/System.Runtime.Serialization.Xml.dll", + "tools/net461/System.Runtime.dll", + "tools/net461/System.Security.Claims.dll", + "tools/net461/System.Security.Cryptography.Algorithms.dll", + "tools/net461/System.Security.Cryptography.Csp.dll", + "tools/net461/System.Security.Cryptography.Encoding.dll", + "tools/net461/System.Security.Cryptography.Primitives.dll", + "tools/net461/System.Security.Cryptography.X509Certificates.dll", + "tools/net461/System.Security.Principal.dll", + "tools/net461/System.Security.SecureString.dll", + "tools/net461/System.Text.Encoding.Extensions.dll", + "tools/net461/System.Text.Encoding.dll", + "tools/net461/System.Text.RegularExpressions.dll", + "tools/net461/System.Threading.Overlapped.dll", + "tools/net461/System.Threading.Tasks.Parallel.dll", + "tools/net461/System.Threading.Tasks.dll", + "tools/net461/System.Threading.Thread.dll", + "tools/net461/System.Threading.ThreadPool.dll", + "tools/net461/System.Threading.Timer.dll", + "tools/net461/System.Threading.dll", + "tools/net461/System.ValueTuple.dll", + "tools/net461/System.Xml.ReaderWriter.dll", + "tools/net461/System.Xml.XDocument.dll", + "tools/net461/System.Xml.XPath.XDocument.dll", + "tools/net461/System.Xml.XPath.dll", + "tools/net461/System.Xml.XmlDocument.dll", + "tools/net461/System.Xml.XmlSerializer.dll", + "tools/net461/netstandard.dll", + "tools/netcoreapp2.1/GetDocument.Insider.deps.json", + "tools/netcoreapp2.1/GetDocument.Insider.dll", + "tools/netcoreapp2.1/GetDocument.Insider.runtimeconfig.json", + "tools/netcoreapp2.1/System.Diagnostics.DiagnosticSource.dll" + ] + }, + "Microsoft.Extensions.Caching.Abstractions/9.0.5": { + "sha512": "RV6wOTvH5BeVRs6cvxFuaV1ut05Dklpvq19XRO1JxAayfLWYIEP7K94aamY0iSUhoehWk1X5H6gMcbZkHuBjew==", + "type": "package", + "path": "microsoft.extensions.caching.abstractions/9.0.5", + "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/net8.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Caching.Abstractions.targets", + "lib/net462/Microsoft.Extensions.Caching.Abstractions.dll", + "lib/net462/Microsoft.Extensions.Caching.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.xml", + "lib/net9.0/Microsoft.Extensions.Caching.Abstractions.dll", + "lib/net9.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.9.0.5.nupkg.sha512", + "microsoft.extensions.caching.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Caching.Memory/9.0.5": { + "sha512": "qDmoAzIUBup5KZG1Abv51ifbHMCWFnaXbt05l+Sd92mLOpF9OwHOuoxu3XhzXaPGfq0Ns3pv1df5l8zuKjFgGw==", + "type": "package", + "path": "microsoft.extensions.caching.memory/9.0.5", + "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/net8.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Caching.Memory.targets", + "lib/net462/Microsoft.Extensions.Caching.Memory.dll", + "lib/net462/Microsoft.Extensions.Caching.Memory.xml", + "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll", + "lib/net8.0/Microsoft.Extensions.Caching.Memory.xml", + "lib/net9.0/Microsoft.Extensions.Caching.Memory.dll", + "lib/net9.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.9.0.5.nupkg.sha512", + "microsoft.extensions.caching.memory.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Configuration/1.1.2": { + "sha512": "eK5BHx/pHLGGO/WDo7CS070MGgx3N7B/ORO/oKeS0qgCyv+ZAR47YWKXmG5aF+lIrAJd3uJjMTdTKgXTU2UDWw==", + "type": "package", + "path": "microsoft.extensions.configuration/1.1.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/netstandard1.1/Microsoft.Extensions.Configuration.dll", + "lib/netstandard1.1/Microsoft.Extensions.Configuration.xml", + "microsoft.extensions.configuration.1.1.2.nupkg.sha512", + "microsoft.extensions.configuration.nuspec" + ] + }, + "Microsoft.Extensions.Configuration.Abstractions/9.0.4": { + "sha512": "0LN/DiIKvBrkqp7gkF3qhGIeZk6/B63PthAHjQsxymJfIBcz0kbf4/p/t4lMgggVxZ+flRi5xvTwlpPOoZk8fg==", + "type": "package", + "path": "microsoft.extensions.configuration.abstractions/9.0.4", + "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/net8.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Configuration.Abstractions.targets", + "lib/net462/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/net462/Microsoft.Extensions.Configuration.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.xml", + "lib/net9.0/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/net9.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.9.0.4.nupkg.sha512", + "microsoft.extensions.configuration.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.DependencyInjection/9.0.5": { + "sha512": "N1Mn0T/tUBPoLL+Fzsp+VCEtneUhhxc1//Dx3BeuQ8AX+XrMlYCfnp2zgpEXnTCB7053CLdiqVWPZ7mEX6MPjg==", + "type": "package", + "path": "microsoft.extensions.dependencyinjection/9.0.5", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.DependencyInjection.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.targets", + "lib/net462/Microsoft.Extensions.DependencyInjection.dll", + "lib/net462/Microsoft.Extensions.DependencyInjection.xml", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/net9.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/net9.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.9.0.5.nupkg.sha512", + "microsoft.extensions.dependencyinjection.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/9.0.5": { + "sha512": "cjnRtsEAzU73aN6W7vkWy8Phj5t3Xm78HSqgrbh/O4Q9SK/yN73wZVa21QQY6amSLQRQ/M8N+koGnY6PuvKQsw==", + "type": "package", + "path": "microsoft.extensions.dependencyinjection.abstractions/9.0.5", + "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/net8.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.Abstractions.targets", + "lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/net9.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net9.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.9.0.5.nupkg.sha512", + "microsoft.extensions.dependencyinjection.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.DependencyModel/9.0.4": { + "sha512": "ACtnvl3H3M/f8Z42980JxsNu7V9PPbzys4vBs83ZewnsgKd7JeYK18OMPo0g+MxAHrpgMrjmlinXDiaSRPcVnA==", + "type": "package", + "path": "microsoft.extensions.dependencymodel/9.0.4", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.DependencyModel.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyModel.targets", + "lib/net462/Microsoft.Extensions.DependencyModel.dll", + "lib/net462/Microsoft.Extensions.DependencyModel.xml", + "lib/net8.0/Microsoft.Extensions.DependencyModel.dll", + "lib/net8.0/Microsoft.Extensions.DependencyModel.xml", + "lib/net9.0/Microsoft.Extensions.DependencyModel.dll", + "lib/net9.0/Microsoft.Extensions.DependencyModel.xml", + "lib/netstandard2.0/Microsoft.Extensions.DependencyModel.dll", + "lib/netstandard2.0/Microsoft.Extensions.DependencyModel.xml", + "microsoft.extensions.dependencymodel.9.0.4.nupkg.sha512", + "microsoft.extensions.dependencymodel.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Logging/9.0.5": { + "sha512": "rQU61lrgvpE/UgcAd4E56HPxUIkX/VUQCxWmwDTLLVeuwRDYTL0q/FLGfAW17cGTKyCh7ywYAEnY3sTEvURsfg==", + "type": "package", + "path": "microsoft.extensions.logging/9.0.5", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Logging.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.targets", + "lib/net462/Microsoft.Extensions.Logging.dll", + "lib/net462/Microsoft.Extensions.Logging.xml", + "lib/net8.0/Microsoft.Extensions.Logging.dll", + "lib/net8.0/Microsoft.Extensions.Logging.xml", + "lib/net9.0/Microsoft.Extensions.Logging.dll", + "lib/net9.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.9.0.5.nupkg.sha512", + "microsoft.extensions.logging.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Logging.Abstractions/9.0.5": { + "sha512": "pP1PADCrIxMYJXxFmTVbAgEU7GVpjK5i0/tyfU9DiE0oXQy3JWQaOVgCkrCiePLgS8b5sghM3Fau3EeHiVWbCg==", + "type": "package", + "path": "microsoft.extensions.logging.abstractions/9.0.5", + "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/net8.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/net8.0/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.xml", + "lib/net9.0/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/net9.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.9.0.5.nupkg.sha512", + "microsoft.extensions.logging.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Options/9.0.5": { + "sha512": "vPdJQU8YLOUSSK8NL0RmwcXJr2E0w8xH559PGQl4JYsglgilZr9LZnqV2zdgk+XR05+kuvhBEZKoDVd46o7NqA==", + "type": "package", + "path": "microsoft.extensions.options/9.0.5", + "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/net8.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/net8.0/Microsoft.Extensions.Options.dll", + "lib/net8.0/Microsoft.Extensions.Options.xml", + "lib/net9.0/Microsoft.Extensions.Options.dll", + "lib/net9.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.9.0.5.nupkg.sha512", + "microsoft.extensions.options.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Primitives/9.0.5": { + "sha512": "b4OAv1qE1C9aM+ShWJu3rlo/WjDwa/I30aIPXqDWSKXTtKl1Wwh6BZn+glH5HndGVVn3C6ZAPQj5nv7/7HJNBQ==", + "type": "package", + "path": "microsoft.extensions.primitives/9.0.5", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Primitives.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Primitives.targets", + "lib/net462/Microsoft.Extensions.Primitives.dll", + "lib/net462/Microsoft.Extensions.Primitives.xml", + "lib/net8.0/Microsoft.Extensions.Primitives.dll", + "lib/net8.0/Microsoft.Extensions.Primitives.xml", + "lib/net9.0/Microsoft.Extensions.Primitives.dll", + "lib/net9.0/Microsoft.Extensions.Primitives.xml", + "lib/netstandard2.0/Microsoft.Extensions.Primitives.dll", + "lib/netstandard2.0/Microsoft.Extensions.Primitives.xml", + "microsoft.extensions.primitives.9.0.5.nupkg.sha512", + "microsoft.extensions.primitives.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.IdentityModel.Abstractions/8.10.0": { + "sha512": "JxKG5YRBB3b6kSGFec7sbIOngEzPxu4EKPBEIdj/l0ufS1Qhc4wLxAPGJYGhEYOomTbDWaA+ZKVEaJNU+2iWUQ==", + "type": "package", + "path": "microsoft.identitymodel.abstractions/8.10.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "lib/net462/Microsoft.IdentityModel.Abstractions.dll", + "lib/net462/Microsoft.IdentityModel.Abstractions.xml", + "lib/net472/Microsoft.IdentityModel.Abstractions.dll", + "lib/net472/Microsoft.IdentityModel.Abstractions.xml", + "lib/net6.0/Microsoft.IdentityModel.Abstractions.dll", + "lib/net6.0/Microsoft.IdentityModel.Abstractions.xml", + "lib/net8.0/Microsoft.IdentityModel.Abstractions.dll", + "lib/net8.0/Microsoft.IdentityModel.Abstractions.xml", + "lib/net9.0/Microsoft.IdentityModel.Abstractions.dll", + "lib/net9.0/Microsoft.IdentityModel.Abstractions.xml", + "lib/netstandard2.0/Microsoft.IdentityModel.Abstractions.dll", + "lib/netstandard2.0/Microsoft.IdentityModel.Abstractions.xml", + "microsoft.identitymodel.abstractions.8.10.0.nupkg.sha512", + "microsoft.identitymodel.abstractions.nuspec" + ] + }, + "Microsoft.IdentityModel.JsonWebTokens/8.10.0": { + "sha512": "6YcL0exWuiHBUmQIkcocQ0x0mvvNewKbmpJpsZw4uzbweotSmAmb0pOK3CdIDYq31atjxrVOvlfF51+0FmrI5g==", + "type": "package", + "path": "microsoft.identitymodel.jsonwebtokens/8.10.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "lib/net462/Microsoft.IdentityModel.JsonWebTokens.dll", + "lib/net462/Microsoft.IdentityModel.JsonWebTokens.xml", + "lib/net472/Microsoft.IdentityModel.JsonWebTokens.dll", + "lib/net472/Microsoft.IdentityModel.JsonWebTokens.xml", + "lib/net6.0/Microsoft.IdentityModel.JsonWebTokens.dll", + "lib/net6.0/Microsoft.IdentityModel.JsonWebTokens.xml", + "lib/net8.0/Microsoft.IdentityModel.JsonWebTokens.dll", + "lib/net8.0/Microsoft.IdentityModel.JsonWebTokens.xml", + "lib/net9.0/Microsoft.IdentityModel.JsonWebTokens.dll", + "lib/net9.0/Microsoft.IdentityModel.JsonWebTokens.xml", + "lib/netstandard2.0/Microsoft.IdentityModel.JsonWebTokens.dll", + "lib/netstandard2.0/Microsoft.IdentityModel.JsonWebTokens.xml", + "microsoft.identitymodel.jsonwebtokens.8.10.0.nupkg.sha512", + "microsoft.identitymodel.jsonwebtokens.nuspec" + ] + }, + "Microsoft.IdentityModel.Logging/8.10.0": { + "sha512": "BnkYC9lKYOL3zk7pmle9VJWAzSTPCjkvLyoKPmr4suFZo2hG3YYnFrffjUgdKHIUlyhcd1eHsBHMkfa1S3o/tA==", + "type": "package", + "path": "microsoft.identitymodel.logging/8.10.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "lib/net462/Microsoft.IdentityModel.Logging.dll", + "lib/net462/Microsoft.IdentityModel.Logging.xml", + "lib/net472/Microsoft.IdentityModel.Logging.dll", + "lib/net472/Microsoft.IdentityModel.Logging.xml", + "lib/net6.0/Microsoft.IdentityModel.Logging.dll", + "lib/net6.0/Microsoft.IdentityModel.Logging.xml", + "lib/net8.0/Microsoft.IdentityModel.Logging.dll", + "lib/net8.0/Microsoft.IdentityModel.Logging.xml", + "lib/net9.0/Microsoft.IdentityModel.Logging.dll", + "lib/net9.0/Microsoft.IdentityModel.Logging.xml", + "lib/netstandard2.0/Microsoft.IdentityModel.Logging.dll", + "lib/netstandard2.0/Microsoft.IdentityModel.Logging.xml", + "microsoft.identitymodel.logging.8.10.0.nupkg.sha512", + "microsoft.identitymodel.logging.nuspec" + ] + }, + "Microsoft.IdentityModel.Protocols/7.0.3": { + "sha512": "BtwR+tctBYhPNygyZmt1Rnw74GFrJteW+1zcdIgyvBCjkek6cNwPPqRfdhzCv61i+lwyNomRi8+iI4QKd4YCKA==", + "type": "package", + "path": "microsoft.identitymodel.protocols/7.0.3", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net461/Microsoft.IdentityModel.Protocols.dll", + "lib/net461/Microsoft.IdentityModel.Protocols.xml", + "lib/net462/Microsoft.IdentityModel.Protocols.dll", + "lib/net462/Microsoft.IdentityModel.Protocols.xml", + "lib/net472/Microsoft.IdentityModel.Protocols.dll", + "lib/net472/Microsoft.IdentityModel.Protocols.xml", + "lib/net6.0/Microsoft.IdentityModel.Protocols.dll", + "lib/net6.0/Microsoft.IdentityModel.Protocols.xml", + "lib/net8.0/Microsoft.IdentityModel.Protocols.dll", + "lib/net8.0/Microsoft.IdentityModel.Protocols.xml", + "lib/netstandard2.0/Microsoft.IdentityModel.Protocols.dll", + "lib/netstandard2.0/Microsoft.IdentityModel.Protocols.xml", + "microsoft.identitymodel.protocols.7.0.3.nupkg.sha512", + "microsoft.identitymodel.protocols.nuspec" + ] + }, + "Microsoft.IdentityModel.Protocols.OpenIdConnect/7.0.3": { + "sha512": "W97TraHApDNArLwpPcXfD+FZH7njJsfEwZE9y9BoofeXMS8H0LBBobz0VOmYmMK4mLdOKxzN7SFT3Ekg0FWI3Q==", + "type": "package", + "path": "microsoft.identitymodel.protocols.openidconnect/7.0.3", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net461/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", + "lib/net461/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", + "lib/net462/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", + "lib/net462/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", + "lib/net472/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", + "lib/net472/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", + "lib/net6.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", + "lib/net6.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", + "lib/net8.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", + "lib/net8.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", + "lib/netstandard2.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", + "lib/netstandard2.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", + "microsoft.identitymodel.protocols.openidconnect.7.0.3.nupkg.sha512", + "microsoft.identitymodel.protocols.openidconnect.nuspec" + ] + }, + "Microsoft.IdentityModel.Tokens/8.10.0": { + "sha512": "lKS/JCsPnw422g0uk4+iOIJA2Uvq3v6QydDEiOdCFGN1ge/lSeSb8ruZLGLOBMPdN4snSGGn21p92VDuHt4pew==", + "type": "package", + "path": "microsoft.identitymodel.tokens/8.10.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "lib/net462/Microsoft.IdentityModel.Tokens.dll", + "lib/net462/Microsoft.IdentityModel.Tokens.xml", + "lib/net472/Microsoft.IdentityModel.Tokens.dll", + "lib/net472/Microsoft.IdentityModel.Tokens.xml", + "lib/net6.0/Microsoft.IdentityModel.Tokens.dll", + "lib/net6.0/Microsoft.IdentityModel.Tokens.xml", + "lib/net8.0/Microsoft.IdentityModel.Tokens.dll", + "lib/net8.0/Microsoft.IdentityModel.Tokens.xml", + "lib/net9.0/Microsoft.IdentityModel.Tokens.dll", + "lib/net9.0/Microsoft.IdentityModel.Tokens.xml", + "lib/netstandard2.0/Microsoft.IdentityModel.Tokens.dll", + "lib/netstandard2.0/Microsoft.IdentityModel.Tokens.xml", + "microsoft.identitymodel.tokens.8.10.0.nupkg.sha512", + "microsoft.identitymodel.tokens.nuspec" + ] + }, + "Microsoft.NETCore.Platforms/1.1.1": { + "sha512": "TMBuzAHpTenGbGgk0SMTwyEkyijY/Eae4ZGsFNYJvAr/LDn1ku3Etp3FPxChmDp5HHF3kzJuoaa08N0xjqAJfQ==", + "type": "package", + "path": "microsoft.netcore.platforms/1.1.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/_._", + "microsoft.netcore.platforms.1.1.1.nupkg.sha512", + "microsoft.netcore.platforms.nuspec", + "runtime.json" + ] + }, + "Microsoft.NETCore.Targets/1.1.3": { + "sha512": "3Wrmi0kJDzClwAC+iBdUBpEKmEle8FQNsCs77fkiOIw/9oYA07bL1EZNX0kQ2OMN3xpwvl0vAtOCYY3ndDNlhQ==", + "type": "package", + "path": "microsoft.netcore.targets/1.1.3", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/_._", + "microsoft.netcore.targets.1.1.3.nupkg.sha512", + "microsoft.netcore.targets.nuspec", + "runtime.json" + ] + }, + "Microsoft.OpenApi/1.6.23": { + "sha512": "tZ1I0KXnn98CWuV8cpI247A17jaY+ILS9vvF7yhI0uPPEqF4P1d7BWL5Uwtel10w9NucllHB3nTkfYTAcHAh8g==", + "type": "package", + "path": "microsoft.openapi/1.6.23", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "lib/netstandard2.0/Microsoft.OpenApi.dll", + "lib/netstandard2.0/Microsoft.OpenApi.pdb", + "lib/netstandard2.0/Microsoft.OpenApi.xml", + "microsoft.openapi.1.6.23.nupkg.sha512", + "microsoft.openapi.nuspec" + ] + }, + "Microsoft.Win32.Primitives/4.3.0": { + "sha512": "9ZQKCWxH7Ijp9BfahvL2Zyf1cJIk8XYLF6Yjzr2yi0b2cOut/HQ31qf1ThHAgCc3WiZMdnWcfJCgN82/0UunxA==", + "type": "package", + "path": "microsoft.win32.primitives/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/Microsoft.Win32.Primitives.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "microsoft.win32.primitives.4.3.0.nupkg.sha512", + "microsoft.win32.primitives.nuspec", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/Microsoft.Win32.Primitives.dll", + "ref/netstandard1.3/Microsoft.Win32.Primitives.dll", + "ref/netstandard1.3/Microsoft.Win32.Primitives.xml", + "ref/netstandard1.3/de/Microsoft.Win32.Primitives.xml", + "ref/netstandard1.3/es/Microsoft.Win32.Primitives.xml", + "ref/netstandard1.3/fr/Microsoft.Win32.Primitives.xml", + "ref/netstandard1.3/it/Microsoft.Win32.Primitives.xml", + "ref/netstandard1.3/ja/Microsoft.Win32.Primitives.xml", + "ref/netstandard1.3/ko/Microsoft.Win32.Primitives.xml", + "ref/netstandard1.3/ru/Microsoft.Win32.Primitives.xml", + "ref/netstandard1.3/zh-hans/Microsoft.Win32.Primitives.xml", + "ref/netstandard1.3/zh-hant/Microsoft.Win32.Primitives.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._" + ] + }, + "Mono.TextTemplating/3.0.0": { + "sha512": "YqueG52R/Xej4VVbKuRIodjiAhV0HR/XVbLbNrJhCZnzjnSjgMJ/dCdV0akQQxavX6hp/LC6rqLGLcXeQYU7XA==", + "type": "package", + "path": "mono.texttemplating/3.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "LICENSE.txt/LICENSE", + "buildTransitive/Mono.TextTemplating.targets", + "lib/net472/Mono.TextTemplating.dll", + "lib/net6.0/Mono.TextTemplating.dll", + "lib/netstandard2.0/Mono.TextTemplating.dll", + "mono.texttemplating.3.0.0.nupkg.sha512", + "mono.texttemplating.nuspec", + "readme.md" + ] + }, + "NETStandard.Library/1.6.1": { + "sha512": "WcSp3+vP+yHNgS8EV5J7pZ9IRpeDuARBPN28by8zqff1wJQXm26PVU8L3/fYLBJVU7BtDyqNVWq2KlCVvSSR4A==", + "type": "package", + "path": "netstandard.library/1.6.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "netstandard.library.1.6.1.nupkg.sha512", + "netstandard.library.nuspec" + ] + }, + "Npgsql/9.0.3": { + "sha512": "tPvY61CxOAWxNsKLEBg+oR646X4Bc8UmyQ/tJszL/7mEmIXQnnBhVJZrZEEUv0Bstu0mEsHZD5At3EO8zQRAYw==", + "type": "package", + "path": "npgsql/9.0.3", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "lib/net6.0/Npgsql.dll", + "lib/net6.0/Npgsql.xml", + "lib/net8.0/Npgsql.dll", + "lib/net8.0/Npgsql.xml", + "npgsql.9.0.3.nupkg.sha512", + "npgsql.nuspec", + "postgresql.png" + ] + }, + "Npgsql.EntityFrameworkCore.PostgreSQL/9.0.4": { + "sha512": "mw5vcY2IEc7L+IeGrxpp/J5OSnCcjkjAgJYCm/eD52wpZze8zsSifdqV7zXslSMmfJG2iIUGZyo3KuDtEFKwMQ==", + "type": "package", + "path": "npgsql.entityframeworkcore.postgresql/9.0.4", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll", + "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.xml", + "npgsql.entityframeworkcore.postgresql.9.0.4.nupkg.sha512", + "npgsql.entityframeworkcore.postgresql.nuspec", + "postgresql.png" + ] + }, + "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "sha512": "7VSGO0URRKoMEAq0Sc9cRz8mb6zbyx/BZDEWhgPdzzpmFhkam3fJ1DAGWFXBI4nGlma+uPKpfuMQP5LXRnOH5g==", + "type": "package", + "path": "runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl/4.3.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", + "runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/debian.8-x64/native/System.Security.Cryptography.Native.OpenSsl.so" + ] + }, + "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "sha512": "0oAaTAm6e2oVH+/Zttt0cuhGaePQYKII1dY8iaqP7CvOpVKgLybKRFvQjXR2LtxXOXTVPNv14j0ot8uV+HrUmw==", + "type": "package", + "path": "runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl/4.3.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", + "runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/fedora.23-x64/native/System.Security.Cryptography.Native.OpenSsl.so" + ] + }, + "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "sha512": "G24ibsCNi5Kbz0oXWynBoRgtGvsw5ZSVEWjv13/KiCAM8C6wz9zzcCniMeQFIkJ2tasjo2kXlvlBZhplL51kGg==", + "type": "package", + "path": "runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl/4.3.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", + "runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/fedora.24-x64/native/System.Security.Cryptography.Native.OpenSsl.so" + ] + }, + "runtime.native.System/4.3.0": { + "sha512": "c/qWt2LieNZIj1jGnVNsE2Kl23Ya2aSTBuXMD6V7k9KWr6l16Tqdwq+hJScEpWER9753NWC8h96PaVNY5Ld7Jw==", + "type": "package", + "path": "runtime.native.system/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/_._", + "runtime.native.system.4.3.0.nupkg.sha512", + "runtime.native.system.nuspec" + ] + }, + "runtime.native.System.IO.Compression/4.3.0": { + "sha512": "INBPonS5QPEgn7naufQFXJEp3zX6L4bwHgJ/ZH78aBTpeNfQMtf7C6VrAFhlq2xxWBveIOWyFzQjJ8XzHMhdOQ==", + "type": "package", + "path": "runtime.native.system.io.compression/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/_._", + "runtime.native.system.io.compression.4.3.0.nupkg.sha512", + "runtime.native.system.io.compression.nuspec" + ] + }, + "runtime.native.System.Net.Http/4.3.0": { + "sha512": "ZVuZJqnnegJhd2k/PtAbbIcZ3aZeITq3sj06oKfMBSfphW3HDmk/t4ObvbOk/JA/swGR0LNqMksAh/f7gpTROg==", + "type": "package", + "path": "runtime.native.system.net.http/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/_._", + "runtime.native.system.net.http.4.3.0.nupkg.sha512", + "runtime.native.system.net.http.nuspec" + ] + }, + "runtime.native.System.Security.Cryptography.Apple/4.3.0": { + "sha512": "DloMk88juo0OuOWr56QG7MNchmafTLYWvABy36izkrLI5VledI0rq28KGs1i9wbpeT9NPQrx/wTf8U2vazqQ3Q==", + "type": "package", + "path": "runtime.native.system.security.cryptography.apple/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/_._", + "runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512", + "runtime.native.system.security.cryptography.apple.nuspec" + ] + }, + "runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "sha512": "QR1OwtwehHxSeQvZKXe+iSd+d3XZNkEcuWMFYa2i0aG1l+lR739HPicKMlTbJst3spmeekDVBUS7SeS26s4U/g==", + "type": "package", + "path": "runtime.native.system.security.cryptography.openssl/4.3.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/_._", + "runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", + "runtime.native.system.security.cryptography.openssl.nuspec" + ] + }, + "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "sha512": "I+GNKGg2xCHueRd1m9PzeEW7WLbNNLznmTuEi8/vZX71HudUbx1UTwlGkiwMri7JLl8hGaIAWnA/GONhu+LOyQ==", + "type": "package", + "path": "runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl/4.3.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", + "runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/opensuse.13.2-x64/native/System.Security.Cryptography.Native.OpenSsl.so" + ] + }, + "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "sha512": "1Z3TAq1ytS1IBRtPXJvEUZdVsfWfeNEhBkbiOCGEl9wwAfsjP2lz3ZFDx5tq8p60/EqbS0HItG5piHuB71RjoA==", + "type": "package", + "path": "runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl/4.3.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", + "runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/opensuse.42.1-x64/native/System.Security.Cryptography.Native.OpenSsl.so" + ] + }, + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple/4.3.0": { + "sha512": "kVXCuMTrTlxq4XOOMAysuNwsXWpYeboGddNGpIgNSZmv1b6r/s/DPk0fYMB7Q5Qo4bY68o48jt4T4y5BVecbCQ==", + "type": "package", + "path": "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512", + "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple.nuspec", + "runtimes/osx.10.10-x64/native/System.Security.Cryptography.Native.Apple.dylib" + ] + }, + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "sha512": "6mU/cVmmHtQiDXhnzUImxIcDL48GbTk+TsptXyJA+MIOG9LRjPoAQC/qBFB7X+UNyK86bmvGwC8t+M66wsYC8w==", + "type": "package", + "path": "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl/4.3.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", + "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/osx.10.10-x64/native/System.Security.Cryptography.Native.OpenSsl.dylib" + ] + }, + "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "sha512": "vjwG0GGcTW/PPg6KVud8F9GLWYuAV1rrw1BKAqY0oh4jcUqg15oYF1+qkGR2x2ZHM4DQnWKQ7cJgYbfncz/lYg==", + "type": "package", + "path": "runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl/4.3.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", + "runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/rhel.7-x64/native/System.Security.Cryptography.Native.OpenSsl.so" + ] + }, + "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "sha512": "7KMFpTkHC/zoExs+PwP8jDCWcrK9H6L7soowT80CUx3e+nxP/AFnq0AQAW5W76z2WYbLAYCRyPfwYFG6zkvQRw==", + "type": "package", + "path": "runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl/4.3.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", + "runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/ubuntu.14.04-x64/native/System.Security.Cryptography.Native.OpenSsl.so" + ] + }, + "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "sha512": "xrlmRCnKZJLHxyyLIqkZjNXqgxnKdZxfItrPkjI+6pkRo5lHX8YvSZlWrSI5AVwLMi4HbNWP7064hcAWeZKp5w==", + "type": "package", + "path": "runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl/4.3.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", + "runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/ubuntu.16.04-x64/native/System.Security.Cryptography.Native.OpenSsl.so" + ] + }, + "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { + "sha512": "leXiwfiIkW7Gmn7cgnNcdtNAU70SjmKW3jxGj1iKHOvdn0zRWsgv/l2OJUO5zdGdiv2VRFnAsxxhDgMzofPdWg==", + "type": "package", + "path": "runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl/4.3.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", + "runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/ubuntu.16.10-x64/native/System.Security.Cryptography.Native.OpenSsl.so" + ] + }, + "Sprache/2.3.1": { + "sha512": "Q+mXeiTxiUYG3lKYF6TS82/SyB4F2613Q1yXTMwg4jWGHEEVC3yrzHtNcI4B3qnDI0+eJsezGJ0V+cToUytHWw==", + "type": "package", + "path": "sprache/2.3.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net35/Sprache.dll", + "lib/net35/Sprache.xml", + "lib/net40/Sprache.dll", + "lib/net40/Sprache.xml", + "lib/net45/Sprache.dll", + "lib/net45/Sprache.xml", + "lib/netstandard1.0/Sprache.dll", + "lib/netstandard1.0/Sprache.xml", + "lib/netstandard2.0/Sprache.dll", + "lib/netstandard2.0/Sprache.xml", + "lib/netstandard2.1/Sprache.dll", + "lib/netstandard2.1/Sprache.xml", + "lib/sl5/Sprache.dll", + "lib/sl5/Sprache.xml", + "sprache.2.3.1.nupkg.sha512", + "sprache.nuspec" + ] + }, + "Swashbuckle.AspNetCore/8.1.1": { + "sha512": "HJHexmU0PiYevgTLvKjYkxEtclF2w4O7iTd3Ef3p6KeT0kcYLpkFVgCw6glpGS57h8769anv8G+NFi9Kge+/yw==", + "type": "package", + "path": "swashbuckle.aspnetcore/8.1.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "build/Swashbuckle.AspNetCore.props", + "buildMultiTargeting/Swashbuckle.AspNetCore.props", + "docs/package-readme.md", + "swashbuckle.aspnetcore.8.1.1.nupkg.sha512", + "swashbuckle.aspnetcore.nuspec" + ] + }, + "Swashbuckle.AspNetCore.Swagger/8.1.1": { + "sha512": "h+8D5jQtnl6X4f2hJQwf0Khj0SnCQANzirCELjXJ6quJ4C1aNNCvJrAsQ+4fOKAMqJkvW48cKj79ftG+YoGcRg==", + "type": "package", + "path": "swashbuckle.aspnetcore.swagger/8.1.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net8.0/Swashbuckle.AspNetCore.Swagger.dll", + "lib/net8.0/Swashbuckle.AspNetCore.Swagger.pdb", + "lib/net8.0/Swashbuckle.AspNetCore.Swagger.xml", + "lib/net9.0/Swashbuckle.AspNetCore.Swagger.dll", + "lib/net9.0/Swashbuckle.AspNetCore.Swagger.pdb", + "lib/net9.0/Swashbuckle.AspNetCore.Swagger.xml", + "lib/netstandard2.0/Swashbuckle.AspNetCore.Swagger.dll", + "lib/netstandard2.0/Swashbuckle.AspNetCore.Swagger.pdb", + "lib/netstandard2.0/Swashbuckle.AspNetCore.Swagger.xml", + "package-readme.md", + "swashbuckle.aspnetcore.swagger.8.1.1.nupkg.sha512", + "swashbuckle.aspnetcore.swagger.nuspec" + ] + }, + "Swashbuckle.AspNetCore.SwaggerGen/8.1.1": { + "sha512": "2EuPzXSNleOOzYvziERWRLnk1Oz9i0Z1PimaUFy1SasBqeV/rG+eMfwFAMtTaf4W6gvVOzRcUCNRHvpBIIzr+A==", + "type": "package", + "path": "swashbuckle.aspnetcore.swaggergen/8.1.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll", + "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.pdb", + "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.xml", + "lib/net9.0/Swashbuckle.AspNetCore.SwaggerGen.dll", + "lib/net9.0/Swashbuckle.AspNetCore.SwaggerGen.pdb", + "lib/net9.0/Swashbuckle.AspNetCore.SwaggerGen.xml", + "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerGen.dll", + "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerGen.pdb", + "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerGen.xml", + "package-readme.md", + "swashbuckle.aspnetcore.swaggergen.8.1.1.nupkg.sha512", + "swashbuckle.aspnetcore.swaggergen.nuspec" + ] + }, + "Swashbuckle.AspNetCore.SwaggerUI/8.1.1": { + "sha512": "GDLX/MpK4oa2nYC1N/zN2UidQTtVKLPF6gkdEmGb0RITEwpJG9Gu8olKqPYnKqVeFn44JZoCS0M2LGRKXP8B/A==", + "type": "package", + "path": "swashbuckle.aspnetcore.swaggerui/8.1.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll", + "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.pdb", + "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.xml", + "lib/net9.0/Swashbuckle.AspNetCore.SwaggerUI.dll", + "lib/net9.0/Swashbuckle.AspNetCore.SwaggerUI.pdb", + "lib/net9.0/Swashbuckle.AspNetCore.SwaggerUI.xml", + "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerUI.dll", + "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerUI.pdb", + "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerUI.xml", + "package-readme.md", + "swashbuckle.aspnetcore.swaggerui.8.1.1.nupkg.sha512", + "swashbuckle.aspnetcore.swaggerui.nuspec" + ] + }, + "System.AppContext/4.3.0": { + "sha512": "fKC+rmaLfeIzUhagxY17Q9siv/sPrjjKcfNg1Ic8IlQkZLipo8ljcaZQu4VtI4Jqbzjc2VTjzGLF6WmsRXAEgA==", + "type": "package", + "path": "system.appcontext/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.AppContext.dll", + "lib/net463/System.AppContext.dll", + "lib/netcore50/System.AppContext.dll", + "lib/netstandard1.6/System.AppContext.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.AppContext.dll", + "ref/net463/System.AppContext.dll", + "ref/netstandard/_._", + "ref/netstandard1.3/System.AppContext.dll", + "ref/netstandard1.3/System.AppContext.xml", + "ref/netstandard1.3/de/System.AppContext.xml", + "ref/netstandard1.3/es/System.AppContext.xml", + "ref/netstandard1.3/fr/System.AppContext.xml", + "ref/netstandard1.3/it/System.AppContext.xml", + "ref/netstandard1.3/ja/System.AppContext.xml", + "ref/netstandard1.3/ko/System.AppContext.xml", + "ref/netstandard1.3/ru/System.AppContext.xml", + "ref/netstandard1.3/zh-hans/System.AppContext.xml", + "ref/netstandard1.3/zh-hant/System.AppContext.xml", + "ref/netstandard1.6/System.AppContext.dll", + "ref/netstandard1.6/System.AppContext.xml", + "ref/netstandard1.6/de/System.AppContext.xml", + "ref/netstandard1.6/es/System.AppContext.xml", + "ref/netstandard1.6/fr/System.AppContext.xml", + "ref/netstandard1.6/it/System.AppContext.xml", + "ref/netstandard1.6/ja/System.AppContext.xml", + "ref/netstandard1.6/ko/System.AppContext.xml", + "ref/netstandard1.6/ru/System.AppContext.xml", + "ref/netstandard1.6/zh-hans/System.AppContext.xml", + "ref/netstandard1.6/zh-hant/System.AppContext.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/aot/lib/netcore50/System.AppContext.dll", + "system.appcontext.4.3.0.nupkg.sha512", + "system.appcontext.nuspec" + ] + }, + "System.Buffers/4.3.0": { + "sha512": "ratu44uTIHgeBeI0dE8DWvmXVBSo4u7ozRZZHOMmK/JPpYyo0dAfgSiHlpiObMQ5lEtEyIXA40sKRYg5J6A8uQ==", + "type": "package", + "path": "system.buffers/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.1/.xml", + "lib/netstandard1.1/System.Buffers.dll", + "system.buffers.4.3.0.nupkg.sha512", + "system.buffers.nuspec" + ] + }, + "System.CodeDom/6.0.0": { + "sha512": "CPc6tWO1LAer3IzfZufDBRL+UZQcj5uS207NHALQzP84Vp/z6wF0Aa0YZImOQY8iStY0A2zI/e3ihKNPfUm8XA==", + "type": "package", + "path": "system.codedom/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.CodeDom.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/System.CodeDom.dll", + "lib/net461/System.CodeDom.xml", + "lib/net6.0/System.CodeDom.dll", + "lib/net6.0/System.CodeDom.xml", + "lib/netstandard2.0/System.CodeDom.dll", + "lib/netstandard2.0/System.CodeDom.xml", + "system.codedom.6.0.0.nupkg.sha512", + "system.codedom.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Collections/4.3.0": { + "sha512": "3Dcj85/TBdVpL5Zr+gEEBUuFe2icOnLalmEh9hfck1PTYbbyWuZgh4fmm2ysCLTrqLQw6t3TgTyJ+VLp+Qb+Lw==", + "type": "package", + "path": "system.collections/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Collections.dll", + "ref/netcore50/System.Collections.xml", + "ref/netcore50/de/System.Collections.xml", + "ref/netcore50/es/System.Collections.xml", + "ref/netcore50/fr/System.Collections.xml", + "ref/netcore50/it/System.Collections.xml", + "ref/netcore50/ja/System.Collections.xml", + "ref/netcore50/ko/System.Collections.xml", + "ref/netcore50/ru/System.Collections.xml", + "ref/netcore50/zh-hans/System.Collections.xml", + "ref/netcore50/zh-hant/System.Collections.xml", + "ref/netstandard1.0/System.Collections.dll", + "ref/netstandard1.0/System.Collections.xml", + "ref/netstandard1.0/de/System.Collections.xml", + "ref/netstandard1.0/es/System.Collections.xml", + "ref/netstandard1.0/fr/System.Collections.xml", + "ref/netstandard1.0/it/System.Collections.xml", + "ref/netstandard1.0/ja/System.Collections.xml", + "ref/netstandard1.0/ko/System.Collections.xml", + "ref/netstandard1.0/ru/System.Collections.xml", + "ref/netstandard1.0/zh-hans/System.Collections.xml", + "ref/netstandard1.0/zh-hant/System.Collections.xml", + "ref/netstandard1.3/System.Collections.dll", + "ref/netstandard1.3/System.Collections.xml", + "ref/netstandard1.3/de/System.Collections.xml", + "ref/netstandard1.3/es/System.Collections.xml", + "ref/netstandard1.3/fr/System.Collections.xml", + "ref/netstandard1.3/it/System.Collections.xml", + "ref/netstandard1.3/ja/System.Collections.xml", + "ref/netstandard1.3/ko/System.Collections.xml", + "ref/netstandard1.3/ru/System.Collections.xml", + "ref/netstandard1.3/zh-hans/System.Collections.xml", + "ref/netstandard1.3/zh-hant/System.Collections.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.collections.4.3.0.nupkg.sha512", + "system.collections.nuspec" + ] + }, + "System.Collections.Concurrent/4.3.0": { + "sha512": "ztl69Xp0Y/UXCL+3v3tEU+lIy+bvjKNUmopn1wep/a291pVPK7dxBd6T7WnlQqRog+d1a/hSsgRsmFnIBKTPLQ==", + "type": "package", + "path": "system.collections.concurrent/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Collections.Concurrent.dll", + "lib/netstandard1.3/System.Collections.Concurrent.dll", + "lib/portable-net45+win8+wpa81/_._", + "lib/win8/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Collections.Concurrent.dll", + "ref/netcore50/System.Collections.Concurrent.xml", + "ref/netcore50/de/System.Collections.Concurrent.xml", + "ref/netcore50/es/System.Collections.Concurrent.xml", + "ref/netcore50/fr/System.Collections.Concurrent.xml", + "ref/netcore50/it/System.Collections.Concurrent.xml", + "ref/netcore50/ja/System.Collections.Concurrent.xml", + "ref/netcore50/ko/System.Collections.Concurrent.xml", + "ref/netcore50/ru/System.Collections.Concurrent.xml", + "ref/netcore50/zh-hans/System.Collections.Concurrent.xml", + "ref/netcore50/zh-hant/System.Collections.Concurrent.xml", + "ref/netstandard1.1/System.Collections.Concurrent.dll", + "ref/netstandard1.1/System.Collections.Concurrent.xml", + "ref/netstandard1.1/de/System.Collections.Concurrent.xml", + "ref/netstandard1.1/es/System.Collections.Concurrent.xml", + "ref/netstandard1.1/fr/System.Collections.Concurrent.xml", + "ref/netstandard1.1/it/System.Collections.Concurrent.xml", + "ref/netstandard1.1/ja/System.Collections.Concurrent.xml", + "ref/netstandard1.1/ko/System.Collections.Concurrent.xml", + "ref/netstandard1.1/ru/System.Collections.Concurrent.xml", + "ref/netstandard1.1/zh-hans/System.Collections.Concurrent.xml", + "ref/netstandard1.1/zh-hant/System.Collections.Concurrent.xml", + "ref/netstandard1.3/System.Collections.Concurrent.dll", + "ref/netstandard1.3/System.Collections.Concurrent.xml", + "ref/netstandard1.3/de/System.Collections.Concurrent.xml", + "ref/netstandard1.3/es/System.Collections.Concurrent.xml", + "ref/netstandard1.3/fr/System.Collections.Concurrent.xml", + "ref/netstandard1.3/it/System.Collections.Concurrent.xml", + "ref/netstandard1.3/ja/System.Collections.Concurrent.xml", + "ref/netstandard1.3/ko/System.Collections.Concurrent.xml", + "ref/netstandard1.3/ru/System.Collections.Concurrent.xml", + "ref/netstandard1.3/zh-hans/System.Collections.Concurrent.xml", + "ref/netstandard1.3/zh-hant/System.Collections.Concurrent.xml", + "ref/portable-net45+win8+wpa81/_._", + "ref/win8/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.collections.concurrent.4.3.0.nupkg.sha512", + "system.collections.concurrent.nuspec" + ] + }, + "System.Collections.Immutable/7.0.0": { + "sha512": "dQPcs0U1IKnBdRDBkrCTi1FoajSTBzLcVTpjO4MBCMC7f4pDOIPzgBoX8JjG7X6uZRJ8EBxsi8+DR1JuwjnzOQ==", + "type": "package", + "path": "system.collections.immutable/7.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "README.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.Collections.Immutable.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/System.Collections.Immutable.targets", + "lib/net462/System.Collections.Immutable.dll", + "lib/net462/System.Collections.Immutable.xml", + "lib/net6.0/System.Collections.Immutable.dll", + "lib/net6.0/System.Collections.Immutable.xml", + "lib/net7.0/System.Collections.Immutable.dll", + "lib/net7.0/System.Collections.Immutable.xml", + "lib/netstandard2.0/System.Collections.Immutable.dll", + "lib/netstandard2.0/System.Collections.Immutable.xml", + "system.collections.immutable.7.0.0.nupkg.sha512", + "system.collections.immutable.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Composition/7.0.0": { + "sha512": "tRwgcAkDd85O8Aq6zHDANzQaq380cek9lbMg5Qma46u5BZXq/G+XvIYmu+UI+BIIZ9zssXLYrkTykEqxxvhcmg==", + "type": "package", + "path": "system.composition/7.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.Composition.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/System.Composition.targets", + "lib/net461/_._", + "lib/netcoreapp2.0/_._", + "lib/netstandard2.0/_._", + "system.composition.7.0.0.nupkg.sha512", + "system.composition.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Composition.AttributedModel/7.0.0": { + "sha512": "2QzClqjElKxgI1jK1Jztnq44/8DmSuTSGGahXqQ4TdEV0h9s2KikQZIgcEqVzR7OuWDFPGLHIprBJGQEPr8fAQ==", + "type": "package", + "path": "system.composition.attributedmodel/7.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.Composition.AttributedModel.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/System.Composition.AttributedModel.targets", + "lib/net462/System.Composition.AttributedModel.dll", + "lib/net462/System.Composition.AttributedModel.xml", + "lib/net6.0/System.Composition.AttributedModel.dll", + "lib/net6.0/System.Composition.AttributedModel.xml", + "lib/net7.0/System.Composition.AttributedModel.dll", + "lib/net7.0/System.Composition.AttributedModel.xml", + "lib/netstandard2.0/System.Composition.AttributedModel.dll", + "lib/netstandard2.0/System.Composition.AttributedModel.xml", + "system.composition.attributedmodel.7.0.0.nupkg.sha512", + "system.composition.attributedmodel.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Composition.Convention/7.0.0": { + "sha512": "IMhTlpCs4HmlD8B+J8/kWfwX7vrBBOs6xyjSTzBlYSs7W4OET4tlkR/Sg9NG8jkdJH9Mymq0qGdYS1VPqRTBnQ==", + "type": "package", + "path": "system.composition.convention/7.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.Composition.Convention.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/System.Composition.Convention.targets", + "lib/net462/System.Composition.Convention.dll", + "lib/net462/System.Composition.Convention.xml", + "lib/net6.0/System.Composition.Convention.dll", + "lib/net6.0/System.Composition.Convention.xml", + "lib/net7.0/System.Composition.Convention.dll", + "lib/net7.0/System.Composition.Convention.xml", + "lib/netstandard2.0/System.Composition.Convention.dll", + "lib/netstandard2.0/System.Composition.Convention.xml", + "system.composition.convention.7.0.0.nupkg.sha512", + "system.composition.convention.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Composition.Hosting/7.0.0": { + "sha512": "eB6gwN9S+54jCTBJ5bpwMOVerKeUfGGTYCzz3QgDr1P55Gg/Wb27ShfPIhLMjmZ3MoAKu8uUSv6fcCdYJTN7Bg==", + "type": "package", + "path": "system.composition.hosting/7.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.Composition.Hosting.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/System.Composition.Hosting.targets", + "lib/net462/System.Composition.Hosting.dll", + "lib/net462/System.Composition.Hosting.xml", + "lib/net6.0/System.Composition.Hosting.dll", + "lib/net6.0/System.Composition.Hosting.xml", + "lib/net7.0/System.Composition.Hosting.dll", + "lib/net7.0/System.Composition.Hosting.xml", + "lib/netstandard2.0/System.Composition.Hosting.dll", + "lib/netstandard2.0/System.Composition.Hosting.xml", + "system.composition.hosting.7.0.0.nupkg.sha512", + "system.composition.hosting.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Composition.Runtime/7.0.0": { + "sha512": "aZJ1Zr5Txe925rbo4742XifEyW0MIni1eiUebmcrP3HwLXZ3IbXUj4MFMUH/RmnJOAQiS401leg/2Sz1MkApDw==", + "type": "package", + "path": "system.composition.runtime/7.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.Composition.Runtime.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/System.Composition.Runtime.targets", + "lib/net462/System.Composition.Runtime.dll", + "lib/net462/System.Composition.Runtime.xml", + "lib/net6.0/System.Composition.Runtime.dll", + "lib/net6.0/System.Composition.Runtime.xml", + "lib/net7.0/System.Composition.Runtime.dll", + "lib/net7.0/System.Composition.Runtime.xml", + "lib/netstandard2.0/System.Composition.Runtime.dll", + "lib/netstandard2.0/System.Composition.Runtime.xml", + "system.composition.runtime.7.0.0.nupkg.sha512", + "system.composition.runtime.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Composition.TypedParts/7.0.0": { + "sha512": "ZK0KNPfbtxVceTwh+oHNGUOYV2WNOHReX2AXipuvkURC7s/jPwoWfsu3SnDBDgofqbiWr96geofdQ2erm/KTHg==", + "type": "package", + "path": "system.composition.typedparts/7.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.Composition.TypedParts.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/System.Composition.TypedParts.targets", + "lib/net462/System.Composition.TypedParts.dll", + "lib/net462/System.Composition.TypedParts.xml", + "lib/net6.0/System.Composition.TypedParts.dll", + "lib/net6.0/System.Composition.TypedParts.xml", + "lib/net7.0/System.Composition.TypedParts.dll", + "lib/net7.0/System.Composition.TypedParts.xml", + "lib/netstandard2.0/System.Composition.TypedParts.dll", + "lib/netstandard2.0/System.Composition.TypedParts.xml", + "system.composition.typedparts.7.0.0.nupkg.sha512", + "system.composition.typedparts.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Console/4.3.0": { + "sha512": "DHDrIxiqk1h03m6khKWV2X8p/uvN79rgSqpilL6uzpmSfxfU5ng8VcPtW4qsDsQDHiTv6IPV9TmD5M/vElPNLg==", + "type": "package", + "path": "system.console/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Console.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Console.dll", + "ref/netstandard1.3/System.Console.dll", + "ref/netstandard1.3/System.Console.xml", + "ref/netstandard1.3/de/System.Console.xml", + "ref/netstandard1.3/es/System.Console.xml", + "ref/netstandard1.3/fr/System.Console.xml", + "ref/netstandard1.3/it/System.Console.xml", + "ref/netstandard1.3/ja/System.Console.xml", + "ref/netstandard1.3/ko/System.Console.xml", + "ref/netstandard1.3/ru/System.Console.xml", + "ref/netstandard1.3/zh-hans/System.Console.xml", + "ref/netstandard1.3/zh-hant/System.Console.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.console.4.3.0.nupkg.sha512", + "system.console.nuspec" + ] + }, + "System.Diagnostics.Debug/4.3.0": { + "sha512": "ZUhUOdqmaG5Jk3Xdb8xi5kIyQYAA4PnTNlHx1mu9ZY3qv4ELIdKbnL/akbGaKi2RnNUWaZsAs31rvzFdewTj2g==", + "type": "package", + "path": "system.diagnostics.debug/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Diagnostics.Debug.dll", + "ref/netcore50/System.Diagnostics.Debug.xml", + "ref/netcore50/de/System.Diagnostics.Debug.xml", + "ref/netcore50/es/System.Diagnostics.Debug.xml", + "ref/netcore50/fr/System.Diagnostics.Debug.xml", + "ref/netcore50/it/System.Diagnostics.Debug.xml", + "ref/netcore50/ja/System.Diagnostics.Debug.xml", + "ref/netcore50/ko/System.Diagnostics.Debug.xml", + "ref/netcore50/ru/System.Diagnostics.Debug.xml", + "ref/netcore50/zh-hans/System.Diagnostics.Debug.xml", + "ref/netcore50/zh-hant/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/System.Diagnostics.Debug.dll", + "ref/netstandard1.0/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/de/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/es/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/fr/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/it/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/ja/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/ko/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/ru/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/zh-hans/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/zh-hant/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/System.Diagnostics.Debug.dll", + "ref/netstandard1.3/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/de/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/es/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/fr/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/it/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/ja/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/ko/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/ru/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/zh-hans/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/zh-hant/System.Diagnostics.Debug.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.diagnostics.debug.4.3.0.nupkg.sha512", + "system.diagnostics.debug.nuspec" + ] + }, + "System.Diagnostics.DiagnosticSource/9.0.5": { + "sha512": "WoI5or8kY2VxFdDmsaRZ5yaYvvb+4MCyy66eXo79Cy1uMa7qXeGIlYmZx7R9Zy5S4xZjmqvkk2V8L6/vDwAAEA==", + "type": "package", + "path": "system.diagnostics.diagnosticsource/9.0.5", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.Diagnostics.DiagnosticSource.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/System.Diagnostics.DiagnosticSource.targets", + "lib/net462/System.Diagnostics.DiagnosticSource.dll", + "lib/net462/System.Diagnostics.DiagnosticSource.xml", + "lib/net8.0/System.Diagnostics.DiagnosticSource.dll", + "lib/net8.0/System.Diagnostics.DiagnosticSource.xml", + "lib/net9.0/System.Diagnostics.DiagnosticSource.dll", + "lib/net9.0/System.Diagnostics.DiagnosticSource.xml", + "lib/netstandard2.0/System.Diagnostics.DiagnosticSource.dll", + "lib/netstandard2.0/System.Diagnostics.DiagnosticSource.xml", + "system.diagnostics.diagnosticsource.9.0.5.nupkg.sha512", + "system.diagnostics.diagnosticsource.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Diagnostics.Tools/4.3.0": { + "sha512": "UUvkJfSYJMM6x527dJg2VyWPSRqIVB0Z7dbjHst1zmwTXz5CcXSYJFWRpuigfbO1Lf7yfZiIaEUesfnl/g5EyA==", + "type": "package", + "path": "system.diagnostics.tools/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Diagnostics.Tools.dll", + "ref/netcore50/System.Diagnostics.Tools.xml", + "ref/netcore50/de/System.Diagnostics.Tools.xml", + "ref/netcore50/es/System.Diagnostics.Tools.xml", + "ref/netcore50/fr/System.Diagnostics.Tools.xml", + "ref/netcore50/it/System.Diagnostics.Tools.xml", + "ref/netcore50/ja/System.Diagnostics.Tools.xml", + "ref/netcore50/ko/System.Diagnostics.Tools.xml", + "ref/netcore50/ru/System.Diagnostics.Tools.xml", + "ref/netcore50/zh-hans/System.Diagnostics.Tools.xml", + "ref/netcore50/zh-hant/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/System.Diagnostics.Tools.dll", + "ref/netstandard1.0/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/de/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/es/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/fr/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/it/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/ja/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/ko/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/ru/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/zh-hans/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/zh-hant/System.Diagnostics.Tools.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.diagnostics.tools.4.3.0.nupkg.sha512", + "system.diagnostics.tools.nuspec" + ] + }, + "System.Diagnostics.Tracing/4.3.0": { + "sha512": "rswfv0f/Cqkh78rA5S8eN8Neocz234+emGCtTF3lxPY96F+mmmUen6tbn0glN6PMvlKQb9bPAY5e9u7fgPTkKw==", + "type": "package", + "path": "system.diagnostics.tracing/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net462/System.Diagnostics.Tracing.dll", + "lib/portable-net45+win8+wpa81/_._", + "lib/win8/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net462/System.Diagnostics.Tracing.dll", + "ref/netcore50/System.Diagnostics.Tracing.dll", + "ref/netcore50/System.Diagnostics.Tracing.xml", + "ref/netcore50/de/System.Diagnostics.Tracing.xml", + "ref/netcore50/es/System.Diagnostics.Tracing.xml", + "ref/netcore50/fr/System.Diagnostics.Tracing.xml", + "ref/netcore50/it/System.Diagnostics.Tracing.xml", + "ref/netcore50/ja/System.Diagnostics.Tracing.xml", + "ref/netcore50/ko/System.Diagnostics.Tracing.xml", + "ref/netcore50/ru/System.Diagnostics.Tracing.xml", + "ref/netcore50/zh-hans/System.Diagnostics.Tracing.xml", + "ref/netcore50/zh-hant/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/System.Diagnostics.Tracing.dll", + "ref/netstandard1.1/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/de/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/es/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/fr/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/it/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/ja/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/ko/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/ru/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/zh-hans/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/zh-hant/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/System.Diagnostics.Tracing.dll", + "ref/netstandard1.2/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/de/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/es/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/fr/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/it/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/ja/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/ko/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/ru/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/zh-hans/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/zh-hant/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/System.Diagnostics.Tracing.dll", + "ref/netstandard1.3/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/de/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/es/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/fr/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/it/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/ja/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/ko/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/ru/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/zh-hans/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/zh-hant/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/System.Diagnostics.Tracing.dll", + "ref/netstandard1.5/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/de/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/es/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/fr/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/it/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/ja/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/ko/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/ru/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/zh-hans/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/zh-hant/System.Diagnostics.Tracing.xml", + "ref/portable-net45+win8+wpa81/_._", + "ref/win8/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.diagnostics.tracing.4.3.0.nupkg.sha512", + "system.diagnostics.tracing.nuspec" + ] + }, + "System.Globalization/4.3.0": { + "sha512": "kYdVd2f2PAdFGblzFswE4hkNANJBKRmsfa2X5LG2AcWE1c7/4t0pYae1L8vfZ5xvE2nK/R9JprtToA61OSHWIg==", + "type": "package", + "path": "system.globalization/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Globalization.dll", + "ref/netcore50/System.Globalization.xml", + "ref/netcore50/de/System.Globalization.xml", + "ref/netcore50/es/System.Globalization.xml", + "ref/netcore50/fr/System.Globalization.xml", + "ref/netcore50/it/System.Globalization.xml", + "ref/netcore50/ja/System.Globalization.xml", + "ref/netcore50/ko/System.Globalization.xml", + "ref/netcore50/ru/System.Globalization.xml", + "ref/netcore50/zh-hans/System.Globalization.xml", + "ref/netcore50/zh-hant/System.Globalization.xml", + "ref/netstandard1.0/System.Globalization.dll", + "ref/netstandard1.0/System.Globalization.xml", + "ref/netstandard1.0/de/System.Globalization.xml", + "ref/netstandard1.0/es/System.Globalization.xml", + "ref/netstandard1.0/fr/System.Globalization.xml", + "ref/netstandard1.0/it/System.Globalization.xml", + "ref/netstandard1.0/ja/System.Globalization.xml", + "ref/netstandard1.0/ko/System.Globalization.xml", + "ref/netstandard1.0/ru/System.Globalization.xml", + "ref/netstandard1.0/zh-hans/System.Globalization.xml", + "ref/netstandard1.0/zh-hant/System.Globalization.xml", + "ref/netstandard1.3/System.Globalization.dll", + "ref/netstandard1.3/System.Globalization.xml", + "ref/netstandard1.3/de/System.Globalization.xml", + "ref/netstandard1.3/es/System.Globalization.xml", + "ref/netstandard1.3/fr/System.Globalization.xml", + "ref/netstandard1.3/it/System.Globalization.xml", + "ref/netstandard1.3/ja/System.Globalization.xml", + "ref/netstandard1.3/ko/System.Globalization.xml", + "ref/netstandard1.3/ru/System.Globalization.xml", + "ref/netstandard1.3/zh-hans/System.Globalization.xml", + "ref/netstandard1.3/zh-hant/System.Globalization.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.globalization.4.3.0.nupkg.sha512", + "system.globalization.nuspec" + ] + }, + "System.Globalization.Calendars/4.3.0": { + "sha512": "GUlBtdOWT4LTV3I+9/PJW+56AnnChTaOqqTLFtdmype/L500M2LIyXgmtd9X2P2VOkmJd5c67H5SaC2QcL1bFA==", + "type": "package", + "path": "system.globalization.calendars/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Globalization.Calendars.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Globalization.Calendars.dll", + "ref/netstandard1.3/System.Globalization.Calendars.dll", + "ref/netstandard1.3/System.Globalization.Calendars.xml", + "ref/netstandard1.3/de/System.Globalization.Calendars.xml", + "ref/netstandard1.3/es/System.Globalization.Calendars.xml", + "ref/netstandard1.3/fr/System.Globalization.Calendars.xml", + "ref/netstandard1.3/it/System.Globalization.Calendars.xml", + "ref/netstandard1.3/ja/System.Globalization.Calendars.xml", + "ref/netstandard1.3/ko/System.Globalization.Calendars.xml", + "ref/netstandard1.3/ru/System.Globalization.Calendars.xml", + "ref/netstandard1.3/zh-hans/System.Globalization.Calendars.xml", + "ref/netstandard1.3/zh-hant/System.Globalization.Calendars.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.globalization.calendars.4.3.0.nupkg.sha512", + "system.globalization.calendars.nuspec" + ] + }, + "System.Globalization.Extensions/4.3.0": { + "sha512": "FhKmdR6MPG+pxow6wGtNAWdZh7noIOpdD5TwQ3CprzgIE1bBBoim0vbR1+AWsWjQmU7zXHgQo4TWSP6lCeiWcQ==", + "type": "package", + "path": "system.globalization.extensions/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Globalization.Extensions.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Globalization.Extensions.dll", + "ref/netstandard1.3/System.Globalization.Extensions.dll", + "ref/netstandard1.3/System.Globalization.Extensions.xml", + "ref/netstandard1.3/de/System.Globalization.Extensions.xml", + "ref/netstandard1.3/es/System.Globalization.Extensions.xml", + "ref/netstandard1.3/fr/System.Globalization.Extensions.xml", + "ref/netstandard1.3/it/System.Globalization.Extensions.xml", + "ref/netstandard1.3/ja/System.Globalization.Extensions.xml", + "ref/netstandard1.3/ko/System.Globalization.Extensions.xml", + "ref/netstandard1.3/ru/System.Globalization.Extensions.xml", + "ref/netstandard1.3/zh-hans/System.Globalization.Extensions.xml", + "ref/netstandard1.3/zh-hant/System.Globalization.Extensions.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/unix/lib/netstandard1.3/System.Globalization.Extensions.dll", + "runtimes/win/lib/net46/System.Globalization.Extensions.dll", + "runtimes/win/lib/netstandard1.3/System.Globalization.Extensions.dll", + "system.globalization.extensions.4.3.0.nupkg.sha512", + "system.globalization.extensions.nuspec" + ] + }, + "System.IdentityModel.Tokens.Jwt/8.10.0": { + "sha512": "UYIcKbMifWTg1CdljV3YSr7X4MKGSjUwLMKNLuSNKOsF65NvDPez0917YSDOr3tXF1GTZKCkfbZwYyPsW2owsQ==", + "type": "package", + "path": "system.identitymodel.tokens.jwt/8.10.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "lib/net462/System.IdentityModel.Tokens.Jwt.dll", + "lib/net462/System.IdentityModel.Tokens.Jwt.xml", + "lib/net472/System.IdentityModel.Tokens.Jwt.dll", + "lib/net472/System.IdentityModel.Tokens.Jwt.xml", + "lib/net6.0/System.IdentityModel.Tokens.Jwt.dll", + "lib/net6.0/System.IdentityModel.Tokens.Jwt.xml", + "lib/net8.0/System.IdentityModel.Tokens.Jwt.dll", + "lib/net8.0/System.IdentityModel.Tokens.Jwt.xml", + "lib/net9.0/System.IdentityModel.Tokens.Jwt.dll", + "lib/net9.0/System.IdentityModel.Tokens.Jwt.xml", + "lib/netstandard2.0/System.IdentityModel.Tokens.Jwt.dll", + "lib/netstandard2.0/System.IdentityModel.Tokens.Jwt.xml", + "system.identitymodel.tokens.jwt.8.10.0.nupkg.sha512", + "system.identitymodel.tokens.jwt.nuspec" + ] + }, + "System.IO/4.3.0": { + "sha512": "3qjaHvxQPDpSOYICjUoTsmoq5u6QJAFRUITgeT/4gqkF1bajbSmb1kwSxEA8AHlofqgcKJcM8udgieRNhaJ5Cg==", + "type": "package", + "path": "system.io/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net462/System.IO.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net462/System.IO.dll", + "ref/netcore50/System.IO.dll", + "ref/netcore50/System.IO.xml", + "ref/netcore50/de/System.IO.xml", + "ref/netcore50/es/System.IO.xml", + "ref/netcore50/fr/System.IO.xml", + "ref/netcore50/it/System.IO.xml", + "ref/netcore50/ja/System.IO.xml", + "ref/netcore50/ko/System.IO.xml", + "ref/netcore50/ru/System.IO.xml", + "ref/netcore50/zh-hans/System.IO.xml", + "ref/netcore50/zh-hant/System.IO.xml", + "ref/netstandard1.0/System.IO.dll", + "ref/netstandard1.0/System.IO.xml", + "ref/netstandard1.0/de/System.IO.xml", + "ref/netstandard1.0/es/System.IO.xml", + "ref/netstandard1.0/fr/System.IO.xml", + "ref/netstandard1.0/it/System.IO.xml", + "ref/netstandard1.0/ja/System.IO.xml", + "ref/netstandard1.0/ko/System.IO.xml", + "ref/netstandard1.0/ru/System.IO.xml", + "ref/netstandard1.0/zh-hans/System.IO.xml", + "ref/netstandard1.0/zh-hant/System.IO.xml", + "ref/netstandard1.3/System.IO.dll", + "ref/netstandard1.3/System.IO.xml", + "ref/netstandard1.3/de/System.IO.xml", + "ref/netstandard1.3/es/System.IO.xml", + "ref/netstandard1.3/fr/System.IO.xml", + "ref/netstandard1.3/it/System.IO.xml", + "ref/netstandard1.3/ja/System.IO.xml", + "ref/netstandard1.3/ko/System.IO.xml", + "ref/netstandard1.3/ru/System.IO.xml", + "ref/netstandard1.3/zh-hans/System.IO.xml", + "ref/netstandard1.3/zh-hant/System.IO.xml", + "ref/netstandard1.5/System.IO.dll", + "ref/netstandard1.5/System.IO.xml", + "ref/netstandard1.5/de/System.IO.xml", + "ref/netstandard1.5/es/System.IO.xml", + "ref/netstandard1.5/fr/System.IO.xml", + "ref/netstandard1.5/it/System.IO.xml", + "ref/netstandard1.5/ja/System.IO.xml", + "ref/netstandard1.5/ko/System.IO.xml", + "ref/netstandard1.5/ru/System.IO.xml", + "ref/netstandard1.5/zh-hans/System.IO.xml", + "ref/netstandard1.5/zh-hant/System.IO.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.io.4.3.0.nupkg.sha512", + "system.io.nuspec" + ] + }, + "System.IO.Compression/4.3.0": { + "sha512": "YHndyoiV90iu4iKG115ibkhrG+S3jBm8Ap9OwoUAzO5oPDAWcr0SFwQFm0HjM8WkEZWo0zvLTyLmbvTkW1bXgg==", + "type": "package", + "path": "system.io.compression/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net46/System.IO.Compression.dll", + "lib/portable-net45+win8+wpa81/_._", + "lib/win8/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net46/System.IO.Compression.dll", + "ref/netcore50/System.IO.Compression.dll", + "ref/netcore50/System.IO.Compression.xml", + "ref/netcore50/de/System.IO.Compression.xml", + "ref/netcore50/es/System.IO.Compression.xml", + "ref/netcore50/fr/System.IO.Compression.xml", + "ref/netcore50/it/System.IO.Compression.xml", + "ref/netcore50/ja/System.IO.Compression.xml", + "ref/netcore50/ko/System.IO.Compression.xml", + "ref/netcore50/ru/System.IO.Compression.xml", + "ref/netcore50/zh-hans/System.IO.Compression.xml", + "ref/netcore50/zh-hant/System.IO.Compression.xml", + "ref/netstandard1.1/System.IO.Compression.dll", + "ref/netstandard1.1/System.IO.Compression.xml", + "ref/netstandard1.1/de/System.IO.Compression.xml", + "ref/netstandard1.1/es/System.IO.Compression.xml", + "ref/netstandard1.1/fr/System.IO.Compression.xml", + "ref/netstandard1.1/it/System.IO.Compression.xml", + "ref/netstandard1.1/ja/System.IO.Compression.xml", + "ref/netstandard1.1/ko/System.IO.Compression.xml", + "ref/netstandard1.1/ru/System.IO.Compression.xml", + "ref/netstandard1.1/zh-hans/System.IO.Compression.xml", + "ref/netstandard1.1/zh-hant/System.IO.Compression.xml", + "ref/netstandard1.3/System.IO.Compression.dll", + "ref/netstandard1.3/System.IO.Compression.xml", + "ref/netstandard1.3/de/System.IO.Compression.xml", + "ref/netstandard1.3/es/System.IO.Compression.xml", + "ref/netstandard1.3/fr/System.IO.Compression.xml", + "ref/netstandard1.3/it/System.IO.Compression.xml", + "ref/netstandard1.3/ja/System.IO.Compression.xml", + "ref/netstandard1.3/ko/System.IO.Compression.xml", + "ref/netstandard1.3/ru/System.IO.Compression.xml", + "ref/netstandard1.3/zh-hans/System.IO.Compression.xml", + "ref/netstandard1.3/zh-hant/System.IO.Compression.xml", + "ref/portable-net45+win8+wpa81/_._", + "ref/win8/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/unix/lib/netstandard1.3/System.IO.Compression.dll", + "runtimes/win/lib/net46/System.IO.Compression.dll", + "runtimes/win/lib/netstandard1.3/System.IO.Compression.dll", + "system.io.compression.4.3.0.nupkg.sha512", + "system.io.compression.nuspec" + ] + }, + "System.IO.Compression.ZipFile/4.3.0": { + "sha512": "G4HwjEsgIwy3JFBduZ9quBkAu+eUwjIdJleuNSgmUojbH6O3mlvEIme+GHx/cLlTAPcrnnL7GqvB9pTlWRfhOg==", + "type": "package", + "path": "system.io.compression.zipfile/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.IO.Compression.ZipFile.dll", + "lib/netstandard1.3/System.IO.Compression.ZipFile.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.IO.Compression.ZipFile.dll", + "ref/netstandard1.3/System.IO.Compression.ZipFile.dll", + "ref/netstandard1.3/System.IO.Compression.ZipFile.xml", + "ref/netstandard1.3/de/System.IO.Compression.ZipFile.xml", + "ref/netstandard1.3/es/System.IO.Compression.ZipFile.xml", + "ref/netstandard1.3/fr/System.IO.Compression.ZipFile.xml", + "ref/netstandard1.3/it/System.IO.Compression.ZipFile.xml", + "ref/netstandard1.3/ja/System.IO.Compression.ZipFile.xml", + "ref/netstandard1.3/ko/System.IO.Compression.ZipFile.xml", + "ref/netstandard1.3/ru/System.IO.Compression.ZipFile.xml", + "ref/netstandard1.3/zh-hans/System.IO.Compression.ZipFile.xml", + "ref/netstandard1.3/zh-hant/System.IO.Compression.ZipFile.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.io.compression.zipfile.4.3.0.nupkg.sha512", + "system.io.compression.zipfile.nuspec" + ] + }, + "System.IO.FileSystem/4.3.0": { + "sha512": "3wEMARTnuio+ulnvi+hkRNROYwa1kylvYahhcLk4HSoVdl+xxTFVeVlYOfLwrDPImGls0mDqbMhrza8qnWPTdA==", + "type": "package", + "path": "system.io.filesystem/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.IO.FileSystem.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.IO.FileSystem.dll", + "ref/netstandard1.3/System.IO.FileSystem.dll", + "ref/netstandard1.3/System.IO.FileSystem.xml", + "ref/netstandard1.3/de/System.IO.FileSystem.xml", + "ref/netstandard1.3/es/System.IO.FileSystem.xml", + "ref/netstandard1.3/fr/System.IO.FileSystem.xml", + "ref/netstandard1.3/it/System.IO.FileSystem.xml", + "ref/netstandard1.3/ja/System.IO.FileSystem.xml", + "ref/netstandard1.3/ko/System.IO.FileSystem.xml", + "ref/netstandard1.3/ru/System.IO.FileSystem.xml", + "ref/netstandard1.3/zh-hans/System.IO.FileSystem.xml", + "ref/netstandard1.3/zh-hant/System.IO.FileSystem.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.io.filesystem.4.3.0.nupkg.sha512", + "system.io.filesystem.nuspec" + ] + }, + "System.IO.FileSystem.Primitives/4.3.0": { + "sha512": "6QOb2XFLch7bEc4lIcJH49nJN2HV+OC3fHDgsLVsBVBk3Y4hFAnOBGzJ2lUu7CyDDFo9IBWkSsnbkT6IBwwiMw==", + "type": "package", + "path": "system.io.filesystem.primitives/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.IO.FileSystem.Primitives.dll", + "lib/netstandard1.3/System.IO.FileSystem.Primitives.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.IO.FileSystem.Primitives.dll", + "ref/netstandard1.3/System.IO.FileSystem.Primitives.dll", + "ref/netstandard1.3/System.IO.FileSystem.Primitives.xml", + "ref/netstandard1.3/de/System.IO.FileSystem.Primitives.xml", + "ref/netstandard1.3/es/System.IO.FileSystem.Primitives.xml", + "ref/netstandard1.3/fr/System.IO.FileSystem.Primitives.xml", + "ref/netstandard1.3/it/System.IO.FileSystem.Primitives.xml", + "ref/netstandard1.3/ja/System.IO.FileSystem.Primitives.xml", + "ref/netstandard1.3/ko/System.IO.FileSystem.Primitives.xml", + "ref/netstandard1.3/ru/System.IO.FileSystem.Primitives.xml", + "ref/netstandard1.3/zh-hans/System.IO.FileSystem.Primitives.xml", + "ref/netstandard1.3/zh-hant/System.IO.FileSystem.Primitives.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.io.filesystem.primitives.4.3.0.nupkg.sha512", + "system.io.filesystem.primitives.nuspec" + ] + }, + "System.IO.Pipelines/9.0.4": { + "sha512": "luF2Xba+lTe2GOoNQdZLe8q7K6s7nSpWZl9jIwWNMszN4/Yv0lmxk9HISgMmwdyZ83i3UhAGXaSY9o6IJBUuuA==", + "type": "package", + "path": "system.io.pipelines/9.0.4", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.IO.Pipelines.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/System.IO.Pipelines.targets", + "lib/net462/System.IO.Pipelines.dll", + "lib/net462/System.IO.Pipelines.xml", + "lib/net8.0/System.IO.Pipelines.dll", + "lib/net8.0/System.IO.Pipelines.xml", + "lib/net9.0/System.IO.Pipelines.dll", + "lib/net9.0/System.IO.Pipelines.xml", + "lib/netstandard2.0/System.IO.Pipelines.dll", + "lib/netstandard2.0/System.IO.Pipelines.xml", + "system.io.pipelines.9.0.4.nupkg.sha512", + "system.io.pipelines.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Linq/4.3.0": { + "sha512": "5DbqIUpsDp0dFftytzuMmc0oeMdQwjcP/EWxsksIz/w1TcFRkZ3yKKz0PqiYFMmEwPSWw+qNVqD7PJ889JzHbw==", + "type": "package", + "path": "system.linq/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net463/System.Linq.dll", + "lib/netcore50/System.Linq.dll", + "lib/netstandard1.6/System.Linq.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net463/System.Linq.dll", + "ref/netcore50/System.Linq.dll", + "ref/netcore50/System.Linq.xml", + "ref/netcore50/de/System.Linq.xml", + "ref/netcore50/es/System.Linq.xml", + "ref/netcore50/fr/System.Linq.xml", + "ref/netcore50/it/System.Linq.xml", + "ref/netcore50/ja/System.Linq.xml", + "ref/netcore50/ko/System.Linq.xml", + "ref/netcore50/ru/System.Linq.xml", + "ref/netcore50/zh-hans/System.Linq.xml", + "ref/netcore50/zh-hant/System.Linq.xml", + "ref/netstandard1.0/System.Linq.dll", + "ref/netstandard1.0/System.Linq.xml", + "ref/netstandard1.0/de/System.Linq.xml", + "ref/netstandard1.0/es/System.Linq.xml", + "ref/netstandard1.0/fr/System.Linq.xml", + "ref/netstandard1.0/it/System.Linq.xml", + "ref/netstandard1.0/ja/System.Linq.xml", + "ref/netstandard1.0/ko/System.Linq.xml", + "ref/netstandard1.0/ru/System.Linq.xml", + "ref/netstandard1.0/zh-hans/System.Linq.xml", + "ref/netstandard1.0/zh-hant/System.Linq.xml", + "ref/netstandard1.6/System.Linq.dll", + "ref/netstandard1.6/System.Linq.xml", + "ref/netstandard1.6/de/System.Linq.xml", + "ref/netstandard1.6/es/System.Linq.xml", + "ref/netstandard1.6/fr/System.Linq.xml", + "ref/netstandard1.6/it/System.Linq.xml", + "ref/netstandard1.6/ja/System.Linq.xml", + "ref/netstandard1.6/ko/System.Linq.xml", + "ref/netstandard1.6/ru/System.Linq.xml", + "ref/netstandard1.6/zh-hans/System.Linq.xml", + "ref/netstandard1.6/zh-hant/System.Linq.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.linq.4.3.0.nupkg.sha512", + "system.linq.nuspec" + ] + }, + "System.Linq.Expressions/4.3.0": { + "sha512": "PGKkrd2khG4CnlyJwxwwaWWiSiWFNBGlgXvJpeO0xCXrZ89ODrQ6tjEWS/kOqZ8GwEOUATtKtzp1eRgmYNfclg==", + "type": "package", + "path": "system.linq.expressions/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net463/System.Linq.Expressions.dll", + "lib/netcore50/System.Linq.Expressions.dll", + "lib/netstandard1.6/System.Linq.Expressions.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net463/System.Linq.Expressions.dll", + "ref/netcore50/System.Linq.Expressions.dll", + "ref/netcore50/System.Linq.Expressions.xml", + "ref/netcore50/de/System.Linq.Expressions.xml", + "ref/netcore50/es/System.Linq.Expressions.xml", + "ref/netcore50/fr/System.Linq.Expressions.xml", + "ref/netcore50/it/System.Linq.Expressions.xml", + "ref/netcore50/ja/System.Linq.Expressions.xml", + "ref/netcore50/ko/System.Linq.Expressions.xml", + "ref/netcore50/ru/System.Linq.Expressions.xml", + "ref/netcore50/zh-hans/System.Linq.Expressions.xml", + "ref/netcore50/zh-hant/System.Linq.Expressions.xml", + "ref/netstandard1.0/System.Linq.Expressions.dll", + "ref/netstandard1.0/System.Linq.Expressions.xml", + "ref/netstandard1.0/de/System.Linq.Expressions.xml", + "ref/netstandard1.0/es/System.Linq.Expressions.xml", + "ref/netstandard1.0/fr/System.Linq.Expressions.xml", + "ref/netstandard1.0/it/System.Linq.Expressions.xml", + "ref/netstandard1.0/ja/System.Linq.Expressions.xml", + "ref/netstandard1.0/ko/System.Linq.Expressions.xml", + "ref/netstandard1.0/ru/System.Linq.Expressions.xml", + "ref/netstandard1.0/zh-hans/System.Linq.Expressions.xml", + "ref/netstandard1.0/zh-hant/System.Linq.Expressions.xml", + "ref/netstandard1.3/System.Linq.Expressions.dll", + "ref/netstandard1.3/System.Linq.Expressions.xml", + "ref/netstandard1.3/de/System.Linq.Expressions.xml", + "ref/netstandard1.3/es/System.Linq.Expressions.xml", + "ref/netstandard1.3/fr/System.Linq.Expressions.xml", + "ref/netstandard1.3/it/System.Linq.Expressions.xml", + "ref/netstandard1.3/ja/System.Linq.Expressions.xml", + "ref/netstandard1.3/ko/System.Linq.Expressions.xml", + "ref/netstandard1.3/ru/System.Linq.Expressions.xml", + "ref/netstandard1.3/zh-hans/System.Linq.Expressions.xml", + "ref/netstandard1.3/zh-hant/System.Linq.Expressions.xml", + "ref/netstandard1.6/System.Linq.Expressions.dll", + "ref/netstandard1.6/System.Linq.Expressions.xml", + "ref/netstandard1.6/de/System.Linq.Expressions.xml", + "ref/netstandard1.6/es/System.Linq.Expressions.xml", + "ref/netstandard1.6/fr/System.Linq.Expressions.xml", + "ref/netstandard1.6/it/System.Linq.Expressions.xml", + "ref/netstandard1.6/ja/System.Linq.Expressions.xml", + "ref/netstandard1.6/ko/System.Linq.Expressions.xml", + "ref/netstandard1.6/ru/System.Linq.Expressions.xml", + "ref/netstandard1.6/zh-hans/System.Linq.Expressions.xml", + "ref/netstandard1.6/zh-hant/System.Linq.Expressions.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/aot/lib/netcore50/System.Linq.Expressions.dll", + "system.linq.expressions.4.3.0.nupkg.sha512", + "system.linq.expressions.nuspec" + ] + }, + "System.Net.Http/4.3.4": { + "sha512": "aOa2d51SEbmM+H+Csw7yJOuNZoHkrP2XnAurye5HWYgGVVU54YZDvsLUYRv6h18X3sPnjNCANmN7ZhIPiqMcjA==", + "type": "package", + "path": "system.net.http/4.3.4", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/Xamarinmac20/_._", + "lib/monoandroid10/_._", + "lib/monotouch10/_._", + "lib/net45/_._", + "lib/net46/System.Net.Http.dll", + "lib/portable-net45+win8+wpa81/_._", + "lib/win8/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/Xamarinmac20/_._", + "ref/monoandroid10/_._", + "ref/monotouch10/_._", + "ref/net45/_._", + "ref/net46/System.Net.Http.dll", + "ref/netcore50/System.Net.Http.dll", + "ref/netstandard1.1/System.Net.Http.dll", + "ref/netstandard1.3/System.Net.Http.dll", + "ref/portable-net45+win8+wpa81/_._", + "ref/win8/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/unix/lib/netstandard1.6/System.Net.Http.dll", + "runtimes/win/lib/net46/System.Net.Http.dll", + "runtimes/win/lib/netcore50/System.Net.Http.dll", + "runtimes/win/lib/netstandard1.3/System.Net.Http.dll", + "system.net.http.4.3.4.nupkg.sha512", + "system.net.http.nuspec" + ] + }, + "System.Net.Primitives/4.3.0": { + "sha512": "qOu+hDwFwoZPbzPvwut2qATe3ygjeQBDQj91xlsaqGFQUI5i4ZnZb8yyQuLGpDGivEPIt8EJkd1BVzVoP31FXA==", + "type": "package", + "path": "system.net.primitives/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Net.Primitives.dll", + "ref/netcore50/System.Net.Primitives.xml", + "ref/netcore50/de/System.Net.Primitives.xml", + "ref/netcore50/es/System.Net.Primitives.xml", + "ref/netcore50/fr/System.Net.Primitives.xml", + "ref/netcore50/it/System.Net.Primitives.xml", + "ref/netcore50/ja/System.Net.Primitives.xml", + "ref/netcore50/ko/System.Net.Primitives.xml", + "ref/netcore50/ru/System.Net.Primitives.xml", + "ref/netcore50/zh-hans/System.Net.Primitives.xml", + "ref/netcore50/zh-hant/System.Net.Primitives.xml", + "ref/netstandard1.0/System.Net.Primitives.dll", + "ref/netstandard1.0/System.Net.Primitives.xml", + "ref/netstandard1.0/de/System.Net.Primitives.xml", + "ref/netstandard1.0/es/System.Net.Primitives.xml", + "ref/netstandard1.0/fr/System.Net.Primitives.xml", + "ref/netstandard1.0/it/System.Net.Primitives.xml", + "ref/netstandard1.0/ja/System.Net.Primitives.xml", + "ref/netstandard1.0/ko/System.Net.Primitives.xml", + "ref/netstandard1.0/ru/System.Net.Primitives.xml", + "ref/netstandard1.0/zh-hans/System.Net.Primitives.xml", + "ref/netstandard1.0/zh-hant/System.Net.Primitives.xml", + "ref/netstandard1.1/System.Net.Primitives.dll", + "ref/netstandard1.1/System.Net.Primitives.xml", + "ref/netstandard1.1/de/System.Net.Primitives.xml", + "ref/netstandard1.1/es/System.Net.Primitives.xml", + "ref/netstandard1.1/fr/System.Net.Primitives.xml", + "ref/netstandard1.1/it/System.Net.Primitives.xml", + "ref/netstandard1.1/ja/System.Net.Primitives.xml", + "ref/netstandard1.1/ko/System.Net.Primitives.xml", + "ref/netstandard1.1/ru/System.Net.Primitives.xml", + "ref/netstandard1.1/zh-hans/System.Net.Primitives.xml", + "ref/netstandard1.1/zh-hant/System.Net.Primitives.xml", + "ref/netstandard1.3/System.Net.Primitives.dll", + "ref/netstandard1.3/System.Net.Primitives.xml", + "ref/netstandard1.3/de/System.Net.Primitives.xml", + "ref/netstandard1.3/es/System.Net.Primitives.xml", + "ref/netstandard1.3/fr/System.Net.Primitives.xml", + "ref/netstandard1.3/it/System.Net.Primitives.xml", + "ref/netstandard1.3/ja/System.Net.Primitives.xml", + "ref/netstandard1.3/ko/System.Net.Primitives.xml", + "ref/netstandard1.3/ru/System.Net.Primitives.xml", + "ref/netstandard1.3/zh-hans/System.Net.Primitives.xml", + "ref/netstandard1.3/zh-hant/System.Net.Primitives.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.net.primitives.4.3.0.nupkg.sha512", + "system.net.primitives.nuspec" + ] + }, + "System.Net.Sockets/4.3.0": { + "sha512": "m6icV6TqQOAdgt5N/9I5KNpjom/5NFtkmGseEH+AK/hny8XrytLH3+b5M8zL/Ycg3fhIocFpUMyl/wpFnVRvdw==", + "type": "package", + "path": "system.net.sockets/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Net.Sockets.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Net.Sockets.dll", + "ref/netstandard1.3/System.Net.Sockets.dll", + "ref/netstandard1.3/System.Net.Sockets.xml", + "ref/netstandard1.3/de/System.Net.Sockets.xml", + "ref/netstandard1.3/es/System.Net.Sockets.xml", + "ref/netstandard1.3/fr/System.Net.Sockets.xml", + "ref/netstandard1.3/it/System.Net.Sockets.xml", + "ref/netstandard1.3/ja/System.Net.Sockets.xml", + "ref/netstandard1.3/ko/System.Net.Sockets.xml", + "ref/netstandard1.3/ru/System.Net.Sockets.xml", + "ref/netstandard1.3/zh-hans/System.Net.Sockets.xml", + "ref/netstandard1.3/zh-hant/System.Net.Sockets.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.net.sockets.4.3.0.nupkg.sha512", + "system.net.sockets.nuspec" + ] + }, + "System.ObjectModel/4.3.0": { + "sha512": "bdX+80eKv9bN6K4N+d77OankKHGn6CH711a6fcOpMQu2Fckp/Ft4L/kW9WznHpyR0NRAvJutzOMHNNlBGvxQzQ==", + "type": "package", + "path": "system.objectmodel/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.ObjectModel.dll", + "lib/netstandard1.3/System.ObjectModel.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.ObjectModel.dll", + "ref/netcore50/System.ObjectModel.xml", + "ref/netcore50/de/System.ObjectModel.xml", + "ref/netcore50/es/System.ObjectModel.xml", + "ref/netcore50/fr/System.ObjectModel.xml", + "ref/netcore50/it/System.ObjectModel.xml", + "ref/netcore50/ja/System.ObjectModel.xml", + "ref/netcore50/ko/System.ObjectModel.xml", + "ref/netcore50/ru/System.ObjectModel.xml", + "ref/netcore50/zh-hans/System.ObjectModel.xml", + "ref/netcore50/zh-hant/System.ObjectModel.xml", + "ref/netstandard1.0/System.ObjectModel.dll", + "ref/netstandard1.0/System.ObjectModel.xml", + "ref/netstandard1.0/de/System.ObjectModel.xml", + "ref/netstandard1.0/es/System.ObjectModel.xml", + "ref/netstandard1.0/fr/System.ObjectModel.xml", + "ref/netstandard1.0/it/System.ObjectModel.xml", + "ref/netstandard1.0/ja/System.ObjectModel.xml", + "ref/netstandard1.0/ko/System.ObjectModel.xml", + "ref/netstandard1.0/ru/System.ObjectModel.xml", + "ref/netstandard1.0/zh-hans/System.ObjectModel.xml", + "ref/netstandard1.0/zh-hant/System.ObjectModel.xml", + "ref/netstandard1.3/System.ObjectModel.dll", + "ref/netstandard1.3/System.ObjectModel.xml", + "ref/netstandard1.3/de/System.ObjectModel.xml", + "ref/netstandard1.3/es/System.ObjectModel.xml", + "ref/netstandard1.3/fr/System.ObjectModel.xml", + "ref/netstandard1.3/it/System.ObjectModel.xml", + "ref/netstandard1.3/ja/System.ObjectModel.xml", + "ref/netstandard1.3/ko/System.ObjectModel.xml", + "ref/netstandard1.3/ru/System.ObjectModel.xml", + "ref/netstandard1.3/zh-hans/System.ObjectModel.xml", + "ref/netstandard1.3/zh-hant/System.ObjectModel.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.objectmodel.4.3.0.nupkg.sha512", + "system.objectmodel.nuspec" + ] + }, + "System.Private.Uri/4.3.2": { + "sha512": "o1+7RJnu3Ik3PazR7Z7tJhjPdE000Eq2KGLLWhqJJKXj04wrS8lwb1OFtDF9jzXXADhUuZNJZlPc98uwwqmpFA==", + "type": "package", + "path": "system.private.uri/4.3.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "ref/netstandard/_._", + "system.private.uri.4.3.2.nupkg.sha512", + "system.private.uri.nuspec" + ] + }, + "System.Reflection/4.3.0": { + "sha512": "KMiAFoW7MfJGa9nDFNcfu+FpEdiHpWgTcS2HdMpDvt9saK3y/G4GwprPyzqjFH9NTaGPQeWNHU+iDlDILj96aQ==", + "type": "package", + "path": "system.reflection/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net462/System.Reflection.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net462/System.Reflection.dll", + "ref/netcore50/System.Reflection.dll", + "ref/netcore50/System.Reflection.xml", + "ref/netcore50/de/System.Reflection.xml", + "ref/netcore50/es/System.Reflection.xml", + "ref/netcore50/fr/System.Reflection.xml", + "ref/netcore50/it/System.Reflection.xml", + "ref/netcore50/ja/System.Reflection.xml", + "ref/netcore50/ko/System.Reflection.xml", + "ref/netcore50/ru/System.Reflection.xml", + "ref/netcore50/zh-hans/System.Reflection.xml", + "ref/netcore50/zh-hant/System.Reflection.xml", + "ref/netstandard1.0/System.Reflection.dll", + "ref/netstandard1.0/System.Reflection.xml", + "ref/netstandard1.0/de/System.Reflection.xml", + "ref/netstandard1.0/es/System.Reflection.xml", + "ref/netstandard1.0/fr/System.Reflection.xml", + "ref/netstandard1.0/it/System.Reflection.xml", + "ref/netstandard1.0/ja/System.Reflection.xml", + "ref/netstandard1.0/ko/System.Reflection.xml", + "ref/netstandard1.0/ru/System.Reflection.xml", + "ref/netstandard1.0/zh-hans/System.Reflection.xml", + "ref/netstandard1.0/zh-hant/System.Reflection.xml", + "ref/netstandard1.3/System.Reflection.dll", + "ref/netstandard1.3/System.Reflection.xml", + "ref/netstandard1.3/de/System.Reflection.xml", + "ref/netstandard1.3/es/System.Reflection.xml", + "ref/netstandard1.3/fr/System.Reflection.xml", + "ref/netstandard1.3/it/System.Reflection.xml", + "ref/netstandard1.3/ja/System.Reflection.xml", + "ref/netstandard1.3/ko/System.Reflection.xml", + "ref/netstandard1.3/ru/System.Reflection.xml", + "ref/netstandard1.3/zh-hans/System.Reflection.xml", + "ref/netstandard1.3/zh-hant/System.Reflection.xml", + "ref/netstandard1.5/System.Reflection.dll", + "ref/netstandard1.5/System.Reflection.xml", + "ref/netstandard1.5/de/System.Reflection.xml", + "ref/netstandard1.5/es/System.Reflection.xml", + "ref/netstandard1.5/fr/System.Reflection.xml", + "ref/netstandard1.5/it/System.Reflection.xml", + "ref/netstandard1.5/ja/System.Reflection.xml", + "ref/netstandard1.5/ko/System.Reflection.xml", + "ref/netstandard1.5/ru/System.Reflection.xml", + "ref/netstandard1.5/zh-hans/System.Reflection.xml", + "ref/netstandard1.5/zh-hant/System.Reflection.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.reflection.4.3.0.nupkg.sha512", + "system.reflection.nuspec" + ] + }, + "System.Reflection.Emit/4.3.0": { + "sha512": "228FG0jLcIwTVJyz8CLFKueVqQK36ANazUManGaJHkO0icjiIypKW7YLWLIWahyIkdh5M7mV2dJepllLyA1SKg==", + "type": "package", + "path": "system.reflection.emit/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/monotouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Reflection.Emit.dll", + "lib/netstandard1.3/System.Reflection.Emit.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/net45/_._", + "ref/netstandard1.1/System.Reflection.Emit.dll", + "ref/netstandard1.1/System.Reflection.Emit.xml", + "ref/netstandard1.1/de/System.Reflection.Emit.xml", + "ref/netstandard1.1/es/System.Reflection.Emit.xml", + "ref/netstandard1.1/fr/System.Reflection.Emit.xml", + "ref/netstandard1.1/it/System.Reflection.Emit.xml", + "ref/netstandard1.1/ja/System.Reflection.Emit.xml", + "ref/netstandard1.1/ko/System.Reflection.Emit.xml", + "ref/netstandard1.1/ru/System.Reflection.Emit.xml", + "ref/netstandard1.1/zh-hans/System.Reflection.Emit.xml", + "ref/netstandard1.1/zh-hant/System.Reflection.Emit.xml", + "ref/xamarinmac20/_._", + "system.reflection.emit.4.3.0.nupkg.sha512", + "system.reflection.emit.nuspec" + ] + }, + "System.Reflection.Emit.ILGeneration/4.3.0": { + "sha512": "59tBslAk9733NXLrUJrwNZEzbMAcu8k344OYo+wfSVygcgZ9lgBdGIzH/nrg3LYhXceynyvTc8t5/GD4Ri0/ng==", + "type": "package", + "path": "system.reflection.emit.ilgeneration/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Reflection.Emit.ILGeneration.dll", + "lib/netstandard1.3/System.Reflection.Emit.ILGeneration.dll", + "lib/portable-net45+wp8/_._", + "lib/wp80/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netstandard1.0/System.Reflection.Emit.ILGeneration.dll", + "ref/netstandard1.0/System.Reflection.Emit.ILGeneration.xml", + "ref/netstandard1.0/de/System.Reflection.Emit.ILGeneration.xml", + "ref/netstandard1.0/es/System.Reflection.Emit.ILGeneration.xml", + "ref/netstandard1.0/fr/System.Reflection.Emit.ILGeneration.xml", + "ref/netstandard1.0/it/System.Reflection.Emit.ILGeneration.xml", + "ref/netstandard1.0/ja/System.Reflection.Emit.ILGeneration.xml", + "ref/netstandard1.0/ko/System.Reflection.Emit.ILGeneration.xml", + "ref/netstandard1.0/ru/System.Reflection.Emit.ILGeneration.xml", + "ref/netstandard1.0/zh-hans/System.Reflection.Emit.ILGeneration.xml", + "ref/netstandard1.0/zh-hant/System.Reflection.Emit.ILGeneration.xml", + "ref/portable-net45+wp8/_._", + "ref/wp80/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/aot/lib/netcore50/_._", + "system.reflection.emit.ilgeneration.4.3.0.nupkg.sha512", + "system.reflection.emit.ilgeneration.nuspec" + ] + }, + "System.Reflection.Emit.Lightweight/4.3.0": { + "sha512": "oadVHGSMsTmZsAF864QYN1t1QzZjIcuKU3l2S9cZOwDdDueNTrqq1yRj7koFfIGEnKpt6NjpL3rOzRhs4ryOgA==", + "type": "package", + "path": "system.reflection.emit.lightweight/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Reflection.Emit.Lightweight.dll", + "lib/netstandard1.3/System.Reflection.Emit.Lightweight.dll", + "lib/portable-net45+wp8/_._", + "lib/wp80/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netstandard1.0/System.Reflection.Emit.Lightweight.dll", + "ref/netstandard1.0/System.Reflection.Emit.Lightweight.xml", + "ref/netstandard1.0/de/System.Reflection.Emit.Lightweight.xml", + "ref/netstandard1.0/es/System.Reflection.Emit.Lightweight.xml", + "ref/netstandard1.0/fr/System.Reflection.Emit.Lightweight.xml", + "ref/netstandard1.0/it/System.Reflection.Emit.Lightweight.xml", + "ref/netstandard1.0/ja/System.Reflection.Emit.Lightweight.xml", + "ref/netstandard1.0/ko/System.Reflection.Emit.Lightweight.xml", + "ref/netstandard1.0/ru/System.Reflection.Emit.Lightweight.xml", + "ref/netstandard1.0/zh-hans/System.Reflection.Emit.Lightweight.xml", + "ref/netstandard1.0/zh-hant/System.Reflection.Emit.Lightweight.xml", + "ref/portable-net45+wp8/_._", + "ref/wp80/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/aot/lib/netcore50/_._", + "system.reflection.emit.lightweight.4.3.0.nupkg.sha512", + "system.reflection.emit.lightweight.nuspec" + ] + }, + "System.Reflection.Extensions/4.3.0": { + "sha512": "rJkrJD3kBI5B712aRu4DpSIiHRtr6QlfZSQsb0hYHrDCZORXCFjQfoipo2LaMUHoT9i1B7j7MnfaEKWDFmFQNQ==", + "type": "package", + "path": "system.reflection.extensions/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Reflection.Extensions.dll", + "ref/netcore50/System.Reflection.Extensions.xml", + "ref/netcore50/de/System.Reflection.Extensions.xml", + "ref/netcore50/es/System.Reflection.Extensions.xml", + "ref/netcore50/fr/System.Reflection.Extensions.xml", + "ref/netcore50/it/System.Reflection.Extensions.xml", + "ref/netcore50/ja/System.Reflection.Extensions.xml", + "ref/netcore50/ko/System.Reflection.Extensions.xml", + "ref/netcore50/ru/System.Reflection.Extensions.xml", + "ref/netcore50/zh-hans/System.Reflection.Extensions.xml", + "ref/netcore50/zh-hant/System.Reflection.Extensions.xml", + "ref/netstandard1.0/System.Reflection.Extensions.dll", + "ref/netstandard1.0/System.Reflection.Extensions.xml", + "ref/netstandard1.0/de/System.Reflection.Extensions.xml", + "ref/netstandard1.0/es/System.Reflection.Extensions.xml", + "ref/netstandard1.0/fr/System.Reflection.Extensions.xml", + "ref/netstandard1.0/it/System.Reflection.Extensions.xml", + "ref/netstandard1.0/ja/System.Reflection.Extensions.xml", + "ref/netstandard1.0/ko/System.Reflection.Extensions.xml", + "ref/netstandard1.0/ru/System.Reflection.Extensions.xml", + "ref/netstandard1.0/zh-hans/System.Reflection.Extensions.xml", + "ref/netstandard1.0/zh-hant/System.Reflection.Extensions.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.reflection.extensions.4.3.0.nupkg.sha512", + "system.reflection.extensions.nuspec" + ] + }, + "System.Reflection.Metadata/7.0.0": { + "sha512": "MclTG61lsD9sYdpNz9xsKBzjsmsfCtcMZYXz/IUr2zlhaTaABonlr1ESeompTgM+Xk+IwtGYU7/voh3YWB/fWw==", + "type": "package", + "path": "system.reflection.metadata/7.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "README.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.Reflection.Metadata.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/System.Reflection.Metadata.targets", + "lib/net462/System.Reflection.Metadata.dll", + "lib/net462/System.Reflection.Metadata.xml", + "lib/net6.0/System.Reflection.Metadata.dll", + "lib/net6.0/System.Reflection.Metadata.xml", + "lib/net7.0/System.Reflection.Metadata.dll", + "lib/net7.0/System.Reflection.Metadata.xml", + "lib/netstandard2.0/System.Reflection.Metadata.dll", + "lib/netstandard2.0/System.Reflection.Metadata.xml", + "system.reflection.metadata.7.0.0.nupkg.sha512", + "system.reflection.metadata.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Reflection.Primitives/4.3.0": { + "sha512": "5RXItQz5As4xN2/YUDxdpsEkMhvw3e6aNveFXUn4Hl/udNTCNhnKp8lT9fnc3MhvGKh1baak5CovpuQUXHAlIA==", + "type": "package", + "path": "system.reflection.primitives/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Reflection.Primitives.dll", + "ref/netcore50/System.Reflection.Primitives.xml", + "ref/netcore50/de/System.Reflection.Primitives.xml", + "ref/netcore50/es/System.Reflection.Primitives.xml", + "ref/netcore50/fr/System.Reflection.Primitives.xml", + "ref/netcore50/it/System.Reflection.Primitives.xml", + "ref/netcore50/ja/System.Reflection.Primitives.xml", + "ref/netcore50/ko/System.Reflection.Primitives.xml", + "ref/netcore50/ru/System.Reflection.Primitives.xml", + "ref/netcore50/zh-hans/System.Reflection.Primitives.xml", + "ref/netcore50/zh-hant/System.Reflection.Primitives.xml", + "ref/netstandard1.0/System.Reflection.Primitives.dll", + "ref/netstandard1.0/System.Reflection.Primitives.xml", + "ref/netstandard1.0/de/System.Reflection.Primitives.xml", + "ref/netstandard1.0/es/System.Reflection.Primitives.xml", + "ref/netstandard1.0/fr/System.Reflection.Primitives.xml", + "ref/netstandard1.0/it/System.Reflection.Primitives.xml", + "ref/netstandard1.0/ja/System.Reflection.Primitives.xml", + "ref/netstandard1.0/ko/System.Reflection.Primitives.xml", + "ref/netstandard1.0/ru/System.Reflection.Primitives.xml", + "ref/netstandard1.0/zh-hans/System.Reflection.Primitives.xml", + "ref/netstandard1.0/zh-hant/System.Reflection.Primitives.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.reflection.primitives.4.3.0.nupkg.sha512", + "system.reflection.primitives.nuspec" + ] + }, + "System.Reflection.TypeExtensions/4.3.0": { + "sha512": "7u6ulLcZbyxB5Gq0nMkQttcdBTx57ibzw+4IOXEfR+sXYQoHvjW5LTLyNr8O22UIMrqYbchJQJnos4eooYzYJA==", + "type": "package", + "path": "system.reflection.typeextensions/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Reflection.TypeExtensions.dll", + "lib/net462/System.Reflection.TypeExtensions.dll", + "lib/netcore50/System.Reflection.TypeExtensions.dll", + "lib/netstandard1.5/System.Reflection.TypeExtensions.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Reflection.TypeExtensions.dll", + "ref/net462/System.Reflection.TypeExtensions.dll", + "ref/netstandard1.3/System.Reflection.TypeExtensions.dll", + "ref/netstandard1.3/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.3/de/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.3/es/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.3/fr/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.3/it/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.3/ja/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.3/ko/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.3/ru/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.3/zh-hans/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.3/zh-hant/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/System.Reflection.TypeExtensions.dll", + "ref/netstandard1.5/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/de/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/es/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/fr/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/it/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/ja/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/ko/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/ru/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/zh-hans/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/zh-hant/System.Reflection.TypeExtensions.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/aot/lib/netcore50/System.Reflection.TypeExtensions.dll", + "system.reflection.typeextensions.4.3.0.nupkg.sha512", + "system.reflection.typeextensions.nuspec" + ] + }, + "System.Resources.ResourceManager/4.3.0": { + "sha512": "/zrcPkkWdZmI4F92gL/TPumP98AVDu/Wxr3CSJGQQ+XN6wbRZcyfSKVoPo17ilb3iOr0cCRqJInGwNMolqhS8A==", + "type": "package", + "path": "system.resources.resourcemanager/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Resources.ResourceManager.dll", + "ref/netcore50/System.Resources.ResourceManager.xml", + "ref/netcore50/de/System.Resources.ResourceManager.xml", + "ref/netcore50/es/System.Resources.ResourceManager.xml", + "ref/netcore50/fr/System.Resources.ResourceManager.xml", + "ref/netcore50/it/System.Resources.ResourceManager.xml", + "ref/netcore50/ja/System.Resources.ResourceManager.xml", + "ref/netcore50/ko/System.Resources.ResourceManager.xml", + "ref/netcore50/ru/System.Resources.ResourceManager.xml", + "ref/netcore50/zh-hans/System.Resources.ResourceManager.xml", + "ref/netcore50/zh-hant/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/System.Resources.ResourceManager.dll", + "ref/netstandard1.0/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/de/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/es/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/fr/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/it/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/ja/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/ko/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/ru/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/zh-hans/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/zh-hant/System.Resources.ResourceManager.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.resources.resourcemanager.4.3.0.nupkg.sha512", + "system.resources.resourcemanager.nuspec" + ] + }, + "System.Runtime/4.3.1": { + "sha512": "abhfv1dTK6NXOmu4bgHIONxHyEqFjW8HwXPmpY9gmll+ix9UNo4XDcmzJn6oLooftxNssVHdJC1pGT9jkSynQg==", + "type": "package", + "path": "system.runtime/4.3.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net462/System.Runtime.dll", + "lib/portable-net45+win8+wp80+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net462/System.Runtime.dll", + "ref/netcore50/System.Runtime.dll", + "ref/netcore50/System.Runtime.xml", + "ref/netcore50/de/System.Runtime.xml", + "ref/netcore50/es/System.Runtime.xml", + "ref/netcore50/fr/System.Runtime.xml", + "ref/netcore50/it/System.Runtime.xml", + "ref/netcore50/ja/System.Runtime.xml", + "ref/netcore50/ko/System.Runtime.xml", + "ref/netcore50/ru/System.Runtime.xml", + "ref/netcore50/zh-hans/System.Runtime.xml", + "ref/netcore50/zh-hant/System.Runtime.xml", + "ref/netstandard1.0/System.Runtime.dll", + "ref/netstandard1.0/System.Runtime.xml", + "ref/netstandard1.0/de/System.Runtime.xml", + "ref/netstandard1.0/es/System.Runtime.xml", + "ref/netstandard1.0/fr/System.Runtime.xml", + "ref/netstandard1.0/it/System.Runtime.xml", + "ref/netstandard1.0/ja/System.Runtime.xml", + "ref/netstandard1.0/ko/System.Runtime.xml", + "ref/netstandard1.0/ru/System.Runtime.xml", + "ref/netstandard1.0/zh-hans/System.Runtime.xml", + "ref/netstandard1.0/zh-hant/System.Runtime.xml", + "ref/netstandard1.2/System.Runtime.dll", + "ref/netstandard1.2/System.Runtime.xml", + "ref/netstandard1.2/de/System.Runtime.xml", + "ref/netstandard1.2/es/System.Runtime.xml", + "ref/netstandard1.2/fr/System.Runtime.xml", + "ref/netstandard1.2/it/System.Runtime.xml", + "ref/netstandard1.2/ja/System.Runtime.xml", + "ref/netstandard1.2/ko/System.Runtime.xml", + "ref/netstandard1.2/ru/System.Runtime.xml", + "ref/netstandard1.2/zh-hans/System.Runtime.xml", + "ref/netstandard1.2/zh-hant/System.Runtime.xml", + "ref/netstandard1.3/System.Runtime.dll", + "ref/netstandard1.3/System.Runtime.xml", + "ref/netstandard1.3/de/System.Runtime.xml", + "ref/netstandard1.3/es/System.Runtime.xml", + "ref/netstandard1.3/fr/System.Runtime.xml", + "ref/netstandard1.3/it/System.Runtime.xml", + "ref/netstandard1.3/ja/System.Runtime.xml", + "ref/netstandard1.3/ko/System.Runtime.xml", + "ref/netstandard1.3/ru/System.Runtime.xml", + "ref/netstandard1.3/zh-hans/System.Runtime.xml", + "ref/netstandard1.3/zh-hant/System.Runtime.xml", + "ref/netstandard1.5/System.Runtime.dll", + "ref/netstandard1.5/System.Runtime.xml", + "ref/netstandard1.5/de/System.Runtime.xml", + "ref/netstandard1.5/es/System.Runtime.xml", + "ref/netstandard1.5/fr/System.Runtime.xml", + "ref/netstandard1.5/it/System.Runtime.xml", + "ref/netstandard1.5/ja/System.Runtime.xml", + "ref/netstandard1.5/ko/System.Runtime.xml", + "ref/netstandard1.5/ru/System.Runtime.xml", + "ref/netstandard1.5/zh-hans/System.Runtime.xml", + "ref/netstandard1.5/zh-hant/System.Runtime.xml", + "ref/portable-net45+win8+wp80+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.runtime.4.3.1.nupkg.sha512", + "system.runtime.nuspec" + ] + }, + "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.Runtime.Extensions/4.3.0": { + "sha512": "guW0uK0fn5fcJJ1tJVXYd7/1h5F+pea1r7FLSOz/f8vPEqbR2ZAknuRDvTQ8PzAilDveOxNjSfr0CHfIQfFk8g==", + "type": "package", + "path": "system.runtime.extensions/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net462/System.Runtime.Extensions.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net462/System.Runtime.Extensions.dll", + "ref/netcore50/System.Runtime.Extensions.dll", + "ref/netcore50/System.Runtime.Extensions.xml", + "ref/netcore50/de/System.Runtime.Extensions.xml", + "ref/netcore50/es/System.Runtime.Extensions.xml", + "ref/netcore50/fr/System.Runtime.Extensions.xml", + "ref/netcore50/it/System.Runtime.Extensions.xml", + "ref/netcore50/ja/System.Runtime.Extensions.xml", + "ref/netcore50/ko/System.Runtime.Extensions.xml", + "ref/netcore50/ru/System.Runtime.Extensions.xml", + "ref/netcore50/zh-hans/System.Runtime.Extensions.xml", + "ref/netcore50/zh-hant/System.Runtime.Extensions.xml", + "ref/netstandard1.0/System.Runtime.Extensions.dll", + "ref/netstandard1.0/System.Runtime.Extensions.xml", + "ref/netstandard1.0/de/System.Runtime.Extensions.xml", + "ref/netstandard1.0/es/System.Runtime.Extensions.xml", + "ref/netstandard1.0/fr/System.Runtime.Extensions.xml", + "ref/netstandard1.0/it/System.Runtime.Extensions.xml", + "ref/netstandard1.0/ja/System.Runtime.Extensions.xml", + "ref/netstandard1.0/ko/System.Runtime.Extensions.xml", + "ref/netstandard1.0/ru/System.Runtime.Extensions.xml", + "ref/netstandard1.0/zh-hans/System.Runtime.Extensions.xml", + "ref/netstandard1.0/zh-hant/System.Runtime.Extensions.xml", + "ref/netstandard1.3/System.Runtime.Extensions.dll", + "ref/netstandard1.3/System.Runtime.Extensions.xml", + "ref/netstandard1.3/de/System.Runtime.Extensions.xml", + "ref/netstandard1.3/es/System.Runtime.Extensions.xml", + "ref/netstandard1.3/fr/System.Runtime.Extensions.xml", + "ref/netstandard1.3/it/System.Runtime.Extensions.xml", + "ref/netstandard1.3/ja/System.Runtime.Extensions.xml", + "ref/netstandard1.3/ko/System.Runtime.Extensions.xml", + "ref/netstandard1.3/ru/System.Runtime.Extensions.xml", + "ref/netstandard1.3/zh-hans/System.Runtime.Extensions.xml", + "ref/netstandard1.3/zh-hant/System.Runtime.Extensions.xml", + "ref/netstandard1.5/System.Runtime.Extensions.dll", + "ref/netstandard1.5/System.Runtime.Extensions.xml", + "ref/netstandard1.5/de/System.Runtime.Extensions.xml", + "ref/netstandard1.5/es/System.Runtime.Extensions.xml", + "ref/netstandard1.5/fr/System.Runtime.Extensions.xml", + "ref/netstandard1.5/it/System.Runtime.Extensions.xml", + "ref/netstandard1.5/ja/System.Runtime.Extensions.xml", + "ref/netstandard1.5/ko/System.Runtime.Extensions.xml", + "ref/netstandard1.5/ru/System.Runtime.Extensions.xml", + "ref/netstandard1.5/zh-hans/System.Runtime.Extensions.xml", + "ref/netstandard1.5/zh-hant/System.Runtime.Extensions.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.runtime.extensions.4.3.0.nupkg.sha512", + "system.runtime.extensions.nuspec" + ] + }, + "System.Runtime.Handles/4.3.0": { + "sha512": "OKiSUN7DmTWeYb3l51A7EYaeNMnvxwE249YtZz7yooT4gOZhmTjIn48KgSsw2k2lYdLgTKNJw/ZIfSElwDRVgg==", + "type": "package", + "path": "system.runtime.handles/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/_._", + "ref/netstandard1.3/System.Runtime.Handles.dll", + "ref/netstandard1.3/System.Runtime.Handles.xml", + "ref/netstandard1.3/de/System.Runtime.Handles.xml", + "ref/netstandard1.3/es/System.Runtime.Handles.xml", + "ref/netstandard1.3/fr/System.Runtime.Handles.xml", + "ref/netstandard1.3/it/System.Runtime.Handles.xml", + "ref/netstandard1.3/ja/System.Runtime.Handles.xml", + "ref/netstandard1.3/ko/System.Runtime.Handles.xml", + "ref/netstandard1.3/ru/System.Runtime.Handles.xml", + "ref/netstandard1.3/zh-hans/System.Runtime.Handles.xml", + "ref/netstandard1.3/zh-hant/System.Runtime.Handles.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.runtime.handles.4.3.0.nupkg.sha512", + "system.runtime.handles.nuspec" + ] + }, + "System.Runtime.InteropServices/4.3.0": { + "sha512": "uv1ynXqiMK8mp1GM3jDqPCFN66eJ5w5XNomaK2XD+TuCroNTLFGeZ+WCmBMcBDyTFKou3P6cR6J/QsaqDp7fGQ==", + "type": "package", + "path": "system.runtime.interopservices/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net462/System.Runtime.InteropServices.dll", + "lib/net463/System.Runtime.InteropServices.dll", + "lib/portable-net45+win8+wpa81/_._", + "lib/win8/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net462/System.Runtime.InteropServices.dll", + "ref/net463/System.Runtime.InteropServices.dll", + "ref/netcore50/System.Runtime.InteropServices.dll", + "ref/netcore50/System.Runtime.InteropServices.xml", + "ref/netcore50/de/System.Runtime.InteropServices.xml", + "ref/netcore50/es/System.Runtime.InteropServices.xml", + "ref/netcore50/fr/System.Runtime.InteropServices.xml", + "ref/netcore50/it/System.Runtime.InteropServices.xml", + "ref/netcore50/ja/System.Runtime.InteropServices.xml", + "ref/netcore50/ko/System.Runtime.InteropServices.xml", + "ref/netcore50/ru/System.Runtime.InteropServices.xml", + "ref/netcore50/zh-hans/System.Runtime.InteropServices.xml", + "ref/netcore50/zh-hant/System.Runtime.InteropServices.xml", + "ref/netcoreapp1.1/System.Runtime.InteropServices.dll", + "ref/netstandard1.1/System.Runtime.InteropServices.dll", + "ref/netstandard1.1/System.Runtime.InteropServices.xml", + "ref/netstandard1.1/de/System.Runtime.InteropServices.xml", + "ref/netstandard1.1/es/System.Runtime.InteropServices.xml", + "ref/netstandard1.1/fr/System.Runtime.InteropServices.xml", + "ref/netstandard1.1/it/System.Runtime.InteropServices.xml", + "ref/netstandard1.1/ja/System.Runtime.InteropServices.xml", + "ref/netstandard1.1/ko/System.Runtime.InteropServices.xml", + "ref/netstandard1.1/ru/System.Runtime.InteropServices.xml", + "ref/netstandard1.1/zh-hans/System.Runtime.InteropServices.xml", + "ref/netstandard1.1/zh-hant/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/System.Runtime.InteropServices.dll", + "ref/netstandard1.2/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/de/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/es/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/fr/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/it/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/ja/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/ko/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/ru/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/zh-hans/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/zh-hant/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/System.Runtime.InteropServices.dll", + "ref/netstandard1.3/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/de/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/es/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/fr/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/it/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/ja/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/ko/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/ru/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/zh-hans/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/zh-hant/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/System.Runtime.InteropServices.dll", + "ref/netstandard1.5/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/de/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/es/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/fr/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/it/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/ja/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/ko/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/ru/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/zh-hans/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/zh-hant/System.Runtime.InteropServices.xml", + "ref/portable-net45+win8+wpa81/_._", + "ref/win8/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.runtime.interopservices.4.3.0.nupkg.sha512", + "system.runtime.interopservices.nuspec" + ] + }, + "System.Runtime.InteropServices.RuntimeInformation/4.3.0": { + "sha512": "cbz4YJMqRDR7oLeMRbdYv7mYzc++17lNhScCX0goO2XpGWdvAt60CGN+FHdePUEHCe/Jy9jUlvNAiNdM+7jsOw==", + "type": "package", + "path": "system.runtime.interopservices.runtimeinformation/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/System.Runtime.InteropServices.RuntimeInformation.dll", + "lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll", + "lib/win8/System.Runtime.InteropServices.RuntimeInformation.dll", + "lib/wpa81/System.Runtime.InteropServices.RuntimeInformation.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/aot/lib/netcore50/System.Runtime.InteropServices.RuntimeInformation.dll", + "runtimes/unix/lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll", + "runtimes/win/lib/net45/System.Runtime.InteropServices.RuntimeInformation.dll", + "runtimes/win/lib/netcore50/System.Runtime.InteropServices.RuntimeInformation.dll", + "runtimes/win/lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll", + "system.runtime.interopservices.runtimeinformation.4.3.0.nupkg.sha512", + "system.runtime.interopservices.runtimeinformation.nuspec" + ] + }, + "System.Runtime.Numerics/4.3.0": { + "sha512": "yMH+MfdzHjy17l2KESnPiF2dwq7T+xLnSJar7slyimAkUh/gTrS9/UQOtv7xarskJ2/XDSNvfLGOBQPjL7PaHQ==", + "type": "package", + "path": "system.runtime.numerics/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Runtime.Numerics.dll", + "lib/netstandard1.3/System.Runtime.Numerics.dll", + "lib/portable-net45+win8+wpa81/_._", + "lib/win8/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Runtime.Numerics.dll", + "ref/netcore50/System.Runtime.Numerics.xml", + "ref/netcore50/de/System.Runtime.Numerics.xml", + "ref/netcore50/es/System.Runtime.Numerics.xml", + "ref/netcore50/fr/System.Runtime.Numerics.xml", + "ref/netcore50/it/System.Runtime.Numerics.xml", + "ref/netcore50/ja/System.Runtime.Numerics.xml", + "ref/netcore50/ko/System.Runtime.Numerics.xml", + "ref/netcore50/ru/System.Runtime.Numerics.xml", + "ref/netcore50/zh-hans/System.Runtime.Numerics.xml", + "ref/netcore50/zh-hant/System.Runtime.Numerics.xml", + "ref/netstandard1.1/System.Runtime.Numerics.dll", + "ref/netstandard1.1/System.Runtime.Numerics.xml", + "ref/netstandard1.1/de/System.Runtime.Numerics.xml", + "ref/netstandard1.1/es/System.Runtime.Numerics.xml", + "ref/netstandard1.1/fr/System.Runtime.Numerics.xml", + "ref/netstandard1.1/it/System.Runtime.Numerics.xml", + "ref/netstandard1.1/ja/System.Runtime.Numerics.xml", + "ref/netstandard1.1/ko/System.Runtime.Numerics.xml", + "ref/netstandard1.1/ru/System.Runtime.Numerics.xml", + "ref/netstandard1.1/zh-hans/System.Runtime.Numerics.xml", + "ref/netstandard1.1/zh-hant/System.Runtime.Numerics.xml", + "ref/portable-net45+win8+wpa81/_._", + "ref/win8/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.runtime.numerics.4.3.0.nupkg.sha512", + "system.runtime.numerics.nuspec" + ] + }, + "System.Security.Cryptography.Algorithms/4.3.0": { + "sha512": "W1kd2Y8mYSCgc3ULTAZ0hOP2dSdG5YauTb1089T0/kRcN2MpSAW1izOFROrJgxSlMn3ArsgHXagigyi+ibhevg==", + "type": "package", + "path": "system.security.cryptography.algorithms/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Security.Cryptography.Algorithms.dll", + "lib/net461/System.Security.Cryptography.Algorithms.dll", + "lib/net463/System.Security.Cryptography.Algorithms.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Security.Cryptography.Algorithms.dll", + "ref/net461/System.Security.Cryptography.Algorithms.dll", + "ref/net463/System.Security.Cryptography.Algorithms.dll", + "ref/netstandard1.3/System.Security.Cryptography.Algorithms.dll", + "ref/netstandard1.4/System.Security.Cryptography.Algorithms.dll", + "ref/netstandard1.6/System.Security.Cryptography.Algorithms.dll", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/osx/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll", + "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll", + "runtimes/win/lib/net46/System.Security.Cryptography.Algorithms.dll", + "runtimes/win/lib/net461/System.Security.Cryptography.Algorithms.dll", + "runtimes/win/lib/net463/System.Security.Cryptography.Algorithms.dll", + "runtimes/win/lib/netcore50/System.Security.Cryptography.Algorithms.dll", + "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll", + "system.security.cryptography.algorithms.4.3.0.nupkg.sha512", + "system.security.cryptography.algorithms.nuspec" + ] + }, + "System.Security.Cryptography.Cng/4.3.0": { + "sha512": "03idZOqFlsKRL4W+LuCpJ6dBYDUWReug6lZjBa3uJWnk5sPCUXckocevTaUA8iT/MFSrY/2HXkOt753xQ/cf8g==", + "type": "package", + "path": "system.security.cryptography.cng/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/net46/System.Security.Cryptography.Cng.dll", + "lib/net461/System.Security.Cryptography.Cng.dll", + "lib/net463/System.Security.Cryptography.Cng.dll", + "ref/net46/System.Security.Cryptography.Cng.dll", + "ref/net461/System.Security.Cryptography.Cng.dll", + "ref/net463/System.Security.Cryptography.Cng.dll", + "ref/netstandard1.3/System.Security.Cryptography.Cng.dll", + "ref/netstandard1.4/System.Security.Cryptography.Cng.dll", + "ref/netstandard1.6/System.Security.Cryptography.Cng.dll", + "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.Cng.dll", + "runtimes/win/lib/net46/System.Security.Cryptography.Cng.dll", + "runtimes/win/lib/net461/System.Security.Cryptography.Cng.dll", + "runtimes/win/lib/net463/System.Security.Cryptography.Cng.dll", + "runtimes/win/lib/netstandard1.4/System.Security.Cryptography.Cng.dll", + "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.Cng.dll", + "system.security.cryptography.cng.4.3.0.nupkg.sha512", + "system.security.cryptography.cng.nuspec" + ] + }, + "System.Security.Cryptography.Csp/4.3.0": { + "sha512": "X4s/FCkEUnRGnwR3aSfVIkldBmtURMhmexALNTwpjklzxWU7yjMk7GHLKOZTNkgnWnE0q7+BCf9N2LVRWxewaA==", + "type": "package", + "path": "system.security.cryptography.csp/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Security.Cryptography.Csp.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Security.Cryptography.Csp.dll", + "ref/netstandard1.3/System.Security.Cryptography.Csp.dll", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.Csp.dll", + "runtimes/win/lib/net46/System.Security.Cryptography.Csp.dll", + "runtimes/win/lib/netcore50/_._", + "runtimes/win/lib/netstandard1.3/System.Security.Cryptography.Csp.dll", + "system.security.cryptography.csp.4.3.0.nupkg.sha512", + "system.security.cryptography.csp.nuspec" + ] + }, + "System.Security.Cryptography.Encoding/4.3.0": { + "sha512": "1DEWjZZly9ae9C79vFwqaO5kaOlI5q+3/55ohmq/7dpDyDfc8lYe7YVxJUZ5MF/NtbkRjwFRo14yM4OEo9EmDw==", + "type": "package", + "path": "system.security.cryptography.encoding/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Security.Cryptography.Encoding.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Security.Cryptography.Encoding.dll", + "ref/netstandard1.3/System.Security.Cryptography.Encoding.dll", + "ref/netstandard1.3/System.Security.Cryptography.Encoding.xml", + "ref/netstandard1.3/de/System.Security.Cryptography.Encoding.xml", + "ref/netstandard1.3/es/System.Security.Cryptography.Encoding.xml", + "ref/netstandard1.3/fr/System.Security.Cryptography.Encoding.xml", + "ref/netstandard1.3/it/System.Security.Cryptography.Encoding.xml", + "ref/netstandard1.3/ja/System.Security.Cryptography.Encoding.xml", + "ref/netstandard1.3/ko/System.Security.Cryptography.Encoding.xml", + "ref/netstandard1.3/ru/System.Security.Cryptography.Encoding.xml", + "ref/netstandard1.3/zh-hans/System.Security.Cryptography.Encoding.xml", + "ref/netstandard1.3/zh-hant/System.Security.Cryptography.Encoding.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.Encoding.dll", + "runtimes/win/lib/net46/System.Security.Cryptography.Encoding.dll", + "runtimes/win/lib/netstandard1.3/System.Security.Cryptography.Encoding.dll", + "system.security.cryptography.encoding.4.3.0.nupkg.sha512", + "system.security.cryptography.encoding.nuspec" + ] + }, + "System.Security.Cryptography.OpenSsl/4.3.0": { + "sha512": "h4CEgOgv5PKVF/HwaHzJRiVboL2THYCou97zpmhjghx5frc7fIvlkY1jL+lnIQyChrJDMNEXS6r7byGif8Cy4w==", + "type": "package", + "path": "system.security.cryptography.openssl/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.6/System.Security.Cryptography.OpenSsl.dll", + "ref/netstandard1.6/System.Security.Cryptography.OpenSsl.dll", + "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.OpenSsl.dll", + "system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "system.security.cryptography.openssl.nuspec" + ] + }, + "System.Security.Cryptography.Primitives/4.3.0": { + "sha512": "7bDIyVFNL/xKeFHjhobUAQqSpJq9YTOpbEs6mR233Et01STBMXNAc/V+BM6dwYGc95gVh/Zf+iVXWzj3mE8DWg==", + "type": "package", + "path": "system.security.cryptography.primitives/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Security.Cryptography.Primitives.dll", + "lib/netstandard1.3/System.Security.Cryptography.Primitives.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Security.Cryptography.Primitives.dll", + "ref/netstandard1.3/System.Security.Cryptography.Primitives.dll", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.security.cryptography.primitives.4.3.0.nupkg.sha512", + "system.security.cryptography.primitives.nuspec" + ] + }, + "System.Security.Cryptography.X509Certificates/4.3.0": { + "sha512": "t2Tmu6Y2NtJ2um0RtcuhP7ZdNNxXEgUm2JeoA/0NvlMjAhKCnM1NX07TDl3244mVp3QU6LPEhT3HTtH1uF7IYw==", + "type": "package", + "path": "system.security.cryptography.x509certificates/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Security.Cryptography.X509Certificates.dll", + "lib/net461/System.Security.Cryptography.X509Certificates.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Security.Cryptography.X509Certificates.dll", + "ref/net461/System.Security.Cryptography.X509Certificates.dll", + "ref/netstandard1.3/System.Security.Cryptography.X509Certificates.dll", + "ref/netstandard1.3/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.3/de/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.3/es/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.3/fr/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.3/it/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.3/ja/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.3/ko/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.3/ru/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.3/zh-hans/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.3/zh-hant/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/System.Security.Cryptography.X509Certificates.dll", + "ref/netstandard1.4/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/de/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/es/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/fr/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/it/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/ja/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/ko/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/ru/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/zh-hans/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/zh-hant/System.Security.Cryptography.X509Certificates.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.X509Certificates.dll", + "runtimes/win/lib/net46/System.Security.Cryptography.X509Certificates.dll", + "runtimes/win/lib/net461/System.Security.Cryptography.X509Certificates.dll", + "runtimes/win/lib/netcore50/System.Security.Cryptography.X509Certificates.dll", + "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.X509Certificates.dll", + "system.security.cryptography.x509certificates.4.3.0.nupkg.sha512", + "system.security.cryptography.x509certificates.nuspec" + ] + }, + "System.Text.Encoding/4.3.0": { + "sha512": "BiIg+KWaSDOITze6jGQynxg64naAPtqGHBwDrLaCtixsa5bKiR8dpPOHA7ge3C0JJQizJE+sfkz1wV+BAKAYZw==", + "type": "package", + "path": "system.text.encoding/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Text.Encoding.dll", + "ref/netcore50/System.Text.Encoding.xml", + "ref/netcore50/de/System.Text.Encoding.xml", + "ref/netcore50/es/System.Text.Encoding.xml", + "ref/netcore50/fr/System.Text.Encoding.xml", + "ref/netcore50/it/System.Text.Encoding.xml", + "ref/netcore50/ja/System.Text.Encoding.xml", + "ref/netcore50/ko/System.Text.Encoding.xml", + "ref/netcore50/ru/System.Text.Encoding.xml", + "ref/netcore50/zh-hans/System.Text.Encoding.xml", + "ref/netcore50/zh-hant/System.Text.Encoding.xml", + "ref/netstandard1.0/System.Text.Encoding.dll", + "ref/netstandard1.0/System.Text.Encoding.xml", + "ref/netstandard1.0/de/System.Text.Encoding.xml", + "ref/netstandard1.0/es/System.Text.Encoding.xml", + "ref/netstandard1.0/fr/System.Text.Encoding.xml", + "ref/netstandard1.0/it/System.Text.Encoding.xml", + "ref/netstandard1.0/ja/System.Text.Encoding.xml", + "ref/netstandard1.0/ko/System.Text.Encoding.xml", + "ref/netstandard1.0/ru/System.Text.Encoding.xml", + "ref/netstandard1.0/zh-hans/System.Text.Encoding.xml", + "ref/netstandard1.0/zh-hant/System.Text.Encoding.xml", + "ref/netstandard1.3/System.Text.Encoding.dll", + "ref/netstandard1.3/System.Text.Encoding.xml", + "ref/netstandard1.3/de/System.Text.Encoding.xml", + "ref/netstandard1.3/es/System.Text.Encoding.xml", + "ref/netstandard1.3/fr/System.Text.Encoding.xml", + "ref/netstandard1.3/it/System.Text.Encoding.xml", + "ref/netstandard1.3/ja/System.Text.Encoding.xml", + "ref/netstandard1.3/ko/System.Text.Encoding.xml", + "ref/netstandard1.3/ru/System.Text.Encoding.xml", + "ref/netstandard1.3/zh-hans/System.Text.Encoding.xml", + "ref/netstandard1.3/zh-hant/System.Text.Encoding.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.text.encoding.4.3.0.nupkg.sha512", + "system.text.encoding.nuspec" + ] + }, + "System.Text.Encoding.Extensions/4.3.0": { + "sha512": "YVMK0Bt/A43RmwizJoZ22ei2nmrhobgeiYwFzC4YAN+nue8RF6djXDMog0UCn+brerQoYVyaS+ghy9P/MUVcmw==", + "type": "package", + "path": "system.text.encoding.extensions/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Text.Encoding.Extensions.dll", + "ref/netcore50/System.Text.Encoding.Extensions.xml", + "ref/netcore50/de/System.Text.Encoding.Extensions.xml", + "ref/netcore50/es/System.Text.Encoding.Extensions.xml", + "ref/netcore50/fr/System.Text.Encoding.Extensions.xml", + "ref/netcore50/it/System.Text.Encoding.Extensions.xml", + "ref/netcore50/ja/System.Text.Encoding.Extensions.xml", + "ref/netcore50/ko/System.Text.Encoding.Extensions.xml", + "ref/netcore50/ru/System.Text.Encoding.Extensions.xml", + "ref/netcore50/zh-hans/System.Text.Encoding.Extensions.xml", + "ref/netcore50/zh-hant/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/System.Text.Encoding.Extensions.dll", + "ref/netstandard1.0/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/de/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/es/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/fr/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/it/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/ja/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/ko/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/ru/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/zh-hans/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/zh-hant/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/System.Text.Encoding.Extensions.dll", + "ref/netstandard1.3/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/de/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/es/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/fr/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/it/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/ja/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/ko/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/ru/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/zh-hans/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/zh-hant/System.Text.Encoding.Extensions.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.text.encoding.extensions.4.3.0.nupkg.sha512", + "system.text.encoding.extensions.nuspec" + ] + }, + "System.Text.Encodings.Web/9.0.4": { + "sha512": "V+5cCPpk1S2ngekUs9nDrQLHGiWFZMg8BthADQr+Fwi59a8DdHFu26S2oi9Bfgv+d67bqmkPqctJXMEXiimXUg==", + "type": "package", + "path": "system.text.encodings.web/9.0.4", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.Text.Encodings.Web.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/System.Text.Encodings.Web.targets", + "lib/net462/System.Text.Encodings.Web.dll", + "lib/net462/System.Text.Encodings.Web.xml", + "lib/net8.0/System.Text.Encodings.Web.dll", + "lib/net8.0/System.Text.Encodings.Web.xml", + "lib/net9.0/System.Text.Encodings.Web.dll", + "lib/net9.0/System.Text.Encodings.Web.xml", + "lib/netstandard2.0/System.Text.Encodings.Web.dll", + "lib/netstandard2.0/System.Text.Encodings.Web.xml", + "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll", + "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.xml", + "runtimes/browser/lib/net9.0/System.Text.Encodings.Web.dll", + "runtimes/browser/lib/net9.0/System.Text.Encodings.Web.xml", + "system.text.encodings.web.9.0.4.nupkg.sha512", + "system.text.encodings.web.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Text.Json/9.0.4": { + "sha512": "pYtmpcO6R3Ef1XilZEHgXP2xBPVORbYEzRP7dl0IAAbN8Dm+kfwio8aCKle97rAWXOExr292MuxWYurIuwN62g==", + "type": "package", + "path": "system.text.json/9.0.4", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "analyzers/dotnet/roslyn3.11/cs/System.Text.Json.SourceGeneration.dll", + "analyzers/dotnet/roslyn3.11/cs/cs/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/de/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/es/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/fr/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/it/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ja/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ko/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/pl/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ru/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/tr/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/System.Text.Json.SourceGeneration.dll", + "analyzers/dotnet/roslyn4.0/cs/cs/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/de/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/es/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/fr/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/it/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ja/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ko/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/pl/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ru/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/tr/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/System.Text.Json.SourceGeneration.dll", + "analyzers/dotnet/roslyn4.4/cs/cs/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/de/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/es/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/fr/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/it/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ja/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ko/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pl/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ru/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/tr/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll", + "buildTransitive/net461/System.Text.Json.targets", + "buildTransitive/net462/System.Text.Json.targets", + "buildTransitive/net8.0/System.Text.Json.targets", + "buildTransitive/netcoreapp2.0/System.Text.Json.targets", + "buildTransitive/netstandard2.0/System.Text.Json.targets", + "lib/net462/System.Text.Json.dll", + "lib/net462/System.Text.Json.xml", + "lib/net8.0/System.Text.Json.dll", + "lib/net8.0/System.Text.Json.xml", + "lib/net9.0/System.Text.Json.dll", + "lib/net9.0/System.Text.Json.xml", + "lib/netstandard2.0/System.Text.Json.dll", + "lib/netstandard2.0/System.Text.Json.xml", + "system.text.json.9.0.4.nupkg.sha512", + "system.text.json.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Text.RegularExpressions/4.3.1": { + "sha512": "N0kNRrWe4+nXOWlpLT4LAY5brb8caNFlUuIRpraCVMDLYutKkol1aV079rQjLuSxKMJT2SpBQsYX9xbcTMmzwg==", + "type": "package", + "path": "system.text.regularexpressions/4.3.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net463/System.Text.RegularExpressions.dll", + "lib/netcore50/System.Text.RegularExpressions.dll", + "lib/netstandard1.6/System.Text.RegularExpressions.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net463/System.Text.RegularExpressions.dll", + "ref/netcore50/System.Text.RegularExpressions.dll", + "ref/netcore50/System.Text.RegularExpressions.xml", + "ref/netcore50/de/System.Text.RegularExpressions.xml", + "ref/netcore50/es/System.Text.RegularExpressions.xml", + "ref/netcore50/fr/System.Text.RegularExpressions.xml", + "ref/netcore50/it/System.Text.RegularExpressions.xml", + "ref/netcore50/ja/System.Text.RegularExpressions.xml", + "ref/netcore50/ko/System.Text.RegularExpressions.xml", + "ref/netcore50/ru/System.Text.RegularExpressions.xml", + "ref/netcore50/zh-hans/System.Text.RegularExpressions.xml", + "ref/netcore50/zh-hant/System.Text.RegularExpressions.xml", + "ref/netcoreapp1.1/System.Text.RegularExpressions.dll", + "ref/netstandard1.0/System.Text.RegularExpressions.dll", + "ref/netstandard1.0/System.Text.RegularExpressions.xml", + "ref/netstandard1.0/de/System.Text.RegularExpressions.xml", + "ref/netstandard1.0/es/System.Text.RegularExpressions.xml", + "ref/netstandard1.0/fr/System.Text.RegularExpressions.xml", + "ref/netstandard1.0/it/System.Text.RegularExpressions.xml", + "ref/netstandard1.0/ja/System.Text.RegularExpressions.xml", + "ref/netstandard1.0/ko/System.Text.RegularExpressions.xml", + "ref/netstandard1.0/ru/System.Text.RegularExpressions.xml", + "ref/netstandard1.0/zh-hans/System.Text.RegularExpressions.xml", + "ref/netstandard1.0/zh-hant/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/System.Text.RegularExpressions.dll", + "ref/netstandard1.3/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/de/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/es/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/fr/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/it/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/ja/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/ko/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/ru/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/zh-hans/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/zh-hant/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/System.Text.RegularExpressions.dll", + "ref/netstandard1.6/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/de/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/es/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/fr/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/it/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/ja/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/ko/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/ru/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/zh-hans/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/zh-hant/System.Text.RegularExpressions.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.text.regularexpressions.4.3.1.nupkg.sha512", + "system.text.regularexpressions.nuspec" + ] + }, + "System.Threading/4.3.0": { + "sha512": "VkUS0kOBcUf3Wwm0TSbrevDDZ6BlM+b/HRiapRFWjM5O0NS0LviG0glKmFK+hhPDd1XFeSdU1GmlLhb2CoVpIw==", + "type": "package", + "path": "system.threading/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Threading.dll", + "lib/netstandard1.3/System.Threading.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Threading.dll", + "ref/netcore50/System.Threading.xml", + "ref/netcore50/de/System.Threading.xml", + "ref/netcore50/es/System.Threading.xml", + "ref/netcore50/fr/System.Threading.xml", + "ref/netcore50/it/System.Threading.xml", + "ref/netcore50/ja/System.Threading.xml", + "ref/netcore50/ko/System.Threading.xml", + "ref/netcore50/ru/System.Threading.xml", + "ref/netcore50/zh-hans/System.Threading.xml", + "ref/netcore50/zh-hant/System.Threading.xml", + "ref/netstandard1.0/System.Threading.dll", + "ref/netstandard1.0/System.Threading.xml", + "ref/netstandard1.0/de/System.Threading.xml", + "ref/netstandard1.0/es/System.Threading.xml", + "ref/netstandard1.0/fr/System.Threading.xml", + "ref/netstandard1.0/it/System.Threading.xml", + "ref/netstandard1.0/ja/System.Threading.xml", + "ref/netstandard1.0/ko/System.Threading.xml", + "ref/netstandard1.0/ru/System.Threading.xml", + "ref/netstandard1.0/zh-hans/System.Threading.xml", + "ref/netstandard1.0/zh-hant/System.Threading.xml", + "ref/netstandard1.3/System.Threading.dll", + "ref/netstandard1.3/System.Threading.xml", + "ref/netstandard1.3/de/System.Threading.xml", + "ref/netstandard1.3/es/System.Threading.xml", + "ref/netstandard1.3/fr/System.Threading.xml", + "ref/netstandard1.3/it/System.Threading.xml", + "ref/netstandard1.3/ja/System.Threading.xml", + "ref/netstandard1.3/ko/System.Threading.xml", + "ref/netstandard1.3/ru/System.Threading.xml", + "ref/netstandard1.3/zh-hans/System.Threading.xml", + "ref/netstandard1.3/zh-hant/System.Threading.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/aot/lib/netcore50/System.Threading.dll", + "system.threading.4.3.0.nupkg.sha512", + "system.threading.nuspec" + ] + }, + "System.Threading.Channels/7.0.0": { + "sha512": "qmeeYNROMsONF6ndEZcIQ+VxR4Q/TX/7uIVLJqtwIWL7dDWeh0l1UIqgo4wYyjG//5lUNhwkLDSFl+pAWO6oiA==", + "type": "package", + "path": "system.threading.channels/7.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.Threading.Channels.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/System.Threading.Channels.targets", + "lib/net462/System.Threading.Channels.dll", + "lib/net462/System.Threading.Channels.xml", + "lib/net6.0/System.Threading.Channels.dll", + "lib/net6.0/System.Threading.Channels.xml", + "lib/net7.0/System.Threading.Channels.dll", + "lib/net7.0/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.7.0.0.nupkg.sha512", + "system.threading.channels.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Threading.Tasks/4.3.0": { + "sha512": "LbSxKEdOUhVe8BezB/9uOGGppt+nZf6e1VFyw6v3DN6lqitm0OSn2uXMOdtP0M3W4iMcqcivm2J6UgqiwwnXiA==", + "type": "package", + "path": "system.threading.tasks/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Threading.Tasks.dll", + "ref/netcore50/System.Threading.Tasks.xml", + "ref/netcore50/de/System.Threading.Tasks.xml", + "ref/netcore50/es/System.Threading.Tasks.xml", + "ref/netcore50/fr/System.Threading.Tasks.xml", + "ref/netcore50/it/System.Threading.Tasks.xml", + "ref/netcore50/ja/System.Threading.Tasks.xml", + "ref/netcore50/ko/System.Threading.Tasks.xml", + "ref/netcore50/ru/System.Threading.Tasks.xml", + "ref/netcore50/zh-hans/System.Threading.Tasks.xml", + "ref/netcore50/zh-hant/System.Threading.Tasks.xml", + "ref/netstandard1.0/System.Threading.Tasks.dll", + "ref/netstandard1.0/System.Threading.Tasks.xml", + "ref/netstandard1.0/de/System.Threading.Tasks.xml", + "ref/netstandard1.0/es/System.Threading.Tasks.xml", + "ref/netstandard1.0/fr/System.Threading.Tasks.xml", + "ref/netstandard1.0/it/System.Threading.Tasks.xml", + "ref/netstandard1.0/ja/System.Threading.Tasks.xml", + "ref/netstandard1.0/ko/System.Threading.Tasks.xml", + "ref/netstandard1.0/ru/System.Threading.Tasks.xml", + "ref/netstandard1.0/zh-hans/System.Threading.Tasks.xml", + "ref/netstandard1.0/zh-hant/System.Threading.Tasks.xml", + "ref/netstandard1.3/System.Threading.Tasks.dll", + "ref/netstandard1.3/System.Threading.Tasks.xml", + "ref/netstandard1.3/de/System.Threading.Tasks.xml", + "ref/netstandard1.3/es/System.Threading.Tasks.xml", + "ref/netstandard1.3/fr/System.Threading.Tasks.xml", + "ref/netstandard1.3/it/System.Threading.Tasks.xml", + "ref/netstandard1.3/ja/System.Threading.Tasks.xml", + "ref/netstandard1.3/ko/System.Threading.Tasks.xml", + "ref/netstandard1.3/ru/System.Threading.Tasks.xml", + "ref/netstandard1.3/zh-hans/System.Threading.Tasks.xml", + "ref/netstandard1.3/zh-hant/System.Threading.Tasks.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.threading.tasks.4.3.0.nupkg.sha512", + "system.threading.tasks.nuspec" + ] + }, + "System.Threading.Tasks.Extensions/4.3.0": { + "sha512": "npvJkVKl5rKXrtl1Kkm6OhOUaYGEiF9wFbppFRWSMoApKzt2PiPHT2Bb8a5sAWxprvdOAtvaARS9QYMznEUtug==", + "type": "package", + "path": "system.threading.tasks.extensions/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/System.Threading.Tasks.Extensions.dll", + "lib/netstandard1.0/System.Threading.Tasks.Extensions.xml", + "lib/portable-net45+win8+wp8+wpa81/System.Threading.Tasks.Extensions.dll", + "lib/portable-net45+win8+wp8+wpa81/System.Threading.Tasks.Extensions.xml", + "system.threading.tasks.extensions.4.3.0.nupkg.sha512", + "system.threading.tasks.extensions.nuspec" + ] + }, + "System.Threading.Timer/4.3.0": { + "sha512": "Z6YfyYTCg7lOZjJzBjONJTFKGN9/NIYKSxhU5GRd+DTwHSZyvWp1xuI5aR+dLg+ayyC5Xv57KiY4oJ0tMO89fQ==", + "type": "package", + "path": "system.threading.timer/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net451/_._", + "lib/portable-net451+win81+wpa81/_._", + "lib/win81/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net451/_._", + "ref/netcore50/System.Threading.Timer.dll", + "ref/netcore50/System.Threading.Timer.xml", + "ref/netcore50/de/System.Threading.Timer.xml", + "ref/netcore50/es/System.Threading.Timer.xml", + "ref/netcore50/fr/System.Threading.Timer.xml", + "ref/netcore50/it/System.Threading.Timer.xml", + "ref/netcore50/ja/System.Threading.Timer.xml", + "ref/netcore50/ko/System.Threading.Timer.xml", + "ref/netcore50/ru/System.Threading.Timer.xml", + "ref/netcore50/zh-hans/System.Threading.Timer.xml", + "ref/netcore50/zh-hant/System.Threading.Timer.xml", + "ref/netstandard1.2/System.Threading.Timer.dll", + "ref/netstandard1.2/System.Threading.Timer.xml", + "ref/netstandard1.2/de/System.Threading.Timer.xml", + "ref/netstandard1.2/es/System.Threading.Timer.xml", + "ref/netstandard1.2/fr/System.Threading.Timer.xml", + "ref/netstandard1.2/it/System.Threading.Timer.xml", + "ref/netstandard1.2/ja/System.Threading.Timer.xml", + "ref/netstandard1.2/ko/System.Threading.Timer.xml", + "ref/netstandard1.2/ru/System.Threading.Timer.xml", + "ref/netstandard1.2/zh-hans/System.Threading.Timer.xml", + "ref/netstandard1.2/zh-hant/System.Threading.Timer.xml", + "ref/portable-net451+win81+wpa81/_._", + "ref/win81/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.threading.timer.4.3.0.nupkg.sha512", + "system.threading.timer.nuspec" + ] + }, + "System.Xml.ReaderWriter/4.3.0": { + "sha512": "GrprA+Z0RUXaR4N7/eW71j1rgMnEnEVlgii49GZyAjTH7uliMnrOU3HNFBr6fEDBCJCIdlVNq9hHbaDR621XBA==", + "type": "package", + "path": "system.xml.readerwriter/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net46/System.Xml.ReaderWriter.dll", + "lib/netcore50/System.Xml.ReaderWriter.dll", + "lib/netstandard1.3/System.Xml.ReaderWriter.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net46/System.Xml.ReaderWriter.dll", + "ref/netcore50/System.Xml.ReaderWriter.dll", + "ref/netcore50/System.Xml.ReaderWriter.xml", + "ref/netcore50/de/System.Xml.ReaderWriter.xml", + "ref/netcore50/es/System.Xml.ReaderWriter.xml", + "ref/netcore50/fr/System.Xml.ReaderWriter.xml", + "ref/netcore50/it/System.Xml.ReaderWriter.xml", + "ref/netcore50/ja/System.Xml.ReaderWriter.xml", + "ref/netcore50/ko/System.Xml.ReaderWriter.xml", + "ref/netcore50/ru/System.Xml.ReaderWriter.xml", + "ref/netcore50/zh-hans/System.Xml.ReaderWriter.xml", + "ref/netcore50/zh-hant/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/System.Xml.ReaderWriter.dll", + "ref/netstandard1.0/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/de/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/es/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/fr/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/it/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/ja/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/ko/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/ru/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/zh-hans/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/zh-hant/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/System.Xml.ReaderWriter.dll", + "ref/netstandard1.3/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/de/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/es/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/fr/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/it/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/ja/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/ko/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/ru/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/zh-hans/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/zh-hant/System.Xml.ReaderWriter.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.xml.readerwriter.4.3.0.nupkg.sha512", + "system.xml.readerwriter.nuspec" + ] + }, + "System.Xml.XDocument/4.3.0": { + "sha512": "5zJ0XDxAIg8iy+t4aMnQAu0MqVbqyvfoUVl1yDV61xdo3Vth45oA2FoY4pPkxYAH5f8ixpmTqXeEIya95x0aCQ==", + "type": "package", + "path": "system.xml.xdocument/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Xml.XDocument.dll", + "lib/netstandard1.3/System.Xml.XDocument.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Xml.XDocument.dll", + "ref/netcore50/System.Xml.XDocument.xml", + "ref/netcore50/de/System.Xml.XDocument.xml", + "ref/netcore50/es/System.Xml.XDocument.xml", + "ref/netcore50/fr/System.Xml.XDocument.xml", + "ref/netcore50/it/System.Xml.XDocument.xml", + "ref/netcore50/ja/System.Xml.XDocument.xml", + "ref/netcore50/ko/System.Xml.XDocument.xml", + "ref/netcore50/ru/System.Xml.XDocument.xml", + "ref/netcore50/zh-hans/System.Xml.XDocument.xml", + "ref/netcore50/zh-hant/System.Xml.XDocument.xml", + "ref/netstandard1.0/System.Xml.XDocument.dll", + "ref/netstandard1.0/System.Xml.XDocument.xml", + "ref/netstandard1.0/de/System.Xml.XDocument.xml", + "ref/netstandard1.0/es/System.Xml.XDocument.xml", + "ref/netstandard1.0/fr/System.Xml.XDocument.xml", + "ref/netstandard1.0/it/System.Xml.XDocument.xml", + "ref/netstandard1.0/ja/System.Xml.XDocument.xml", + "ref/netstandard1.0/ko/System.Xml.XDocument.xml", + "ref/netstandard1.0/ru/System.Xml.XDocument.xml", + "ref/netstandard1.0/zh-hans/System.Xml.XDocument.xml", + "ref/netstandard1.0/zh-hant/System.Xml.XDocument.xml", + "ref/netstandard1.3/System.Xml.XDocument.dll", + "ref/netstandard1.3/System.Xml.XDocument.xml", + "ref/netstandard1.3/de/System.Xml.XDocument.xml", + "ref/netstandard1.3/es/System.Xml.XDocument.xml", + "ref/netstandard1.3/fr/System.Xml.XDocument.xml", + "ref/netstandard1.3/it/System.Xml.XDocument.xml", + "ref/netstandard1.3/ja/System.Xml.XDocument.xml", + "ref/netstandard1.3/ko/System.Xml.XDocument.xml", + "ref/netstandard1.3/ru/System.Xml.XDocument.xml", + "ref/netstandard1.3/zh-hans/System.Xml.XDocument.xml", + "ref/netstandard1.3/zh-hant/System.Xml.XDocument.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.xml.xdocument.4.3.0.nupkg.sha512", + "system.xml.xdocument.nuspec" + ] + } + }, + "projectFileDependencyGroups": { + "net8.0": [ + "AutoMapper.Extensions.Microsoft.DependencyInjection >= 12.0.1", + "DotNetEnv >= 3.1.1", + "Microsoft.AspNetCore.Authentication.JwtBearer >= 8.0.0", + "Microsoft.AspNetCore.OpenApi >= 8.0.14", + "Microsoft.EntityFrameworkCore >= 9.0.5", + "Microsoft.EntityFrameworkCore.Design >= 9.0.4", + "Npgsql.EntityFrameworkCore.PostgreSQL >= 9.0.4", + "Swashbuckle.AspNetCore >= 8.1.1", + "System.IdentityModel.Tokens.Jwt >= 8.10.0" + ] + }, + "packageFolders": { + "C:\\Users\\samik\\.nuget\\packages\\": {} + }, + "project": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "C:\\VD\\appnew\\ValuationBackend\\ValuationBackend.csproj", + "projectName": "ValuationBackend", + "projectPath": "C:\\VD\\appnew\\ValuationBackend\\ValuationBackend.csproj", + "packagesPath": "C:\\Users\\samik\\.nuget\\packages\\", + "outputPath": "C:\\VD\\appnew\\ValuationBackend\\obj\\", + "projectStyle": "PackageReference", + "configFilePaths": [ + "C:\\Users\\samik\\AppData\\Roaming\\NuGet\\NuGet.Config" + ], + "originalTargetFrameworks": [ + "net8.0" + ], + "sources": { + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "projectReferences": {} + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + }, + "restoreAuditProperties": { + "enableAudit": "true", + "auditLevel": "low", + "auditMode": "direct" + }, + "SdkAnalysisLevel": "9.0.200" + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "dependencies": { + "AutoMapper.Extensions.Microsoft.DependencyInjection": { + "target": "Package", + "version": "[12.0.1, )" + }, + "DotNetEnv": { + "target": "Package", + "version": "[3.1.1, )" + }, + "Microsoft.AspNetCore.Authentication.JwtBearer": { + "target": "Package", + "version": "[8.0.0, )" + }, + "Microsoft.AspNetCore.OpenApi": { + "target": "Package", + "version": "[8.0.14, )" + }, + "Microsoft.EntityFrameworkCore": { + "target": "Package", + "version": "[9.0.5, )" + }, + "Microsoft.EntityFrameworkCore.Design": { + "include": "Runtime, Build, Native, ContentFiles, Analyzers, BuildTransitive", + "suppressParent": "All", + "target": "Package", + "version": "[9.0.4, )" + }, + "Npgsql.EntityFrameworkCore.PostgreSQL": { + "target": "Package", + "version": "[9.0.4, )" + }, + "Swashbuckle.AspNetCore": { + "target": "Package", + "version": "[8.1.1, )" + }, + "System.IdentityModel.Tokens.Jwt": { + "target": "Package", + "version": "[8.10.0, )" + } + }, + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "downloadDependencies": [ + { + "name": "Microsoft.AspNetCore.App.Ref", + "version": "[8.0.17, 8.0.17]" + }, + { + "name": "Microsoft.NETCore.App.Host.win-x64", + "version": "[8.0.17, 8.0.17]" + }, + { + "name": "Microsoft.NETCore.App.Ref", + "version": "[8.0.17, 8.0.17]" + }, + { + "name": "Microsoft.WindowsDesktop.App.Ref", + "version": "[8.0.17, 8.0.17]" + } + ], + "frameworkReferences": { + "Microsoft.AspNetCore.App": { + "privateAssets": "none" + }, + "Microsoft.NETCore.App": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.205/PortableRuntimeIdentifierGraph.json" + } + } + } +} \ No newline at end of file diff --git a/obj/project.nuget.cache b/obj/project.nuget.cache new file mode 100644 index 0000000..1b2129b --- /dev/null +++ b/obj/project.nuget.cache @@ -0,0 +1,150 @@ +{ + "version": 2, + "dgSpecHash": "0WKZVMEjd44=", + "success": true, + "projectFilePath": "C:\\VD\\appnew\\ValuationBackend\\ValuationBackend.csproj", + "expectedPackageFiles": [ + "C:\\Users\\samik\\.nuget\\packages\\automapper\\12.0.1\\automapper.12.0.1.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\automapper.extensions.microsoft.dependencyinjection\\12.0.1\\automapper.extensions.microsoft.dependencyinjection.12.0.1.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\dotnetenv\\3.1.1\\dotnetenv.3.1.1.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\humanizer.core\\2.14.1\\humanizer.core.2.14.1.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.aspnetcore.authentication.jwtbearer\\8.0.0\\microsoft.aspnetcore.authentication.jwtbearer.8.0.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.aspnetcore.openapi\\8.0.14\\microsoft.aspnetcore.openapi.8.0.14.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.bcl.asyncinterfaces\\7.0.0\\microsoft.bcl.asyncinterfaces.7.0.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.build.framework\\17.8.3\\microsoft.build.framework.17.8.3.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.build.locator\\1.7.8\\microsoft.build.locator.1.7.8.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.codeanalysis.analyzers\\3.3.4\\microsoft.codeanalysis.analyzers.3.3.4.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.codeanalysis.common\\4.8.0\\microsoft.codeanalysis.common.4.8.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.codeanalysis.csharp\\4.8.0\\microsoft.codeanalysis.csharp.4.8.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.codeanalysis.csharp.workspaces\\4.8.0\\microsoft.codeanalysis.csharp.workspaces.4.8.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.codeanalysis.workspaces.common\\4.8.0\\microsoft.codeanalysis.workspaces.common.4.8.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.codeanalysis.workspaces.msbuild\\4.8.0\\microsoft.codeanalysis.workspaces.msbuild.4.8.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.csharp\\4.7.0\\microsoft.csharp.4.7.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.entityframeworkcore\\9.0.5\\microsoft.entityframeworkcore.9.0.5.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.entityframeworkcore.abstractions\\9.0.5\\microsoft.entityframeworkcore.abstractions.9.0.5.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.entityframeworkcore.analyzers\\9.0.5\\microsoft.entityframeworkcore.analyzers.9.0.5.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.entityframeworkcore.design\\9.0.4\\microsoft.entityframeworkcore.design.9.0.4.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.entityframeworkcore.relational\\9.0.4\\microsoft.entityframeworkcore.relational.9.0.4.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.extensions.apidescription.server\\6.0.5\\microsoft.extensions.apidescription.server.6.0.5.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.extensions.caching.abstractions\\9.0.5\\microsoft.extensions.caching.abstractions.9.0.5.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.extensions.caching.memory\\9.0.5\\microsoft.extensions.caching.memory.9.0.5.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.extensions.configuration\\1.1.2\\microsoft.extensions.configuration.1.1.2.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.extensions.configuration.abstractions\\9.0.4\\microsoft.extensions.configuration.abstractions.9.0.4.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.extensions.dependencyinjection\\9.0.5\\microsoft.extensions.dependencyinjection.9.0.5.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.extensions.dependencyinjection.abstractions\\9.0.5\\microsoft.extensions.dependencyinjection.abstractions.9.0.5.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.extensions.dependencymodel\\9.0.4\\microsoft.extensions.dependencymodel.9.0.4.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.extensions.logging\\9.0.5\\microsoft.extensions.logging.9.0.5.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.extensions.logging.abstractions\\9.0.5\\microsoft.extensions.logging.abstractions.9.0.5.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.extensions.options\\9.0.5\\microsoft.extensions.options.9.0.5.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.extensions.primitives\\9.0.5\\microsoft.extensions.primitives.9.0.5.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.identitymodel.abstractions\\8.10.0\\microsoft.identitymodel.abstractions.8.10.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.identitymodel.jsonwebtokens\\8.10.0\\microsoft.identitymodel.jsonwebtokens.8.10.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.identitymodel.logging\\8.10.0\\microsoft.identitymodel.logging.8.10.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.identitymodel.protocols\\7.0.3\\microsoft.identitymodel.protocols.7.0.3.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.identitymodel.protocols.openidconnect\\7.0.3\\microsoft.identitymodel.protocols.openidconnect.7.0.3.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.identitymodel.tokens\\8.10.0\\microsoft.identitymodel.tokens.8.10.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.netcore.platforms\\1.1.1\\microsoft.netcore.platforms.1.1.1.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.netcore.targets\\1.1.3\\microsoft.netcore.targets.1.1.3.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.openapi\\1.6.23\\microsoft.openapi.1.6.23.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.win32.primitives\\4.3.0\\microsoft.win32.primitives.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\mono.texttemplating\\3.0.0\\mono.texttemplating.3.0.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\netstandard.library\\1.6.1\\netstandard.library.1.6.1.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\npgsql\\9.0.3\\npgsql.9.0.3.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\npgsql.entityframeworkcore.postgresql\\9.0.4\\npgsql.entityframeworkcore.postgresql.9.0.4.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\runtime.native.system\\4.3.0\\runtime.native.system.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\runtime.native.system.io.compression\\4.3.0\\runtime.native.system.io.compression.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\runtime.native.system.net.http\\4.3.0\\runtime.native.system.net.http.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\runtime.native.system.security.cryptography.apple\\4.3.0\\runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple\\4.3.0\\runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\sprache\\2.3.1\\sprache.2.3.1.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\swashbuckle.aspnetcore\\8.1.1\\swashbuckle.aspnetcore.8.1.1.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\swashbuckle.aspnetcore.swagger\\8.1.1\\swashbuckle.aspnetcore.swagger.8.1.1.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\swashbuckle.aspnetcore.swaggergen\\8.1.1\\swashbuckle.aspnetcore.swaggergen.8.1.1.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\swashbuckle.aspnetcore.swaggerui\\8.1.1\\swashbuckle.aspnetcore.swaggerui.8.1.1.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.appcontext\\4.3.0\\system.appcontext.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.buffers\\4.3.0\\system.buffers.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.codedom\\6.0.0\\system.codedom.6.0.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.collections\\4.3.0\\system.collections.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.collections.concurrent\\4.3.0\\system.collections.concurrent.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.collections.immutable\\7.0.0\\system.collections.immutable.7.0.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.composition\\7.0.0\\system.composition.7.0.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.composition.attributedmodel\\7.0.0\\system.composition.attributedmodel.7.0.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.composition.convention\\7.0.0\\system.composition.convention.7.0.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.composition.hosting\\7.0.0\\system.composition.hosting.7.0.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.composition.runtime\\7.0.0\\system.composition.runtime.7.0.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.composition.typedparts\\7.0.0\\system.composition.typedparts.7.0.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.console\\4.3.0\\system.console.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.diagnostics.debug\\4.3.0\\system.diagnostics.debug.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.diagnostics.diagnosticsource\\9.0.5\\system.diagnostics.diagnosticsource.9.0.5.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.diagnostics.tools\\4.3.0\\system.diagnostics.tools.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.diagnostics.tracing\\4.3.0\\system.diagnostics.tracing.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.globalization\\4.3.0\\system.globalization.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.globalization.calendars\\4.3.0\\system.globalization.calendars.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.globalization.extensions\\4.3.0\\system.globalization.extensions.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.identitymodel.tokens.jwt\\8.10.0\\system.identitymodel.tokens.jwt.8.10.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.io\\4.3.0\\system.io.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.io.compression\\4.3.0\\system.io.compression.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.io.compression.zipfile\\4.3.0\\system.io.compression.zipfile.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.io.filesystem\\4.3.0\\system.io.filesystem.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.io.filesystem.primitives\\4.3.0\\system.io.filesystem.primitives.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.io.pipelines\\9.0.4\\system.io.pipelines.9.0.4.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.linq\\4.3.0\\system.linq.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.linq.expressions\\4.3.0\\system.linq.expressions.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.net.http\\4.3.4\\system.net.http.4.3.4.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.net.primitives\\4.3.0\\system.net.primitives.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.net.sockets\\4.3.0\\system.net.sockets.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.objectmodel\\4.3.0\\system.objectmodel.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.private.uri\\4.3.2\\system.private.uri.4.3.2.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.reflection\\4.3.0\\system.reflection.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.reflection.emit\\4.3.0\\system.reflection.emit.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.reflection.emit.ilgeneration\\4.3.0\\system.reflection.emit.ilgeneration.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.reflection.emit.lightweight\\4.3.0\\system.reflection.emit.lightweight.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.reflection.extensions\\4.3.0\\system.reflection.extensions.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.reflection.metadata\\7.0.0\\system.reflection.metadata.7.0.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.reflection.primitives\\4.3.0\\system.reflection.primitives.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.reflection.typeextensions\\4.3.0\\system.reflection.typeextensions.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.resources.resourcemanager\\4.3.0\\system.resources.resourcemanager.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.runtime\\4.3.1\\system.runtime.4.3.1.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.runtime.compilerservices.unsafe\\6.0.0\\system.runtime.compilerservices.unsafe.6.0.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.runtime.extensions\\4.3.0\\system.runtime.extensions.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.runtime.handles\\4.3.0\\system.runtime.handles.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.runtime.interopservices\\4.3.0\\system.runtime.interopservices.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.runtime.interopservices.runtimeinformation\\4.3.0\\system.runtime.interopservices.runtimeinformation.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.runtime.numerics\\4.3.0\\system.runtime.numerics.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.security.cryptography.algorithms\\4.3.0\\system.security.cryptography.algorithms.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.security.cryptography.cng\\4.3.0\\system.security.cryptography.cng.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.security.cryptography.csp\\4.3.0\\system.security.cryptography.csp.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.security.cryptography.encoding\\4.3.0\\system.security.cryptography.encoding.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.security.cryptography.openssl\\4.3.0\\system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.security.cryptography.primitives\\4.3.0\\system.security.cryptography.primitives.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.security.cryptography.x509certificates\\4.3.0\\system.security.cryptography.x509certificates.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.text.encoding\\4.3.0\\system.text.encoding.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.text.encoding.extensions\\4.3.0\\system.text.encoding.extensions.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.text.encodings.web\\9.0.4\\system.text.encodings.web.9.0.4.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.text.json\\9.0.4\\system.text.json.9.0.4.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.text.regularexpressions\\4.3.1\\system.text.regularexpressions.4.3.1.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.threading\\4.3.0\\system.threading.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.threading.channels\\7.0.0\\system.threading.channels.7.0.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.threading.tasks\\4.3.0\\system.threading.tasks.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.threading.tasks.extensions\\4.3.0\\system.threading.tasks.extensions.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.threading.timer\\4.3.0\\system.threading.timer.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.xml.readerwriter\\4.3.0\\system.xml.readerwriter.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\system.xml.xdocument\\4.3.0\\system.xml.xdocument.4.3.0.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.netcore.app.ref\\8.0.17\\microsoft.netcore.app.ref.8.0.17.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.windowsdesktop.app.ref\\8.0.17\\microsoft.windowsdesktop.app.ref.8.0.17.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.aspnetcore.app.ref\\8.0.17\\microsoft.aspnetcore.app.ref.8.0.17.nupkg.sha512", + "C:\\Users\\samik\\.nuget\\packages\\microsoft.netcore.app.host.win-x64\\8.0.17\\microsoft.netcore.app.host.win-x64.8.0.17.nupkg.sha512" + ], + "logs": [] +} \ No newline at end of file From 97a7674ceab217eec78f63227bb34c4677b2c273 Mon Sep 17 00:00:00 2001 From: Akith-002 Date: Tue, 22 Jul 2025 11:30:23 +0530 Subject: [PATCH 08/21] feat: Add LandMiscellaneousMasterFileId to LMRentalEvidence - Introduced a new nullable foreign key column `LandMiscellaneousMasterFileId` in the `LMRentalEvidences` table. - Updated the `LMRentalEvidence` model to include the new foreign key and navigation property for `LandMiscellaneousMasterFile`. - Modified the DTOs to accommodate the new foreign key and added a DTO for `LandMiscellaneousMasterFile`. - Enhanced the repository interfaces and implementations to support fetching rental evidences by master file ID and reference number. - Updated the service layer to handle the new foreign key relationships and ensure proper data mapping. - Removed outdated sorting API documentation as it is no longer relevant. --- Controllers/DataMigrationController.cs | 69 + Controllers/LMRentalEvidenceController.cs | 24 + Data/AppDbContext.cs | 14 +- Data/DBInitializer.cs | 2 +- Data/PopulateForeignKeysMigration.cs | 99 + ...MasterFileIdToLMRentalEvidence.Designer.cs | 1734 +++++++++++++++++ ...ellaneousMasterFileIdToLMRentalEvidence.cs | 49 + Migrations/AppDbContextModelSnapshot.cs | 18 + Models/DTOs/LMRentalEvidenceDtos.cs | 28 + Models/LMRentalEvidence.cs | 10 +- SORTING_API_DOCUMENTATION.md | 85 - repositories/ILMRentalEvidenceRepository.cs | 7 + repositories/ILandMiscellaneousRepository.cs | 3 + repositories/LMRentalEvidenceRepository.cs | 30 + repositories/LandMiscellaneousRepository.cs | 7 + services/ILMRentalEvidenceService.cs | 10 +- services/LMRentalEvidenceService.cs | 75 +- 17 files changed, 2166 insertions(+), 98 deletions(-) create mode 100644 Controllers/DataMigrationController.cs create mode 100644 Data/PopulateForeignKeysMigration.cs create mode 100644 Migrations/20250722032612_AddLandMiscellaneousMasterFileIdToLMRentalEvidence.Designer.cs create mode 100644 Migrations/20250722032612_AddLandMiscellaneousMasterFileIdToLMRentalEvidence.cs delete mode 100644 SORTING_API_DOCUMENTATION.md diff --git a/Controllers/DataMigrationController.cs b/Controllers/DataMigrationController.cs new file mode 100644 index 0000000..62f155d --- /dev/null +++ b/Controllers/DataMigrationController.cs @@ -0,0 +1,69 @@ +using Microsoft.AspNetCore.Mvc; +using ValuationBackend.Data; + +namespace ValuationBackend.Controllers +{ + [Route("api/[controller]")] + [ApiController] + public class DataMigrationController : ControllerBase + { + private readonly AppDbContext _context; + + public DataMigrationController(AppDbContext context) + { + _context = context; + } + + /// + /// Populates foreign keys for LM Rental Evidence records based on existing string references + /// + [HttpPost("populate-lm-rental-evidence-foreign-keys")] + public async Task PopulateLMRentalEvidenceForeignKeys() + { + try + { + await PopulateForeignKeysMigration.PopulateLMRentalEvidenceForeignKeys(_context); + return Ok(new { message = "Foreign keys populated successfully for LM Rental Evidence." }); + } + catch (Exception ex) + { + return StatusCode(500, new { error = "Failed to populate foreign keys", details = ex.Message }); + } + } + + /// + /// Validates foreign key relationships for LM Rental Evidence + /// + [HttpGet("validate-lm-rental-evidence-foreign-keys")] + public async Task ValidateLMRentalEvidenceForeignKeys() + { + try + { + await PopulateForeignKeysMigration.ValidateForeignKeyRelationships(_context); + return Ok(new { message = "Foreign key validation completed. Check console output for details." }); + } + catch (Exception ex) + { + return StatusCode(500, new { error = "Failed to validate foreign keys", details = ex.Message }); + } + } + + /// + /// Runs both population and validation in sequence + /// + [HttpPost("migrate-lm-rental-evidence")] + public async Task MigrateLMRentalEvidence() + { + try + { + await PopulateForeignKeysMigration.PopulateLMRentalEvidenceForeignKeys(_context); + await PopulateForeignKeysMigration.ValidateForeignKeyRelationships(_context); + return Ok(new { message = "LM Rental Evidence migration completed successfully." }); + } + catch (Exception ex) + { + return StatusCode(500, new { error = "Failed to migrate LM Rental Evidence", details = ex.Message }); + } + } + } +} diff --git a/Controllers/LMRentalEvidenceController.cs b/Controllers/LMRentalEvidenceController.cs index ab60c3d..e0aa5b6 100644 --- a/Controllers/LMRentalEvidenceController.cs +++ b/Controllers/LMRentalEvidenceController.cs @@ -93,5 +93,29 @@ public async Task> GetLMRentalEvidence return lmRentalEvidence; } + + // NEW: GET: api/LMRentalEvidence/ByMasterFile/123 + [HttpGet("ByMasterFile/{masterFileId}")] + public async Task>> GetByMasterFileId(int masterFileId) + { + var evidences = await _lmRentalEvidenceService.GetByMasterFileIdAsync(masterFileId); + return Ok(evidences); + } + + // NEW: GET: api/LMRentalEvidence/ByMasterFileRefNo/MF-2024-001 + [HttpGet("ByMasterFileRefNo/{masterFileRefNo}")] + public async Task>> GetByMasterFileRefNo(string masterFileRefNo) + { + var evidences = await _lmRentalEvidenceService.GetByMasterFileRefNoAsync(masterFileRefNo); + return Ok(evidences); + } + + // NEW: GET: api/LMRentalEvidence/WithMasterFileData + [HttpGet("WithMasterFileData")] + public async Task>> GetAllWithMasterFileData() + { + var evidences = await _lmRentalEvidenceService.GetAllWithMasterFileDataAsync(); + return Ok(evidences); + } } } diff --git a/Data/AppDbContext.cs b/Data/AppDbContext.cs index b330b8c..864dbad 100644 --- a/Data/AppDbContext.cs +++ b/Data/AppDbContext.cs @@ -9,7 +9,7 @@ public AppDbContext(DbContextOptions options) : base(options) { } public DbSet RatingRequests { get; set; } - + public DbSet LandMiscellaneousMasterFiles { get; set; } public DbSet Reconciliations { get; set; } @@ -70,6 +70,18 @@ protected override void OnModelCreating(ModelBuilder modelBuilder) .HasOne(r => r.Asset) .WithMany() .HasForeignKey(r => r.AssetId); + + // NEW: Configure LMRentalEvidence relationships + modelBuilder.Entity() + .HasOne(lm => lm.LandMiscellaneousMasterFile) + .WithMany() + .HasForeignKey(lm => lm.LandMiscellaneousMasterFileId) + .OnDelete(DeleteBehavior.SetNull); + + // NEW: Add index for performance + modelBuilder.Entity() + .HasIndex(lm => lm.LandMiscellaneousMasterFileId) + .HasDatabaseName("IX_LMRentalEvidence_LandMiscellaneousMasterFileId"); } } } diff --git a/Data/DBInitializer.cs b/Data/DBInitializer.cs index 3145e64..9f30907 100644 --- a/Data/DBInitializer.cs +++ b/Data/DBInitializer.cs @@ -32,7 +32,7 @@ public static void Initialize(AppDbContext context) UpdateUserTaskUserIds(context); // Remove UserTasks that are not LM (Land Miscellaneous) - COMMENTED OUT to keep LA and MR tasks - // // RemoveNonLMUserTasks(context); + // RemoveNonLMUserTasks(context); // Initialize Master Data InitializeMasterData(context); // Initialize Land Aquisition Master Files diff --git a/Data/PopulateForeignKeysMigration.cs b/Data/PopulateForeignKeysMigration.cs new file mode 100644 index 0000000..a722272 --- /dev/null +++ b/Data/PopulateForeignKeysMigration.cs @@ -0,0 +1,99 @@ +using Microsoft.EntityFrameworkCore; +using ValuationBackend.Models; + +namespace ValuationBackend.Data +{ + public static class PopulateForeignKeysMigration + { + /// + /// Populates the LandMiscellaneousMasterFileId foreign key in LMRentalEvidence + /// based on existing MasterFileRefNo values + /// + public static async Task PopulateLMRentalEvidenceForeignKeys(AppDbContext context) + { + // Get all rental evidences where foreign key is null but string reference exists + var rentalEvidences = await context.LMRentalEvidences + .Where(re => re.LandMiscellaneousMasterFileId == null && + !string.IsNullOrEmpty(re.MasterFileRefNo)) + .ToListAsync(); + + if (!rentalEvidences.Any()) + { + Console.WriteLine("No rental evidences found that need foreign key population."); + return; + } + + Console.WriteLine($"Found {rentalEvidences.Count} rental evidences to update."); + + int updatedCount = 0; + int skippedCount = 0; + + foreach (var evidence in rentalEvidences) + { + // Find the corresponding master file + var masterFile = await context.LandMiscellaneousMasterFiles + .FirstOrDefaultAsync(mf => mf.MasterFileRefNo == evidence.MasterFileRefNo); + + if (masterFile != null) + { + evidence.LandMiscellaneousMasterFileId = masterFile.Id; + updatedCount++; + Console.WriteLine($"Updated rental evidence ID {evidence.Id} with master file ID {masterFile.Id}"); + } + else + { + skippedCount++; + Console.WriteLine($"Warning: No master file found for reference number '{evidence.MasterFileRefNo}' (Rental Evidence ID: {evidence.Id})"); + } + } + + if (updatedCount > 0) + { + await context.SaveChangesAsync(); + Console.WriteLine($"Successfully updated {updatedCount} rental evidence records."); + } + + if (skippedCount > 0) + { + Console.WriteLine($"Skipped {skippedCount} records due to missing master file references."); + } + } + + /// + /// Validates the foreign key relationships after population + /// + public static async Task ValidateForeignKeyRelationships(AppDbContext context) + { + // Check for rental evidences with valid foreign keys + var withForeignKeys = await context.LMRentalEvidences + .CountAsync(re => re.LandMiscellaneousMasterFileId.HasValue); + + // Check for rental evidences without foreign keys but with string references + var withoutForeignKeys = await context.LMRentalEvidences + .CountAsync(re => !re.LandMiscellaneousMasterFileId.HasValue && + !string.IsNullOrEmpty(re.MasterFileRefNo)); + + // Check for orphaned references (string references that don't match any master file) + var orphanedReferences = await context.LMRentalEvidences + .Where(re => !string.IsNullOrEmpty(re.MasterFileRefNo)) + .Where(re => !context.LandMiscellaneousMasterFiles + .Any(mf => mf.MasterFileRefNo == re.MasterFileRefNo)) + .CountAsync(); + + Console.WriteLine("=== Foreign Key Relationship Validation ==="); + Console.WriteLine($"Rental evidences with foreign keys: {withForeignKeys}"); + Console.WriteLine($"Rental evidences without foreign keys (but with string refs): {withoutForeignKeys}"); + Console.WriteLine($"Orphaned string references: {orphanedReferences}"); + + if (withoutForeignKeys > 0) + { + Console.WriteLine("Warning: Some rental evidences still lack foreign key relationships."); + } + + if (orphanedReferences > 0) + { + Console.WriteLine("Warning: Some rental evidences reference master files that don't exist."); + } + } + } +} diff --git a/Migrations/20250722032612_AddLandMiscellaneousMasterFileIdToLMRentalEvidence.Designer.cs b/Migrations/20250722032612_AddLandMiscellaneousMasterFileIdToLMRentalEvidence.Designer.cs new file mode 100644 index 0000000..9593b8d --- /dev/null +++ b/Migrations/20250722032612_AddLandMiscellaneousMasterFileIdToLMRentalEvidence.Designer.cs @@ -0,0 +1,1734 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using ValuationBackend.Data; + +#nullable disable + +namespace ValuationBackend.Migrations +{ + [DbContext(typeof(AppDbContext))] + [Migration("20250722032612_AddLandMiscellaneousMasterFileIdToLMRentalEvidence")] + partial class AddLandMiscellaneousMasterFileIdToLMRentalEvidence + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "9.0.5") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("LandAquisitionMasterFile", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("MasterFileNo") + .HasColumnType("integer"); + + b.Property("MasterFilesRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanType") + .IsRequired() + .HasColumnType("text"); + + b.Property("RequestingAuthorityReferenceNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Status") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("LandAquisitionMasterFiles"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Asset", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNo") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasColumnType("integer"); + + b.Property("IsRatingCard") + .HasColumnType("boolean"); + + b.Property("Owner") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("RdSt") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("RequestId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Ward") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.HasKey("Id"); + + b.HasIndex("RequestId"); + + b.ToTable("Assets"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetDivision", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Area") + .HasColumnType("numeric"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("LandType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("NewAssetNo") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("AssetDivisions"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetNumberChange", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ChangedDate") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfChange") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasMaxLength(255) + .HasColumnType("character varying(255)"); + + b.Property("FieldSize") + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("FieldType") + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("NewAssetNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("OldAssetNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Reason") + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("AssetNumberChanges"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNumber") + .HasColumnType("text"); + + b.Property("ConstructedBy") + .HasColumnType("text"); + + b.Property("Cost") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("FloorAreaSQFT") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerSQFT") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("YearOfConstruction") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("BuildingRatesLA"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccessCategory") + .IsRequired() + .HasColumnType("text"); + + b.Property("AccessCategoryDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquiredExtent") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquiringOfficerSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquisitionName") + .IsRequired() + .HasColumnType("text"); + + b.Property("AssessmentNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("AtLotNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("AtPlanNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryBottom") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryEast") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryNorth") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundarySouth") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryWest") + .IsRequired() + .HasColumnType("text"); + + b.Property("BuildingDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("BuildingInfo") + .IsRequired() + .HasColumnType("text"); + + b.Property("ChiefValuerRepresentativeSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfSection3BA") + .IsRequired() + .HasColumnType("text"); + + b.Property("DatePrepared") + .IsRequired() + .HasColumnType("text"); + + b.Property("DepthOfLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("DescriptionOfLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("DetailsOfBusiness") + .IsRequired() + .HasColumnType("text"); + + b.Property("Frontage") + .IsRequired() + .HasColumnType("text"); + + b.Property("GramasewakaSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("LandUseDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("LandUseType") + .IsRequired() + .HasColumnType("text"); + + b.Property("LevelWithAccess") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("NameOfTheLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("NameOfTheVillage") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionsDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionsInfo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlantationDetails") + .IsRequired() + .HasColumnType("text"); + + b.Property("PpCadLotNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("PpCadNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("RoadName") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("ConditionReports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.DomesticRatingCard", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Access") + .HasColumnType("text"); + + b.Property("Age") + .HasColumnType("integer"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("Condition") + .HasColumnType("text"); + + b.Property("Conveniences") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("Floor") + .HasColumnType("text"); + + b.Property("NewNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("Notes") + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .IsRequired() + .HasColumnType("text"); + + b.Property("ParkingSpace") + .HasColumnType("text"); + + b.Property("Plantations") + .HasColumnType("text"); + + b.Property("PropertySubCategory") + .HasColumnType("text"); + + b.Property("PropertyType") + .HasColumnType("text"); + + b.Property("RentPM") + .HasColumnType("numeric"); + + b.Property("RoadName") + .HasColumnType("text"); + + b.Property("SelectWalls") + .HasColumnType("text"); + + b.Property("SuggestedRate") + .HasColumnType("numeric"); + + b.Property("Terms") + .HasColumnType("text"); + + b.Property("TsBop") + .HasColumnType("text"); + + b.Property("WardNumber") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("DomesticRatingCards"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ImageData", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ImageBase64") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.ToTable("ImageData"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionBuilding", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AgeYears") + .HasColumnType("text"); + + b.Property("BathroomToilet") + .HasColumnType("text"); + + b.Property("BathroomToiletDoorsFittings") + .HasColumnType("text"); + + b.Property("BuildingCategory") + .HasColumnType("text"); + + b.Property("BuildingClass") + .HasColumnType("text"); + + b.Property("BuildingConditions") + .HasColumnType("text"); + + b.Property("BuildingId") + .HasColumnType("text"); + + b.Property("BuildingName") + .HasColumnType("text"); + + b.Property("Ceiling") + .HasColumnType("text"); + + b.Property("Condition") + .HasColumnType("text"); + + b.Property("Conveniences") + .HasColumnType("text"); + + b.Property("Design") + .HasColumnType("text"); + + b.Property("DetailOfBuilding") + .HasColumnType("text"); + + b.Property("Door") + .HasColumnType("text"); + + b.Property("ExpectedLifePeriodYears") + .HasColumnType("text"); + + b.Property("FloorFinisher") + .HasColumnType("text"); + + b.Property("FloorStructure") + .HasColumnType("text"); + + b.Property("FoundationStructure") + .HasColumnType("text"); + + b.Property("HandRail") + .HasColumnType("text"); + + b.Property("InspectionReportId") + .HasColumnType("integer"); + + b.Property("NatureOfConstruction") + .HasColumnType("text"); + + b.Property("NoOfFloorsAboveGround") + .HasColumnType("text") + .HasColumnName("NoOfFloorsAboveGround"); + + b.Property("NoOfFloorsBelowGround") + .HasColumnType("text") + .HasColumnName("NoOfFloorsBelowGround"); + + b.Property("OtherDoors") + .HasColumnType("text"); + + b.Property("PantryCupboard") + .HasColumnType("text"); + + b.Property("ParkingSpace") + .HasColumnType("text"); + + b.Property("RoofFinisher") + .HasColumnType("text"); + + b.Property("RoofFrame") + .HasColumnType("text"); + + b.Property("RoofMaterial") + .HasColumnType("text"); + + b.Property("Services") + .HasColumnType("text"); + + b.Property("Structure") + .HasColumnType("text"); + + b.Property("WallFinisher") + .HasColumnType("text"); + + b.Property("WallStructure") + .HasColumnType("text"); + + b.Property("Window") + .HasColumnType("text"); + + b.Property("WindowProtection") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("InspectionReportId"); + + b.ToTable("InspectionBuildings"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.Property("InspectionReportId") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("InspectionReportId")); + + b.Property("DetailsOfAssestsInventoryItems") + .HasColumnType("text") + .HasColumnName("DetailsOfAssestsInventoryItems"); + + b.Property("DetailsOfBusiness") + .HasColumnType("text"); + + b.Property("District") + .HasColumnType("text"); + + b.Property("DsDivision") + .HasColumnType("text"); + + b.Property("GnDivision") + .HasColumnType("text"); + + b.Property("InspectionDate") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionDetails") + .HasColumnType("text"); + + b.Property("OtherInformation") + .HasColumnType("text"); + + b.Property("Province") + .HasColumnType("text"); + + b.Property("Remark") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("InspectionReportId"); + + b.HasIndex("ReportId"); + + b.ToTable("InspectionReports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMBuildingRates", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNumber") + .HasColumnType("text"); + + b.Property("ConstructedBy") + .HasColumnType("text"); + + b.Property("Cost") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("FloorArea") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerSQFT") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("YearOfConstruction") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMBuildingRates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMPastValuation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("DateOfValuation") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FileNo_GnDivision") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanOfParticulars") + .HasColumnType("text"); + + b.Property("PurposeOfValuation") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMPastValuations"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMRentalEvidence", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNo") + .HasColumnType("text"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("FloorRate") + .HasColumnType("text"); + + b.Property("HeadOfTerms") + .HasColumnType("text"); + + b.Property("LandMiscellaneousMasterFileId") + .HasColumnType("integer"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePer") + .HasColumnType("text"); + + b.Property("RatePerMonth") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("LandMiscellaneousMasterFileId") + .HasDatabaseName("IX_LMRentalEvidence_LandMiscellaneousMasterFileId"); + + b.HasIndex("ReportId"); + + b.ToTable("LMRentalEvidences"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMSalesEvidence", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNumber") + .HasColumnType("text"); + + b.Property("Consideration") + .HasColumnType("text"); + + b.Property("DeedAttestedNumber") + .HasColumnType("text"); + + b.Property("DeedNumber") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("LandRegistryReferences") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("LotNumber") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("NotaryName") + .HasColumnType("text"); + + b.Property("PlanDate") + .HasColumnType("text"); + + b.Property("PlanNumber") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Road") + .HasColumnType("text"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("Vendor") + .HasColumnType("text"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMSalesEvidences"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LandMiscellaneousMasterFile", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Lots") + .HasColumnType("integer"); + + b.Property("MasterFileNo") + .HasColumnType("integer"); + + b.Property("MasterFileRefNo") + .HasColumnType("text"); + + b.Property("PlanNo") + .HasColumnType("text"); + + b.Property("PlanType") + .HasColumnType("text"); + + b.Property("RequestingAuthorityReferenceNo") + .HasColumnType("text"); + + b.Property("Status") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("LandMiscellaneousMasterFiles"); + }); + + modelBuilder.Entity("ValuationBackend.Models.MasterDataItem", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Category") + .IsRequired() + .HasColumnType("text"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("MasterDataItems"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfValuation") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FileNoGNDivision") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanOfParticulars") + .HasColumnType("text"); + + b.Property("PurposeOfValuation") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("PastValuationsLA"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PropertyCategory", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Name") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("PropertyCategories"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RatingRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("LocalAuthority") + .IsRequired() + .HasColumnType("text"); + + b.Property("RatingReferenceNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("RequestType") + .IsRequired() + .HasColumnType("text"); + + b.Property("Status") + .IsRequired() + .HasColumnType("text"); + + b.Property("YearOfRevision") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.ToTable("RatingRequests"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Reconciliation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("NewNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("ObsoleteNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("StreetName") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("Reconciliations"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNo") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("FloorRateSQFT") + .HasColumnType("text"); + + b.Property("HeadOfTerms") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerMonth") + .HasColumnType("text"); + + b.Property("RatePerSqft") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("RentalEvidencesLA", (string)null); + }); + + modelBuilder.Entity("ValuationBackend.Models.Report", b => + { + b.Property("ReportId") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("ReportId")); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportType") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Timestamp") + .HasColumnType("timestamp with time zone"); + + b.HasKey("ReportId"); + + b.ToTable("Reports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Request", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("LocalAuthority") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RatingReferenceNo") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RequestTypeId") + .HasColumnType("integer"); + + b.Property("Status") + .HasColumnType("boolean"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("YearOfRevision") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("RequestTypeId"); + + b.ToTable("Requests"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RequestType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Code") + .IsRequired() + .HasMaxLength(2) + .HasColumnType("character varying(2)"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("RequestTypes"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNumber") + .HasColumnType("text"); + + b.Property("Consideration") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DeedAttestedNumber") + .HasColumnType("text"); + + b.Property("DeedNumber") + .HasColumnType("text"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FloorRate") + .HasColumnType("text"); + + b.Property("LandRegistryReferences") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("LotNumber") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("NotaryName") + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("PlanDate") + .HasColumnType("text"); + + b.Property("PlanNumber") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Road") + .HasColumnType("text"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Vendor") + .HasColumnType("text"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("SalesEvidencesLA", (string)null); + }); + + modelBuilder.Entity("ValuationBackend.Models.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssignedDivision") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpEmail") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpId") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpName") + .IsRequired() + .HasColumnType("text"); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("bytea"); + + b.Property("PasswordSalt") + .IsRequired() + .HasColumnType("bytea"); + + b.Property("Position") + .IsRequired() + .HasColumnType("text"); + + b.Property("ProfilePicture") + .HasColumnType("bytea"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("ValuationBackend.Models.UserTask", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssignedDate") + .HasColumnType("timestamp with time zone"); + + b.Property("IsCompleted") + .HasColumnType("boolean"); + + b.Property("LandAcquisitionId") + .HasColumnType("integer"); + + b.Property("LandMiscellaneousId") + .HasColumnType("integer"); + + b.Property("ReferenceNumber") + .HasColumnType("text"); + + b.Property("RequestId") + .HasColumnType("integer"); + + b.Property("TaskType") + .IsRequired() + .HasColumnType("text"); + + b.Property("UserId") + .HasColumnType("integer"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.Property("WorkItemDescription") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("UserId"); + + b.ToTable("UserTasks"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Asset", b => + { + b.HasOne("ValuationBackend.Models.Request", "Request") + .WithMany() + .HasForeignKey("RequestId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Request"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetDivision", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.DomesticRatingCard", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionBuilding", b => + { + b.HasOne("ValuationBackend.Models.InspectionReport", "InspectionReport") + .WithMany("Buildings") + .HasForeignKey("InspectionReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("InspectionReport"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMBuildingRates", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMPastValuation", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMRentalEvidence", b => + { + b.HasOne("ValuationBackend.Models.LandMiscellaneousMasterFile", "LandMiscellaneousMasterFile") + .WithMany("RentalEvidences") + .HasForeignKey("LandMiscellaneousMasterFileId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("LandMiscellaneousMasterFile"); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMSalesEvidence", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Reconciliation", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Request", b => + { + b.HasOne("ValuationBackend.Models.RequestType", "RequestType") + .WithMany() + .HasForeignKey("RequestTypeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("RequestType"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.UserTask", b => + { + b.HasOne("ValuationBackend.Models.User", "User") + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("User"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.Navigation("Buildings"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LandMiscellaneousMasterFile", b => + { + b.Navigation("RentalEvidences"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/Migrations/20250722032612_AddLandMiscellaneousMasterFileIdToLMRentalEvidence.cs b/Migrations/20250722032612_AddLandMiscellaneousMasterFileIdToLMRentalEvidence.cs new file mode 100644 index 0000000..3767ed2 --- /dev/null +++ b/Migrations/20250722032612_AddLandMiscellaneousMasterFileIdToLMRentalEvidence.cs @@ -0,0 +1,49 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace ValuationBackend.Migrations +{ + /// + public partial class AddLandMiscellaneousMasterFileIdToLMRentalEvidence : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.AddColumn( + name: "LandMiscellaneousMasterFileId", + table: "LMRentalEvidences", + type: "integer", + nullable: true); + + migrationBuilder.CreateIndex( + name: "IX_LMRentalEvidence_LandMiscellaneousMasterFileId", + table: "LMRentalEvidences", + column: "LandMiscellaneousMasterFileId"); + + migrationBuilder.AddForeignKey( + name: "FK_LMRentalEvidences_LandMiscellaneousMasterFiles_LandMiscella~", + table: "LMRentalEvidences", + column: "LandMiscellaneousMasterFileId", + principalTable: "LandMiscellaneousMasterFiles", + principalColumn: "Id", + onDelete: ReferentialAction.SetNull); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropForeignKey( + name: "FK_LMRentalEvidences_LandMiscellaneousMasterFiles_LandMiscella~", + table: "LMRentalEvidences"); + + migrationBuilder.DropIndex( + name: "IX_LMRentalEvidence_LandMiscellaneousMasterFileId", + table: "LMRentalEvidences"); + + migrationBuilder.DropColumn( + name: "LandMiscellaneousMasterFileId", + table: "LMRentalEvidences"); + } + } +} diff --git a/Migrations/AppDbContextModelSnapshot.cs b/Migrations/AppDbContextModelSnapshot.cs index 41fc14b..8a0cdd9 100644 --- a/Migrations/AppDbContextModelSnapshot.cs +++ b/Migrations/AppDbContextModelSnapshot.cs @@ -835,6 +835,9 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("HeadOfTerms") .HasColumnType("text"); + b.Property("LandMiscellaneousMasterFileId") + .HasColumnType("integer"); + b.Property("LocationLatitude") .HasColumnType("text"); @@ -868,6 +871,9 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.HasKey("Id"); + b.HasIndex("LandMiscellaneousMasterFileId") + .HasDatabaseName("IX_LMRentalEvidence_LandMiscellaneousMasterFileId"); + b.HasIndex("ReportId"); b.ToTable("LMRentalEvidences"); @@ -1617,12 +1623,19 @@ protected override void BuildModel(ModelBuilder modelBuilder) modelBuilder.Entity("ValuationBackend.Models.LMRentalEvidence", b => { + b.HasOne("ValuationBackend.Models.LandMiscellaneousMasterFile", "LandMiscellaneousMasterFile") + .WithMany("RentalEvidences") + .HasForeignKey("LandMiscellaneousMasterFileId") + .OnDelete(DeleteBehavior.SetNull); + b.HasOne("ValuationBackend.Models.Report", "Report") .WithMany() .HasForeignKey("ReportId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); + b.Navigation("LandMiscellaneousMasterFile"); + b.Navigation("Report"); }); @@ -1707,6 +1720,11 @@ protected override void BuildModel(ModelBuilder modelBuilder) { b.Navigation("Buildings"); }); + + modelBuilder.Entity("ValuationBackend.Models.LandMiscellaneousMasterFile", b => + { + b.Navigation("RentalEvidences"); + }); #pragma warning restore 612, 618 } } diff --git a/Models/DTOs/LMRentalEvidenceDtos.cs b/Models/DTOs/LMRentalEvidenceDtos.cs index 8c1ad4d..7255af6 100644 --- a/Models/DTOs/LMRentalEvidenceDtos.cs +++ b/Models/DTOs/LMRentalEvidenceDtos.cs @@ -6,6 +6,10 @@ public class LMRentalEvidenceCreateDto { [Required] public string MasterFileRefNo { get; set; } + + // NEW: Optional foreign key to LandMiscellaneousMasterFile + public int? LandMiscellaneousMasterFileId { get; set; } + public string? AssessmentNo { get; set; } public string? Owner { get; set; } public string? Occupier { get; set; } @@ -26,6 +30,10 @@ public class LMRentalEvidenceUpdateDto public int ReportId { get; set; } [Required] public string MasterFileRefNo { get; set; } + + // NEW: Optional foreign key to LandMiscellaneousMasterFile + public int? LandMiscellaneousMasterFileId { get; set; } + public string? AssessmentNo { get; set; } public string? Owner { get; set; } public string? Occupier { get; set; } @@ -45,6 +53,13 @@ public class LMRentalEvidenceResponseDto public int Id { get; set; } public int ReportId { get; set; } public string MasterFileRefNo { get; set; } + + // NEW: Foreign key to LandMiscellaneousMasterFile + public int? LandMiscellaneousMasterFileId { get; set; } + + // NEW: Navigation property for related master file data + public LandMiscellaneousMasterFileDto? LandMiscellaneousMasterFile { get; set; } + public string? AssessmentNo { get; set; } public string? Owner { get; set; } public string? Occupier { get; set; } @@ -58,4 +73,17 @@ public class LMRentalEvidenceResponseDto public string? Situation { get; set; } public string? Remarks { get; set; } } + + // NEW: DTO for LandMiscellaneousMasterFile navigation property + public class LandMiscellaneousMasterFileDto + { + public int Id { get; set; } + public int MasterFileNo { get; set; } + public string? MasterFileRefNo { get; set; } + public string? PlanType { get; set; } + public string? PlanNo { get; set; } + public string? RequestingAuthorityReferenceNo { get; set; } + public string? Status { get; set; } + public int Lots { get; set; } + } } diff --git a/Models/LMRentalEvidence.cs b/Models/LMRentalEvidence.cs index d740a00..dec6747 100644 --- a/Models/LMRentalEvidence.cs +++ b/Models/LMRentalEvidence.cs @@ -14,10 +14,16 @@ public class LMRentalEvidence public int ReportId { get; set; } [ForeignKey("ReportId")] - public virtual Report Report { get; set; } + public virtual required Report Report { get; set; } [Required] - public string MasterFileRefNo { get; set; } + public required string MasterFileRefNo { get; set; } + + // NEW: Add foreign key to LandMiscellaneousMasterFile + public int? LandMiscellaneousMasterFileId { get; set; } + + [ForeignKey("LandMiscellaneousMasterFileId")] + public virtual LandMiscellaneousMasterFile? LandMiscellaneousMasterFile { get; set; } public string? AssessmentNo { get; set; } public string? Owner { get; set; } diff --git a/SORTING_API_DOCUMENTATION.md b/SORTING_API_DOCUMENTATION.md deleted file mode 100644 index 00608ea..0000000 --- a/SORTING_API_DOCUMENTATION.md +++ /dev/null @@ -1,85 +0,0 @@ -# Land Miscellaneous API - Sorting Documentation - -## Overview - -The Land Miscellaneous API endpoints now support sorting functionality. All sorting is performed in ascending order. - -## Available Endpoints with Sorting - -### 1. Get All Records with Sorting - -``` -GET /api/landmiscellaneous/all?sortBy={field} -``` - -### 2. Get Paginated Records with Sorting - -``` -GET /api/landmiscellaneous/paginated?pageNumber={number}&pageSize={size}&sortBy={field} -``` - -### 3. Search Records with Sorting - -``` -GET /api/landmiscellaneous/search?searchTerm={term}&pageNumber={number}&pageSize={size}&sortBy={field} -``` - -## Sortable Fields - -| Field Name | API Parameter | Description | -| --------------------------------- | -------------------------------- | --------------------------------------- | -| ID | `id` | Primary key | -| Master File No | `masterfileno` | Master file number | -| Plan Type | `plantype` | Type of plan (PP, Cadaster, FVP, etc.) | -| Plan No | `planno` | Plan number | -| Requesting Authority Reference No | `requestingauthorityreferenceno` | Reference number | -| Status | `status` | Current status (Success, Pending, etc.) | - -## Sort Direction - -All sorting is performed in **ascending order only**. - -## Examples - -### Sort by Master File Number - -``` -GET /api/landmiscellaneous/paginated?sortBy=masterfileno -``` - -### Sort by Status - -``` -GET /api/landmiscellaneous/all?sortBy=status -``` - -### Search with Sorting by Plan Type - -``` -GET /api/landmiscellaneous/search?searchTerm=PP&sortBy=plantype&pageNumber=1&pageSize=10 -``` - -## Default Behavior - -- If no `sortBy` parameter is provided, records are sorted by `Id` in ascending order -- If an invalid `sortBy` field is provided, it defaults to sorting by `Id` -- All sorting is performed in ascending order only - -## Response Format - -All responses include the sorting parameter in the response: - -```json -{ - "Records": [...], - "TotalCount": 100, - "PageNumber": 1, - "PageSize": 10, - "TotalPages": 10, - "SortBy": "masterfileno" -} -``` - -## Backward Compatibility - -All existing API calls will continue to work without any changes. The sorting parameter is optional and has sensible defaults. diff --git a/repositories/ILMRentalEvidenceRepository.cs b/repositories/ILMRentalEvidenceRepository.cs index 26e5bdd..077f2ae 100644 --- a/repositories/ILMRentalEvidenceRepository.cs +++ b/repositories/ILMRentalEvidenceRepository.cs @@ -9,6 +9,13 @@ public interface ILMRentalEvidenceRepository Task> GetAllAsync(); Task GetByIdAsync(int id); Task GetByReportIdAsync(int reportId); + + // NEW: Methods for foreign key relationship + Task> GetByMasterFileIdAsync(int masterFileId); + Task> GetByMasterFileRefNoAsync(string masterFileRefNo); + Task> GetAllWithMasterFileDataAsync(); + Task GetMasterFileByRefNoAsync(string refNo); + Task CreateReportAsync(Report report); Task CreateAsync(LMRentalEvidence lmRentalEvidence); Task UpdateAsync(LMRentalEvidence lmRentalEvidence); diff --git a/repositories/ILandMiscellaneousRepository.cs b/repositories/ILandMiscellaneousRepository.cs index 64733e7..8c81de6 100644 --- a/repositories/ILandMiscellaneousRepository.cs +++ b/repositories/ILandMiscellaneousRepository.cs @@ -13,5 +13,8 @@ public interface ILandMiscellaneousRepository Task> SearchAsync(string searchTerm, int pageNumber, int pageSize, string sortBy = "", int? assignedToUserId = null); Task GetSearchCountAsync(string searchTerm, int? assignedToUserId = null); + + // NEW: Method for foreign key support + Task GetByRefNoAsync(string refNo); } } diff --git a/repositories/LMRentalEvidenceRepository.cs b/repositories/LMRentalEvidenceRepository.cs index 5e97dba..e33c529 100644 --- a/repositories/LMRentalEvidenceRepository.cs +++ b/repositories/LMRentalEvidenceRepository.cs @@ -33,6 +33,36 @@ public async Task GetByReportIdAsync(int reportId) .FirstOrDefaultAsync(re => re.ReportId == reportId); } + // NEW: Methods for foreign key relationship + public async Task> GetByMasterFileIdAsync(int masterFileId) + { + return await _context.LMRentalEvidences + .Include(e => e.LandMiscellaneousMasterFile) + .Where(e => e.LandMiscellaneousMasterFileId == masterFileId) + .ToListAsync(); + } + + public async Task> GetByMasterFileRefNoAsync(string masterFileRefNo) + { + return await _context.LMRentalEvidences + .Include(e => e.LandMiscellaneousMasterFile) + .Where(e => e.MasterFileRefNo == masterFileRefNo) + .ToListAsync(); + } + + public async Task> GetAllWithMasterFileDataAsync() + { + return await _context.LMRentalEvidences + .Include(e => e.LandMiscellaneousMasterFile) + .ToListAsync(); + } + + public async Task GetMasterFileByRefNoAsync(string refNo) + { + return await _context.LandMiscellaneousMasterFiles + .FirstOrDefaultAsync(m => m.MasterFileRefNo == refNo); + } + public async Task CreateReportAsync(Report report) { report.Timestamp = DateTime.UtcNow; diff --git a/repositories/LandMiscellaneousRepository.cs b/repositories/LandMiscellaneousRepository.cs index ffda89b..f199b06 100644 --- a/repositories/LandMiscellaneousRepository.cs +++ b/repositories/LandMiscellaneousRepository.cs @@ -150,5 +150,12 @@ public async Task GetSearchCountAsync(string searchTerm, int? assignedToUse return await query.CountAsync(); } + + // NEW: Method for foreign key support + public async Task GetByRefNoAsync(string refNo) + { + return await _context.LandMiscellaneousMasterFiles + .FirstOrDefaultAsync(m => m.MasterFileRefNo == refNo); + } } } diff --git a/services/ILMRentalEvidenceService.cs b/services/ILMRentalEvidenceService.cs index 480fb4e..c83a7da 100644 --- a/services/ILMRentalEvidenceService.cs +++ b/services/ILMRentalEvidenceService.cs @@ -7,8 +7,14 @@ namespace ValuationBackend.Services public interface ILMRentalEvidenceService { Task> GetAllAsync(); - Task GetByIdAsync(int id); - Task GetByReportIdAsync(int reportId); + Task GetByIdAsync(int id); + Task GetByReportIdAsync(int reportId); + + // NEW: Methods for foreign key relationship + Task> GetByMasterFileIdAsync(int masterFileId); + Task> GetByMasterFileRefNoAsync(string masterFileRefNo); + Task> GetAllWithMasterFileDataAsync(); + Task CreateAsync(LMRentalEvidenceCreateDto dto); Task UpdateAsync(int reportId, LMRentalEvidenceUpdateDto dto); Task DeleteAsync(int id); diff --git a/services/LMRentalEvidenceService.cs b/services/LMRentalEvidenceService.cs index 95813dc..9530339 100644 --- a/services/LMRentalEvidenceService.cs +++ b/services/LMRentalEvidenceService.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; +using Microsoft.EntityFrameworkCore; using ValuationBackend.Models; using ValuationBackend.Models.DTOs; using ValuationBackend.Repositories; @@ -11,10 +12,12 @@ namespace ValuationBackend.Services public class LMRentalEvidenceService : ILMRentalEvidenceService { private readonly ILMRentalEvidenceRepository _repository; + private readonly ILandMiscellaneousRepository _masterFileRepository; - public LMRentalEvidenceService(ILMRentalEvidenceRepository repository) + public LMRentalEvidenceService(ILMRentalEvidenceRepository repository, ILandMiscellaneousRepository masterFileRepository) { _repository = repository; + _masterFileRepository = masterFileRepository; } public async Task> GetAllAsync() @@ -23,18 +26,37 @@ public async Task> GetAllAsync() return lmRentalEvidences.Select(MapToResponseDto).ToList(); } - public async Task GetByIdAsync(int id) + public async Task GetByIdAsync(int id) { var lmRentalEvidence = await _repository.GetByIdAsync(id); return lmRentalEvidence == null ? null : MapToResponseDto(lmRentalEvidence); } - public async Task GetByReportIdAsync(int reportId) + public async Task GetByReportIdAsync(int reportId) { var lmRentalEvidence = await _repository.GetByReportIdAsync(reportId); return lmRentalEvidence == null ? null : MapToResponseDto(lmRentalEvidence); } + // NEW: Methods for foreign key relationship + public async Task> GetByMasterFileIdAsync(int masterFileId) + { + var evidences = await _repository.GetByMasterFileIdAsync(masterFileId); + return evidences.Select(MapToResponseDto).ToList(); + } + + public async Task> GetByMasterFileRefNoAsync(string masterFileRefNo) + { + var evidences = await _repository.GetByMasterFileRefNoAsync(masterFileRefNo); + return evidences.Select(MapToResponseDto).ToList(); + } + + public async Task> GetAllWithMasterFileDataAsync() + { + var evidences = await _repository.GetAllWithMasterFileDataAsync(); + return evidences.Select(MapToResponseDto).ToList(); + } + public async Task CreateAsync(LMRentalEvidenceCreateDto dto) { // Create a new Report for this LM rental evidence @@ -48,11 +70,12 @@ public async Task CreateAsync(LMRentalEvidenceCreat // Add the report first report = await _repository.CreateReportAsync(report); - // Create the LM rental evidence entity from the DTO - var lmRentalEvidence = new LMRentalEvidence + var entity = new LMRentalEvidence { ReportId = report.ReportId, + Report = report, MasterFileRefNo = dto.MasterFileRefNo, + LandMiscellaneousMasterFileId = dto.LandMiscellaneousMasterFileId, AssessmentNo = dto.AssessmentNo, Owner = dto.Owner, Occupier = dto.Occupier, @@ -67,8 +90,18 @@ public async Task CreateAsync(LMRentalEvidenceCreat Remarks = dto.Remarks }; - lmRentalEvidence = await _repository.CreateAsync(lmRentalEvidence); - return MapToResponseDto(lmRentalEvidence); + // Auto-populate foreign key if not provided but string reference exists + if (!entity.LandMiscellaneousMasterFileId.HasValue && !string.IsNullOrEmpty(entity.MasterFileRefNo)) + { + var masterFile = await _masterFileRepository.GetByRefNoAsync(entity.MasterFileRefNo); + if (masterFile != null) + { + entity.LandMiscellaneousMasterFileId = masterFile.Id; + } + } + + var createdEntity = await _repository.CreateAsync(entity); + return MapToResponseDto(createdEntity); } public async Task UpdateAsync(int reportId, LMRentalEvidenceUpdateDto dto) @@ -83,6 +116,7 @@ public async Task UpdateAsync(int reportId, LMRentalEvidenceUpdateDto dto) // Update existing LM rental evidence with data from DTO existingLMRentalEvidence.MasterFileRefNo = dto.MasterFileRefNo; + existingLMRentalEvidence.LandMiscellaneousMasterFileId = dto.LandMiscellaneousMasterFileId; existingLMRentalEvidence.AssessmentNo = dto.AssessmentNo; existingLMRentalEvidence.Owner = dto.Owner; existingLMRentalEvidence.Occupier = dto.Occupier; @@ -96,6 +130,16 @@ public async Task UpdateAsync(int reportId, LMRentalEvidenceUpdateDto dto) existingLMRentalEvidence.Situation = dto.Situation; existingLMRentalEvidence.Remarks = dto.Remarks; + // Auto-populate foreign key if not provided but string reference exists + if (!existingLMRentalEvidence.LandMiscellaneousMasterFileId.HasValue && !string.IsNullOrEmpty(existingLMRentalEvidence.MasterFileRefNo)) + { + var masterFile = await _masterFileRepository.GetByRefNoAsync(existingLMRentalEvidence.MasterFileRefNo); + if (masterFile != null) + { + existingLMRentalEvidence.LandMiscellaneousMasterFileId = masterFile.Id; + } + } + return await _repository.UpdateAsync(existingLMRentalEvidence); } @@ -111,6 +155,8 @@ private LMRentalEvidenceResponseDto MapToResponseDto(LMRentalEvidence lmRentalEv Id = lmRentalEvidence.Id, ReportId = lmRentalEvidence.ReportId, MasterFileRefNo = lmRentalEvidence.MasterFileRefNo, + LandMiscellaneousMasterFileId = lmRentalEvidence.LandMiscellaneousMasterFileId, + LandMiscellaneousMasterFile = lmRentalEvidence.LandMiscellaneousMasterFile != null ? MapMasterFileToDto(lmRentalEvidence.LandMiscellaneousMasterFile) : null, AssessmentNo = lmRentalEvidence.AssessmentNo, Owner = lmRentalEvidence.Owner, Occupier = lmRentalEvidence.Occupier, @@ -125,5 +171,20 @@ private LMRentalEvidenceResponseDto MapToResponseDto(LMRentalEvidence lmRentalEv Remarks = lmRentalEvidence.Remarks }; } + + private LandMiscellaneousMasterFileDto MapMasterFileToDto(LandMiscellaneousMasterFile masterFile) + { + return new LandMiscellaneousMasterFileDto + { + Id = masterFile.Id, + MasterFileNo = masterFile.MasterFileNo, + MasterFileRefNo = masterFile.MasterFileRefNo, + PlanType = masterFile.PlanType, + PlanNo = masterFile.PlanNo, + RequestingAuthorityReferenceNo = masterFile.RequestingAuthorityReferenceNo, + Status = masterFile.Status, + Lots = masterFile.Lots + }; + } } } From 8114ca2b0e5c2786f45d28b5bb418ae02ddf4d26 Mon Sep 17 00:00:00 2001 From: VishwaJaya01 Date: Tue, 22 Jul 2025 18:26:25 +0530 Subject: [PATCH 09/21] Enhance email formatting for password reset OTP notification --- services/EmailSender.cs | 2 +- services/PasswordResetService.cs | 24 +++++++++++++++++++++++- 2 files changed, 24 insertions(+), 2 deletions(-) diff --git a/services/EmailSender.cs b/services/EmailSender.cs index d46390e..3a5326d 100644 --- a/services/EmailSender.cs +++ b/services/EmailSender.cs @@ -25,7 +25,7 @@ public async Task SendAsync(string to, string subject, string body) From = new MailAddress(gmailAddress, "Valuation Department"), Subject = subject, Body = body, - IsBodyHtml = false, + IsBodyHtml = true, // Enable HTML }; mailMessage.To.Add(to); diff --git a/services/PasswordResetService.cs b/services/PasswordResetService.cs index bb3c227..d81fbf0 100644 --- a/services/PasswordResetService.cs +++ b/services/PasswordResetService.cs @@ -37,7 +37,29 @@ public async Task RequestPasswordResetAsync(string email) _context.PasswordResets.Add(reset); await _context.SaveChangesAsync(); - var body = $"Your OTP is: {otp}\nThis OTP will expire in 10 minutes."; + var body = $@" + + + Password Reset OTP + + +
+
+

Password Reset Request

+

We received a request to reset your password for your Valuation Department account.

+
+ Your One-Time Password (OTP):
+ {otp} +
This OTP will expire in 10 minutes.
+
+ Reset Password +

If you did not request a password reset, you can safely ignore this email. Someone else might have typed your email address by mistake.

+
+
Valuation Department • This is an automated message, please do not reply.
+
+
+ +"; await _emailSender.SendAsync(email, "Your OTP Code", body); } From 0ec34edf29ef88e1aefae1a401d5180fbfb7725b Mon Sep 17 00:00:00 2001 From: JalinaH Date: Tue, 22 Jul 2025 19:40:23 +0530 Subject: [PATCH 10/21] feat: Add LALots table and related functionality - Created migration for LALots table with foreign key to LandAquisitionMasterFiles. - Updated AppDbContextModelSnapshot to include LALots entity. - Added DTOs for LALot creation, update, and response. - Implemented LALot model with necessary properties and relationships. - Created AutoMapper profile for LALot mapping. - Defined ILALotRepository interface and implemented LALotRepository class. - Developed ILALotService interface and LALotService class for business logic. - Added methods for CRUD operations and validation in the service and repository layers. --- Controllers/LALotController.cs | 102 + Data/AppDbContext.cs | 2 + Extensions/RepositoryExtensions.cs | 1 + Extensions/ServiceExtensions.cs | 1 + ...250722140643_CreateLALotsTable.Designer.cs | 1995 +++++++++++++++++ .../20250722140643_CreateLALotsTable.cs | 50 + Migrations/AppDbContextModelSnapshot.cs | 67 + Models/DTOs/LALotDtos.cs | 36 + Models/LALot.cs | 27 + Profiles/LALotProfile.cs | 30 + repositories/ILALotRepository.cs | 18 + repositories/LALotRepository.cs | 93 + services/ILALotService.cs | 16 + services/LALotService.cs | 90 + 14 files changed, 2528 insertions(+) create mode 100644 Controllers/LALotController.cs create mode 100644 Migrations/20250722140643_CreateLALotsTable.Designer.cs create mode 100644 Migrations/20250722140643_CreateLALotsTable.cs create mode 100644 Models/DTOs/LALotDtos.cs create mode 100644 Models/LALot.cs create mode 100644 Profiles/LALotProfile.cs create mode 100644 repositories/ILALotRepository.cs create mode 100644 repositories/LALotRepository.cs create mode 100644 services/ILALotService.cs create mode 100644 services/LALotService.cs diff --git a/Controllers/LALotController.cs b/Controllers/LALotController.cs new file mode 100644 index 0000000..8b74270 --- /dev/null +++ b/Controllers/LALotController.cs @@ -0,0 +1,102 @@ +using Microsoft.AspNetCore.Mvc; +using System.Collections.Generic; +using System.Threading.Tasks; +using ValuationBackend.Models.DTOs; +using ValuationBackend.Services; + +namespace ValuationBackend.Controllers +{ + [Route("api/[controller]")] + [ApiController] + public class LALotController : ControllerBase + { + private readonly ILALotService _laLotService; + + public LALotController(ILALotService laLotService) + { + _laLotService = laLotService; + } + + // GET: api/LALot + [HttpGet] + public async Task>> GetLALots() + { + var lots = await _laLotService.GetAllAsync(); + return Ok(lots); + } + + // GET: api/LALot/5 + [HttpGet("{id}")] + public async Task> GetLALot(int id) + { + var laLot = await _laLotService.GetByIdAsync(id); + + if (laLot == null) + { + return NotFound($"LALot with ID {id} not found."); + } + + return Ok(laLot); + } + + // GET: api/LALot/masterfile/5 + [HttpGet("masterfile/{masterFileId}")] + public async Task>> GetLALotsByMasterFileId(int masterFileId) + { + var lots = await _laLotService.GetByMasterFileIdAsync(masterFileId); + return Ok(lots); + } + + // POST: api/LALot + [HttpPost] + public async Task> CreateLALot(LALotCreateDto dto) + { + try + { + var createdLALot = await _laLotService.CreateAsync(dto); + return CreatedAtAction(nameof(GetLALot), new { id = createdLALot.Id }, createdLALot); + } + catch (ArgumentException ex) + { + return BadRequest(ex.Message); + } + } + + // PUT: api/LALot/5 + [HttpPut("{id}")] + public async Task> UpdateLALot(int id, LALotUpdateDto dto) + { + try + { + var updatedLALot = await _laLotService.UpdateAsync(id, dto); + if (updatedLALot == null) + { + return NotFound($"LALot with ID {id} not found."); + } + + return Ok(updatedLALot); + } + catch (ArgumentException ex) + { + return BadRequest(ex.Message); + } + catch (InvalidOperationException ex) + { + return StatusCode(500, ex.Message); + } + } + + // DELETE: api/LALot/5 + [HttpDelete("{id}")] + public async Task DeleteLALot(int id) + { + var result = await _laLotService.DeleteAsync(id); + if (!result) + { + return NotFound($"LALot with ID {id} not found."); + } + + return NoContent(); + } + } +} diff --git a/Data/AppDbContext.cs b/Data/AppDbContext.cs index 766af6c..4ce3acf 100644 --- a/Data/AppDbContext.cs +++ b/Data/AppDbContext.cs @@ -29,6 +29,8 @@ public AppDbContext(DbContextOptions options) public DbSet LandAquisitionMasterFiles { get; set; } + public DbSet LALots { get; set; } + public DbSet Reports { get; set; } public DbSet InspectionReports { get; set; } diff --git a/Extensions/RepositoryExtensions.cs b/Extensions/RepositoryExtensions.cs index 65b4650..fb89132 100644 --- a/Extensions/RepositoryExtensions.cs +++ b/Extensions/RepositoryExtensions.cs @@ -25,6 +25,7 @@ public static IServiceCollection AddRepositories(this IServiceCollection service services.AddScoped(); services.AddScoped(); services.AddScoped(); + services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); diff --git a/Extensions/ServiceExtensions.cs b/Extensions/ServiceExtensions.cs index 014aa52..cc48525 100644 --- a/Extensions/ServiceExtensions.cs +++ b/Extensions/ServiceExtensions.cs @@ -24,6 +24,7 @@ public static IServiceCollection AddServices(this IServiceCollection services) services.AddScoped(); services.AddScoped(); services.AddScoped(); + services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); diff --git a/Migrations/20250722140643_CreateLALotsTable.Designer.cs b/Migrations/20250722140643_CreateLALotsTable.Designer.cs new file mode 100644 index 0000000..848e9c5 --- /dev/null +++ b/Migrations/20250722140643_CreateLALotsTable.Designer.cs @@ -0,0 +1,1995 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using ValuationBackend.Data; + +#nullable disable + +namespace ValuationBackend.Migrations +{ + [DbContext(typeof(AppDbContext))] + [Migration("20250722140643_CreateLALotsTable")] + partial class CreateLALotsTable + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "9.0.5") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("DecisionField", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Field") + .IsRequired() + .HasColumnType("text"); + + b.Property("FieldDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("FieldSize") + .HasColumnType("integer"); + + b.Property("FieldType") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("DecisionFields"); + }); + + modelBuilder.Entity("LandAquisitionMasterFile", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Lots") + .HasColumnType("integer"); + + b.Property("MasterFileNo") + .HasColumnType("integer"); + + b.Property("MasterFilesRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanType") + .IsRequired() + .HasColumnType("text"); + + b.Property("RequestingAuthorityReferenceNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Status") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("LandAquisitionMasterFiles"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Asset", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNo") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasColumnType("integer"); + + b.Property("IsRatingCard") + .HasColumnType("boolean"); + + b.Property("Owner") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("RdSt") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("RequestId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Ward") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.HasKey("Id"); + + b.HasIndex("RequestId"); + + b.ToTable("Assets"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetDivision", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Area") + .HasColumnType("numeric"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("LandType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("NewAssetNo") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("AssetDivisions"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetNumberChange", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ChangedDate") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfChange") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasMaxLength(255) + .HasColumnType("character varying(255)"); + + b.Property("FieldSize") + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("FieldType") + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("NewAssetNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("OldAssetNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Reason") + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("AssetNumberChanges"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("ConstructedBy") + .HasColumnType("text"); + + b.Property("Cost") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("FloorAreaSQFT") + .IsRequired() + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("Owner") + .IsRequired() + .HasColumnType("text"); + + b.Property("RatePerSQFT") + .IsRequired() + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("YearOfConstruction") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("BuildingRatesLA"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccessCategory") + .IsRequired() + .HasColumnType("text"); + + b.Property("AccessCategoryDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquiredExtent") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquiringOfficerSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquisitionName") + .IsRequired() + .HasColumnType("text"); + + b.Property("AssessmentNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("AtLotNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("AtPlanNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryBottom") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryEast") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryNorth") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundarySouth") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryWest") + .IsRequired() + .HasColumnType("text"); + + b.Property("BuildingDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("BuildingInfo") + .IsRequired() + .HasColumnType("text"); + + b.Property("ChiefValuerRepresentativeSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfSection3BA") + .IsRequired() + .HasColumnType("text"); + + b.Property("DatePrepared") + .IsRequired() + .HasColumnType("text"); + + b.Property("DepthOfLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("DescriptionOfLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("DetailsOfBusiness") + .IsRequired() + .HasColumnType("text"); + + b.Property("Frontage") + .IsRequired() + .HasColumnType("text"); + + b.Property("GramasewakaSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("LandUseDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("LandUseType") + .IsRequired() + .HasColumnType("text"); + + b.Property("LevelWithAccess") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("NameOfTheLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("NameOfTheVillage") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionsDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionsInfo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlantationDetails") + .IsRequired() + .HasColumnType("text"); + + b.Property("PpCadLotNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("PpCadNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("RoadName") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("ConditionReports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.DomesticRatingCard", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Access") + .HasColumnType("text"); + + b.Property("Age") + .HasColumnType("integer"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("Condition") + .HasColumnType("text"); + + b.Property("Conveniences") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("Floor") + .HasColumnType("text"); + + b.Property("NewNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("Notes") + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .IsRequired() + .HasColumnType("text"); + + b.Property("ParkingSpace") + .HasColumnType("text"); + + b.Property("Plantations") + .HasColumnType("text"); + + b.Property("PropertySubCategory") + .HasColumnType("text"); + + b.Property("PropertyType") + .HasColumnType("text"); + + b.Property("RentPM") + .HasColumnType("numeric"); + + b.Property("RoadName") + .HasColumnType("text"); + + b.Property("SelectWalls") + .HasColumnType("text"); + + b.Property("SuggestedRate") + .HasColumnType("numeric"); + + b.Property("Terms") + .HasColumnType("text"); + + b.Property("TsBop") + .HasColumnType("text"); + + b.Property("WardNumber") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("DomesticRatingCards"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ImageData", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ImageBase64") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.ToTable("ImageData"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionBuilding", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AgeYears") + .HasColumnType("text"); + + b.Property("BathroomToilet") + .HasColumnType("text"); + + b.Property("BathroomToiletDoorsFittings") + .HasColumnType("text"); + + b.Property("BuildingCategory") + .HasColumnType("text"); + + b.Property("BuildingClass") + .HasColumnType("text"); + + b.Property("BuildingConditions") + .HasColumnType("text"); + + b.Property("BuildingId") + .HasColumnType("text"); + + b.Property("BuildingName") + .HasColumnType("text"); + + b.Property("Ceiling") + .HasColumnType("text"); + + b.Property("Condition") + .HasColumnType("text"); + + b.Property("Conveniences") + .HasColumnType("text"); + + b.Property("Design") + .HasColumnType("text"); + + b.Property("DetailOfBuilding") + .HasColumnType("text"); + + b.Property("Door") + .HasColumnType("text"); + + b.Property("ExpectedLifePeriodYears") + .HasColumnType("text"); + + b.Property("FloorFinisher") + .HasColumnType("text"); + + b.Property("FloorStructure") + .HasColumnType("text"); + + b.Property("FoundationStructure") + .HasColumnType("text"); + + b.Property("HandRail") + .HasColumnType("text"); + + b.Property("InspectionReportId") + .HasColumnType("integer"); + + b.Property("NatureOfConstruction") + .HasColumnType("text"); + + b.Property("NoOfFloorsAboveGround") + .HasColumnType("text") + .HasColumnName("NoOfFloorsAboveGround"); + + b.Property("NoOfFloorsBelowGround") + .HasColumnType("text") + .HasColumnName("NoOfFloorsBelowGround"); + + b.Property("OtherDoors") + .HasColumnType("text"); + + b.Property("PantryCupboard") + .HasColumnType("text"); + + b.Property("ParkingSpace") + .HasColumnType("text"); + + b.Property("RoofFinisher") + .HasColumnType("text"); + + b.Property("RoofFrame") + .HasColumnType("text"); + + b.Property("RoofMaterial") + .HasColumnType("text"); + + b.Property("Services") + .HasColumnType("text"); + + b.Property("Structure") + .HasColumnType("text"); + + b.Property("WallFinisher") + .HasColumnType("text"); + + b.Property("WallStructure") + .HasColumnType("text"); + + b.Property("Window") + .HasColumnType("text"); + + b.Property("WindowProtection") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("InspectionReportId"); + + b.ToTable("InspectionBuildings"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.Property("InspectionReportId") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("InspectionReportId")); + + b.Property("DetailsOfAssestsInventoryItems") + .HasColumnType("text") + .HasColumnName("DetailsOfAssestsInventoryItems"); + + b.Property("DetailsOfBusiness") + .HasColumnType("text"); + + b.Property("District") + .HasColumnType("text"); + + b.Property("DsDivision") + .HasColumnType("text"); + + b.Property("GnDivision") + .HasColumnType("text"); + + b.Property("InspectionDate") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionDetails") + .HasColumnType("text"); + + b.Property("OtherInformation") + .HasColumnType("text"); + + b.Property("Province") + .HasColumnType("text"); + + b.Property("Remark") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("InspectionReportId"); + + b.HasIndex("ReportId"); + + b.ToTable("InspectionReports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LALot", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterFileId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("MasterFileId"); + + b.ToTable("LALots"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMBuildingRates", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNumber") + .HasColumnType("text"); + + b.Property("ConstructedBy") + .HasColumnType("text"); + + b.Property("Cost") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("FloorArea") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerSQFT") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("YearOfConstruction") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMBuildingRates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMPastValuation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("DateOfValuation") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FileNo_GnDivision") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanOfParticulars") + .HasColumnType("text"); + + b.Property("PurposeOfValuation") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMPastValuations"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMRentalEvidence", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNo") + .HasColumnType("text"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("FloorRate") + .HasColumnType("text"); + + b.Property("HeadOfTerms") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePer") + .HasColumnType("text"); + + b.Property("RatePerMonth") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMRentalEvidences"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMSalesEvidence", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNumber") + .HasColumnType("text"); + + b.Property("Consideration") + .HasColumnType("text"); + + b.Property("DeedAttestedNumber") + .HasColumnType("text"); + + b.Property("DeedNumber") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("LandRegistryReferences") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("LotNumber") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("NotaryName") + .HasColumnType("text"); + + b.Property("PlanDate") + .HasColumnType("text"); + + b.Property("PlanNumber") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Road") + .HasColumnType("text"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("Vendor") + .HasColumnType("text"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMSalesEvidences"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LandMiscellaneousMasterFile", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Lots") + .HasColumnType("integer"); + + b.Property("MasterFileNo") + .HasColumnType("integer"); + + b.Property("PlanNo") + .HasColumnType("text"); + + b.Property("PlanType") + .HasColumnType("text"); + + b.Property("RequestingAuthorityReferenceNo") + .HasColumnType("text"); + + b.Property("Status") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("LandMiscellaneousMasterFiles"); + }); + + modelBuilder.Entity("ValuationBackend.Models.MasterDataItem", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Category") + .IsRequired() + .HasColumnType("text"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("MasterDataItems"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PasswordReset", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Email") + .IsRequired() + .HasColumnType("text"); + + b.Property("ExpiresAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Otp") + .IsRequired() + .HasColumnType("text"); + + b.Property("Used") + .HasColumnType("boolean"); + + b.HasKey("Id"); + + b.ToTable("PasswordResets"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfValuation") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FileNoGNDivision") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanOfParticulars") + .HasColumnType("text"); + + b.Property("PurposeOfValuation") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("PastValuationsLA"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PropertyCategory", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Name") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("PropertyCategories"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RatingRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("LocalAuthority") + .IsRequired() + .HasColumnType("text"); + + b.Property("RatingReferenceNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("RequestType") + .IsRequired() + .HasColumnType("text"); + + b.Property("Status") + .IsRequired() + .HasColumnType("text"); + + b.Property("YearOfRevision") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.ToTable("RatingRequests"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Reconciliation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("NewNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("ObsoleteNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("StreetName") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("Reconciliations"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNo") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("FloorRateSQFT") + .HasColumnType("text"); + + b.Property("HeadOfTerms") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerMonth") + .HasColumnType("text"); + + b.Property("RatePerSqft") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("RentalEvidencesLA", (string)null); + }); + + modelBuilder.Entity("ValuationBackend.Models.Report", b => + { + b.Property("ReportId") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("ReportId")); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportType") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Timestamp") + .HasColumnType("timestamp with time zone"); + + b.HasKey("ReportId"); + + b.ToTable("Reports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Request", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("LocalAuthority") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RatingReferenceNo") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RequestTypeId") + .HasColumnType("integer"); + + b.Property("Status") + .HasColumnType("boolean"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("YearOfRevision") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("RequestTypeId"); + + b.ToTable("Requests"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RequestType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Code") + .IsRequired() + .HasMaxLength(2) + .HasColumnType("character varying(2)"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("RequestTypes"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNumber") + .HasColumnType("text"); + + b.Property("Consideration") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DeedAttestedNumber") + .HasColumnType("text"); + + b.Property("DeedNumber") + .HasColumnType("text"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FloorRate") + .HasColumnType("text"); + + b.Property("LandRegistryReferences") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("LotNumber") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("NotaryName") + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("PlanDate") + .HasColumnType("text"); + + b.Property("PlanNumber") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Road") + .HasColumnType("text"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Vendor") + .HasColumnType("text"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("SalesEvidencesLA", (string)null); + }); + + modelBuilder.Entity("ValuationBackend.Models.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssignedDivision") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpEmail") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpId") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpName") + .IsRequired() + .HasColumnType("text"); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("bytea"); + + b.Property("PasswordSalt") + .IsRequired() + .HasColumnType("bytea"); + + b.Property("Position") + .IsRequired() + .HasColumnType("text"); + + b.Property("ProfilePicture") + .HasColumnType("bytea"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("ValuationBackend.Models.UserTask", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssignedDate") + .HasColumnType("timestamp with time zone"); + + b.Property("IsCompleted") + .HasColumnType("boolean"); + + b.Property("LandAcquisitionId") + .HasColumnType("integer"); + + b.Property("LandMiscellaneousId") + .HasColumnType("integer"); + + b.Property("ReferenceNumber") + .HasColumnType("text"); + + b.Property("RequestId") + .HasColumnType("integer"); + + b.Property("TaskType") + .IsRequired() + .HasColumnType("text"); + + b.Property("UserId") + .HasColumnType("integer"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.Property("WorkItemDescription") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("UserId"); + + b.ToTable("UserTasks"); + }); + + modelBuilder.Entity("ValuationBackend.Models.iteration2.RatingCards.OfficesRatingCard", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccessType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("Age") + .HasColumnType("integer"); + + b.Property("AssessmentNumber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("BuildingSelection") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CeilingHeight") + .HasColumnType("decimal(18,2)"); + + b.Property("Condition") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Conveniences") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("CreatedBy") + .IsRequired() + .HasColumnType("text"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("FloorNumber") + .HasColumnType("integer"); + + b.Property("FloorType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("LocalAuthority") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("LocalAuthorityCode") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("NewNumber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Notes") + .IsRequired() + .HasMaxLength(2000) + .HasColumnType("character varying(2000)"); + + b.Property("ObsoleteNumber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Occupier") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("OfficeGrade") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("OfficeSuite") + .IsRequired() + .HasMaxLength(1000) + .HasColumnType("character varying(1000)"); + + b.Property("Owner") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("ParkingSpace") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("PropertySubCategory") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("PropertyType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RentPM") + .HasColumnType("decimal(18,2)"); + + b.Property("RoadName") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("SuggestedRate") + .HasColumnType("decimal(18,2)"); + + b.Property("Terms") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("TotalArea") + .HasColumnType("decimal(18,2)"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("UpdatedBy") + .HasColumnType("text"); + + b.Property("UsableFloorArea") + .HasColumnType("decimal(18,2)"); + + b.Property("WallType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("WardNumber") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("OfficesRatingCards"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Asset", b => + { + b.HasOne("ValuationBackend.Models.Request", "Request") + .WithMany() + .HasForeignKey("RequestId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Request"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetDivision", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.DomesticRatingCard", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionBuilding", b => + { + b.HasOne("ValuationBackend.Models.InspectionReport", "InspectionReport") + .WithMany("Buildings") + .HasForeignKey("InspectionReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("InspectionReport"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LALot", b => + { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("MasterFile"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMBuildingRates", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMPastValuation", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMRentalEvidence", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMSalesEvidence", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Reconciliation", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Request", b => + { + b.HasOne("ValuationBackend.Models.RequestType", "RequestType") + .WithMany() + .HasForeignKey("RequestTypeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("RequestType"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.UserTask", b => + { + b.HasOne("ValuationBackend.Models.User", "User") + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("User"); + }); + + modelBuilder.Entity("ValuationBackend.Models.iteration2.RatingCards.OfficesRatingCard", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.Navigation("Buildings"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/Migrations/20250722140643_CreateLALotsTable.cs b/Migrations/20250722140643_CreateLALotsTable.cs new file mode 100644 index 0000000..e7ef445 --- /dev/null +++ b/Migrations/20250722140643_CreateLALotsTable.cs @@ -0,0 +1,50 @@ +using System; +using Microsoft.EntityFrameworkCore.Migrations; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; + +#nullable disable + +namespace ValuationBackend.Migrations +{ + /// + public partial class CreateLALotsTable : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.CreateTable( + name: "LALots", + columns: table => new + { + Id = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + MasterFileId = table.Column(type: "integer", nullable: false), + Coordinates = table.Column(type: "text", nullable: false), + CreatedAt = table.Column(type: "timestamp with time zone", nullable: false), + UpdatedAt = table.Column(type: "timestamp with time zone", nullable: true) + }, + constraints: table => + { + table.PrimaryKey("PK_LALots", x => x.Id); + table.ForeignKey( + name: "FK_LALots_LandAquisitionMasterFiles_MasterFileId", + column: x => x.MasterFileId, + principalTable: "LandAquisitionMasterFiles", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateIndex( + name: "IX_LALots_MasterFileId", + table: "LALots", + column: "MasterFileId"); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable( + name: "LALots"); + } + } +} diff --git a/Migrations/AppDbContextModelSnapshot.cs b/Migrations/AppDbContextModelSnapshot.cs index 3e31145..52fac4e 100644 --- a/Migrations/AppDbContextModelSnapshot.cs +++ b/Migrations/AppDbContextModelSnapshot.cs @@ -22,6 +22,34 @@ protected override void BuildModel(ModelBuilder modelBuilder) NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + modelBuilder.Entity("DecisionField", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Field") + .IsRequired() + .HasColumnType("text"); + + b.Property("FieldDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("FieldSize") + .HasColumnType("integer"); + + b.Property("FieldType") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("DecisionFields"); + }); + modelBuilder.Entity("LandAquisitionMasterFile", b => { b.Property("Id") @@ -714,6 +742,34 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.ToTable("InspectionReports"); }); + modelBuilder.Entity("ValuationBackend.Models.LALot", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterFileId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("MasterFileId"); + + b.ToTable("LALots"); + }); + modelBuilder.Entity("ValuationBackend.Models.LMBuildingRates", b => { b.Property("Id") @@ -1794,6 +1850,17 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Navigation("Report"); }); + modelBuilder.Entity("ValuationBackend.Models.LALot", b => + { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("MasterFile"); + }); + modelBuilder.Entity("ValuationBackend.Models.LMBuildingRates", b => { b.HasOne("ValuationBackend.Models.Report", "Report") diff --git a/Models/DTOs/LALotDtos.cs b/Models/DTOs/LALotDtos.cs new file mode 100644 index 0000000..c9309a0 --- /dev/null +++ b/Models/DTOs/LALotDtos.cs @@ -0,0 +1,36 @@ +using System.ComponentModel.DataAnnotations; + +namespace ValuationBackend.Models.DTOs +{ + public class LALotCreateDto + { + [Required] + public int MasterFileId { get; set; } + + [Required] + [MinLength(1, ErrorMessage = "Coordinates cannot be empty")] + public string Coordinates { get; set; } = string.Empty; + } + + public class LALotUpdateDto + { + [Required] + public int MasterFileId { get; set; } + + [Required] + [MinLength(1, ErrorMessage = "Coordinates cannot be empty")] + public string Coordinates { get; set; } = string.Empty; + } + + public class LALotResponseDto + { + public int Id { get; set; } + public int MasterFileId { get; set; } + public string Coordinates { get; set; } = string.Empty; + public DateTime CreatedAt { get; set; } + public DateTime? UpdatedAt { get; set; } + + // Optional: Include MasterFile details + public string MasterFileRefNo { get; set; } = string.Empty; + } +} diff --git a/Models/LALot.cs b/Models/LALot.cs new file mode 100644 index 0000000..0e50713 --- /dev/null +++ b/Models/LALot.cs @@ -0,0 +1,27 @@ +using System.ComponentModel.DataAnnotations; +using System.ComponentModel.DataAnnotations.Schema; + +namespace ValuationBackend.Models +{ + public class LALot + { + [Key] + [DatabaseGenerated(DatabaseGeneratedOption.Identity)] + public int Id { get; set; } // Primary Key (auto increment) + + // Foreign key to LandAquisitionMasterFile table + [Required] + public int MasterFileId { get; set; } + + [ForeignKey("MasterFileId")] + public virtual LandAquisitionMasterFile MasterFile { get; set; } + + // Map coordinates from frontend (stored as JSON string) + [Required] + public string Coordinates { get; set; } = string.Empty; + + // Optional: Additional metadata + public DateTime CreatedAt { get; set; } = DateTime.UtcNow; + public DateTime? UpdatedAt { get; set; } + } +} diff --git a/Profiles/LALotProfile.cs b/Profiles/LALotProfile.cs new file mode 100644 index 0000000..43b3585 --- /dev/null +++ b/Profiles/LALotProfile.cs @@ -0,0 +1,30 @@ +using AutoMapper; +using ValuationBackend.Models; +using ValuationBackend.Models.DTOs; + +namespace ValuationBackend.Profiles +{ + public class LALotProfile : Profile + { + public LALotProfile() + { + // Entity to DTO + CreateMap() + .ForMember(dest => dest.MasterFileRefNo, opt => opt.MapFrom(src => src.MasterFile.MasterFilesRefNo)); + + // Create DTO to Entity + CreateMap() + .ForMember(dest => dest.Id, opt => opt.Ignore()) + .ForMember(dest => dest.CreatedAt, opt => opt.Ignore()) + .ForMember(dest => dest.UpdatedAt, opt => opt.Ignore()) + .ForMember(dest => dest.MasterFile, opt => opt.Ignore()); + + // Update DTO to Entity + CreateMap() + .ForMember(dest => dest.Id, opt => opt.Ignore()) + .ForMember(dest => dest.CreatedAt, opt => opt.Ignore()) + .ForMember(dest => dest.UpdatedAt, opt => opt.Ignore()) + .ForMember(dest => dest.MasterFile, opt => opt.Ignore()); + } + } +} diff --git a/repositories/ILALotRepository.cs b/repositories/ILALotRepository.cs new file mode 100644 index 0000000..14d8fb8 --- /dev/null +++ b/repositories/ILALotRepository.cs @@ -0,0 +1,18 @@ +using System.Collections.Generic; +using System.Threading.Tasks; +using ValuationBackend.Models; + +namespace ValuationBackend.Repositories +{ + public interface ILALotRepository + { + Task> GetAllAsync(); + Task GetByIdAsync(int id); + Task> GetByMasterFileIdAsync(int masterFileId); + Task CreateAsync(LALot laLot); + Task UpdateAsync(LALot laLot); + Task DeleteAsync(int id); + Task ExistsAsync(int id); + Task MasterFileExistsAsync(int masterFileId); + } +} diff --git a/repositories/LALotRepository.cs b/repositories/LALotRepository.cs new file mode 100644 index 0000000..98fac63 --- /dev/null +++ b/repositories/LALotRepository.cs @@ -0,0 +1,93 @@ +using Microsoft.EntityFrameworkCore; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using ValuationBackend.Data; +using ValuationBackend.Models; + +namespace ValuationBackend.Repositories +{ + public class LALotRepository : ILALotRepository + { + private readonly AppDbContext _context; + + public LALotRepository(AppDbContext context) + { + _context = context; + } + + public async Task> GetAllAsync() + { + return await _context.LALots + .Include(l => l.MasterFile) + .ToListAsync(); + } + + public async Task GetByIdAsync(int id) + { + return await _context.LALots + .Include(l => l.MasterFile) + .FirstOrDefaultAsync(l => l.Id == id); + } + + public async Task> GetByMasterFileIdAsync(int masterFileId) + { + return await _context.LALots + .Include(l => l.MasterFile) + .Where(l => l.MasterFileId == masterFileId) + .ToListAsync(); + } + + public async Task CreateAsync(LALot laLot) + { + laLot.CreatedAt = DateTime.UtcNow; + _context.LALots.Add(laLot); + await _context.SaveChangesAsync(); + + // Load the MasterFile for the response + await _context.Entry(laLot) + .Reference(l => l.MasterFile) + .LoadAsync(); + + return laLot; + } + + public async Task UpdateAsync(LALot laLot) + { + try + { + laLot.UpdatedAt = DateTime.UtcNow; + _context.Entry(laLot).State = EntityState.Modified; + await _context.SaveChangesAsync(); + return true; + } + catch (DbUpdateConcurrencyException) + { + return false; + } + } + + public async Task DeleteAsync(int id) + { + var laLot = await _context.LALots.FindAsync(id); + if (laLot == null) + { + return false; + } + + _context.LALots.Remove(laLot); + await _context.SaveChangesAsync(); + return true; + } + + public async Task ExistsAsync(int id) + { + return await _context.LALots.AnyAsync(l => l.Id == id); + } + + public async Task MasterFileExistsAsync(int masterFileId) + { + return await _context.LandAquisitionMasterFiles.AnyAsync(m => m.Id == masterFileId); + } + } +} diff --git a/services/ILALotService.cs b/services/ILALotService.cs new file mode 100644 index 0000000..4201f0a --- /dev/null +++ b/services/ILALotService.cs @@ -0,0 +1,16 @@ +using System.Collections.Generic; +using System.Threading.Tasks; +using ValuationBackend.Models.DTOs; + +namespace ValuationBackend.Services +{ + public interface ILALotService + { + Task> GetAllAsync(); + Task GetByIdAsync(int id); + Task> GetByMasterFileIdAsync(int masterFileId); + Task CreateAsync(LALotCreateDto dto); + Task UpdateAsync(int id, LALotUpdateDto dto); + Task DeleteAsync(int id); + } +} diff --git a/services/LALotService.cs b/services/LALotService.cs new file mode 100644 index 0000000..a9976a7 --- /dev/null +++ b/services/LALotService.cs @@ -0,0 +1,90 @@ +using AutoMapper; +using System.Collections.Generic; +using System.Threading.Tasks; +using ValuationBackend.Models; +using ValuationBackend.Models.DTOs; +using ValuationBackend.Repositories; + +namespace ValuationBackend.Services +{ + public class LALotService : ILALotService + { + private readonly ILALotRepository _laLotRepository; + private readonly IMapper _mapper; + + public LALotService(ILALotRepository laLotRepository, IMapper mapper) + { + _laLotRepository = laLotRepository; + _mapper = mapper; + } + + public async Task> GetAllAsync() + { + var laLots = await _laLotRepository.GetAllAsync(); + return _mapper.Map>(laLots); + } + + public async Task GetByIdAsync(int id) + { + var laLot = await _laLotRepository.GetByIdAsync(id); + if (laLot == null) + { + return null; + } + + return _mapper.Map(laLot); + } + + public async Task> GetByMasterFileIdAsync(int masterFileId) + { + var laLots = await _laLotRepository.GetByMasterFileIdAsync(masterFileId); + return _mapper.Map>(laLots); + } + + public async Task CreateAsync(LALotCreateDto dto) + { + // Validate that the MasterFile exists + var masterFileExists = await _laLotRepository.MasterFileExistsAsync(dto.MasterFileId); + if (!masterFileExists) + { + throw new ArgumentException($"MasterFile with ID {dto.MasterFileId} does not exist."); + } + + var laLot = _mapper.Map(dto); + var createdLaLot = await _laLotRepository.CreateAsync(laLot); + return _mapper.Map(createdLaLot); + } + + public async Task UpdateAsync(int id, LALotUpdateDto dto) + { + var existingLaLot = await _laLotRepository.GetByIdAsync(id); + if (existingLaLot == null) + { + return null; + } + + // Validate that the MasterFile exists + var masterFileExists = await _laLotRepository.MasterFileExistsAsync(dto.MasterFileId); + if (!masterFileExists) + { + throw new ArgumentException($"MasterFile with ID {dto.MasterFileId} does not exist."); + } + + _mapper.Map(dto, existingLaLot); + + var updateSuccess = await _laLotRepository.UpdateAsync(existingLaLot); + if (!updateSuccess) + { + throw new InvalidOperationException("Failed to update LALot."); + } + + var updatedLaLot = await _laLotRepository.GetByIdAsync(id); + return _mapper.Map(updatedLaLot); + } + + public async Task DeleteAsync(int id) + { + return await _laLotRepository.DeleteAsync(id); + } + } +} From 67c46b333a7ae3a9680eed1ea334c0d707b61f22 Mon Sep 17 00:00:00 2001 From: Akith-002 Date: Tue, 22 Jul 2025 19:44:38 +0530 Subject: [PATCH 11/21] Add LandMiscellaneousMasterFileId to LM tables and update related DTOs, repositories, and services - Created a migration to add LandMiscellaneousMasterFileId to LMSalesEvidences, LMPastValuations, and LMBuildingRates tables. - Updated AppDbContextModelSnapshot to reflect new schema changes. - Modified LMBuildingRates, LMPastValuation, and LMSalesEvidence models to include LandMiscellaneousMasterFileId as a foreign key. - Enhanced DTOs for LMBuildingRates, LMPastValuation, and LMSalesEvidence to include LandMiscellaneousMasterFileId and related navigation properties. - Updated repositories to support fetching records by LandMiscellaneousMasterFileId and include related master file data. - Adjusted services to handle new methods for retrieving data based on LandMiscellaneousMasterFileId and to map master file details in response DTOs. --- Controllers/LMBuildingRatesController.cs | 8 + Controllers/LMPastValuationController.cs | 8 + Controllers/LMSalesEvidenceController.cs | 8 + Data/AppDbContext.cs | 33 + Extensions/ServiceExtensions.cs | 1 + ...llaneousMasterFileIdToLMTables.Designer.cs | 1768 +++++++++++++++++ ...LandMiscellaneousMasterFileIdToLMTables.cs | 111 ++ Migrations/AppDbContextModelSnapshot.cs | 46 +- Models/DTOs/LMBuildingRatesDtos.cs | 4 + Models/DTOs/LMPastValuationDtos.cs | 4 + Models/DTOs/LMSalesEvidenceDtos.cs | 4 + Models/LMBuildingRates.cs | 6 + Models/LMPastValuation.cs | 6 + Models/LMSalesEvidence.cs | 6 + repositories/ILMBuildingRatesRepository.cs | 2 + repositories/ILMPastValuationRepository.cs | 2 + repositories/ILMSalesEvidenceRepository.cs | 2 + repositories/LMBuildingRatesRepository.cs | 15 + repositories/LMPastValuationRepository.cs | 15 + repositories/LMSalesEvidenceRepository.cs | 15 + services/ILMBuildingRatesService.cs | 1 + services/ILMPastValuationService.cs | 1 + services/ILMSalesEvidenceService.cs | 1 + services/LMBuildingRatesService.cs | 33 +- services/LMPastValuationService.cs | 33 +- services/LMSalesEvidenceService.cs | 33 +- 26 files changed, 2151 insertions(+), 15 deletions(-) create mode 100644 Migrations/20250722064047_AddLandMiscellaneousMasterFileIdToLMTables.Designer.cs create mode 100644 Migrations/20250722064047_AddLandMiscellaneousMasterFileIdToLMTables.cs diff --git a/Controllers/LMBuildingRatesController.cs b/Controllers/LMBuildingRatesController.cs index 597426f..7d03416 100644 --- a/Controllers/LMBuildingRatesController.cs +++ b/Controllers/LMBuildingRatesController.cs @@ -81,5 +81,13 @@ public async Task> GetLMBuildingRateByR return lmBuildingRate; } + + // GET: api/LMBuildingRates/ByMasterFile/5 + [HttpGet("ByMasterFile/{masterFileId}")] + public async Task>> GetLMBuildingRatesByMasterFileId(int masterFileId) + { + var buildingRates = await _lmBuildingRatesService.GetByMasterFileIdAsync(masterFileId); + return Ok(buildingRates); + } } } diff --git a/Controllers/LMPastValuationController.cs b/Controllers/LMPastValuationController.cs index 5059497..921271e 100644 --- a/Controllers/LMPastValuationController.cs +++ b/Controllers/LMPastValuationController.cs @@ -93,5 +93,13 @@ public async Task> GetLMPastValuationBy return lmPastValuation; } + + // GET: api/LMPastValuation/ByMasterFile/5 + [HttpGet("ByMasterFile/{masterFileId}")] + public async Task>> GetLMPastValuationsByMasterFileId(int masterFileId) + { + var pastValuations = await _lmPastValuationService.GetByMasterFileIdAsync(masterFileId); + return Ok(pastValuations); + } } } diff --git a/Controllers/LMSalesEvidenceController.cs b/Controllers/LMSalesEvidenceController.cs index 3f357e5..db1a456 100644 --- a/Controllers/LMSalesEvidenceController.cs +++ b/Controllers/LMSalesEvidenceController.cs @@ -93,5 +93,13 @@ public async Task> GetLMSalesEvidenceBy return lmSalesEvidence; } + + // GET: api/LMSalesEvidence/ByMasterFile/5 + [HttpGet("ByMasterFile/{masterFileId}")] + public async Task>> GetLMSalesEvidencesByMasterFileId(int masterFileId) + { + var salesEvidences = await _lmSalesEvidenceService.GetByMasterFileIdAsync(masterFileId); + return Ok(salesEvidences); + } } } diff --git a/Data/AppDbContext.cs b/Data/AppDbContext.cs index 864dbad..79b24af 100644 --- a/Data/AppDbContext.cs +++ b/Data/AppDbContext.cs @@ -82,6 +82,39 @@ protected override void OnModelCreating(ModelBuilder modelBuilder) modelBuilder.Entity() .HasIndex(lm => lm.LandMiscellaneousMasterFileId) .HasDatabaseName("IX_LMRentalEvidence_LandMiscellaneousMasterFileId"); + + // Configure LMBuildingRates relationships + modelBuilder.Entity() + .HasOne(lm => lm.LandMiscellaneousMasterFile) + .WithMany() // No navigation property on master file side + .HasForeignKey(lm => lm.LandMiscellaneousMasterFileId) + .OnDelete(DeleteBehavior.SetNull); + + modelBuilder.Entity() + .HasIndex(lm => lm.LandMiscellaneousMasterFileId) + .HasDatabaseName("IX_LMBuildingRates_LandMiscellaneousMasterFileId"); + + // Configure LMPastValuation relationships + modelBuilder.Entity() + .HasOne(lm => lm.LandMiscellaneousMasterFile) + .WithMany() // No navigation property on master file side + .HasForeignKey(lm => lm.LandMiscellaneousMasterFileId) + .OnDelete(DeleteBehavior.SetNull); + + modelBuilder.Entity() + .HasIndex(lm => lm.LandMiscellaneousMasterFileId) + .HasDatabaseName("IX_LMPastValuation_LandMiscellaneousMasterFileId"); + + // Configure LMSalesEvidence relationships + modelBuilder.Entity() + .HasOne(lm => lm.LandMiscellaneousMasterFile) + .WithMany() // No navigation property on master file side + .HasForeignKey(lm => lm.LandMiscellaneousMasterFileId) + .OnDelete(DeleteBehavior.SetNull); + + modelBuilder.Entity() + .HasIndex(lm => lm.LandMiscellaneousMasterFileId) + .HasDatabaseName("IX_LMSalesEvidence_LandMiscellaneousMasterFileId"); } } } diff --git a/Extensions/ServiceExtensions.cs b/Extensions/ServiceExtensions.cs index 4e4bf45..ef2e473 100644 --- a/Extensions/ServiceExtensions.cs +++ b/Extensions/ServiceExtensions.cs @@ -14,6 +14,7 @@ public static IServiceCollection AddServices(this IServiceCollection services) services.AddScoped(); services.AddScoped(); services.AddScoped(); + services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); diff --git a/Migrations/20250722064047_AddLandMiscellaneousMasterFileIdToLMTables.Designer.cs b/Migrations/20250722064047_AddLandMiscellaneousMasterFileIdToLMTables.Designer.cs new file mode 100644 index 0000000..e5d2a65 --- /dev/null +++ b/Migrations/20250722064047_AddLandMiscellaneousMasterFileIdToLMTables.Designer.cs @@ -0,0 +1,1768 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using ValuationBackend.Data; + +#nullable disable + +namespace ValuationBackend.Migrations +{ + [DbContext(typeof(AppDbContext))] + [Migration("20250722064047_AddLandMiscellaneousMasterFileIdToLMTables")] + partial class AddLandMiscellaneousMasterFileIdToLMTables + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "9.0.5") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("LandAquisitionMasterFile", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("MasterFileNo") + .HasColumnType("integer"); + + b.Property("MasterFilesRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanType") + .IsRequired() + .HasColumnType("text"); + + b.Property("RequestingAuthorityReferenceNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Status") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("LandAquisitionMasterFiles"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Asset", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNo") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasColumnType("integer"); + + b.Property("IsRatingCard") + .HasColumnType("boolean"); + + b.Property("Owner") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("RdSt") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("RequestId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Ward") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.HasKey("Id"); + + b.HasIndex("RequestId"); + + b.ToTable("Assets"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetDivision", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Area") + .HasColumnType("numeric"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("LandType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("NewAssetNo") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("AssetDivisions"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetNumberChange", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ChangedDate") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfChange") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasMaxLength(255) + .HasColumnType("character varying(255)"); + + b.Property("FieldSize") + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("FieldType") + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("NewAssetNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("OldAssetNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Reason") + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("AssetNumberChanges"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNumber") + .HasColumnType("text"); + + b.Property("ConstructedBy") + .HasColumnType("text"); + + b.Property("Cost") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("FloorAreaSQFT") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerSQFT") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("YearOfConstruction") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("BuildingRatesLA"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccessCategory") + .IsRequired() + .HasColumnType("text"); + + b.Property("AccessCategoryDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquiredExtent") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquiringOfficerSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquisitionName") + .IsRequired() + .HasColumnType("text"); + + b.Property("AssessmentNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("AtLotNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("AtPlanNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryBottom") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryEast") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryNorth") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundarySouth") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryWest") + .IsRequired() + .HasColumnType("text"); + + b.Property("BuildingDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("BuildingInfo") + .IsRequired() + .HasColumnType("text"); + + b.Property("ChiefValuerRepresentativeSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfSection3BA") + .IsRequired() + .HasColumnType("text"); + + b.Property("DatePrepared") + .IsRequired() + .HasColumnType("text"); + + b.Property("DepthOfLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("DescriptionOfLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("DetailsOfBusiness") + .IsRequired() + .HasColumnType("text"); + + b.Property("Frontage") + .IsRequired() + .HasColumnType("text"); + + b.Property("GramasewakaSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("LandUseDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("LandUseType") + .IsRequired() + .HasColumnType("text"); + + b.Property("LevelWithAccess") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("NameOfTheLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("NameOfTheVillage") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionsDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionsInfo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlantationDetails") + .IsRequired() + .HasColumnType("text"); + + b.Property("PpCadLotNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("PpCadNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("RoadName") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("ConditionReports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.DomesticRatingCard", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Access") + .HasColumnType("text"); + + b.Property("Age") + .HasColumnType("integer"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("Condition") + .HasColumnType("text"); + + b.Property("Conveniences") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("Floor") + .HasColumnType("text"); + + b.Property("NewNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("Notes") + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .IsRequired() + .HasColumnType("text"); + + b.Property("ParkingSpace") + .HasColumnType("text"); + + b.Property("Plantations") + .HasColumnType("text"); + + b.Property("PropertySubCategory") + .HasColumnType("text"); + + b.Property("PropertyType") + .HasColumnType("text"); + + b.Property("RentPM") + .HasColumnType("numeric"); + + b.Property("RoadName") + .HasColumnType("text"); + + b.Property("SelectWalls") + .HasColumnType("text"); + + b.Property("SuggestedRate") + .HasColumnType("numeric"); + + b.Property("Terms") + .HasColumnType("text"); + + b.Property("TsBop") + .HasColumnType("text"); + + b.Property("WardNumber") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("DomesticRatingCards"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ImageData", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ImageBase64") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.ToTable("ImageData"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionBuilding", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AgeYears") + .HasColumnType("text"); + + b.Property("BathroomToilet") + .HasColumnType("text"); + + b.Property("BathroomToiletDoorsFittings") + .HasColumnType("text"); + + b.Property("BuildingCategory") + .HasColumnType("text"); + + b.Property("BuildingClass") + .HasColumnType("text"); + + b.Property("BuildingConditions") + .HasColumnType("text"); + + b.Property("BuildingId") + .HasColumnType("text"); + + b.Property("BuildingName") + .HasColumnType("text"); + + b.Property("Ceiling") + .HasColumnType("text"); + + b.Property("Condition") + .HasColumnType("text"); + + b.Property("Conveniences") + .HasColumnType("text"); + + b.Property("Design") + .HasColumnType("text"); + + b.Property("DetailOfBuilding") + .HasColumnType("text"); + + b.Property("Door") + .HasColumnType("text"); + + b.Property("ExpectedLifePeriodYears") + .HasColumnType("text"); + + b.Property("FloorFinisher") + .HasColumnType("text"); + + b.Property("FloorStructure") + .HasColumnType("text"); + + b.Property("FoundationStructure") + .HasColumnType("text"); + + b.Property("HandRail") + .HasColumnType("text"); + + b.Property("InspectionReportId") + .HasColumnType("integer"); + + b.Property("NatureOfConstruction") + .HasColumnType("text"); + + b.Property("NoOfFloorsAboveGround") + .HasColumnType("text") + .HasColumnName("NoOfFloorsAboveGround"); + + b.Property("NoOfFloorsBelowGround") + .HasColumnType("text") + .HasColumnName("NoOfFloorsBelowGround"); + + b.Property("OtherDoors") + .HasColumnType("text"); + + b.Property("PantryCupboard") + .HasColumnType("text"); + + b.Property("ParkingSpace") + .HasColumnType("text"); + + b.Property("RoofFinisher") + .HasColumnType("text"); + + b.Property("RoofFrame") + .HasColumnType("text"); + + b.Property("RoofMaterial") + .HasColumnType("text"); + + b.Property("Services") + .HasColumnType("text"); + + b.Property("Structure") + .HasColumnType("text"); + + b.Property("WallFinisher") + .HasColumnType("text"); + + b.Property("WallStructure") + .HasColumnType("text"); + + b.Property("Window") + .HasColumnType("text"); + + b.Property("WindowProtection") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("InspectionReportId"); + + b.ToTable("InspectionBuildings"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.Property("InspectionReportId") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("InspectionReportId")); + + b.Property("DetailsOfAssestsInventoryItems") + .HasColumnType("text") + .HasColumnName("DetailsOfAssestsInventoryItems"); + + b.Property("DetailsOfBusiness") + .HasColumnType("text"); + + b.Property("District") + .HasColumnType("text"); + + b.Property("DsDivision") + .HasColumnType("text"); + + b.Property("GnDivision") + .HasColumnType("text"); + + b.Property("InspectionDate") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionDetails") + .HasColumnType("text"); + + b.Property("OtherInformation") + .HasColumnType("text"); + + b.Property("Province") + .HasColumnType("text"); + + b.Property("Remark") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("InspectionReportId"); + + b.HasIndex("ReportId"); + + b.ToTable("InspectionReports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMBuildingRates", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNumber") + .HasColumnType("text"); + + b.Property("ConstructedBy") + .HasColumnType("text"); + + b.Property("Cost") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("FloorArea") + .HasColumnType("text"); + + b.Property("LandMiscellaneousMasterFileId") + .HasColumnType("integer"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerSQFT") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("YearOfConstruction") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("LandMiscellaneousMasterFileId") + .HasDatabaseName("IX_LMBuildingRates_LandMiscellaneousMasterFileId"); + + b.HasIndex("ReportId"); + + b.ToTable("LMBuildingRates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMPastValuation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("DateOfValuation") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FileNo_GnDivision") + .HasColumnType("text"); + + b.Property("LandMiscellaneousMasterFileId") + .HasColumnType("integer"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanOfParticulars") + .HasColumnType("text"); + + b.Property("PurposeOfValuation") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("LandMiscellaneousMasterFileId") + .HasDatabaseName("IX_LMPastValuation_LandMiscellaneousMasterFileId"); + + b.HasIndex("ReportId"); + + b.ToTable("LMPastValuations"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMRentalEvidence", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNo") + .HasColumnType("text"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("FloorRate") + .HasColumnType("text"); + + b.Property("HeadOfTerms") + .HasColumnType("text"); + + b.Property("LandMiscellaneousMasterFileId") + .HasColumnType("integer"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePer") + .HasColumnType("text"); + + b.Property("RatePerMonth") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("LandMiscellaneousMasterFileId") + .HasDatabaseName("IX_LMRentalEvidence_LandMiscellaneousMasterFileId"); + + b.HasIndex("ReportId"); + + b.ToTable("LMRentalEvidences"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMSalesEvidence", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNumber") + .HasColumnType("text"); + + b.Property("Consideration") + .HasColumnType("text"); + + b.Property("DeedAttestedNumber") + .HasColumnType("text"); + + b.Property("DeedNumber") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("LandMiscellaneousMasterFileId") + .HasColumnType("integer"); + + b.Property("LandRegistryReferences") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("LotNumber") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("NotaryName") + .HasColumnType("text"); + + b.Property("PlanDate") + .HasColumnType("text"); + + b.Property("PlanNumber") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Road") + .HasColumnType("text"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("Vendor") + .HasColumnType("text"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("LandMiscellaneousMasterFileId") + .HasDatabaseName("IX_LMSalesEvidence_LandMiscellaneousMasterFileId"); + + b.HasIndex("ReportId"); + + b.ToTable("LMSalesEvidences"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LandMiscellaneousMasterFile", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Lots") + .HasColumnType("integer"); + + b.Property("MasterFileNo") + .HasColumnType("integer"); + + b.Property("MasterFileRefNo") + .HasColumnType("text"); + + b.Property("PlanNo") + .HasColumnType("text"); + + b.Property("PlanType") + .HasColumnType("text"); + + b.Property("RequestingAuthorityReferenceNo") + .HasColumnType("text"); + + b.Property("Status") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("LandMiscellaneousMasterFiles"); + }); + + modelBuilder.Entity("ValuationBackend.Models.MasterDataItem", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Category") + .IsRequired() + .HasColumnType("text"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("MasterDataItems"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfValuation") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FileNoGNDivision") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanOfParticulars") + .HasColumnType("text"); + + b.Property("PurposeOfValuation") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("PastValuationsLA"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PropertyCategory", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Name") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("PropertyCategories"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RatingRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("LocalAuthority") + .IsRequired() + .HasColumnType("text"); + + b.Property("RatingReferenceNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("RequestType") + .IsRequired() + .HasColumnType("text"); + + b.Property("Status") + .IsRequired() + .HasColumnType("text"); + + b.Property("YearOfRevision") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.ToTable("RatingRequests"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Reconciliation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("NewNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("ObsoleteNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("StreetName") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("Reconciliations"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNo") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("FloorRateSQFT") + .HasColumnType("text"); + + b.Property("HeadOfTerms") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerMonth") + .HasColumnType("text"); + + b.Property("RatePerSqft") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("RentalEvidencesLA", (string)null); + }); + + modelBuilder.Entity("ValuationBackend.Models.Report", b => + { + b.Property("ReportId") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("ReportId")); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportType") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Timestamp") + .HasColumnType("timestamp with time zone"); + + b.HasKey("ReportId"); + + b.ToTable("Reports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Request", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("LocalAuthority") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RatingReferenceNo") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RequestTypeId") + .HasColumnType("integer"); + + b.Property("Status") + .HasColumnType("boolean"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("YearOfRevision") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("RequestTypeId"); + + b.ToTable("Requests"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RequestType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Code") + .IsRequired() + .HasMaxLength(2) + .HasColumnType("character varying(2)"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("RequestTypes"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNumber") + .HasColumnType("text"); + + b.Property("Consideration") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DeedAttestedNumber") + .HasColumnType("text"); + + b.Property("DeedNumber") + .HasColumnType("text"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FloorRate") + .HasColumnType("text"); + + b.Property("LandRegistryReferences") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("LotNumber") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("NotaryName") + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("PlanDate") + .HasColumnType("text"); + + b.Property("PlanNumber") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Road") + .HasColumnType("text"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Vendor") + .HasColumnType("text"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("SalesEvidencesLA", (string)null); + }); + + modelBuilder.Entity("ValuationBackend.Models.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssignedDivision") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpEmail") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpId") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpName") + .IsRequired() + .HasColumnType("text"); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("bytea"); + + b.Property("PasswordSalt") + .IsRequired() + .HasColumnType("bytea"); + + b.Property("Position") + .IsRequired() + .HasColumnType("text"); + + b.Property("ProfilePicture") + .HasColumnType("bytea"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("ValuationBackend.Models.UserTask", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssignedDate") + .HasColumnType("timestamp with time zone"); + + b.Property("IsCompleted") + .HasColumnType("boolean"); + + b.Property("LandAcquisitionId") + .HasColumnType("integer"); + + b.Property("LandMiscellaneousId") + .HasColumnType("integer"); + + b.Property("ReferenceNumber") + .HasColumnType("text"); + + b.Property("RequestId") + .HasColumnType("integer"); + + b.Property("TaskType") + .IsRequired() + .HasColumnType("text"); + + b.Property("UserId") + .HasColumnType("integer"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.Property("WorkItemDescription") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("UserId"); + + b.ToTable("UserTasks"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Asset", b => + { + b.HasOne("ValuationBackend.Models.Request", "Request") + .WithMany() + .HasForeignKey("RequestId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Request"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetDivision", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.DomesticRatingCard", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionBuilding", b => + { + b.HasOne("ValuationBackend.Models.InspectionReport", "InspectionReport") + .WithMany("Buildings") + .HasForeignKey("InspectionReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("InspectionReport"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMBuildingRates", b => + { + b.HasOne("ValuationBackend.Models.LandMiscellaneousMasterFile", "LandMiscellaneousMasterFile") + .WithMany() + .HasForeignKey("LandMiscellaneousMasterFileId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("LandMiscellaneousMasterFile"); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMPastValuation", b => + { + b.HasOne("ValuationBackend.Models.LandMiscellaneousMasterFile", "LandMiscellaneousMasterFile") + .WithMany() + .HasForeignKey("LandMiscellaneousMasterFileId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("LandMiscellaneousMasterFile"); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMRentalEvidence", b => + { + b.HasOne("ValuationBackend.Models.LandMiscellaneousMasterFile", "LandMiscellaneousMasterFile") + .WithMany() + .HasForeignKey("LandMiscellaneousMasterFileId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("LandMiscellaneousMasterFile"); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMSalesEvidence", b => + { + b.HasOne("ValuationBackend.Models.LandMiscellaneousMasterFile", "LandMiscellaneousMasterFile") + .WithMany() + .HasForeignKey("LandMiscellaneousMasterFileId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("LandMiscellaneousMasterFile"); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Reconciliation", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Request", b => + { + b.HasOne("ValuationBackend.Models.RequestType", "RequestType") + .WithMany() + .HasForeignKey("RequestTypeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("RequestType"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.UserTask", b => + { + b.HasOne("ValuationBackend.Models.User", "User") + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("User"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.Navigation("Buildings"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/Migrations/20250722064047_AddLandMiscellaneousMasterFileIdToLMTables.cs b/Migrations/20250722064047_AddLandMiscellaneousMasterFileIdToLMTables.cs new file mode 100644 index 0000000..bcf1fea --- /dev/null +++ b/Migrations/20250722064047_AddLandMiscellaneousMasterFileIdToLMTables.cs @@ -0,0 +1,111 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace ValuationBackend.Migrations +{ + /// + public partial class AddLandMiscellaneousMasterFileIdToLMTables : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.AddColumn( + name: "LandMiscellaneousMasterFileId", + table: "LMSalesEvidences", + type: "integer", + nullable: true); + + migrationBuilder.AddColumn( + name: "LandMiscellaneousMasterFileId", + table: "LMPastValuations", + type: "integer", + nullable: true); + + migrationBuilder.AddColumn( + name: "LandMiscellaneousMasterFileId", + table: "LMBuildingRates", + type: "integer", + nullable: true); + + migrationBuilder.CreateIndex( + name: "IX_LMSalesEvidence_LandMiscellaneousMasterFileId", + table: "LMSalesEvidences", + column: "LandMiscellaneousMasterFileId"); + + migrationBuilder.CreateIndex( + name: "IX_LMPastValuation_LandMiscellaneousMasterFileId", + table: "LMPastValuations", + column: "LandMiscellaneousMasterFileId"); + + migrationBuilder.CreateIndex( + name: "IX_LMBuildingRates_LandMiscellaneousMasterFileId", + table: "LMBuildingRates", + column: "LandMiscellaneousMasterFileId"); + + migrationBuilder.AddForeignKey( + name: "FK_LMBuildingRates_LandMiscellaneousMasterFiles_LandMiscellane~", + table: "LMBuildingRates", + column: "LandMiscellaneousMasterFileId", + principalTable: "LandMiscellaneousMasterFiles", + principalColumn: "Id", + onDelete: ReferentialAction.SetNull); + + migrationBuilder.AddForeignKey( + name: "FK_LMPastValuations_LandMiscellaneousMasterFiles_LandMiscellan~", + table: "LMPastValuations", + column: "LandMiscellaneousMasterFileId", + principalTable: "LandMiscellaneousMasterFiles", + principalColumn: "Id", + onDelete: ReferentialAction.SetNull); + + migrationBuilder.AddForeignKey( + name: "FK_LMSalesEvidences_LandMiscellaneousMasterFiles_LandMiscellan~", + table: "LMSalesEvidences", + column: "LandMiscellaneousMasterFileId", + principalTable: "LandMiscellaneousMasterFiles", + principalColumn: "Id", + onDelete: ReferentialAction.SetNull); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropForeignKey( + name: "FK_LMBuildingRates_LandMiscellaneousMasterFiles_LandMiscellane~", + table: "LMBuildingRates"); + + migrationBuilder.DropForeignKey( + name: "FK_LMPastValuations_LandMiscellaneousMasterFiles_LandMiscellan~", + table: "LMPastValuations"); + + migrationBuilder.DropForeignKey( + name: "FK_LMSalesEvidences_LandMiscellaneousMasterFiles_LandMiscellan~", + table: "LMSalesEvidences"); + + migrationBuilder.DropIndex( + name: "IX_LMSalesEvidence_LandMiscellaneousMasterFileId", + table: "LMSalesEvidences"); + + migrationBuilder.DropIndex( + name: "IX_LMPastValuation_LandMiscellaneousMasterFileId", + table: "LMPastValuations"); + + migrationBuilder.DropIndex( + name: "IX_LMBuildingRates_LandMiscellaneousMasterFileId", + table: "LMBuildingRates"); + + migrationBuilder.DropColumn( + name: "LandMiscellaneousMasterFileId", + table: "LMSalesEvidences"); + + migrationBuilder.DropColumn( + name: "LandMiscellaneousMasterFileId", + table: "LMPastValuations"); + + migrationBuilder.DropColumn( + name: "LandMiscellaneousMasterFileId", + table: "LMBuildingRates"); + } + } +} diff --git a/Migrations/AppDbContextModelSnapshot.cs b/Migrations/AppDbContextModelSnapshot.cs index 8a0cdd9..ed2b7c9 100644 --- a/Migrations/AppDbContextModelSnapshot.cs +++ b/Migrations/AppDbContextModelSnapshot.cs @@ -728,6 +728,9 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("FloorArea") .HasColumnType("text"); + b.Property("LandMiscellaneousMasterFileId") + .HasColumnType("integer"); + b.Property("LocationLatitude") .HasColumnType("text"); @@ -755,6 +758,9 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.HasKey("Id"); + b.HasIndex("LandMiscellaneousMasterFileId") + .HasDatabaseName("IX_LMBuildingRates_LandMiscellaneousMasterFileId"); + b.HasIndex("ReportId"); b.ToTable("LMBuildingRates"); @@ -777,6 +783,9 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("FileNo_GnDivision") .HasColumnType("text"); + b.Property("LandMiscellaneousMasterFileId") + .HasColumnType("integer"); + b.Property("LocationLatitude") .HasColumnType("text"); @@ -810,6 +819,9 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.HasKey("Id"); + b.HasIndex("LandMiscellaneousMasterFileId") + .HasDatabaseName("IX_LMPastValuation_LandMiscellaneousMasterFileId"); + b.HasIndex("ReportId"); b.ToTable("LMPastValuations"); @@ -905,6 +917,9 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("Extent") .HasColumnType("text"); + b.Property("LandMiscellaneousMasterFileId") + .HasColumnType("integer"); + b.Property("LandRegistryReferences") .HasColumnType("text"); @@ -956,6 +971,9 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.HasKey("Id"); + b.HasIndex("LandMiscellaneousMasterFileId") + .HasDatabaseName("IX_LMSalesEvidence_LandMiscellaneousMasterFileId"); + b.HasIndex("ReportId"); b.ToTable("LMSalesEvidences"); @@ -1601,30 +1619,44 @@ protected override void BuildModel(ModelBuilder modelBuilder) modelBuilder.Entity("ValuationBackend.Models.LMBuildingRates", b => { + b.HasOne("ValuationBackend.Models.LandMiscellaneousMasterFile", "LandMiscellaneousMasterFile") + .WithMany() + .HasForeignKey("LandMiscellaneousMasterFileId") + .OnDelete(DeleteBehavior.SetNull); + b.HasOne("ValuationBackend.Models.Report", "Report") .WithMany() .HasForeignKey("ReportId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); + b.Navigation("LandMiscellaneousMasterFile"); + b.Navigation("Report"); }); modelBuilder.Entity("ValuationBackend.Models.LMPastValuation", b => { + b.HasOne("ValuationBackend.Models.LandMiscellaneousMasterFile", "LandMiscellaneousMasterFile") + .WithMany() + .HasForeignKey("LandMiscellaneousMasterFileId") + .OnDelete(DeleteBehavior.SetNull); + b.HasOne("ValuationBackend.Models.Report", "Report") .WithMany() .HasForeignKey("ReportId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); + b.Navigation("LandMiscellaneousMasterFile"); + b.Navigation("Report"); }); modelBuilder.Entity("ValuationBackend.Models.LMRentalEvidence", b => { b.HasOne("ValuationBackend.Models.LandMiscellaneousMasterFile", "LandMiscellaneousMasterFile") - .WithMany("RentalEvidences") + .WithMany() .HasForeignKey("LandMiscellaneousMasterFileId") .OnDelete(DeleteBehavior.SetNull); @@ -1641,12 +1673,19 @@ protected override void BuildModel(ModelBuilder modelBuilder) modelBuilder.Entity("ValuationBackend.Models.LMSalesEvidence", b => { + b.HasOne("ValuationBackend.Models.LandMiscellaneousMasterFile", "LandMiscellaneousMasterFile") + .WithMany() + .HasForeignKey("LandMiscellaneousMasterFileId") + .OnDelete(DeleteBehavior.SetNull); + b.HasOne("ValuationBackend.Models.Report", "Report") .WithMany() .HasForeignKey("ReportId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); + b.Navigation("LandMiscellaneousMasterFile"); + b.Navigation("Report"); }); @@ -1720,11 +1759,6 @@ protected override void BuildModel(ModelBuilder modelBuilder) { b.Navigation("Buildings"); }); - - modelBuilder.Entity("ValuationBackend.Models.LandMiscellaneousMasterFile", b => - { - b.Navigation("RentalEvidences"); - }); #pragma warning restore 612, 618 } } diff --git a/Models/DTOs/LMBuildingRatesDtos.cs b/Models/DTOs/LMBuildingRatesDtos.cs index cbc37ce..7fb7a80 100644 --- a/Models/DTOs/LMBuildingRatesDtos.cs +++ b/Models/DTOs/LMBuildingRatesDtos.cs @@ -17,6 +17,7 @@ public class LMBuildingRatesCreateDto public string? Remarks { get; set; } public string? LocationLatitude { get; set; } public string? LocationLongitude { get; set; } + public int? LandMiscellaneousMasterFileId { get; set; } } public class LMBuildingRatesUpdateDto @@ -36,6 +37,7 @@ public class LMBuildingRatesUpdateDto public string? Remarks { get; set; } public string? LocationLatitude { get; set; } public string? LocationLongitude { get; set; } + public int? LandMiscellaneousMasterFileId { get; set; } } public class LMBuildingRatesResponseDto @@ -54,5 +56,7 @@ public class LMBuildingRatesResponseDto public string? Remarks { get; set; } public string? LocationLatitude { get; set; } public string? LocationLongitude { get; set; } + public int? LandMiscellaneousMasterFileId { get; set; } + public LandMiscellaneousMasterFileDto? LandMiscellaneousMasterFile { get; set; } } } diff --git a/Models/DTOs/LMPastValuationDtos.cs b/Models/DTOs/LMPastValuationDtos.cs index 70e952c..58afd7f 100644 --- a/Models/DTOs/LMPastValuationDtos.cs +++ b/Models/DTOs/LMPastValuationDtos.cs @@ -17,6 +17,7 @@ public class LMPastValuationCreateDto public string? Remarks { get; set; } public string? LocationLongitude { get; set; } public string? LocationLatitude { get; set; } + public int? LandMiscellaneousMasterFileId { get; set; } } public class LMPastValuationUpdateDto @@ -36,6 +37,7 @@ public class LMPastValuationUpdateDto public string? Remarks { get; set; } public string? LocationLongitude { get; set; } public string? LocationLatitude { get; set; } + public int? LandMiscellaneousMasterFileId { get; set; } } public class LMPastValuationResponseDto @@ -54,5 +56,7 @@ public class LMPastValuationResponseDto public string? Remarks { get; set; } public string? LocationLongitude { get; set; } public string? LocationLatitude { get; set; } + public int? LandMiscellaneousMasterFileId { get; set; } + public LandMiscellaneousMasterFileDto? LandMiscellaneousMasterFile { get; set; } } } diff --git a/Models/DTOs/LMSalesEvidenceDtos.cs b/Models/DTOs/LMSalesEvidenceDtos.cs index a6ea5d6..a0d811e 100644 --- a/Models/DTOs/LMSalesEvidenceDtos.cs +++ b/Models/DTOs/LMSalesEvidenceDtos.cs @@ -26,6 +26,7 @@ public class LMSalesEvidenceCreateDto public string? LandRegistryReferences { get; set; } public string? Situation { get; set; } public string? DescriptionOfProperty { get; set; } + public int? LandMiscellaneousMasterFileId { get; set; } } public class LMSalesEvidenceUpdateDto @@ -54,6 +55,7 @@ public class LMSalesEvidenceUpdateDto public string? LandRegistryReferences { get; set; } public string? Situation { get; set; } public string? DescriptionOfProperty { get; set; } + public int? LandMiscellaneousMasterFileId { get; set; } } public class LMSalesEvidenceResponseDto @@ -81,5 +83,7 @@ public class LMSalesEvidenceResponseDto public string? LandRegistryReferences { get; set; } public string? Situation { get; set; } public string? DescriptionOfProperty { get; set; } + public int? LandMiscellaneousMasterFileId { get; set; } + public LandMiscellaneousMasterFileDto? LandMiscellaneousMasterFile { get; set; } } } diff --git a/Models/LMBuildingRates.cs b/Models/LMBuildingRates.cs index 8af4fff..93061c6 100644 --- a/Models/LMBuildingRates.cs +++ b/Models/LMBuildingRates.cs @@ -31,5 +31,11 @@ public class LMBuildingRates public string? Remarks { get; set; } public string? LocationLatitude { get; set; } public string? LocationLongitude { get; set; } + + // Foreign key to LandMiscellaneousMasterFile table + public int? LandMiscellaneousMasterFileId { get; set; } + + [ForeignKey("LandMiscellaneousMasterFileId")] + public virtual LandMiscellaneousMasterFile? LandMiscellaneousMasterFile { get; set; } } } diff --git a/Models/LMPastValuation.cs b/Models/LMPastValuation.cs index 358e295..16f3e3d 100644 --- a/Models/LMPastValuation.cs +++ b/Models/LMPastValuation.cs @@ -31,5 +31,11 @@ public class LMPastValuation public string? Remarks { get; set; } public string? LocationLongitude { get; set; } public string? LocationLatitude { get; set; } + + // Foreign key to LandMiscellaneousMasterFile table + public int? LandMiscellaneousMasterFileId { get; set; } + + [ForeignKey("LandMiscellaneousMasterFileId")] + public virtual LandMiscellaneousMasterFile? LandMiscellaneousMasterFile { get; set; } } } diff --git a/Models/LMSalesEvidence.cs b/Models/LMSalesEvidence.cs index 303da5d..a25b501 100644 --- a/Models/LMSalesEvidence.cs +++ b/Models/LMSalesEvidence.cs @@ -40,5 +40,11 @@ public class LMSalesEvidence public string? LandRegistryReferences { get; set; } public string? Situation { get; set; } public string? DescriptionOfProperty { get; set; } + + // Foreign key to LandMiscellaneousMasterFile table + public int? LandMiscellaneousMasterFileId { get; set; } + + [ForeignKey("LandMiscellaneousMasterFileId")] + public virtual LandMiscellaneousMasterFile? LandMiscellaneousMasterFile { get; set; } } } diff --git a/repositories/ILMBuildingRatesRepository.cs b/repositories/ILMBuildingRatesRepository.cs index 79e085f..de54e34 100644 --- a/repositories/ILMBuildingRatesRepository.cs +++ b/repositories/ILMBuildingRatesRepository.cs @@ -8,6 +8,8 @@ public interface ILMBuildingRatesRepository { Task> GetAllAsync(); Task GetByIdAsync(int id); + Task GetByIdWithMasterFileAsync(int id); + Task> GetByMasterFileIdAsync(int masterFileId); Task GetByReportIdAsync(int reportId); Task CreateReportAsync(Report report); Task CreateAsync(LMBuildingRates lmBuildingRate); diff --git a/repositories/ILMPastValuationRepository.cs b/repositories/ILMPastValuationRepository.cs index bace7ef..d555f12 100644 --- a/repositories/ILMPastValuationRepository.cs +++ b/repositories/ILMPastValuationRepository.cs @@ -8,6 +8,8 @@ public interface ILMPastValuationRepository { Task> GetAllAsync(); Task GetByIdAsync(int id); + Task GetByIdWithMasterFileAsync(int id); + Task> GetByMasterFileIdAsync(int masterFileId); Task GetByReportIdAsync(int reportId); Task CreateReportAsync(Report report); Task CreateAsync(LMPastValuation lmPastValuation); diff --git a/repositories/ILMSalesEvidenceRepository.cs b/repositories/ILMSalesEvidenceRepository.cs index 40f1854..f5560df 100644 --- a/repositories/ILMSalesEvidenceRepository.cs +++ b/repositories/ILMSalesEvidenceRepository.cs @@ -8,6 +8,8 @@ public interface ILMSalesEvidenceRepository { Task> GetAllAsync(); Task GetByIdAsync(int id); + Task GetByIdWithMasterFileAsync(int id); + Task> GetByMasterFileIdAsync(int masterFileId); Task GetByReportIdAsync(int reportId); Task CreateReportAsync(Report report); Task CreateAsync(LMSalesEvidence lmSalesEvidence); diff --git a/repositories/LMBuildingRatesRepository.cs b/repositories/LMBuildingRatesRepository.cs index 456ba59..d83321a 100644 --- a/repositories/LMBuildingRatesRepository.cs +++ b/repositories/LMBuildingRatesRepository.cs @@ -27,6 +27,21 @@ public async Task GetByIdAsync(int id) return await _context.LMBuildingRates.FindAsync(id); } + public async Task GetByIdWithMasterFileAsync(int id) + { + return await _context.LMBuildingRates + .Include(br => br.LandMiscellaneousMasterFile) + .FirstOrDefaultAsync(br => br.Id == id); + } + + public async Task> GetByMasterFileIdAsync(int masterFileId) + { + return await _context.LMBuildingRates + .Where(br => br.LandMiscellaneousMasterFileId == masterFileId) + .Include(br => br.LandMiscellaneousMasterFile) + .ToListAsync(); + } + public async Task GetByReportIdAsync(int reportId) { return await _context.LMBuildingRates diff --git a/repositories/LMPastValuationRepository.cs b/repositories/LMPastValuationRepository.cs index 472e846..4c35e5e 100644 --- a/repositories/LMPastValuationRepository.cs +++ b/repositories/LMPastValuationRepository.cs @@ -27,6 +27,21 @@ public async Task GetByIdAsync(int id) return await _context.LMPastValuations.FindAsync(id); } + public async Task GetByIdWithMasterFileAsync(int id) + { + return await _context.LMPastValuations + .Include(pv => pv.LandMiscellaneousMasterFile) + .FirstOrDefaultAsync(pv => pv.Id == id); + } + + public async Task> GetByMasterFileIdAsync(int masterFileId) + { + return await _context.LMPastValuations + .Where(pv => pv.LandMiscellaneousMasterFileId == masterFileId) + .Include(pv => pv.LandMiscellaneousMasterFile) + .ToListAsync(); + } + public async Task GetByReportIdAsync(int reportId) { return await _context.LMPastValuations diff --git a/repositories/LMSalesEvidenceRepository.cs b/repositories/LMSalesEvidenceRepository.cs index 285a1a8..a51b62d 100644 --- a/repositories/LMSalesEvidenceRepository.cs +++ b/repositories/LMSalesEvidenceRepository.cs @@ -27,6 +27,21 @@ public async Task GetByIdAsync(int id) return await _context.LMSalesEvidences.FindAsync(id); } + public async Task GetByIdWithMasterFileAsync(int id) + { + return await _context.LMSalesEvidences + .Include(se => se.LandMiscellaneousMasterFile) + .FirstOrDefaultAsync(se => se.Id == id); + } + + public async Task> GetByMasterFileIdAsync(int masterFileId) + { + return await _context.LMSalesEvidences + .Where(se => se.LandMiscellaneousMasterFileId == masterFileId) + .Include(se => se.LandMiscellaneousMasterFile) + .ToListAsync(); + } + public async Task GetByReportIdAsync(int reportId) { return await _context.LMSalesEvidences diff --git a/services/ILMBuildingRatesService.cs b/services/ILMBuildingRatesService.cs index 0f187e5..dfafab5 100644 --- a/services/ILMBuildingRatesService.cs +++ b/services/ILMBuildingRatesService.cs @@ -8,6 +8,7 @@ public interface ILMBuildingRatesService { Task> GetAllAsync(); Task GetByIdAsync(int id); + Task> GetByMasterFileIdAsync(int masterFileId); Task GetByReportIdAsync(int reportId); Task CreateAsync(LMBuildingRatesCreateDto dto); Task UpdateAsync(int reportId, LMBuildingRatesUpdateDto dto); diff --git a/services/ILMPastValuationService.cs b/services/ILMPastValuationService.cs index 048563e..b3b22b5 100644 --- a/services/ILMPastValuationService.cs +++ b/services/ILMPastValuationService.cs @@ -8,6 +8,7 @@ public interface ILMPastValuationService { Task> GetAllAsync(); Task GetByIdAsync(int id); + Task> GetByMasterFileIdAsync(int masterFileId); Task GetByReportIdAsync(int reportId); Task CreateAsync(LMPastValuationCreateDto dto); Task UpdateAsync(int reportId, LMPastValuationUpdateDto dto); diff --git a/services/ILMSalesEvidenceService.cs b/services/ILMSalesEvidenceService.cs index 28b9624..60dae47 100644 --- a/services/ILMSalesEvidenceService.cs +++ b/services/ILMSalesEvidenceService.cs @@ -8,6 +8,7 @@ public interface ILMSalesEvidenceService { Task> GetAllAsync(); Task GetByIdAsync(int id); + Task> GetByMasterFileIdAsync(int masterFileId); Task GetByReportIdAsync(int reportId); Task CreateAsync(LMSalesEvidenceCreateDto dto); Task UpdateAsync(int reportId, LMSalesEvidenceUpdateDto dto); diff --git a/services/LMBuildingRatesService.cs b/services/LMBuildingRatesService.cs index e0fd878..bf017c6 100644 --- a/services/LMBuildingRatesService.cs +++ b/services/LMBuildingRatesService.cs @@ -25,10 +25,16 @@ public async Task> GetAllAsync() public async Task GetByIdAsync(int id) { - var lmBuildingRate = await _repository.GetByIdAsync(id); + var lmBuildingRate = await _repository.GetByIdWithMasterFileAsync(id); return lmBuildingRate == null ? null : MapToResponseDto(lmBuildingRate); } + public async Task> GetByMasterFileIdAsync(int masterFileId) + { + var lmBuildingRates = await _repository.GetByMasterFileIdAsync(masterFileId); + return lmBuildingRates.Select(MapToResponseDto).ToList(); + } + public async Task GetByReportIdAsync(int reportId) { var lmBuildingRate = await _repository.GetByReportIdAsync(reportId); @@ -63,7 +69,8 @@ public async Task CreateAsync(LMBuildingRatesCreateD Cost = dto.Cost, Remarks = dto.Remarks, LocationLatitude = dto.LocationLatitude, - LocationLongitude = dto.LocationLongitude + LocationLongitude = dto.LocationLongitude, + LandMiscellaneousMasterFileId = dto.LandMiscellaneousMasterFileId }; lmBuildingRate = await _repository.CreateAsync(lmBuildingRate); @@ -93,6 +100,7 @@ public async Task UpdateAsync(int reportId, LMBuildingRatesUpdateDto dto) existingLMBuildingRate.Remarks = dto.Remarks; existingLMBuildingRate.LocationLatitude = dto.LocationLatitude; existingLMBuildingRate.LocationLongitude = dto.LocationLongitude; + existingLMBuildingRate.LandMiscellaneousMasterFileId = dto.LandMiscellaneousMasterFileId; return await _repository.UpdateAsync(existingLMBuildingRate); } @@ -119,7 +127,26 @@ private LMBuildingRatesResponseDto MapToResponseDto(LMBuildingRates lmBuildingRa Cost = lmBuildingRate.Cost, Remarks = lmBuildingRate.Remarks, LocationLatitude = lmBuildingRate.LocationLatitude, - LocationLongitude = lmBuildingRate.LocationLongitude + LocationLongitude = lmBuildingRate.LocationLongitude, + LandMiscellaneousMasterFileId = lmBuildingRate.LandMiscellaneousMasterFileId, + LandMiscellaneousMasterFile = lmBuildingRate.LandMiscellaneousMasterFile != null + ? MapMasterFileToDto(lmBuildingRate.LandMiscellaneousMasterFile) + : null + }; + } + + private LandMiscellaneousMasterFileDto MapMasterFileToDto(LandMiscellaneousMasterFile masterFile) + { + return new LandMiscellaneousMasterFileDto + { + Id = masterFile.Id, + MasterFileNo = masterFile.MasterFileNo, + MasterFileRefNo = masterFile.MasterFileRefNo, + PlanType = masterFile.PlanType, + PlanNo = masterFile.PlanNo, + RequestingAuthorityReferenceNo = masterFile.RequestingAuthorityReferenceNo, + Status = masterFile.Status, + Lots = masterFile.Lots }; } } diff --git a/services/LMPastValuationService.cs b/services/LMPastValuationService.cs index df43b9d..152c784 100644 --- a/services/LMPastValuationService.cs +++ b/services/LMPastValuationService.cs @@ -25,10 +25,16 @@ public async Task> GetAllAsync() public async Task GetByIdAsync(int id) { - var lmPastValuation = await _repository.GetByIdAsync(id); + var lmPastValuation = await _repository.GetByIdWithMasterFileAsync(id); return lmPastValuation == null ? null : MapToResponseDto(lmPastValuation); } + public async Task> GetByMasterFileIdAsync(int masterFileId) + { + var lmPastValuations = await _repository.GetByMasterFileIdAsync(masterFileId); + return lmPastValuations.Select(MapToResponseDto).ToList(); + } + public async Task GetByReportIdAsync(int reportId) { var lmPastValuation = await _repository.GetByReportIdAsync(reportId); @@ -63,7 +69,8 @@ public async Task CreateAsync(LMPastValuationCreateD RateType = dto.RateType, Remarks = dto.Remarks, LocationLongitude = dto.LocationLongitude, - LocationLatitude = dto.LocationLatitude + LocationLatitude = dto.LocationLatitude, + LandMiscellaneousMasterFileId = dto.LandMiscellaneousMasterFileId }; lmPastValuation = await _repository.CreateAsync(lmPastValuation); @@ -93,6 +100,7 @@ public async Task UpdateAsync(int reportId, LMPastValuationUpdateDto dto) existingLMPastValuation.Remarks = dto.Remarks; existingLMPastValuation.LocationLongitude = dto.LocationLongitude; existingLMPastValuation.LocationLatitude = dto.LocationLatitude; + existingLMPastValuation.LandMiscellaneousMasterFileId = dto.LandMiscellaneousMasterFileId; return await _repository.UpdateAsync(existingLMPastValuation); } @@ -119,7 +127,26 @@ private LMPastValuationResponseDto MapToResponseDto(LMPastValuation lmPastValuat RateType = lmPastValuation.RateType, Remarks = lmPastValuation.Remarks, LocationLongitude = lmPastValuation.LocationLongitude, - LocationLatitude = lmPastValuation.LocationLatitude + LocationLatitude = lmPastValuation.LocationLatitude, + LandMiscellaneousMasterFileId = lmPastValuation.LandMiscellaneousMasterFileId, + LandMiscellaneousMasterFile = lmPastValuation.LandMiscellaneousMasterFile != null + ? MapMasterFileToDto(lmPastValuation.LandMiscellaneousMasterFile) + : null + }; + } + + private LandMiscellaneousMasterFileDto MapMasterFileToDto(LandMiscellaneousMasterFile masterFile) + { + return new LandMiscellaneousMasterFileDto + { + Id = masterFile.Id, + MasterFileNo = masterFile.MasterFileNo, + MasterFileRefNo = masterFile.MasterFileRefNo, + PlanType = masterFile.PlanType, + PlanNo = masterFile.PlanNo, + RequestingAuthorityReferenceNo = masterFile.RequestingAuthorityReferenceNo, + Status = masterFile.Status, + Lots = masterFile.Lots }; } } diff --git a/services/LMSalesEvidenceService.cs b/services/LMSalesEvidenceService.cs index e528ee9..8c4c491 100644 --- a/services/LMSalesEvidenceService.cs +++ b/services/LMSalesEvidenceService.cs @@ -25,10 +25,16 @@ public async Task> GetAllAsync() public async Task GetByIdAsync(int id) { - var lmSalesEvidence = await _repository.GetByIdAsync(id); + var lmSalesEvidence = await _repository.GetByIdWithMasterFileAsync(id); return lmSalesEvidence == null ? null : MapToResponseDto(lmSalesEvidence); } + public async Task> GetByMasterFileIdAsync(int masterFileId) + { + var lmSalesEvidences = await _repository.GetByMasterFileIdAsync(masterFileId); + return lmSalesEvidences.Select(MapToResponseDto).ToList(); + } + public async Task GetByReportIdAsync(int reportId) { var lmSalesEvidence = await _repository.GetByReportIdAsync(reportId); @@ -72,7 +78,8 @@ public async Task CreateAsync(LMSalesEvidenceCreateD LocationLatitude = dto.LocationLatitude, LandRegistryReferences = dto.LandRegistryReferences, Situation = dto.Situation, - DescriptionOfProperty = dto.DescriptionOfProperty + DescriptionOfProperty = dto.DescriptionOfProperty, + LandMiscellaneousMasterFileId = dto.LandMiscellaneousMasterFileId }; lmSalesEvidence = await _repository.CreateAsync(lmSalesEvidence); @@ -111,6 +118,7 @@ public async Task UpdateAsync(int reportId, LMSalesEvidenceUpdateDto dto) existingLMSalesEvidence.LandRegistryReferences = dto.LandRegistryReferences; existingLMSalesEvidence.Situation = dto.Situation; existingLMSalesEvidence.DescriptionOfProperty = dto.DescriptionOfProperty; + existingLMSalesEvidence.LandMiscellaneousMasterFileId = dto.LandMiscellaneousMasterFileId; return await _repository.UpdateAsync(existingLMSalesEvidence); } @@ -146,7 +154,26 @@ private LMSalesEvidenceResponseDto MapToResponseDto(LMSalesEvidence lmSalesEvide LocationLatitude = lmSalesEvidence.LocationLatitude, LandRegistryReferences = lmSalesEvidence.LandRegistryReferences, Situation = lmSalesEvidence.Situation, - DescriptionOfProperty = lmSalesEvidence.DescriptionOfProperty + DescriptionOfProperty = lmSalesEvidence.DescriptionOfProperty, + LandMiscellaneousMasterFileId = lmSalesEvidence.LandMiscellaneousMasterFileId, + LandMiscellaneousMasterFile = lmSalesEvidence.LandMiscellaneousMasterFile != null + ? MapMasterFileToDto(lmSalesEvidence.LandMiscellaneousMasterFile) + : null + }; + } + + private LandMiscellaneousMasterFileDto MapMasterFileToDto(LandMiscellaneousMasterFile masterFile) + { + return new LandMiscellaneousMasterFileDto + { + Id = masterFile.Id, + MasterFileNo = masterFile.MasterFileNo, + MasterFileRefNo = masterFile.MasterFileRefNo, + PlanType = masterFile.PlanType, + PlanNo = masterFile.PlanNo, + RequestingAuthorityReferenceNo = masterFile.RequestingAuthorityReferenceNo, + Status = masterFile.Status, + Lots = masterFile.Lots }; } } From c5a5d1ab020dfb50df5ac3ae237592f19b021a27 Mon Sep 17 00:00:00 2001 From: JalinaH Date: Tue, 22 Jul 2025 19:53:45 +0530 Subject: [PATCH 12/21] Add LA Coordinate Models, DTOs, Repositories, and Services - Introduced new models for PastValuationsLA, BuildingRatesLA, SalesEvidenceLA, and RentalEvidenceLA coordinates. - Created corresponding DTOs for creating, updating, and responding with coordinate data. - Implemented repositories for managing coordinate data, including CRUD operations and report existence checks. - Developed services to handle business logic for coordinates, including validation and mapping to DTOs. - Updated the database context with new coordinate tables and relationships. - Added AutoMapper profiles for mapping between models and DTOs. --- Controllers/LACoordinateControllers.cs | 384 +++ Data/AppDbContext.cs | 5 + Extensions/RepositoryExtensions.cs | 4 + Extensions/ServiceExtensions.cs | 4 + ...42137_CreateLACoordinateTables.Designer.cs | 2151 +++++++++++++++++ ...20250722142137_CreateLACoordinateTables.cs | 140 ++ Migrations/AppDbContextModelSnapshot.cs | 156 ++ Models/DTOs/LACoordinateDtos.cs | 124 + Models/LACoordinates.cs | 93 + Profiles/LACoordinateProfiles.cs | 64 + repositories/ILACoordinateRepositories.cs | 58 + repositories/LACoordinateRepositories.cs | 345 +++ services/ILACoordinateServices.cs | 50 + services/LACoordinateServices.cs | 329 +++ 14 files changed, 3907 insertions(+) create mode 100644 Controllers/LACoordinateControllers.cs create mode 100644 Migrations/20250722142137_CreateLACoordinateTables.Designer.cs create mode 100644 Migrations/20250722142137_CreateLACoordinateTables.cs create mode 100644 Models/DTOs/LACoordinateDtos.cs create mode 100644 Models/LACoordinates.cs create mode 100644 Profiles/LACoordinateProfiles.cs create mode 100644 repositories/ILACoordinateRepositories.cs create mode 100644 repositories/LACoordinateRepositories.cs create mode 100644 services/ILACoordinateServices.cs create mode 100644 services/LACoordinateServices.cs diff --git a/Controllers/LACoordinateControllers.cs b/Controllers/LACoordinateControllers.cs new file mode 100644 index 0000000..1486f21 --- /dev/null +++ b/Controllers/LACoordinateControllers.cs @@ -0,0 +1,384 @@ +using Microsoft.AspNetCore.Mvc; +using System.Collections.Generic; +using System.Threading.Tasks; +using ValuationBackend.Models.DTOs; +using ValuationBackend.Services; + +namespace ValuationBackend.Controllers +{ + [Route("api/[controller]")] + [ApiController] + public class PastValuationsLACoordinateController : ControllerBase + { + private readonly IPastValuationsLACoordinateService _coordinateService; + + public PastValuationsLACoordinateController(IPastValuationsLACoordinateService coordinateService) + { + _coordinateService = coordinateService; + } + + // GET: api/PastValuationsLACoordinate + [HttpGet] + public async Task>> GetCoordinates() + { + var coordinates = await _coordinateService.GetAllAsync(); + return Ok(coordinates); + } + + // GET: api/PastValuationsLACoordinate/5 + [HttpGet("{id}")] + public async Task> GetCoordinate(int id) + { + var coordinate = await _coordinateService.GetByIdAsync(id); + + if (coordinate == null) + { + return NotFound($"Coordinate with ID {id} not found."); + } + + return Ok(coordinate); + } + + // GET: api/PastValuationsLACoordinate/report/5 + [HttpGet("report/{reportId}")] + public async Task>> GetCoordinatesByReportId(int reportId) + { + var coordinates = await _coordinateService.GetByReportIdAsync(reportId); + return Ok(coordinates); + } + + // POST: api/PastValuationsLACoordinate + [HttpPost] + public async Task> CreateCoordinate(PastValuationsLACoordinateCreateDto dto) + { + try + { + var createdCoordinate = await _coordinateService.CreateAsync(dto); + return CreatedAtAction(nameof(GetCoordinate), new { id = createdCoordinate.Id }, createdCoordinate); + } + catch (ArgumentException ex) + { + return BadRequest(ex.Message); + } + } + + // PUT: api/PastValuationsLACoordinate/5 + [HttpPut("{id}")] + public async Task> UpdateCoordinate(int id, PastValuationsLACoordinateUpdateDto dto) + { + try + { + var updatedCoordinate = await _coordinateService.UpdateAsync(id, dto); + if (updatedCoordinate == null) + { + return NotFound($"Coordinate with ID {id} not found."); + } + + return Ok(updatedCoordinate); + } + catch (ArgumentException ex) + { + return BadRequest(ex.Message); + } + catch (InvalidOperationException ex) + { + return StatusCode(500, ex.Message); + } + } + + // DELETE: api/PastValuationsLACoordinate/5 + [HttpDelete("{id}")] + public async Task DeleteCoordinate(int id) + { + var result = await _coordinateService.DeleteAsync(id); + if (!result) + { + return NotFound($"Coordinate with ID {id} not found."); + } + + return NoContent(); + } + } + + [Route("api/[controller]")] + [ApiController] + public class BuildingRatesLACoordinateController : ControllerBase + { + private readonly IBuildingRatesLACoordinateService _coordinateService; + + public BuildingRatesLACoordinateController(IBuildingRatesLACoordinateService coordinateService) + { + _coordinateService = coordinateService; + } + + // GET: api/BuildingRatesLACoordinate + [HttpGet] + public async Task>> GetCoordinates() + { + var coordinates = await _coordinateService.GetAllAsync(); + return Ok(coordinates); + } + + // GET: api/BuildingRatesLACoordinate/5 + [HttpGet("{id}")] + public async Task> GetCoordinate(int id) + { + var coordinate = await _coordinateService.GetByIdAsync(id); + + if (coordinate == null) + { + return NotFound($"Coordinate with ID {id} not found."); + } + + return Ok(coordinate); + } + + // GET: api/BuildingRatesLACoordinate/report/5 + [HttpGet("report/{reportId}")] + public async Task>> GetCoordinatesByReportId(int reportId) + { + var coordinates = await _coordinateService.GetByReportIdAsync(reportId); + return Ok(coordinates); + } + + // POST: api/BuildingRatesLACoordinate + [HttpPost] + public async Task> CreateCoordinate(BuildingRatesLACoordinateCreateDto dto) + { + try + { + var createdCoordinate = await _coordinateService.CreateAsync(dto); + return CreatedAtAction(nameof(GetCoordinate), new { id = createdCoordinate.Id }, createdCoordinate); + } + catch (ArgumentException ex) + { + return BadRequest(ex.Message); + } + } + + // PUT: api/BuildingRatesLACoordinate/5 + [HttpPut("{id}")] + public async Task> UpdateCoordinate(int id, BuildingRatesLACoordinateUpdateDto dto) + { + try + { + var updatedCoordinate = await _coordinateService.UpdateAsync(id, dto); + if (updatedCoordinate == null) + { + return NotFound($"Coordinate with ID {id} not found."); + } + + return Ok(updatedCoordinate); + } + catch (ArgumentException ex) + { + return BadRequest(ex.Message); + } + catch (InvalidOperationException ex) + { + return StatusCode(500, ex.Message); + } + } + + // DELETE: api/BuildingRatesLACoordinate/5 + [HttpDelete("{id}")] + public async Task DeleteCoordinate(int id) + { + var result = await _coordinateService.DeleteAsync(id); + if (!result) + { + return NotFound($"Coordinate with ID {id} not found."); + } + + return NoContent(); + } + } + + [Route("api/[controller]")] + [ApiController] + public class SalesEvidenceLACoordinateController : ControllerBase + { + private readonly ISalesEvidenceLACoordinateService _coordinateService; + + public SalesEvidenceLACoordinateController(ISalesEvidenceLACoordinateService coordinateService) + { + _coordinateService = coordinateService; + } + + // GET: api/SalesEvidenceLACoordinate + [HttpGet] + public async Task>> GetCoordinates() + { + var coordinates = await _coordinateService.GetAllAsync(); + return Ok(coordinates); + } + + // GET: api/SalesEvidenceLACoordinate/5 + [HttpGet("{id}")] + public async Task> GetCoordinate(int id) + { + var coordinate = await _coordinateService.GetByIdAsync(id); + + if (coordinate == null) + { + return NotFound($"Coordinate with ID {id} not found."); + } + + return Ok(coordinate); + } + + // GET: api/SalesEvidenceLACoordinate/report/5 + [HttpGet("report/{reportId}")] + public async Task>> GetCoordinatesByReportId(int reportId) + { + var coordinates = await _coordinateService.GetByReportIdAsync(reportId); + return Ok(coordinates); + } + + // POST: api/SalesEvidenceLACoordinate + [HttpPost] + public async Task> CreateCoordinate(SalesEvidenceLACoordinateCreateDto dto) + { + try + { + var createdCoordinate = await _coordinateService.CreateAsync(dto); + return CreatedAtAction(nameof(GetCoordinate), new { id = createdCoordinate.Id }, createdCoordinate); + } + catch (ArgumentException ex) + { + return BadRequest(ex.Message); + } + } + + // PUT: api/SalesEvidenceLACoordinate/5 + [HttpPut("{id}")] + public async Task> UpdateCoordinate(int id, SalesEvidenceLACoordinateUpdateDto dto) + { + try + { + var updatedCoordinate = await _coordinateService.UpdateAsync(id, dto); + if (updatedCoordinate == null) + { + return NotFound($"Coordinate with ID {id} not found."); + } + + return Ok(updatedCoordinate); + } + catch (ArgumentException ex) + { + return BadRequest(ex.Message); + } + catch (InvalidOperationException ex) + { + return StatusCode(500, ex.Message); + } + } + + // DELETE: api/SalesEvidenceLACoordinate/5 + [HttpDelete("{id}")] + public async Task DeleteCoordinate(int id) + { + var result = await _coordinateService.DeleteAsync(id); + if (!result) + { + return NotFound($"Coordinate with ID {id} not found."); + } + + return NoContent(); + } + } + + [Route("api/[controller]")] + [ApiController] + public class RentalEvidenceLACoordinateController : ControllerBase + { + private readonly IRentalEvidenceLACoordinateService _coordinateService; + + public RentalEvidenceLACoordinateController(IRentalEvidenceLACoordinateService coordinateService) + { + _coordinateService = coordinateService; + } + + // GET: api/RentalEvidenceLACoordinate + [HttpGet] + public async Task>> GetCoordinates() + { + var coordinates = await _coordinateService.GetAllAsync(); + return Ok(coordinates); + } + + // GET: api/RentalEvidenceLACoordinate/5 + [HttpGet("{id}")] + public async Task> GetCoordinate(int id) + { + var coordinate = await _coordinateService.GetByIdAsync(id); + + if (coordinate == null) + { + return NotFound($"Coordinate with ID {id} not found."); + } + + return Ok(coordinate); + } + + // GET: api/RentalEvidenceLACoordinate/report/5 + [HttpGet("report/{reportId}")] + public async Task>> GetCoordinatesByReportId(int reportId) + { + var coordinates = await _coordinateService.GetByReportIdAsync(reportId); + return Ok(coordinates); + } + + // POST: api/RentalEvidenceLACoordinate + [HttpPost] + public async Task> CreateCoordinate(RentalEvidenceLACoordinateCreateDto dto) + { + try + { + var createdCoordinate = await _coordinateService.CreateAsync(dto); + return CreatedAtAction(nameof(GetCoordinate), new { id = createdCoordinate.Id }, createdCoordinate); + } + catch (ArgumentException ex) + { + return BadRequest(ex.Message); + } + } + + // PUT: api/RentalEvidenceLACoordinate/5 + [HttpPut("{id}")] + public async Task> UpdateCoordinate(int id, RentalEvidenceLACoordinateUpdateDto dto) + { + try + { + var updatedCoordinate = await _coordinateService.UpdateAsync(id, dto); + if (updatedCoordinate == null) + { + return NotFound($"Coordinate with ID {id} not found."); + } + + return Ok(updatedCoordinate); + } + catch (ArgumentException ex) + { + return BadRequest(ex.Message); + } + catch (InvalidOperationException ex) + { + return StatusCode(500, ex.Message); + } + } + + // DELETE: api/RentalEvidenceLACoordinate/5 + [HttpDelete("{id}")] + public async Task DeleteCoordinate(int id) + { + var result = await _coordinateService.DeleteAsync(id); + if (!result) + { + return NotFound($"Coordinate with ID {id} not found."); + } + + return NoContent(); + } + } +} diff --git a/Data/AppDbContext.cs b/Data/AppDbContext.cs index 4ce3acf..a51a7de 100644 --- a/Data/AppDbContext.cs +++ b/Data/AppDbContext.cs @@ -31,6 +31,11 @@ public AppDbContext(DbContextOptions options) public DbSet LALots { get; set; } + public DbSet PastValuationsLACoordinates { get; set; } + public DbSet BuildingRatesLACoordinates { get; set; } + public DbSet SalesEvidenceLACoordinates { get; set; } + public DbSet RentalEvidenceLACoordinates { get; set; } + public DbSet Reports { get; set; } public DbSet InspectionReports { get; set; } diff --git a/Extensions/RepositoryExtensions.cs b/Extensions/RepositoryExtensions.cs index fb89132..4adf22a 100644 --- a/Extensions/RepositoryExtensions.cs +++ b/Extensions/RepositoryExtensions.cs @@ -26,6 +26,10 @@ public static IServiceCollection AddRepositories(this IServiceCollection service services.AddScoped(); services.AddScoped(); services.AddScoped(); + services.AddScoped(); + services.AddScoped(); + services.AddScoped(); + services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); diff --git a/Extensions/ServiceExtensions.cs b/Extensions/ServiceExtensions.cs index cc48525..1fcf6d3 100644 --- a/Extensions/ServiceExtensions.cs +++ b/Extensions/ServiceExtensions.cs @@ -25,6 +25,10 @@ public static IServiceCollection AddServices(this IServiceCollection services) services.AddScoped(); services.AddScoped(); services.AddScoped(); + services.AddScoped(); + services.AddScoped(); + services.AddScoped(); + services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); diff --git a/Migrations/20250722142137_CreateLACoordinateTables.Designer.cs b/Migrations/20250722142137_CreateLACoordinateTables.Designer.cs new file mode 100644 index 0000000..e18ce9a --- /dev/null +++ b/Migrations/20250722142137_CreateLACoordinateTables.Designer.cs @@ -0,0 +1,2151 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using ValuationBackend.Data; + +#nullable disable + +namespace ValuationBackend.Migrations +{ + [DbContext(typeof(AppDbContext))] + [Migration("20250722142137_CreateLACoordinateTables")] + partial class CreateLACoordinateTables + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "9.0.5") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("DecisionField", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Field") + .IsRequired() + .HasColumnType("text"); + + b.Property("FieldDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("FieldSize") + .HasColumnType("integer"); + + b.Property("FieldType") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("DecisionFields"); + }); + + modelBuilder.Entity("LandAquisitionMasterFile", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Lots") + .HasColumnType("integer"); + + b.Property("MasterFileNo") + .HasColumnType("integer"); + + b.Property("MasterFilesRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanType") + .IsRequired() + .HasColumnType("text"); + + b.Property("RequestingAuthorityReferenceNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Status") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("LandAquisitionMasterFiles"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Asset", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNo") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasColumnType("integer"); + + b.Property("IsRatingCard") + .HasColumnType("boolean"); + + b.Property("Owner") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("RdSt") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("RequestId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Ward") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.HasKey("Id"); + + b.HasIndex("RequestId"); + + b.ToTable("Assets"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetDivision", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Area") + .HasColumnType("numeric"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("LandType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("NewAssetNo") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("AssetDivisions"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetNumberChange", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ChangedDate") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfChange") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasMaxLength(255) + .HasColumnType("character varying(255)"); + + b.Property("FieldSize") + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("FieldType") + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("NewAssetNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("OldAssetNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Reason") + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("AssetNumberChanges"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("ConstructedBy") + .HasColumnType("text"); + + b.Property("Cost") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("FloorAreaSQFT") + .IsRequired() + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("Owner") + .IsRequired() + .HasColumnType("text"); + + b.Property("RatePerSQFT") + .IsRequired() + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("YearOfConstruction") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("BuildingRatesLA"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("BuildingRatesLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccessCategory") + .IsRequired() + .HasColumnType("text"); + + b.Property("AccessCategoryDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquiredExtent") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquiringOfficerSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquisitionName") + .IsRequired() + .HasColumnType("text"); + + b.Property("AssessmentNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("AtLotNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("AtPlanNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryBottom") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryEast") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryNorth") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundarySouth") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryWest") + .IsRequired() + .HasColumnType("text"); + + b.Property("BuildingDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("BuildingInfo") + .IsRequired() + .HasColumnType("text"); + + b.Property("ChiefValuerRepresentativeSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfSection3BA") + .IsRequired() + .HasColumnType("text"); + + b.Property("DatePrepared") + .IsRequired() + .HasColumnType("text"); + + b.Property("DepthOfLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("DescriptionOfLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("DetailsOfBusiness") + .IsRequired() + .HasColumnType("text"); + + b.Property("Frontage") + .IsRequired() + .HasColumnType("text"); + + b.Property("GramasewakaSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("LandUseDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("LandUseType") + .IsRequired() + .HasColumnType("text"); + + b.Property("LevelWithAccess") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("NameOfTheLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("NameOfTheVillage") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionsDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionsInfo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlantationDetails") + .IsRequired() + .HasColumnType("text"); + + b.Property("PpCadLotNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("PpCadNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("RoadName") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("ConditionReports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.DomesticRatingCard", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Access") + .HasColumnType("text"); + + b.Property("Age") + .HasColumnType("integer"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("Condition") + .HasColumnType("text"); + + b.Property("Conveniences") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("Floor") + .HasColumnType("text"); + + b.Property("NewNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("Notes") + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .IsRequired() + .HasColumnType("text"); + + b.Property("ParkingSpace") + .HasColumnType("text"); + + b.Property("Plantations") + .HasColumnType("text"); + + b.Property("PropertySubCategory") + .HasColumnType("text"); + + b.Property("PropertyType") + .HasColumnType("text"); + + b.Property("RentPM") + .HasColumnType("numeric"); + + b.Property("RoadName") + .HasColumnType("text"); + + b.Property("SelectWalls") + .HasColumnType("text"); + + b.Property("SuggestedRate") + .HasColumnType("numeric"); + + b.Property("Terms") + .HasColumnType("text"); + + b.Property("TsBop") + .HasColumnType("text"); + + b.Property("WardNumber") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("DomesticRatingCards"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ImageData", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ImageBase64") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.ToTable("ImageData"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionBuilding", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AgeYears") + .HasColumnType("text"); + + b.Property("BathroomToilet") + .HasColumnType("text"); + + b.Property("BathroomToiletDoorsFittings") + .HasColumnType("text"); + + b.Property("BuildingCategory") + .HasColumnType("text"); + + b.Property("BuildingClass") + .HasColumnType("text"); + + b.Property("BuildingConditions") + .HasColumnType("text"); + + b.Property("BuildingId") + .HasColumnType("text"); + + b.Property("BuildingName") + .HasColumnType("text"); + + b.Property("Ceiling") + .HasColumnType("text"); + + b.Property("Condition") + .HasColumnType("text"); + + b.Property("Conveniences") + .HasColumnType("text"); + + b.Property("Design") + .HasColumnType("text"); + + b.Property("DetailOfBuilding") + .HasColumnType("text"); + + b.Property("Door") + .HasColumnType("text"); + + b.Property("ExpectedLifePeriodYears") + .HasColumnType("text"); + + b.Property("FloorFinisher") + .HasColumnType("text"); + + b.Property("FloorStructure") + .HasColumnType("text"); + + b.Property("FoundationStructure") + .HasColumnType("text"); + + b.Property("HandRail") + .HasColumnType("text"); + + b.Property("InspectionReportId") + .HasColumnType("integer"); + + b.Property("NatureOfConstruction") + .HasColumnType("text"); + + b.Property("NoOfFloorsAboveGround") + .HasColumnType("text") + .HasColumnName("NoOfFloorsAboveGround"); + + b.Property("NoOfFloorsBelowGround") + .HasColumnType("text") + .HasColumnName("NoOfFloorsBelowGround"); + + b.Property("OtherDoors") + .HasColumnType("text"); + + b.Property("PantryCupboard") + .HasColumnType("text"); + + b.Property("ParkingSpace") + .HasColumnType("text"); + + b.Property("RoofFinisher") + .HasColumnType("text"); + + b.Property("RoofFrame") + .HasColumnType("text"); + + b.Property("RoofMaterial") + .HasColumnType("text"); + + b.Property("Services") + .HasColumnType("text"); + + b.Property("Structure") + .HasColumnType("text"); + + b.Property("WallFinisher") + .HasColumnType("text"); + + b.Property("WallStructure") + .HasColumnType("text"); + + b.Property("Window") + .HasColumnType("text"); + + b.Property("WindowProtection") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("InspectionReportId"); + + b.ToTable("InspectionBuildings"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.Property("InspectionReportId") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("InspectionReportId")); + + b.Property("DetailsOfAssestsInventoryItems") + .HasColumnType("text") + .HasColumnName("DetailsOfAssestsInventoryItems"); + + b.Property("DetailsOfBusiness") + .HasColumnType("text"); + + b.Property("District") + .HasColumnType("text"); + + b.Property("DsDivision") + .HasColumnType("text"); + + b.Property("GnDivision") + .HasColumnType("text"); + + b.Property("InspectionDate") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionDetails") + .HasColumnType("text"); + + b.Property("OtherInformation") + .HasColumnType("text"); + + b.Property("Province") + .HasColumnType("text"); + + b.Property("Remark") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("InspectionReportId"); + + b.HasIndex("ReportId"); + + b.ToTable("InspectionReports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LALot", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterFileId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("MasterFileId"); + + b.ToTable("LALots"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMBuildingRates", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNumber") + .HasColumnType("text"); + + b.Property("ConstructedBy") + .HasColumnType("text"); + + b.Property("Cost") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("FloorArea") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerSQFT") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("YearOfConstruction") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMBuildingRates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMPastValuation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("DateOfValuation") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FileNo_GnDivision") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanOfParticulars") + .HasColumnType("text"); + + b.Property("PurposeOfValuation") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMPastValuations"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMRentalEvidence", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNo") + .HasColumnType("text"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("FloorRate") + .HasColumnType("text"); + + b.Property("HeadOfTerms") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePer") + .HasColumnType("text"); + + b.Property("RatePerMonth") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMRentalEvidences"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMSalesEvidence", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNumber") + .HasColumnType("text"); + + b.Property("Consideration") + .HasColumnType("text"); + + b.Property("DeedAttestedNumber") + .HasColumnType("text"); + + b.Property("DeedNumber") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("LandRegistryReferences") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("LotNumber") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("NotaryName") + .HasColumnType("text"); + + b.Property("PlanDate") + .HasColumnType("text"); + + b.Property("PlanNumber") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Road") + .HasColumnType("text"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("Vendor") + .HasColumnType("text"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMSalesEvidences"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LandMiscellaneousMasterFile", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Lots") + .HasColumnType("integer"); + + b.Property("MasterFileNo") + .HasColumnType("integer"); + + b.Property("PlanNo") + .HasColumnType("text"); + + b.Property("PlanType") + .HasColumnType("text"); + + b.Property("RequestingAuthorityReferenceNo") + .HasColumnType("text"); + + b.Property("Status") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("LandMiscellaneousMasterFiles"); + }); + + modelBuilder.Entity("ValuationBackend.Models.MasterDataItem", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Category") + .IsRequired() + .HasColumnType("text"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("MasterDataItems"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PasswordReset", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Email") + .IsRequired() + .HasColumnType("text"); + + b.Property("ExpiresAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Otp") + .IsRequired() + .HasColumnType("text"); + + b.Property("Used") + .HasColumnType("boolean"); + + b.HasKey("Id"); + + b.ToTable("PasswordResets"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfValuation") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FileNoGNDivision") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanOfParticulars") + .HasColumnType("text"); + + b.Property("PurposeOfValuation") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("PastValuationsLA"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("PastValuationsLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PropertyCategory", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Name") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("PropertyCategories"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RatingRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("LocalAuthority") + .IsRequired() + .HasColumnType("text"); + + b.Property("RatingReferenceNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("RequestType") + .IsRequired() + .HasColumnType("text"); + + b.Property("Status") + .IsRequired() + .HasColumnType("text"); + + b.Property("YearOfRevision") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.ToTable("RatingRequests"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Reconciliation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("NewNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("ObsoleteNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("StreetName") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("Reconciliations"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNo") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("FloorRateSQFT") + .HasColumnType("text"); + + b.Property("HeadOfTerms") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerMonth") + .HasColumnType("text"); + + b.Property("RatePerSqft") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("RentalEvidencesLA", (string)null); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("RentalEvidenceLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Report", b => + { + b.Property("ReportId") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("ReportId")); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportType") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Timestamp") + .HasColumnType("timestamp with time zone"); + + b.HasKey("ReportId"); + + b.ToTable("Reports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Request", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("LocalAuthority") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RatingReferenceNo") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RequestTypeId") + .HasColumnType("integer"); + + b.Property("Status") + .HasColumnType("boolean"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("YearOfRevision") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("RequestTypeId"); + + b.ToTable("Requests"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RequestType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Code") + .IsRequired() + .HasMaxLength(2) + .HasColumnType("character varying(2)"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("RequestTypes"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNumber") + .HasColumnType("text"); + + b.Property("Consideration") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DeedAttestedNumber") + .HasColumnType("text"); + + b.Property("DeedNumber") + .HasColumnType("text"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FloorRate") + .HasColumnType("text"); + + b.Property("LandRegistryReferences") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("LotNumber") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("NotaryName") + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("PlanDate") + .HasColumnType("text"); + + b.Property("PlanNumber") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Road") + .HasColumnType("text"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Vendor") + .HasColumnType("text"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("SalesEvidencesLA", (string)null); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("SalesEvidenceLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssignedDivision") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpEmail") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpId") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpName") + .IsRequired() + .HasColumnType("text"); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("bytea"); + + b.Property("PasswordSalt") + .IsRequired() + .HasColumnType("bytea"); + + b.Property("Position") + .IsRequired() + .HasColumnType("text"); + + b.Property("ProfilePicture") + .HasColumnType("bytea"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("ValuationBackend.Models.UserTask", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssignedDate") + .HasColumnType("timestamp with time zone"); + + b.Property("IsCompleted") + .HasColumnType("boolean"); + + b.Property("LandAcquisitionId") + .HasColumnType("integer"); + + b.Property("LandMiscellaneousId") + .HasColumnType("integer"); + + b.Property("ReferenceNumber") + .HasColumnType("text"); + + b.Property("RequestId") + .HasColumnType("integer"); + + b.Property("TaskType") + .IsRequired() + .HasColumnType("text"); + + b.Property("UserId") + .HasColumnType("integer"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.Property("WorkItemDescription") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("UserId"); + + b.ToTable("UserTasks"); + }); + + modelBuilder.Entity("ValuationBackend.Models.iteration2.RatingCards.OfficesRatingCard", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccessType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("Age") + .HasColumnType("integer"); + + b.Property("AssessmentNumber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("BuildingSelection") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CeilingHeight") + .HasColumnType("decimal(18,2)"); + + b.Property("Condition") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Conveniences") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("CreatedBy") + .IsRequired() + .HasColumnType("text"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("FloorNumber") + .HasColumnType("integer"); + + b.Property("FloorType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("LocalAuthority") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("LocalAuthorityCode") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("NewNumber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Notes") + .IsRequired() + .HasMaxLength(2000) + .HasColumnType("character varying(2000)"); + + b.Property("ObsoleteNumber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Occupier") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("OfficeGrade") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("OfficeSuite") + .IsRequired() + .HasMaxLength(1000) + .HasColumnType("character varying(1000)"); + + b.Property("Owner") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("ParkingSpace") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("PropertySubCategory") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("PropertyType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RentPM") + .HasColumnType("decimal(18,2)"); + + b.Property("RoadName") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("SuggestedRate") + .HasColumnType("decimal(18,2)"); + + b.Property("Terms") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("TotalArea") + .HasColumnType("decimal(18,2)"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("UpdatedBy") + .HasColumnType("text"); + + b.Property("UsableFloorArea") + .HasColumnType("decimal(18,2)"); + + b.Property("WallType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("WardNumber") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("OfficesRatingCards"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Asset", b => + { + b.HasOne("ValuationBackend.Models.Request", "Request") + .WithMany() + .HasForeignKey("RequestId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Request"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetDivision", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLACoordinate", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.DomesticRatingCard", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionBuilding", b => + { + b.HasOne("ValuationBackend.Models.InspectionReport", "InspectionReport") + .WithMany("Buildings") + .HasForeignKey("InspectionReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("InspectionReport"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LALot", b => + { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("MasterFile"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMBuildingRates", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMPastValuation", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMRentalEvidence", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMSalesEvidence", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLACoordinate", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Reconciliation", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLACoordinate", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Request", b => + { + b.HasOne("ValuationBackend.Models.RequestType", "RequestType") + .WithMany() + .HasForeignKey("RequestTypeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("RequestType"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLACoordinate", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.UserTask", b => + { + b.HasOne("ValuationBackend.Models.User", "User") + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("User"); + }); + + modelBuilder.Entity("ValuationBackend.Models.iteration2.RatingCards.OfficesRatingCard", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.Navigation("Buildings"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/Migrations/20250722142137_CreateLACoordinateTables.cs b/Migrations/20250722142137_CreateLACoordinateTables.cs new file mode 100644 index 0000000..459f64e --- /dev/null +++ b/Migrations/20250722142137_CreateLACoordinateTables.cs @@ -0,0 +1,140 @@ +using System; +using Microsoft.EntityFrameworkCore.Migrations; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; + +#nullable disable + +namespace ValuationBackend.Migrations +{ + /// + public partial class CreateLACoordinateTables : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.CreateTable( + name: "BuildingRatesLACoordinates", + columns: table => new + { + Id = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + ReportId = table.Column(type: "integer", nullable: false), + Coordinates = table.Column(type: "text", nullable: false), + CreatedAt = table.Column(type: "timestamp with time zone", nullable: false), + UpdatedAt = table.Column(type: "timestamp with time zone", nullable: true) + }, + constraints: table => + { + table.PrimaryKey("PK_BuildingRatesLACoordinates", x => x.Id); + table.ForeignKey( + name: "FK_BuildingRatesLACoordinates_Reports_ReportId", + column: x => x.ReportId, + principalTable: "Reports", + principalColumn: "ReportId", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateTable( + name: "PastValuationsLACoordinates", + columns: table => new + { + Id = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + ReportId = table.Column(type: "integer", nullable: false), + Coordinates = table.Column(type: "text", nullable: false), + CreatedAt = table.Column(type: "timestamp with time zone", nullable: false), + UpdatedAt = table.Column(type: "timestamp with time zone", nullable: true) + }, + constraints: table => + { + table.PrimaryKey("PK_PastValuationsLACoordinates", x => x.Id); + table.ForeignKey( + name: "FK_PastValuationsLACoordinates_Reports_ReportId", + column: x => x.ReportId, + principalTable: "Reports", + principalColumn: "ReportId", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateTable( + name: "RentalEvidenceLACoordinates", + columns: table => new + { + Id = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + ReportId = table.Column(type: "integer", nullable: false), + Coordinates = table.Column(type: "text", nullable: false), + CreatedAt = table.Column(type: "timestamp with time zone", nullable: false), + UpdatedAt = table.Column(type: "timestamp with time zone", nullable: true) + }, + constraints: table => + { + table.PrimaryKey("PK_RentalEvidenceLACoordinates", x => x.Id); + table.ForeignKey( + name: "FK_RentalEvidenceLACoordinates_Reports_ReportId", + column: x => x.ReportId, + principalTable: "Reports", + principalColumn: "ReportId", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateTable( + name: "SalesEvidenceLACoordinates", + columns: table => new + { + Id = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + ReportId = table.Column(type: "integer", nullable: false), + Coordinates = table.Column(type: "text", nullable: false), + CreatedAt = table.Column(type: "timestamp with time zone", nullable: false), + UpdatedAt = table.Column(type: "timestamp with time zone", nullable: true) + }, + constraints: table => + { + table.PrimaryKey("PK_SalesEvidenceLACoordinates", x => x.Id); + table.ForeignKey( + name: "FK_SalesEvidenceLACoordinates_Reports_ReportId", + column: x => x.ReportId, + principalTable: "Reports", + principalColumn: "ReportId", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateIndex( + name: "IX_BuildingRatesLACoordinates_ReportId", + table: "BuildingRatesLACoordinates", + column: "ReportId"); + + migrationBuilder.CreateIndex( + name: "IX_PastValuationsLACoordinates_ReportId", + table: "PastValuationsLACoordinates", + column: "ReportId"); + + migrationBuilder.CreateIndex( + name: "IX_RentalEvidenceLACoordinates_ReportId", + table: "RentalEvidenceLACoordinates", + column: "ReportId"); + + migrationBuilder.CreateIndex( + name: "IX_SalesEvidenceLACoordinates_ReportId", + table: "SalesEvidenceLACoordinates", + column: "ReportId"); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable( + name: "BuildingRatesLACoordinates"); + + migrationBuilder.DropTable( + name: "PastValuationsLACoordinates"); + + migrationBuilder.DropTable( + name: "RentalEvidenceLACoordinates"); + + migrationBuilder.DropTable( + name: "SalesEvidenceLACoordinates"); + } + } +} diff --git a/Migrations/AppDbContextModelSnapshot.cs b/Migrations/AppDbContextModelSnapshot.cs index 52fac4e..bb53652 100644 --- a/Migrations/AppDbContextModelSnapshot.cs +++ b/Migrations/AppDbContextModelSnapshot.cs @@ -289,6 +289,34 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.ToTable("BuildingRatesLA"); }); + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("BuildingRatesLACoordinates"); + }); + modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => { b.Property("Id") @@ -1164,6 +1192,34 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.ToTable("PastValuationsLA"); }); + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("PastValuationsLACoordinates"); + }); + modelBuilder.Entity("ValuationBackend.Models.PropertyCategory", b => { b.Property("Id") @@ -1318,6 +1374,34 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.ToTable("RentalEvidencesLA", (string)null); }); + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("RentalEvidenceLACoordinates"); + }); + modelBuilder.Entity("ValuationBackend.Models.Report", b => { b.Property("ReportId") @@ -1510,6 +1594,34 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.ToTable("SalesEvidencesLA", (string)null); }); + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("SalesEvidenceLACoordinates"); + }); + modelBuilder.Entity("ValuationBackend.Models.User", b => { b.Property("Id") @@ -1806,6 +1918,17 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Navigation("Report"); }); + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLACoordinate", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => { b.HasOne("ValuationBackend.Models.Report", "Report") @@ -1916,6 +2039,17 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Navigation("Report"); }); + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLACoordinate", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + modelBuilder.Entity("ValuationBackend.Models.Reconciliation", b => { b.HasOne("ValuationBackend.Models.Asset", "Asset") @@ -1938,6 +2072,17 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Navigation("Report"); }); + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLACoordinate", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + modelBuilder.Entity("ValuationBackend.Models.Request", b => { b.HasOne("ValuationBackend.Models.RequestType", "RequestType") @@ -1960,6 +2105,17 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Navigation("Report"); }); + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLACoordinate", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + modelBuilder.Entity("ValuationBackend.Models.UserTask", b => { b.HasOne("ValuationBackend.Models.User", "User") diff --git a/Models/DTOs/LACoordinateDtos.cs b/Models/DTOs/LACoordinateDtos.cs new file mode 100644 index 0000000..db96441 --- /dev/null +++ b/Models/DTOs/LACoordinateDtos.cs @@ -0,0 +1,124 @@ +using System.ComponentModel.DataAnnotations; + +namespace ValuationBackend.Models.DTOs +{ + // PastValuationsLA Coordinate DTOs + public class PastValuationsLACoordinateCreateDto + { + [Required] + public int ReportId { get; set; } + + [Required] + [MinLength(1, ErrorMessage = "Coordinates cannot be empty")] + public string Coordinates { get; set; } = string.Empty; + } + + public class PastValuationsLACoordinateUpdateDto + { + [Required] + public int ReportId { get; set; } + + [Required] + [MinLength(1, ErrorMessage = "Coordinates cannot be empty")] + public string Coordinates { get; set; } = string.Empty; + } + + public class PastValuationsLACoordinateResponseDto + { + public int Id { get; set; } + public int ReportId { get; set; } + public string Coordinates { get; set; } = string.Empty; + public DateTime CreatedAt { get; set; } + public DateTime? UpdatedAt { get; set; } + } + + // BuildingRatesLA Coordinate DTOs + public class BuildingRatesLACoordinateCreateDto + { + [Required] + public int ReportId { get; set; } + + [Required] + [MinLength(1, ErrorMessage = "Coordinates cannot be empty")] + public string Coordinates { get; set; } = string.Empty; + } + + public class BuildingRatesLACoordinateUpdateDto + { + [Required] + public int ReportId { get; set; } + + [Required] + [MinLength(1, ErrorMessage = "Coordinates cannot be empty")] + public string Coordinates { get; set; } = string.Empty; + } + + public class BuildingRatesLACoordinateResponseDto + { + public int Id { get; set; } + public int ReportId { get; set; } + public string Coordinates { get; set; } = string.Empty; + public DateTime CreatedAt { get; set; } + public DateTime? UpdatedAt { get; set; } + } + + // SalesEvidenceLA Coordinate DTOs + public class SalesEvidenceLACoordinateCreateDto + { + [Required] + public int ReportId { get; set; } + + [Required] + [MinLength(1, ErrorMessage = "Coordinates cannot be empty")] + public string Coordinates { get; set; } = string.Empty; + } + + public class SalesEvidenceLACoordinateUpdateDto + { + [Required] + public int ReportId { get; set; } + + [Required] + [MinLength(1, ErrorMessage = "Coordinates cannot be empty")] + public string Coordinates { get; set; } = string.Empty; + } + + public class SalesEvidenceLACoordinateResponseDto + { + public int Id { get; set; } + public int ReportId { get; set; } + public string Coordinates { get; set; } = string.Empty; + public DateTime CreatedAt { get; set; } + public DateTime? UpdatedAt { get; set; } + } + + // RentalEvidenceLA Coordinate DTOs + public class RentalEvidenceLACoordinateCreateDto + { + [Required] + public int ReportId { get; set; } + + [Required] + [MinLength(1, ErrorMessage = "Coordinates cannot be empty")] + public string Coordinates { get; set; } = string.Empty; + } + + public class RentalEvidenceLACoordinateUpdateDto + { + [Required] + public int ReportId { get; set; } + + [Required] + [MinLength(1, ErrorMessage = "Coordinates cannot be empty")] + public string Coordinates { get; set; } = string.Empty; + } + + public class RentalEvidenceLACoordinateResponseDto + { + public int Id { get; set; } + public int ReportId { get; set; } + public string Coordinates { get; set; } = string.Empty; + public DateTime CreatedAt { get; set; } + public DateTime? UpdatedAt { get; set; } + } +} diff --git a/Models/LACoordinates.cs b/Models/LACoordinates.cs new file mode 100644 index 0000000..aad8a7a --- /dev/null +++ b/Models/LACoordinates.cs @@ -0,0 +1,93 @@ +using System.ComponentModel.DataAnnotations; +using System.ComponentModel.DataAnnotations.Schema; + +namespace ValuationBackend.Models +{ + public class PastValuationsLACoordinate + { + [Key] + [DatabaseGenerated(DatabaseGeneratedOption.Identity)] + public int Id { get; set; } // Primary Key (auto increment) + + // Foreign key to PastValuationsLA table via ReportId + [Required] + public int ReportId { get; set; } + + [ForeignKey("ReportId")] + public virtual Report Report { get; set; } + + // Map coordinates from frontend (stored as JSON string) + [Required] + public string Coordinates { get; set; } = string.Empty; + + // Optional: Additional metadata + public DateTime CreatedAt { get; set; } = DateTime.UtcNow; + public DateTime? UpdatedAt { get; set; } + } + + public class BuildingRatesLACoordinate + { + [Key] + [DatabaseGenerated(DatabaseGeneratedOption.Identity)] + public int Id { get; set; } // Primary Key (auto increment) + + // Foreign key to BuildingRatesLA table via ReportId + [Required] + public int ReportId { get; set; } + + [ForeignKey("ReportId")] + public virtual Report Report { get; set; } + + // Map coordinates from frontend (stored as JSON string) + [Required] + public string Coordinates { get; set; } = string.Empty; + + // Optional: Additional metadata + public DateTime CreatedAt { get; set; } = DateTime.UtcNow; + public DateTime? UpdatedAt { get; set; } + } + + public class SalesEvidenceLACoordinate + { + [Key] + [DatabaseGenerated(DatabaseGeneratedOption.Identity)] + public int Id { get; set; } // Primary Key (auto increment) + + // Foreign key to SalesEvidenceLA table via ReportId + [Required] + public int ReportId { get; set; } + + [ForeignKey("ReportId")] + public virtual Report Report { get; set; } + + // Map coordinates from frontend (stored as JSON string) + [Required] + public string Coordinates { get; set; } = string.Empty; + + // Optional: Additional metadata + public DateTime CreatedAt { get; set; } = DateTime.UtcNow; + public DateTime? UpdatedAt { get; set; } + } + + public class RentalEvidenceLACoordinate + { + [Key] + [DatabaseGenerated(DatabaseGeneratedOption.Identity)] + public int Id { get; set; } // Primary Key (auto increment) + + // Foreign key to RentalEvidenceLA table via ReportId + [Required] + public int ReportId { get; set; } + + [ForeignKey("ReportId")] + public virtual Report Report { get; set; } + + // Map coordinates from frontend (stored as JSON string) + [Required] + public string Coordinates { get; set; } = string.Empty; + + // Optional: Additional metadata + public DateTime CreatedAt { get; set; } = DateTime.UtcNow; + public DateTime? UpdatedAt { get; set; } + } +} diff --git a/Profiles/LACoordinateProfiles.cs b/Profiles/LACoordinateProfiles.cs new file mode 100644 index 0000000..1afa86e --- /dev/null +++ b/Profiles/LACoordinateProfiles.cs @@ -0,0 +1,64 @@ +using AutoMapper; +using ValuationBackend.Models; +using ValuationBackend.Models.DTOs; + +namespace ValuationBackend.Profiles +{ + public class LACoordinateProfiles : Profile + { + public LACoordinateProfiles() + { + // PastValuationsLA Coordinate Mappings + CreateMap(); + CreateMap() + .ForMember(dest => dest.Id, opt => opt.Ignore()) + .ForMember(dest => dest.CreatedAt, opt => opt.Ignore()) + .ForMember(dest => dest.UpdatedAt, opt => opt.Ignore()) + .ForMember(dest => dest.Report, opt => opt.Ignore()); + CreateMap() + .ForMember(dest => dest.Id, opt => opt.Ignore()) + .ForMember(dest => dest.CreatedAt, opt => opt.Ignore()) + .ForMember(dest => dest.UpdatedAt, opt => opt.Ignore()) + .ForMember(dest => dest.Report, opt => opt.Ignore()); + + // BuildingRatesLA Coordinate Mappings + CreateMap(); + CreateMap() + .ForMember(dest => dest.Id, opt => opt.Ignore()) + .ForMember(dest => dest.CreatedAt, opt => opt.Ignore()) + .ForMember(dest => dest.UpdatedAt, opt => opt.Ignore()) + .ForMember(dest => dest.Report, opt => opt.Ignore()); + CreateMap() + .ForMember(dest => dest.Id, opt => opt.Ignore()) + .ForMember(dest => dest.CreatedAt, opt => opt.Ignore()) + .ForMember(dest => dest.UpdatedAt, opt => opt.Ignore()) + .ForMember(dest => dest.Report, opt => opt.Ignore()); + + // SalesEvidenceLA Coordinate Mappings + CreateMap(); + CreateMap() + .ForMember(dest => dest.Id, opt => opt.Ignore()) + .ForMember(dest => dest.CreatedAt, opt => opt.Ignore()) + .ForMember(dest => dest.UpdatedAt, opt => opt.Ignore()) + .ForMember(dest => dest.Report, opt => opt.Ignore()); + CreateMap() + .ForMember(dest => dest.Id, opt => opt.Ignore()) + .ForMember(dest => dest.CreatedAt, opt => opt.Ignore()) + .ForMember(dest => dest.UpdatedAt, opt => opt.Ignore()) + .ForMember(dest => dest.Report, opt => opt.Ignore()); + + // RentalEvidenceLA Coordinate Mappings + CreateMap(); + CreateMap() + .ForMember(dest => dest.Id, opt => opt.Ignore()) + .ForMember(dest => dest.CreatedAt, opt => opt.Ignore()) + .ForMember(dest => dest.UpdatedAt, opt => opt.Ignore()) + .ForMember(dest => dest.Report, opt => opt.Ignore()); + CreateMap() + .ForMember(dest => dest.Id, opt => opt.Ignore()) + .ForMember(dest => dest.CreatedAt, opt => opt.Ignore()) + .ForMember(dest => dest.UpdatedAt, opt => opt.Ignore()) + .ForMember(dest => dest.Report, opt => opt.Ignore()); + } + } +} diff --git a/repositories/ILACoordinateRepositories.cs b/repositories/ILACoordinateRepositories.cs new file mode 100644 index 0000000..4707a32 --- /dev/null +++ b/repositories/ILACoordinateRepositories.cs @@ -0,0 +1,58 @@ +using System.Collections.Generic; +using System.Threading.Tasks; +using ValuationBackend.Models; + +namespace ValuationBackend.Repositories +{ + // PastValuationsLA Coordinate Repository + public interface IPastValuationsLACoordinateRepository + { + Task> GetAllAsync(); + Task GetByIdAsync(int id); + Task> GetByReportIdAsync(int reportId); + Task CreateAsync(PastValuationsLACoordinate coordinate); + Task UpdateAsync(PastValuationsLACoordinate coordinate); + Task DeleteAsync(int id); + Task ExistsAsync(int id); + Task ReportExistsAsync(int reportId); + } + + // BuildingRatesLA Coordinate Repository + public interface IBuildingRatesLACoordinateRepository + { + Task> GetAllAsync(); + Task GetByIdAsync(int id); + Task> GetByReportIdAsync(int reportId); + Task CreateAsync(BuildingRatesLACoordinate coordinate); + Task UpdateAsync(BuildingRatesLACoordinate coordinate); + Task DeleteAsync(int id); + Task ExistsAsync(int id); + Task ReportExistsAsync(int reportId); + } + + // SalesEvidenceLA Coordinate Repository + public interface ISalesEvidenceLACoordinateRepository + { + Task> GetAllAsync(); + Task GetByIdAsync(int id); + Task> GetByReportIdAsync(int reportId); + Task CreateAsync(SalesEvidenceLACoordinate coordinate); + Task UpdateAsync(SalesEvidenceLACoordinate coordinate); + Task DeleteAsync(int id); + Task ExistsAsync(int id); + Task ReportExistsAsync(int reportId); + } + + // RentalEvidenceLA Coordinate Repository + public interface IRentalEvidenceLACoordinateRepository + { + Task> GetAllAsync(); + Task GetByIdAsync(int id); + Task> GetByReportIdAsync(int reportId); + Task CreateAsync(RentalEvidenceLACoordinate coordinate); + Task UpdateAsync(RentalEvidenceLACoordinate coordinate); + Task DeleteAsync(int id); + Task ExistsAsync(int id); + Task ReportExistsAsync(int reportId); + } +} diff --git a/repositories/LACoordinateRepositories.cs b/repositories/LACoordinateRepositories.cs new file mode 100644 index 0000000..d153ff2 --- /dev/null +++ b/repositories/LACoordinateRepositories.cs @@ -0,0 +1,345 @@ +using Microsoft.EntityFrameworkCore; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using ValuationBackend.Data; +using ValuationBackend.Models; + +namespace ValuationBackend.Repositories +{ + // PastValuationsLA Coordinate Repository + public class PastValuationsLACoordinateRepository : IPastValuationsLACoordinateRepository + { + private readonly AppDbContext _context; + + public PastValuationsLACoordinateRepository(AppDbContext context) + { + _context = context; + } + + public async Task> GetAllAsync() + { + return await _context.PastValuationsLACoordinates + .Include(c => c.Report) + .ToListAsync(); + } + + public async Task GetByIdAsync(int id) + { + return await _context.PastValuationsLACoordinates + .Include(c => c.Report) + .FirstOrDefaultAsync(c => c.Id == id); + } + + public async Task> GetByReportIdAsync(int reportId) + { + return await _context.PastValuationsLACoordinates + .Include(c => c.Report) + .Where(c => c.ReportId == reportId) + .ToListAsync(); + } + + public async Task CreateAsync(PastValuationsLACoordinate coordinate) + { + coordinate.CreatedAt = DateTime.UtcNow; + _context.PastValuationsLACoordinates.Add(coordinate); + await _context.SaveChangesAsync(); + + await _context.Entry(coordinate) + .Reference(c => c.Report) + .LoadAsync(); + + return coordinate; + } + + public async Task UpdateAsync(PastValuationsLACoordinate coordinate) + { + try + { + coordinate.UpdatedAt = DateTime.UtcNow; + _context.Entry(coordinate).State = EntityState.Modified; + await _context.SaveChangesAsync(); + return true; + } + catch (DbUpdateConcurrencyException) + { + return false; + } + } + + public async Task DeleteAsync(int id) + { + var coordinate = await _context.PastValuationsLACoordinates.FindAsync(id); + if (coordinate == null) + { + return false; + } + + _context.PastValuationsLACoordinates.Remove(coordinate); + await _context.SaveChangesAsync(); + return true; + } + + public async Task ExistsAsync(int id) + { + return await _context.PastValuationsLACoordinates.AnyAsync(c => c.Id == id); + } + + public async Task ReportExistsAsync(int reportId) + { + return await _context.Reports.AnyAsync(r => r.ReportId == reportId); + } + } + + // BuildingRatesLA Coordinate Repository + public class BuildingRatesLACoordinateRepository : IBuildingRatesLACoordinateRepository + { + private readonly AppDbContext _context; + + public BuildingRatesLACoordinateRepository(AppDbContext context) + { + _context = context; + } + + public async Task> GetAllAsync() + { + return await _context.BuildingRatesLACoordinates + .Include(c => c.Report) + .ToListAsync(); + } + + public async Task GetByIdAsync(int id) + { + return await _context.BuildingRatesLACoordinates + .Include(c => c.Report) + .FirstOrDefaultAsync(c => c.Id == id); + } + + public async Task> GetByReportIdAsync(int reportId) + { + return await _context.BuildingRatesLACoordinates + .Include(c => c.Report) + .Where(c => c.ReportId == reportId) + .ToListAsync(); + } + + public async Task CreateAsync(BuildingRatesLACoordinate coordinate) + { + coordinate.CreatedAt = DateTime.UtcNow; + _context.BuildingRatesLACoordinates.Add(coordinate); + await _context.SaveChangesAsync(); + + await _context.Entry(coordinate) + .Reference(c => c.Report) + .LoadAsync(); + + return coordinate; + } + + public async Task UpdateAsync(BuildingRatesLACoordinate coordinate) + { + try + { + coordinate.UpdatedAt = DateTime.UtcNow; + _context.Entry(coordinate).State = EntityState.Modified; + await _context.SaveChangesAsync(); + return true; + } + catch (DbUpdateConcurrencyException) + { + return false; + } + } + + public async Task DeleteAsync(int id) + { + var coordinate = await _context.BuildingRatesLACoordinates.FindAsync(id); + if (coordinate == null) + { + return false; + } + + _context.BuildingRatesLACoordinates.Remove(coordinate); + await _context.SaveChangesAsync(); + return true; + } + + public async Task ExistsAsync(int id) + { + return await _context.BuildingRatesLACoordinates.AnyAsync(c => c.Id == id); + } + + public async Task ReportExistsAsync(int reportId) + { + return await _context.Reports.AnyAsync(r => r.ReportId == reportId); + } + } + + // SalesEvidenceLA Coordinate Repository + public class SalesEvidenceLACoordinateRepository : ISalesEvidenceLACoordinateRepository + { + private readonly AppDbContext _context; + + public SalesEvidenceLACoordinateRepository(AppDbContext context) + { + _context = context; + } + + public async Task> GetAllAsync() + { + return await _context.SalesEvidenceLACoordinates + .Include(c => c.Report) + .ToListAsync(); + } + + public async Task GetByIdAsync(int id) + { + return await _context.SalesEvidenceLACoordinates + .Include(c => c.Report) + .FirstOrDefaultAsync(c => c.Id == id); + } + + public async Task> GetByReportIdAsync(int reportId) + { + return await _context.SalesEvidenceLACoordinates + .Include(c => c.Report) + .Where(c => c.ReportId == reportId) + .ToListAsync(); + } + + public async Task CreateAsync(SalesEvidenceLACoordinate coordinate) + { + coordinate.CreatedAt = DateTime.UtcNow; + _context.SalesEvidenceLACoordinates.Add(coordinate); + await _context.SaveChangesAsync(); + + await _context.Entry(coordinate) + .Reference(c => c.Report) + .LoadAsync(); + + return coordinate; + } + + public async Task UpdateAsync(SalesEvidenceLACoordinate coordinate) + { + try + { + coordinate.UpdatedAt = DateTime.UtcNow; + _context.Entry(coordinate).State = EntityState.Modified; + await _context.SaveChangesAsync(); + return true; + } + catch (DbUpdateConcurrencyException) + { + return false; + } + } + + public async Task DeleteAsync(int id) + { + var coordinate = await _context.SalesEvidenceLACoordinates.FindAsync(id); + if (coordinate == null) + { + return false; + } + + _context.SalesEvidenceLACoordinates.Remove(coordinate); + await _context.SaveChangesAsync(); + return true; + } + + public async Task ExistsAsync(int id) + { + return await _context.SalesEvidenceLACoordinates.AnyAsync(c => c.Id == id); + } + + public async Task ReportExistsAsync(int reportId) + { + return await _context.Reports.AnyAsync(r => r.ReportId == reportId); + } + } + + // RentalEvidenceLA Coordinate Repository + public class RentalEvidenceLACoordinateRepository : IRentalEvidenceLACoordinateRepository + { + private readonly AppDbContext _context; + + public RentalEvidenceLACoordinateRepository(AppDbContext context) + { + _context = context; + } + + public async Task> GetAllAsync() + { + return await _context.RentalEvidenceLACoordinates + .Include(c => c.Report) + .ToListAsync(); + } + + public async Task GetByIdAsync(int id) + { + return await _context.RentalEvidenceLACoordinates + .Include(c => c.Report) + .FirstOrDefaultAsync(c => c.Id == id); + } + + public async Task> GetByReportIdAsync(int reportId) + { + return await _context.RentalEvidenceLACoordinates + .Include(c => c.Report) + .Where(c => c.ReportId == reportId) + .ToListAsync(); + } + + public async Task CreateAsync(RentalEvidenceLACoordinate coordinate) + { + coordinate.CreatedAt = DateTime.UtcNow; + _context.RentalEvidenceLACoordinates.Add(coordinate); + await _context.SaveChangesAsync(); + + await _context.Entry(coordinate) + .Reference(c => c.Report) + .LoadAsync(); + + return coordinate; + } + + public async Task UpdateAsync(RentalEvidenceLACoordinate coordinate) + { + try + { + coordinate.UpdatedAt = DateTime.UtcNow; + _context.Entry(coordinate).State = EntityState.Modified; + await _context.SaveChangesAsync(); + return true; + } + catch (DbUpdateConcurrencyException) + { + return false; + } + } + + public async Task DeleteAsync(int id) + { + var coordinate = await _context.RentalEvidenceLACoordinates.FindAsync(id); + if (coordinate == null) + { + return false; + } + + _context.RentalEvidenceLACoordinates.Remove(coordinate); + await _context.SaveChangesAsync(); + return true; + } + + public async Task ExistsAsync(int id) + { + return await _context.RentalEvidenceLACoordinates.AnyAsync(c => c.Id == id); + } + + public async Task ReportExistsAsync(int reportId) + { + return await _context.Reports.AnyAsync(r => r.ReportId == reportId); + } + } +} diff --git a/services/ILACoordinateServices.cs b/services/ILACoordinateServices.cs new file mode 100644 index 0000000..ed142c6 --- /dev/null +++ b/services/ILACoordinateServices.cs @@ -0,0 +1,50 @@ +using System.Collections.Generic; +using System.Threading.Tasks; +using ValuationBackend.Models.DTOs; + +namespace ValuationBackend.Services +{ + // PastValuationsLA Coordinate Service + public interface IPastValuationsLACoordinateService + { + Task> GetAllAsync(); + Task GetByIdAsync(int id); + Task> GetByReportIdAsync(int reportId); + Task CreateAsync(PastValuationsLACoordinateCreateDto dto); + Task UpdateAsync(int id, PastValuationsLACoordinateUpdateDto dto); + Task DeleteAsync(int id); + } + + // BuildingRatesLA Coordinate Service + public interface IBuildingRatesLACoordinateService + { + Task> GetAllAsync(); + Task GetByIdAsync(int id); + Task> GetByReportIdAsync(int reportId); + Task CreateAsync(BuildingRatesLACoordinateCreateDto dto); + Task UpdateAsync(int id, BuildingRatesLACoordinateUpdateDto dto); + Task DeleteAsync(int id); + } + + // SalesEvidenceLA Coordinate Service + public interface ISalesEvidenceLACoordinateService + { + Task> GetAllAsync(); + Task GetByIdAsync(int id); + Task> GetByReportIdAsync(int reportId); + Task CreateAsync(SalesEvidenceLACoordinateCreateDto dto); + Task UpdateAsync(int id, SalesEvidenceLACoordinateUpdateDto dto); + Task DeleteAsync(int id); + } + + // RentalEvidenceLA Coordinate Service + public interface IRentalEvidenceLACoordinateService + { + Task> GetAllAsync(); + Task GetByIdAsync(int id); + Task> GetByReportIdAsync(int reportId); + Task CreateAsync(RentalEvidenceLACoordinateCreateDto dto); + Task UpdateAsync(int id, RentalEvidenceLACoordinateUpdateDto dto); + Task DeleteAsync(int id); + } +} diff --git a/services/LACoordinateServices.cs b/services/LACoordinateServices.cs new file mode 100644 index 0000000..ab8c880 --- /dev/null +++ b/services/LACoordinateServices.cs @@ -0,0 +1,329 @@ +using AutoMapper; +using System.Collections.Generic; +using System.Threading.Tasks; +using ValuationBackend.Models; +using ValuationBackend.Models.DTOs; +using ValuationBackend.Repositories; + +namespace ValuationBackend.Services +{ + // PastValuationsLA Coordinate Service + public class PastValuationsLACoordinateService : IPastValuationsLACoordinateService + { + private readonly IPastValuationsLACoordinateRepository _repository; + private readonly IMapper _mapper; + + public PastValuationsLACoordinateService(IPastValuationsLACoordinateRepository repository, IMapper mapper) + { + _repository = repository; + _mapper = mapper; + } + + public async Task> GetAllAsync() + { + var coordinates = await _repository.GetAllAsync(); + return _mapper.Map>(coordinates); + } + + public async Task GetByIdAsync(int id) + { + var coordinate = await _repository.GetByIdAsync(id); + if (coordinate == null) + { + return null; + } + + return _mapper.Map(coordinate); + } + + public async Task> GetByReportIdAsync(int reportId) + { + var coordinates = await _repository.GetByReportIdAsync(reportId); + return _mapper.Map>(coordinates); + } + + public async Task CreateAsync(PastValuationsLACoordinateCreateDto dto) + { + var reportExists = await _repository.ReportExistsAsync(dto.ReportId); + if (!reportExists) + { + throw new ArgumentException($"Report with ID {dto.ReportId} does not exist."); + } + + var coordinate = _mapper.Map(dto); + var createdCoordinate = await _repository.CreateAsync(coordinate); + return _mapper.Map(createdCoordinate); + } + + public async Task UpdateAsync(int id, PastValuationsLACoordinateUpdateDto dto) + { + var existingCoordinate = await _repository.GetByIdAsync(id); + if (existingCoordinate == null) + { + return null; + } + + var reportExists = await _repository.ReportExistsAsync(dto.ReportId); + if (!reportExists) + { + throw new ArgumentException($"Report with ID {dto.ReportId} does not exist."); + } + + _mapper.Map(dto, existingCoordinate); + + var updateSuccess = await _repository.UpdateAsync(existingCoordinate); + if (!updateSuccess) + { + throw new InvalidOperationException("Failed to update coordinate."); + } + + var updatedCoordinate = await _repository.GetByIdAsync(id); + return _mapper.Map(updatedCoordinate); + } + + public async Task DeleteAsync(int id) + { + return await _repository.DeleteAsync(id); + } + } + + // BuildingRatesLA Coordinate Service + public class BuildingRatesLACoordinateService : IBuildingRatesLACoordinateService + { + private readonly IBuildingRatesLACoordinateRepository _repository; + private readonly IMapper _mapper; + + public BuildingRatesLACoordinateService(IBuildingRatesLACoordinateRepository repository, IMapper mapper) + { + _repository = repository; + _mapper = mapper; + } + + public async Task> GetAllAsync() + { + var coordinates = await _repository.GetAllAsync(); + return _mapper.Map>(coordinates); + } + + public async Task GetByIdAsync(int id) + { + var coordinate = await _repository.GetByIdAsync(id); + if (coordinate == null) + { + return null; + } + + return _mapper.Map(coordinate); + } + + public async Task> GetByReportIdAsync(int reportId) + { + var coordinates = await _repository.GetByReportIdAsync(reportId); + return _mapper.Map>(coordinates); + } + + public async Task CreateAsync(BuildingRatesLACoordinateCreateDto dto) + { + var reportExists = await _repository.ReportExistsAsync(dto.ReportId); + if (!reportExists) + { + throw new ArgumentException($"Report with ID {dto.ReportId} does not exist."); + } + + var coordinate = _mapper.Map(dto); + var createdCoordinate = await _repository.CreateAsync(coordinate); + return _mapper.Map(createdCoordinate); + } + + public async Task UpdateAsync(int id, BuildingRatesLACoordinateUpdateDto dto) + { + var existingCoordinate = await _repository.GetByIdAsync(id); + if (existingCoordinate == null) + { + return null; + } + + var reportExists = await _repository.ReportExistsAsync(dto.ReportId); + if (!reportExists) + { + throw new ArgumentException($"Report with ID {dto.ReportId} does not exist."); + } + + _mapper.Map(dto, existingCoordinate); + + var updateSuccess = await _repository.UpdateAsync(existingCoordinate); + if (!updateSuccess) + { + throw new InvalidOperationException("Failed to update coordinate."); + } + + var updatedCoordinate = await _repository.GetByIdAsync(id); + return _mapper.Map(updatedCoordinate); + } + + public async Task DeleteAsync(int id) + { + return await _repository.DeleteAsync(id); + } + } + + // SalesEvidenceLA Coordinate Service + public class SalesEvidenceLACoordinateService : ISalesEvidenceLACoordinateService + { + private readonly ISalesEvidenceLACoordinateRepository _repository; + private readonly IMapper _mapper; + + public SalesEvidenceLACoordinateService(ISalesEvidenceLACoordinateRepository repository, IMapper mapper) + { + _repository = repository; + _mapper = mapper; + } + + public async Task> GetAllAsync() + { + var coordinates = await _repository.GetAllAsync(); + return _mapper.Map>(coordinates); + } + + public async Task GetByIdAsync(int id) + { + var coordinate = await _repository.GetByIdAsync(id); + if (coordinate == null) + { + return null; + } + + return _mapper.Map(coordinate); + } + + public async Task> GetByReportIdAsync(int reportId) + { + var coordinates = await _repository.GetByReportIdAsync(reportId); + return _mapper.Map>(coordinates); + } + + public async Task CreateAsync(SalesEvidenceLACoordinateCreateDto dto) + { + var reportExists = await _repository.ReportExistsAsync(dto.ReportId); + if (!reportExists) + { + throw new ArgumentException($"Report with ID {dto.ReportId} does not exist."); + } + + var coordinate = _mapper.Map(dto); + var createdCoordinate = await _repository.CreateAsync(coordinate); + return _mapper.Map(createdCoordinate); + } + + public async Task UpdateAsync(int id, SalesEvidenceLACoordinateUpdateDto dto) + { + var existingCoordinate = await _repository.GetByIdAsync(id); + if (existingCoordinate == null) + { + return null; + } + + var reportExists = await _repository.ReportExistsAsync(dto.ReportId); + if (!reportExists) + { + throw new ArgumentException($"Report with ID {dto.ReportId} does not exist."); + } + + _mapper.Map(dto, existingCoordinate); + + var updateSuccess = await _repository.UpdateAsync(existingCoordinate); + if (!updateSuccess) + { + throw new InvalidOperationException("Failed to update coordinate."); + } + + var updatedCoordinate = await _repository.GetByIdAsync(id); + return _mapper.Map(updatedCoordinate); + } + + public async Task DeleteAsync(int id) + { + return await _repository.DeleteAsync(id); + } + } + + // RentalEvidenceLA Coordinate Service + public class RentalEvidenceLACoordinateService : IRentalEvidenceLACoordinateService + { + private readonly IRentalEvidenceLACoordinateRepository _repository; + private readonly IMapper _mapper; + + public RentalEvidenceLACoordinateService(IRentalEvidenceLACoordinateRepository repository, IMapper mapper) + { + _repository = repository; + _mapper = mapper; + } + + public async Task> GetAllAsync() + { + var coordinates = await _repository.GetAllAsync(); + return _mapper.Map>(coordinates); + } + + public async Task GetByIdAsync(int id) + { + var coordinate = await _repository.GetByIdAsync(id); + if (coordinate == null) + { + return null; + } + + return _mapper.Map(coordinate); + } + + public async Task> GetByReportIdAsync(int reportId) + { + var coordinates = await _repository.GetByReportIdAsync(reportId); + return _mapper.Map>(coordinates); + } + + public async Task CreateAsync(RentalEvidenceLACoordinateCreateDto dto) + { + var reportExists = await _repository.ReportExistsAsync(dto.ReportId); + if (!reportExists) + { + throw new ArgumentException($"Report with ID {dto.ReportId} does not exist."); + } + + var coordinate = _mapper.Map(dto); + var createdCoordinate = await _repository.CreateAsync(coordinate); + return _mapper.Map(createdCoordinate); + } + + public async Task UpdateAsync(int id, RentalEvidenceLACoordinateUpdateDto dto) + { + var existingCoordinate = await _repository.GetByIdAsync(id); + if (existingCoordinate == null) + { + return null; + } + + var reportExists = await _repository.ReportExistsAsync(dto.ReportId); + if (!reportExists) + { + throw new ArgumentException($"Report with ID {dto.ReportId} does not exist."); + } + + _mapper.Map(dto, existingCoordinate); + + var updateSuccess = await _repository.UpdateAsync(existingCoordinate); + if (!updateSuccess) + { + throw new InvalidOperationException("Failed to update coordinate."); + } + + var updatedCoordinate = await _repository.GetByIdAsync(id); + return _mapper.Map(updatedCoordinate); + } + + public async Task DeleteAsync(int id) + { + return await _repository.DeleteAsync(id); + } + } +} From a6f3819770a09366897c7b0e779f976c40510f3d Mon Sep 17 00:00:00 2001 From: JalinaH Date: Tue, 22 Jul 2025 22:03:01 +0530 Subject: [PATCH 13/21] Refactor foreign key relationships in LACoordinate tables - Updated foreign key references in BuildingRatesLACoordinates, PastValuationsLACoordinates, RentalEvidenceLACoordinates, and SalesEvidenceLACoordinates to use specific IDs instead of ReportId. - Renamed columns and indices accordingly to reflect the new foreign key relationships. - Adjusted migration files to drop old foreign keys and add new ones. - Updated model snapshots to match the new schema. - Modified DTOs to replace ReportId with specific IDs for each coordinate type. - Refactored LACoordinates models to use new foreign key properties. - Updated AutoMapper profiles to ignore old Report references and map new relationships. - Changed repository interfaces and implementations to use new methods for fetching coordinates by specific IDs. - Updated service layer methods to reflect changes in repository methods and ensure correct validation for existence checks. --- Controllers/LACoordinateControllers.cs | 32 +- ...ateCoordinateTablesForeignKeys.Designer.cs | 2151 +++++++++++++++++ ...63129_UpdateCoordinateTablesForeignKeys.cs | 194 ++ Migrations/AppDbContextModelSnapshot.cs | 44 +- Models/DTOs/LACoordinateDtos.cs | 24 +- Models/LACoordinates.cs | 32 +- Profiles/LACoordinateProfiles.cs | 16 +- repositories/ILACoordinateRepositories.cs | 16 +- repositories/LACoordinateRepositories.cs | 64 +- services/ILACoordinateServices.cs | 8 +- services/LACoordinateServices.cs | 64 +- 11 files changed, 2495 insertions(+), 150 deletions(-) create mode 100644 Migrations/20250722163129_UpdateCoordinateTablesForeignKeys.Designer.cs create mode 100644 Migrations/20250722163129_UpdateCoordinateTablesForeignKeys.cs diff --git a/Controllers/LACoordinateControllers.cs b/Controllers/LACoordinateControllers.cs index 1486f21..5bab2e3 100644 --- a/Controllers/LACoordinateControllers.cs +++ b/Controllers/LACoordinateControllers.cs @@ -39,11 +39,11 @@ public async Task> GetCoordi return Ok(coordinate); } - // GET: api/PastValuationsLACoordinate/report/5 - [HttpGet("report/{reportId}")] - public async Task>> GetCoordinatesByReportId(int reportId) + // GET: api/PastValuationsLACoordinate/pastvaluation/5 + [HttpGet("pastvaluation/{pastValuationId}")] + public async Task>> GetCoordinatesByPastValuationId(int pastValuationId) { - var coordinates = await _coordinateService.GetByReportIdAsync(reportId); + var coordinates = await _coordinateService.GetByPastValuationIdAsync(pastValuationId); return Ok(coordinates); } @@ -133,11 +133,11 @@ public async Task> GetCoordin return Ok(coordinate); } - // GET: api/BuildingRatesLACoordinate/report/5 - [HttpGet("report/{reportId}")] - public async Task>> GetCoordinatesByReportId(int reportId) + // GET: api/BuildingRatesLACoordinate/buildingrate/5 + [HttpGet("buildingrate/{buildingRateId}")] + public async Task>> GetCoordinatesByBuildingRateId(int buildingRateId) { - var coordinates = await _coordinateService.GetByReportIdAsync(reportId); + var coordinates = await _coordinateService.GetByBuildingRateIdAsync(buildingRateId); return Ok(coordinates); } @@ -227,11 +227,11 @@ public async Task> GetCoordin return Ok(coordinate); } - // GET: api/SalesEvidenceLACoordinate/report/5 - [HttpGet("report/{reportId}")] - public async Task>> GetCoordinatesByReportId(int reportId) + // GET: api/SalesEvidenceLACoordinate/salesevidence/5 + [HttpGet("salesevidence/{salesEvidenceId}")] + public async Task>> GetCoordinatesBySalesEvidenceId(int salesEvidenceId) { - var coordinates = await _coordinateService.GetByReportIdAsync(reportId); + var coordinates = await _coordinateService.GetBySalesEvidenceIdAsync(salesEvidenceId); return Ok(coordinates); } @@ -321,11 +321,11 @@ public async Task> GetCoordi return Ok(coordinate); } - // GET: api/RentalEvidenceLACoordinate/report/5 - [HttpGet("report/{reportId}")] - public async Task>> GetCoordinatesByReportId(int reportId) + // GET: api/RentalEvidenceLACoordinate/rentalevidence/5 + [HttpGet("rentalevidence/{rentalEvidenceId}")] + public async Task>> GetCoordinatesByRentalEvidenceId(int rentalEvidenceId) { - var coordinates = await _coordinateService.GetByReportIdAsync(reportId); + var coordinates = await _coordinateService.GetByRentalEvidenceIdAsync(rentalEvidenceId); return Ok(coordinates); } diff --git a/Migrations/20250722163129_UpdateCoordinateTablesForeignKeys.Designer.cs b/Migrations/20250722163129_UpdateCoordinateTablesForeignKeys.Designer.cs new file mode 100644 index 0000000..3f7b14c --- /dev/null +++ b/Migrations/20250722163129_UpdateCoordinateTablesForeignKeys.Designer.cs @@ -0,0 +1,2151 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using ValuationBackend.Data; + +#nullable disable + +namespace ValuationBackend.Migrations +{ + [DbContext(typeof(AppDbContext))] + [Migration("20250722163129_UpdateCoordinateTablesForeignKeys")] + partial class UpdateCoordinateTablesForeignKeys + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "9.0.5") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("DecisionField", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Field") + .IsRequired() + .HasColumnType("text"); + + b.Property("FieldDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("FieldSize") + .HasColumnType("integer"); + + b.Property("FieldType") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("DecisionFields"); + }); + + modelBuilder.Entity("LandAquisitionMasterFile", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Lots") + .HasColumnType("integer"); + + b.Property("MasterFileNo") + .HasColumnType("integer"); + + b.Property("MasterFilesRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanType") + .IsRequired() + .HasColumnType("text"); + + b.Property("RequestingAuthorityReferenceNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Status") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("LandAquisitionMasterFiles"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Asset", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNo") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasColumnType("integer"); + + b.Property("IsRatingCard") + .HasColumnType("boolean"); + + b.Property("Owner") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("RdSt") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("RequestId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Ward") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.HasKey("Id"); + + b.HasIndex("RequestId"); + + b.ToTable("Assets"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetDivision", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Area") + .HasColumnType("numeric"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("LandType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("NewAssetNo") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("AssetDivisions"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetNumberChange", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ChangedDate") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfChange") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasMaxLength(255) + .HasColumnType("character varying(255)"); + + b.Property("FieldSize") + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("FieldType") + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("NewAssetNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("OldAssetNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Reason") + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("AssetNumberChanges"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("ConstructedBy") + .HasColumnType("text"); + + b.Property("Cost") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("FloorAreaSQFT") + .IsRequired() + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("Owner") + .IsRequired() + .HasColumnType("text"); + + b.Property("RatePerSQFT") + .IsRequired() + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("YearOfConstruction") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("BuildingRatesLA"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("BuildingRateId") + .HasColumnType("integer"); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("BuildingRateId"); + + b.ToTable("BuildingRatesLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccessCategory") + .IsRequired() + .HasColumnType("text"); + + b.Property("AccessCategoryDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquiredExtent") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquiringOfficerSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquisitionName") + .IsRequired() + .HasColumnType("text"); + + b.Property("AssessmentNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("AtLotNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("AtPlanNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryBottom") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryEast") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryNorth") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundarySouth") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryWest") + .IsRequired() + .HasColumnType("text"); + + b.Property("BuildingDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("BuildingInfo") + .IsRequired() + .HasColumnType("text"); + + b.Property("ChiefValuerRepresentativeSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfSection3BA") + .IsRequired() + .HasColumnType("text"); + + b.Property("DatePrepared") + .IsRequired() + .HasColumnType("text"); + + b.Property("DepthOfLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("DescriptionOfLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("DetailsOfBusiness") + .IsRequired() + .HasColumnType("text"); + + b.Property("Frontage") + .IsRequired() + .HasColumnType("text"); + + b.Property("GramasewakaSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("LandUseDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("LandUseType") + .IsRequired() + .HasColumnType("text"); + + b.Property("LevelWithAccess") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("NameOfTheLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("NameOfTheVillage") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionsDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionsInfo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlantationDetails") + .IsRequired() + .HasColumnType("text"); + + b.Property("PpCadLotNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("PpCadNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("RoadName") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("ConditionReports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.DomesticRatingCard", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Access") + .HasColumnType("text"); + + b.Property("Age") + .HasColumnType("integer"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("Condition") + .HasColumnType("text"); + + b.Property("Conveniences") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("Floor") + .HasColumnType("text"); + + b.Property("NewNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("Notes") + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .IsRequired() + .HasColumnType("text"); + + b.Property("ParkingSpace") + .HasColumnType("text"); + + b.Property("Plantations") + .HasColumnType("text"); + + b.Property("PropertySubCategory") + .HasColumnType("text"); + + b.Property("PropertyType") + .HasColumnType("text"); + + b.Property("RentPM") + .HasColumnType("numeric"); + + b.Property("RoadName") + .HasColumnType("text"); + + b.Property("SelectWalls") + .HasColumnType("text"); + + b.Property("SuggestedRate") + .HasColumnType("numeric"); + + b.Property("Terms") + .HasColumnType("text"); + + b.Property("TsBop") + .HasColumnType("text"); + + b.Property("WardNumber") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("DomesticRatingCards"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ImageData", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ImageBase64") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.ToTable("ImageData"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionBuilding", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AgeYears") + .HasColumnType("text"); + + b.Property("BathroomToilet") + .HasColumnType("text"); + + b.Property("BathroomToiletDoorsFittings") + .HasColumnType("text"); + + b.Property("BuildingCategory") + .HasColumnType("text"); + + b.Property("BuildingClass") + .HasColumnType("text"); + + b.Property("BuildingConditions") + .HasColumnType("text"); + + b.Property("BuildingId") + .HasColumnType("text"); + + b.Property("BuildingName") + .HasColumnType("text"); + + b.Property("Ceiling") + .HasColumnType("text"); + + b.Property("Condition") + .HasColumnType("text"); + + b.Property("Conveniences") + .HasColumnType("text"); + + b.Property("Design") + .HasColumnType("text"); + + b.Property("DetailOfBuilding") + .HasColumnType("text"); + + b.Property("Door") + .HasColumnType("text"); + + b.Property("ExpectedLifePeriodYears") + .HasColumnType("text"); + + b.Property("FloorFinisher") + .HasColumnType("text"); + + b.Property("FloorStructure") + .HasColumnType("text"); + + b.Property("FoundationStructure") + .HasColumnType("text"); + + b.Property("HandRail") + .HasColumnType("text"); + + b.Property("InspectionReportId") + .HasColumnType("integer"); + + b.Property("NatureOfConstruction") + .HasColumnType("text"); + + b.Property("NoOfFloorsAboveGround") + .HasColumnType("text") + .HasColumnName("NoOfFloorsAboveGround"); + + b.Property("NoOfFloorsBelowGround") + .HasColumnType("text") + .HasColumnName("NoOfFloorsBelowGround"); + + b.Property("OtherDoors") + .HasColumnType("text"); + + b.Property("PantryCupboard") + .HasColumnType("text"); + + b.Property("ParkingSpace") + .HasColumnType("text"); + + b.Property("RoofFinisher") + .HasColumnType("text"); + + b.Property("RoofFrame") + .HasColumnType("text"); + + b.Property("RoofMaterial") + .HasColumnType("text"); + + b.Property("Services") + .HasColumnType("text"); + + b.Property("Structure") + .HasColumnType("text"); + + b.Property("WallFinisher") + .HasColumnType("text"); + + b.Property("WallStructure") + .HasColumnType("text"); + + b.Property("Window") + .HasColumnType("text"); + + b.Property("WindowProtection") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("InspectionReportId"); + + b.ToTable("InspectionBuildings"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.Property("InspectionReportId") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("InspectionReportId")); + + b.Property("DetailsOfAssestsInventoryItems") + .HasColumnType("text") + .HasColumnName("DetailsOfAssestsInventoryItems"); + + b.Property("DetailsOfBusiness") + .HasColumnType("text"); + + b.Property("District") + .HasColumnType("text"); + + b.Property("DsDivision") + .HasColumnType("text"); + + b.Property("GnDivision") + .HasColumnType("text"); + + b.Property("InspectionDate") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionDetails") + .HasColumnType("text"); + + b.Property("OtherInformation") + .HasColumnType("text"); + + b.Property("Province") + .HasColumnType("text"); + + b.Property("Remark") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("InspectionReportId"); + + b.HasIndex("ReportId"); + + b.ToTable("InspectionReports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LALot", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterFileId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("MasterFileId"); + + b.ToTable("LALots"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMBuildingRates", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNumber") + .HasColumnType("text"); + + b.Property("ConstructedBy") + .HasColumnType("text"); + + b.Property("Cost") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("FloorArea") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerSQFT") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("YearOfConstruction") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMBuildingRates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMPastValuation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("DateOfValuation") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FileNo_GnDivision") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanOfParticulars") + .HasColumnType("text"); + + b.Property("PurposeOfValuation") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMPastValuations"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMRentalEvidence", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNo") + .HasColumnType("text"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("FloorRate") + .HasColumnType("text"); + + b.Property("HeadOfTerms") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePer") + .HasColumnType("text"); + + b.Property("RatePerMonth") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMRentalEvidences"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMSalesEvidence", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNumber") + .HasColumnType("text"); + + b.Property("Consideration") + .HasColumnType("text"); + + b.Property("DeedAttestedNumber") + .HasColumnType("text"); + + b.Property("DeedNumber") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("LandRegistryReferences") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("LotNumber") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("NotaryName") + .HasColumnType("text"); + + b.Property("PlanDate") + .HasColumnType("text"); + + b.Property("PlanNumber") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Road") + .HasColumnType("text"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("Vendor") + .HasColumnType("text"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMSalesEvidences"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LandMiscellaneousMasterFile", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Lots") + .HasColumnType("integer"); + + b.Property("MasterFileNo") + .HasColumnType("integer"); + + b.Property("PlanNo") + .HasColumnType("text"); + + b.Property("PlanType") + .HasColumnType("text"); + + b.Property("RequestingAuthorityReferenceNo") + .HasColumnType("text"); + + b.Property("Status") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("LandMiscellaneousMasterFiles"); + }); + + modelBuilder.Entity("ValuationBackend.Models.MasterDataItem", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Category") + .IsRequired() + .HasColumnType("text"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("MasterDataItems"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PasswordReset", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Email") + .IsRequired() + .HasColumnType("text"); + + b.Property("ExpiresAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Otp") + .IsRequired() + .HasColumnType("text"); + + b.Property("Used") + .HasColumnType("boolean"); + + b.HasKey("Id"); + + b.ToTable("PasswordResets"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfValuation") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FileNoGNDivision") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanOfParticulars") + .HasColumnType("text"); + + b.Property("PurposeOfValuation") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("PastValuationsLA"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("PastValuationId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("PastValuationId"); + + b.ToTable("PastValuationsLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PropertyCategory", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Name") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("PropertyCategories"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RatingRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("LocalAuthority") + .IsRequired() + .HasColumnType("text"); + + b.Property("RatingReferenceNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("RequestType") + .IsRequired() + .HasColumnType("text"); + + b.Property("Status") + .IsRequired() + .HasColumnType("text"); + + b.Property("YearOfRevision") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.ToTable("RatingRequests"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Reconciliation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("NewNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("ObsoleteNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("StreetName") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("Reconciliations"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNo") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("FloorRateSQFT") + .HasColumnType("text"); + + b.Property("HeadOfTerms") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerMonth") + .HasColumnType("text"); + + b.Property("RatePerSqft") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("RentalEvidencesLA", (string)null); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("RentalEvidenceId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("RentalEvidenceId"); + + b.ToTable("RentalEvidenceLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Report", b => + { + b.Property("ReportId") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("ReportId")); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportType") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Timestamp") + .HasColumnType("timestamp with time zone"); + + b.HasKey("ReportId"); + + b.ToTable("Reports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Request", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("LocalAuthority") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RatingReferenceNo") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RequestTypeId") + .HasColumnType("integer"); + + b.Property("Status") + .HasColumnType("boolean"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("YearOfRevision") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("RequestTypeId"); + + b.ToTable("Requests"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RequestType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Code") + .IsRequired() + .HasMaxLength(2) + .HasColumnType("character varying(2)"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("RequestTypes"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNumber") + .HasColumnType("text"); + + b.Property("Consideration") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DeedAttestedNumber") + .HasColumnType("text"); + + b.Property("DeedNumber") + .HasColumnType("text"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FloorRate") + .HasColumnType("text"); + + b.Property("LandRegistryReferences") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("LotNumber") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("NotaryName") + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("PlanDate") + .HasColumnType("text"); + + b.Property("PlanNumber") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Road") + .HasColumnType("text"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Vendor") + .HasColumnType("text"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("SalesEvidencesLA", (string)null); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("SalesEvidenceId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("SalesEvidenceId"); + + b.ToTable("SalesEvidenceLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssignedDivision") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpEmail") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpId") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpName") + .IsRequired() + .HasColumnType("text"); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("bytea"); + + b.Property("PasswordSalt") + .IsRequired() + .HasColumnType("bytea"); + + b.Property("Position") + .IsRequired() + .HasColumnType("text"); + + b.Property("ProfilePicture") + .HasColumnType("bytea"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("ValuationBackend.Models.UserTask", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssignedDate") + .HasColumnType("timestamp with time zone"); + + b.Property("IsCompleted") + .HasColumnType("boolean"); + + b.Property("LandAcquisitionId") + .HasColumnType("integer"); + + b.Property("LandMiscellaneousId") + .HasColumnType("integer"); + + b.Property("ReferenceNumber") + .HasColumnType("text"); + + b.Property("RequestId") + .HasColumnType("integer"); + + b.Property("TaskType") + .IsRequired() + .HasColumnType("text"); + + b.Property("UserId") + .HasColumnType("integer"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.Property("WorkItemDescription") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("UserId"); + + b.ToTable("UserTasks"); + }); + + modelBuilder.Entity("ValuationBackend.Models.iteration2.RatingCards.OfficesRatingCard", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccessType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("Age") + .HasColumnType("integer"); + + b.Property("AssessmentNumber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("BuildingSelection") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CeilingHeight") + .HasColumnType("decimal(18,2)"); + + b.Property("Condition") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Conveniences") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("CreatedBy") + .IsRequired() + .HasColumnType("text"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("FloorNumber") + .HasColumnType("integer"); + + b.Property("FloorType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("LocalAuthority") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("LocalAuthorityCode") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("NewNumber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Notes") + .IsRequired() + .HasMaxLength(2000) + .HasColumnType("character varying(2000)"); + + b.Property("ObsoleteNumber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Occupier") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("OfficeGrade") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("OfficeSuite") + .IsRequired() + .HasMaxLength(1000) + .HasColumnType("character varying(1000)"); + + b.Property("Owner") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("ParkingSpace") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("PropertySubCategory") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("PropertyType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RentPM") + .HasColumnType("decimal(18,2)"); + + b.Property("RoadName") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("SuggestedRate") + .HasColumnType("decimal(18,2)"); + + b.Property("Terms") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("TotalArea") + .HasColumnType("decimal(18,2)"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("UpdatedBy") + .HasColumnType("text"); + + b.Property("UsableFloorArea") + .HasColumnType("decimal(18,2)"); + + b.Property("WallType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("WardNumber") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("OfficesRatingCards"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Asset", b => + { + b.HasOne("ValuationBackend.Models.Request", "Request") + .WithMany() + .HasForeignKey("RequestId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Request"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetDivision", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLACoordinate", b => + { + b.HasOne("ValuationBackend.Models.BuildingRatesLA", "BuildingRate") + .WithMany() + .HasForeignKey("BuildingRateId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("BuildingRate"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.DomesticRatingCard", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionBuilding", b => + { + b.HasOne("ValuationBackend.Models.InspectionReport", "InspectionReport") + .WithMany("Buildings") + .HasForeignKey("InspectionReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("InspectionReport"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LALot", b => + { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("MasterFile"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMBuildingRates", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMPastValuation", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMRentalEvidence", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMSalesEvidence", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLACoordinate", b => + { + b.HasOne("ValuationBackend.Models.PastValuationsLA", "PastValuation") + .WithMany() + .HasForeignKey("PastValuationId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("PastValuation"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Reconciliation", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLACoordinate", b => + { + b.HasOne("ValuationBackend.Models.RentalEvidenceLA", "RentalEvidence") + .WithMany() + .HasForeignKey("RentalEvidenceId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("RentalEvidence"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Request", b => + { + b.HasOne("ValuationBackend.Models.RequestType", "RequestType") + .WithMany() + .HasForeignKey("RequestTypeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("RequestType"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLACoordinate", b => + { + b.HasOne("ValuationBackend.Models.SalesEvidenceLA", "SalesEvidence") + .WithMany() + .HasForeignKey("SalesEvidenceId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("SalesEvidence"); + }); + + modelBuilder.Entity("ValuationBackend.Models.UserTask", b => + { + b.HasOne("ValuationBackend.Models.User", "User") + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("User"); + }); + + modelBuilder.Entity("ValuationBackend.Models.iteration2.RatingCards.OfficesRatingCard", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.Navigation("Buildings"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/Migrations/20250722163129_UpdateCoordinateTablesForeignKeys.cs b/Migrations/20250722163129_UpdateCoordinateTablesForeignKeys.cs new file mode 100644 index 0000000..1b52057 --- /dev/null +++ b/Migrations/20250722163129_UpdateCoordinateTablesForeignKeys.cs @@ -0,0 +1,194 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace ValuationBackend.Migrations +{ + /// + public partial class UpdateCoordinateTablesForeignKeys : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropForeignKey( + name: "FK_BuildingRatesLACoordinates_Reports_ReportId", + table: "BuildingRatesLACoordinates"); + + migrationBuilder.DropForeignKey( + name: "FK_PastValuationsLACoordinates_Reports_ReportId", + table: "PastValuationsLACoordinates"); + + migrationBuilder.DropForeignKey( + name: "FK_RentalEvidenceLACoordinates_Reports_ReportId", + table: "RentalEvidenceLACoordinates"); + + migrationBuilder.DropForeignKey( + name: "FK_SalesEvidenceLACoordinates_Reports_ReportId", + table: "SalesEvidenceLACoordinates"); + + migrationBuilder.RenameColumn( + name: "ReportId", + table: "SalesEvidenceLACoordinates", + newName: "SalesEvidenceId"); + + migrationBuilder.RenameIndex( + name: "IX_SalesEvidenceLACoordinates_ReportId", + table: "SalesEvidenceLACoordinates", + newName: "IX_SalesEvidenceLACoordinates_SalesEvidenceId"); + + migrationBuilder.RenameColumn( + name: "ReportId", + table: "RentalEvidenceLACoordinates", + newName: "RentalEvidenceId"); + + migrationBuilder.RenameIndex( + name: "IX_RentalEvidenceLACoordinates_ReportId", + table: "RentalEvidenceLACoordinates", + newName: "IX_RentalEvidenceLACoordinates_RentalEvidenceId"); + + migrationBuilder.RenameColumn( + name: "ReportId", + table: "PastValuationsLACoordinates", + newName: "PastValuationId"); + + migrationBuilder.RenameIndex( + name: "IX_PastValuationsLACoordinates_ReportId", + table: "PastValuationsLACoordinates", + newName: "IX_PastValuationsLACoordinates_PastValuationId"); + + migrationBuilder.RenameColumn( + name: "ReportId", + table: "BuildingRatesLACoordinates", + newName: "BuildingRateId"); + + migrationBuilder.RenameIndex( + name: "IX_BuildingRatesLACoordinates_ReportId", + table: "BuildingRatesLACoordinates", + newName: "IX_BuildingRatesLACoordinates_BuildingRateId"); + + migrationBuilder.AddForeignKey( + name: "FK_BuildingRatesLACoordinates_BuildingRatesLA_BuildingRateId", + table: "BuildingRatesLACoordinates", + column: "BuildingRateId", + principalTable: "BuildingRatesLA", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + + migrationBuilder.AddForeignKey( + name: "FK_PastValuationsLACoordinates_PastValuationsLA_PastValuationId", + table: "PastValuationsLACoordinates", + column: "PastValuationId", + principalTable: "PastValuationsLA", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + + migrationBuilder.AddForeignKey( + name: "FK_RentalEvidenceLACoordinates_RentalEvidencesLA_RentalEvidenc~", + table: "RentalEvidenceLACoordinates", + column: "RentalEvidenceId", + principalTable: "RentalEvidencesLA", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + + migrationBuilder.AddForeignKey( + name: "FK_SalesEvidenceLACoordinates_SalesEvidencesLA_SalesEvidenceId", + table: "SalesEvidenceLACoordinates", + column: "SalesEvidenceId", + principalTable: "SalesEvidencesLA", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropForeignKey( + name: "FK_BuildingRatesLACoordinates_BuildingRatesLA_BuildingRateId", + table: "BuildingRatesLACoordinates"); + + migrationBuilder.DropForeignKey( + name: "FK_PastValuationsLACoordinates_PastValuationsLA_PastValuationId", + table: "PastValuationsLACoordinates"); + + migrationBuilder.DropForeignKey( + name: "FK_RentalEvidenceLACoordinates_RentalEvidencesLA_RentalEvidenc~", + table: "RentalEvidenceLACoordinates"); + + migrationBuilder.DropForeignKey( + name: "FK_SalesEvidenceLACoordinates_SalesEvidencesLA_SalesEvidenceId", + table: "SalesEvidenceLACoordinates"); + + migrationBuilder.RenameColumn( + name: "SalesEvidenceId", + table: "SalesEvidenceLACoordinates", + newName: "ReportId"); + + migrationBuilder.RenameIndex( + name: "IX_SalesEvidenceLACoordinates_SalesEvidenceId", + table: "SalesEvidenceLACoordinates", + newName: "IX_SalesEvidenceLACoordinates_ReportId"); + + migrationBuilder.RenameColumn( + name: "RentalEvidenceId", + table: "RentalEvidenceLACoordinates", + newName: "ReportId"); + + migrationBuilder.RenameIndex( + name: "IX_RentalEvidenceLACoordinates_RentalEvidenceId", + table: "RentalEvidenceLACoordinates", + newName: "IX_RentalEvidenceLACoordinates_ReportId"); + + migrationBuilder.RenameColumn( + name: "PastValuationId", + table: "PastValuationsLACoordinates", + newName: "ReportId"); + + migrationBuilder.RenameIndex( + name: "IX_PastValuationsLACoordinates_PastValuationId", + table: "PastValuationsLACoordinates", + newName: "IX_PastValuationsLACoordinates_ReportId"); + + migrationBuilder.RenameColumn( + name: "BuildingRateId", + table: "BuildingRatesLACoordinates", + newName: "ReportId"); + + migrationBuilder.RenameIndex( + name: "IX_BuildingRatesLACoordinates_BuildingRateId", + table: "BuildingRatesLACoordinates", + newName: "IX_BuildingRatesLACoordinates_ReportId"); + + migrationBuilder.AddForeignKey( + name: "FK_BuildingRatesLACoordinates_Reports_ReportId", + table: "BuildingRatesLACoordinates", + column: "ReportId", + principalTable: "Reports", + principalColumn: "ReportId", + onDelete: ReferentialAction.Cascade); + + migrationBuilder.AddForeignKey( + name: "FK_PastValuationsLACoordinates_Reports_ReportId", + table: "PastValuationsLACoordinates", + column: "ReportId", + principalTable: "Reports", + principalColumn: "ReportId", + onDelete: ReferentialAction.Cascade); + + migrationBuilder.AddForeignKey( + name: "FK_RentalEvidenceLACoordinates_Reports_ReportId", + table: "RentalEvidenceLACoordinates", + column: "ReportId", + principalTable: "Reports", + principalColumn: "ReportId", + onDelete: ReferentialAction.Cascade); + + migrationBuilder.AddForeignKey( + name: "FK_SalesEvidenceLACoordinates_Reports_ReportId", + table: "SalesEvidenceLACoordinates", + column: "ReportId", + principalTable: "Reports", + principalColumn: "ReportId", + onDelete: ReferentialAction.Cascade); + } + } +} diff --git a/Migrations/AppDbContextModelSnapshot.cs b/Migrations/AppDbContextModelSnapshot.cs index bb53652..bd2eac5 100644 --- a/Migrations/AppDbContextModelSnapshot.cs +++ b/Migrations/AppDbContextModelSnapshot.cs @@ -297,6 +297,9 @@ protected override void BuildModel(ModelBuilder modelBuilder) NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + b.Property("BuildingRateId") + .HasColumnType("integer"); + b.Property("Coordinates") .IsRequired() .HasColumnType("text"); @@ -304,15 +307,12 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("CreatedAt") .HasColumnType("timestamp with time zone"); - b.Property("ReportId") - .HasColumnType("integer"); - b.Property("UpdatedAt") .HasColumnType("timestamp with time zone"); b.HasKey("Id"); - b.HasIndex("ReportId"); + b.HasIndex("BuildingRateId"); b.ToTable("BuildingRatesLACoordinates"); }); @@ -1207,7 +1207,7 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("CreatedAt") .HasColumnType("timestamp with time zone"); - b.Property("ReportId") + b.Property("PastValuationId") .HasColumnType("integer"); b.Property("UpdatedAt") @@ -1215,7 +1215,7 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.HasKey("Id"); - b.HasIndex("ReportId"); + b.HasIndex("PastValuationId"); b.ToTable("PastValuationsLACoordinates"); }); @@ -1389,7 +1389,7 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("CreatedAt") .HasColumnType("timestamp with time zone"); - b.Property("ReportId") + b.Property("RentalEvidenceId") .HasColumnType("integer"); b.Property("UpdatedAt") @@ -1397,7 +1397,7 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.HasKey("Id"); - b.HasIndex("ReportId"); + b.HasIndex("RentalEvidenceId"); b.ToTable("RentalEvidenceLACoordinates"); }); @@ -1609,7 +1609,7 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("CreatedAt") .HasColumnType("timestamp with time zone"); - b.Property("ReportId") + b.Property("SalesEvidenceId") .HasColumnType("integer"); b.Property("UpdatedAt") @@ -1617,7 +1617,7 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.HasKey("Id"); - b.HasIndex("ReportId"); + b.HasIndex("SalesEvidenceId"); b.ToTable("SalesEvidenceLACoordinates"); }); @@ -1920,13 +1920,13 @@ protected override void BuildModel(ModelBuilder modelBuilder) modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLACoordinate", b => { - b.HasOne("ValuationBackend.Models.Report", "Report") + b.HasOne("ValuationBackend.Models.BuildingRatesLA", "BuildingRate") .WithMany() - .HasForeignKey("ReportId") + .HasForeignKey("BuildingRateId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); - b.Navigation("Report"); + b.Navigation("BuildingRate"); }); modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => @@ -2041,13 +2041,13 @@ protected override void BuildModel(ModelBuilder modelBuilder) modelBuilder.Entity("ValuationBackend.Models.PastValuationsLACoordinate", b => { - b.HasOne("ValuationBackend.Models.Report", "Report") + b.HasOne("ValuationBackend.Models.PastValuationsLA", "PastValuation") .WithMany() - .HasForeignKey("ReportId") + .HasForeignKey("PastValuationId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); - b.Navigation("Report"); + b.Navigation("PastValuation"); }); modelBuilder.Entity("ValuationBackend.Models.Reconciliation", b => @@ -2074,13 +2074,13 @@ protected override void BuildModel(ModelBuilder modelBuilder) modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLACoordinate", b => { - b.HasOne("ValuationBackend.Models.Report", "Report") + b.HasOne("ValuationBackend.Models.RentalEvidenceLA", "RentalEvidence") .WithMany() - .HasForeignKey("ReportId") + .HasForeignKey("RentalEvidenceId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); - b.Navigation("Report"); + b.Navigation("RentalEvidence"); }); modelBuilder.Entity("ValuationBackend.Models.Request", b => @@ -2107,13 +2107,13 @@ protected override void BuildModel(ModelBuilder modelBuilder) modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLACoordinate", b => { - b.HasOne("ValuationBackend.Models.Report", "Report") + b.HasOne("ValuationBackend.Models.SalesEvidenceLA", "SalesEvidence") .WithMany() - .HasForeignKey("ReportId") + .HasForeignKey("SalesEvidenceId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); - b.Navigation("Report"); + b.Navigation("SalesEvidence"); }); modelBuilder.Entity("ValuationBackend.Models.UserTask", b => diff --git a/Models/DTOs/LACoordinateDtos.cs b/Models/DTOs/LACoordinateDtos.cs index db96441..9e0c0e5 100644 --- a/Models/DTOs/LACoordinateDtos.cs +++ b/Models/DTOs/LACoordinateDtos.cs @@ -6,7 +6,7 @@ namespace ValuationBackend.Models.DTOs public class PastValuationsLACoordinateCreateDto { [Required] - public int ReportId { get; set; } + public int PastValuationId { get; set; } [Required] [MinLength(1, ErrorMessage = "Coordinates cannot be empty")] @@ -16,7 +16,7 @@ public class PastValuationsLACoordinateCreateDto public class PastValuationsLACoordinateUpdateDto { [Required] - public int ReportId { get; set; } + public int PastValuationId { get; set; } [Required] [MinLength(1, ErrorMessage = "Coordinates cannot be empty")] @@ -26,7 +26,7 @@ public class PastValuationsLACoordinateUpdateDto public class PastValuationsLACoordinateResponseDto { public int Id { get; set; } - public int ReportId { get; set; } + public int PastValuationId { get; set; } public string Coordinates { get; set; } = string.Empty; public DateTime CreatedAt { get; set; } public DateTime? UpdatedAt { get; set; } @@ -36,7 +36,7 @@ public class PastValuationsLACoordinateResponseDto public class BuildingRatesLACoordinateCreateDto { [Required] - public int ReportId { get; set; } + public int BuildingRateId { get; set; } [Required] [MinLength(1, ErrorMessage = "Coordinates cannot be empty")] @@ -46,7 +46,7 @@ public class BuildingRatesLACoordinateCreateDto public class BuildingRatesLACoordinateUpdateDto { [Required] - public int ReportId { get; set; } + public int BuildingRateId { get; set; } [Required] [MinLength(1, ErrorMessage = "Coordinates cannot be empty")] @@ -56,7 +56,7 @@ public class BuildingRatesLACoordinateUpdateDto public class BuildingRatesLACoordinateResponseDto { public int Id { get; set; } - public int ReportId { get; set; } + public int BuildingRateId { get; set; } public string Coordinates { get; set; } = string.Empty; public DateTime CreatedAt { get; set; } public DateTime? UpdatedAt { get; set; } @@ -66,7 +66,7 @@ public class BuildingRatesLACoordinateResponseDto public class SalesEvidenceLACoordinateCreateDto { [Required] - public int ReportId { get; set; } + public int SalesEvidenceId { get; set; } [Required] [MinLength(1, ErrorMessage = "Coordinates cannot be empty")] @@ -76,7 +76,7 @@ public class SalesEvidenceLACoordinateCreateDto public class SalesEvidenceLACoordinateUpdateDto { [Required] - public int ReportId { get; set; } + public int SalesEvidenceId { get; set; } [Required] [MinLength(1, ErrorMessage = "Coordinates cannot be empty")] @@ -86,7 +86,7 @@ public class SalesEvidenceLACoordinateUpdateDto public class SalesEvidenceLACoordinateResponseDto { public int Id { get; set; } - public int ReportId { get; set; } + public int SalesEvidenceId { get; set; } public string Coordinates { get; set; } = string.Empty; public DateTime CreatedAt { get; set; } public DateTime? UpdatedAt { get; set; } @@ -96,7 +96,7 @@ public class SalesEvidenceLACoordinateResponseDto public class RentalEvidenceLACoordinateCreateDto { [Required] - public int ReportId { get; set; } + public int RentalEvidenceId { get; set; } [Required] [MinLength(1, ErrorMessage = "Coordinates cannot be empty")] @@ -106,7 +106,7 @@ public class RentalEvidenceLACoordinateCreateDto public class RentalEvidenceLACoordinateUpdateDto { [Required] - public int ReportId { get; set; } + public int RentalEvidenceId { get; set; } [Required] [MinLength(1, ErrorMessage = "Coordinates cannot be empty")] @@ -116,7 +116,7 @@ public class RentalEvidenceLACoordinateUpdateDto public class RentalEvidenceLACoordinateResponseDto { public int Id { get; set; } - public int ReportId { get; set; } + public int RentalEvidenceId { get; set; } public string Coordinates { get; set; } = string.Empty; public DateTime CreatedAt { get; set; } public DateTime? UpdatedAt { get; set; } diff --git a/Models/LACoordinates.cs b/Models/LACoordinates.cs index aad8a7a..a8d20aa 100644 --- a/Models/LACoordinates.cs +++ b/Models/LACoordinates.cs @@ -9,12 +9,12 @@ public class PastValuationsLACoordinate [DatabaseGenerated(DatabaseGeneratedOption.Identity)] public int Id { get; set; } // Primary Key (auto increment) - // Foreign key to PastValuationsLA table via ReportId + // Foreign key to PastValuationsLA table [Required] - public int ReportId { get; set; } + public int PastValuationId { get; set; } - [ForeignKey("ReportId")] - public virtual Report Report { get; set; } + [ForeignKey("PastValuationId")] + public virtual PastValuationsLA? PastValuation { get; set; } // Map coordinates from frontend (stored as JSON string) [Required] @@ -31,12 +31,12 @@ public class BuildingRatesLACoordinate [DatabaseGenerated(DatabaseGeneratedOption.Identity)] public int Id { get; set; } // Primary Key (auto increment) - // Foreign key to BuildingRatesLA table via ReportId + // Foreign key to BuildingRatesLA table [Required] - public int ReportId { get; set; } + public int BuildingRateId { get; set; } - [ForeignKey("ReportId")] - public virtual Report Report { get; set; } + [ForeignKey("BuildingRateId")] + public virtual BuildingRatesLA? BuildingRate { get; set; } // Map coordinates from frontend (stored as JSON string) [Required] @@ -53,12 +53,12 @@ public class SalesEvidenceLACoordinate [DatabaseGenerated(DatabaseGeneratedOption.Identity)] public int Id { get; set; } // Primary Key (auto increment) - // Foreign key to SalesEvidenceLA table via ReportId + // Foreign key to SalesEvidenceLA table [Required] - public int ReportId { get; set; } + public int SalesEvidenceId { get; set; } - [ForeignKey("ReportId")] - public virtual Report Report { get; set; } + [ForeignKey("SalesEvidenceId")] + public virtual SalesEvidenceLA? SalesEvidence { get; set; } // Map coordinates from frontend (stored as JSON string) [Required] @@ -75,12 +75,12 @@ public class RentalEvidenceLACoordinate [DatabaseGenerated(DatabaseGeneratedOption.Identity)] public int Id { get; set; } // Primary Key (auto increment) - // Foreign key to RentalEvidenceLA table via ReportId + // Foreign key to RentalEvidenceLA table [Required] - public int ReportId { get; set; } + public int RentalEvidenceId { get; set; } - [ForeignKey("ReportId")] - public virtual Report Report { get; set; } + [ForeignKey("RentalEvidenceId")] + public virtual RentalEvidenceLA? RentalEvidence { get; set; } // Map coordinates from frontend (stored as JSON string) [Required] diff --git a/Profiles/LACoordinateProfiles.cs b/Profiles/LACoordinateProfiles.cs index 1afa86e..945f23f 100644 --- a/Profiles/LACoordinateProfiles.cs +++ b/Profiles/LACoordinateProfiles.cs @@ -14,12 +14,12 @@ public LACoordinateProfiles() .ForMember(dest => dest.Id, opt => opt.Ignore()) .ForMember(dest => dest.CreatedAt, opt => opt.Ignore()) .ForMember(dest => dest.UpdatedAt, opt => opt.Ignore()) - .ForMember(dest => dest.Report, opt => opt.Ignore()); + .ForMember(dest => dest.PastValuation, opt => opt.Ignore()); CreateMap() .ForMember(dest => dest.Id, opt => opt.Ignore()) .ForMember(dest => dest.CreatedAt, opt => opt.Ignore()) .ForMember(dest => dest.UpdatedAt, opt => opt.Ignore()) - .ForMember(dest => dest.Report, opt => opt.Ignore()); + .ForMember(dest => dest.PastValuation, opt => opt.Ignore()); // BuildingRatesLA Coordinate Mappings CreateMap(); @@ -27,12 +27,12 @@ public LACoordinateProfiles() .ForMember(dest => dest.Id, opt => opt.Ignore()) .ForMember(dest => dest.CreatedAt, opt => opt.Ignore()) .ForMember(dest => dest.UpdatedAt, opt => opt.Ignore()) - .ForMember(dest => dest.Report, opt => opt.Ignore()); + .ForMember(dest => dest.BuildingRate, opt => opt.Ignore()); CreateMap() .ForMember(dest => dest.Id, opt => opt.Ignore()) .ForMember(dest => dest.CreatedAt, opt => opt.Ignore()) .ForMember(dest => dest.UpdatedAt, opt => opt.Ignore()) - .ForMember(dest => dest.Report, opt => opt.Ignore()); + .ForMember(dest => dest.BuildingRate, opt => opt.Ignore()); // SalesEvidenceLA Coordinate Mappings CreateMap(); @@ -40,12 +40,12 @@ public LACoordinateProfiles() .ForMember(dest => dest.Id, opt => opt.Ignore()) .ForMember(dest => dest.CreatedAt, opt => opt.Ignore()) .ForMember(dest => dest.UpdatedAt, opt => opt.Ignore()) - .ForMember(dest => dest.Report, opt => opt.Ignore()); + .ForMember(dest => dest.SalesEvidence, opt => opt.Ignore()); CreateMap() .ForMember(dest => dest.Id, opt => opt.Ignore()) .ForMember(dest => dest.CreatedAt, opt => opt.Ignore()) .ForMember(dest => dest.UpdatedAt, opt => opt.Ignore()) - .ForMember(dest => dest.Report, opt => opt.Ignore()); + .ForMember(dest => dest.SalesEvidence, opt => opt.Ignore()); // RentalEvidenceLA Coordinate Mappings CreateMap(); @@ -53,12 +53,12 @@ public LACoordinateProfiles() .ForMember(dest => dest.Id, opt => opt.Ignore()) .ForMember(dest => dest.CreatedAt, opt => opt.Ignore()) .ForMember(dest => dest.UpdatedAt, opt => opt.Ignore()) - .ForMember(dest => dest.Report, opt => opt.Ignore()); + .ForMember(dest => dest.RentalEvidence, opt => opt.Ignore()); CreateMap() .ForMember(dest => dest.Id, opt => opt.Ignore()) .ForMember(dest => dest.CreatedAt, opt => opt.Ignore()) .ForMember(dest => dest.UpdatedAt, opt => opt.Ignore()) - .ForMember(dest => dest.Report, opt => opt.Ignore()); + .ForMember(dest => dest.RentalEvidence, opt => opt.Ignore()); } } } diff --git a/repositories/ILACoordinateRepositories.cs b/repositories/ILACoordinateRepositories.cs index 4707a32..e9a518a 100644 --- a/repositories/ILACoordinateRepositories.cs +++ b/repositories/ILACoordinateRepositories.cs @@ -9,12 +9,12 @@ public interface IPastValuationsLACoordinateRepository { Task> GetAllAsync(); Task GetByIdAsync(int id); - Task> GetByReportIdAsync(int reportId); + Task> GetByPastValuationIdAsync(int pastValuationId); Task CreateAsync(PastValuationsLACoordinate coordinate); Task UpdateAsync(PastValuationsLACoordinate coordinate); Task DeleteAsync(int id); Task ExistsAsync(int id); - Task ReportExistsAsync(int reportId); + Task PastValuationExistsAsync(int pastValuationId); } // BuildingRatesLA Coordinate Repository @@ -22,12 +22,12 @@ public interface IBuildingRatesLACoordinateRepository { Task> GetAllAsync(); Task GetByIdAsync(int id); - Task> GetByReportIdAsync(int reportId); + Task> GetByBuildingRateIdAsync(int buildingRateId); Task CreateAsync(BuildingRatesLACoordinate coordinate); Task UpdateAsync(BuildingRatesLACoordinate coordinate); Task DeleteAsync(int id); Task ExistsAsync(int id); - Task ReportExistsAsync(int reportId); + Task BuildingRateExistsAsync(int buildingRateId); } // SalesEvidenceLA Coordinate Repository @@ -35,12 +35,12 @@ public interface ISalesEvidenceLACoordinateRepository { Task> GetAllAsync(); Task GetByIdAsync(int id); - Task> GetByReportIdAsync(int reportId); + Task> GetBySalesEvidenceIdAsync(int salesEvidenceId); Task CreateAsync(SalesEvidenceLACoordinate coordinate); Task UpdateAsync(SalesEvidenceLACoordinate coordinate); Task DeleteAsync(int id); Task ExistsAsync(int id); - Task ReportExistsAsync(int reportId); + Task SalesEvidenceExistsAsync(int salesEvidenceId); } // RentalEvidenceLA Coordinate Repository @@ -48,11 +48,11 @@ public interface IRentalEvidenceLACoordinateRepository { Task> GetAllAsync(); Task GetByIdAsync(int id); - Task> GetByReportIdAsync(int reportId); + Task> GetByRentalEvidenceIdAsync(int rentalEvidenceId); Task CreateAsync(RentalEvidenceLACoordinate coordinate); Task UpdateAsync(RentalEvidenceLACoordinate coordinate); Task DeleteAsync(int id); Task ExistsAsync(int id); - Task ReportExistsAsync(int reportId); + Task RentalEvidenceExistsAsync(int rentalEvidenceId); } } diff --git a/repositories/LACoordinateRepositories.cs b/repositories/LACoordinateRepositories.cs index d153ff2..67aedd2 100644 --- a/repositories/LACoordinateRepositories.cs +++ b/repositories/LACoordinateRepositories.cs @@ -20,22 +20,22 @@ public PastValuationsLACoordinateRepository(AppDbContext context) public async Task> GetAllAsync() { return await _context.PastValuationsLACoordinates - .Include(c => c.Report) + .Include(c => c.PastValuation) .ToListAsync(); } public async Task GetByIdAsync(int id) { return await _context.PastValuationsLACoordinates - .Include(c => c.Report) + .Include(c => c.PastValuation) .FirstOrDefaultAsync(c => c.Id == id); } - public async Task> GetByReportIdAsync(int reportId) + public async Task> GetByPastValuationIdAsync(int pastValuationId) { return await _context.PastValuationsLACoordinates - .Include(c => c.Report) - .Where(c => c.ReportId == reportId) + .Include(c => c.PastValuation) + .Where(c => c.PastValuationId == pastValuationId) .ToListAsync(); } @@ -46,7 +46,7 @@ public async Task CreateAsync(PastValuationsLACoordi await _context.SaveChangesAsync(); await _context.Entry(coordinate) - .Reference(c => c.Report) + .Reference(c => c.PastValuation) .LoadAsync(); return coordinate; @@ -85,9 +85,9 @@ public async Task ExistsAsync(int id) return await _context.PastValuationsLACoordinates.AnyAsync(c => c.Id == id); } - public async Task ReportExistsAsync(int reportId) + public async Task PastValuationExistsAsync(int pastValuationId) { - return await _context.Reports.AnyAsync(r => r.ReportId == reportId); + return await _context.PastValuationsLA.AnyAsync(p => p.Id == pastValuationId); } } @@ -104,22 +104,22 @@ public BuildingRatesLACoordinateRepository(AppDbContext context) public async Task> GetAllAsync() { return await _context.BuildingRatesLACoordinates - .Include(c => c.Report) + .Include(c => c.BuildingRate) .ToListAsync(); } public async Task GetByIdAsync(int id) { return await _context.BuildingRatesLACoordinates - .Include(c => c.Report) + .Include(c => c.BuildingRate) .FirstOrDefaultAsync(c => c.Id == id); } - public async Task> GetByReportIdAsync(int reportId) + public async Task> GetByBuildingRateIdAsync(int buildingRateId) { return await _context.BuildingRatesLACoordinates - .Include(c => c.Report) - .Where(c => c.ReportId == reportId) + .Include(c => c.BuildingRate) + .Where(c => c.BuildingRateId == buildingRateId) .ToListAsync(); } @@ -130,7 +130,7 @@ public async Task CreateAsync(BuildingRatesLACoordina await _context.SaveChangesAsync(); await _context.Entry(coordinate) - .Reference(c => c.Report) + .Reference(c => c.BuildingRate) .LoadAsync(); return coordinate; @@ -169,9 +169,9 @@ public async Task ExistsAsync(int id) return await _context.BuildingRatesLACoordinates.AnyAsync(c => c.Id == id); } - public async Task ReportExistsAsync(int reportId) + public async Task BuildingRateExistsAsync(int buildingRateId) { - return await _context.Reports.AnyAsync(r => r.ReportId == reportId); + return await _context.BuildingRatesLA.AnyAsync(b => b.Id == buildingRateId); } } @@ -188,22 +188,22 @@ public SalesEvidenceLACoordinateRepository(AppDbContext context) public async Task> GetAllAsync() { return await _context.SalesEvidenceLACoordinates - .Include(c => c.Report) + .Include(c => c.SalesEvidence) .ToListAsync(); } public async Task GetByIdAsync(int id) { return await _context.SalesEvidenceLACoordinates - .Include(c => c.Report) + .Include(c => c.SalesEvidence) .FirstOrDefaultAsync(c => c.Id == id); } - public async Task> GetByReportIdAsync(int reportId) + public async Task> GetBySalesEvidenceIdAsync(int salesEvidenceId) { return await _context.SalesEvidenceLACoordinates - .Include(c => c.Report) - .Where(c => c.ReportId == reportId) + .Include(c => c.SalesEvidence) + .Where(c => c.SalesEvidenceId == salesEvidenceId) .ToListAsync(); } @@ -214,7 +214,7 @@ public async Task CreateAsync(SalesEvidenceLACoordina await _context.SaveChangesAsync(); await _context.Entry(coordinate) - .Reference(c => c.Report) + .Reference(c => c.SalesEvidence) .LoadAsync(); return coordinate; @@ -253,9 +253,9 @@ public async Task ExistsAsync(int id) return await _context.SalesEvidenceLACoordinates.AnyAsync(c => c.Id == id); } - public async Task ReportExistsAsync(int reportId) + public async Task SalesEvidenceExistsAsync(int salesEvidenceId) { - return await _context.Reports.AnyAsync(r => r.ReportId == reportId); + return await _context.SalesEvidencesLA.AnyAsync(s => s.Id == salesEvidenceId); } } @@ -272,22 +272,22 @@ public RentalEvidenceLACoordinateRepository(AppDbContext context) public async Task> GetAllAsync() { return await _context.RentalEvidenceLACoordinates - .Include(c => c.Report) + .Include(c => c.RentalEvidence) .ToListAsync(); } public async Task GetByIdAsync(int id) { return await _context.RentalEvidenceLACoordinates - .Include(c => c.Report) + .Include(c => c.RentalEvidence) .FirstOrDefaultAsync(c => c.Id == id); } - public async Task> GetByReportIdAsync(int reportId) + public async Task> GetByRentalEvidenceIdAsync(int rentalEvidenceId) { return await _context.RentalEvidenceLACoordinates - .Include(c => c.Report) - .Where(c => c.ReportId == reportId) + .Include(c => c.RentalEvidence) + .Where(c => c.RentalEvidenceId == rentalEvidenceId) .ToListAsync(); } @@ -298,7 +298,7 @@ public async Task CreateAsync(RentalEvidenceLACoordi await _context.SaveChangesAsync(); await _context.Entry(coordinate) - .Reference(c => c.Report) + .Reference(c => c.RentalEvidence) .LoadAsync(); return coordinate; @@ -337,9 +337,9 @@ public async Task ExistsAsync(int id) return await _context.RentalEvidenceLACoordinates.AnyAsync(c => c.Id == id); } - public async Task ReportExistsAsync(int reportId) + public async Task RentalEvidenceExistsAsync(int rentalEvidenceId) { - return await _context.Reports.AnyAsync(r => r.ReportId == reportId); + return await _context.RentalEvidencesLA.AnyAsync(r => r.Id == rentalEvidenceId); } } } diff --git a/services/ILACoordinateServices.cs b/services/ILACoordinateServices.cs index ed142c6..d08ca56 100644 --- a/services/ILACoordinateServices.cs +++ b/services/ILACoordinateServices.cs @@ -9,7 +9,7 @@ public interface IPastValuationsLACoordinateService { Task> GetAllAsync(); Task GetByIdAsync(int id); - Task> GetByReportIdAsync(int reportId); + Task> GetByPastValuationIdAsync(int pastValuationId); Task CreateAsync(PastValuationsLACoordinateCreateDto dto); Task UpdateAsync(int id, PastValuationsLACoordinateUpdateDto dto); Task DeleteAsync(int id); @@ -20,7 +20,7 @@ public interface IBuildingRatesLACoordinateService { Task> GetAllAsync(); Task GetByIdAsync(int id); - Task> GetByReportIdAsync(int reportId); + Task> GetByBuildingRateIdAsync(int buildingRateId); Task CreateAsync(BuildingRatesLACoordinateCreateDto dto); Task UpdateAsync(int id, BuildingRatesLACoordinateUpdateDto dto); Task DeleteAsync(int id); @@ -31,7 +31,7 @@ public interface ISalesEvidenceLACoordinateService { Task> GetAllAsync(); Task GetByIdAsync(int id); - Task> GetByReportIdAsync(int reportId); + Task> GetBySalesEvidenceIdAsync(int salesEvidenceId); Task CreateAsync(SalesEvidenceLACoordinateCreateDto dto); Task UpdateAsync(int id, SalesEvidenceLACoordinateUpdateDto dto); Task DeleteAsync(int id); @@ -42,7 +42,7 @@ public interface IRentalEvidenceLACoordinateService { Task> GetAllAsync(); Task GetByIdAsync(int id); - Task> GetByReportIdAsync(int reportId); + Task> GetByRentalEvidenceIdAsync(int rentalEvidenceId); Task CreateAsync(RentalEvidenceLACoordinateCreateDto dto); Task UpdateAsync(int id, RentalEvidenceLACoordinateUpdateDto dto); Task DeleteAsync(int id); diff --git a/services/LACoordinateServices.cs b/services/LACoordinateServices.cs index ab8c880..f1d2063 100644 --- a/services/LACoordinateServices.cs +++ b/services/LACoordinateServices.cs @@ -36,18 +36,18 @@ public async Task GetByIdAsync(int id) return _mapper.Map(coordinate); } - public async Task> GetByReportIdAsync(int reportId) + public async Task> GetByPastValuationIdAsync(int pastValuationId) { - var coordinates = await _repository.GetByReportIdAsync(reportId); + var coordinates = await _repository.GetByPastValuationIdAsync(pastValuationId); return _mapper.Map>(coordinates); } public async Task CreateAsync(PastValuationsLACoordinateCreateDto dto) { - var reportExists = await _repository.ReportExistsAsync(dto.ReportId); - if (!reportExists) + var pastValuationExists = await _repository.PastValuationExistsAsync(dto.PastValuationId); + if (!pastValuationExists) { - throw new ArgumentException($"Report with ID {dto.ReportId} does not exist."); + throw new ArgumentException($"PastValuation with ID {dto.PastValuationId} does not exist."); } var coordinate = _mapper.Map(dto); @@ -63,10 +63,10 @@ public async Task UpdateAsync(int id, Pas return null; } - var reportExists = await _repository.ReportExistsAsync(dto.ReportId); - if (!reportExists) + var pastValuationExists = await _repository.PastValuationExistsAsync(dto.PastValuationId); + if (!pastValuationExists) { - throw new ArgumentException($"Report with ID {dto.ReportId} does not exist."); + throw new ArgumentException($"PastValuation with ID {dto.PastValuationId} does not exist."); } _mapper.Map(dto, existingCoordinate); @@ -116,18 +116,18 @@ public async Task GetByIdAsync(int id) return _mapper.Map(coordinate); } - public async Task> GetByReportIdAsync(int reportId) + public async Task> GetByBuildingRateIdAsync(int buildingRateId) { - var coordinates = await _repository.GetByReportIdAsync(reportId); + var coordinates = await _repository.GetByBuildingRateIdAsync(buildingRateId); return _mapper.Map>(coordinates); } public async Task CreateAsync(BuildingRatesLACoordinateCreateDto dto) { - var reportExists = await _repository.ReportExistsAsync(dto.ReportId); - if (!reportExists) + var buildingRateExists = await _repository.BuildingRateExistsAsync(dto.BuildingRateId); + if (!buildingRateExists) { - throw new ArgumentException($"Report with ID {dto.ReportId} does not exist."); + throw new ArgumentException($"BuildingRate with ID {dto.BuildingRateId} does not exist."); } var coordinate = _mapper.Map(dto); @@ -143,10 +143,10 @@ public async Task UpdateAsync(int id, Buil return null; } - var reportExists = await _repository.ReportExistsAsync(dto.ReportId); - if (!reportExists) + var buildingRateExists = await _repository.BuildingRateExistsAsync(dto.BuildingRateId); + if (!buildingRateExists) { - throw new ArgumentException($"Report with ID {dto.ReportId} does not exist."); + throw new ArgumentException($"BuildingRate with ID {dto.BuildingRateId} does not exist."); } _mapper.Map(dto, existingCoordinate); @@ -196,18 +196,18 @@ public async Task GetByIdAsync(int id) return _mapper.Map(coordinate); } - public async Task> GetByReportIdAsync(int reportId) + public async Task> GetBySalesEvidenceIdAsync(int salesEvidenceId) { - var coordinates = await _repository.GetByReportIdAsync(reportId); + var coordinates = await _repository.GetBySalesEvidenceIdAsync(salesEvidenceId); return _mapper.Map>(coordinates); } public async Task CreateAsync(SalesEvidenceLACoordinateCreateDto dto) { - var reportExists = await _repository.ReportExistsAsync(dto.ReportId); - if (!reportExists) + var salesEvidenceExists = await _repository.SalesEvidenceExistsAsync(dto.SalesEvidenceId); + if (!salesEvidenceExists) { - throw new ArgumentException($"Report with ID {dto.ReportId} does not exist."); + throw new ArgumentException($"SalesEvidence with ID {dto.SalesEvidenceId} does not exist."); } var coordinate = _mapper.Map(dto); @@ -223,10 +223,10 @@ public async Task UpdateAsync(int id, Sale return null; } - var reportExists = await _repository.ReportExistsAsync(dto.ReportId); - if (!reportExists) + var salesEvidenceExists = await _repository.SalesEvidenceExistsAsync(dto.SalesEvidenceId); + if (!salesEvidenceExists) { - throw new ArgumentException($"Report with ID {dto.ReportId} does not exist."); + throw new ArgumentException($"SalesEvidence with ID {dto.SalesEvidenceId} does not exist."); } _mapper.Map(dto, existingCoordinate); @@ -276,18 +276,18 @@ public async Task GetByIdAsync(int id) return _mapper.Map(coordinate); } - public async Task> GetByReportIdAsync(int reportId) + public async Task> GetByRentalEvidenceIdAsync(int rentalEvidenceId) { - var coordinates = await _repository.GetByReportIdAsync(reportId); + var coordinates = await _repository.GetByRentalEvidenceIdAsync(rentalEvidenceId); return _mapper.Map>(coordinates); } public async Task CreateAsync(RentalEvidenceLACoordinateCreateDto dto) { - var reportExists = await _repository.ReportExistsAsync(dto.ReportId); - if (!reportExists) + var rentalEvidenceExists = await _repository.RentalEvidenceExistsAsync(dto.RentalEvidenceId); + if (!rentalEvidenceExists) { - throw new ArgumentException($"Report with ID {dto.ReportId} does not exist."); + throw new ArgumentException($"RentalEvidence with ID {dto.RentalEvidenceId} does not exist."); } var coordinate = _mapper.Map(dto); @@ -303,10 +303,10 @@ public async Task UpdateAsync(int id, Ren return null; } - var reportExists = await _repository.ReportExistsAsync(dto.ReportId); - if (!reportExists) + var rentalEvidenceExists = await _repository.RentalEvidenceExistsAsync(dto.RentalEvidenceId); + if (!rentalEvidenceExists) { - throw new ArgumentException($"Report with ID {dto.ReportId} does not exist."); + throw new ArgumentException($"RentalEvidence with ID {dto.RentalEvidenceId} does not exist."); } _mapper.Map(dto, existingCoordinate); From 356364ea4dddceb494b81d5a64e9ac5c36df2009 Mon Sep 17 00:00:00 2001 From: JalinaH Date: Tue, 22 Jul 2025 22:21:06 +0530 Subject: [PATCH 14/21] feat(migrations): Update PastValuationsLA MasterFileId to int with conversion - Added migration to convert MasterFileId from string to int in PastValuationsLA table. - Introduced a temporary column for safe conversion and updated existing records. - Dropped the old string column and renamed the temporary column. - Ensured non-null constraint on MasterFileId with a default value for nulls. - Created index and foreign key constraint for MasterFileId referencing LandAquisitionMasterFiles. refactor(models): Update DTOs and entity models for MasterFileId type change - Changed MasterFileId property type from string to int in PastValuationsLADtos and PastValuationsLA model. - Added foreign key relationship in PastValuationsLA model for MasterFileId. chore(context): Add NeondbContext for PastValuationsLA - Created NeondbContext class for managing PastValuationsLA entity. - Configured model creating for PastValuationsLA with necessary indexes. feat(entity): Introduce PastValuationsLa entity - Added PastValuationsLa class to represent PastValuationsLA records with updated properties. --- ...asterFileIdToIntWithConversion.Designer.cs | 2160 +++++++++++++++++ ...ationsLAMasterFileIdToIntWithConversion.cs | 94 + Migrations/AppDbContextModelSnapshot.cs | 15 +- Models/DTOs/PastValuationsLADtos.cs | 6 +- Models/PastValuationsLA.cs | 5 +- NeondbContext.cs | 35 + PastValuationsLa.cs | 41 + 7 files changed, 2349 insertions(+), 7 deletions(-) create mode 100644 Migrations/20250722164706_UpdatePastValuationsLAMasterFileIdToIntWithConversion.Designer.cs create mode 100644 Migrations/20250722164706_UpdatePastValuationsLAMasterFileIdToIntWithConversion.cs create mode 100644 NeondbContext.cs create mode 100644 PastValuationsLa.cs diff --git a/Migrations/20250722164706_UpdatePastValuationsLAMasterFileIdToIntWithConversion.Designer.cs b/Migrations/20250722164706_UpdatePastValuationsLAMasterFileIdToIntWithConversion.Designer.cs new file mode 100644 index 0000000..dd1fd11 --- /dev/null +++ b/Migrations/20250722164706_UpdatePastValuationsLAMasterFileIdToIntWithConversion.Designer.cs @@ -0,0 +1,2160 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using ValuationBackend.Data; + +#nullable disable + +namespace ValuationBackend.Migrations +{ + [DbContext(typeof(AppDbContext))] + [Migration("20250722164706_UpdatePastValuationsLAMasterFileIdToIntWithConversion")] + partial class UpdatePastValuationsLAMasterFileIdToIntWithConversion + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "9.0.5") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("DecisionField", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Field") + .IsRequired() + .HasColumnType("text"); + + b.Property("FieldDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("FieldSize") + .HasColumnType("integer"); + + b.Property("FieldType") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("DecisionFields"); + }); + + modelBuilder.Entity("LandAquisitionMasterFile", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Lots") + .HasColumnType("integer"); + + b.Property("MasterFileNo") + .HasColumnType("integer"); + + b.Property("MasterFilesRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanType") + .IsRequired() + .HasColumnType("text"); + + b.Property("RequestingAuthorityReferenceNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Status") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("LandAquisitionMasterFiles"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Asset", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNo") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasColumnType("integer"); + + b.Property("IsRatingCard") + .HasColumnType("boolean"); + + b.Property("Owner") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("RdSt") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("RequestId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Ward") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.HasKey("Id"); + + b.HasIndex("RequestId"); + + b.ToTable("Assets"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetDivision", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Area") + .HasColumnType("numeric"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("LandType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("NewAssetNo") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("AssetDivisions"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetNumberChange", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ChangedDate") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfChange") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasMaxLength(255) + .HasColumnType("character varying(255)"); + + b.Property("FieldSize") + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("FieldType") + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("NewAssetNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("OldAssetNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Reason") + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("AssetNumberChanges"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("ConstructedBy") + .HasColumnType("text"); + + b.Property("Cost") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("FloorAreaSQFT") + .IsRequired() + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("Owner") + .IsRequired() + .HasColumnType("text"); + + b.Property("RatePerSQFT") + .IsRequired() + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("YearOfConstruction") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("BuildingRatesLA"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("BuildingRateId") + .HasColumnType("integer"); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("BuildingRateId"); + + b.ToTable("BuildingRatesLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccessCategory") + .IsRequired() + .HasColumnType("text"); + + b.Property("AccessCategoryDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquiredExtent") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquiringOfficerSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquisitionName") + .IsRequired() + .HasColumnType("text"); + + b.Property("AssessmentNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("AtLotNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("AtPlanNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryBottom") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryEast") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryNorth") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundarySouth") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryWest") + .IsRequired() + .HasColumnType("text"); + + b.Property("BuildingDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("BuildingInfo") + .IsRequired() + .HasColumnType("text"); + + b.Property("ChiefValuerRepresentativeSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfSection3BA") + .IsRequired() + .HasColumnType("text"); + + b.Property("DatePrepared") + .IsRequired() + .HasColumnType("text"); + + b.Property("DepthOfLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("DescriptionOfLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("DetailsOfBusiness") + .IsRequired() + .HasColumnType("text"); + + b.Property("Frontage") + .IsRequired() + .HasColumnType("text"); + + b.Property("GramasewakaSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("LandUseDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("LandUseType") + .IsRequired() + .HasColumnType("text"); + + b.Property("LevelWithAccess") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("NameOfTheLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("NameOfTheVillage") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionsDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionsInfo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlantationDetails") + .IsRequired() + .HasColumnType("text"); + + b.Property("PpCadLotNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("PpCadNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("RoadName") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("ConditionReports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.DomesticRatingCard", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Access") + .HasColumnType("text"); + + b.Property("Age") + .HasColumnType("integer"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("Condition") + .HasColumnType("text"); + + b.Property("Conveniences") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("Floor") + .HasColumnType("text"); + + b.Property("NewNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("Notes") + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .IsRequired() + .HasColumnType("text"); + + b.Property("ParkingSpace") + .HasColumnType("text"); + + b.Property("Plantations") + .HasColumnType("text"); + + b.Property("PropertySubCategory") + .HasColumnType("text"); + + b.Property("PropertyType") + .HasColumnType("text"); + + b.Property("RentPM") + .HasColumnType("numeric"); + + b.Property("RoadName") + .HasColumnType("text"); + + b.Property("SelectWalls") + .HasColumnType("text"); + + b.Property("SuggestedRate") + .HasColumnType("numeric"); + + b.Property("Terms") + .HasColumnType("text"); + + b.Property("TsBop") + .HasColumnType("text"); + + b.Property("WardNumber") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("DomesticRatingCards"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ImageData", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ImageBase64") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.ToTable("ImageData"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionBuilding", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AgeYears") + .HasColumnType("text"); + + b.Property("BathroomToilet") + .HasColumnType("text"); + + b.Property("BathroomToiletDoorsFittings") + .HasColumnType("text"); + + b.Property("BuildingCategory") + .HasColumnType("text"); + + b.Property("BuildingClass") + .HasColumnType("text"); + + b.Property("BuildingConditions") + .HasColumnType("text"); + + b.Property("BuildingId") + .HasColumnType("text"); + + b.Property("BuildingName") + .HasColumnType("text"); + + b.Property("Ceiling") + .HasColumnType("text"); + + b.Property("Condition") + .HasColumnType("text"); + + b.Property("Conveniences") + .HasColumnType("text"); + + b.Property("Design") + .HasColumnType("text"); + + b.Property("DetailOfBuilding") + .HasColumnType("text"); + + b.Property("Door") + .HasColumnType("text"); + + b.Property("ExpectedLifePeriodYears") + .HasColumnType("text"); + + b.Property("FloorFinisher") + .HasColumnType("text"); + + b.Property("FloorStructure") + .HasColumnType("text"); + + b.Property("FoundationStructure") + .HasColumnType("text"); + + b.Property("HandRail") + .HasColumnType("text"); + + b.Property("InspectionReportId") + .HasColumnType("integer"); + + b.Property("NatureOfConstruction") + .HasColumnType("text"); + + b.Property("NoOfFloorsAboveGround") + .HasColumnType("text") + .HasColumnName("NoOfFloorsAboveGround"); + + b.Property("NoOfFloorsBelowGround") + .HasColumnType("text") + .HasColumnName("NoOfFloorsBelowGround"); + + b.Property("OtherDoors") + .HasColumnType("text"); + + b.Property("PantryCupboard") + .HasColumnType("text"); + + b.Property("ParkingSpace") + .HasColumnType("text"); + + b.Property("RoofFinisher") + .HasColumnType("text"); + + b.Property("RoofFrame") + .HasColumnType("text"); + + b.Property("RoofMaterial") + .HasColumnType("text"); + + b.Property("Services") + .HasColumnType("text"); + + b.Property("Structure") + .HasColumnType("text"); + + b.Property("WallFinisher") + .HasColumnType("text"); + + b.Property("WallStructure") + .HasColumnType("text"); + + b.Property("Window") + .HasColumnType("text"); + + b.Property("WindowProtection") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("InspectionReportId"); + + b.ToTable("InspectionBuildings"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.Property("InspectionReportId") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("InspectionReportId")); + + b.Property("DetailsOfAssestsInventoryItems") + .HasColumnType("text") + .HasColumnName("DetailsOfAssestsInventoryItems"); + + b.Property("DetailsOfBusiness") + .HasColumnType("text"); + + b.Property("District") + .HasColumnType("text"); + + b.Property("DsDivision") + .HasColumnType("text"); + + b.Property("GnDivision") + .HasColumnType("text"); + + b.Property("InspectionDate") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionDetails") + .HasColumnType("text"); + + b.Property("OtherInformation") + .HasColumnType("text"); + + b.Property("Province") + .HasColumnType("text"); + + b.Property("Remark") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("InspectionReportId"); + + b.HasIndex("ReportId"); + + b.ToTable("InspectionReports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LALot", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterFileId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("MasterFileId"); + + b.ToTable("LALots"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMBuildingRates", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNumber") + .HasColumnType("text"); + + b.Property("ConstructedBy") + .HasColumnType("text"); + + b.Property("Cost") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("FloorArea") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerSQFT") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("YearOfConstruction") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMBuildingRates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMPastValuation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("DateOfValuation") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FileNo_GnDivision") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanOfParticulars") + .HasColumnType("text"); + + b.Property("PurposeOfValuation") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMPastValuations"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMRentalEvidence", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNo") + .HasColumnType("text"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("FloorRate") + .HasColumnType("text"); + + b.Property("HeadOfTerms") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePer") + .HasColumnType("text"); + + b.Property("RatePerMonth") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMRentalEvidences"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMSalesEvidence", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNumber") + .HasColumnType("text"); + + b.Property("Consideration") + .HasColumnType("text"); + + b.Property("DeedAttestedNumber") + .HasColumnType("text"); + + b.Property("DeedNumber") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("LandRegistryReferences") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("LotNumber") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("NotaryName") + .HasColumnType("text"); + + b.Property("PlanDate") + .HasColumnType("text"); + + b.Property("PlanNumber") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Road") + .HasColumnType("text"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("Vendor") + .HasColumnType("text"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMSalesEvidences"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LandMiscellaneousMasterFile", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Lots") + .HasColumnType("integer"); + + b.Property("MasterFileNo") + .HasColumnType("integer"); + + b.Property("PlanNo") + .HasColumnType("text"); + + b.Property("PlanType") + .HasColumnType("text"); + + b.Property("RequestingAuthorityReferenceNo") + .HasColumnType("text"); + + b.Property("Status") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("LandMiscellaneousMasterFiles"); + }); + + modelBuilder.Entity("ValuationBackend.Models.MasterDataItem", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Category") + .IsRequired() + .HasColumnType("text"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("MasterDataItems"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PasswordReset", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Email") + .IsRequired() + .HasColumnType("text"); + + b.Property("ExpiresAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Otp") + .IsRequired() + .HasColumnType("text"); + + b.Property("Used") + .HasColumnType("boolean"); + + b.HasKey("Id"); + + b.ToTable("PasswordResets"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfValuation") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FileNoGNDivision") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .HasColumnType("integer"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanOfParticulars") + .HasColumnType("text"); + + b.Property("PurposeOfValuation") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("MasterFileId"); + + b.HasIndex("ReportId"); + + b.ToTable("PastValuationsLA"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("PastValuationId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("PastValuationId"); + + b.ToTable("PastValuationsLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PropertyCategory", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Name") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("PropertyCategories"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RatingRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("LocalAuthority") + .IsRequired() + .HasColumnType("text"); + + b.Property("RatingReferenceNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("RequestType") + .IsRequired() + .HasColumnType("text"); + + b.Property("Status") + .IsRequired() + .HasColumnType("text"); + + b.Property("YearOfRevision") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.ToTable("RatingRequests"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Reconciliation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("NewNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("ObsoleteNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("StreetName") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("Reconciliations"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNo") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("FloorRateSQFT") + .HasColumnType("text"); + + b.Property("HeadOfTerms") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerMonth") + .HasColumnType("text"); + + b.Property("RatePerSqft") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("RentalEvidencesLA", (string)null); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("RentalEvidenceId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("RentalEvidenceId"); + + b.ToTable("RentalEvidenceLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Report", b => + { + b.Property("ReportId") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("ReportId")); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportType") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Timestamp") + .HasColumnType("timestamp with time zone"); + + b.HasKey("ReportId"); + + b.ToTable("Reports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Request", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("LocalAuthority") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RatingReferenceNo") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RequestTypeId") + .HasColumnType("integer"); + + b.Property("Status") + .HasColumnType("boolean"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("YearOfRevision") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("RequestTypeId"); + + b.ToTable("Requests"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RequestType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Code") + .IsRequired() + .HasMaxLength(2) + .HasColumnType("character varying(2)"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("RequestTypes"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNumber") + .HasColumnType("text"); + + b.Property("Consideration") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DeedAttestedNumber") + .HasColumnType("text"); + + b.Property("DeedNumber") + .HasColumnType("text"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FloorRate") + .HasColumnType("text"); + + b.Property("LandRegistryReferences") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("LotNumber") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("NotaryName") + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("PlanDate") + .HasColumnType("text"); + + b.Property("PlanNumber") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Road") + .HasColumnType("text"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Vendor") + .HasColumnType("text"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("SalesEvidencesLA", (string)null); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("SalesEvidenceId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("SalesEvidenceId"); + + b.ToTable("SalesEvidenceLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssignedDivision") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpEmail") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpId") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpName") + .IsRequired() + .HasColumnType("text"); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("bytea"); + + b.Property("PasswordSalt") + .IsRequired() + .HasColumnType("bytea"); + + b.Property("Position") + .IsRequired() + .HasColumnType("text"); + + b.Property("ProfilePicture") + .HasColumnType("bytea"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("ValuationBackend.Models.UserTask", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssignedDate") + .HasColumnType("timestamp with time zone"); + + b.Property("IsCompleted") + .HasColumnType("boolean"); + + b.Property("LandAcquisitionId") + .HasColumnType("integer"); + + b.Property("LandMiscellaneousId") + .HasColumnType("integer"); + + b.Property("ReferenceNumber") + .HasColumnType("text"); + + b.Property("RequestId") + .HasColumnType("integer"); + + b.Property("TaskType") + .IsRequired() + .HasColumnType("text"); + + b.Property("UserId") + .HasColumnType("integer"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.Property("WorkItemDescription") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("UserId"); + + b.ToTable("UserTasks"); + }); + + modelBuilder.Entity("ValuationBackend.Models.iteration2.RatingCards.OfficesRatingCard", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccessType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("Age") + .HasColumnType("integer"); + + b.Property("AssessmentNumber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("BuildingSelection") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CeilingHeight") + .HasColumnType("decimal(18,2)"); + + b.Property("Condition") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Conveniences") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("CreatedBy") + .IsRequired() + .HasColumnType("text"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("FloorNumber") + .HasColumnType("integer"); + + b.Property("FloorType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("LocalAuthority") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("LocalAuthorityCode") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("NewNumber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Notes") + .IsRequired() + .HasMaxLength(2000) + .HasColumnType("character varying(2000)"); + + b.Property("ObsoleteNumber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Occupier") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("OfficeGrade") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("OfficeSuite") + .IsRequired() + .HasMaxLength(1000) + .HasColumnType("character varying(1000)"); + + b.Property("Owner") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("ParkingSpace") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("PropertySubCategory") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("PropertyType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RentPM") + .HasColumnType("decimal(18,2)"); + + b.Property("RoadName") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("SuggestedRate") + .HasColumnType("decimal(18,2)"); + + b.Property("Terms") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("TotalArea") + .HasColumnType("decimal(18,2)"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("UpdatedBy") + .HasColumnType("text"); + + b.Property("UsableFloorArea") + .HasColumnType("decimal(18,2)"); + + b.Property("WallType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("WardNumber") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("OfficesRatingCards"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Asset", b => + { + b.HasOne("ValuationBackend.Models.Request", "Request") + .WithMany() + .HasForeignKey("RequestId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Request"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetDivision", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLACoordinate", b => + { + b.HasOne("ValuationBackend.Models.BuildingRatesLA", "BuildingRate") + .WithMany() + .HasForeignKey("BuildingRateId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("BuildingRate"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.DomesticRatingCard", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionBuilding", b => + { + b.HasOne("ValuationBackend.Models.InspectionReport", "InspectionReport") + .WithMany("Buildings") + .HasForeignKey("InspectionReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("InspectionReport"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LALot", b => + { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("MasterFile"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMBuildingRates", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMPastValuation", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMRentalEvidence", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMSalesEvidence", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLA", b => + { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("MasterFile"); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLACoordinate", b => + { + b.HasOne("ValuationBackend.Models.PastValuationsLA", "PastValuation") + .WithMany() + .HasForeignKey("PastValuationId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("PastValuation"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Reconciliation", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLACoordinate", b => + { + b.HasOne("ValuationBackend.Models.RentalEvidenceLA", "RentalEvidence") + .WithMany() + .HasForeignKey("RentalEvidenceId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("RentalEvidence"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Request", b => + { + b.HasOne("ValuationBackend.Models.RequestType", "RequestType") + .WithMany() + .HasForeignKey("RequestTypeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("RequestType"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLACoordinate", b => + { + b.HasOne("ValuationBackend.Models.SalesEvidenceLA", "SalesEvidence") + .WithMany() + .HasForeignKey("SalesEvidenceId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("SalesEvidence"); + }); + + modelBuilder.Entity("ValuationBackend.Models.UserTask", b => + { + b.HasOne("ValuationBackend.Models.User", "User") + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("User"); + }); + + modelBuilder.Entity("ValuationBackend.Models.iteration2.RatingCards.OfficesRatingCard", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.Navigation("Buildings"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/Migrations/20250722164706_UpdatePastValuationsLAMasterFileIdToIntWithConversion.cs b/Migrations/20250722164706_UpdatePastValuationsLAMasterFileIdToIntWithConversion.cs new file mode 100644 index 0000000..2bc754f --- /dev/null +++ b/Migrations/20250722164706_UpdatePastValuationsLAMasterFileIdToIntWithConversion.cs @@ -0,0 +1,94 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace ValuationBackend.Migrations +{ + /// + public partial class UpdatePastValuationsLAMasterFileIdToIntWithConversion : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + // Step 1: Add a temporary integer column + migrationBuilder.AddColumn( + name: "MasterFileId_temp", + table: "PastValuationsLA", + type: "integer", + nullable: true); + + // Step 2: Update the temporary column with converted values + // Only convert values that are valid integers, set others to NULL + migrationBuilder.Sql(@" + UPDATE ""PastValuationsLA"" + SET ""MasterFileId_temp"" = CASE + WHEN ""MasterFileId"" ~ '^[0-9]+$' THEN ""MasterFileId""::integer + ELSE NULL + END;"); + + // Step 3: Drop the old text column + migrationBuilder.DropColumn( + name: "MasterFileId", + table: "PastValuationsLA"); + + // Step 4: Rename the temporary column to the original name + migrationBuilder.RenameColumn( + name: "MasterFileId_temp", + table: "PastValuationsLA", + newName: "MasterFileId"); + + // Step 5: Make the column NOT NULL (set default value for any remaining nulls) + migrationBuilder.Sql(@" + UPDATE ""PastValuationsLA"" + SET ""MasterFileId"" = 1 + WHERE ""MasterFileId"" IS NULL;"); + + migrationBuilder.AlterColumn( + name: "MasterFileId", + table: "PastValuationsLA", + type: "integer", + nullable: false, + oldClrType: typeof(int), + oldType: "integer", + oldNullable: true); + + // Step 6: Create index for foreign key + migrationBuilder.CreateIndex( + name: "IX_PastValuationsLA_MasterFileId", + table: "PastValuationsLA", + column: "MasterFileId"); + + // Step 7: Add foreign key constraint + migrationBuilder.AddForeignKey( + name: "FK_PastValuationsLA_LandAquisitionMasterFiles_MasterFileId", + table: "PastValuationsLA", + column: "MasterFileId", + principalTable: "LandAquisitionMasterFiles", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + // Drop foreign key constraint + migrationBuilder.DropForeignKey( + name: "FK_PastValuationsLA_LandAquisitionMasterFiles_MasterFileId", + table: "PastValuationsLA"); + + // Drop index + migrationBuilder.DropIndex( + name: "IX_PastValuationsLA_MasterFileId", + table: "PastValuationsLA"); + + // Convert back to string + migrationBuilder.AlterColumn( + name: "MasterFileId", + table: "PastValuationsLA", + type: "text", + nullable: false, + oldClrType: typeof(int), + oldType: "integer"); + } + } +} diff --git a/Migrations/AppDbContextModelSnapshot.cs b/Migrations/AppDbContextModelSnapshot.cs index bd2eac5..a8837d5 100644 --- a/Migrations/AppDbContextModelSnapshot.cs +++ b/Migrations/AppDbContextModelSnapshot.cs @@ -1153,9 +1153,8 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("LocationLongitude") .HasColumnType("text"); - b.Property("MasterFileId") - .IsRequired() - .HasColumnType("text"); + b.Property("MasterFileId") + .HasColumnType("integer"); b.Property("MasterFileRefNo") .IsRequired() @@ -1187,6 +1186,8 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.HasKey("Id"); + b.HasIndex("MasterFileId"); + b.HasIndex("ReportId"); b.ToTable("PastValuationsLA"); @@ -2030,12 +2031,20 @@ protected override void BuildModel(ModelBuilder modelBuilder) modelBuilder.Entity("ValuationBackend.Models.PastValuationsLA", b => { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + b.HasOne("ValuationBackend.Models.Report", "Report") .WithMany() .HasForeignKey("ReportId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); + b.Navigation("MasterFile"); + b.Navigation("Report"); }); diff --git a/Models/DTOs/PastValuationsLADtos.cs b/Models/DTOs/PastValuationsLADtos.cs index 943e21b..fb0c2c3 100644 --- a/Models/DTOs/PastValuationsLADtos.cs +++ b/Models/DTOs/PastValuationsLADtos.cs @@ -6,7 +6,7 @@ namespace ValuationBackend.Models.DTOs public class PastValuationsLACreateDto { // Master file information - public string MasterFileId { get; set; } = string.Empty; + public int MasterFileId { get; set; } public string MasterFileRefNo { get; set; } = string.Empty; public string? FileNoGNDivision { get; set; } @@ -25,7 +25,7 @@ public class PastValuationsLACreateDto // Input DTO for updating an existing past valuation record public class PastValuationsLAUpdateDto { - public string MasterFileId { get; set; } = string.Empty; + public int MasterFileId { get; set; } public string MasterFileRefNo { get; set; } = string.Empty; public string? FileNoGNDivision { get; set; } @@ -47,7 +47,7 @@ public class PastValuationsLAReadDto public int Id { get; set; } public int ReportId { get; set; } - public string MasterFileId { get; set; } = string.Empty; + public int MasterFileId { get; set; } public string MasterFileRefNo { get; set; } = string.Empty; public string? FileNoGNDivision { get; set; } diff --git a/Models/PastValuationsLA.cs b/Models/PastValuationsLA.cs index fdfad8a..0b33e02 100644 --- a/Models/PastValuationsLA.cs +++ b/Models/PastValuationsLA.cs @@ -17,7 +17,10 @@ public class PastValuationsLA public Report? Report { get; set; } [Required] - public string MasterFileId { get; set; } = string.Empty; + public int MasterFileId { get; set; } + + [ForeignKey("MasterFileId")] + public LandAquisitionMasterFile? MasterFile { get; set; } [Required] public string MasterFileRefNo { get; set; } = string.Empty; diff --git a/NeondbContext.cs b/NeondbContext.cs new file mode 100644 index 0000000..91c5c7b --- /dev/null +++ b/NeondbContext.cs @@ -0,0 +1,35 @@ +using System; +using System.Collections.Generic; +using Microsoft.EntityFrameworkCore; + +namespace ValuationBackend; + +public partial class NeondbContext : DbContext +{ + public NeondbContext(DbContextOptions options) + : base(options) + { + } + + public virtual DbSet PastValuationsLas { get; set; } + + protected override void OnModelCreating(ModelBuilder modelBuilder) + { + modelBuilder.Entity(entity => + { + entity.HasKey(e => e.Id).HasName("PK_PastValuationsLA_temp"); + + entity.ToTable("PastValuationsLA"); + + entity.HasIndex(e => e.MasterFileId, "IX_PastValuationsLA_MasterFileId"); + + entity.HasIndex(e => e.ReportId, "IX_PastValuationsLA_ReportId"); + + entity.Property(e => e.FileNoGndivision).HasColumnName("FileNoGNDivision"); + }); + + OnModelCreatingPartial(modelBuilder); + } + + partial void OnModelCreatingPartial(ModelBuilder modelBuilder); +} diff --git a/PastValuationsLa.cs b/PastValuationsLa.cs new file mode 100644 index 0000000..74e5030 --- /dev/null +++ b/PastValuationsLa.cs @@ -0,0 +1,41 @@ +using System; +using System.Collections.Generic; + +namespace ValuationBackend; + +public partial class PastValuationsLa +{ + public int Id { get; set; } + + public int ReportId { get; set; } + + public string MasterFileRefNo { get; set; } = null!; + + public string? FileNoGndivision { get; set; } + + public string? Situation { get; set; } + + public string? DateOfValuation { get; set; } + + public string? PurposeOfValuation { get; set; } + + public string? PlanOfParticulars { get; set; } + + public string? Extent { get; set; } + + public string? Rate { get; set; } + + public string? RateType { get; set; } + + public string? Remarks { get; set; } + + public string? LocationLongitude { get; set; } + + public string? LocationLatitude { get; set; } + + public DateTime CreatedAt { get; set; } + + public DateTime? UpdatedAt { get; set; } + + public int MasterFileId { get; set; } +} From c4f23358feed7f559441fd05eb3d91daccbf5601 Mon Sep 17 00:00:00 2001 From: JalinaH Date: Tue, 22 Jul 2025 22:31:19 +0530 Subject: [PATCH 15/21] feat: Convert MasterFileId in BuildingRatesLA from string to int - Added a migration to convert the MasterFileId column in the BuildingRatesLA table from string to integer. - Introduced a temporary column for data conversion and ensured data integrity during the migration. - Updated the BuildingRatesLA model to reflect the new integer type for MasterFileId. - Modified DTOs for BuildingRatesLA to accommodate the change from string to int for MasterFileId. - Established foreign key relationship with LandAquisitionMasterFiles. --- ...ildingRatesLAMasterFileIdToInt.Designer.cs | 2169 +++++++++++++++++ ...ConvertBuildingRatesLAMasterFileIdToInt.cs | 114 + Migrations/AppDbContextModelSnapshot.cs | 15 +- Models/BuildingRatesLA.cs | 5 +- Models/DTOs/BuildingRatesLADtos.cs | 6 +- 5 files changed, 2302 insertions(+), 7 deletions(-) create mode 100644 Migrations/20250722165759_ConvertBuildingRatesLAMasterFileIdToInt.Designer.cs create mode 100644 Migrations/20250722165759_ConvertBuildingRatesLAMasterFileIdToInt.cs diff --git a/Migrations/20250722165759_ConvertBuildingRatesLAMasterFileIdToInt.Designer.cs b/Migrations/20250722165759_ConvertBuildingRatesLAMasterFileIdToInt.Designer.cs new file mode 100644 index 0000000..e1781f1 --- /dev/null +++ b/Migrations/20250722165759_ConvertBuildingRatesLAMasterFileIdToInt.Designer.cs @@ -0,0 +1,2169 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using ValuationBackend.Data; + +#nullable disable + +namespace ValuationBackend.Migrations +{ + [DbContext(typeof(AppDbContext))] + [Migration("20250722165759_ConvertBuildingRatesLAMasterFileIdToInt")] + partial class ConvertBuildingRatesLAMasterFileIdToInt + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "9.0.5") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("DecisionField", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Field") + .IsRequired() + .HasColumnType("text"); + + b.Property("FieldDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("FieldSize") + .HasColumnType("integer"); + + b.Property("FieldType") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("DecisionFields"); + }); + + modelBuilder.Entity("LandAquisitionMasterFile", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Lots") + .HasColumnType("integer"); + + b.Property("MasterFileNo") + .HasColumnType("integer"); + + b.Property("MasterFilesRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanType") + .IsRequired() + .HasColumnType("text"); + + b.Property("RequestingAuthorityReferenceNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Status") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("LandAquisitionMasterFiles"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Asset", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNo") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasColumnType("integer"); + + b.Property("IsRatingCard") + .HasColumnType("boolean"); + + b.Property("Owner") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("RdSt") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("RequestId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Ward") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.HasKey("Id"); + + b.HasIndex("RequestId"); + + b.ToTable("Assets"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetDivision", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Area") + .HasColumnType("numeric"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("LandType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("NewAssetNo") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("AssetDivisions"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetNumberChange", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ChangedDate") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfChange") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasMaxLength(255) + .HasColumnType("character varying(255)"); + + b.Property("FieldSize") + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("FieldType") + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("NewAssetNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("OldAssetNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Reason") + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("AssetNumberChanges"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("ConstructedBy") + .HasColumnType("text"); + + b.Property("Cost") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("FloorAreaSQFT") + .IsRequired() + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .HasColumnType("integer"); + + b.Property("Owner") + .IsRequired() + .HasColumnType("text"); + + b.Property("RatePerSQFT") + .IsRequired() + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("YearOfConstruction") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("MasterFileId"); + + b.HasIndex("ReportId"); + + b.ToTable("BuildingRatesLA"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("BuildingRateId") + .HasColumnType("integer"); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("BuildingRateId"); + + b.ToTable("BuildingRatesLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccessCategory") + .IsRequired() + .HasColumnType("text"); + + b.Property("AccessCategoryDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquiredExtent") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquiringOfficerSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquisitionName") + .IsRequired() + .HasColumnType("text"); + + b.Property("AssessmentNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("AtLotNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("AtPlanNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryBottom") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryEast") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryNorth") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundarySouth") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryWest") + .IsRequired() + .HasColumnType("text"); + + b.Property("BuildingDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("BuildingInfo") + .IsRequired() + .HasColumnType("text"); + + b.Property("ChiefValuerRepresentativeSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfSection3BA") + .IsRequired() + .HasColumnType("text"); + + b.Property("DatePrepared") + .IsRequired() + .HasColumnType("text"); + + b.Property("DepthOfLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("DescriptionOfLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("DetailsOfBusiness") + .IsRequired() + .HasColumnType("text"); + + b.Property("Frontage") + .IsRequired() + .HasColumnType("text"); + + b.Property("GramasewakaSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("LandUseDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("LandUseType") + .IsRequired() + .HasColumnType("text"); + + b.Property("LevelWithAccess") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("NameOfTheLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("NameOfTheVillage") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionsDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionsInfo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlantationDetails") + .IsRequired() + .HasColumnType("text"); + + b.Property("PpCadLotNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("PpCadNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("RoadName") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("ConditionReports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.DomesticRatingCard", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Access") + .HasColumnType("text"); + + b.Property("Age") + .HasColumnType("integer"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("Condition") + .HasColumnType("text"); + + b.Property("Conveniences") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("Floor") + .HasColumnType("text"); + + b.Property("NewNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("Notes") + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .IsRequired() + .HasColumnType("text"); + + b.Property("ParkingSpace") + .HasColumnType("text"); + + b.Property("Plantations") + .HasColumnType("text"); + + b.Property("PropertySubCategory") + .HasColumnType("text"); + + b.Property("PropertyType") + .HasColumnType("text"); + + b.Property("RentPM") + .HasColumnType("numeric"); + + b.Property("RoadName") + .HasColumnType("text"); + + b.Property("SelectWalls") + .HasColumnType("text"); + + b.Property("SuggestedRate") + .HasColumnType("numeric"); + + b.Property("Terms") + .HasColumnType("text"); + + b.Property("TsBop") + .HasColumnType("text"); + + b.Property("WardNumber") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("DomesticRatingCards"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ImageData", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ImageBase64") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.ToTable("ImageData"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionBuilding", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AgeYears") + .HasColumnType("text"); + + b.Property("BathroomToilet") + .HasColumnType("text"); + + b.Property("BathroomToiletDoorsFittings") + .HasColumnType("text"); + + b.Property("BuildingCategory") + .HasColumnType("text"); + + b.Property("BuildingClass") + .HasColumnType("text"); + + b.Property("BuildingConditions") + .HasColumnType("text"); + + b.Property("BuildingId") + .HasColumnType("text"); + + b.Property("BuildingName") + .HasColumnType("text"); + + b.Property("Ceiling") + .HasColumnType("text"); + + b.Property("Condition") + .HasColumnType("text"); + + b.Property("Conveniences") + .HasColumnType("text"); + + b.Property("Design") + .HasColumnType("text"); + + b.Property("DetailOfBuilding") + .HasColumnType("text"); + + b.Property("Door") + .HasColumnType("text"); + + b.Property("ExpectedLifePeriodYears") + .HasColumnType("text"); + + b.Property("FloorFinisher") + .HasColumnType("text"); + + b.Property("FloorStructure") + .HasColumnType("text"); + + b.Property("FoundationStructure") + .HasColumnType("text"); + + b.Property("HandRail") + .HasColumnType("text"); + + b.Property("InspectionReportId") + .HasColumnType("integer"); + + b.Property("NatureOfConstruction") + .HasColumnType("text"); + + b.Property("NoOfFloorsAboveGround") + .HasColumnType("text") + .HasColumnName("NoOfFloorsAboveGround"); + + b.Property("NoOfFloorsBelowGround") + .HasColumnType("text") + .HasColumnName("NoOfFloorsBelowGround"); + + b.Property("OtherDoors") + .HasColumnType("text"); + + b.Property("PantryCupboard") + .HasColumnType("text"); + + b.Property("ParkingSpace") + .HasColumnType("text"); + + b.Property("RoofFinisher") + .HasColumnType("text"); + + b.Property("RoofFrame") + .HasColumnType("text"); + + b.Property("RoofMaterial") + .HasColumnType("text"); + + b.Property("Services") + .HasColumnType("text"); + + b.Property("Structure") + .HasColumnType("text"); + + b.Property("WallFinisher") + .HasColumnType("text"); + + b.Property("WallStructure") + .HasColumnType("text"); + + b.Property("Window") + .HasColumnType("text"); + + b.Property("WindowProtection") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("InspectionReportId"); + + b.ToTable("InspectionBuildings"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.Property("InspectionReportId") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("InspectionReportId")); + + b.Property("DetailsOfAssestsInventoryItems") + .HasColumnType("text") + .HasColumnName("DetailsOfAssestsInventoryItems"); + + b.Property("DetailsOfBusiness") + .HasColumnType("text"); + + b.Property("District") + .HasColumnType("text"); + + b.Property("DsDivision") + .HasColumnType("text"); + + b.Property("GnDivision") + .HasColumnType("text"); + + b.Property("InspectionDate") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionDetails") + .HasColumnType("text"); + + b.Property("OtherInformation") + .HasColumnType("text"); + + b.Property("Province") + .HasColumnType("text"); + + b.Property("Remark") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("InspectionReportId"); + + b.HasIndex("ReportId"); + + b.ToTable("InspectionReports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LALot", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterFileId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("MasterFileId"); + + b.ToTable("LALots"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMBuildingRates", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNumber") + .HasColumnType("text"); + + b.Property("ConstructedBy") + .HasColumnType("text"); + + b.Property("Cost") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("FloorArea") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerSQFT") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("YearOfConstruction") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMBuildingRates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMPastValuation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("DateOfValuation") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FileNo_GnDivision") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanOfParticulars") + .HasColumnType("text"); + + b.Property("PurposeOfValuation") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMPastValuations"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMRentalEvidence", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNo") + .HasColumnType("text"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("FloorRate") + .HasColumnType("text"); + + b.Property("HeadOfTerms") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePer") + .HasColumnType("text"); + + b.Property("RatePerMonth") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMRentalEvidences"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMSalesEvidence", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNumber") + .HasColumnType("text"); + + b.Property("Consideration") + .HasColumnType("text"); + + b.Property("DeedAttestedNumber") + .HasColumnType("text"); + + b.Property("DeedNumber") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("LandRegistryReferences") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("LotNumber") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("NotaryName") + .HasColumnType("text"); + + b.Property("PlanDate") + .HasColumnType("text"); + + b.Property("PlanNumber") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Road") + .HasColumnType("text"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("Vendor") + .HasColumnType("text"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMSalesEvidences"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LandMiscellaneousMasterFile", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Lots") + .HasColumnType("integer"); + + b.Property("MasterFileNo") + .HasColumnType("integer"); + + b.Property("PlanNo") + .HasColumnType("text"); + + b.Property("PlanType") + .HasColumnType("text"); + + b.Property("RequestingAuthorityReferenceNo") + .HasColumnType("text"); + + b.Property("Status") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("LandMiscellaneousMasterFiles"); + }); + + modelBuilder.Entity("ValuationBackend.Models.MasterDataItem", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Category") + .IsRequired() + .HasColumnType("text"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("MasterDataItems"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PasswordReset", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Email") + .IsRequired() + .HasColumnType("text"); + + b.Property("ExpiresAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Otp") + .IsRequired() + .HasColumnType("text"); + + b.Property("Used") + .HasColumnType("boolean"); + + b.HasKey("Id"); + + b.ToTable("PasswordResets"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfValuation") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FileNoGNDivision") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .HasColumnType("integer"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanOfParticulars") + .HasColumnType("text"); + + b.Property("PurposeOfValuation") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("MasterFileId"); + + b.HasIndex("ReportId"); + + b.ToTable("PastValuationsLA"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("PastValuationId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("PastValuationId"); + + b.ToTable("PastValuationsLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PropertyCategory", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Name") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("PropertyCategories"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RatingRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("LocalAuthority") + .IsRequired() + .HasColumnType("text"); + + b.Property("RatingReferenceNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("RequestType") + .IsRequired() + .HasColumnType("text"); + + b.Property("Status") + .IsRequired() + .HasColumnType("text"); + + b.Property("YearOfRevision") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.ToTable("RatingRequests"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Reconciliation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("NewNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("ObsoleteNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("StreetName") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("Reconciliations"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNo") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("FloorRateSQFT") + .HasColumnType("text"); + + b.Property("HeadOfTerms") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerMonth") + .HasColumnType("text"); + + b.Property("RatePerSqft") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("RentalEvidencesLA", (string)null); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("RentalEvidenceId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("RentalEvidenceId"); + + b.ToTable("RentalEvidenceLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Report", b => + { + b.Property("ReportId") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("ReportId")); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportType") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Timestamp") + .HasColumnType("timestamp with time zone"); + + b.HasKey("ReportId"); + + b.ToTable("Reports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Request", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("LocalAuthority") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RatingReferenceNo") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RequestTypeId") + .HasColumnType("integer"); + + b.Property("Status") + .HasColumnType("boolean"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("YearOfRevision") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("RequestTypeId"); + + b.ToTable("Requests"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RequestType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Code") + .IsRequired() + .HasMaxLength(2) + .HasColumnType("character varying(2)"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("RequestTypes"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNumber") + .HasColumnType("text"); + + b.Property("Consideration") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DeedAttestedNumber") + .HasColumnType("text"); + + b.Property("DeedNumber") + .HasColumnType("text"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FloorRate") + .HasColumnType("text"); + + b.Property("LandRegistryReferences") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("LotNumber") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("NotaryName") + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("PlanDate") + .HasColumnType("text"); + + b.Property("PlanNumber") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Road") + .HasColumnType("text"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Vendor") + .HasColumnType("text"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("SalesEvidencesLA", (string)null); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("SalesEvidenceId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("SalesEvidenceId"); + + b.ToTable("SalesEvidenceLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssignedDivision") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpEmail") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpId") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpName") + .IsRequired() + .HasColumnType("text"); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("bytea"); + + b.Property("PasswordSalt") + .IsRequired() + .HasColumnType("bytea"); + + b.Property("Position") + .IsRequired() + .HasColumnType("text"); + + b.Property("ProfilePicture") + .HasColumnType("bytea"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("ValuationBackend.Models.UserTask", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssignedDate") + .HasColumnType("timestamp with time zone"); + + b.Property("IsCompleted") + .HasColumnType("boolean"); + + b.Property("LandAcquisitionId") + .HasColumnType("integer"); + + b.Property("LandMiscellaneousId") + .HasColumnType("integer"); + + b.Property("ReferenceNumber") + .HasColumnType("text"); + + b.Property("RequestId") + .HasColumnType("integer"); + + b.Property("TaskType") + .IsRequired() + .HasColumnType("text"); + + b.Property("UserId") + .HasColumnType("integer"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.Property("WorkItemDescription") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("UserId"); + + b.ToTable("UserTasks"); + }); + + modelBuilder.Entity("ValuationBackend.Models.iteration2.RatingCards.OfficesRatingCard", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccessType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("Age") + .HasColumnType("integer"); + + b.Property("AssessmentNumber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("BuildingSelection") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CeilingHeight") + .HasColumnType("decimal(18,2)"); + + b.Property("Condition") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Conveniences") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("CreatedBy") + .IsRequired() + .HasColumnType("text"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("FloorNumber") + .HasColumnType("integer"); + + b.Property("FloorType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("LocalAuthority") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("LocalAuthorityCode") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("NewNumber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Notes") + .IsRequired() + .HasMaxLength(2000) + .HasColumnType("character varying(2000)"); + + b.Property("ObsoleteNumber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Occupier") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("OfficeGrade") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("OfficeSuite") + .IsRequired() + .HasMaxLength(1000) + .HasColumnType("character varying(1000)"); + + b.Property("Owner") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("ParkingSpace") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("PropertySubCategory") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("PropertyType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RentPM") + .HasColumnType("decimal(18,2)"); + + b.Property("RoadName") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("SuggestedRate") + .HasColumnType("decimal(18,2)"); + + b.Property("Terms") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("TotalArea") + .HasColumnType("decimal(18,2)"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("UpdatedBy") + .HasColumnType("text"); + + b.Property("UsableFloorArea") + .HasColumnType("decimal(18,2)"); + + b.Property("WallType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("WardNumber") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("OfficesRatingCards"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Asset", b => + { + b.HasOne("ValuationBackend.Models.Request", "Request") + .WithMany() + .HasForeignKey("RequestId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Request"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetDivision", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLA", b => + { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("MasterFile"); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLACoordinate", b => + { + b.HasOne("ValuationBackend.Models.BuildingRatesLA", "BuildingRate") + .WithMany() + .HasForeignKey("BuildingRateId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("BuildingRate"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.DomesticRatingCard", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionBuilding", b => + { + b.HasOne("ValuationBackend.Models.InspectionReport", "InspectionReport") + .WithMany("Buildings") + .HasForeignKey("InspectionReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("InspectionReport"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LALot", b => + { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("MasterFile"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMBuildingRates", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMPastValuation", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMRentalEvidence", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMSalesEvidence", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLA", b => + { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("MasterFile"); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLACoordinate", b => + { + b.HasOne("ValuationBackend.Models.PastValuationsLA", "PastValuation") + .WithMany() + .HasForeignKey("PastValuationId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("PastValuation"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Reconciliation", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLACoordinate", b => + { + b.HasOne("ValuationBackend.Models.RentalEvidenceLA", "RentalEvidence") + .WithMany() + .HasForeignKey("RentalEvidenceId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("RentalEvidence"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Request", b => + { + b.HasOne("ValuationBackend.Models.RequestType", "RequestType") + .WithMany() + .HasForeignKey("RequestTypeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("RequestType"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLACoordinate", b => + { + b.HasOne("ValuationBackend.Models.SalesEvidenceLA", "SalesEvidence") + .WithMany() + .HasForeignKey("SalesEvidenceId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("SalesEvidence"); + }); + + modelBuilder.Entity("ValuationBackend.Models.UserTask", b => + { + b.HasOne("ValuationBackend.Models.User", "User") + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("User"); + }); + + modelBuilder.Entity("ValuationBackend.Models.iteration2.RatingCards.OfficesRatingCard", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.Navigation("Buildings"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/Migrations/20250722165759_ConvertBuildingRatesLAMasterFileIdToInt.cs b/Migrations/20250722165759_ConvertBuildingRatesLAMasterFileIdToInt.cs new file mode 100644 index 0000000..9912d2d --- /dev/null +++ b/Migrations/20250722165759_ConvertBuildingRatesLAMasterFileIdToInt.cs @@ -0,0 +1,114 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace ValuationBackend.Migrations +{ + /// + public partial class ConvertBuildingRatesLAMasterFileIdToInt : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + // Step 1: Add a temporary column for the integer values + migrationBuilder.AddColumn( + name: "MasterFileId_Temp", + table: "BuildingRatesLA", + type: "integer", + nullable: true); + + // Step 2: Convert existing string data to integers with validation + migrationBuilder.Sql(@" + UPDATE ""BuildingRatesLA"" + SET ""MasterFileId_Temp"" = CASE + WHEN ""MasterFileId"" ~ '^[0-9]+$' AND ""MasterFileId"" != '' THEN + CAST(""MasterFileId"" AS integer) + ELSE + 1 -- Default to 1 if invalid or empty + END; + "); + + // Step 3: Drop the old string column + migrationBuilder.DropColumn( + name: "MasterFileId", + table: "BuildingRatesLA"); + + // Step 4: Rename the temporary column to the original name + migrationBuilder.RenameColumn( + name: "MasterFileId_Temp", + table: "BuildingRatesLA", + newName: "MasterFileId"); + + // Step 5: Make the column non-nullable + migrationBuilder.AlterColumn( + name: "MasterFileId", + table: "BuildingRatesLA", + type: "integer", + nullable: false, + oldClrType: typeof(int), + oldType: "integer", + oldNullable: true); + + // Step 6: Create index and foreign key + migrationBuilder.CreateIndex( + name: "IX_BuildingRatesLA_MasterFileId", + table: "BuildingRatesLA", + column: "MasterFileId"); + + migrationBuilder.AddForeignKey( + name: "FK_BuildingRatesLA_LandAquisitionMasterFiles_MasterFileId", + table: "BuildingRatesLA", + column: "MasterFileId", + principalTable: "LandAquisitionMasterFiles", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + // Step 1: Drop foreign key and index + migrationBuilder.DropForeignKey( + name: "FK_BuildingRatesLA_LandAquisitionMasterFiles_MasterFileId", + table: "BuildingRatesLA"); + + migrationBuilder.DropIndex( + name: "IX_BuildingRatesLA_MasterFileId", + table: "BuildingRatesLA"); + + // Step 2: Add temporary string column + migrationBuilder.AddColumn( + name: "MasterFileId_Temp", + table: "BuildingRatesLA", + type: "text", + nullable: true); + + // Step 3: Convert integer values back to strings + migrationBuilder.Sql(@" + UPDATE ""BuildingRatesLA"" + SET ""MasterFileId_Temp"" = CAST(""MasterFileId"" AS text); + "); + + // Step 4: Drop the integer column + migrationBuilder.DropColumn( + name: "MasterFileId", + table: "BuildingRatesLA"); + + // Step 5: Rename temporary column back + migrationBuilder.RenameColumn( + name: "MasterFileId_Temp", + table: "BuildingRatesLA", + newName: "MasterFileId"); + + // Step 6: Make column non-nullable string + migrationBuilder.AlterColumn( + name: "MasterFileId", + table: "BuildingRatesLA", + type: "text", + nullable: false, + oldClrType: typeof(string), + oldType: "text", + oldNullable: true); + } + } +} diff --git a/Migrations/AppDbContextModelSnapshot.cs b/Migrations/AppDbContextModelSnapshot.cs index a8837d5..7109e72 100644 --- a/Migrations/AppDbContextModelSnapshot.cs +++ b/Migrations/AppDbContextModelSnapshot.cs @@ -257,9 +257,8 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("LocationLongitude") .HasColumnType("text"); - b.Property("MasterFileId") - .IsRequired() - .HasColumnType("text"); + b.Property("MasterFileId") + .HasColumnType("integer"); b.Property("Owner") .IsRequired() @@ -284,6 +283,8 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.HasKey("Id"); + b.HasIndex("MasterFileId"); + b.HasIndex("ReportId"); b.ToTable("BuildingRatesLA"); @@ -1910,12 +1911,20 @@ protected override void BuildModel(ModelBuilder modelBuilder) modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLA", b => { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + b.HasOne("ValuationBackend.Models.Report", "Report") .WithMany() .HasForeignKey("ReportId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); + b.Navigation("MasterFile"); + b.Navigation("Report"); }); diff --git a/Models/BuildingRatesLA.cs b/Models/BuildingRatesLA.cs index 886757e..b25d3e2 100644 --- a/Models/BuildingRatesLA.cs +++ b/Models/BuildingRatesLA.cs @@ -17,7 +17,10 @@ public class BuildingRatesLA public Report? Report { get; set; } [Required] - public string MasterFileId { get; set; } = string.Empty; + public int MasterFileId { get; set; } + + [ForeignKey("MasterFileId")] + public LandAquisitionMasterFile? MasterFile { get; set; } [Required] public string AssessmentNumber { get; set; } = string.Empty; diff --git a/Models/DTOs/BuildingRatesLADtos.cs b/Models/DTOs/BuildingRatesLADtos.cs index c6c367d..74603b9 100644 --- a/Models/DTOs/BuildingRatesLADtos.cs +++ b/Models/DTOs/BuildingRatesLADtos.cs @@ -6,7 +6,7 @@ namespace ValuationBackend.Models.DTOs public class BuildingRatesLACreateDto { // Master file information - public string MasterFileId { get; set; } = string.Empty; + public int MasterFileId { get; set; } public string? AssessmentNumber { get; set; } public string? Owner { get; set; } @@ -24,7 +24,7 @@ public class BuildingRatesLACreateDto // Input DTO for updating an existing building rate public class BuildingRatesLAUpdateDto { - public string MasterFileId { get; set; } = string.Empty; + public int MasterFileId { get; set; } public string? AssessmentNumber { get; set; } public string? Owner { get; set; } @@ -45,7 +45,7 @@ public class BuildingRatesLAResponseDto public int Id { get; set; } public int ReportId { get; set; } - public string MasterFileId { get; set; } = string.Empty; + public int MasterFileId { get; set; } public string? AssessmentNumber { get; set; } public string? Owner { get; set; } From 4b2074fe774bb8a9c59b39ef0a8b88a95d919ed6 Mon Sep 17 00:00:00 2001 From: JalinaH Date: Tue, 22 Jul 2025 22:46:38 +0530 Subject: [PATCH 16/21] feat: Convert MasterFileId in RentalEvidencesLA from string to int - Added a new migration to convert the MasterFileId column in the RentalEvidencesLA table from string to integer. - Introduced a temporary column for safe data migration and ensured data integrity by validating existing records against LandAquisitionMasterFiles. - Updated the RentalEvidenceLADtos and RentalEvidenceLA model to reflect the change in MasterFileId type. - Established foreign key relationship between RentalEvidencesLA and LandAquisitionMasterFiles. --- ...onvertRentalEvidenceLAMasterFileIdToInt.cs | 114 + ...talEvidenceLAMasterFileIdToInt.Designer.cs | 2178 +++++++++++++++++ ...onvertRentalEvidenceLAMasterFileIdToInt.cs | 120 + Migrations/AppDbContextModelSnapshot.cs | 15 +- Models/DTOs/RentalEvidenceLADtos.cs | 6 +- Models/RentalEvidenceLA.cs | 5 +- 6 files changed, 2431 insertions(+), 7 deletions(-) create mode 100644 Migrations/20250722170349_ConvertRentalEvidenceLAMasterFileIdToInt.cs create mode 100644 Migrations/20250722170959_ConvertRentalEvidenceLAMasterFileIdToInt.Designer.cs create mode 100644 Migrations/20250722170959_ConvertRentalEvidenceLAMasterFileIdToInt.cs diff --git a/Migrations/20250722170349_ConvertRentalEvidenceLAMasterFileIdToInt.cs b/Migrations/20250722170349_ConvertRentalEvidenceLAMasterFileIdToInt.cs new file mode 100644 index 0000000..ac93a08 --- /dev/null +++ b/Migrations/20250722170349_ConvertRentalEvidenceLAMasterFileIdToInt.cs @@ -0,0 +1,114 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace ValuationBackend.Migrations +{ + /// + public partial class ConvertRentalEvidenceLAMasterFileIdToInt : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + // Step 1: Add a temporary column for the integer values + migrationBuilder.AddColumn( + name: "MasterFileId_Temp", + table: "RentalEvidencesLA", + type: "integer", + nullable: true); + + // Step 2: Convert existing string data to integers with validation + migrationBuilder.Sql(@" + UPDATE ""RentalEvidencesLA"" + SET ""MasterFileId_Temp"" = CASE + WHEN ""MasterFileId"" ~ '^[0-9]+$' AND ""MasterFileId"" != '' THEN + CAST(""MasterFileId"" AS integer) + ELSE + 1 -- Default to 1 if invalid or empty + END; + "); + + // Step 3: Drop the old string column + migrationBuilder.DropColumn( + name: "MasterFileId", + table: "RentalEvidencesLA"); + + // Step 4: Rename the temporary column to the original name + migrationBuilder.RenameColumn( + name: "MasterFileId_Temp", + table: "RentalEvidencesLA", + newName: "MasterFileId"); + + // Step 5: Make the column non-nullable + migrationBuilder.AlterColumn( + name: "MasterFileId", + table: "RentalEvidencesLA", + type: "integer", + nullable: false, + oldClrType: typeof(int), + oldType: "integer", + oldNullable: true); + + // Step 6: Create index and foreign key + migrationBuilder.CreateIndex( + name: "IX_RentalEvidencesLA_MasterFileId", + table: "RentalEvidencesLA", + column: "MasterFileId"); + + migrationBuilder.AddForeignKey( + name: "FK_RentalEvidencesLA_LandAquisitionMasterFiles_MasterFileId", + table: "RentalEvidencesLA", + column: "MasterFileId", + principalTable: "LandAquisitionMasterFiles", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + // Step 1: Drop foreign key and index + migrationBuilder.DropForeignKey( + name: "FK_RentalEvidencesLA_LandAquisitionMasterFiles_MasterFileId", + table: "RentalEvidencesLA"); + + migrationBuilder.DropIndex( + name: "IX_RentalEvidencesLA_MasterFileId", + table: "RentalEvidencesLA"); + + // Step 2: Add temporary string column + migrationBuilder.AddColumn( + name: "MasterFileId_Temp", + table: "RentalEvidencesLA", + type: "text", + nullable: true); + + // Step 3: Convert integer values back to strings + migrationBuilder.Sql(@" + UPDATE ""RentalEvidencesLA"" + SET ""MasterFileId_Temp"" = CAST(""MasterFileId"" AS text); + "); + + // Step 4: Drop the integer column + migrationBuilder.DropColumn( + name: "MasterFileId", + table: "RentalEvidencesLA"); + + // Step 5: Rename temporary column back + migrationBuilder.RenameColumn( + name: "MasterFileId_Temp", + table: "RentalEvidencesLA", + newName: "MasterFileId"); + + // Step 6: Make column non-nullable string + migrationBuilder.AlterColumn( + name: "MasterFileId", + table: "RentalEvidencesLA", + type: "text", + nullable: false, + oldClrType: typeof(string), + oldType: "text", + oldNullable: true); + } + } +} diff --git a/Migrations/20250722170959_ConvertRentalEvidenceLAMasterFileIdToInt.Designer.cs b/Migrations/20250722170959_ConvertRentalEvidenceLAMasterFileIdToInt.Designer.cs new file mode 100644 index 0000000..c2358ab --- /dev/null +++ b/Migrations/20250722170959_ConvertRentalEvidenceLAMasterFileIdToInt.Designer.cs @@ -0,0 +1,2178 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using ValuationBackend.Data; + +#nullable disable + +namespace ValuationBackend.Migrations +{ + [DbContext(typeof(AppDbContext))] + [Migration("20250722170959_ConvertRentalEvidenceLAMasterFileIdToInt")] + partial class ConvertRentalEvidenceLAMasterFileIdToInt + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "9.0.5") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("DecisionField", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Field") + .IsRequired() + .HasColumnType("text"); + + b.Property("FieldDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("FieldSize") + .HasColumnType("integer"); + + b.Property("FieldType") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("DecisionFields"); + }); + + modelBuilder.Entity("LandAquisitionMasterFile", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Lots") + .HasColumnType("integer"); + + b.Property("MasterFileNo") + .HasColumnType("integer"); + + b.Property("MasterFilesRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanType") + .IsRequired() + .HasColumnType("text"); + + b.Property("RequestingAuthorityReferenceNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Status") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("LandAquisitionMasterFiles"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Asset", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNo") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasColumnType("integer"); + + b.Property("IsRatingCard") + .HasColumnType("boolean"); + + b.Property("Owner") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("RdSt") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("RequestId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Ward") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.HasKey("Id"); + + b.HasIndex("RequestId"); + + b.ToTable("Assets"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetDivision", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Area") + .HasColumnType("numeric"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("LandType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("NewAssetNo") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("AssetDivisions"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetNumberChange", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ChangedDate") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfChange") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasMaxLength(255) + .HasColumnType("character varying(255)"); + + b.Property("FieldSize") + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("FieldType") + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("NewAssetNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("OldAssetNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Reason") + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("AssetNumberChanges"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("ConstructedBy") + .HasColumnType("text"); + + b.Property("Cost") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("FloorAreaSQFT") + .IsRequired() + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .HasColumnType("integer"); + + b.Property("Owner") + .IsRequired() + .HasColumnType("text"); + + b.Property("RatePerSQFT") + .IsRequired() + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("YearOfConstruction") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("MasterFileId"); + + b.HasIndex("ReportId"); + + b.ToTable("BuildingRatesLA"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("BuildingRateId") + .HasColumnType("integer"); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("BuildingRateId"); + + b.ToTable("BuildingRatesLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccessCategory") + .IsRequired() + .HasColumnType("text"); + + b.Property("AccessCategoryDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquiredExtent") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquiringOfficerSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquisitionName") + .IsRequired() + .HasColumnType("text"); + + b.Property("AssessmentNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("AtLotNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("AtPlanNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryBottom") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryEast") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryNorth") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundarySouth") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryWest") + .IsRequired() + .HasColumnType("text"); + + b.Property("BuildingDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("BuildingInfo") + .IsRequired() + .HasColumnType("text"); + + b.Property("ChiefValuerRepresentativeSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfSection3BA") + .IsRequired() + .HasColumnType("text"); + + b.Property("DatePrepared") + .IsRequired() + .HasColumnType("text"); + + b.Property("DepthOfLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("DescriptionOfLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("DetailsOfBusiness") + .IsRequired() + .HasColumnType("text"); + + b.Property("Frontage") + .IsRequired() + .HasColumnType("text"); + + b.Property("GramasewakaSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("LandUseDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("LandUseType") + .IsRequired() + .HasColumnType("text"); + + b.Property("LevelWithAccess") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("NameOfTheLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("NameOfTheVillage") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionsDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionsInfo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlantationDetails") + .IsRequired() + .HasColumnType("text"); + + b.Property("PpCadLotNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("PpCadNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("RoadName") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("ConditionReports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.DomesticRatingCard", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Access") + .HasColumnType("text"); + + b.Property("Age") + .HasColumnType("integer"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("Condition") + .HasColumnType("text"); + + b.Property("Conveniences") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("Floor") + .HasColumnType("text"); + + b.Property("NewNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("Notes") + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .IsRequired() + .HasColumnType("text"); + + b.Property("ParkingSpace") + .HasColumnType("text"); + + b.Property("Plantations") + .HasColumnType("text"); + + b.Property("PropertySubCategory") + .HasColumnType("text"); + + b.Property("PropertyType") + .HasColumnType("text"); + + b.Property("RentPM") + .HasColumnType("numeric"); + + b.Property("RoadName") + .HasColumnType("text"); + + b.Property("SelectWalls") + .HasColumnType("text"); + + b.Property("SuggestedRate") + .HasColumnType("numeric"); + + b.Property("Terms") + .HasColumnType("text"); + + b.Property("TsBop") + .HasColumnType("text"); + + b.Property("WardNumber") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("DomesticRatingCards"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ImageData", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ImageBase64") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.ToTable("ImageData"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionBuilding", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AgeYears") + .HasColumnType("text"); + + b.Property("BathroomToilet") + .HasColumnType("text"); + + b.Property("BathroomToiletDoorsFittings") + .HasColumnType("text"); + + b.Property("BuildingCategory") + .HasColumnType("text"); + + b.Property("BuildingClass") + .HasColumnType("text"); + + b.Property("BuildingConditions") + .HasColumnType("text"); + + b.Property("BuildingId") + .HasColumnType("text"); + + b.Property("BuildingName") + .HasColumnType("text"); + + b.Property("Ceiling") + .HasColumnType("text"); + + b.Property("Condition") + .HasColumnType("text"); + + b.Property("Conveniences") + .HasColumnType("text"); + + b.Property("Design") + .HasColumnType("text"); + + b.Property("DetailOfBuilding") + .HasColumnType("text"); + + b.Property("Door") + .HasColumnType("text"); + + b.Property("ExpectedLifePeriodYears") + .HasColumnType("text"); + + b.Property("FloorFinisher") + .HasColumnType("text"); + + b.Property("FloorStructure") + .HasColumnType("text"); + + b.Property("FoundationStructure") + .HasColumnType("text"); + + b.Property("HandRail") + .HasColumnType("text"); + + b.Property("InspectionReportId") + .HasColumnType("integer"); + + b.Property("NatureOfConstruction") + .HasColumnType("text"); + + b.Property("NoOfFloorsAboveGround") + .HasColumnType("text") + .HasColumnName("NoOfFloorsAboveGround"); + + b.Property("NoOfFloorsBelowGround") + .HasColumnType("text") + .HasColumnName("NoOfFloorsBelowGround"); + + b.Property("OtherDoors") + .HasColumnType("text"); + + b.Property("PantryCupboard") + .HasColumnType("text"); + + b.Property("ParkingSpace") + .HasColumnType("text"); + + b.Property("RoofFinisher") + .HasColumnType("text"); + + b.Property("RoofFrame") + .HasColumnType("text"); + + b.Property("RoofMaterial") + .HasColumnType("text"); + + b.Property("Services") + .HasColumnType("text"); + + b.Property("Structure") + .HasColumnType("text"); + + b.Property("WallFinisher") + .HasColumnType("text"); + + b.Property("WallStructure") + .HasColumnType("text"); + + b.Property("Window") + .HasColumnType("text"); + + b.Property("WindowProtection") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("InspectionReportId"); + + b.ToTable("InspectionBuildings"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.Property("InspectionReportId") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("InspectionReportId")); + + b.Property("DetailsOfAssestsInventoryItems") + .HasColumnType("text") + .HasColumnName("DetailsOfAssestsInventoryItems"); + + b.Property("DetailsOfBusiness") + .HasColumnType("text"); + + b.Property("District") + .HasColumnType("text"); + + b.Property("DsDivision") + .HasColumnType("text"); + + b.Property("GnDivision") + .HasColumnType("text"); + + b.Property("InspectionDate") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionDetails") + .HasColumnType("text"); + + b.Property("OtherInformation") + .HasColumnType("text"); + + b.Property("Province") + .HasColumnType("text"); + + b.Property("Remark") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("InspectionReportId"); + + b.HasIndex("ReportId"); + + b.ToTable("InspectionReports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LALot", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterFileId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("MasterFileId"); + + b.ToTable("LALots"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMBuildingRates", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNumber") + .HasColumnType("text"); + + b.Property("ConstructedBy") + .HasColumnType("text"); + + b.Property("Cost") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("FloorArea") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerSQFT") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("YearOfConstruction") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMBuildingRates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMPastValuation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("DateOfValuation") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FileNo_GnDivision") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanOfParticulars") + .HasColumnType("text"); + + b.Property("PurposeOfValuation") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMPastValuations"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMRentalEvidence", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNo") + .HasColumnType("text"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("FloorRate") + .HasColumnType("text"); + + b.Property("HeadOfTerms") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePer") + .HasColumnType("text"); + + b.Property("RatePerMonth") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMRentalEvidences"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMSalesEvidence", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNumber") + .HasColumnType("text"); + + b.Property("Consideration") + .HasColumnType("text"); + + b.Property("DeedAttestedNumber") + .HasColumnType("text"); + + b.Property("DeedNumber") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("LandRegistryReferences") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("LotNumber") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("NotaryName") + .HasColumnType("text"); + + b.Property("PlanDate") + .HasColumnType("text"); + + b.Property("PlanNumber") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Road") + .HasColumnType("text"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("Vendor") + .HasColumnType("text"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMSalesEvidences"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LandMiscellaneousMasterFile", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Lots") + .HasColumnType("integer"); + + b.Property("MasterFileNo") + .HasColumnType("integer"); + + b.Property("PlanNo") + .HasColumnType("text"); + + b.Property("PlanType") + .HasColumnType("text"); + + b.Property("RequestingAuthorityReferenceNo") + .HasColumnType("text"); + + b.Property("Status") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("LandMiscellaneousMasterFiles"); + }); + + modelBuilder.Entity("ValuationBackend.Models.MasterDataItem", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Category") + .IsRequired() + .HasColumnType("text"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("MasterDataItems"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PasswordReset", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Email") + .IsRequired() + .HasColumnType("text"); + + b.Property("ExpiresAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Otp") + .IsRequired() + .HasColumnType("text"); + + b.Property("Used") + .HasColumnType("boolean"); + + b.HasKey("Id"); + + b.ToTable("PasswordResets"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfValuation") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FileNoGNDivision") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .HasColumnType("integer"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanOfParticulars") + .HasColumnType("text"); + + b.Property("PurposeOfValuation") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("MasterFileId"); + + b.HasIndex("ReportId"); + + b.ToTable("PastValuationsLA"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("PastValuationId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("PastValuationId"); + + b.ToTable("PastValuationsLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PropertyCategory", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Name") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("PropertyCategories"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RatingRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("LocalAuthority") + .IsRequired() + .HasColumnType("text"); + + b.Property("RatingReferenceNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("RequestType") + .IsRequired() + .HasColumnType("text"); + + b.Property("Status") + .IsRequired() + .HasColumnType("text"); + + b.Property("YearOfRevision") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.ToTable("RatingRequests"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Reconciliation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("NewNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("ObsoleteNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("StreetName") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("Reconciliations"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNo") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("FloorRateSQFT") + .HasColumnType("text"); + + b.Property("HeadOfTerms") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .HasColumnType("integer"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerMonth") + .HasColumnType("text"); + + b.Property("RatePerSqft") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("MasterFileId"); + + b.HasIndex("ReportId"); + + b.ToTable("RentalEvidencesLA", (string)null); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("RentalEvidenceId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("RentalEvidenceId"); + + b.ToTable("RentalEvidenceLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Report", b => + { + b.Property("ReportId") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("ReportId")); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportType") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Timestamp") + .HasColumnType("timestamp with time zone"); + + b.HasKey("ReportId"); + + b.ToTable("Reports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Request", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("LocalAuthority") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RatingReferenceNo") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RequestTypeId") + .HasColumnType("integer"); + + b.Property("Status") + .HasColumnType("boolean"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("YearOfRevision") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("RequestTypeId"); + + b.ToTable("Requests"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RequestType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Code") + .IsRequired() + .HasMaxLength(2) + .HasColumnType("character varying(2)"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("RequestTypes"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNumber") + .HasColumnType("text"); + + b.Property("Consideration") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DeedAttestedNumber") + .HasColumnType("text"); + + b.Property("DeedNumber") + .HasColumnType("text"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FloorRate") + .HasColumnType("text"); + + b.Property("LandRegistryReferences") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("LotNumber") + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("NotaryName") + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("PlanDate") + .HasColumnType("text"); + + b.Property("PlanNumber") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Road") + .HasColumnType("text"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Vendor") + .HasColumnType("text"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("SalesEvidencesLA", (string)null); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("SalesEvidenceId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("SalesEvidenceId"); + + b.ToTable("SalesEvidenceLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssignedDivision") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpEmail") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpId") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpName") + .IsRequired() + .HasColumnType("text"); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("bytea"); + + b.Property("PasswordSalt") + .IsRequired() + .HasColumnType("bytea"); + + b.Property("Position") + .IsRequired() + .HasColumnType("text"); + + b.Property("ProfilePicture") + .HasColumnType("bytea"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("ValuationBackend.Models.UserTask", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssignedDate") + .HasColumnType("timestamp with time zone"); + + b.Property("IsCompleted") + .HasColumnType("boolean"); + + b.Property("LandAcquisitionId") + .HasColumnType("integer"); + + b.Property("LandMiscellaneousId") + .HasColumnType("integer"); + + b.Property("ReferenceNumber") + .HasColumnType("text"); + + b.Property("RequestId") + .HasColumnType("integer"); + + b.Property("TaskType") + .IsRequired() + .HasColumnType("text"); + + b.Property("UserId") + .HasColumnType("integer"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.Property("WorkItemDescription") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("UserId"); + + b.ToTable("UserTasks"); + }); + + modelBuilder.Entity("ValuationBackend.Models.iteration2.RatingCards.OfficesRatingCard", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccessType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("Age") + .HasColumnType("integer"); + + b.Property("AssessmentNumber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("BuildingSelection") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CeilingHeight") + .HasColumnType("decimal(18,2)"); + + b.Property("Condition") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Conveniences") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("CreatedBy") + .IsRequired() + .HasColumnType("text"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("FloorNumber") + .HasColumnType("integer"); + + b.Property("FloorType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("LocalAuthority") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("LocalAuthorityCode") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("NewNumber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Notes") + .IsRequired() + .HasMaxLength(2000) + .HasColumnType("character varying(2000)"); + + b.Property("ObsoleteNumber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Occupier") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("OfficeGrade") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("OfficeSuite") + .IsRequired() + .HasMaxLength(1000) + .HasColumnType("character varying(1000)"); + + b.Property("Owner") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("ParkingSpace") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("PropertySubCategory") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("PropertyType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RentPM") + .HasColumnType("decimal(18,2)"); + + b.Property("RoadName") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("SuggestedRate") + .HasColumnType("decimal(18,2)"); + + b.Property("Terms") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("TotalArea") + .HasColumnType("decimal(18,2)"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("UpdatedBy") + .HasColumnType("text"); + + b.Property("UsableFloorArea") + .HasColumnType("decimal(18,2)"); + + b.Property("WallType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("WardNumber") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("OfficesRatingCards"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Asset", b => + { + b.HasOne("ValuationBackend.Models.Request", "Request") + .WithMany() + .HasForeignKey("RequestId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Request"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetDivision", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLA", b => + { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("MasterFile"); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLACoordinate", b => + { + b.HasOne("ValuationBackend.Models.BuildingRatesLA", "BuildingRate") + .WithMany() + .HasForeignKey("BuildingRateId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("BuildingRate"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.DomesticRatingCard", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionBuilding", b => + { + b.HasOne("ValuationBackend.Models.InspectionReport", "InspectionReport") + .WithMany("Buildings") + .HasForeignKey("InspectionReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("InspectionReport"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LALot", b => + { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("MasterFile"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMBuildingRates", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMPastValuation", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMRentalEvidence", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMSalesEvidence", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLA", b => + { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("MasterFile"); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLACoordinate", b => + { + b.HasOne("ValuationBackend.Models.PastValuationsLA", "PastValuation") + .WithMany() + .HasForeignKey("PastValuationId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("PastValuation"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Reconciliation", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLA", b => + { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("MasterFile"); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLACoordinate", b => + { + b.HasOne("ValuationBackend.Models.RentalEvidenceLA", "RentalEvidence") + .WithMany() + .HasForeignKey("RentalEvidenceId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("RentalEvidence"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Request", b => + { + b.HasOne("ValuationBackend.Models.RequestType", "RequestType") + .WithMany() + .HasForeignKey("RequestTypeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("RequestType"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLA", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLACoordinate", b => + { + b.HasOne("ValuationBackend.Models.SalesEvidenceLA", "SalesEvidence") + .WithMany() + .HasForeignKey("SalesEvidenceId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("SalesEvidence"); + }); + + modelBuilder.Entity("ValuationBackend.Models.UserTask", b => + { + b.HasOne("ValuationBackend.Models.User", "User") + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("User"); + }); + + modelBuilder.Entity("ValuationBackend.Models.iteration2.RatingCards.OfficesRatingCard", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.Navigation("Buildings"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/Migrations/20250722170959_ConvertRentalEvidenceLAMasterFileIdToInt.cs b/Migrations/20250722170959_ConvertRentalEvidenceLAMasterFileIdToInt.cs new file mode 100644 index 0000000..d82913f --- /dev/null +++ b/Migrations/20250722170959_ConvertRentalEvidenceLAMasterFileIdToInt.cs @@ -0,0 +1,120 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace ValuationBackend.Migrations +{ + /// + public partial class ConvertRentalEvidenceLAMasterFileIdToInt : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + // Step 1: Add a temporary column for the integer values + migrationBuilder.AddColumn( + name: "MasterFileId_Temp", + table: "RentalEvidencesLA", + type: "integer", + nullable: true); + + // Step 2: Convert existing string data to integers with validation + // Also ensure that the MasterFileId references an existing record in LandAquisitionMasterFiles + migrationBuilder.Sql(@" + UPDATE ""RentalEvidencesLA"" + SET ""MasterFileId_Temp"" = CASE + WHEN ""MasterFileId"" ~ '^[0-9]+$' AND ""MasterFileId"" != '' THEN + CASE + WHEN EXISTS (SELECT 1 FROM ""LandAquisitionMasterFiles"" WHERE ""Id"" = CAST(""MasterFileId"" AS integer)) THEN + CAST(""MasterFileId"" AS integer) + ELSE + (SELECT MIN(""Id"") FROM ""LandAquisitionMasterFiles"") -- Use the first available ID + END + ELSE + (SELECT MIN(""Id"") FROM ""LandAquisitionMasterFiles"") -- Default to first available ID + END; + "); + + // Step 3: Drop the old string column + migrationBuilder.DropColumn( + name: "MasterFileId", + table: "RentalEvidencesLA"); + + // Step 4: Rename the temporary column to the original name + migrationBuilder.RenameColumn( + name: "MasterFileId_Temp", + table: "RentalEvidencesLA", + newName: "MasterFileId"); + + // Step 5: Make the column non-nullable + migrationBuilder.AlterColumn( + name: "MasterFileId", + table: "RentalEvidencesLA", + type: "integer", + nullable: false, + oldClrType: typeof(int), + oldType: "integer", + oldNullable: true); + + // Step 6: Create index and foreign key + migrationBuilder.CreateIndex( + name: "IX_RentalEvidencesLA_MasterFileId", + table: "RentalEvidencesLA", + column: "MasterFileId"); + + migrationBuilder.AddForeignKey( + name: "FK_RentalEvidencesLA_LandAquisitionMasterFiles_MasterFileId", + table: "RentalEvidencesLA", + column: "MasterFileId", + principalTable: "LandAquisitionMasterFiles", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + // Step 1: Drop foreign key and index + migrationBuilder.DropForeignKey( + name: "FK_RentalEvidencesLA_LandAquisitionMasterFiles_MasterFileId", + table: "RentalEvidencesLA"); + + migrationBuilder.DropIndex( + name: "IX_RentalEvidencesLA_MasterFileId", + table: "RentalEvidencesLA"); + + // Step 2: Add temporary string column + migrationBuilder.AddColumn( + name: "MasterFileId_Temp", + table: "RentalEvidencesLA", + type: "text", + nullable: true); + + // Step 3: Convert integer values back to strings + migrationBuilder.Sql(@" + UPDATE ""RentalEvidencesLA"" + SET ""MasterFileId_Temp"" = CAST(""MasterFileId"" AS text); + "); + + // Step 4: Drop the integer column + migrationBuilder.DropColumn( + name: "MasterFileId", + table: "RentalEvidencesLA"); + + // Step 5: Rename temporary column back + migrationBuilder.RenameColumn( + name: "MasterFileId_Temp", + table: "RentalEvidencesLA", + newName: "MasterFileId"); + + // Step 6: Make column non-nullable string + migrationBuilder.AlterColumn( + name: "MasterFileId", + table: "RentalEvidencesLA", + type: "text", + nullable: false, + oldClrType: typeof(string), + oldType: "text", + oldNullable: true); + } + } +} diff --git a/Migrations/AppDbContextModelSnapshot.cs b/Migrations/AppDbContextModelSnapshot.cs index 7109e72..337b160 100644 --- a/Migrations/AppDbContextModelSnapshot.cs +++ b/Migrations/AppDbContextModelSnapshot.cs @@ -1337,9 +1337,8 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("LocationLongitude") .HasColumnType("text"); - b.Property("MasterFileId") - .IsRequired() - .HasColumnType("text"); + b.Property("MasterFileId") + .HasColumnType("integer"); b.Property("MasterFileRefNo") .IsRequired() @@ -1371,6 +1370,8 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.HasKey("Id"); + b.HasIndex("MasterFileId"); + b.HasIndex("ReportId"); b.ToTable("RentalEvidencesLA", (string)null); @@ -2081,12 +2082,20 @@ protected override void BuildModel(ModelBuilder modelBuilder) modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLA", b => { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + b.HasOne("ValuationBackend.Models.Report", "Report") .WithMany() .HasForeignKey("ReportId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); + b.Navigation("MasterFile"); + b.Navigation("Report"); }); diff --git a/Models/DTOs/RentalEvidenceLADtos.cs b/Models/DTOs/RentalEvidenceLADtos.cs index 546544f..6710c13 100644 --- a/Models/DTOs/RentalEvidenceLADtos.cs +++ b/Models/DTOs/RentalEvidenceLADtos.cs @@ -6,7 +6,7 @@ namespace ValuationBackend.Models.DTOs public class RentalEvidenceLACreateDto { // Master file information - public string MasterFileId { get; set; } = string.Empty; + public int MasterFileId { get; set; } public string MasterFileRefNo { get; set; } = string.Empty; public string? AssessmentNo { get; set; } @@ -26,7 +26,7 @@ public class RentalEvidenceLACreateDto // Input DTO for updating an existing rental evidence public class RentalEvidenceLAUpdateDto { - public string MasterFileId { get; set; } = string.Empty; + public int MasterFileId { get; set; } public string MasterFileRefNo { get; set; } = string.Empty; public string? AssessmentNo { get; set; } @@ -49,7 +49,7 @@ public class RentalEvidenceLAResponseDto public int Id { get; set; } public int ReportId { get; set; } - public string MasterFileId { get; set; } = string.Empty; + public int MasterFileId { get; set; } public string MasterFileRefNo { get; set; } = string.Empty; public string? AssessmentNo { get; set; } diff --git a/Models/RentalEvidenceLA.cs b/Models/RentalEvidenceLA.cs index 098365f..e1db648 100644 --- a/Models/RentalEvidenceLA.cs +++ b/Models/RentalEvidenceLA.cs @@ -17,7 +17,10 @@ public class RentalEvidenceLA public Report? Report { get; set; } [Required] - public string MasterFileId { get; set; } = string.Empty; + public int MasterFileId { get; set; } + + [ForeignKey("MasterFileId")] + public LandAquisitionMasterFile? MasterFile { get; set; } public string? AssessmentNo { get; set; } From 9deb5ba44d58f94ab504de3381b01d6dda57d827 Mon Sep 17 00:00:00 2001 From: JalinaH Date: Tue, 22 Jul 2025 22:59:00 +0530 Subject: [PATCH 17/21] feat: Convert MasterFileId from string to int in SalesEvidencesLA - Added migration to convert MasterFileId from string to integer in SalesEvidencesLA table. - Updated related foreign key and index for MasterFileId. - Modified SalesEvidenceLADtos to reflect the change in MasterFileId type. - Adjusted SalesEvidenceLA model to include foreign key relationship with LandAquisitionMasterFile. --- ...onvertRentalEvidenceLAMasterFileIdToInt.cs | 120 ------------------ ...esEvidenceLAMasterFileIdToInt.Designer.cs} | 19 ++- ...ConvertSalesEvidenceLAMasterFileIdToInt.cs | 119 +++++++++++++++++ Migrations/AppDbContextModelSnapshot.cs | 15 ++- Models/DTOs/SalesEvidenceLADtos.cs | 6 +- Models/SalesEvidenceLA.cs | 5 +- 6 files changed, 152 insertions(+), 132 deletions(-) delete mode 100644 Migrations/20250722170959_ConvertRentalEvidenceLAMasterFileIdToInt.cs rename Migrations/{20250722170959_ConvertRentalEvidenceLAMasterFileIdToInt.Designer.cs => 20250722172342_ConvertSalesEvidenceLAMasterFileIdToInt.Designer.cs} (99%) create mode 100644 Migrations/20250722172342_ConvertSalesEvidenceLAMasterFileIdToInt.cs diff --git a/Migrations/20250722170959_ConvertRentalEvidenceLAMasterFileIdToInt.cs b/Migrations/20250722170959_ConvertRentalEvidenceLAMasterFileIdToInt.cs deleted file mode 100644 index d82913f..0000000 --- a/Migrations/20250722170959_ConvertRentalEvidenceLAMasterFileIdToInt.cs +++ /dev/null @@ -1,120 +0,0 @@ -using Microsoft.EntityFrameworkCore.Migrations; - -#nullable disable - -namespace ValuationBackend.Migrations -{ - /// - public partial class ConvertRentalEvidenceLAMasterFileIdToInt : Migration - { - /// - protected override void Up(MigrationBuilder migrationBuilder) - { - // Step 1: Add a temporary column for the integer values - migrationBuilder.AddColumn( - name: "MasterFileId_Temp", - table: "RentalEvidencesLA", - type: "integer", - nullable: true); - - // Step 2: Convert existing string data to integers with validation - // Also ensure that the MasterFileId references an existing record in LandAquisitionMasterFiles - migrationBuilder.Sql(@" - UPDATE ""RentalEvidencesLA"" - SET ""MasterFileId_Temp"" = CASE - WHEN ""MasterFileId"" ~ '^[0-9]+$' AND ""MasterFileId"" != '' THEN - CASE - WHEN EXISTS (SELECT 1 FROM ""LandAquisitionMasterFiles"" WHERE ""Id"" = CAST(""MasterFileId"" AS integer)) THEN - CAST(""MasterFileId"" AS integer) - ELSE - (SELECT MIN(""Id"") FROM ""LandAquisitionMasterFiles"") -- Use the first available ID - END - ELSE - (SELECT MIN(""Id"") FROM ""LandAquisitionMasterFiles"") -- Default to first available ID - END; - "); - - // Step 3: Drop the old string column - migrationBuilder.DropColumn( - name: "MasterFileId", - table: "RentalEvidencesLA"); - - // Step 4: Rename the temporary column to the original name - migrationBuilder.RenameColumn( - name: "MasterFileId_Temp", - table: "RentalEvidencesLA", - newName: "MasterFileId"); - - // Step 5: Make the column non-nullable - migrationBuilder.AlterColumn( - name: "MasterFileId", - table: "RentalEvidencesLA", - type: "integer", - nullable: false, - oldClrType: typeof(int), - oldType: "integer", - oldNullable: true); - - // Step 6: Create index and foreign key - migrationBuilder.CreateIndex( - name: "IX_RentalEvidencesLA_MasterFileId", - table: "RentalEvidencesLA", - column: "MasterFileId"); - - migrationBuilder.AddForeignKey( - name: "FK_RentalEvidencesLA_LandAquisitionMasterFiles_MasterFileId", - table: "RentalEvidencesLA", - column: "MasterFileId", - principalTable: "LandAquisitionMasterFiles", - principalColumn: "Id", - onDelete: ReferentialAction.Cascade); - } - - /// - protected override void Down(MigrationBuilder migrationBuilder) - { - // Step 1: Drop foreign key and index - migrationBuilder.DropForeignKey( - name: "FK_RentalEvidencesLA_LandAquisitionMasterFiles_MasterFileId", - table: "RentalEvidencesLA"); - - migrationBuilder.DropIndex( - name: "IX_RentalEvidencesLA_MasterFileId", - table: "RentalEvidencesLA"); - - // Step 2: Add temporary string column - migrationBuilder.AddColumn( - name: "MasterFileId_Temp", - table: "RentalEvidencesLA", - type: "text", - nullable: true); - - // Step 3: Convert integer values back to strings - migrationBuilder.Sql(@" - UPDATE ""RentalEvidencesLA"" - SET ""MasterFileId_Temp"" = CAST(""MasterFileId"" AS text); - "); - - // Step 4: Drop the integer column - migrationBuilder.DropColumn( - name: "MasterFileId", - table: "RentalEvidencesLA"); - - // Step 5: Rename temporary column back - migrationBuilder.RenameColumn( - name: "MasterFileId_Temp", - table: "RentalEvidencesLA", - newName: "MasterFileId"); - - // Step 6: Make column non-nullable string - migrationBuilder.AlterColumn( - name: "MasterFileId", - table: "RentalEvidencesLA", - type: "text", - nullable: false, - oldClrType: typeof(string), - oldType: "text", - oldNullable: true); - } - } -} diff --git a/Migrations/20250722170959_ConvertRentalEvidenceLAMasterFileIdToInt.Designer.cs b/Migrations/20250722172342_ConvertSalesEvidenceLAMasterFileIdToInt.Designer.cs similarity index 99% rename from Migrations/20250722170959_ConvertRentalEvidenceLAMasterFileIdToInt.Designer.cs rename to Migrations/20250722172342_ConvertSalesEvidenceLAMasterFileIdToInt.Designer.cs index c2358ab..ba72b36 100644 --- a/Migrations/20250722170959_ConvertRentalEvidenceLAMasterFileIdToInt.Designer.cs +++ b/Migrations/20250722172342_ConvertSalesEvidenceLAMasterFileIdToInt.Designer.cs @@ -12,8 +12,8 @@ namespace ValuationBackend.Migrations { [DbContext(typeof(AppDbContext))] - [Migration("20250722170959_ConvertRentalEvidenceLAMasterFileIdToInt")] - partial class ConvertRentalEvidenceLAMasterFileIdToInt + [Migration("20250722172342_ConvertSalesEvidenceLAMasterFileIdToInt")] + partial class ConvertSalesEvidenceLAMasterFileIdToInt { /// protected override void BuildTargetModel(ModelBuilder modelBuilder) @@ -1543,9 +1543,8 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder) b.Property("LotNumber") .HasColumnType("text"); - b.Property("MasterFileId") - .IsRequired() - .HasColumnType("text"); + b.Property("MasterFileId") + .HasColumnType("integer"); b.Property("MasterFileRefNo") .IsRequired() @@ -1595,6 +1594,8 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder) b.HasKey("Id"); + b.HasIndex("MasterFileId"); + b.HasIndex("ReportId"); b.ToTable("SalesEvidencesLA", (string)null); @@ -2126,12 +2127,20 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder) modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLA", b => { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + b.HasOne("ValuationBackend.Models.Report", "Report") .WithMany() .HasForeignKey("ReportId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); + b.Navigation("MasterFile"); + b.Navigation("Report"); }); diff --git a/Migrations/20250722172342_ConvertSalesEvidenceLAMasterFileIdToInt.cs b/Migrations/20250722172342_ConvertSalesEvidenceLAMasterFileIdToInt.cs new file mode 100644 index 0000000..cadee34 --- /dev/null +++ b/Migrations/20250722172342_ConvertSalesEvidenceLAMasterFileIdToInt.cs @@ -0,0 +1,119 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace ValuationBackend.Migrations +{ + /// + public partial class ConvertSalesEvidenceLAMasterFileIdToInt : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + // Step 1: Add temporary column for integer MasterFileId + migrationBuilder.AddColumn( + name: "MasterFileId_temp", + table: "SalesEvidencesLA", + type: "integer", + nullable: true); + + // Step 2: Update temp column with converted values - only for numeric strings + migrationBuilder.Sql(@" + UPDATE ""SalesEvidencesLA"" + SET ""MasterFileId_temp"" = CAST(""MasterFileId"" AS INTEGER) + WHERE ""MasterFileId"" ~ '^[0-9]+$' + AND EXISTS ( + SELECT 1 FROM ""LandAquisitionMasterFiles"" + WHERE ""Id"" = CAST(""SalesEvidencesLA"".""MasterFileId"" AS INTEGER) + ); + "); + + // Step 3: Delete records with invalid MasterFileId references + migrationBuilder.Sql(@" + DELETE FROM ""SalesEvidencesLA"" + WHERE ""MasterFileId_temp"" IS NULL; + "); + + // Step 4: Drop the old column + migrationBuilder.DropColumn( + name: "MasterFileId", + table: "SalesEvidencesLA"); + + // Step 5: Rename temp column + migrationBuilder.RenameColumn( + name: "MasterFileId_temp", + table: "SalesEvidencesLA", + newName: "MasterFileId"); + + // Step 6: Make the column non-nullable + migrationBuilder.AlterColumn( + name: "MasterFileId", + table: "SalesEvidencesLA", + type: "integer", + nullable: false, + oldClrType: typeof(int), + oldType: "integer", + oldNullable: true); + + // Step 7: Create index and foreign key + migrationBuilder.CreateIndex( + name: "IX_SalesEvidencesLA_MasterFileId", + table: "SalesEvidencesLA", + column: "MasterFileId"); + + migrationBuilder.AddForeignKey( + name: "FK_SalesEvidencesLA_LandAquisitionMasterFiles_MasterFileId", + table: "SalesEvidencesLA", + column: "MasterFileId", + principalTable: "LandAquisitionMasterFiles", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropForeignKey( + name: "FK_SalesEvidencesLA_LandAquisitionMasterFiles_MasterFileId", + table: "SalesEvidencesLA"); + + migrationBuilder.DropIndex( + name: "IX_SalesEvidencesLA_MasterFileId", + table: "SalesEvidencesLA"); + + // Add temporary string column + migrationBuilder.AddColumn( + name: "MasterFileId_temp", + table: "SalesEvidencesLA", + type: "text", + nullable: true); + + // Convert integer values back to string + migrationBuilder.Sql(@" + UPDATE ""SalesEvidencesLA"" + SET ""MasterFileId_temp"" = CAST(""MasterFileId"" AS TEXT); + "); + + // Drop the integer column + migrationBuilder.DropColumn( + name: "MasterFileId", + table: "SalesEvidencesLA"); + + // Rename temp column back + migrationBuilder.RenameColumn( + name: "MasterFileId_temp", + table: "SalesEvidencesLA", + newName: "MasterFileId"); + + // Make the column non-nullable + migrationBuilder.AlterColumn( + name: "MasterFileId", + table: "SalesEvidencesLA", + type: "text", + nullable: false, + oldClrType: typeof(string), + oldType: "text", + oldNullable: true); + } + } +} diff --git a/Migrations/AppDbContextModelSnapshot.cs b/Migrations/AppDbContextModelSnapshot.cs index 337b160..6ca928d 100644 --- a/Migrations/AppDbContextModelSnapshot.cs +++ b/Migrations/AppDbContextModelSnapshot.cs @@ -1540,9 +1540,8 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("LotNumber") .HasColumnType("text"); - b.Property("MasterFileId") - .IsRequired() - .HasColumnType("text"); + b.Property("MasterFileId") + .HasColumnType("integer"); b.Property("MasterFileRefNo") .IsRequired() @@ -1592,6 +1591,8 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.HasKey("Id"); + b.HasIndex("MasterFileId"); + b.HasIndex("ReportId"); b.ToTable("SalesEvidencesLA", (string)null); @@ -2123,12 +2124,20 @@ protected override void BuildModel(ModelBuilder modelBuilder) modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLA", b => { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + b.HasOne("ValuationBackend.Models.Report", "Report") .WithMany() .HasForeignKey("ReportId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); + b.Navigation("MasterFile"); + b.Navigation("Report"); }); diff --git a/Models/DTOs/SalesEvidenceLADtos.cs b/Models/DTOs/SalesEvidenceLADtos.cs index cf38b0e..be628e3 100644 --- a/Models/DTOs/SalesEvidenceLADtos.cs +++ b/Models/DTOs/SalesEvidenceLADtos.cs @@ -6,7 +6,7 @@ namespace ValuationBackend.Models.DTOs public class SalesEvidenceLACreateDto { // Master file information - public string MasterFileId { get; set; } = string.Empty; + public int MasterFileId { get; set; } public string MasterFileRefNo { get; set; } = string.Empty; public string? AssetNumber { get; set; } @@ -38,7 +38,7 @@ public class SalesEvidenceLACreateDto // Input DTO for updating an existing sales evidence public class SalesEvidenceLAUpdateDto { - public string MasterFileId { get; set; } = string.Empty; + public int MasterFileId { get; set; } public string MasterFileRefNo { get; set; } = string.Empty; public string? AssetNumber { get; set; } @@ -73,7 +73,7 @@ public class SalesEvidenceLAResponseDto public int Id { get; set; } public int ReportId { get; set; } - public string MasterFileId { get; set; } = string.Empty; + public int MasterFileId { get; set; } public string MasterFileRefNo { get; set; } = string.Empty; public string? AssetNumber { get; set; } diff --git a/Models/SalesEvidenceLA.cs b/Models/SalesEvidenceLA.cs index ca94d1c..2817802 100644 --- a/Models/SalesEvidenceLA.cs +++ b/Models/SalesEvidenceLA.cs @@ -17,7 +17,10 @@ public class SalesEvidenceLA public Report? Report { get; set; } [Required] - public string MasterFileId { get; set; } = string.Empty; + public int MasterFileId { get; set; } + + [ForeignKey("MasterFileId")] + public LandAquisitionMasterFile? MasterFile { get; set; } [Required] public string MasterFileRefNo { get; set; } = string.Empty; From a70bfe9b387fd4240ed0d46de5533e17315c8376 Mon Sep 17 00:00:00 2001 From: JalinaH Date: Wed, 23 Jul 2025 01:50:27 +0530 Subject: [PATCH 18/21] Add MasterfileId column to multiple LA Coordinates tables with foreign key constraints - Added MasterfileId column to SalesEvidenceLACoordinates, RentalEvidenceLACoordinates, PastValuationsLACoordinates, and BuildingRatesLACoordinates tables. - Created indexes for MasterfileId in each of the above tables. - Established foreign key relationships between MasterfileId and LandAquisitionMasterFiles table with cascade delete behavior. --- ...9_AddMasterfileIdToCoordinates.Designer.cs | 2239 +++++++++++++++++ ...0722200849_AddMasterfileIdToCoordinates.cs | 146 ++ Migrations/AppDbContextModelSnapshot.cs | 52 + Models/DTOs/LACoordinateDtos.cs | 24 +- Models/LACoordinates.cs | 28 + Profiles/LACoordinateProfiles.cs | 28 +- repositories/ILACoordinateRepositories.cs | 4 + repositories/LACoordinateRepositories.cs | 32 + services/LACoordinateServices.cs | 56 +- 9 files changed, 2585 insertions(+), 24 deletions(-) create mode 100644 Migrations/20250722200849_AddMasterfileIdToCoordinates.Designer.cs create mode 100644 Migrations/20250722200849_AddMasterfileIdToCoordinates.cs diff --git a/Migrations/20250722200849_AddMasterfileIdToCoordinates.Designer.cs b/Migrations/20250722200849_AddMasterfileIdToCoordinates.Designer.cs new file mode 100644 index 0000000..6cfa6e6 --- /dev/null +++ b/Migrations/20250722200849_AddMasterfileIdToCoordinates.Designer.cs @@ -0,0 +1,2239 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using ValuationBackend.Data; + +#nullable disable + +namespace ValuationBackend.Migrations +{ + [DbContext(typeof(AppDbContext))] + [Migration("20250722200849_AddMasterfileIdToCoordinates")] + partial class AddMasterfileIdToCoordinates + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "9.0.5") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("DecisionField", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Field") + .IsRequired() + .HasColumnType("text"); + + b.Property("FieldDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("FieldSize") + .HasColumnType("integer"); + + b.Property("FieldType") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("DecisionFields"); + }); + + modelBuilder.Entity("LandAquisitionMasterFile", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Lots") + .HasColumnType("integer"); + + b.Property("MasterFileNo") + .HasColumnType("integer"); + + b.Property("MasterFilesRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanType") + .IsRequired() + .HasColumnType("text"); + + b.Property("RequestingAuthorityReferenceNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Status") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("LandAquisitionMasterFiles"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Asset", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNo") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasColumnType("integer"); + + b.Property("IsRatingCard") + .HasColumnType("boolean"); + + b.Property("Owner") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("RdSt") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("RequestId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Ward") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.HasKey("Id"); + + b.HasIndex("RequestId"); + + b.ToTable("Assets"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetDivision", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Area") + .HasColumnType("numeric"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("LandType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("NewAssetNo") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("AssetDivisions"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetNumberChange", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ChangedDate") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfChange") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasMaxLength(255) + .HasColumnType("character varying(255)"); + + b.Property("FieldSize") + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("FieldType") + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("NewAssetNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("OldAssetNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Reason") + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("AssetNumberChanges"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("ConstructedBy") + .HasColumnType("text"); + + b.Property("Cost") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("FloorAreaSQFT") + .IsRequired() + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .HasColumnType("integer"); + + b.Property("Owner") + .IsRequired() + .HasColumnType("text"); + + b.Property("RatePerSQFT") + .IsRequired() + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("YearOfConstruction") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("MasterFileId"); + + b.HasIndex("ReportId"); + + b.ToTable("BuildingRatesLA"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("BuildingRateId") + .HasColumnType("integer"); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterfileId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("BuildingRateId"); + + b.HasIndex("MasterfileId"); + + b.ToTable("BuildingRatesLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccessCategory") + .IsRequired() + .HasColumnType("text"); + + b.Property("AccessCategoryDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquiredExtent") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquiringOfficerSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquisitionName") + .IsRequired() + .HasColumnType("text"); + + b.Property("AssessmentNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("AtLotNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("AtPlanNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryBottom") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryEast") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryNorth") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundarySouth") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryWest") + .IsRequired() + .HasColumnType("text"); + + b.Property("BuildingDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("BuildingInfo") + .IsRequired() + .HasColumnType("text"); + + b.Property("ChiefValuerRepresentativeSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfSection3BA") + .IsRequired() + .HasColumnType("text"); + + b.Property("DatePrepared") + .IsRequired() + .HasColumnType("text"); + + b.Property("DepthOfLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("DescriptionOfLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("DetailsOfBusiness") + .IsRequired() + .HasColumnType("text"); + + b.Property("Frontage") + .IsRequired() + .HasColumnType("text"); + + b.Property("GramasewakaSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("LandUseDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("LandUseType") + .IsRequired() + .HasColumnType("text"); + + b.Property("LevelWithAccess") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("NameOfTheLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("NameOfTheVillage") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionsDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionsInfo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlantationDetails") + .IsRequired() + .HasColumnType("text"); + + b.Property("PpCadLotNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("PpCadNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("RoadName") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("ConditionReports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.DomesticRatingCard", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Access") + .HasColumnType("text"); + + b.Property("Age") + .HasColumnType("integer"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("Condition") + .HasColumnType("text"); + + b.Property("Conveniences") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("Floor") + .HasColumnType("text"); + + b.Property("NewNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("Notes") + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .IsRequired() + .HasColumnType("text"); + + b.Property("ParkingSpace") + .HasColumnType("text"); + + b.Property("Plantations") + .HasColumnType("text"); + + b.Property("PropertySubCategory") + .HasColumnType("text"); + + b.Property("PropertyType") + .HasColumnType("text"); + + b.Property("RentPM") + .HasColumnType("numeric"); + + b.Property("RoadName") + .HasColumnType("text"); + + b.Property("SelectWalls") + .HasColumnType("text"); + + b.Property("SuggestedRate") + .HasColumnType("numeric"); + + b.Property("Terms") + .HasColumnType("text"); + + b.Property("TsBop") + .HasColumnType("text"); + + b.Property("WardNumber") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("DomesticRatingCards"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ImageData", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ImageBase64") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.ToTable("ImageData"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionBuilding", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AgeYears") + .HasColumnType("text"); + + b.Property("BathroomToilet") + .HasColumnType("text"); + + b.Property("BathroomToiletDoorsFittings") + .HasColumnType("text"); + + b.Property("BuildingCategory") + .HasColumnType("text"); + + b.Property("BuildingClass") + .HasColumnType("text"); + + b.Property("BuildingConditions") + .HasColumnType("text"); + + b.Property("BuildingId") + .HasColumnType("text"); + + b.Property("BuildingName") + .HasColumnType("text"); + + b.Property("Ceiling") + .HasColumnType("text"); + + b.Property("Condition") + .HasColumnType("text"); + + b.Property("Conveniences") + .HasColumnType("text"); + + b.Property("Design") + .HasColumnType("text"); + + b.Property("DetailOfBuilding") + .HasColumnType("text"); + + b.Property("Door") + .HasColumnType("text"); + + b.Property("ExpectedLifePeriodYears") + .HasColumnType("text"); + + b.Property("FloorFinisher") + .HasColumnType("text"); + + b.Property("FloorStructure") + .HasColumnType("text"); + + b.Property("FoundationStructure") + .HasColumnType("text"); + + b.Property("HandRail") + .HasColumnType("text"); + + b.Property("InspectionReportId") + .HasColumnType("integer"); + + b.Property("NatureOfConstruction") + .HasColumnType("text"); + + b.Property("NoOfFloorsAboveGround") + .HasColumnType("text") + .HasColumnName("NoOfFloorsAboveGround"); + + b.Property("NoOfFloorsBelowGround") + .HasColumnType("text") + .HasColumnName("NoOfFloorsBelowGround"); + + b.Property("OtherDoors") + .HasColumnType("text"); + + b.Property("PantryCupboard") + .HasColumnType("text"); + + b.Property("ParkingSpace") + .HasColumnType("text"); + + b.Property("RoofFinisher") + .HasColumnType("text"); + + b.Property("RoofFrame") + .HasColumnType("text"); + + b.Property("RoofMaterial") + .HasColumnType("text"); + + b.Property("Services") + .HasColumnType("text"); + + b.Property("Structure") + .HasColumnType("text"); + + b.Property("WallFinisher") + .HasColumnType("text"); + + b.Property("WallStructure") + .HasColumnType("text"); + + b.Property("Window") + .HasColumnType("text"); + + b.Property("WindowProtection") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("InspectionReportId"); + + b.ToTable("InspectionBuildings"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.Property("InspectionReportId") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("InspectionReportId")); + + b.Property("DetailsOfAssestsInventoryItems") + .HasColumnType("text") + .HasColumnName("DetailsOfAssestsInventoryItems"); + + b.Property("DetailsOfBusiness") + .HasColumnType("text"); + + b.Property("District") + .HasColumnType("text"); + + b.Property("DsDivision") + .HasColumnType("text"); + + b.Property("GnDivision") + .HasColumnType("text"); + + b.Property("InspectionDate") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionDetails") + .HasColumnType("text"); + + b.Property("OtherInformation") + .HasColumnType("text"); + + b.Property("Province") + .HasColumnType("text"); + + b.Property("Remark") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("InspectionReportId"); + + b.HasIndex("ReportId"); + + b.ToTable("InspectionReports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LALot", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterFileId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("MasterFileId"); + + b.ToTable("LALots"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMBuildingRates", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNumber") + .HasColumnType("text"); + + b.Property("ConstructedBy") + .HasColumnType("text"); + + b.Property("Cost") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("FloorArea") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerSQFT") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("YearOfConstruction") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMBuildingRates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMPastValuation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("DateOfValuation") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FileNo_GnDivision") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanOfParticulars") + .HasColumnType("text"); + + b.Property("PurposeOfValuation") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMPastValuations"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMRentalEvidence", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNo") + .HasColumnType("text"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("FloorRate") + .HasColumnType("text"); + + b.Property("HeadOfTerms") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePer") + .HasColumnType("text"); + + b.Property("RatePerMonth") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMRentalEvidences"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMSalesEvidence", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNumber") + .HasColumnType("text"); + + b.Property("Consideration") + .HasColumnType("text"); + + b.Property("DeedAttestedNumber") + .HasColumnType("text"); + + b.Property("DeedNumber") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("LandRegistryReferences") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("LotNumber") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("NotaryName") + .HasColumnType("text"); + + b.Property("PlanDate") + .HasColumnType("text"); + + b.Property("PlanNumber") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Road") + .HasColumnType("text"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("Vendor") + .HasColumnType("text"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMSalesEvidences"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LandMiscellaneousMasterFile", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Lots") + .HasColumnType("integer"); + + b.Property("MasterFileNo") + .HasColumnType("integer"); + + b.Property("PlanNo") + .HasColumnType("text"); + + b.Property("PlanType") + .HasColumnType("text"); + + b.Property("RequestingAuthorityReferenceNo") + .HasColumnType("text"); + + b.Property("Status") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("LandMiscellaneousMasterFiles"); + }); + + modelBuilder.Entity("ValuationBackend.Models.MasterDataItem", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Category") + .IsRequired() + .HasColumnType("text"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("MasterDataItems"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PasswordReset", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Email") + .IsRequired() + .HasColumnType("text"); + + b.Property("ExpiresAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Otp") + .IsRequired() + .HasColumnType("text"); + + b.Property("Used") + .HasColumnType("boolean"); + + b.HasKey("Id"); + + b.ToTable("PasswordResets"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfValuation") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FileNoGNDivision") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .HasColumnType("integer"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanOfParticulars") + .HasColumnType("text"); + + b.Property("PurposeOfValuation") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("MasterFileId"); + + b.HasIndex("ReportId"); + + b.ToTable("PastValuationsLA"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterfileId") + .HasColumnType("integer"); + + b.Property("PastValuationId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("MasterfileId"); + + b.HasIndex("PastValuationId"); + + b.ToTable("PastValuationsLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PropertyCategory", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Name") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("PropertyCategories"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RatingRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("LocalAuthority") + .IsRequired() + .HasColumnType("text"); + + b.Property("RatingReferenceNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("RequestType") + .IsRequired() + .HasColumnType("text"); + + b.Property("Status") + .IsRequired() + .HasColumnType("text"); + + b.Property("YearOfRevision") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.ToTable("RatingRequests"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Reconciliation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("NewNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("ObsoleteNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("StreetName") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("Reconciliations"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNo") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("FloorRateSQFT") + .HasColumnType("text"); + + b.Property("HeadOfTerms") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .HasColumnType("integer"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerMonth") + .HasColumnType("text"); + + b.Property("RatePerSqft") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("MasterFileId"); + + b.HasIndex("ReportId"); + + b.ToTable("RentalEvidencesLA", (string)null); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterfileId") + .HasColumnType("integer"); + + b.Property("RentalEvidenceId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("MasterfileId"); + + b.HasIndex("RentalEvidenceId"); + + b.ToTable("RentalEvidenceLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Report", b => + { + b.Property("ReportId") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("ReportId")); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportType") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Timestamp") + .HasColumnType("timestamp with time zone"); + + b.HasKey("ReportId"); + + b.ToTable("Reports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Request", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("LocalAuthority") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RatingReferenceNo") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RequestTypeId") + .HasColumnType("integer"); + + b.Property("Status") + .HasColumnType("boolean"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("YearOfRevision") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("RequestTypeId"); + + b.ToTable("Requests"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RequestType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Code") + .IsRequired() + .HasMaxLength(2) + .HasColumnType("character varying(2)"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("RequestTypes"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNumber") + .HasColumnType("text"); + + b.Property("Consideration") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DeedAttestedNumber") + .HasColumnType("text"); + + b.Property("DeedNumber") + .HasColumnType("text"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FloorRate") + .HasColumnType("text"); + + b.Property("LandRegistryReferences") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("LotNumber") + .HasColumnType("text"); + + b.Property("MasterFileId") + .HasColumnType("integer"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("NotaryName") + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("PlanDate") + .HasColumnType("text"); + + b.Property("PlanNumber") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Road") + .HasColumnType("text"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Vendor") + .HasColumnType("text"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("MasterFileId"); + + b.HasIndex("ReportId"); + + b.ToTable("SalesEvidencesLA", (string)null); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterfileId") + .HasColumnType("integer"); + + b.Property("SalesEvidenceId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("MasterfileId"); + + b.HasIndex("SalesEvidenceId"); + + b.ToTable("SalesEvidenceLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssignedDivision") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpEmail") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpId") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpName") + .IsRequired() + .HasColumnType("text"); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("bytea"); + + b.Property("PasswordSalt") + .IsRequired() + .HasColumnType("bytea"); + + b.Property("Position") + .IsRequired() + .HasColumnType("text"); + + b.Property("ProfilePicture") + .HasColumnType("bytea"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("ValuationBackend.Models.UserTask", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssignedDate") + .HasColumnType("timestamp with time zone"); + + b.Property("IsCompleted") + .HasColumnType("boolean"); + + b.Property("LandAcquisitionId") + .HasColumnType("integer"); + + b.Property("LandMiscellaneousId") + .HasColumnType("integer"); + + b.Property("ReferenceNumber") + .HasColumnType("text"); + + b.Property("RequestId") + .HasColumnType("integer"); + + b.Property("TaskType") + .IsRequired() + .HasColumnType("text"); + + b.Property("UserId") + .HasColumnType("integer"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.Property("WorkItemDescription") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("UserId"); + + b.ToTable("UserTasks"); + }); + + modelBuilder.Entity("ValuationBackend.Models.iteration2.RatingCards.OfficesRatingCard", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccessType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("Age") + .HasColumnType("integer"); + + b.Property("AssessmentNumber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("BuildingSelection") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CeilingHeight") + .HasColumnType("decimal(18,2)"); + + b.Property("Condition") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Conveniences") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("CreatedBy") + .IsRequired() + .HasColumnType("text"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("FloorNumber") + .HasColumnType("integer"); + + b.Property("FloorType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("LocalAuthority") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("LocalAuthorityCode") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("NewNumber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Notes") + .IsRequired() + .HasMaxLength(2000) + .HasColumnType("character varying(2000)"); + + b.Property("ObsoleteNumber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Occupier") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("OfficeGrade") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("OfficeSuite") + .IsRequired() + .HasMaxLength(1000) + .HasColumnType("character varying(1000)"); + + b.Property("Owner") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("ParkingSpace") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("PropertySubCategory") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("PropertyType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RentPM") + .HasColumnType("decimal(18,2)"); + + b.Property("RoadName") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("SuggestedRate") + .HasColumnType("decimal(18,2)"); + + b.Property("Terms") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("TotalArea") + .HasColumnType("decimal(18,2)"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("UpdatedBy") + .HasColumnType("text"); + + b.Property("UsableFloorArea") + .HasColumnType("decimal(18,2)"); + + b.Property("WallType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("WardNumber") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("OfficesRatingCards"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Asset", b => + { + b.HasOne("ValuationBackend.Models.Request", "Request") + .WithMany() + .HasForeignKey("RequestId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Request"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetDivision", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLA", b => + { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("MasterFile"); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLACoordinate", b => + { + b.HasOne("ValuationBackend.Models.BuildingRatesLA", "BuildingRate") + .WithMany() + .HasForeignKey("BuildingRateId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("LandAquisitionMasterFile", "Masterfile") + .WithMany() + .HasForeignKey("MasterfileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("BuildingRate"); + + b.Navigation("Masterfile"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.DomesticRatingCard", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionBuilding", b => + { + b.HasOne("ValuationBackend.Models.InspectionReport", "InspectionReport") + .WithMany("Buildings") + .HasForeignKey("InspectionReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("InspectionReport"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LALot", b => + { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("MasterFile"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMBuildingRates", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMPastValuation", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMRentalEvidence", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMSalesEvidence", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLA", b => + { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("MasterFile"); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLACoordinate", b => + { + b.HasOne("LandAquisitionMasterFile", "Masterfile") + .WithMany() + .HasForeignKey("MasterfileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("ValuationBackend.Models.PastValuationsLA", "PastValuation") + .WithMany() + .HasForeignKey("PastValuationId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Masterfile"); + + b.Navigation("PastValuation"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Reconciliation", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLA", b => + { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("MasterFile"); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLACoordinate", b => + { + b.HasOne("LandAquisitionMasterFile", "Masterfile") + .WithMany() + .HasForeignKey("MasterfileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("ValuationBackend.Models.RentalEvidenceLA", "RentalEvidence") + .WithMany() + .HasForeignKey("RentalEvidenceId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Masterfile"); + + b.Navigation("RentalEvidence"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Request", b => + { + b.HasOne("ValuationBackend.Models.RequestType", "RequestType") + .WithMany() + .HasForeignKey("RequestTypeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("RequestType"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLA", b => + { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("MasterFile"); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLACoordinate", b => + { + b.HasOne("LandAquisitionMasterFile", "Masterfile") + .WithMany() + .HasForeignKey("MasterfileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("ValuationBackend.Models.SalesEvidenceLA", "SalesEvidence") + .WithMany() + .HasForeignKey("SalesEvidenceId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Masterfile"); + + b.Navigation("SalesEvidence"); + }); + + modelBuilder.Entity("ValuationBackend.Models.UserTask", b => + { + b.HasOne("ValuationBackend.Models.User", "User") + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("User"); + }); + + modelBuilder.Entity("ValuationBackend.Models.iteration2.RatingCards.OfficesRatingCard", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.Navigation("Buildings"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/Migrations/20250722200849_AddMasterfileIdToCoordinates.cs b/Migrations/20250722200849_AddMasterfileIdToCoordinates.cs new file mode 100644 index 0000000..d2c4ffb --- /dev/null +++ b/Migrations/20250722200849_AddMasterfileIdToCoordinates.cs @@ -0,0 +1,146 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace ValuationBackend.Migrations +{ + /// + public partial class AddMasterfileIdToCoordinates : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.AddColumn( + name: "MasterfileId", + table: "SalesEvidenceLACoordinates", + type: "integer", + nullable: false, + defaultValue: 0); + + migrationBuilder.AddColumn( + name: "MasterfileId", + table: "RentalEvidenceLACoordinates", + type: "integer", + nullable: false, + defaultValue: 0); + + migrationBuilder.AddColumn( + name: "MasterfileId", + table: "PastValuationsLACoordinates", + type: "integer", + nullable: false, + defaultValue: 0); + + migrationBuilder.AddColumn( + name: "MasterfileId", + table: "BuildingRatesLACoordinates", + type: "integer", + nullable: false, + defaultValue: 0); + + migrationBuilder.CreateIndex( + name: "IX_SalesEvidenceLACoordinates_MasterfileId", + table: "SalesEvidenceLACoordinates", + column: "MasterfileId"); + + migrationBuilder.CreateIndex( + name: "IX_RentalEvidenceLACoordinates_MasterfileId", + table: "RentalEvidenceLACoordinates", + column: "MasterfileId"); + + migrationBuilder.CreateIndex( + name: "IX_PastValuationsLACoordinates_MasterfileId", + table: "PastValuationsLACoordinates", + column: "MasterfileId"); + + migrationBuilder.CreateIndex( + name: "IX_BuildingRatesLACoordinates_MasterfileId", + table: "BuildingRatesLACoordinates", + column: "MasterfileId"); + + migrationBuilder.AddForeignKey( + name: "FK_BuildingRatesLACoordinates_LandAquisitionMasterFiles_Master~", + table: "BuildingRatesLACoordinates", + column: "MasterfileId", + principalTable: "LandAquisitionMasterFiles", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + + migrationBuilder.AddForeignKey( + name: "FK_PastValuationsLACoordinates_LandAquisitionMasterFiles_Maste~", + table: "PastValuationsLACoordinates", + column: "MasterfileId", + principalTable: "LandAquisitionMasterFiles", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + + migrationBuilder.AddForeignKey( + name: "FK_RentalEvidenceLACoordinates_LandAquisitionMasterFiles_Maste~", + table: "RentalEvidenceLACoordinates", + column: "MasterfileId", + principalTable: "LandAquisitionMasterFiles", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + + migrationBuilder.AddForeignKey( + name: "FK_SalesEvidenceLACoordinates_LandAquisitionMasterFiles_Master~", + table: "SalesEvidenceLACoordinates", + column: "MasterfileId", + principalTable: "LandAquisitionMasterFiles", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropForeignKey( + name: "FK_BuildingRatesLACoordinates_LandAquisitionMasterFiles_Master~", + table: "BuildingRatesLACoordinates"); + + migrationBuilder.DropForeignKey( + name: "FK_PastValuationsLACoordinates_LandAquisitionMasterFiles_Maste~", + table: "PastValuationsLACoordinates"); + + migrationBuilder.DropForeignKey( + name: "FK_RentalEvidenceLACoordinates_LandAquisitionMasterFiles_Maste~", + table: "RentalEvidenceLACoordinates"); + + migrationBuilder.DropForeignKey( + name: "FK_SalesEvidenceLACoordinates_LandAquisitionMasterFiles_Master~", + table: "SalesEvidenceLACoordinates"); + + migrationBuilder.DropIndex( + name: "IX_SalesEvidenceLACoordinates_MasterfileId", + table: "SalesEvidenceLACoordinates"); + + migrationBuilder.DropIndex( + name: "IX_RentalEvidenceLACoordinates_MasterfileId", + table: "RentalEvidenceLACoordinates"); + + migrationBuilder.DropIndex( + name: "IX_PastValuationsLACoordinates_MasterfileId", + table: "PastValuationsLACoordinates"); + + migrationBuilder.DropIndex( + name: "IX_BuildingRatesLACoordinates_MasterfileId", + table: "BuildingRatesLACoordinates"); + + migrationBuilder.DropColumn( + name: "MasterfileId", + table: "SalesEvidenceLACoordinates"); + + migrationBuilder.DropColumn( + name: "MasterfileId", + table: "RentalEvidenceLACoordinates"); + + migrationBuilder.DropColumn( + name: "MasterfileId", + table: "PastValuationsLACoordinates"); + + migrationBuilder.DropColumn( + name: "MasterfileId", + table: "BuildingRatesLACoordinates"); + } + } +} diff --git a/Migrations/AppDbContextModelSnapshot.cs b/Migrations/AppDbContextModelSnapshot.cs index 6ca928d..38727b0 100644 --- a/Migrations/AppDbContextModelSnapshot.cs +++ b/Migrations/AppDbContextModelSnapshot.cs @@ -308,6 +308,9 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("CreatedAt") .HasColumnType("timestamp with time zone"); + b.Property("MasterfileId") + .HasColumnType("integer"); + b.Property("UpdatedAt") .HasColumnType("timestamp with time zone"); @@ -315,6 +318,8 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.HasIndex("BuildingRateId"); + b.HasIndex("MasterfileId"); + b.ToTable("BuildingRatesLACoordinates"); }); @@ -1209,6 +1214,9 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("CreatedAt") .HasColumnType("timestamp with time zone"); + b.Property("MasterfileId") + .HasColumnType("integer"); + b.Property("PastValuationId") .HasColumnType("integer"); @@ -1217,6 +1225,8 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.HasKey("Id"); + b.HasIndex("MasterfileId"); + b.HasIndex("PastValuationId"); b.ToTable("PastValuationsLACoordinates"); @@ -1392,6 +1402,9 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("CreatedAt") .HasColumnType("timestamp with time zone"); + b.Property("MasterfileId") + .HasColumnType("integer"); + b.Property("RentalEvidenceId") .HasColumnType("integer"); @@ -1400,6 +1413,8 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.HasKey("Id"); + b.HasIndex("MasterfileId"); + b.HasIndex("RentalEvidenceId"); b.ToTable("RentalEvidenceLACoordinates"); @@ -1613,6 +1628,9 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("CreatedAt") .HasColumnType("timestamp with time zone"); + b.Property("MasterfileId") + .HasColumnType("integer"); + b.Property("SalesEvidenceId") .HasColumnType("integer"); @@ -1621,6 +1639,8 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.HasKey("Id"); + b.HasIndex("MasterfileId"); + b.HasIndex("SalesEvidenceId"); b.ToTable("SalesEvidenceLACoordinates"); @@ -1938,7 +1958,15 @@ protected override void BuildModel(ModelBuilder modelBuilder) .OnDelete(DeleteBehavior.Cascade) .IsRequired(); + b.HasOne("LandAquisitionMasterFile", "Masterfile") + .WithMany() + .HasForeignKey("MasterfileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + b.Navigation("BuildingRate"); + + b.Navigation("Masterfile"); }); modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => @@ -2061,12 +2089,20 @@ protected override void BuildModel(ModelBuilder modelBuilder) modelBuilder.Entity("ValuationBackend.Models.PastValuationsLACoordinate", b => { + b.HasOne("LandAquisitionMasterFile", "Masterfile") + .WithMany() + .HasForeignKey("MasterfileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + b.HasOne("ValuationBackend.Models.PastValuationsLA", "PastValuation") .WithMany() .HasForeignKey("PastValuationId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); + b.Navigation("Masterfile"); + b.Navigation("PastValuation"); }); @@ -2102,12 +2138,20 @@ protected override void BuildModel(ModelBuilder modelBuilder) modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLACoordinate", b => { + b.HasOne("LandAquisitionMasterFile", "Masterfile") + .WithMany() + .HasForeignKey("MasterfileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + b.HasOne("ValuationBackend.Models.RentalEvidenceLA", "RentalEvidence") .WithMany() .HasForeignKey("RentalEvidenceId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); + b.Navigation("Masterfile"); + b.Navigation("RentalEvidence"); }); @@ -2143,12 +2187,20 @@ protected override void BuildModel(ModelBuilder modelBuilder) modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLACoordinate", b => { + b.HasOne("LandAquisitionMasterFile", "Masterfile") + .WithMany() + .HasForeignKey("MasterfileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + b.HasOne("ValuationBackend.Models.SalesEvidenceLA", "SalesEvidence") .WithMany() .HasForeignKey("SalesEvidenceId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); + b.Navigation("Masterfile"); + b.Navigation("SalesEvidence"); }); diff --git a/Models/DTOs/LACoordinateDtos.cs b/Models/DTOs/LACoordinateDtos.cs index 9e0c0e5..2b8f5fb 100644 --- a/Models/DTOs/LACoordinateDtos.cs +++ b/Models/DTOs/LACoordinateDtos.cs @@ -6,7 +6,7 @@ namespace ValuationBackend.Models.DTOs public class PastValuationsLACoordinateCreateDto { [Required] - public int PastValuationId { get; set; } + public int MasterfileId { get; set; } [Required] [MinLength(1, ErrorMessage = "Coordinates cannot be empty")] @@ -15,6 +15,9 @@ public class PastValuationsLACoordinateCreateDto public class PastValuationsLACoordinateUpdateDto { + [Required] + public int MasterfileId { get; set; } + [Required] public int PastValuationId { get; set; } @@ -26,6 +29,7 @@ public class PastValuationsLACoordinateUpdateDto public class PastValuationsLACoordinateResponseDto { public int Id { get; set; } + public int MasterfileId { get; set; } public int PastValuationId { get; set; } public string Coordinates { get; set; } = string.Empty; public DateTime CreatedAt { get; set; } @@ -36,7 +40,7 @@ public class PastValuationsLACoordinateResponseDto public class BuildingRatesLACoordinateCreateDto { [Required] - public int BuildingRateId { get; set; } + public int MasterfileId { get; set; } [Required] [MinLength(1, ErrorMessage = "Coordinates cannot be empty")] @@ -45,6 +49,9 @@ public class BuildingRatesLACoordinateCreateDto public class BuildingRatesLACoordinateUpdateDto { + [Required] + public int MasterfileId { get; set; } + [Required] public int BuildingRateId { get; set; } @@ -56,6 +63,7 @@ public class BuildingRatesLACoordinateUpdateDto public class BuildingRatesLACoordinateResponseDto { public int Id { get; set; } + public int MasterfileId { get; set; } public int BuildingRateId { get; set; } public string Coordinates { get; set; } = string.Empty; public DateTime CreatedAt { get; set; } @@ -66,7 +74,7 @@ public class BuildingRatesLACoordinateResponseDto public class SalesEvidenceLACoordinateCreateDto { [Required] - public int SalesEvidenceId { get; set; } + public int MasterfileId { get; set; } [Required] [MinLength(1, ErrorMessage = "Coordinates cannot be empty")] @@ -75,6 +83,9 @@ public class SalesEvidenceLACoordinateCreateDto public class SalesEvidenceLACoordinateUpdateDto { + [Required] + public int MasterfileId { get; set; } + [Required] public int SalesEvidenceId { get; set; } @@ -86,6 +97,7 @@ public class SalesEvidenceLACoordinateUpdateDto public class SalesEvidenceLACoordinateResponseDto { public int Id { get; set; } + public int MasterfileId { get; set; } public int SalesEvidenceId { get; set; } public string Coordinates { get; set; } = string.Empty; public DateTime CreatedAt { get; set; } @@ -96,7 +108,7 @@ public class SalesEvidenceLACoordinateResponseDto public class RentalEvidenceLACoordinateCreateDto { [Required] - public int RentalEvidenceId { get; set; } + public int MasterfileId { get; set; } [Required] [MinLength(1, ErrorMessage = "Coordinates cannot be empty")] @@ -105,6 +117,9 @@ public class RentalEvidenceLACoordinateCreateDto public class RentalEvidenceLACoordinateUpdateDto { + [Required] + public int MasterfileId { get; set; } + [Required] public int RentalEvidenceId { get; set; } @@ -116,6 +131,7 @@ public class RentalEvidenceLACoordinateUpdateDto public class RentalEvidenceLACoordinateResponseDto { public int Id { get; set; } + public int MasterfileId { get; set; } public int RentalEvidenceId { get; set; } public string Coordinates { get; set; } = string.Empty; public DateTime CreatedAt { get; set; } diff --git a/Models/LACoordinates.cs b/Models/LACoordinates.cs index a8d20aa..5a435d6 100644 --- a/Models/LACoordinates.cs +++ b/Models/LACoordinates.cs @@ -16,6 +16,13 @@ public class PastValuationsLACoordinate [ForeignKey("PastValuationId")] public virtual PastValuationsLA? PastValuation { get; set; } + // Foreign key to LandAquisitionMasterFile table + [Required] + public int MasterfileId { get; set; } + + [ForeignKey("MasterfileId")] + public virtual LandAquisitionMasterFile? Masterfile { get; set; } + // Map coordinates from frontend (stored as JSON string) [Required] public string Coordinates { get; set; } = string.Empty; @@ -38,6 +45,13 @@ public class BuildingRatesLACoordinate [ForeignKey("BuildingRateId")] public virtual BuildingRatesLA? BuildingRate { get; set; } + // Foreign key to LandAquisitionMasterFile table + [Required] + public int MasterfileId { get; set; } + + [ForeignKey("MasterfileId")] + public virtual LandAquisitionMasterFile? Masterfile { get; set; } + // Map coordinates from frontend (stored as JSON string) [Required] public string Coordinates { get; set; } = string.Empty; @@ -60,6 +74,13 @@ public class SalesEvidenceLACoordinate [ForeignKey("SalesEvidenceId")] public virtual SalesEvidenceLA? SalesEvidence { get; set; } + // Foreign key to LandAquisitionMasterFile table + [Required] + public int MasterfileId { get; set; } + + [ForeignKey("MasterfileId")] + public virtual LandAquisitionMasterFile? Masterfile { get; set; } + // Map coordinates from frontend (stored as JSON string) [Required] public string Coordinates { get; set; } = string.Empty; @@ -82,6 +103,13 @@ public class RentalEvidenceLACoordinate [ForeignKey("RentalEvidenceId")] public virtual RentalEvidenceLA? RentalEvidence { get; set; } + // Foreign key to LandAquisitionMasterFile table + [Required] + public int MasterfileId { get; set; } + + [ForeignKey("MasterfileId")] + public virtual LandAquisitionMasterFile? Masterfile { get; set; } + // Map coordinates from frontend (stored as JSON string) [Required] public string Coordinates { get; set; } = string.Empty; diff --git a/Profiles/LACoordinateProfiles.cs b/Profiles/LACoordinateProfiles.cs index 945f23f..9610127 100644 --- a/Profiles/LACoordinateProfiles.cs +++ b/Profiles/LACoordinateProfiles.cs @@ -12,53 +12,65 @@ public LACoordinateProfiles() CreateMap(); CreateMap() .ForMember(dest => dest.Id, opt => opt.Ignore()) + .ForMember(dest => dest.PastValuationId, opt => opt.Ignore()) .ForMember(dest => dest.CreatedAt, opt => opt.Ignore()) .ForMember(dest => dest.UpdatedAt, opt => opt.Ignore()) - .ForMember(dest => dest.PastValuation, opt => opt.Ignore()); + .ForMember(dest => dest.PastValuation, opt => opt.Ignore()) + .ForMember(dest => dest.Masterfile, opt => opt.Ignore()); CreateMap() .ForMember(dest => dest.Id, opt => opt.Ignore()) .ForMember(dest => dest.CreatedAt, opt => opt.Ignore()) .ForMember(dest => dest.UpdatedAt, opt => opt.Ignore()) - .ForMember(dest => dest.PastValuation, opt => opt.Ignore()); + .ForMember(dest => dest.PastValuation, opt => opt.Ignore()) + .ForMember(dest => dest.Masterfile, opt => opt.Ignore()); // BuildingRatesLA Coordinate Mappings CreateMap(); CreateMap() .ForMember(dest => dest.Id, opt => opt.Ignore()) + .ForMember(dest => dest.BuildingRateId, opt => opt.Ignore()) .ForMember(dest => dest.CreatedAt, opt => opt.Ignore()) .ForMember(dest => dest.UpdatedAt, opt => opt.Ignore()) - .ForMember(dest => dest.BuildingRate, opt => opt.Ignore()); + .ForMember(dest => dest.BuildingRate, opt => opt.Ignore()) + .ForMember(dest => dest.Masterfile, opt => opt.Ignore()); CreateMap() .ForMember(dest => dest.Id, opt => opt.Ignore()) .ForMember(dest => dest.CreatedAt, opt => opt.Ignore()) .ForMember(dest => dest.UpdatedAt, opt => opt.Ignore()) - .ForMember(dest => dest.BuildingRate, opt => opt.Ignore()); + .ForMember(dest => dest.BuildingRate, opt => opt.Ignore()) + .ForMember(dest => dest.Masterfile, opt => opt.Ignore()); // SalesEvidenceLA Coordinate Mappings CreateMap(); CreateMap() .ForMember(dest => dest.Id, opt => opt.Ignore()) + .ForMember(dest => dest.SalesEvidenceId, opt => opt.Ignore()) .ForMember(dest => dest.CreatedAt, opt => opt.Ignore()) .ForMember(dest => dest.UpdatedAt, opt => opt.Ignore()) - .ForMember(dest => dest.SalesEvidence, opt => opt.Ignore()); + .ForMember(dest => dest.SalesEvidence, opt => opt.Ignore()) + .ForMember(dest => dest.Masterfile, opt => opt.Ignore()); CreateMap() .ForMember(dest => dest.Id, opt => opt.Ignore()) .ForMember(dest => dest.CreatedAt, opt => opt.Ignore()) .ForMember(dest => dest.UpdatedAt, opt => opt.Ignore()) - .ForMember(dest => dest.SalesEvidence, opt => opt.Ignore()); + .ForMember(dest => dest.SalesEvidence, opt => opt.Ignore()) + .ForMember(dest => dest.Masterfile, opt => opt.Ignore()); // RentalEvidenceLA Coordinate Mappings CreateMap(); CreateMap() .ForMember(dest => dest.Id, opt => opt.Ignore()) + .ForMember(dest => dest.RentalEvidenceId, opt => opt.Ignore()) .ForMember(dest => dest.CreatedAt, opt => opt.Ignore()) .ForMember(dest => dest.UpdatedAt, opt => opt.Ignore()) - .ForMember(dest => dest.RentalEvidence, opt => opt.Ignore()); + .ForMember(dest => dest.RentalEvidence, opt => opt.Ignore()) + .ForMember(dest => dest.Masterfile, opt => opt.Ignore()); CreateMap() .ForMember(dest => dest.Id, opt => opt.Ignore()) .ForMember(dest => dest.CreatedAt, opt => opt.Ignore()) .ForMember(dest => dest.UpdatedAt, opt => opt.Ignore()) - .ForMember(dest => dest.RentalEvidence, opt => opt.Ignore()); + .ForMember(dest => dest.RentalEvidence, opt => opt.Ignore()) + .ForMember(dest => dest.Masterfile, opt => opt.Ignore()); } } } diff --git a/repositories/ILACoordinateRepositories.cs b/repositories/ILACoordinateRepositories.cs index e9a518a..4b57878 100644 --- a/repositories/ILACoordinateRepositories.cs +++ b/repositories/ILACoordinateRepositories.cs @@ -15,6 +15,7 @@ public interface IPastValuationsLACoordinateRepository Task DeleteAsync(int id); Task ExistsAsync(int id); Task PastValuationExistsAsync(int pastValuationId); + Task MasterFileExistsAsync(int masterFileId); } // BuildingRatesLA Coordinate Repository @@ -28,6 +29,7 @@ public interface IBuildingRatesLACoordinateRepository Task DeleteAsync(int id); Task ExistsAsync(int id); Task BuildingRateExistsAsync(int buildingRateId); + Task MasterFileExistsAsync(int masterFileId); } // SalesEvidenceLA Coordinate Repository @@ -41,6 +43,7 @@ public interface ISalesEvidenceLACoordinateRepository Task DeleteAsync(int id); Task ExistsAsync(int id); Task SalesEvidenceExistsAsync(int salesEvidenceId); + Task MasterFileExistsAsync(int masterFileId); } // RentalEvidenceLA Coordinate Repository @@ -54,5 +57,6 @@ public interface IRentalEvidenceLACoordinateRepository Task DeleteAsync(int id); Task ExistsAsync(int id); Task RentalEvidenceExistsAsync(int rentalEvidenceId); + Task MasterFileExistsAsync(int masterFileId); } } diff --git a/repositories/LACoordinateRepositories.cs b/repositories/LACoordinateRepositories.cs index 67aedd2..99efd07 100644 --- a/repositories/LACoordinateRepositories.cs +++ b/repositories/LACoordinateRepositories.cs @@ -21,6 +21,7 @@ public async Task> GetAllAsync() { return await _context.PastValuationsLACoordinates .Include(c => c.PastValuation) + .Include(c => c.Masterfile) .ToListAsync(); } @@ -28,6 +29,7 @@ public async Task GetByIdAsync(int id) { return await _context.PastValuationsLACoordinates .Include(c => c.PastValuation) + .Include(c => c.Masterfile) .FirstOrDefaultAsync(c => c.Id == id); } @@ -35,6 +37,7 @@ public async Task> GetByPastValuationIdA { return await _context.PastValuationsLACoordinates .Include(c => c.PastValuation) + .Include(c => c.Masterfile) .Where(c => c.PastValuationId == pastValuationId) .ToListAsync(); } @@ -89,6 +92,11 @@ public async Task PastValuationExistsAsync(int pastValuationId) { return await _context.PastValuationsLA.AnyAsync(p => p.Id == pastValuationId); } + + public async Task MasterFileExistsAsync(int masterFileId) + { + return await _context.LandAquisitionMasterFiles.AnyAsync(m => m.Id == masterFileId); + } } // BuildingRatesLA Coordinate Repository @@ -105,6 +113,7 @@ public async Task> GetAllAsync() { return await _context.BuildingRatesLACoordinates .Include(c => c.BuildingRate) + .Include(c => c.Masterfile) .ToListAsync(); } @@ -112,6 +121,7 @@ public async Task GetByIdAsync(int id) { return await _context.BuildingRatesLACoordinates .Include(c => c.BuildingRate) + .Include(c => c.Masterfile) .FirstOrDefaultAsync(c => c.Id == id); } @@ -119,6 +129,7 @@ public async Task> GetByBuildingRateIdAsy { return await _context.BuildingRatesLACoordinates .Include(c => c.BuildingRate) + .Include(c => c.Masterfile) .Where(c => c.BuildingRateId == buildingRateId) .ToListAsync(); } @@ -173,6 +184,11 @@ public async Task BuildingRateExistsAsync(int buildingRateId) { return await _context.BuildingRatesLA.AnyAsync(b => b.Id == buildingRateId); } + + public async Task MasterFileExistsAsync(int masterFileId) + { + return await _context.LandAquisitionMasterFiles.AnyAsync(m => m.Id == masterFileId); + } } // SalesEvidenceLA Coordinate Repository @@ -189,6 +205,7 @@ public async Task> GetAllAsync() { return await _context.SalesEvidenceLACoordinates .Include(c => c.SalesEvidence) + .Include(c => c.Masterfile) .ToListAsync(); } @@ -196,6 +213,7 @@ public async Task GetByIdAsync(int id) { return await _context.SalesEvidenceLACoordinates .Include(c => c.SalesEvidence) + .Include(c => c.Masterfile) .FirstOrDefaultAsync(c => c.Id == id); } @@ -203,6 +221,7 @@ public async Task> GetBySalesEvidenceIdAs { return await _context.SalesEvidenceLACoordinates .Include(c => c.SalesEvidence) + .Include(c => c.Masterfile) .Where(c => c.SalesEvidenceId == salesEvidenceId) .ToListAsync(); } @@ -257,6 +276,11 @@ public async Task SalesEvidenceExistsAsync(int salesEvidenceId) { return await _context.SalesEvidencesLA.AnyAsync(s => s.Id == salesEvidenceId); } + + public async Task MasterFileExistsAsync(int masterFileId) + { + return await _context.LandAquisitionMasterFiles.AnyAsync(m => m.Id == masterFileId); + } } // RentalEvidenceLA Coordinate Repository @@ -273,6 +297,7 @@ public async Task> GetAllAsync() { return await _context.RentalEvidenceLACoordinates .Include(c => c.RentalEvidence) + .Include(c => c.Masterfile) .ToListAsync(); } @@ -280,6 +305,7 @@ public async Task GetByIdAsync(int id) { return await _context.RentalEvidenceLACoordinates .Include(c => c.RentalEvidence) + .Include(c => c.Masterfile) .FirstOrDefaultAsync(c => c.Id == id); } @@ -287,6 +313,7 @@ public async Task> GetByRentalEvidenceId { return await _context.RentalEvidenceLACoordinates .Include(c => c.RentalEvidence) + .Include(c => c.Masterfile) .Where(c => c.RentalEvidenceId == rentalEvidenceId) .ToListAsync(); } @@ -341,5 +368,10 @@ public async Task RentalEvidenceExistsAsync(int rentalEvidenceId) { return await _context.RentalEvidencesLA.AnyAsync(r => r.Id == rentalEvidenceId); } + + public async Task MasterFileExistsAsync(int masterFileId) + { + return await _context.LandAquisitionMasterFiles.AnyAsync(m => m.Id == masterFileId); + } } } diff --git a/services/LACoordinateServices.cs b/services/LACoordinateServices.cs index f1d2063..3ea4119 100644 --- a/services/LACoordinateServices.cs +++ b/services/LACoordinateServices.cs @@ -44,13 +44,15 @@ public async Task> GetByPastV public async Task CreateAsync(PastValuationsLACoordinateCreateDto dto) { - var pastValuationExists = await _repository.PastValuationExistsAsync(dto.PastValuationId); - if (!pastValuationExists) + var masterFileExists = await _repository.MasterFileExistsAsync(dto.MasterfileId); + if (!masterFileExists) { - throw new ArgumentException($"PastValuation with ID {dto.PastValuationId} does not exist."); + throw new ArgumentException($"Masterfile with ID {dto.MasterfileId} does not exist."); } var coordinate = _mapper.Map(dto); + // Set PastValuationId to 0 since it will be assigned later + coordinate.PastValuationId = 0; var createdCoordinate = await _repository.CreateAsync(coordinate); return _mapper.Map(createdCoordinate); } @@ -69,6 +71,12 @@ public async Task UpdateAsync(int id, Pas throw new ArgumentException($"PastValuation with ID {dto.PastValuationId} does not exist."); } + var masterFileExists = await _repository.MasterFileExistsAsync(dto.MasterfileId); + if (!masterFileExists) + { + throw new ArgumentException($"Masterfile with ID {dto.MasterfileId} does not exist."); + } + _mapper.Map(dto, existingCoordinate); var updateSuccess = await _repository.UpdateAsync(existingCoordinate); @@ -124,13 +132,15 @@ public async Task> GetByBuildi public async Task CreateAsync(BuildingRatesLACoordinateCreateDto dto) { - var buildingRateExists = await _repository.BuildingRateExistsAsync(dto.BuildingRateId); - if (!buildingRateExists) + var masterFileExists = await _repository.MasterFileExistsAsync(dto.MasterfileId); + if (!masterFileExists) { - throw new ArgumentException($"BuildingRate with ID {dto.BuildingRateId} does not exist."); + throw new ArgumentException($"Masterfile with ID {dto.MasterfileId} does not exist."); } var coordinate = _mapper.Map(dto); + // Set BuildingRateId to 0 since it will be assigned later + coordinate.BuildingRateId = 0; var createdCoordinate = await _repository.CreateAsync(coordinate); return _mapper.Map(createdCoordinate); } @@ -149,6 +159,12 @@ public async Task UpdateAsync(int id, Buil throw new ArgumentException($"BuildingRate with ID {dto.BuildingRateId} does not exist."); } + var masterFileExists = await _repository.MasterFileExistsAsync(dto.MasterfileId); + if (!masterFileExists) + { + throw new ArgumentException($"Masterfile with ID {dto.MasterfileId} does not exist."); + } + _mapper.Map(dto, existingCoordinate); var updateSuccess = await _repository.UpdateAsync(existingCoordinate); @@ -204,13 +220,15 @@ public async Task> GetBySalesE public async Task CreateAsync(SalesEvidenceLACoordinateCreateDto dto) { - var salesEvidenceExists = await _repository.SalesEvidenceExistsAsync(dto.SalesEvidenceId); - if (!salesEvidenceExists) + var masterFileExists = await _repository.MasterFileExistsAsync(dto.MasterfileId); + if (!masterFileExists) { - throw new ArgumentException($"SalesEvidence with ID {dto.SalesEvidenceId} does not exist."); + throw new ArgumentException($"Masterfile with ID {dto.MasterfileId} does not exist."); } var coordinate = _mapper.Map(dto); + // Set SalesEvidenceId to 0 since it will be assigned later + coordinate.SalesEvidenceId = 0; var createdCoordinate = await _repository.CreateAsync(coordinate); return _mapper.Map(createdCoordinate); } @@ -229,6 +247,12 @@ public async Task UpdateAsync(int id, Sale throw new ArgumentException($"SalesEvidence with ID {dto.SalesEvidenceId} does not exist."); } + var masterFileExists = await _repository.MasterFileExistsAsync(dto.MasterfileId); + if (!masterFileExists) + { + throw new ArgumentException($"Masterfile with ID {dto.MasterfileId} does not exist."); + } + _mapper.Map(dto, existingCoordinate); var updateSuccess = await _repository.UpdateAsync(existingCoordinate); @@ -284,13 +308,15 @@ public async Task> GetByRenta public async Task CreateAsync(RentalEvidenceLACoordinateCreateDto dto) { - var rentalEvidenceExists = await _repository.RentalEvidenceExistsAsync(dto.RentalEvidenceId); - if (!rentalEvidenceExists) + var masterFileExists = await _repository.MasterFileExistsAsync(dto.MasterfileId); + if (!masterFileExists) { - throw new ArgumentException($"RentalEvidence with ID {dto.RentalEvidenceId} does not exist."); + throw new ArgumentException($"Masterfile with ID {dto.MasterfileId} does not exist."); } var coordinate = _mapper.Map(dto); + // Set RentalEvidenceId to 0 since it will be assigned later + coordinate.RentalEvidenceId = 0; var createdCoordinate = await _repository.CreateAsync(coordinate); return _mapper.Map(createdCoordinate); } @@ -309,6 +335,12 @@ public async Task UpdateAsync(int id, Ren throw new ArgumentException($"RentalEvidence with ID {dto.RentalEvidenceId} does not exist."); } + var masterFileExists = await _repository.MasterFileExistsAsync(dto.MasterfileId); + if (!masterFileExists) + { + throw new ArgumentException($"Masterfile with ID {dto.MasterfileId} does not exist."); + } + _mapper.Map(dto, existingCoordinate); var updateSuccess = await _repository.UpdateAsync(existingCoordinate); From d18e0c2e2a9b8c3a75a1133fec14f943a206fe8b Mon Sep 17 00:00:00 2001 From: JalinaH Date: Wed, 23 Jul 2025 11:13:40 +0530 Subject: [PATCH 19/21] Remove obj folder from Git tracking - should be ignored --- .../net8.0/ValuationBackend.assets.cache | Bin 90332 -> 0 bytes ...tionBackend.csproj.AssemblyReference.cache | Bin 15931 -> 0 bytes obj/ValuationBackend.csproj.nuget.dgspec.json | 128 - obj/project.assets.json | 8515 ----------------- obj/project.nuget.cache | 150 - 5 files changed, 8793 deletions(-) delete mode 100644 obj/Debug/net8.0/ValuationBackend.assets.cache delete mode 100644 obj/Debug/net8.0/ValuationBackend.csproj.AssemblyReference.cache delete mode 100644 obj/ValuationBackend.csproj.nuget.dgspec.json delete mode 100644 obj/project.assets.json delete mode 100644 obj/project.nuget.cache diff --git a/obj/Debug/net8.0/ValuationBackend.assets.cache b/obj/Debug/net8.0/ValuationBackend.assets.cache deleted file mode 100644 index b2d020accca5722481f4495f5433407ef487e213..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 90332 zcmd5_378y5b(UpI@_otoAxpAl`BJa;kYpKSyxNtewRKs$!Zuzov$MUsBhAi?r)RX1 zfne@4+yn>#LVyqgggXh4kN^n*LI?>tNC-Jd$bFK81akhbr;gX%RbACHv$plAHR|qH z@BQyp)vMQa9=d1G=-De)ta$L0hrjW{w|(>5!O`!0=FLC&`WGL4=(C^u{_vN!eBqYY z4SwgIADsNw_g1V}4Z0s1yKVYN6gH#jsI*u)HXYR3^I>bcQ7RuR&4Er%j7;nM*?Ox62IXjaze+lWq@yxv{2xjh%vP%_0fGLU zf{XrtDy|ou@|a^9n_MV08-WwrEB&E`wN|Bda;{lg443N7W951?WLDc5Yz?+KthPJm zaF^sTMjVU?PZP#lh2J+9KzO1R)}l(i76sM%{CuT0ACzXIR_x^=g;3v|UP31DVos5bf3iIgWCPN_cQ| zsWlUpn#jOgk$+od{^5o>*U_i}NFDExOn&!LYge3{gIz1YUL?R?jNh8WFh;C(YkhTpn36oZ2mE=v^iq?t_Kl$H3)1s3v3l!sT~dYOM7 z8o-#GsW-Aw=7_n;u1vwa3ik!tOB2jySdB|tsVdx-H^{>(C5L#mfJm;2EV&NXOA1(0 zyN+_HykKdS%ougjF_F|}$7=*gnceGg|1AHarv*uji{WCuc`~;E>O>OV{x}gg-i8#e zjkteacgCyN<|^}Tw7>8q({N|OkgTK9|C5i?4wZS?F`kygyH>!v4!@MQn{d6pcX-*V zV(}+djJABfUI3PbaWn3V)EAv+rq-(yA-T$;qouk*K$J!CM%=%nE1Mc1W-Yr-mV%Uf z)S8;`+U$E%3jEEuU+ktHi3rrQ0?7!IIq+LjNVedU$h%m3T7g0PZ4 zw-)iCSxuJtTZ2Js=rkdc?T?e$GHpme8^$j|8^QIce+5lqqtAn-aHds1h5#9{lP@^> zLbxxSnTpeK!);5U+m8E|cSa_`$x7%COBQ%mvUa2Z-HQ9AE&(-~^;W%HuSU~55C9LG zT~{&}56L9lNIM0l+wedUaR4ArW=S96i>{exg`c1@a-wU zPsV+-OCuI8YuQ3}hkzriz*BJlOm8^yOJOkB9t^2Wlu-yiO<5FT_)NG{2p`2SW!^4a z4|@w=s?>&u0_LSg&|$T8x*5*#PhtAD)1lCPaT>Fu8WU*71)AOX9d)3oHRhv-JK?ob zpPJtT@pGQQQUH8A{=as7eUmZRlk>)JZmZ?>>%gLSU1z z)ZMth$AK+spgUUrRrIpy?`b@q zpN~JE+4nqIev;9%4`@6ldXDCRKyy%_IfP%AJIhBiAJ)k6YkRl>p^J)Rx;KUCFz(x~ zoM0MfE!3v(_(G75OmIY#DMVAaf5?TX(*cIgCwNfmJDavt&F#~ouWYo@fUk_Z*;s>f zM97vk@~OBl`N>ApQtk9aMKM>svtdoX%EC^EEh~N*SX9;Y@qpDSw=$ z7^f5*$qE7EJ$MulFB|r6^iTf@r)T&cNWT`Ch zZJpA^K}}H#j-(`z$T~BFd#8`>@a1_$g9YfJv0>R}#L`K_(UenYW^o_-mDl-deWp~c zJksgru-HV^;XRz1BM4In=5X)X>z_anluK1~a+feLRt(FSOvh2pr%)~6-WA)6a-0lV zJ0T$TCmTLFM0rVu(IN&!7cvJ_5rAYIcog@pUUdnmZnKCgB@+j^tYazVtGJ){D-@MF z{OMu?fe#ID+2pEH0l8zEoMTu_VW{EW)43-x1dmi2a}^K2n!@t5O5-jh8S#e+4t52p|`aqsC~69~Mba#=bL1`LcjG>=laTDYI|D>2nd?O~fi zRQRzEL_8caRT=b`r*L9Q?Sr#HDcXIOkYL9 z{up8k_JWYhJt^cqf?o>MpM}e_hLT*LZ!#v`oafIL7-U2C9Nc>be}o~bmycmU)Ry(i zMUeWF9a?UIA4*AouD|s942^-t9ac{12V>e!FBPkYkEWzQ5BHuyH$Hzw;A<1Eyz*g1 z$~Av}O7;tI@B9Sm1Q1#_8z;8GP~i-N!A1d?HC~uP^rEg1xeKKUk-2QXIECmXxPOjc zy+qR$hn!I$|F>AGVM0#R!%i~gVZmd6Cne9lm!^=t4ELTN2+cM+3>G^d2!mONp^Ht2 zj!S*HkopSzlD~K*F4uT(B+887hOb01vA|}C3;=U!`C)-Y`i)oNzT%lT0?PtsQJ^uk z0a3o=u%O@Dq30HPbqd96aDSp0iVD7moAm~!a2>Cd(`aZ?0lu&4!(Mn&31*^`Y*HlS zpkA8-^*Y=;2c%N@ltLAVQd6nT)tigCvAPqf&|pHd;^1GO0{;fwd$!2}BWA!YhE05l z+A=nS@PJ6balA2w<417+3fG{4Fk%$qn;xSXLAiOd(W=ikOO1t-L8&@l$J2#HD=-x- zOiBi0oWZDKz=6Ig1@z6hcaEFo0>uoU`fScup{f{Wn7c)C4)QH2kU!e9HQj#R0n_aA z-gJTB*!?;|rrA>H5 zlfh9@{e+9T;|#+`7={9qjgl6KK?F2)Ji=uB*zXs@bDv5XFlZlT(EO)YB#>!H)X7#P zo6L|t#vm1#4{pP>7|paR)miWCW1#j=?xLhY{O?{2M{vu1oWXR)N0ySsOxFjPEL%Ca zcWV*g@{-W6`lko-cfS*4Z_ii=xYMS!NMFF6-V=XJTXciodWdb{;xXPG9%oibot2M!{ay1x@PS(otXYL&NPolV-QN%S}Ev})r zm!{wDt0UsBQ}6bQ_4-|+755MgiuZZel5UVlUsH&_ITRz`cPJYr2n0~ECY{Vc5%4K?M84TUPHVF}sc;=YI#C_MK1FOZ%fMOaU5tuD3=NYCgY-T6syAr!= zj4J7mccNk7lY^jXX`3{&Bw=E9W=d?5l4-iZ#!XFOBu*^TlbjS)keEeCY1Y{|cSd!I z7-BhQ@C%(5aaNzCu4u&!8ibYxmb{^?*Kbr^3Ys zEjp>u0QZWu5HKm0qy_sbGtE+yMwV8r?#xi5|8DY{tVWc3WiKA4kyJ{x;MOfCwvWi} z$DjtG$HO4Er-T%mjH<+JLNc2RXY0)pCNK7t+ek0mE|%C5IuYvYjBkSE$TAVGGZV_8 zJ|Y=3lbHLM5K2_z#(lU*DrWEfGF=^c5VfN)7#t3Uda+WL;|Nwg_QG+G!Wf;P+1rC# z3v*L;Qst}OH7{npyCkya0w%%lC=83S+9z4HXE1ot4hBbptv!|248!gHXV^tfFqPMc znW$9iFELLKrC00BuL3c1lt?z@lVC0Y?=*2qIi$F~m zBa&;3Bs#p}G|3o3&+;OgGX$TB_^a_^b;oB%5uMDzWQ!7rxk^MKwE=~mwL>o?)WnM* z8IG;hf)7<1A*SYZzTVCf&uJPC@w$}VKi3;@e5&=X%4R&L_6upwgD)lOu*asIu8z-ddRhn*JWqzTx z6w<%MPF7n^rb2NdkR^~2>x?2P#>v9rMWn|xI9Ig1fUF_9CatLvMLF&L23+~NCs29QzU^%$_Ae)l`M&p zu^bSlcbf%AOUR_gWQkT9&rCbk36~v2QQV!gDOai-f+LyN#wjLOjq=`j*7SYH&;$P$sDi2|&bqqpY^F!5XZQlp2mEW{79<86s_awv)(DpB%b zFot;`wXhn07s?K5QB^YM<-UVzJ# z_80MdSbsTs^ac)KASBo-`L7lHFS79e44$)&7{;FpH+p(vc7r35-z9?Ir51j_l;mgV zVj74S!b*OZ3x0HO(*Kw7ocBT*)?;=0wqmvl=4S<4%3%}R&*AyaUZ2fLz7%&-cG>uT z9`CL)$F49WW*SMoe?>5&V8R6OSMgkWeOpvQ99dRZ1j}Iy%P-(L^>kn37g_O(t4Yd(|1R^|H4M!?S_mdA#>@VX&?hu&%>zfi>~mPJEyux%&dOgo#zhtWxSi zfX{!uS50DUfmhS(1yCw%Me2c;GpqIt(>sv)ZCYU(17SA2K|mu9;+!gLENcd6Sxfd| z?-mC7CI;HI3ekwU+S%tX*Yj%Q%OM&iUc?a{)_ zvxXsf%=cztIJPnz{*#6(eczLXK^hW}C=z^}_hMnFwlP$$b(*?HB@HDjRVVV5liz6S zmv)`Wa9I{)24n{V;+hm=1ERJ$>1JaShGnO~avOdNv@c1kC@}rrbAfLa7PrY>bhIQ1>yZ&iwBz^kY&ny;u%Q76PD0GdY$A z7#7c^j*wqyFBE3)2bnZi@EB$H)#!E)6o%mG41w$G*MvZgZ+6CUvO&J+&*tNq`u~&h z>Q!$4hXfw_MC!sK-R^n9EK*_?ar(q;p7gTU2}4n4C_L9`Bz72aR)xd}GS7jKNq(I6 zHeq(4sbAFTMjpu(D~s}(3<-PM(}V%32q5$+(bv69n2cjW1}W>gLqc-@5NEEZ#^RZ5 zzK4mY6HdzRb?*{}rOxc&S@;t>hWMC4PdMO(pJoim;^yfN6OxPUR$-gm!0|*3Pv7?_ zVHR&QIiAbYXfKrB_9kKSmzaFdl3(j-ZxAM%?+xM^^pNas_5@*4`JN!2QoG#?gh_pr z+1WFwY^setY}HEdrJzW88Gb&K>0It2_HodRbO*9cylJP6-MT}OY5&5WkTlee#6^(k z84uhhFJ?#{$Gtw7ZTMavo`G+(Gj}GohFYtvmzwKhA?DaHX)hQ0zXHFm@jTJ23uzu} zw=;sxrGfA5;ki6nV(4~H4`zW^vl8Ixai#R`cb;JK-^k=UJJm%NL~_H3#Eui*>-x>} zmEWX$n6}l@LHBO&SXIqz^IIt|SL{sjv6>l^_owD@jL%8Uh;lsGj#`SBs zzKH8fxW0_**KvIX*KgqZDz4we^)+0-h3mI*eH~YyHJA#~eg}y1H27V-Ck=iN z7isYOxcaOCb~4ZdS;aN@1`y?G@CSHL8vG$H(%_r8`mDiRvnLJy2#E4D_!i!i27io; zH24!-eb%7T>Pdq?1)@9+{tWL)gKy&^4gMTgpEWpI>PdsY0HQn%zJvFq!C&Gc4gLyO zpEWpE?@5Ed2BJI-{s!+!gTKW^8vGruK5NjZ_N2kz15us^|A68pdevBLoW9hjCG~cbY?y zRYDOS?e$p^d$d_J}U3&7E$C}ha%?*MR-8iXGQD*VG%{ncPMg!P=v>Y zeOAOC7Zy?ELWd%2g(5sWbj|Lvwd$63BsV-PqRT}NT`m^7d>73QwTToZ_Bm7RQDPBA zE^#PwsZfLmi+xta9xN7708k%cG7p zcr2pMRStEo7V7XA@^z>55=7>1wCRi|*%oTX(DI|G&pfnT=g{vOp&t(|mr*}wm|0Z6 z^$z_u2>p1(xs3WbqtBxHZFJ~&taqHMfJPMq2J9yKOW>RqkhhSx2S%%IP}{h z^y9Jb8<(&B^NE9tsu(y_91tq0>V)o-gqzd@lNkCc~DKWEfjRKFpIe#1gP z9zZ)MeB^$g<%Vc}v2;--M;uCS6H4;1dfAn9Mc74^-0o0vhftCS+s>10EIGNPH>EE= zM(cu7uj(>rUUIi%xj}PL-S#?kn-IG3Xn7ek z%^ocmRqSquV)qEec$mD5irK^DqKfTvD7IfH#^dAHEMIAK#K%RoJK)gnpwNy7#>=jq zH83u!-64l|_X_QJMEv&N^UiuCkiGwzX_h^_$k-MA@l=p}*rDsB(3JUzIJ*9U~IJi1;^UA@BVE_HpH zL)Qm|t~}sgPF=ks?k;tmcIf(ap(~HUms3}-AiPUmpW)E;A)zY|%a>DEueiKRU7zXD zwIp=qk@`EAv3>Oo)w@)8#-VOmsLO-*<;+^I=)Fr_XC1nRLRTKoFQ=|v0ezRc&N+0Q z7rOEg|6R*ijQwN$E)`yIC|nT=^QeFM74`}HyHxn7L*ZjWVg4a-5CL|-_m!TlR#$^9 z{W%jCO(i)C7tK;W2NzAZt^&%J@k?vczKUxR_wRNUwoC2usb*1!}I@dAK)eR)c1)eOhMgE$rkF){ald zThXV{4hF;1YPWih;e3JN0{oJ7FSKB&1H*pDe4_<*<|Uo-Jq-(uz)0dSV;p}ptq;Y7 z71lr!{b_(RS>a*)5`rdv(^mKjp360d5#B$s_7`Vax)wl58QNc*l(`sJS{W*=EhzC= z?mx~TUIOt1@lsp_@iJT{h;2Z0?Vh76&J4~UEz$X-l^V|Xj?W*BchOXbS@U|cU+q0@ zIJT5Zrz{)Cfq}3t;g_(Uz;7BWFB>QEzU(Na40C)UYPECb>GWW*Be<29R)#Vr6o;d7 ze2)lx&l32a?ZEdOynk#C2xmt85DZ5~l*>GR$N}=Xc<_G-HGLPl*lO1#ve#LMvBzxEoAOvvtg zsBxQ)l>k;5&|EHxKJ9o&?)nN`X?IPn-^+pViE``&gU^qhAoy2V;J*U!T{|7=Vq!3H zFdHA;99!CUR)F|@3 zt3YMuRe)ZgayLPo0$b?<5b!V6gdt9aPLWSzx~wunTOsZiAgYTftUI zbw(wzCr(&kid--3FYD`Oiz2UsB1P({#$oz^?f$?I2K@#BT^98lEzn;N=uhkeL6}lE zrIfnaqSPCpQ~{4~%8o^B*Hg{)_&Sw7dnGkbex2ALpZ3n4!0&P;a-Oej8A`wx8A>A!%so6#Q*0D;fj3BL(zU z3(&U%sDB4k5~w;orJJK%7}lKv>uva@qVOaO)^`AFfyl!Gw%491*lQ{QX$xdE8XVOC(2I%)Pt_x$9kBHE>LN)hoG;9ZbIuK(TmB|PuJZyL{6@Lcwo|0LdzI&e7- zmtoep3!F*%9$X}SFRrw7vc`KM)wMlAM=G`t%^YqSH0n`n9uvAAHUv#xhrE)-WXHq= z@DOGhci(Nn{8PZ(x5H_e{CkA_efTAt?YGE(ALKg^YUuCbH4NnefszLF2<0IQ%AW>G zmt$U*!)+MWdsA2sTd=+#SY4ZU?Xjg}h zTj)cOLbX$(`LG4eNAUb!haVH$J5x9LY<+PW-c-ke8yfcBVz6(7s)?a*?RpG~3soCD?OyF)4W@%KS_ zSnTBwzbMC>eUk6anh9LKtA$voRI_l_Yl?EO8Lxn*GxOIV5HlbfJ6b5Pte#5^I zI1U5KMaxbkVuyw>yip48S1ovd6VF|rRI(7%gGQwh;w&GmGRU05Eea_tc}NoR%JenJ z;U5UUWx&Imso%!?;)fVzY^K7reRKj5vrju^pRXJ6P=5Xno_lVXZ#m@1fob=N20p?% z)8rVwr4+v3wcz_bJTLi$Y}q4$GSF0Hba3VJ)1y%WKa+; zVwuB8fUkAgxv1l9h3v3C?q@gXd7l0Or1D_x4=w1viRUkHO=J{>J_RqRRB>)-*hIeq zVv3?zC-&`8i8=5;N&)|t1^6H1xpUOe0=!z8UuZ3b^lxF@`*d0k`%hA^|I`Be&+xo> zX;=(frP)%eWNpD&N!TxF37rfzzAezn!1&J%=(xxE3%qv?L1k@Ak%k`Tv{_c4GNel{ z1s%KfkQA%?-x0`VTl1F&VJ+EJ{2vZP|B3gW9TqX7W;oxj zmYSiCtKy=n=E>`rLKW2*=iyE|OFZ^2f%+BrJsa2e4XCO9{{YXsJkH8q7^fDRVTq3a z;??Fo0+DPb{>y^szwz9+)G0Y-oLW~4tM<=l4QWh}@;v?@$fQyy+ur{*VB@9k|M1>5 zlp$(%>PRlO%Eac8RG*~AJXMO0MS;2XCE(m0oq`+F=krQD_w@9ZqqOW9em~B>I*cq2 zoA)&s>s(x)_EmolJ?+g>Ff`mR{Syp(Gr)OJ z1b>wQ&c}_(02kmn8Q?1$q*axONQ8p>r>t(B053Sum-mlHUh>rG2Ybax=1#p%$6{#*+^@K=pCUWXf#{+sZe^uHdzr2l4IpILtWEp0;A7LbiX z!Ui`$7yMOa;6~h-Y;Y5vr)}^FUmG+R!fLRiZ~?FwKyxdS|5AJ1B;K4-{T7SrTZHNX zekuD0aDCQS_4W)p1lqLzb!*=mg*4CJ%&-;e;IAqHgSau3fFV4m5-^NkGQ$Y2!e+q0 zd*96fo<3 z!;^4hGQ;h7PG)#Ae#s1X;BqeH5+U$>wLVj-RvwAF!Lr{)%GbARl@mD~?0XVylHW+D z0~-B#3Si-{a`AWKhSaIzJC29Fqj*m0?7}apGluJ>t~y>&oux{x&)SRwrAeFJcuv~f zgyS(YIG7k#WEijfd(K{KJ3Mf3Hbz`r}M#g=(iqFpRpLD zN+ZuVzCZB0Ex_*)z`4mihZ3+`L$J_lHDbsk`s2@RY}FTZ0Lk_u8GUj~GoKV@egwbt zmAB7=cE3P-0Kc-hyH=x%(r!bWZ(tv=2Q6R^39#I>AM~u7@*CW{JKo`Zy6l{n`IGLP zzt^JjVWILQer5iAVA)kRW?`Q-p0a3sL}>g}p)t9vH+yPq?*1=T=j-T`T3D1b5mnYA zg3dZ(Rj^-Xqd-e=M7excn1Lc6Eo_btn$ox^SPqTYiR^`?b-+?^~} z<{1lVUo!9M7VVxPw0j7@vNi2(c&CinbE)szu5xXx)6p)y%QFEGe^nz}!i}ksoxyWz zWO;VIyr0<^(oz{4(t2I`$JxL0N^28PuCT3l@DULLc6OJJ0ON?Jt)jj(*k1p_LqyAW+#y?=4HOt}BWp@q>e$&JAHH%_(p%{06@98PaPHfw{ zvm7>CmAOi})WW30emM90!E}r<<)!m&snXf7sQR!$Rp-ulxq0YP)mTa$d09l$rbW|8 zXv*7w69uLR$XdszFsOiWrdeOYOdc6D(n{jV&gXJGATMi~n$tit2Ix@TA@tcn-?-^i%-L@>FamoJ{a%1C*z5iiI-pBs&4Tg2Q) z&eWSHuI}uxc+R0xYhj`$6y1O>`vH7*%J~o&P#Mrks9FrOThZV*) z0WVxTz4`J~B; z{&2D0JUQgcyhBcGH=5b<&3jhGoA*fT%W8;+tRS-bg2hR5mHBpO>M@D%A>$^x!>L6= z0#8cfcxG!u8C-xRvvbpsfNe&T83ZIUe%z&%ivfvd6`5IFcw%!6&e9PhXE8K+cS`6K zBAh+ZUSl*Ao15q|2_pr&>omKGS@M*vlbwnGyad3T(XJoEM%MOZ1b35-Kebhut~gac zh8d+J9-I>iQkFNvIAH*sP9*R)QZcjs?R(EzNh$Efhi~6?p0efHH)hff%e0J&5?`H79H3T-wcR6rd~^b0 zd9Gqvi|W;IQy!0)f)ZUO66uwiShX3>wC4xx$uqRX=vosawSKg-{F4VL9^^KBQ+2qw zEWWMM)Er+-ON_2C2%JLoK!ld9*V~M&I@HAMBEc*%2z|5NVhK88u+GFF7%Nr7+H9#A zZS!TNQV`Q?1k-Yg}_GggF7vB~a*vs5!Zmpi3B(Ghofa_FM(EOqPV$o+YeBi#<1HSSW8J z*MeTk$T1mQj&VnUBPl0^)bj)zIT#zaX(QKXn5aCGggk@knQj(yGB`;{ETp@nH+&Pa$nX4bf2oF!qUMe~l$JEaST-kzJ8RnF;xd?RRJ7s5+BYPEVnT6Aiq+myZMGUlTQYo9u@!g&K}k%cx0SC_YwDzPq0=fb?UX)kQ&Lk2 zi07b#M95<6^!8>jJLP1VkZ9=;q&jM$om+q+1)I%61M}dO9`e2;!&bQ{S5iW|DOZf_ zJ-t06L}jR1h)hT#@-@-*C98=;h)zmkw&ZG(?#CX_Xfz^=m06=S0}?3%jYLm#P7{`( zBL*@iNWRc@ET;*xB_X!5M#VJQC295=Wl2ChRR^(L-nBVnL6u#4jT90}AE6({3#W2? zM2eE68<D16wkB76TO*Px$X*6o!+M}%0^|4QZV>Bss?vm>q ztVK0;Q;Hh3utiNz0Cao^;OJ6oCLRL7zH{i)+T}oCWLZadO{qaU*HI_GKZ{QP+FTPE zK_^ngaVWyw4oxF0bWA7h)k?H5UTLDg4r2tX=BVmihUh%NUWP66H z&Sv{r%SuG-;*v=f<5Q7-%~-qIYB$4`<%laa8+s|V*?t0Y0>P=ETR9tY38A0aHrvk~ zPD%jX$}pkBT+>en`)R*P37}g!*W@}>T7DAjXY3{=fNo`_#U&gq`AM*!Y@3t-x|K&u zT*9%sp9K4PvPlV`TY0R`B{X;^wY`FDwx8mflmNPwjp{bhGeT7`J`>eTjhk|hPff^K z-635S|8RYpZ7)%q?MIg;<=(aZ5y{%D@-RYXh z<#?-y(={a@mhMy!S~@*NR;1PA=7_X9UQ-%5Rl>{NvaiR4=iTY_ytb5FyweHWnCx`= zV_Qlt-szfcOm;fGv@InU?{wHUCOe(J+m@1xce-&KlbueFZcE9K&PIhhJOc55(2%*fLGh8WJ|&Y z+M6F+>LGi(V@tvX+8Z2O>LGheV@tvX+M5_#>LGjEVoSmW+8Y&H>LGh;VoSmW+M5wu z>LGjkVN1dV+8YjA>LGiJVN1dV+M5bn>LGg@VM}r+tB0|FxA`R-gKfF3f-M!-)7~7| zQV-eN0b3F-(B1&pQV-cZzb(lwW>|;Ix3Spa@b$KIS&m4n~7R|Do?!a;d8X%2ql zUX7fC$zkTFe49N7%RRmgp@R>%msiv1;5Y8oSUQ++P+rZagWtGUgX&;1#WK;qiFGiY z@NaY-oU-tInqdc10nevlc5qtL?93uOmo4+e5cm#utEV#sx@*(4pbF{ENvy>@cW-;K zRI6aQEM}=R!_`<_IuZ@v@$+axI8n(88DE8IqA?wr0peajDiO4srsTOMoc@SpT;p zxb=Ew5(^=TxiaV7CRPnJS)vCT9M~$H^eeftlsbkj3`DO)QsD$2O~D5f^VzY$1e|Xv zLM&Ifobhf}@39>Z|YV7DTom@NUr;!v5fo$EgO*2N#3an|O5%{sX zZld7J0;y=4*94kUb|x`V8aBBtpOBRa6Jc_>Ff#=6T(*_Je6hY>oGPjHQr_!zesZpf z#j<1u53;oBxON(X#lh}03NR6;#qhahCNc4HPfIph>C@SmOUV2)vmsl0Y0f%HkXFdd zjxCWjuj)?DI%Z`sxmqVJjZLsj5@yz;GONTRwfpQ>}3aC$W>*0{>~$a)DQag$53l27HL4srUfY?5Ut!InO-^LgdU z9rj4_AxDn$b5|i!!i-{;3u3Cgcu#;N7xpL}$QGv_ zf}NT#11CjCkmcGMBO@Z%s5t1;SyRW!4zj4nO-)R%_al=F=4ip4JpLAz5+}p*SjoUo z6Ou%2QWGnpkgF%TFmbx;jrj_)GhpSS0Rt1846($;Aww>N0Z@|+_S$4LeXOd(XqwPw zv?PUGmcrMg>i7$gme;anV6Um}>!4A7Txu=# zLPuQ$l4(fpb)pbj87B-O)>o24rPC7CA%UG!59O?8>c)_4^HUJ>oBT=lW(ri7D;l?@ zWTw|!3J=Z}Qxei_{Z^Gyx_rLgQPywMJ85?F$~=leaT?&0GU_T9l$(yQ-XJt|63Pj8 zy5K0K%xROJ`Q}_XNm{u~H?hz!-o{QwnaodTiAXKko|@lYBMg>iLmwoRTCQ`8Q_F|4 z)M^7LE5~%%)rQ1MI-VSo&6(^|meou7I4Zdgk@zcHsfY4FIcY2AQ#3nCl(1EX1-+GR zwN9Hp{Y`efXv3&#ZBIn3C93^xdBP$#ongyRs0yV z^s#EWrCn6pc;))gJ%U{{!1)byj#ZQH(Okna$EvOFq*5&Va8ldV5}uLQ1;S@_BE-2$ z*gTtSF(FNrI5DjoTkVrD1`@2gGm~OAonY485hd#+GBdMt5+X7NF&;bPQ+SjP${;bT zeiscz8Og}?3U+hpU$Cf ziraL8TM@f3Zraxvxt)`Es(el2X(59g?8KJ`WufifB!W}ND2iYAMoI9yOJ==3gRL7i zrNOX;mpU1)NVZE%QC)GG)|`rDx#o1GG`)e-nVPw54FY-WmhE6SA1|u1XCTe3J8LL@ z(`kO)*<^#ViH+a+=@%LM$kW-nDJM!FWgp3{U-psw`emOqKV={J!eAfsQE=UrA9)B| z|LoI2*FXCt`7!%+UdY{QlKbW9UKPv{!p5(Qn1@IwrVQ9W=xhw=b4W3nHXpm9&Wp%n z!YYU5oVwG9`!NR#x|}crmiCkl4&kSs>gx0p_9j~sYDhX)j0<|k*l0+pB`3N^7ZFj zRT_upJk3*;9J9_{cHJqq7OQl5f|$#0gVRTpK1REBsgB}mwrrQ$II7>^wCYNr&@byJ zRCzRaQ0Tqds4gmA6!yteD|AwHq~Y7$HZ(lKO}cM3X=m0--=PO>drKrmHN6f7pnrG z6sN9?WX9B0wUZy5@X{I+aWeS;pKk#2_lF(1=Wqq4Z6_5=OD;N`or&eW3S~F0IG3Y2 mSG&NdLs4<&lWd9816Z<1s575b%ITt~MO`KBVoJG2aQlC^xPCSO diff --git a/obj/Debug/net8.0/ValuationBackend.csproj.AssemblyReference.cache b/obj/Debug/net8.0/ValuationBackend.csproj.AssemblyReference.cache deleted file mode 100644 index f6db80920fa6555f8eebd6e9d38fc7243cac261c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15931 zcmds830M=?7G@MgQ9(t;r-GnT%NEI=pooBA5kV@8(gr2T3?UGbkVQaIY^|VmUr}72 zf{1mih;^Z$1+7#>MeBl!J{7HkTU~2i-ppjkB+nrkB79$8!UtLAo=eX8|8wrS=bq^V zI9pg)022d!c+pBoq2wv~DdJ=vMXDA-DxRD#Oy-LqC6BLG$x`@oIi%oGX%ue?l_wDk zcv48ERPm)CUjfqKkNn|5Vdx+VD3JgFJh8>}RkX{m>N*1eV1r)=5O{OH9J`*GFR)(SGl2E@ki9Fp7DSrjpA zq#$GYj^yP~(s@powZ&cIVuB6_SNl~bIX2W!e_#4~^@*wb|B9L}=?2m*r`A;e_@>YO z_}~9^_Ov+EEg$F%f2Xq5r#(53dsqSCxRRdEF|a+wGN~_WF>i{ur*oiMqEag$Un!(k zDfkjk=LoexA{K^18BwxiNa`zqxGW(^6Vf?Q0@d4_2~Q0_0GnwH*yeO^I+bey#&)6Ol!4{igjqLzKdcK$=@a^umn(u-pXZ2PW~(x#jV zs)-#|RvZ*l(6edCNzuk5qWS!!;tdWPpDa3O-N)&04}s`_e48Fc>nQuqF<2X0%Rm;L$3dj2nrIX|N`xhLAW zetr}y21ql(8m90GVzbzMAy>%ZG8uFhlSRa*2}bAy%2cqQL(*wHI)(bN<5MYg-WZuG z98v{Ir{TySIhsK|b`3$ki}ote5g{}7tNAL}7t(Wk%=t%a<#5f>Z$QS8q-u!-n_JI$ zmKbv$+)emOIjpx(rhq7XwJH&ks>DJ*;w+S;G?f72E8tkjf!)%(ITXTgc(`BqE9J0F z0ugZ-Y+dnjX{rEJ9JiKjoNZbi>L*^UngL~%o+Yt2CIr%FK5mv1iY|?=Dt7T%(UAGw ze#Ob~uHW1Czq43W^!jD}hN)S;6L$`|^ZoIDz|(81Y|558ZVhwaIAX`u-u)eZo%QTE zbbU&LRp_!a!XqP-4*Ds6@Y!?U*RJ9h#)4@R_U!%fsM5EgckJ#Tf+u(Uu6%>4^42%t zPp5BFoX{ZxNI(+L*s%VA7XhE zu|;acH3-QfgQF{7E=IXQWf&#L1bDc=T#R$U=Fi+mq1O@58AxaYOh600Z8PM}&w9>8 zY7PBoK_72OZGEJv@VaPxRV4$pj5O3pAW&r_DEKK*noN<51PC4%jsr|$sDseq!Og?b zfS}Ee7H8e`n2BQTh$~GX0d&E@wQ2^r`Pq!XCeRy48?|s-fjyu6DnNiXg)dOT*&CWT zDO(G@zm6>K^Xw~C7!TYH@_?c%ZoZ^QA#a3sV#wT2V~7Hhps501g7Twz}ncB$G9PJ~P^Ep~z_kGw}VAkS|OWOGV^E z2QC_jiR!vO&J9Yhm@hI>Zn)_f#;~-O92hq=2{-)a|2}J!khXz7J4kKL$)pi8$fprF zM$P0%fl_3O41+5QF4RnmFjNR9L~Vg*h=veD3>rftXTDTOAfbIbkzj>sAwnii5R23b z%^vfk9HXT*M28W26A*`sj$>wIYL=4W#P(@%4)bM-qLr3tC)Ttk<-kEFD&`s5jo^|7 z3wOSaE?5-NO*sq-n=e6hQx1bBXeVZDGAW)AFvFDegNP=?vBhPBJ;oU(p+^~;$$SZv zZjwFPiA^b{q$m=ZNCfAvBy*GTn$dVtlAT1wsG(ES(m4je1k9HKQwbS>sohRMo3>NI zkTxY$G{a6D9-RI&4C4UtPK8L?d-Ofcc_M90oA8+X-l;De+#e5T}S$;%V^FKe=o&LMwp7eb=FGtY#}Zh%o%&GUki8 zz=-DU1o|w}po`&70OUX;MFv6={ix5OP+L6S48g?0P%+|&pSOTd{ z@!e;=eRo&ASUpFUd-B!Th=yDqc&p#0p!(;@?jF6y?y7)1UQ~3piYr2Op_X%EcCo^l zKq49SaVBW&PUf(KP8B53IZPHGq_Y?hov>eIHu>FyJ{OXdGHDtlP$8WuO87XFEE&eZ za+4qd+R>uKqXEta*OttoCuzQP5R=lsz4)LqF*IO_VJnExoXu#DJ3maGhy?_l1wlU` zU^30r7K#M*FX=@RKLYY(ww+x!X1*C5!1Ps(n zfHPz5+(RWAX6RI;TjG=69Olator*LmOSBVf6efm@R%Z4}@V_c^|D2qC1urJ>ZZD61y5zI-?%cKA_hmlMVedInDp0R0T77U! z`2qEX+nanlHI;njuwcMw>a~4^qFZazE-$Rf9@o8Z`LW`%Bepj--J1K`CIzk( zPJ0pnM1Q0!4x`45q~d)7lg*%W87w-RmEg^wX{@B*BkpemMyXt+Ox5(JXrV*eSHscI z@!%XEmop$5#i^6#l6Irs25Ym&$k?v#;l7MniRstup4U3WEwcVt%0 zPA|BTyUlA()t0MX)~-XgzYVcp<2pWhK5gAX$C~FpPSgL*k1T!Qem_68cg)alW$~9z z-Wzz}n@m>@^M^#+-=1O_Vs^g{a$1E>o&R3aA+` zy>nm;FQP`G2#r|em*a6b5Agz5O-A8#B_*jvyA8UC{#j@zlG0zF45V6!$dDn_2pN=e zxVtbB;?ZFK5#DGMsTqI+n^t$i>C4MV&#*Oi4M1*{Y3{ej0x9~WUrfPz?MGo!xWefF zCd2-gI_*=9DVfGsCJNNTWC`3~kGI+@)A%A0+F7r2uK^O8B6Y^=^wz^4Bja&Xhz~~& zPe(cKWLN}sf8DzgK4F{Db@tf~PXec}tbBQC=3BR#s2e>-zZ9xYr4DY2t1DhQJ>`9T zp7n+-fK2i<;MA6A&Vp}ug`%Jtcg--b5%1+TA=rZ0T4FrczbJ>^~hcWWiT9eQ$= z5q*&1vMHhWS-YG5-72grn;z2aE>5kE7-S!JoPFu+hH6LmNnS%=2jyi4Z#<6bB7kP9 zR7=$>0KQ?xaggEM0sbM;LCvDEm~4>EU^BShY$lgZ6yl6+FqJw0ehjz>k|LD_obSdl z9}7uw*eeFcV6eLw)*hB>OXPdn9}GOOhIcVzkk#xpTc65K_gR>8$m2sSuiDXfS+D-0H9IbO#mO{FhDLhLEufLGnsU6J`wopPx5v(a<@dQu#XPGq2I?9V$eGq zRzEtVEs?+faJk*L7df>7&U@2er4IEJ_*GW3jU*{=MK<;2xq8WJ z$Kp3DIu9!kuFw9D_1Bpl@~eCH*qqsTR5h`5)a}`S|GlF={PV&GO>b^?$vf^b$rZHo zaXA(pa6R8?uF^j_`9ULXL86WC1utrj>jKa20jD2@IWA(JMRf_FRV^D<{7V!dG^V-< zz%yucnvlz-(%1sJkj7*X0dK6~QJJAsK`9ha%oj=Fj6^JiE5i6|nOY$vxO*Z}BQypd zNWou6qCzGy#ATw?@1#DQ@Cgs4V-i z3U8mfk~P)xjNRPS=UtFl*#as(ApyQE6$C*hm52n!O3D}s^h-;c sDgkmc9YIMM(}ig3OM&m7(?MT*#x%%?3~DX2JYEtS(Huv;O^XHp1%L&{0{{R3 diff --git a/obj/ValuationBackend.csproj.nuget.dgspec.json b/obj/ValuationBackend.csproj.nuget.dgspec.json deleted file mode 100644 index a6ce930..0000000 --- a/obj/ValuationBackend.csproj.nuget.dgspec.json +++ /dev/null @@ -1,128 +0,0 @@ -{ - "format": 1, - "restore": { - "C:\\VD\\appnew\\ValuationBackend\\ValuationBackend.csproj": {} - }, - "projects": { - "C:\\VD\\appnew\\ValuationBackend\\ValuationBackend.csproj": { - "version": "1.0.0", - "restore": { - "projectUniqueName": "C:\\VD\\appnew\\ValuationBackend\\ValuationBackend.csproj", - "projectName": "ValuationBackend", - "projectPath": "C:\\VD\\appnew\\ValuationBackend\\ValuationBackend.csproj", - "packagesPath": "C:\\Users\\samik\\.nuget\\packages\\", - "outputPath": "C:\\VD\\appnew\\ValuationBackend\\obj\\", - "projectStyle": "PackageReference", - "configFilePaths": [ - "C:\\Users\\samik\\AppData\\Roaming\\NuGet\\NuGet.Config" - ], - "originalTargetFrameworks": [ - "net8.0" - ], - "sources": { - "https://api.nuget.org/v3/index.json": {} - }, - "frameworks": { - "net8.0": { - "targetAlias": "net8.0", - "projectReferences": {} - } - }, - "warningProperties": { - "warnAsError": [ - "NU1605" - ] - }, - "restoreAuditProperties": { - "enableAudit": "true", - "auditLevel": "low", - "auditMode": "direct" - }, - "SdkAnalysisLevel": "9.0.200" - }, - "frameworks": { - "net8.0": { - "targetAlias": "net8.0", - "dependencies": { - "AutoMapper.Extensions.Microsoft.DependencyInjection": { - "target": "Package", - "version": "[12.0.1, )" - }, - "DotNetEnv": { - "target": "Package", - "version": "[3.1.1, )" - }, - "Microsoft.AspNetCore.Authentication.JwtBearer": { - "target": "Package", - "version": "[8.0.0, )" - }, - "Microsoft.AspNetCore.OpenApi": { - "target": "Package", - "version": "[8.0.14, )" - }, - "Microsoft.EntityFrameworkCore": { - "target": "Package", - "version": "[9.0.5, )" - }, - "Microsoft.EntityFrameworkCore.Design": { - "include": "Runtime, Build, Native, ContentFiles, Analyzers, BuildTransitive", - "suppressParent": "All", - "target": "Package", - "version": "[9.0.4, )" - }, - "Npgsql.EntityFrameworkCore.PostgreSQL": { - "target": "Package", - "version": "[9.0.4, )" - }, - "Swashbuckle.AspNetCore": { - "target": "Package", - "version": "[8.1.1, )" - }, - "System.IdentityModel.Tokens.Jwt": { - "target": "Package", - "version": "[8.10.0, )" - } - }, - "imports": [ - "net461", - "net462", - "net47", - "net471", - "net472", - "net48", - "net481" - ], - "assetTargetFallback": true, - "warn": true, - "downloadDependencies": [ - { - "name": "Microsoft.AspNetCore.App.Ref", - "version": "[8.0.17, 8.0.17]" - }, - { - "name": "Microsoft.NETCore.App.Host.win-x64", - "version": "[8.0.17, 8.0.17]" - }, - { - "name": "Microsoft.NETCore.App.Ref", - "version": "[8.0.17, 8.0.17]" - }, - { - "name": "Microsoft.WindowsDesktop.App.Ref", - "version": "[8.0.17, 8.0.17]" - } - ], - "frameworkReferences": { - "Microsoft.AspNetCore.App": { - "privateAssets": "none" - }, - "Microsoft.NETCore.App": { - "privateAssets": "all" - } - }, - "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.205/PortableRuntimeIdentifierGraph.json" - } - } - } - } -} \ No newline at end of file diff --git a/obj/project.assets.json b/obj/project.assets.json deleted file mode 100644 index 24c350f..0000000 --- a/obj/project.assets.json +++ /dev/null @@ -1,8515 +0,0 @@ -{ - "version": 3, - "targets": { - "net8.0": { - "AutoMapper/12.0.1": { - "type": "package", - "dependencies": { - "Microsoft.CSharp": "4.7.0" - }, - "compile": { - "lib/netstandard2.1/AutoMapper.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.1/AutoMapper.dll": { - "related": ".xml" - } - } - }, - "AutoMapper.Extensions.Microsoft.DependencyInjection/12.0.1": { - "type": "package", - "dependencies": { - "AutoMapper": "[12.0.1]", - "Microsoft.Extensions.Options": "6.0.0" - }, - "compile": { - "lib/netstandard2.1/AutoMapper.Extensions.Microsoft.DependencyInjection.dll": {} - }, - "runtime": { - "lib/netstandard2.1/AutoMapper.Extensions.Microsoft.DependencyInjection.dll": {} - } - }, - "DotNetEnv/3.1.1": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Configuration": "1.1.2", - "Microsoft.Extensions.Configuration.Abstractions": "1.1.2", - "NETStandard.Library": "1.6.1", - "Sprache": "2.3.1", - "System.Net.Http": "4.3.4", - "System.Text.RegularExpressions": "4.3.1" - }, - "compile": { - "lib/netstandard1.3/DotNetEnv.dll": {} - }, - "runtime": { - "lib/netstandard1.3/DotNetEnv.dll": {} - } - }, - "Humanizer.Core/2.14.1": { - "type": "package", - "compile": { - "lib/net6.0/_._": { - "related": ".xml" - } - }, - "runtime": { - "lib/net6.0/Humanizer.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.Authentication.JwtBearer/8.0.0": { - "type": "package", - "dependencies": { - "Microsoft.IdentityModel.Protocols.OpenIdConnect": "7.0.3" - }, - "compile": { - "lib/net8.0/Microsoft.AspNetCore.Authentication.JwtBearer.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.AspNetCore.Authentication.JwtBearer.dll": { - "related": ".xml" - } - }, - "frameworkReferences": [ - "Microsoft.AspNetCore.App" - ] - }, - "Microsoft.AspNetCore.OpenApi/8.0.14": { - "type": "package", - "dependencies": { - "Microsoft.OpenApi": "1.4.3" - }, - "compile": { - "lib/net8.0/Microsoft.AspNetCore.OpenApi.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.AspNetCore.OpenApi.dll": { - "related": ".xml" - } - }, - "frameworkReferences": [ - "Microsoft.AspNetCore.App" - ] - }, - "Microsoft.Bcl.AsyncInterfaces/7.0.0": { - "type": "package", - "compile": { - "lib/netstandard2.1/_._": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { - "related": ".xml" - } - } - }, - "Microsoft.Build.Framework/17.8.3": { - "type": "package", - "compile": { - "ref/net8.0/_._": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/_._": { - "related": ".pdb;.xml" - } - } - }, - "Microsoft.Build.Locator/1.7.8": { - "type": "package", - "compile": { - "lib/net6.0/_._": {} - }, - "runtime": { - "lib/net6.0/Microsoft.Build.Locator.dll": {} - }, - "build": { - "build/_._": {} - } - }, - "Microsoft.CodeAnalysis.Analyzers/3.3.4": { - "type": "package", - "build": { - "buildTransitive/Microsoft.CodeAnalysis.Analyzers.props": {}, - "buildTransitive/Microsoft.CodeAnalysis.Analyzers.targets": {} - } - }, - "Microsoft.CodeAnalysis.Common/4.8.0": { - "type": "package", - "dependencies": { - "Microsoft.CodeAnalysis.Analyzers": "3.3.4", - "System.Collections.Immutable": "7.0.0", - "System.Reflection.Metadata": "7.0.0", - "System.Runtime.CompilerServices.Unsafe": "6.0.0" - }, - "compile": { - "lib/net7.0/_._": { - "related": ".pdb;.xml" - } - }, - "runtime": { - "lib/net7.0/Microsoft.CodeAnalysis.dll": { - "related": ".pdb;.xml" - } - }, - "resource": { - "lib/net7.0/cs/Microsoft.CodeAnalysis.resources.dll": { - "locale": "cs" - }, - "lib/net7.0/de/Microsoft.CodeAnalysis.resources.dll": { - "locale": "de" - }, - "lib/net7.0/es/Microsoft.CodeAnalysis.resources.dll": { - "locale": "es" - }, - "lib/net7.0/fr/Microsoft.CodeAnalysis.resources.dll": { - "locale": "fr" - }, - "lib/net7.0/it/Microsoft.CodeAnalysis.resources.dll": { - "locale": "it" - }, - "lib/net7.0/ja/Microsoft.CodeAnalysis.resources.dll": { - "locale": "ja" - }, - "lib/net7.0/ko/Microsoft.CodeAnalysis.resources.dll": { - "locale": "ko" - }, - "lib/net7.0/pl/Microsoft.CodeAnalysis.resources.dll": { - "locale": "pl" - }, - "lib/net7.0/pt-BR/Microsoft.CodeAnalysis.resources.dll": { - "locale": "pt-BR" - }, - "lib/net7.0/ru/Microsoft.CodeAnalysis.resources.dll": { - "locale": "ru" - }, - "lib/net7.0/tr/Microsoft.CodeAnalysis.resources.dll": { - "locale": "tr" - }, - "lib/net7.0/zh-Hans/Microsoft.CodeAnalysis.resources.dll": { - "locale": "zh-Hans" - }, - "lib/net7.0/zh-Hant/Microsoft.CodeAnalysis.resources.dll": { - "locale": "zh-Hant" - } - } - }, - "Microsoft.CodeAnalysis.CSharp/4.8.0": { - "type": "package", - "dependencies": { - "Microsoft.CodeAnalysis.Common": "[4.8.0]" - }, - "compile": { - "lib/net7.0/_._": { - "related": ".pdb;.xml" - } - }, - "runtime": { - "lib/net7.0/Microsoft.CodeAnalysis.CSharp.dll": { - "related": ".pdb;.xml" - } - }, - "resource": { - "lib/net7.0/cs/Microsoft.CodeAnalysis.CSharp.resources.dll": { - "locale": "cs" - }, - "lib/net7.0/de/Microsoft.CodeAnalysis.CSharp.resources.dll": { - "locale": "de" - }, - "lib/net7.0/es/Microsoft.CodeAnalysis.CSharp.resources.dll": { - "locale": "es" - }, - "lib/net7.0/fr/Microsoft.CodeAnalysis.CSharp.resources.dll": { - "locale": "fr" - }, - "lib/net7.0/it/Microsoft.CodeAnalysis.CSharp.resources.dll": { - "locale": "it" - }, - "lib/net7.0/ja/Microsoft.CodeAnalysis.CSharp.resources.dll": { - "locale": "ja" - }, - "lib/net7.0/ko/Microsoft.CodeAnalysis.CSharp.resources.dll": { - "locale": "ko" - }, - "lib/net7.0/pl/Microsoft.CodeAnalysis.CSharp.resources.dll": { - "locale": "pl" - }, - "lib/net7.0/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll": { - "locale": "pt-BR" - }, - "lib/net7.0/ru/Microsoft.CodeAnalysis.CSharp.resources.dll": { - "locale": "ru" - }, - "lib/net7.0/tr/Microsoft.CodeAnalysis.CSharp.resources.dll": { - "locale": "tr" - }, - "lib/net7.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll": { - "locale": "zh-Hans" - }, - "lib/net7.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll": { - "locale": "zh-Hant" - } - } - }, - "Microsoft.CodeAnalysis.CSharp.Workspaces/4.8.0": { - "type": "package", - "dependencies": { - "Humanizer.Core": "2.14.1", - "Microsoft.CodeAnalysis.CSharp": "[4.8.0]", - "Microsoft.CodeAnalysis.Common": "[4.8.0]", - "Microsoft.CodeAnalysis.Workspaces.Common": "[4.8.0]" - }, - "compile": { - "lib/net7.0/_._": { - "related": ".pdb;.xml" - } - }, - "runtime": { - "lib/net7.0/Microsoft.CodeAnalysis.CSharp.Workspaces.dll": { - "related": ".pdb;.xml" - } - }, - "resource": { - "lib/net7.0/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { - "locale": "cs" - }, - "lib/net7.0/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { - "locale": "de" - }, - "lib/net7.0/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { - "locale": "es" - }, - "lib/net7.0/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { - "locale": "fr" - }, - "lib/net7.0/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { - "locale": "it" - }, - "lib/net7.0/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { - "locale": "ja" - }, - "lib/net7.0/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { - "locale": "ko" - }, - "lib/net7.0/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { - "locale": "pl" - }, - "lib/net7.0/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { - "locale": "pt-BR" - }, - "lib/net7.0/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { - "locale": "ru" - }, - "lib/net7.0/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { - "locale": "tr" - }, - "lib/net7.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { - "locale": "zh-Hans" - }, - "lib/net7.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { - "locale": "zh-Hant" - } - } - }, - "Microsoft.CodeAnalysis.Workspaces.Common/4.8.0": { - "type": "package", - "dependencies": { - "Humanizer.Core": "2.14.1", - "Microsoft.Bcl.AsyncInterfaces": "7.0.0", - "Microsoft.CodeAnalysis.Common": "[4.8.0]", - "System.Composition": "7.0.0", - "System.IO.Pipelines": "7.0.0", - "System.Threading.Channels": "7.0.0" - }, - "compile": { - "lib/net7.0/_._": { - "related": ".pdb;.xml" - } - }, - "runtime": { - "lib/net7.0/Microsoft.CodeAnalysis.Workspaces.dll": { - "related": ".pdb;.xml" - } - }, - "resource": { - "lib/net7.0/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll": { - "locale": "cs" - }, - "lib/net7.0/de/Microsoft.CodeAnalysis.Workspaces.resources.dll": { - "locale": "de" - }, - "lib/net7.0/es/Microsoft.CodeAnalysis.Workspaces.resources.dll": { - "locale": "es" - }, - "lib/net7.0/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll": { - "locale": "fr" - }, - "lib/net7.0/it/Microsoft.CodeAnalysis.Workspaces.resources.dll": { - "locale": "it" - }, - "lib/net7.0/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll": { - "locale": "ja" - }, - "lib/net7.0/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll": { - "locale": "ko" - }, - "lib/net7.0/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll": { - "locale": "pl" - }, - "lib/net7.0/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll": { - "locale": "pt-BR" - }, - "lib/net7.0/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll": { - "locale": "ru" - }, - "lib/net7.0/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll": { - "locale": "tr" - }, - "lib/net7.0/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll": { - "locale": "zh-Hans" - }, - "lib/net7.0/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll": { - "locale": "zh-Hant" - } - } - }, - "Microsoft.CodeAnalysis.Workspaces.MSBuild/4.8.0": { - "type": "package", - "dependencies": { - "Microsoft.Build.Framework": "16.10.0", - "Microsoft.CodeAnalysis.Common": "[4.8.0]", - "Microsoft.CodeAnalysis.Workspaces.Common": "[4.8.0]", - "System.Text.Json": "7.0.3" - }, - "compile": { - "lib/net7.0/_._": { - "related": ".pdb;.runtimeconfig.json;.xml" - } - }, - "runtime": { - "lib/net7.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.dll": { - "related": ".pdb;.runtimeconfig.json;.xml" - }, - "lib/net7.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.dll": { - "related": ".BuildHost.pdb;.BuildHost.runtimeconfig.json;.BuildHost.xml;.pdb;.xml" - } - }, - "resource": { - "lib/net7.0/cs/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll": { - "locale": "cs" - }, - "lib/net7.0/de/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll": { - "locale": "de" - }, - "lib/net7.0/es/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll": { - "locale": "es" - }, - "lib/net7.0/fr/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll": { - "locale": "fr" - }, - "lib/net7.0/it/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll": { - "locale": "it" - }, - "lib/net7.0/ja/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll": { - "locale": "ja" - }, - "lib/net7.0/ko/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll": { - "locale": "ko" - }, - "lib/net7.0/pl/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll": { - "locale": "pl" - }, - "lib/net7.0/pt-BR/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll": { - "locale": "pt-BR" - }, - "lib/net7.0/ru/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll": { - "locale": "ru" - }, - "lib/net7.0/tr/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll": { - "locale": "tr" - }, - "lib/net7.0/zh-Hans/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll": { - "locale": "zh-Hans" - }, - "lib/net7.0/zh-Hant/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll": { - "locale": "zh-Hant" - } - } - }, - "Microsoft.CSharp/4.7.0": { - "type": "package", - "compile": { - "ref/netcoreapp2.0/_._": {} - }, - "runtime": { - "lib/netcoreapp2.0/_._": {} - } - }, - "Microsoft.EntityFrameworkCore/9.0.5": { - "type": "package", - "dependencies": { - "Microsoft.EntityFrameworkCore.Abstractions": "9.0.5", - "Microsoft.EntityFrameworkCore.Analyzers": "9.0.5", - "Microsoft.Extensions.Caching.Memory": "9.0.5", - "Microsoft.Extensions.Logging": "9.0.5" - }, - "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/9.0.5": { - "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/9.0.5": { - "type": "package" - }, - "Microsoft.EntityFrameworkCore.Design/9.0.4": { - "type": "package", - "dependencies": { - "Humanizer.Core": "2.14.1", - "Microsoft.Build.Framework": "17.8.3", - "Microsoft.Build.Locator": "1.7.8", - "Microsoft.CodeAnalysis.CSharp": "4.8.0", - "Microsoft.CodeAnalysis.CSharp.Workspaces": "4.8.0", - "Microsoft.CodeAnalysis.Workspaces.MSBuild": "4.8.0", - "Microsoft.EntityFrameworkCore.Relational": "9.0.4", - "Microsoft.Extensions.Caching.Memory": "9.0.4", - "Microsoft.Extensions.Configuration.Abstractions": "9.0.4", - "Microsoft.Extensions.DependencyModel": "9.0.4", - "Microsoft.Extensions.Logging": "9.0.4", - "Mono.TextTemplating": "3.0.0", - "System.Text.Json": "9.0.4" - }, - "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/9.0.4": { - "type": "package", - "dependencies": { - "Microsoft.EntityFrameworkCore": "9.0.4", - "Microsoft.Extensions.Caching.Memory": "9.0.4", - "Microsoft.Extensions.Configuration.Abstractions": "9.0.4", - "Microsoft.Extensions.Logging": "9.0.4" - }, - "compile": { - "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": { - "related": ".xml" - } - } - }, - "Microsoft.Extensions.ApiDescription.Server/6.0.5": { - "type": "package", - "build": { - "build/Microsoft.Extensions.ApiDescription.Server.props": {}, - "build/Microsoft.Extensions.ApiDescription.Server.targets": {} - }, - "buildMultiTargeting": { - "buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.props": {}, - "buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.targets": {} - } - }, - "Microsoft.Extensions.Caching.Abstractions/9.0.5": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Primitives": "9.0.5" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "Microsoft.Extensions.Caching.Memory/9.0.5": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Caching.Abstractions": "9.0.5", - "Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.5", - "Microsoft.Extensions.Logging.Abstractions": "9.0.5", - "Microsoft.Extensions.Options": "9.0.5", - "Microsoft.Extensions.Primitives": "9.0.5" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "Microsoft.Extensions.Configuration/1.1.2": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Configuration.Abstractions": "1.1.2", - "NETStandard.Library": "1.6.1" - }, - "compile": { - "lib/netstandard1.1/Microsoft.Extensions.Configuration.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.1/Microsoft.Extensions.Configuration.dll": { - "related": ".xml" - } - } - }, - "Microsoft.Extensions.Configuration.Abstractions/9.0.4": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Primitives": "9.0.4" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "Microsoft.Extensions.DependencyInjection/9.0.5": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.5" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions/9.0.5": { - "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/net8.0/_._": {} - } - }, - "Microsoft.Extensions.DependencyModel/9.0.4": { - "type": "package", - "dependencies": { - "System.Text.Encodings.Web": "9.0.4", - "System.Text.Json": "9.0.4" - }, - "compile": { - "lib/net8.0/_._": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.DependencyModel.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "Microsoft.Extensions.Logging/9.0.5": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection": "9.0.5", - "Microsoft.Extensions.Logging.Abstractions": "9.0.5", - "Microsoft.Extensions.Options": "9.0.5" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.Logging.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Logging.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "Microsoft.Extensions.Logging.Abstractions/9.0.5": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.5", - "System.Diagnostics.DiagnosticSource": "9.0.5" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/Microsoft.Extensions.Logging.Abstractions.targets": {} - } - }, - "Microsoft.Extensions.Options/9.0.5": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.5", - "Microsoft.Extensions.Primitives": "9.0.5" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.Options.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Options.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/Microsoft.Extensions.Options.targets": {} - } - }, - "Microsoft.Extensions.Primitives/9.0.5": { - "type": "package", - "compile": { - "lib/net8.0/Microsoft.Extensions.Primitives.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Primitives.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "Microsoft.IdentityModel.Abstractions/8.10.0": { - "type": "package", - "compile": { - "lib/net8.0/Microsoft.IdentityModel.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.IdentityModel.Abstractions.dll": { - "related": ".xml" - } - } - }, - "Microsoft.IdentityModel.JsonWebTokens/8.10.0": { - "type": "package", - "dependencies": { - "Microsoft.IdentityModel.Tokens": "8.10.0" - }, - "compile": { - "lib/net8.0/Microsoft.IdentityModel.JsonWebTokens.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.IdentityModel.JsonWebTokens.dll": { - "related": ".xml" - } - } - }, - "Microsoft.IdentityModel.Logging/8.10.0": { - "type": "package", - "dependencies": { - "Microsoft.IdentityModel.Abstractions": "8.10.0" - }, - "compile": { - "lib/net8.0/Microsoft.IdentityModel.Logging.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.IdentityModel.Logging.dll": { - "related": ".xml" - } - } - }, - "Microsoft.IdentityModel.Protocols/7.0.3": { - "type": "package", - "dependencies": { - "Microsoft.IdentityModel.Logging": "7.0.3", - "Microsoft.IdentityModel.Tokens": "7.0.3" - }, - "compile": { - "lib/net8.0/Microsoft.IdentityModel.Protocols.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.IdentityModel.Protocols.dll": { - "related": ".xml" - } - } - }, - "Microsoft.IdentityModel.Protocols.OpenIdConnect/7.0.3": { - "type": "package", - "dependencies": { - "Microsoft.IdentityModel.Protocols": "7.0.3", - "System.IdentityModel.Tokens.Jwt": "7.0.3" - }, - "compile": { - "lib/net8.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll": { - "related": ".xml" - } - } - }, - "Microsoft.IdentityModel.Tokens/8.10.0": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "8.0.0", - "Microsoft.IdentityModel.Logging": "8.10.0" - }, - "compile": { - "lib/net8.0/Microsoft.IdentityModel.Tokens.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.IdentityModel.Tokens.dll": { - "related": ".xml" - } - } - }, - "Microsoft.NETCore.Platforms/1.1.1": { - "type": "package", - "compile": { - "lib/netstandard1.0/_._": {} - }, - "runtime": { - "lib/netstandard1.0/_._": {} - } - }, - "Microsoft.NETCore.Targets/1.1.3": { - "type": "package", - "compile": { - "lib/netstandard1.0/_._": {} - }, - "runtime": { - "lib/netstandard1.0/_._": {} - } - }, - "Microsoft.OpenApi/1.6.23": { - "type": "package", - "compile": { - "lib/netstandard2.0/Microsoft.OpenApi.dll": { - "related": ".pdb;.xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.OpenApi.dll": { - "related": ".pdb;.xml" - } - } - }, - "Microsoft.Win32.Primitives/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/Microsoft.Win32.Primitives.dll": { - "related": ".xml" - } - } - }, - "Mono.TextTemplating/3.0.0": { - "type": "package", - "dependencies": { - "System.CodeDom": "6.0.0" - }, - "compile": { - "lib/net6.0/_._": {} - }, - "runtime": { - "lib/net6.0/Mono.TextTemplating.dll": {} - }, - "build": { - "buildTransitive/Mono.TextTemplating.targets": {} - } - }, - "NETStandard.Library/1.6.1": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.Win32.Primitives": "4.3.0", - "System.AppContext": "4.3.0", - "System.Collections": "4.3.0", - "System.Collections.Concurrent": "4.3.0", - "System.Console": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Diagnostics.Tools": "4.3.0", - "System.Diagnostics.Tracing": "4.3.0", - "System.Globalization": "4.3.0", - "System.Globalization.Calendars": "4.3.0", - "System.IO": "4.3.0", - "System.IO.Compression": "4.3.0", - "System.IO.Compression.ZipFile": "4.3.0", - "System.IO.FileSystem": "4.3.0", - "System.IO.FileSystem.Primitives": "4.3.0", - "System.Linq": "4.3.0", - "System.Linq.Expressions": "4.3.0", - "System.Net.Http": "4.3.0", - "System.Net.Primitives": "4.3.0", - "System.Net.Sockets": "4.3.0", - "System.ObjectModel": "4.3.0", - "System.Reflection": "4.3.0", - "System.Reflection.Extensions": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Runtime.InteropServices.RuntimeInformation": "4.3.0", - "System.Runtime.Numerics": "4.3.0", - "System.Security.Cryptography.Algorithms": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Security.Cryptography.X509Certificates": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Text.Encoding.Extensions": "4.3.0", - "System.Text.RegularExpressions": "4.3.0", - "System.Threading": "4.3.0", - "System.Threading.Tasks": "4.3.0", - "System.Threading.Timer": "4.3.0", - "System.Xml.ReaderWriter": "4.3.0", - "System.Xml.XDocument": "4.3.0" - } - }, - "Npgsql/9.0.3": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "8.0.2" - }, - "compile": { - "lib/net8.0/Npgsql.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Npgsql.dll": { - "related": ".xml" - } - } - }, - "Npgsql.EntityFrameworkCore.PostgreSQL/9.0.4": { - "type": "package", - "dependencies": { - "Microsoft.EntityFrameworkCore": "[9.0.1, 10.0.0)", - "Microsoft.EntityFrameworkCore.Relational": "[9.0.1, 10.0.0)", - "Npgsql": "9.0.3" - }, - "compile": { - "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll": { - "related": ".xml" - } - } - }, - "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { - "type": "package", - "runtimeTargets": { - "runtimes/debian.8-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { - "assetType": "native", - "rid": "debian.8-x64" - } - } - }, - "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { - "type": "package", - "runtimeTargets": { - "runtimes/fedora.23-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { - "assetType": "native", - "rid": "fedora.23-x64" - } - } - }, - "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { - "type": "package", - "runtimeTargets": { - "runtimes/fedora.24-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { - "assetType": "native", - "rid": "fedora.24-x64" - } - } - }, - "runtime.native.System/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0" - }, - "compile": { - "lib/netstandard1.0/_._": {} - }, - "runtime": { - "lib/netstandard1.0/_._": {} - } - }, - "runtime.native.System.IO.Compression/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0" - }, - "compile": { - "lib/netstandard1.0/_._": {} - }, - "runtime": { - "lib/netstandard1.0/_._": {} - } - }, - "runtime.native.System.Net.Http/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0" - }, - "compile": { - "lib/netstandard1.0/_._": {} - }, - "runtime": { - "lib/netstandard1.0/_._": {} - } - }, - "runtime.native.System.Security.Cryptography.Apple/4.3.0": { - "type": "package", - "dependencies": { - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple": "4.3.0" - }, - "compile": { - "lib/netstandard1.0/_._": {} - }, - "runtime": { - "lib/netstandard1.0/_._": {} - } - }, - "runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { - "type": "package", - "dependencies": { - "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2", - "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2", - "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2", - "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2", - "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2", - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2", - "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2", - "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2", - "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2", - "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2" - }, - "compile": { - "lib/netstandard1.0/_._": {} - }, - "runtime": { - "lib/netstandard1.0/_._": {} - } - }, - "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { - "type": "package", - "runtimeTargets": { - "runtimes/opensuse.13.2-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { - "assetType": "native", - "rid": "opensuse.13.2-x64" - } - } - }, - "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { - "type": "package", - "runtimeTargets": { - "runtimes/opensuse.42.1-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { - "assetType": "native", - "rid": "opensuse.42.1-x64" - } - } - }, - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple/4.3.0": { - "type": "package", - "runtimeTargets": { - "runtimes/osx.10.10-x64/native/System.Security.Cryptography.Native.Apple.dylib": { - "assetType": "native", - "rid": "osx.10.10-x64" - } - } - }, - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { - "type": "package", - "runtimeTargets": { - "runtimes/osx.10.10-x64/native/System.Security.Cryptography.Native.OpenSsl.dylib": { - "assetType": "native", - "rid": "osx.10.10-x64" - } - } - }, - "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { - "type": "package", - "runtimeTargets": { - "runtimes/rhel.7-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { - "assetType": "native", - "rid": "rhel.7-x64" - } - } - }, - "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { - "type": "package", - "runtimeTargets": { - "runtimes/ubuntu.14.04-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { - "assetType": "native", - "rid": "ubuntu.14.04-x64" - } - } - }, - "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { - "type": "package", - "runtimeTargets": { - "runtimes/ubuntu.16.04-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { - "assetType": "native", - "rid": "ubuntu.16.04-x64" - } - } - }, - "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { - "type": "package", - "runtimeTargets": { - "runtimes/ubuntu.16.10-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { - "assetType": "native", - "rid": "ubuntu.16.10-x64" - } - } - }, - "Sprache/2.3.1": { - "type": "package", - "dependencies": { - "System.Globalization": "4.3.0", - "System.Linq": "4.3.0", - "System.Private.Uri": "4.3.2", - "System.Runtime": "4.3.0", - "System.Text.RegularExpressions": "4.3.0" - }, - "compile": { - "lib/netstandard2.1/Sprache.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.1/Sprache.dll": { - "related": ".xml" - } - } - }, - "Swashbuckle.AspNetCore/8.1.1": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.ApiDescription.Server": "6.0.5", - "Swashbuckle.AspNetCore.Swagger": "8.1.1", - "Swashbuckle.AspNetCore.SwaggerGen": "8.1.1", - "Swashbuckle.AspNetCore.SwaggerUI": "8.1.1" - }, - "build": { - "build/Swashbuckle.AspNetCore.props": {} - }, - "buildMultiTargeting": { - "buildMultiTargeting/Swashbuckle.AspNetCore.props": {} - } - }, - "Swashbuckle.AspNetCore.Swagger/8.1.1": { - "type": "package", - "dependencies": { - "Microsoft.OpenApi": "1.6.23" - }, - "compile": { - "lib/net8.0/Swashbuckle.AspNetCore.Swagger.dll": { - "related": ".pdb;.xml" - } - }, - "runtime": { - "lib/net8.0/Swashbuckle.AspNetCore.Swagger.dll": { - "related": ".pdb;.xml" - } - }, - "frameworkReferences": [ - "Microsoft.AspNetCore.App" - ] - }, - "Swashbuckle.AspNetCore.SwaggerGen/8.1.1": { - "type": "package", - "dependencies": { - "Swashbuckle.AspNetCore.Swagger": "8.1.1" - }, - "compile": { - "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll": { - "related": ".pdb;.xml" - } - }, - "runtime": { - "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll": { - "related": ".pdb;.xml" - } - } - }, - "Swashbuckle.AspNetCore.SwaggerUI/8.1.1": { - "type": "package", - "compile": { - "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll": { - "related": ".pdb;.xml" - } - }, - "runtime": { - "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll": { - "related": ".pdb;.xml" - } - }, - "frameworkReferences": [ - "Microsoft.AspNetCore.App" - ] - }, - "System.AppContext/4.3.0": { - "type": "package", - "dependencies": { - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.6/System.AppContext.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.6/System.AppContext.dll": {} - } - }, - "System.Buffers/4.3.0": { - "type": "package", - "dependencies": { - "System.Diagnostics.Debug": "4.3.0", - "System.Diagnostics.Tracing": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Threading": "4.3.0" - }, - "compile": { - "lib/netstandard1.1/_._": {} - }, - "runtime": { - "lib/netstandard1.1/System.Buffers.dll": {} - } - }, - "System.CodeDom/6.0.0": { - "type": "package", - "compile": { - "lib/net6.0/_._": { - "related": ".xml" - } - }, - "runtime": { - "lib/net6.0/System.CodeDom.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/netcoreapp3.1/_._": {} - } - }, - "System.Collections/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Collections.dll": { - "related": ".xml" - } - } - }, - "System.Collections.Concurrent/4.3.0": { - "type": "package", - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Diagnostics.Tracing": "4.3.0", - "System.Globalization": "4.3.0", - "System.Reflection": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Threading": "4.3.0", - "System.Threading.Tasks": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Collections.Concurrent.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.3/System.Collections.Concurrent.dll": {} - } - }, - "System.Collections.Immutable/7.0.0": { - "type": "package", - "compile": { - "lib/net7.0/_._": { - "related": ".xml" - } - }, - "runtime": { - "lib/net7.0/System.Collections.Immutable.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net6.0/_._": {} - } - }, - "System.Composition/7.0.0": { - "type": "package", - "dependencies": { - "System.Composition.AttributedModel": "7.0.0", - "System.Composition.Convention": "7.0.0", - "System.Composition.Hosting": "7.0.0", - "System.Composition.Runtime": "7.0.0", - "System.Composition.TypedParts": "7.0.0" - }, - "compile": { - "lib/netcoreapp2.0/_._": {} - }, - "runtime": { - "lib/netcoreapp2.0/_._": {} - }, - "build": { - "buildTransitive/net6.0/_._": {} - } - }, - "System.Composition.AttributedModel/7.0.0": { - "type": "package", - "compile": { - "lib/net7.0/_._": { - "related": ".xml" - } - }, - "runtime": { - "lib/net7.0/System.Composition.AttributedModel.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net6.0/_._": {} - } - }, - "System.Composition.Convention/7.0.0": { - "type": "package", - "dependencies": { - "System.Composition.AttributedModel": "7.0.0" - }, - "compile": { - "lib/net7.0/_._": { - "related": ".xml" - } - }, - "runtime": { - "lib/net7.0/System.Composition.Convention.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net6.0/_._": {} - } - }, - "System.Composition.Hosting/7.0.0": { - "type": "package", - "dependencies": { - "System.Composition.Runtime": "7.0.0" - }, - "compile": { - "lib/net7.0/_._": { - "related": ".xml" - } - }, - "runtime": { - "lib/net7.0/System.Composition.Hosting.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net6.0/_._": {} - } - }, - "System.Composition.Runtime/7.0.0": { - "type": "package", - "compile": { - "lib/net7.0/_._": { - "related": ".xml" - } - }, - "runtime": { - "lib/net7.0/System.Composition.Runtime.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net6.0/_._": {} - } - }, - "System.Composition.TypedParts/7.0.0": { - "type": "package", - "dependencies": { - "System.Composition.AttributedModel": "7.0.0", - "System.Composition.Hosting": "7.0.0", - "System.Composition.Runtime": "7.0.0" - }, - "compile": { - "lib/net7.0/_._": { - "related": ".xml" - } - }, - "runtime": { - "lib/net7.0/System.Composition.TypedParts.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net6.0/_._": {} - } - }, - "System.Console/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.IO": "4.3.0", - "System.Runtime": "4.3.0", - "System.Text.Encoding": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Console.dll": { - "related": ".xml" - } - } - }, - "System.Diagnostics.Debug/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Diagnostics.Debug.dll": { - "related": ".xml" - } - } - }, - "System.Diagnostics.DiagnosticSource/9.0.5": { - "type": "package", - "compile": { - "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "System.Diagnostics.Tools/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.0/System.Diagnostics.Tools.dll": { - "related": ".xml" - } - } - }, - "System.Diagnostics.Tracing/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.5/System.Diagnostics.Tracing.dll": { - "related": ".xml" - } - } - }, - "System.Globalization/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Globalization.dll": { - "related": ".xml" - } - } - }, - "System.Globalization.Calendars/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Globalization": "4.3.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Globalization.Calendars.dll": { - "related": ".xml" - } - } - }, - "System.Globalization.Extensions/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Globalization": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.InteropServices": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/_._": { - "related": ".xml" - } - }, - "runtimeTargets": { - "runtimes/unix/lib/netstandard1.3/System.Globalization.Extensions.dll": { - "assetType": "runtime", - "rid": "unix" - }, - "runtimes/win/lib/netstandard1.3/System.Globalization.Extensions.dll": { - "assetType": "runtime", - "rid": "win" - } - } - }, - "System.IdentityModel.Tokens.Jwt/8.10.0": { - "type": "package", - "dependencies": { - "Microsoft.IdentityModel.JsonWebTokens": "8.10.0", - "Microsoft.IdentityModel.Tokens": "8.10.0" - }, - "compile": { - "lib/net8.0/System.IdentityModel.Tokens.Jwt.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.IdentityModel.Tokens.Jwt.dll": { - "related": ".xml" - } - } - }, - "System.IO/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading.Tasks": "4.3.0" - }, - "compile": { - "ref/netstandard1.5/System.IO.dll": { - "related": ".xml" - } - } - }, - "System.IO.Compression/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Buffers": "4.3.0", - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.IO": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading": "4.3.0", - "System.Threading.Tasks": "4.3.0", - "runtime.native.System": "4.3.0", - "runtime.native.System.IO.Compression": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.IO.Compression.dll": { - "related": ".xml" - } - }, - "runtimeTargets": { - "runtimes/unix/lib/netstandard1.3/System.IO.Compression.dll": { - "assetType": "runtime", - "rid": "unix" - }, - "runtimes/win/lib/netstandard1.3/System.IO.Compression.dll": { - "assetType": "runtime", - "rid": "win" - } - } - }, - "System.IO.Compression.ZipFile/4.3.0": { - "type": "package", - "dependencies": { - "System.Buffers": "4.3.0", - "System.IO": "4.3.0", - "System.IO.Compression": "4.3.0", - "System.IO.FileSystem": "4.3.0", - "System.IO.FileSystem.Primitives": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Text.Encoding": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.IO.Compression.ZipFile.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.3/System.IO.Compression.ZipFile.dll": {} - } - }, - "System.IO.FileSystem/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.IO": "4.3.0", - "System.IO.FileSystem.Primitives": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading.Tasks": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.IO.FileSystem.dll": { - "related": ".xml" - } - } - }, - "System.IO.FileSystem.Primitives/4.3.0": { - "type": "package", - "dependencies": { - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.IO.FileSystem.Primitives.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.3/System.IO.FileSystem.Primitives.dll": {} - } - }, - "System.IO.Pipelines/9.0.4": { - "type": "package", - "compile": { - "lib/net8.0/_._": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.IO.Pipelines.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "System.Linq/4.3.0": { - "type": "package", - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0" - }, - "compile": { - "ref/netstandard1.6/System.Linq.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.6/System.Linq.dll": {} - } - }, - "System.Linq.Expressions/4.3.0": { - "type": "package", - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Globalization": "4.3.0", - "System.IO": "4.3.0", - "System.Linq": "4.3.0", - "System.ObjectModel": "4.3.0", - "System.Reflection": "4.3.0", - "System.Reflection.Emit": "4.3.0", - "System.Reflection.Emit.ILGeneration": "4.3.0", - "System.Reflection.Emit.Lightweight": "4.3.0", - "System.Reflection.Extensions": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Reflection.TypeExtensions": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Threading": "4.3.0" - }, - "compile": { - "ref/netstandard1.6/System.Linq.Expressions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.6/System.Linq.Expressions.dll": {} - } - }, - "System.Net.Http/4.3.4": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.1", - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Diagnostics.DiagnosticSource": "4.3.0", - "System.Diagnostics.Tracing": "4.3.0", - "System.Globalization": "4.3.0", - "System.Globalization.Extensions": "4.3.0", - "System.IO": "4.3.0", - "System.IO.FileSystem": "4.3.0", - "System.Net.Primitives": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Security.Cryptography.Algorithms": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.OpenSsl": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Security.Cryptography.X509Certificates": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading": "4.3.0", - "System.Threading.Tasks": "4.3.0", - "runtime.native.System": "4.3.0", - "runtime.native.System.Net.Http": "4.3.0", - "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.2" - }, - "compile": { - "ref/netstandard1.3/System.Net.Http.dll": {} - }, - "runtimeTargets": { - "runtimes/unix/lib/netstandard1.6/System.Net.Http.dll": { - "assetType": "runtime", - "rid": "unix" - }, - "runtimes/win/lib/netstandard1.3/System.Net.Http.dll": { - "assetType": "runtime", - "rid": "win" - } - } - }, - "System.Net.Primitives/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0", - "System.Runtime.Handles": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Net.Primitives.dll": { - "related": ".xml" - } - } - }, - "System.Net.Sockets/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.IO": "4.3.0", - "System.Net.Primitives": "4.3.0", - "System.Runtime": "4.3.0", - "System.Threading.Tasks": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Net.Sockets.dll": { - "related": ".xml" - } - } - }, - "System.ObjectModel/4.3.0": { - "type": "package", - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Threading": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.ObjectModel.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.3/System.ObjectModel.dll": {} - } - }, - "System.Private.Uri/4.3.2": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.1", - "Microsoft.NETCore.Targets": "1.1.3" - }, - "compile": { - "ref/netstandard/_._": {} - } - }, - "System.Reflection/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.IO": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.5/System.Reflection.dll": { - "related": ".xml" - } - } - }, - "System.Reflection.Emit/4.3.0": { - "type": "package", - "dependencies": { - "System.IO": "4.3.0", - "System.Reflection": "4.3.0", - "System.Reflection.Emit.ILGeneration": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.1/_._": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.3/System.Reflection.Emit.dll": {} - } - }, - "System.Reflection.Emit.ILGeneration/4.3.0": { - "type": "package", - "dependencies": { - "System.Reflection": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.0/_._": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.3/System.Reflection.Emit.ILGeneration.dll": {} - } - }, - "System.Reflection.Emit.Lightweight/4.3.0": { - "type": "package", - "dependencies": { - "System.Reflection": "4.3.0", - "System.Reflection.Emit.ILGeneration": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.0/_._": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.3/System.Reflection.Emit.Lightweight.dll": {} - } - }, - "System.Reflection.Extensions/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Reflection": "4.3.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.0/System.Reflection.Extensions.dll": { - "related": ".xml" - } - } - }, - "System.Reflection.Metadata/7.0.0": { - "type": "package", - "dependencies": { - "System.Collections.Immutable": "7.0.0" - }, - "compile": { - "lib/net7.0/_._": { - "related": ".xml" - } - }, - "runtime": { - "lib/net7.0/System.Reflection.Metadata.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net6.0/_._": {} - } - }, - "System.Reflection.Primitives/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.0/System.Reflection.Primitives.dll": { - "related": ".xml" - } - } - }, - "System.Reflection.TypeExtensions/4.3.0": { - "type": "package", - "dependencies": { - "System.Reflection": "4.3.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.5/_._": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.5/System.Reflection.TypeExtensions.dll": {} - } - }, - "System.Resources.ResourceManager/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Globalization": "4.3.0", - "System.Reflection": "4.3.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.0/System.Resources.ResourceManager.dll": { - "related": ".xml" - } - } - }, - "System.Runtime/4.3.1": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.1", - "Microsoft.NETCore.Targets": "1.1.3" - }, - "compile": { - "ref/netstandard1.5/System.Runtime.dll": { - "related": ".xml" - } - } - }, - "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.Runtime.Extensions/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.5/System.Runtime.Extensions.dll": { - "related": ".xml" - } - } - }, - "System.Runtime.Handles/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Runtime.Handles.dll": { - "related": ".xml" - } - } - }, - "System.Runtime.InteropServices/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Reflection": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Handles": "4.3.0" - }, - "compile": { - "ref/netcoreapp1.1/System.Runtime.InteropServices.dll": {} - } - }, - "System.Runtime.InteropServices.RuntimeInformation/4.3.0": { - "type": "package", - "dependencies": { - "System.Reflection": "4.3.0", - "System.Reflection.Extensions": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Threading": "4.3.0", - "runtime.native.System": "4.3.0" - }, - "compile": { - "ref/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll": {} - }, - "runtime": { - "lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll": {} - }, - "runtimeTargets": { - "runtimes/unix/lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll": { - "assetType": "runtime", - "rid": "unix" - }, - "runtimes/win/lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll": { - "assetType": "runtime", - "rid": "win" - } - } - }, - "System.Runtime.Numerics/4.3.0": { - "type": "package", - "dependencies": { - "System.Globalization": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0" - }, - "compile": { - "ref/netstandard1.1/System.Runtime.Numerics.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.3/System.Runtime.Numerics.dll": {} - } - }, - "System.Security.Cryptography.Algorithms/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Collections": "4.3.0", - "System.IO": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Runtime.Numerics": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0", - "runtime.native.System.Security.Cryptography.Apple": "4.3.0", - "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" - }, - "compile": { - "ref/netstandard1.6/System.Security.Cryptography.Algorithms.dll": {} - }, - "runtimeTargets": { - "runtimes/osx/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll": { - "assetType": "runtime", - "rid": "osx" - }, - "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll": { - "assetType": "runtime", - "rid": "unix" - }, - "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll": { - "assetType": "runtime", - "rid": "win" - } - } - }, - "System.Security.Cryptography.Cng/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.IO": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Security.Cryptography.Algorithms": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0" - }, - "compile": { - "ref/netstandard1.6/_._": {} - }, - "runtimeTargets": { - "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.Cng.dll": { - "assetType": "runtime", - "rid": "unix" - }, - "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.Cng.dll": { - "assetType": "runtime", - "rid": "win" - } - } - }, - "System.Security.Cryptography.Csp/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.IO": "4.3.0", - "System.Reflection": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Security.Cryptography.Algorithms": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/_._": {} - }, - "runtimeTargets": { - "runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.Csp.dll": { - "assetType": "runtime", - "rid": "unix" - }, - "runtimes/win/lib/netstandard1.3/System.Security.Cryptography.Csp.dll": { - "assetType": "runtime", - "rid": "win" - } - } - }, - "System.Security.Cryptography.Encoding/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Collections": "4.3.0", - "System.Collections.Concurrent": "4.3.0", - "System.Linq": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0", - "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Security.Cryptography.Encoding.dll": { - "related": ".xml" - } - }, - "runtimeTargets": { - "runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.Encoding.dll": { - "assetType": "runtime", - "rid": "unix" - }, - "runtimes/win/lib/netstandard1.3/System.Security.Cryptography.Encoding.dll": { - "assetType": "runtime", - "rid": "win" - } - } - }, - "System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "dependencies": { - "System.Collections": "4.3.0", - "System.IO": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Runtime.Numerics": "4.3.0", - "System.Security.Cryptography.Algorithms": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0", - "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" - }, - "compile": { - "ref/netstandard1.6/_._": {} - }, - "runtime": { - "lib/netstandard1.6/System.Security.Cryptography.OpenSsl.dll": {} - }, - "runtimeTargets": { - "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.OpenSsl.dll": { - "assetType": "runtime", - "rid": "unix" - } - } - }, - "System.Security.Cryptography.Primitives/4.3.0": { - "type": "package", - "dependencies": { - "System.Diagnostics.Debug": "4.3.0", - "System.Globalization": "4.3.0", - "System.IO": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Threading": "4.3.0", - "System.Threading.Tasks": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Security.Cryptography.Primitives.dll": {} - }, - "runtime": { - "lib/netstandard1.3/System.Security.Cryptography.Primitives.dll": {} - } - }, - "System.Security.Cryptography.X509Certificates/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Globalization": "4.3.0", - "System.Globalization.Calendars": "4.3.0", - "System.IO": "4.3.0", - "System.IO.FileSystem": "4.3.0", - "System.IO.FileSystem.Primitives": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Runtime.Numerics": "4.3.0", - "System.Security.Cryptography.Algorithms": "4.3.0", - "System.Security.Cryptography.Cng": "4.3.0", - "System.Security.Cryptography.Csp": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.OpenSsl": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading": "4.3.0", - "runtime.native.System": "4.3.0", - "runtime.native.System.Net.Http": "4.3.0", - "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" - }, - "compile": { - "ref/netstandard1.4/System.Security.Cryptography.X509Certificates.dll": { - "related": ".xml" - } - }, - "runtimeTargets": { - "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.X509Certificates.dll": { - "assetType": "runtime", - "rid": "unix" - }, - "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.X509Certificates.dll": { - "assetType": "runtime", - "rid": "win" - } - } - }, - "System.Text.Encoding/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Text.Encoding.dll": { - "related": ".xml" - } - } - }, - "System.Text.Encoding.Extensions/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0", - "System.Text.Encoding": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Text.Encoding.Extensions.dll": { - "related": ".xml" - } - } - }, - "System.Text.Encodings.Web/9.0.4": { - "type": "package", - "compile": { - "lib/net8.0/_._": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.Text.Encodings.Web.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - }, - "runtimeTargets": { - "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll": { - "assetType": "runtime", - "rid": "browser" - } - } - }, - "System.Text.Json/9.0.4": { - "type": "package", - "dependencies": { - "System.IO.Pipelines": "9.0.4", - "System.Text.Encodings.Web": "9.0.4" - }, - "compile": { - "lib/net8.0/_._": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.Text.Json.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/System.Text.Json.targets": {} - } - }, - "System.Text.RegularExpressions/4.3.1": { - "type": "package", - "dependencies": { - "System.Runtime": "4.3.1" - }, - "compile": { - "ref/netcoreapp1.1/System.Text.RegularExpressions.dll": {} - }, - "runtime": { - "lib/netstandard1.6/System.Text.RegularExpressions.dll": {} - } - }, - "System.Threading/4.3.0": { - "type": "package", - "dependencies": { - "System.Runtime": "4.3.0", - "System.Threading.Tasks": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Threading.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.3/System.Threading.dll": {} - } - }, - "System.Threading.Channels/7.0.0": { - "type": "package", - "compile": { - "lib/net7.0/_._": { - "related": ".xml" - } - }, - "runtime": { - "lib/net7.0/System.Threading.Channels.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net6.0/_._": {} - } - }, - "System.Threading.Tasks/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Threading.Tasks.dll": { - "related": ".xml" - } - } - }, - "System.Threading.Tasks.Extensions/4.3.0": { - "type": "package", - "dependencies": { - "System.Collections": "4.3.0", - "System.Runtime": "4.3.0", - "System.Threading.Tasks": "4.3.0" - }, - "compile": { - "lib/netstandard1.0/_._": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.0/System.Threading.Tasks.Extensions.dll": { - "related": ".xml" - } - } - }, - "System.Threading.Timer/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.2/System.Threading.Timer.dll": { - "related": ".xml" - } - } - }, - "System.Xml.ReaderWriter/4.3.0": { - "type": "package", - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Globalization": "4.3.0", - "System.IO": "4.3.0", - "System.IO.FileSystem": "4.3.0", - "System.IO.FileSystem.Primitives": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Text.Encoding.Extensions": "4.3.0", - "System.Text.RegularExpressions": "4.3.0", - "System.Threading.Tasks": "4.3.0", - "System.Threading.Tasks.Extensions": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Xml.ReaderWriter.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.3/System.Xml.ReaderWriter.dll": {} - } - }, - "System.Xml.XDocument/4.3.0": { - "type": "package", - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Diagnostics.Tools": "4.3.0", - "System.Globalization": "4.3.0", - "System.IO": "4.3.0", - "System.Reflection": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading": "4.3.0", - "System.Xml.ReaderWriter": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Xml.XDocument.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.3/System.Xml.XDocument.dll": {} - } - } - } - }, - "libraries": { - "AutoMapper/12.0.1": { - "sha512": "hvV62vl6Hp/WfQ24yzo3Co9+OPl8wH8hApwVtgWpiAynVJkUcs7xvehnSftawL8Pe8FrPffBRM3hwzLQqWDNjA==", - "type": "package", - "path": "automapper/12.0.1", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "README.md", - "automapper.12.0.1.nupkg.sha512", - "automapper.nuspec", - "icon.png", - "lib/netstandard2.1/AutoMapper.dll", - "lib/netstandard2.1/AutoMapper.xml" - ] - }, - "AutoMapper.Extensions.Microsoft.DependencyInjection/12.0.1": { - "sha512": "+g/K+Vpe3gGMKGzjslMOdqNlkikScDjWfVvmWTayrDHaG/n2pPmFBMa+jKX1r/h6BDGFdkyRjAuhFE3ykW+r1g==", - "type": "package", - "path": "automapper.extensions.microsoft.dependencyinjection/12.0.1", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "README.md", - "automapper.extensions.microsoft.dependencyinjection.12.0.1.nupkg.sha512", - "automapper.extensions.microsoft.dependencyinjection.nuspec", - "icon.png", - "lib/netstandard2.1/AutoMapper.Extensions.Microsoft.DependencyInjection.dll" - ] - }, - "DotNetEnv/3.1.1": { - "sha512": "o4SqUVCq0pqHF/HYsZk6k22XGIVmvsDVo+Dy7l0ubq9uQ45JkXswrMRJmYvhGLXWFYF0M5OupMonytB+0zvpGQ==", - "type": "package", - "path": "dotnetenv/3.1.1", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "LICENSE", - "README.md", - "dotnetenv.3.1.1.nupkg.sha512", - "dotnetenv.nuspec", - "lib/netstandard1.3/DotNetEnv.dll" - ] - }, - "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.AspNetCore.Authentication.JwtBearer/8.0.0": { - "sha512": "rwxaZYHips5M9vqxRkGfJthTx+Ws4O4yCuefn17J371jL3ouC5Ker43h2hXb5yd9BMnImE9rznT75KJHm6bMgg==", - "type": "package", - "path": "microsoft.aspnetcore.authentication.jwtbearer/8.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "THIRD-PARTY-NOTICES.TXT", - "lib/net8.0/Microsoft.AspNetCore.Authentication.JwtBearer.dll", - "lib/net8.0/Microsoft.AspNetCore.Authentication.JwtBearer.xml", - "microsoft.aspnetcore.authentication.jwtbearer.8.0.0.nupkg.sha512", - "microsoft.aspnetcore.authentication.jwtbearer.nuspec" - ] - }, - "Microsoft.AspNetCore.OpenApi/8.0.14": { - "sha512": "Sar0lozRpDmlAfzRNHtr8hC/6ImdcZMYA1JLoEaW0bmRvQdPpsN0orHYGsY+/LYS3q603ZomxsYpXj1Ow+sBTA==", - "type": "package", - "path": "microsoft.aspnetcore.openapi/8.0.14", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "THIRD-PARTY-NOTICES.TXT", - "lib/net8.0/Microsoft.AspNetCore.OpenApi.dll", - "lib/net8.0/Microsoft.AspNetCore.OpenApi.xml", - "microsoft.aspnetcore.openapi.8.0.14.nupkg.sha512", - "microsoft.aspnetcore.openapi.nuspec" - ] - }, - "Microsoft.Bcl.AsyncInterfaces/7.0.0": { - "sha512": "3aeMZ1N0lJoSyzqiP03hqemtb1BijhsJADdobn/4nsMJ8V1H+CrpuduUe4hlRdx+ikBQju1VGjMD1GJ3Sk05Eg==", - "type": "package", - "path": "microsoft.bcl.asyncinterfaces/7.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/Microsoft.Bcl.AsyncInterfaces.targets", - "buildTransitive/net462/_._", - "lib/net462/Microsoft.Bcl.AsyncInterfaces.dll", - "lib/net462/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.7.0.0.nupkg.sha512", - "microsoft.bcl.asyncinterfaces.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Build.Framework/17.8.3": { - "sha512": "NrQZJW8TlKVPx72yltGb8SVz3P5mNRk9fNiD/ao8jRSk48WqIIdCn99q4IjlVmPcruuQ+yLdjNQLL8Rb4c916g==", - "type": "package", - "path": "microsoft.build.framework/17.8.3", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "MSBuild-NuGet-Icon.png", - "README.md", - "lib/net472/Microsoft.Build.Framework.dll", - "lib/net472/Microsoft.Build.Framework.pdb", - "lib/net472/Microsoft.Build.Framework.xml", - "lib/net8.0/Microsoft.Build.Framework.dll", - "lib/net8.0/Microsoft.Build.Framework.pdb", - "lib/net8.0/Microsoft.Build.Framework.xml", - "microsoft.build.framework.17.8.3.nupkg.sha512", - "microsoft.build.framework.nuspec", - "notices/THIRDPARTYNOTICES.txt", - "ref/net472/Microsoft.Build.Framework.dll", - "ref/net472/Microsoft.Build.Framework.xml", - "ref/net8.0/Microsoft.Build.Framework.dll", - "ref/net8.0/Microsoft.Build.Framework.xml", - "ref/netstandard2.0/Microsoft.Build.Framework.dll", - "ref/netstandard2.0/Microsoft.Build.Framework.xml" - ] - }, - "Microsoft.Build.Locator/1.7.8": { - "sha512": "sPy10x527Ph16S2u0yGME4S6ohBKJ69WfjeGG/bvELYeZVmJdKjxgnlL8cJJJLGV/cZIRqSfB12UDB8ICakOog==", - "type": "package", - "path": "microsoft.build.locator/1.7.8", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "MSBuild-NuGet-Icon.png", - "build/Microsoft.Build.Locator.props", - "build/Microsoft.Build.Locator.targets", - "lib/net46/Microsoft.Build.Locator.dll", - "lib/net6.0/Microsoft.Build.Locator.dll", - "microsoft.build.locator.1.7.8.nupkg.sha512", - "microsoft.build.locator.nuspec" - ] - }, - "Microsoft.CodeAnalysis.Analyzers/3.3.4": { - "sha512": "AxkxcPR+rheX0SmvpLVIGLhOUXAKG56a64kV9VQZ4y9gR9ZmPXnqZvHJnmwLSwzrEP6junUF11vuc+aqo5r68g==", - "type": "package", - "path": "microsoft.codeanalysis.analyzers/3.3.4", - "hasTools": true, - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "ThirdPartyNotices.txt", - "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", - "buildTransitive/Microsoft.CodeAnalysis.Analyzers.props", - "buildTransitive/Microsoft.CodeAnalysis.Analyzers.targets", - "buildTransitive/config/analysislevel_2_9_8_all.globalconfig", - "buildTransitive/config/analysislevel_2_9_8_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevel_2_9_8_default.globalconfig", - "buildTransitive/config/analysislevel_2_9_8_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevel_2_9_8_minimum.globalconfig", - "buildTransitive/config/analysislevel_2_9_8_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevel_2_9_8_none.globalconfig", - "buildTransitive/config/analysislevel_2_9_8_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevel_2_9_8_recommended.globalconfig", - "buildTransitive/config/analysislevel_2_9_8_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevel_3_3_3_all.globalconfig", - "buildTransitive/config/analysislevel_3_3_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevel_3_3_3_default.globalconfig", - "buildTransitive/config/analysislevel_3_3_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevel_3_3_3_minimum.globalconfig", - "buildTransitive/config/analysislevel_3_3_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevel_3_3_3_none.globalconfig", - "buildTransitive/config/analysislevel_3_3_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevel_3_3_3_recommended.globalconfig", - "buildTransitive/config/analysislevel_3_3_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevel_3_3_all.globalconfig", - "buildTransitive/config/analysislevel_3_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevel_3_3_default.globalconfig", - "buildTransitive/config/analysislevel_3_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevel_3_3_minimum.globalconfig", - "buildTransitive/config/analysislevel_3_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevel_3_3_none.globalconfig", - "buildTransitive/config/analysislevel_3_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevel_3_3_recommended.globalconfig", - "buildTransitive/config/analysislevel_3_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevel_3_all.globalconfig", - "buildTransitive/config/analysislevel_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevel_3_default.globalconfig", - "buildTransitive/config/analysislevel_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevel_3_minimum.globalconfig", - "buildTransitive/config/analysislevel_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevel_3_none.globalconfig", - "buildTransitive/config/analysislevel_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevel_3_recommended.globalconfig", - "buildTransitive/config/analysislevel_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevel_4_3_all.globalconfig", - "buildTransitive/config/analysislevel_4_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevel_4_3_default.globalconfig", - "buildTransitive/config/analysislevel_4_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevel_4_3_minimum.globalconfig", - "buildTransitive/config/analysislevel_4_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevel_4_3_none.globalconfig", - "buildTransitive/config/analysislevel_4_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevel_4_3_recommended.globalconfig", - "buildTransitive/config/analysislevel_4_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelcorrectness_2_9_8_all.globalconfig", - "buildTransitive/config/analysislevelcorrectness_2_9_8_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelcorrectness_2_9_8_default.globalconfig", - "buildTransitive/config/analysislevelcorrectness_2_9_8_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelcorrectness_2_9_8_minimum.globalconfig", - "buildTransitive/config/analysislevelcorrectness_2_9_8_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelcorrectness_2_9_8_none.globalconfig", - "buildTransitive/config/analysislevelcorrectness_2_9_8_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelcorrectness_2_9_8_recommended.globalconfig", - "buildTransitive/config/analysislevelcorrectness_2_9_8_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_3_3_all.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_3_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_3_3_default.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_3_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_3_3_minimum.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_3_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_3_3_none.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_3_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_3_3_recommended.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_3_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_3_all.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_3_default.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_3_minimum.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_3_none.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_3_recommended.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_all.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_default.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_minimum.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_none.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_recommended.globalconfig", - "buildTransitive/config/analysislevelcorrectness_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelcorrectness_4_3_all.globalconfig", - "buildTransitive/config/analysislevelcorrectness_4_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelcorrectness_4_3_default.globalconfig", - "buildTransitive/config/analysislevelcorrectness_4_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelcorrectness_4_3_minimum.globalconfig", - "buildTransitive/config/analysislevelcorrectness_4_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelcorrectness_4_3_none.globalconfig", - "buildTransitive/config/analysislevelcorrectness_4_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelcorrectness_4_3_recommended.globalconfig", - "buildTransitive/config/analysislevelcorrectness_4_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevellibrary_2_9_8_all.globalconfig", - "buildTransitive/config/analysislevellibrary_2_9_8_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevellibrary_2_9_8_default.globalconfig", - "buildTransitive/config/analysislevellibrary_2_9_8_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevellibrary_2_9_8_minimum.globalconfig", - "buildTransitive/config/analysislevellibrary_2_9_8_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevellibrary_2_9_8_none.globalconfig", - "buildTransitive/config/analysislevellibrary_2_9_8_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevellibrary_2_9_8_recommended.globalconfig", - "buildTransitive/config/analysislevellibrary_2_9_8_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevellibrary_3_3_3_all.globalconfig", - "buildTransitive/config/analysislevellibrary_3_3_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevellibrary_3_3_3_default.globalconfig", - "buildTransitive/config/analysislevellibrary_3_3_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevellibrary_3_3_3_minimum.globalconfig", - "buildTransitive/config/analysislevellibrary_3_3_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevellibrary_3_3_3_none.globalconfig", - "buildTransitive/config/analysislevellibrary_3_3_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevellibrary_3_3_3_recommended.globalconfig", - "buildTransitive/config/analysislevellibrary_3_3_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevellibrary_3_3_all.globalconfig", - "buildTransitive/config/analysislevellibrary_3_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevellibrary_3_3_default.globalconfig", - "buildTransitive/config/analysislevellibrary_3_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevellibrary_3_3_minimum.globalconfig", - "buildTransitive/config/analysislevellibrary_3_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevellibrary_3_3_none.globalconfig", - "buildTransitive/config/analysislevellibrary_3_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevellibrary_3_3_recommended.globalconfig", - "buildTransitive/config/analysislevellibrary_3_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevellibrary_3_all.globalconfig", - "buildTransitive/config/analysislevellibrary_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevellibrary_3_default.globalconfig", - "buildTransitive/config/analysislevellibrary_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevellibrary_3_minimum.globalconfig", - "buildTransitive/config/analysislevellibrary_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevellibrary_3_none.globalconfig", - "buildTransitive/config/analysislevellibrary_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevellibrary_3_recommended.globalconfig", - "buildTransitive/config/analysislevellibrary_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevellibrary_4_3_all.globalconfig", - "buildTransitive/config/analysislevellibrary_4_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevellibrary_4_3_default.globalconfig", - "buildTransitive/config/analysislevellibrary_4_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevellibrary_4_3_minimum.globalconfig", - "buildTransitive/config/analysislevellibrary_4_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevellibrary_4_3_none.globalconfig", - "buildTransitive/config/analysislevellibrary_4_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevellibrary_4_3_recommended.globalconfig", - "buildTransitive/config/analysislevellibrary_4_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_4_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_4_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_4_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_4_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_4_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_4_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_4_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_4_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_4_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscompatibility_4_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_4_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_4_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_4_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_4_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_4_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_4_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_4_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_4_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_4_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysiscorrectness_4_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_4_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_4_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_4_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_4_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_4_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_4_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_4_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_4_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_4_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdesign_4_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_4_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_4_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_4_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_4_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_4_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_4_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_4_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_4_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_4_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisdocumentation_4_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_4_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_4_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_4_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_4_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_4_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_4_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_4_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_4_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_4_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysislocalization_4_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_4_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_4_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_4_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_4_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_4_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_4_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_4_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_4_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_4_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisperformance_4_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_recommended_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_4_3_all.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_4_3_all_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_4_3_default.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_4_3_default_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_4_3_minimum.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_4_3_minimum_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_4_3_none.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_4_3_none_warnaserror.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_4_3_recommended.globalconfig", - "buildTransitive/config/analysislevelmicrosoftcodeanalysisreleasetracking_4_3_recommended_warnaserror.globalconfig", - "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.4.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.8.0": { - "sha512": "/jR+e/9aT+BApoQJABlVCKnnggGQbvGh7BKq2/wI1LamxC+LbzhcLj4Vj7gXCofl1n4E521YfF9w0WcASGg/KA==", - "type": "package", - "path": "microsoft.codeanalysis.common/4.8.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "ThirdPartyNotices.rtf", - "lib/net6.0/Microsoft.CodeAnalysis.dll", - "lib/net6.0/Microsoft.CodeAnalysis.pdb", - "lib/net6.0/Microsoft.CodeAnalysis.xml", - "lib/net6.0/cs/Microsoft.CodeAnalysis.resources.dll", - "lib/net6.0/de/Microsoft.CodeAnalysis.resources.dll", - "lib/net6.0/es/Microsoft.CodeAnalysis.resources.dll", - "lib/net6.0/fr/Microsoft.CodeAnalysis.resources.dll", - "lib/net6.0/it/Microsoft.CodeAnalysis.resources.dll", - "lib/net6.0/ja/Microsoft.CodeAnalysis.resources.dll", - "lib/net6.0/ko/Microsoft.CodeAnalysis.resources.dll", - "lib/net6.0/pl/Microsoft.CodeAnalysis.resources.dll", - "lib/net6.0/pt-BR/Microsoft.CodeAnalysis.resources.dll", - "lib/net6.0/ru/Microsoft.CodeAnalysis.resources.dll", - "lib/net6.0/tr/Microsoft.CodeAnalysis.resources.dll", - "lib/net6.0/zh-Hans/Microsoft.CodeAnalysis.resources.dll", - "lib/net6.0/zh-Hant/Microsoft.CodeAnalysis.resources.dll", - "lib/net7.0/Microsoft.CodeAnalysis.dll", - "lib/net7.0/Microsoft.CodeAnalysis.pdb", - "lib/net7.0/Microsoft.CodeAnalysis.xml", - "lib/net7.0/cs/Microsoft.CodeAnalysis.resources.dll", - "lib/net7.0/de/Microsoft.CodeAnalysis.resources.dll", - "lib/net7.0/es/Microsoft.CodeAnalysis.resources.dll", - "lib/net7.0/fr/Microsoft.CodeAnalysis.resources.dll", - "lib/net7.0/it/Microsoft.CodeAnalysis.resources.dll", - "lib/net7.0/ja/Microsoft.CodeAnalysis.resources.dll", - "lib/net7.0/ko/Microsoft.CodeAnalysis.resources.dll", - "lib/net7.0/pl/Microsoft.CodeAnalysis.resources.dll", - "lib/net7.0/pt-BR/Microsoft.CodeAnalysis.resources.dll", - "lib/net7.0/ru/Microsoft.CodeAnalysis.resources.dll", - "lib/net7.0/tr/Microsoft.CodeAnalysis.resources.dll", - "lib/net7.0/zh-Hans/Microsoft.CodeAnalysis.resources.dll", - "lib/net7.0/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.8.0.nupkg.sha512", - "microsoft.codeanalysis.common.nuspec" - ] - }, - "Microsoft.CodeAnalysis.CSharp/4.8.0": { - "sha512": "+3+qfdb/aaGD8PZRCrsdobbzGs1m9u119SkkJt8e/mk3xLJz/udLtS2T6nY27OTXxBBw10HzAbC8Z9w08VyP/g==", - "type": "package", - "path": "microsoft.codeanalysis.csharp/4.8.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "ThirdPartyNotices.rtf", - "lib/net6.0/Microsoft.CodeAnalysis.CSharp.dll", - "lib/net6.0/Microsoft.CodeAnalysis.CSharp.pdb", - "lib/net6.0/Microsoft.CodeAnalysis.CSharp.xml", - "lib/net6.0/cs/Microsoft.CodeAnalysis.CSharp.resources.dll", - "lib/net6.0/de/Microsoft.CodeAnalysis.CSharp.resources.dll", - "lib/net6.0/es/Microsoft.CodeAnalysis.CSharp.resources.dll", - "lib/net6.0/fr/Microsoft.CodeAnalysis.CSharp.resources.dll", - "lib/net6.0/it/Microsoft.CodeAnalysis.CSharp.resources.dll", - "lib/net6.0/ja/Microsoft.CodeAnalysis.CSharp.resources.dll", - "lib/net6.0/ko/Microsoft.CodeAnalysis.CSharp.resources.dll", - "lib/net6.0/pl/Microsoft.CodeAnalysis.CSharp.resources.dll", - "lib/net6.0/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll", - "lib/net6.0/ru/Microsoft.CodeAnalysis.CSharp.resources.dll", - "lib/net6.0/tr/Microsoft.CodeAnalysis.CSharp.resources.dll", - "lib/net6.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll", - "lib/net6.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll", - "lib/net7.0/Microsoft.CodeAnalysis.CSharp.dll", - "lib/net7.0/Microsoft.CodeAnalysis.CSharp.pdb", - "lib/net7.0/Microsoft.CodeAnalysis.CSharp.xml", - "lib/net7.0/cs/Microsoft.CodeAnalysis.CSharp.resources.dll", - "lib/net7.0/de/Microsoft.CodeAnalysis.CSharp.resources.dll", - "lib/net7.0/es/Microsoft.CodeAnalysis.CSharp.resources.dll", - "lib/net7.0/fr/Microsoft.CodeAnalysis.CSharp.resources.dll", - "lib/net7.0/it/Microsoft.CodeAnalysis.CSharp.resources.dll", - "lib/net7.0/ja/Microsoft.CodeAnalysis.CSharp.resources.dll", - "lib/net7.0/ko/Microsoft.CodeAnalysis.CSharp.resources.dll", - "lib/net7.0/pl/Microsoft.CodeAnalysis.CSharp.resources.dll", - "lib/net7.0/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll", - "lib/net7.0/ru/Microsoft.CodeAnalysis.CSharp.resources.dll", - "lib/net7.0/tr/Microsoft.CodeAnalysis.CSharp.resources.dll", - "lib/net7.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll", - "lib/net7.0/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.8.0.nupkg.sha512", - "microsoft.codeanalysis.csharp.nuspec" - ] - }, - "Microsoft.CodeAnalysis.CSharp.Workspaces/4.8.0": { - "sha512": "3amm4tq4Lo8/BGvg9p3BJh3S9nKq2wqCXfS7138i69TUpo/bD+XvD0hNurpEBtcNZhi1FyutiomKJqVF39ugYA==", - "type": "package", - "path": "microsoft.codeanalysis.csharp.workspaces/4.8.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "ThirdPartyNotices.rtf", - "lib/net6.0/Microsoft.CodeAnalysis.CSharp.Workspaces.dll", - "lib/net6.0/Microsoft.CodeAnalysis.CSharp.Workspaces.pdb", - "lib/net6.0/Microsoft.CodeAnalysis.CSharp.Workspaces.xml", - "lib/net6.0/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", - "lib/net6.0/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", - "lib/net6.0/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", - "lib/net6.0/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", - "lib/net6.0/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", - "lib/net6.0/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", - "lib/net6.0/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", - "lib/net6.0/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", - "lib/net6.0/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", - "lib/net6.0/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", - "lib/net6.0/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", - "lib/net6.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", - "lib/net6.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", - "lib/net7.0/Microsoft.CodeAnalysis.CSharp.Workspaces.dll", - "lib/net7.0/Microsoft.CodeAnalysis.CSharp.Workspaces.pdb", - "lib/net7.0/Microsoft.CodeAnalysis.CSharp.Workspaces.xml", - "lib/net7.0/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", - "lib/net7.0/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", - "lib/net7.0/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", - "lib/net7.0/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", - "lib/net7.0/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", - "lib/net7.0/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", - "lib/net7.0/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", - "lib/net7.0/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", - "lib/net7.0/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", - "lib/net7.0/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", - "lib/net7.0/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", - "lib/net7.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", - "lib/net7.0/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.8.0.nupkg.sha512", - "microsoft.codeanalysis.csharp.workspaces.nuspec" - ] - }, - "Microsoft.CodeAnalysis.Workspaces.Common/4.8.0": { - "sha512": "LXyV+MJKsKRu3FGJA3OmSk40OUIa/dQCFLOnm5X8MNcujx7hzGu8o+zjXlb/cy5xUdZK2UKYb9YaQ2E8m9QehQ==", - "type": "package", - "path": "microsoft.codeanalysis.workspaces.common/4.8.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "ThirdPartyNotices.rtf", - "lib/net6.0/Microsoft.CodeAnalysis.Workspaces.dll", - "lib/net6.0/Microsoft.CodeAnalysis.Workspaces.pdb", - "lib/net6.0/Microsoft.CodeAnalysis.Workspaces.xml", - "lib/net6.0/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll", - "lib/net6.0/de/Microsoft.CodeAnalysis.Workspaces.resources.dll", - "lib/net6.0/es/Microsoft.CodeAnalysis.Workspaces.resources.dll", - "lib/net6.0/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll", - "lib/net6.0/it/Microsoft.CodeAnalysis.Workspaces.resources.dll", - "lib/net6.0/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll", - "lib/net6.0/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll", - "lib/net6.0/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll", - "lib/net6.0/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll", - "lib/net6.0/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll", - "lib/net6.0/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll", - "lib/net6.0/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll", - "lib/net6.0/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll", - "lib/net7.0/Microsoft.CodeAnalysis.Workspaces.dll", - "lib/net7.0/Microsoft.CodeAnalysis.Workspaces.pdb", - "lib/net7.0/Microsoft.CodeAnalysis.Workspaces.xml", - "lib/net7.0/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll", - "lib/net7.0/de/Microsoft.CodeAnalysis.Workspaces.resources.dll", - "lib/net7.0/es/Microsoft.CodeAnalysis.Workspaces.resources.dll", - "lib/net7.0/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll", - "lib/net7.0/it/Microsoft.CodeAnalysis.Workspaces.resources.dll", - "lib/net7.0/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll", - "lib/net7.0/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll", - "lib/net7.0/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll", - "lib/net7.0/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll", - "lib/net7.0/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll", - "lib/net7.0/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll", - "lib/net7.0/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll", - "lib/net7.0/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.8.0.nupkg.sha512", - "microsoft.codeanalysis.workspaces.common.nuspec" - ] - }, - "Microsoft.CodeAnalysis.Workspaces.MSBuild/4.8.0": { - "sha512": "IEYreI82QZKklp54yPHxZNG9EKSK6nHEkeuf+0Asie9llgS1gp0V1hw7ODG+QyoB7MuAnNQHmeV1Per/ECpv6A==", - "type": "package", - "path": "microsoft.codeanalysis.workspaces.msbuild/4.8.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "ThirdPartyNotices.rtf", - "lib/net472/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.exe", - "lib/net472/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.pdb", - "lib/net472/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.xml", - "lib/net472/Microsoft.CodeAnalysis.Workspaces.MSBuild.dll", - "lib/net472/Microsoft.CodeAnalysis.Workspaces.MSBuild.pdb", - "lib/net472/Microsoft.CodeAnalysis.Workspaces.MSBuild.xml", - "lib/net472/cs/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net472/de/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net472/es/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net472/fr/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net472/it/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net472/ja/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net472/ko/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net472/pl/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net472/pt-BR/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net472/ru/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net472/tr/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net472/zh-Hans/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net472/zh-Hant/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net6.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.dll", - "lib/net6.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.pdb", - "lib/net6.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.runtimeconfig.json", - "lib/net6.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.xml", - "lib/net6.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.dll", - "lib/net6.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.pdb", - "lib/net6.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.xml", - "lib/net6.0/cs/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net6.0/de/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net6.0/es/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net6.0/fr/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net6.0/it/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net6.0/ja/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net6.0/ko/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net6.0/pl/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net6.0/pt-BR/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net6.0/ru/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net6.0/tr/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net6.0/zh-Hans/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net6.0/zh-Hant/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net7.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.dll", - "lib/net7.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.pdb", - "lib/net7.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.runtimeconfig.json", - "lib/net7.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.xml", - "lib/net7.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.dll", - "lib/net7.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.pdb", - "lib/net7.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.xml", - "lib/net7.0/cs/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net7.0/de/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net7.0/es/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net7.0/fr/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net7.0/it/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net7.0/ja/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net7.0/ko/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net7.0/pl/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net7.0/pt-BR/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net7.0/ru/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net7.0/tr/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net7.0/zh-Hans/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "lib/net7.0/zh-Hant/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll", - "microsoft.codeanalysis.workspaces.msbuild.4.8.0.nupkg.sha512", - "microsoft.codeanalysis.workspaces.msbuild.nuspec" - ] - }, - "Microsoft.CSharp/4.7.0": { - "sha512": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==", - "type": "package", - "path": "microsoft.csharp/4.7.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "LICENSE.TXT", - "THIRD-PARTY-NOTICES.TXT", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/netcore50/Microsoft.CSharp.dll", - "lib/netcoreapp2.0/_._", - "lib/netstandard1.3/Microsoft.CSharp.dll", - "lib/netstandard2.0/Microsoft.CSharp.dll", - "lib/netstandard2.0/Microsoft.CSharp.xml", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/uap10.0.16299/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "microsoft.csharp.4.7.0.nupkg.sha512", - "microsoft.csharp.nuspec", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/Microsoft.CSharp.dll", - "ref/netcore50/Microsoft.CSharp.xml", - "ref/netcore50/de/Microsoft.CSharp.xml", - "ref/netcore50/es/Microsoft.CSharp.xml", - "ref/netcore50/fr/Microsoft.CSharp.xml", - "ref/netcore50/it/Microsoft.CSharp.xml", - "ref/netcore50/ja/Microsoft.CSharp.xml", - "ref/netcore50/ko/Microsoft.CSharp.xml", - "ref/netcore50/ru/Microsoft.CSharp.xml", - "ref/netcore50/zh-hans/Microsoft.CSharp.xml", - "ref/netcore50/zh-hant/Microsoft.CSharp.xml", - "ref/netcoreapp2.0/_._", - "ref/netstandard1.0/Microsoft.CSharp.dll", - "ref/netstandard1.0/Microsoft.CSharp.xml", - "ref/netstandard1.0/de/Microsoft.CSharp.xml", - "ref/netstandard1.0/es/Microsoft.CSharp.xml", - "ref/netstandard1.0/fr/Microsoft.CSharp.xml", - "ref/netstandard1.0/it/Microsoft.CSharp.xml", - "ref/netstandard1.0/ja/Microsoft.CSharp.xml", - "ref/netstandard1.0/ko/Microsoft.CSharp.xml", - "ref/netstandard1.0/ru/Microsoft.CSharp.xml", - "ref/netstandard1.0/zh-hans/Microsoft.CSharp.xml", - "ref/netstandard1.0/zh-hant/Microsoft.CSharp.xml", - "ref/netstandard2.0/Microsoft.CSharp.dll", - "ref/netstandard2.0/Microsoft.CSharp.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/uap10.0.16299/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "useSharedDesignerContext.txt", - "version.txt" - ] - }, - "Microsoft.EntityFrameworkCore/9.0.5": { - "sha512": "TeCtb/vc+jxvgkVAqeJlZKOoG5w/w8AigWQQyOmeJsJ7+0SkONX8bqEV/wB+ojnT0sXuJrrfXQOEC3ws6asEng==", - "type": "package", - "path": "microsoft.entityframeworkcore/9.0.5", - "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.9.0.5.nupkg.sha512", - "microsoft.entityframeworkcore.nuspec" - ] - }, - "Microsoft.EntityFrameworkCore.Abstractions/9.0.5": { - "sha512": "81fGyIibhGc4rq4ZxmVZE/1CFSvGMQOZqdRyCBLKz/Hb8eE973dmSfcdXpXhQ/5f+nbax4VGkWhwPGxWUNWaCQ==", - "type": "package", - "path": "microsoft.entityframeworkcore.abstractions/9.0.5", - "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.9.0.5.nupkg.sha512", - "microsoft.entityframeworkcore.abstractions.nuspec" - ] - }, - "Microsoft.EntityFrameworkCore.Analyzers/9.0.5": { - "sha512": "kWRrD69qCXo7lahPZPt7C127UfK0I024laFZEDMfT3JbALB1EWneFvq1utWM0cNKPFuYis1E1oaYTuRGI/9inQ==", - "type": "package", - "path": "microsoft.entityframeworkcore.analyzers/9.0.5", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "analyzers/dotnet/cs/Microsoft.EntityFrameworkCore.Analyzers.dll", - "docs/PACKAGE.md", - "microsoft.entityframeworkcore.analyzers.9.0.5.nupkg.sha512", - "microsoft.entityframeworkcore.analyzers.nuspec" - ] - }, - "Microsoft.EntityFrameworkCore.Design/9.0.4": { - "sha512": "0NdtmsbYfMr2HyF+W6L+kPaHJl1nAmFjWj0MfI5G+CFeWZxDwltQxzzwSmZQ4QhS5z8zjczGXwHZ8e3iFaoiXA==", - "type": "package", - "path": "microsoft.entityframeworkcore.design/9.0.4", - "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.9.0.4.nupkg.sha512", - "microsoft.entityframeworkcore.design.nuspec" - ] - }, - "Microsoft.EntityFrameworkCore.Relational/9.0.4": { - "sha512": "OjJ+xh/wQff5b0wiC3SPvoQqTA2boZeJQf+15+3+OJPtjBKzvxuwr25QRIu1p1t+K8ryQ8pzaoZ7eOpXfNzVGA==", - "type": "package", - "path": "microsoft.entityframeworkcore.relational/9.0.4", - "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.9.0.4.nupkg.sha512", - "microsoft.entityframeworkcore.relational.nuspec" - ] - }, - "Microsoft.Extensions.ApiDescription.Server/6.0.5": { - "sha512": "Ckb5EDBUNJdFWyajfXzUIMRkhf52fHZOQuuZg/oiu8y7zDCVwD0iHhew6MnThjHmevanpxL3f5ci2TtHQEN6bw==", - "type": "package", - "path": "microsoft.extensions.apidescription.server/6.0.5", - "hasTools": true, - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "build/Microsoft.Extensions.ApiDescription.Server.props", - "build/Microsoft.Extensions.ApiDescription.Server.targets", - "buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.props", - "buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.targets", - "microsoft.extensions.apidescription.server.6.0.5.nupkg.sha512", - "microsoft.extensions.apidescription.server.nuspec", - "tools/Newtonsoft.Json.dll", - "tools/dotnet-getdocument.deps.json", - "tools/dotnet-getdocument.dll", - "tools/dotnet-getdocument.runtimeconfig.json", - "tools/net461-x86/GetDocument.Insider.exe", - "tools/net461-x86/GetDocument.Insider.exe.config", - "tools/net461-x86/Microsoft.Win32.Primitives.dll", - "tools/net461-x86/System.AppContext.dll", - "tools/net461-x86/System.Buffers.dll", - "tools/net461-x86/System.Collections.Concurrent.dll", - "tools/net461-x86/System.Collections.NonGeneric.dll", - "tools/net461-x86/System.Collections.Specialized.dll", - "tools/net461-x86/System.Collections.dll", - "tools/net461-x86/System.ComponentModel.EventBasedAsync.dll", - "tools/net461-x86/System.ComponentModel.Primitives.dll", - "tools/net461-x86/System.ComponentModel.TypeConverter.dll", - "tools/net461-x86/System.ComponentModel.dll", - "tools/net461-x86/System.Console.dll", - "tools/net461-x86/System.Data.Common.dll", - "tools/net461-x86/System.Diagnostics.Contracts.dll", - "tools/net461-x86/System.Diagnostics.Debug.dll", - "tools/net461-x86/System.Diagnostics.DiagnosticSource.dll", - "tools/net461-x86/System.Diagnostics.FileVersionInfo.dll", - "tools/net461-x86/System.Diagnostics.Process.dll", - "tools/net461-x86/System.Diagnostics.StackTrace.dll", - "tools/net461-x86/System.Diagnostics.TextWriterTraceListener.dll", - "tools/net461-x86/System.Diagnostics.Tools.dll", - "tools/net461-x86/System.Diagnostics.TraceSource.dll", - "tools/net461-x86/System.Diagnostics.Tracing.dll", - "tools/net461-x86/System.Drawing.Primitives.dll", - "tools/net461-x86/System.Dynamic.Runtime.dll", - "tools/net461-x86/System.Globalization.Calendars.dll", - "tools/net461-x86/System.Globalization.Extensions.dll", - "tools/net461-x86/System.Globalization.dll", - "tools/net461-x86/System.IO.Compression.ZipFile.dll", - "tools/net461-x86/System.IO.Compression.dll", - "tools/net461-x86/System.IO.FileSystem.DriveInfo.dll", - "tools/net461-x86/System.IO.FileSystem.Primitives.dll", - "tools/net461-x86/System.IO.FileSystem.Watcher.dll", - "tools/net461-x86/System.IO.FileSystem.dll", - "tools/net461-x86/System.IO.IsolatedStorage.dll", - "tools/net461-x86/System.IO.MemoryMappedFiles.dll", - "tools/net461-x86/System.IO.Pipes.dll", - "tools/net461-x86/System.IO.UnmanagedMemoryStream.dll", - "tools/net461-x86/System.IO.dll", - "tools/net461-x86/System.Linq.Expressions.dll", - "tools/net461-x86/System.Linq.Parallel.dll", - "tools/net461-x86/System.Linq.Queryable.dll", - "tools/net461-x86/System.Linq.dll", - "tools/net461-x86/System.Memory.dll", - "tools/net461-x86/System.Net.Http.dll", - "tools/net461-x86/System.Net.NameResolution.dll", - "tools/net461-x86/System.Net.NetworkInformation.dll", - "tools/net461-x86/System.Net.Ping.dll", - "tools/net461-x86/System.Net.Primitives.dll", - "tools/net461-x86/System.Net.Requests.dll", - "tools/net461-x86/System.Net.Security.dll", - "tools/net461-x86/System.Net.Sockets.dll", - "tools/net461-x86/System.Net.WebHeaderCollection.dll", - "tools/net461-x86/System.Net.WebSockets.Client.dll", - "tools/net461-x86/System.Net.WebSockets.dll", - "tools/net461-x86/System.Numerics.Vectors.dll", - "tools/net461-x86/System.ObjectModel.dll", - "tools/net461-x86/System.Reflection.Extensions.dll", - "tools/net461-x86/System.Reflection.Primitives.dll", - "tools/net461-x86/System.Reflection.dll", - "tools/net461-x86/System.Resources.Reader.dll", - "tools/net461-x86/System.Resources.ResourceManager.dll", - "tools/net461-x86/System.Resources.Writer.dll", - "tools/net461-x86/System.Runtime.CompilerServices.Unsafe.dll", - "tools/net461-x86/System.Runtime.CompilerServices.VisualC.dll", - "tools/net461-x86/System.Runtime.Extensions.dll", - "tools/net461-x86/System.Runtime.Handles.dll", - "tools/net461-x86/System.Runtime.InteropServices.RuntimeInformation.dll", - "tools/net461-x86/System.Runtime.InteropServices.dll", - "tools/net461-x86/System.Runtime.Numerics.dll", - "tools/net461-x86/System.Runtime.Serialization.Formatters.dll", - "tools/net461-x86/System.Runtime.Serialization.Json.dll", - "tools/net461-x86/System.Runtime.Serialization.Primitives.dll", - "tools/net461-x86/System.Runtime.Serialization.Xml.dll", - "tools/net461-x86/System.Runtime.dll", - "tools/net461-x86/System.Security.Claims.dll", - "tools/net461-x86/System.Security.Cryptography.Algorithms.dll", - "tools/net461-x86/System.Security.Cryptography.Csp.dll", - "tools/net461-x86/System.Security.Cryptography.Encoding.dll", - "tools/net461-x86/System.Security.Cryptography.Primitives.dll", - "tools/net461-x86/System.Security.Cryptography.X509Certificates.dll", - "tools/net461-x86/System.Security.Principal.dll", - "tools/net461-x86/System.Security.SecureString.dll", - "tools/net461-x86/System.Text.Encoding.Extensions.dll", - "tools/net461-x86/System.Text.Encoding.dll", - "tools/net461-x86/System.Text.RegularExpressions.dll", - "tools/net461-x86/System.Threading.Overlapped.dll", - "tools/net461-x86/System.Threading.Tasks.Parallel.dll", - "tools/net461-x86/System.Threading.Tasks.dll", - "tools/net461-x86/System.Threading.Thread.dll", - "tools/net461-x86/System.Threading.ThreadPool.dll", - "tools/net461-x86/System.Threading.Timer.dll", - "tools/net461-x86/System.Threading.dll", - "tools/net461-x86/System.ValueTuple.dll", - "tools/net461-x86/System.Xml.ReaderWriter.dll", - "tools/net461-x86/System.Xml.XDocument.dll", - "tools/net461-x86/System.Xml.XPath.XDocument.dll", - "tools/net461-x86/System.Xml.XPath.dll", - "tools/net461-x86/System.Xml.XmlDocument.dll", - "tools/net461-x86/System.Xml.XmlSerializer.dll", - "tools/net461-x86/netstandard.dll", - "tools/net461/GetDocument.Insider.exe", - "tools/net461/GetDocument.Insider.exe.config", - "tools/net461/Microsoft.Win32.Primitives.dll", - "tools/net461/System.AppContext.dll", - "tools/net461/System.Buffers.dll", - "tools/net461/System.Collections.Concurrent.dll", - "tools/net461/System.Collections.NonGeneric.dll", - "tools/net461/System.Collections.Specialized.dll", - "tools/net461/System.Collections.dll", - "tools/net461/System.ComponentModel.EventBasedAsync.dll", - "tools/net461/System.ComponentModel.Primitives.dll", - "tools/net461/System.ComponentModel.TypeConverter.dll", - "tools/net461/System.ComponentModel.dll", - "tools/net461/System.Console.dll", - "tools/net461/System.Data.Common.dll", - "tools/net461/System.Diagnostics.Contracts.dll", - "tools/net461/System.Diagnostics.Debug.dll", - "tools/net461/System.Diagnostics.DiagnosticSource.dll", - "tools/net461/System.Diagnostics.FileVersionInfo.dll", - "tools/net461/System.Diagnostics.Process.dll", - "tools/net461/System.Diagnostics.StackTrace.dll", - "tools/net461/System.Diagnostics.TextWriterTraceListener.dll", - "tools/net461/System.Diagnostics.Tools.dll", - "tools/net461/System.Diagnostics.TraceSource.dll", - "tools/net461/System.Diagnostics.Tracing.dll", - "tools/net461/System.Drawing.Primitives.dll", - "tools/net461/System.Dynamic.Runtime.dll", - "tools/net461/System.Globalization.Calendars.dll", - "tools/net461/System.Globalization.Extensions.dll", - "tools/net461/System.Globalization.dll", - "tools/net461/System.IO.Compression.ZipFile.dll", - "tools/net461/System.IO.Compression.dll", - "tools/net461/System.IO.FileSystem.DriveInfo.dll", - "tools/net461/System.IO.FileSystem.Primitives.dll", - "tools/net461/System.IO.FileSystem.Watcher.dll", - "tools/net461/System.IO.FileSystem.dll", - "tools/net461/System.IO.IsolatedStorage.dll", - "tools/net461/System.IO.MemoryMappedFiles.dll", - "tools/net461/System.IO.Pipes.dll", - "tools/net461/System.IO.UnmanagedMemoryStream.dll", - "tools/net461/System.IO.dll", - "tools/net461/System.Linq.Expressions.dll", - "tools/net461/System.Linq.Parallel.dll", - "tools/net461/System.Linq.Queryable.dll", - "tools/net461/System.Linq.dll", - "tools/net461/System.Memory.dll", - "tools/net461/System.Net.Http.dll", - "tools/net461/System.Net.NameResolution.dll", - "tools/net461/System.Net.NetworkInformation.dll", - "tools/net461/System.Net.Ping.dll", - "tools/net461/System.Net.Primitives.dll", - "tools/net461/System.Net.Requests.dll", - "tools/net461/System.Net.Security.dll", - "tools/net461/System.Net.Sockets.dll", - "tools/net461/System.Net.WebHeaderCollection.dll", - "tools/net461/System.Net.WebSockets.Client.dll", - "tools/net461/System.Net.WebSockets.dll", - "tools/net461/System.Numerics.Vectors.dll", - "tools/net461/System.ObjectModel.dll", - "tools/net461/System.Reflection.Extensions.dll", - "tools/net461/System.Reflection.Primitives.dll", - "tools/net461/System.Reflection.dll", - "tools/net461/System.Resources.Reader.dll", - "tools/net461/System.Resources.ResourceManager.dll", - "tools/net461/System.Resources.Writer.dll", - "tools/net461/System.Runtime.CompilerServices.Unsafe.dll", - "tools/net461/System.Runtime.CompilerServices.VisualC.dll", - "tools/net461/System.Runtime.Extensions.dll", - "tools/net461/System.Runtime.Handles.dll", - "tools/net461/System.Runtime.InteropServices.RuntimeInformation.dll", - "tools/net461/System.Runtime.InteropServices.dll", - "tools/net461/System.Runtime.Numerics.dll", - "tools/net461/System.Runtime.Serialization.Formatters.dll", - "tools/net461/System.Runtime.Serialization.Json.dll", - "tools/net461/System.Runtime.Serialization.Primitives.dll", - "tools/net461/System.Runtime.Serialization.Xml.dll", - "tools/net461/System.Runtime.dll", - "tools/net461/System.Security.Claims.dll", - "tools/net461/System.Security.Cryptography.Algorithms.dll", - "tools/net461/System.Security.Cryptography.Csp.dll", - "tools/net461/System.Security.Cryptography.Encoding.dll", - "tools/net461/System.Security.Cryptography.Primitives.dll", - "tools/net461/System.Security.Cryptography.X509Certificates.dll", - "tools/net461/System.Security.Principal.dll", - "tools/net461/System.Security.SecureString.dll", - "tools/net461/System.Text.Encoding.Extensions.dll", - "tools/net461/System.Text.Encoding.dll", - "tools/net461/System.Text.RegularExpressions.dll", - "tools/net461/System.Threading.Overlapped.dll", - "tools/net461/System.Threading.Tasks.Parallel.dll", - "tools/net461/System.Threading.Tasks.dll", - "tools/net461/System.Threading.Thread.dll", - "tools/net461/System.Threading.ThreadPool.dll", - "tools/net461/System.Threading.Timer.dll", - "tools/net461/System.Threading.dll", - "tools/net461/System.ValueTuple.dll", - "tools/net461/System.Xml.ReaderWriter.dll", - "tools/net461/System.Xml.XDocument.dll", - "tools/net461/System.Xml.XPath.XDocument.dll", - "tools/net461/System.Xml.XPath.dll", - "tools/net461/System.Xml.XmlDocument.dll", - "tools/net461/System.Xml.XmlSerializer.dll", - "tools/net461/netstandard.dll", - "tools/netcoreapp2.1/GetDocument.Insider.deps.json", - "tools/netcoreapp2.1/GetDocument.Insider.dll", - "tools/netcoreapp2.1/GetDocument.Insider.runtimeconfig.json", - "tools/netcoreapp2.1/System.Diagnostics.DiagnosticSource.dll" - ] - }, - "Microsoft.Extensions.Caching.Abstractions/9.0.5": { - "sha512": "RV6wOTvH5BeVRs6cvxFuaV1ut05Dklpvq19XRO1JxAayfLWYIEP7K94aamY0iSUhoehWk1X5H6gMcbZkHuBjew==", - "type": "package", - "path": "microsoft.extensions.caching.abstractions/9.0.5", - "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/net8.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Caching.Abstractions.targets", - "lib/net462/Microsoft.Extensions.Caching.Abstractions.dll", - "lib/net462/Microsoft.Extensions.Caching.Abstractions.xml", - "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll", - "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.xml", - "lib/net9.0/Microsoft.Extensions.Caching.Abstractions.dll", - "lib/net9.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.9.0.5.nupkg.sha512", - "microsoft.extensions.caching.abstractions.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.Caching.Memory/9.0.5": { - "sha512": "qDmoAzIUBup5KZG1Abv51ifbHMCWFnaXbt05l+Sd92mLOpF9OwHOuoxu3XhzXaPGfq0Ns3pv1df5l8zuKjFgGw==", - "type": "package", - "path": "microsoft.extensions.caching.memory/9.0.5", - "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/net8.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Caching.Memory.targets", - "lib/net462/Microsoft.Extensions.Caching.Memory.dll", - "lib/net462/Microsoft.Extensions.Caching.Memory.xml", - "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll", - "lib/net8.0/Microsoft.Extensions.Caching.Memory.xml", - "lib/net9.0/Microsoft.Extensions.Caching.Memory.dll", - "lib/net9.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.9.0.5.nupkg.sha512", - "microsoft.extensions.caching.memory.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.Configuration/1.1.2": { - "sha512": "eK5BHx/pHLGGO/WDo7CS070MGgx3N7B/ORO/oKeS0qgCyv+ZAR47YWKXmG5aF+lIrAJd3uJjMTdTKgXTU2UDWw==", - "type": "package", - "path": "microsoft.extensions.configuration/1.1.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/netstandard1.1/Microsoft.Extensions.Configuration.dll", - "lib/netstandard1.1/Microsoft.Extensions.Configuration.xml", - "microsoft.extensions.configuration.1.1.2.nupkg.sha512", - "microsoft.extensions.configuration.nuspec" - ] - }, - "Microsoft.Extensions.Configuration.Abstractions/9.0.4": { - "sha512": "0LN/DiIKvBrkqp7gkF3qhGIeZk6/B63PthAHjQsxymJfIBcz0kbf4/p/t4lMgggVxZ+flRi5xvTwlpPOoZk8fg==", - "type": "package", - "path": "microsoft.extensions.configuration.abstractions/9.0.4", - "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/net8.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Configuration.Abstractions.targets", - "lib/net462/Microsoft.Extensions.Configuration.Abstractions.dll", - "lib/net462/Microsoft.Extensions.Configuration.Abstractions.xml", - "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll", - "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.xml", - "lib/net9.0/Microsoft.Extensions.Configuration.Abstractions.dll", - "lib/net9.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.9.0.4.nupkg.sha512", - "microsoft.extensions.configuration.abstractions.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.DependencyInjection/9.0.5": { - "sha512": "N1Mn0T/tUBPoLL+Fzsp+VCEtneUhhxc1//Dx3BeuQ8AX+XrMlYCfnp2zgpEXnTCB7053CLdiqVWPZ7mEX6MPjg==", - "type": "package", - "path": "microsoft.extensions.dependencyinjection/9.0.5", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/Microsoft.Extensions.DependencyInjection.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.targets", - "lib/net462/Microsoft.Extensions.DependencyInjection.dll", - "lib/net462/Microsoft.Extensions.DependencyInjection.xml", - "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll", - "lib/net8.0/Microsoft.Extensions.DependencyInjection.xml", - "lib/net9.0/Microsoft.Extensions.DependencyInjection.dll", - "lib/net9.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.9.0.5.nupkg.sha512", - "microsoft.extensions.dependencyinjection.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.DependencyInjection.Abstractions/9.0.5": { - "sha512": "cjnRtsEAzU73aN6W7vkWy8Phj5t3Xm78HSqgrbh/O4Q9SK/yN73wZVa21QQY6amSLQRQ/M8N+koGnY6PuvKQsw==", - "type": "package", - "path": "microsoft.extensions.dependencyinjection.abstractions/9.0.5", - "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/net8.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.Abstractions.targets", - "lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.dll", - "lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.xml", - "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", - "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", - "lib/net9.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", - "lib/net9.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.9.0.5.nupkg.sha512", - "microsoft.extensions.dependencyinjection.abstractions.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.DependencyModel/9.0.4": { - "sha512": "ACtnvl3H3M/f8Z42980JxsNu7V9PPbzys4vBs83ZewnsgKd7JeYK18OMPo0g+MxAHrpgMrjmlinXDiaSRPcVnA==", - "type": "package", - "path": "microsoft.extensions.dependencymodel/9.0.4", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/Microsoft.Extensions.DependencyModel.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyModel.targets", - "lib/net462/Microsoft.Extensions.DependencyModel.dll", - "lib/net462/Microsoft.Extensions.DependencyModel.xml", - "lib/net8.0/Microsoft.Extensions.DependencyModel.dll", - "lib/net8.0/Microsoft.Extensions.DependencyModel.xml", - "lib/net9.0/Microsoft.Extensions.DependencyModel.dll", - "lib/net9.0/Microsoft.Extensions.DependencyModel.xml", - "lib/netstandard2.0/Microsoft.Extensions.DependencyModel.dll", - "lib/netstandard2.0/Microsoft.Extensions.DependencyModel.xml", - "microsoft.extensions.dependencymodel.9.0.4.nupkg.sha512", - "microsoft.extensions.dependencymodel.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.Logging/9.0.5": { - "sha512": "rQU61lrgvpE/UgcAd4E56HPxUIkX/VUQCxWmwDTLLVeuwRDYTL0q/FLGfAW17cGTKyCh7ywYAEnY3sTEvURsfg==", - "type": "package", - "path": "microsoft.extensions.logging/9.0.5", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/Microsoft.Extensions.Logging.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.targets", - "lib/net462/Microsoft.Extensions.Logging.dll", - "lib/net462/Microsoft.Extensions.Logging.xml", - "lib/net8.0/Microsoft.Extensions.Logging.dll", - "lib/net8.0/Microsoft.Extensions.Logging.xml", - "lib/net9.0/Microsoft.Extensions.Logging.dll", - "lib/net9.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.9.0.5.nupkg.sha512", - "microsoft.extensions.logging.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.Logging.Abstractions/9.0.5": { - "sha512": "pP1PADCrIxMYJXxFmTVbAgEU7GVpjK5i0/tyfU9DiE0oXQy3JWQaOVgCkrCiePLgS8b5sghM3Fau3EeHiVWbCg==", - "type": "package", - "path": "microsoft.extensions.logging.abstractions/9.0.5", - "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/net8.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/net8.0/Microsoft.Extensions.Logging.Abstractions.dll", - "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.xml", - "lib/net9.0/Microsoft.Extensions.Logging.Abstractions.dll", - "lib/net9.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.9.0.5.nupkg.sha512", - "microsoft.extensions.logging.abstractions.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.Options/9.0.5": { - "sha512": "vPdJQU8YLOUSSK8NL0RmwcXJr2E0w8xH559PGQl4JYsglgilZr9LZnqV2zdgk+XR05+kuvhBEZKoDVd46o7NqA==", - "type": "package", - "path": "microsoft.extensions.options/9.0.5", - "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/net8.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/net8.0/Microsoft.Extensions.Options.dll", - "lib/net8.0/Microsoft.Extensions.Options.xml", - "lib/net9.0/Microsoft.Extensions.Options.dll", - "lib/net9.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.9.0.5.nupkg.sha512", - "microsoft.extensions.options.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.Primitives/9.0.5": { - "sha512": "b4OAv1qE1C9aM+ShWJu3rlo/WjDwa/I30aIPXqDWSKXTtKl1Wwh6BZn+glH5HndGVVn3C6ZAPQj5nv7/7HJNBQ==", - "type": "package", - "path": "microsoft.extensions.primitives/9.0.5", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/Microsoft.Extensions.Primitives.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Primitives.targets", - "lib/net462/Microsoft.Extensions.Primitives.dll", - "lib/net462/Microsoft.Extensions.Primitives.xml", - "lib/net8.0/Microsoft.Extensions.Primitives.dll", - "lib/net8.0/Microsoft.Extensions.Primitives.xml", - "lib/net9.0/Microsoft.Extensions.Primitives.dll", - "lib/net9.0/Microsoft.Extensions.Primitives.xml", - "lib/netstandard2.0/Microsoft.Extensions.Primitives.dll", - "lib/netstandard2.0/Microsoft.Extensions.Primitives.xml", - "microsoft.extensions.primitives.9.0.5.nupkg.sha512", - "microsoft.extensions.primitives.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.IdentityModel.Abstractions/8.10.0": { - "sha512": "JxKG5YRBB3b6kSGFec7sbIOngEzPxu4EKPBEIdj/l0ufS1Qhc4wLxAPGJYGhEYOomTbDWaA+ZKVEaJNU+2iWUQ==", - "type": "package", - "path": "microsoft.identitymodel.abstractions/8.10.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "README.md", - "lib/net462/Microsoft.IdentityModel.Abstractions.dll", - "lib/net462/Microsoft.IdentityModel.Abstractions.xml", - "lib/net472/Microsoft.IdentityModel.Abstractions.dll", - "lib/net472/Microsoft.IdentityModel.Abstractions.xml", - "lib/net6.0/Microsoft.IdentityModel.Abstractions.dll", - "lib/net6.0/Microsoft.IdentityModel.Abstractions.xml", - "lib/net8.0/Microsoft.IdentityModel.Abstractions.dll", - "lib/net8.0/Microsoft.IdentityModel.Abstractions.xml", - "lib/net9.0/Microsoft.IdentityModel.Abstractions.dll", - "lib/net9.0/Microsoft.IdentityModel.Abstractions.xml", - "lib/netstandard2.0/Microsoft.IdentityModel.Abstractions.dll", - "lib/netstandard2.0/Microsoft.IdentityModel.Abstractions.xml", - "microsoft.identitymodel.abstractions.8.10.0.nupkg.sha512", - "microsoft.identitymodel.abstractions.nuspec" - ] - }, - "Microsoft.IdentityModel.JsonWebTokens/8.10.0": { - "sha512": "6YcL0exWuiHBUmQIkcocQ0x0mvvNewKbmpJpsZw4uzbweotSmAmb0pOK3CdIDYq31atjxrVOvlfF51+0FmrI5g==", - "type": "package", - "path": "microsoft.identitymodel.jsonwebtokens/8.10.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "README.md", - "lib/net462/Microsoft.IdentityModel.JsonWebTokens.dll", - "lib/net462/Microsoft.IdentityModel.JsonWebTokens.xml", - "lib/net472/Microsoft.IdentityModel.JsonWebTokens.dll", - "lib/net472/Microsoft.IdentityModel.JsonWebTokens.xml", - "lib/net6.0/Microsoft.IdentityModel.JsonWebTokens.dll", - "lib/net6.0/Microsoft.IdentityModel.JsonWebTokens.xml", - "lib/net8.0/Microsoft.IdentityModel.JsonWebTokens.dll", - "lib/net8.0/Microsoft.IdentityModel.JsonWebTokens.xml", - "lib/net9.0/Microsoft.IdentityModel.JsonWebTokens.dll", - "lib/net9.0/Microsoft.IdentityModel.JsonWebTokens.xml", - "lib/netstandard2.0/Microsoft.IdentityModel.JsonWebTokens.dll", - "lib/netstandard2.0/Microsoft.IdentityModel.JsonWebTokens.xml", - "microsoft.identitymodel.jsonwebtokens.8.10.0.nupkg.sha512", - "microsoft.identitymodel.jsonwebtokens.nuspec" - ] - }, - "Microsoft.IdentityModel.Logging/8.10.0": { - "sha512": "BnkYC9lKYOL3zk7pmle9VJWAzSTPCjkvLyoKPmr4suFZo2hG3YYnFrffjUgdKHIUlyhcd1eHsBHMkfa1S3o/tA==", - "type": "package", - "path": "microsoft.identitymodel.logging/8.10.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "README.md", - "lib/net462/Microsoft.IdentityModel.Logging.dll", - "lib/net462/Microsoft.IdentityModel.Logging.xml", - "lib/net472/Microsoft.IdentityModel.Logging.dll", - "lib/net472/Microsoft.IdentityModel.Logging.xml", - "lib/net6.0/Microsoft.IdentityModel.Logging.dll", - "lib/net6.0/Microsoft.IdentityModel.Logging.xml", - "lib/net8.0/Microsoft.IdentityModel.Logging.dll", - "lib/net8.0/Microsoft.IdentityModel.Logging.xml", - "lib/net9.0/Microsoft.IdentityModel.Logging.dll", - "lib/net9.0/Microsoft.IdentityModel.Logging.xml", - "lib/netstandard2.0/Microsoft.IdentityModel.Logging.dll", - "lib/netstandard2.0/Microsoft.IdentityModel.Logging.xml", - "microsoft.identitymodel.logging.8.10.0.nupkg.sha512", - "microsoft.identitymodel.logging.nuspec" - ] - }, - "Microsoft.IdentityModel.Protocols/7.0.3": { - "sha512": "BtwR+tctBYhPNygyZmt1Rnw74GFrJteW+1zcdIgyvBCjkek6cNwPPqRfdhzCv61i+lwyNomRi8+iI4QKd4YCKA==", - "type": "package", - "path": "microsoft.identitymodel.protocols/7.0.3", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/net461/Microsoft.IdentityModel.Protocols.dll", - "lib/net461/Microsoft.IdentityModel.Protocols.xml", - "lib/net462/Microsoft.IdentityModel.Protocols.dll", - "lib/net462/Microsoft.IdentityModel.Protocols.xml", - "lib/net472/Microsoft.IdentityModel.Protocols.dll", - "lib/net472/Microsoft.IdentityModel.Protocols.xml", - "lib/net6.0/Microsoft.IdentityModel.Protocols.dll", - "lib/net6.0/Microsoft.IdentityModel.Protocols.xml", - "lib/net8.0/Microsoft.IdentityModel.Protocols.dll", - "lib/net8.0/Microsoft.IdentityModel.Protocols.xml", - "lib/netstandard2.0/Microsoft.IdentityModel.Protocols.dll", - "lib/netstandard2.0/Microsoft.IdentityModel.Protocols.xml", - "microsoft.identitymodel.protocols.7.0.3.nupkg.sha512", - "microsoft.identitymodel.protocols.nuspec" - ] - }, - "Microsoft.IdentityModel.Protocols.OpenIdConnect/7.0.3": { - "sha512": "W97TraHApDNArLwpPcXfD+FZH7njJsfEwZE9y9BoofeXMS8H0LBBobz0VOmYmMK4mLdOKxzN7SFT3Ekg0FWI3Q==", - "type": "package", - "path": "microsoft.identitymodel.protocols.openidconnect/7.0.3", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/net461/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", - "lib/net461/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", - "lib/net462/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", - "lib/net462/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", - "lib/net472/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", - "lib/net472/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", - "lib/net6.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", - "lib/net6.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", - "lib/net8.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", - "lib/net8.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", - "lib/netstandard2.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", - "lib/netstandard2.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", - "microsoft.identitymodel.protocols.openidconnect.7.0.3.nupkg.sha512", - "microsoft.identitymodel.protocols.openidconnect.nuspec" - ] - }, - "Microsoft.IdentityModel.Tokens/8.10.0": { - "sha512": "lKS/JCsPnw422g0uk4+iOIJA2Uvq3v6QydDEiOdCFGN1ge/lSeSb8ruZLGLOBMPdN4snSGGn21p92VDuHt4pew==", - "type": "package", - "path": "microsoft.identitymodel.tokens/8.10.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "README.md", - "lib/net462/Microsoft.IdentityModel.Tokens.dll", - "lib/net462/Microsoft.IdentityModel.Tokens.xml", - "lib/net472/Microsoft.IdentityModel.Tokens.dll", - "lib/net472/Microsoft.IdentityModel.Tokens.xml", - "lib/net6.0/Microsoft.IdentityModel.Tokens.dll", - "lib/net6.0/Microsoft.IdentityModel.Tokens.xml", - "lib/net8.0/Microsoft.IdentityModel.Tokens.dll", - "lib/net8.0/Microsoft.IdentityModel.Tokens.xml", - "lib/net9.0/Microsoft.IdentityModel.Tokens.dll", - "lib/net9.0/Microsoft.IdentityModel.Tokens.xml", - "lib/netstandard2.0/Microsoft.IdentityModel.Tokens.dll", - "lib/netstandard2.0/Microsoft.IdentityModel.Tokens.xml", - "microsoft.identitymodel.tokens.8.10.0.nupkg.sha512", - "microsoft.identitymodel.tokens.nuspec" - ] - }, - "Microsoft.NETCore.Platforms/1.1.1": { - "sha512": "TMBuzAHpTenGbGgk0SMTwyEkyijY/Eae4ZGsFNYJvAr/LDn1ku3Etp3FPxChmDp5HHF3kzJuoaa08N0xjqAJfQ==", - "type": "package", - "path": "microsoft.netcore.platforms/1.1.1", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/netstandard1.0/_._", - "microsoft.netcore.platforms.1.1.1.nupkg.sha512", - "microsoft.netcore.platforms.nuspec", - "runtime.json" - ] - }, - "Microsoft.NETCore.Targets/1.1.3": { - "sha512": "3Wrmi0kJDzClwAC+iBdUBpEKmEle8FQNsCs77fkiOIw/9oYA07bL1EZNX0kQ2OMN3xpwvl0vAtOCYY3ndDNlhQ==", - "type": "package", - "path": "microsoft.netcore.targets/1.1.3", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/netstandard1.0/_._", - "microsoft.netcore.targets.1.1.3.nupkg.sha512", - "microsoft.netcore.targets.nuspec", - "runtime.json" - ] - }, - "Microsoft.OpenApi/1.6.23": { - "sha512": "tZ1I0KXnn98CWuV8cpI247A17jaY+ILS9vvF7yhI0uPPEqF4P1d7BWL5Uwtel10w9NucllHB3nTkfYTAcHAh8g==", - "type": "package", - "path": "microsoft.openapi/1.6.23", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "README.md", - "lib/netstandard2.0/Microsoft.OpenApi.dll", - "lib/netstandard2.0/Microsoft.OpenApi.pdb", - "lib/netstandard2.0/Microsoft.OpenApi.xml", - "microsoft.openapi.1.6.23.nupkg.sha512", - "microsoft.openapi.nuspec" - ] - }, - "Microsoft.Win32.Primitives/4.3.0": { - "sha512": "9ZQKCWxH7Ijp9BfahvL2Zyf1cJIk8XYLF6Yjzr2yi0b2cOut/HQ31qf1ThHAgCc3WiZMdnWcfJCgN82/0UunxA==", - "type": "package", - "path": "microsoft.win32.primitives/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/Microsoft.Win32.Primitives.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "microsoft.win32.primitives.4.3.0.nupkg.sha512", - "microsoft.win32.primitives.nuspec", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/Microsoft.Win32.Primitives.dll", - "ref/netstandard1.3/Microsoft.Win32.Primitives.dll", - "ref/netstandard1.3/Microsoft.Win32.Primitives.xml", - "ref/netstandard1.3/de/Microsoft.Win32.Primitives.xml", - "ref/netstandard1.3/es/Microsoft.Win32.Primitives.xml", - "ref/netstandard1.3/fr/Microsoft.Win32.Primitives.xml", - "ref/netstandard1.3/it/Microsoft.Win32.Primitives.xml", - "ref/netstandard1.3/ja/Microsoft.Win32.Primitives.xml", - "ref/netstandard1.3/ko/Microsoft.Win32.Primitives.xml", - "ref/netstandard1.3/ru/Microsoft.Win32.Primitives.xml", - "ref/netstandard1.3/zh-hans/Microsoft.Win32.Primitives.xml", - "ref/netstandard1.3/zh-hant/Microsoft.Win32.Primitives.xml", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._" - ] - }, - "Mono.TextTemplating/3.0.0": { - "sha512": "YqueG52R/Xej4VVbKuRIodjiAhV0HR/XVbLbNrJhCZnzjnSjgMJ/dCdV0akQQxavX6hp/LC6rqLGLcXeQYU7XA==", - "type": "package", - "path": "mono.texttemplating/3.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "LICENSE.txt/LICENSE", - "buildTransitive/Mono.TextTemplating.targets", - "lib/net472/Mono.TextTemplating.dll", - "lib/net6.0/Mono.TextTemplating.dll", - "lib/netstandard2.0/Mono.TextTemplating.dll", - "mono.texttemplating.3.0.0.nupkg.sha512", - "mono.texttemplating.nuspec", - "readme.md" - ] - }, - "NETStandard.Library/1.6.1": { - "sha512": "WcSp3+vP+yHNgS8EV5J7pZ9IRpeDuARBPN28by8zqff1wJQXm26PVU8L3/fYLBJVU7BtDyqNVWq2KlCVvSSR4A==", - "type": "package", - "path": "netstandard.library/1.6.1", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "netstandard.library.1.6.1.nupkg.sha512", - "netstandard.library.nuspec" - ] - }, - "Npgsql/9.0.3": { - "sha512": "tPvY61CxOAWxNsKLEBg+oR646X4Bc8UmyQ/tJszL/7mEmIXQnnBhVJZrZEEUv0Bstu0mEsHZD5At3EO8zQRAYw==", - "type": "package", - "path": "npgsql/9.0.3", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "README.md", - "lib/net6.0/Npgsql.dll", - "lib/net6.0/Npgsql.xml", - "lib/net8.0/Npgsql.dll", - "lib/net8.0/Npgsql.xml", - "npgsql.9.0.3.nupkg.sha512", - "npgsql.nuspec", - "postgresql.png" - ] - }, - "Npgsql.EntityFrameworkCore.PostgreSQL/9.0.4": { - "sha512": "mw5vcY2IEc7L+IeGrxpp/J5OSnCcjkjAgJYCm/eD52wpZze8zsSifdqV7zXslSMmfJG2iIUGZyo3KuDtEFKwMQ==", - "type": "package", - "path": "npgsql.entityframeworkcore.postgresql/9.0.4", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "README.md", - "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll", - "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.xml", - "npgsql.entityframeworkcore.postgresql.9.0.4.nupkg.sha512", - "npgsql.entityframeworkcore.postgresql.nuspec", - "postgresql.png" - ] - }, - "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { - "sha512": "7VSGO0URRKoMEAq0Sc9cRz8mb6zbyx/BZDEWhgPdzzpmFhkam3fJ1DAGWFXBI4nGlma+uPKpfuMQP5LXRnOH5g==", - "type": "package", - "path": "runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl/4.3.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", - "runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl.nuspec", - "runtimes/debian.8-x64/native/System.Security.Cryptography.Native.OpenSsl.so" - ] - }, - "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { - "sha512": "0oAaTAm6e2oVH+/Zttt0cuhGaePQYKII1dY8iaqP7CvOpVKgLybKRFvQjXR2LtxXOXTVPNv14j0ot8uV+HrUmw==", - "type": "package", - "path": "runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl/4.3.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", - "runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl.nuspec", - "runtimes/fedora.23-x64/native/System.Security.Cryptography.Native.OpenSsl.so" - ] - }, - "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { - "sha512": "G24ibsCNi5Kbz0oXWynBoRgtGvsw5ZSVEWjv13/KiCAM8C6wz9zzcCniMeQFIkJ2tasjo2kXlvlBZhplL51kGg==", - "type": "package", - "path": "runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl/4.3.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", - "runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl.nuspec", - "runtimes/fedora.24-x64/native/System.Security.Cryptography.Native.OpenSsl.so" - ] - }, - "runtime.native.System/4.3.0": { - "sha512": "c/qWt2LieNZIj1jGnVNsE2Kl23Ya2aSTBuXMD6V7k9KWr6l16Tqdwq+hJScEpWER9753NWC8h96PaVNY5Ld7Jw==", - "type": "package", - "path": "runtime.native.system/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/netstandard1.0/_._", - "runtime.native.system.4.3.0.nupkg.sha512", - "runtime.native.system.nuspec" - ] - }, - "runtime.native.System.IO.Compression/4.3.0": { - "sha512": "INBPonS5QPEgn7naufQFXJEp3zX6L4bwHgJ/ZH78aBTpeNfQMtf7C6VrAFhlq2xxWBveIOWyFzQjJ8XzHMhdOQ==", - "type": "package", - "path": "runtime.native.system.io.compression/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/netstandard1.0/_._", - "runtime.native.system.io.compression.4.3.0.nupkg.sha512", - "runtime.native.system.io.compression.nuspec" - ] - }, - "runtime.native.System.Net.Http/4.3.0": { - "sha512": "ZVuZJqnnegJhd2k/PtAbbIcZ3aZeITq3sj06oKfMBSfphW3HDmk/t4ObvbOk/JA/swGR0LNqMksAh/f7gpTROg==", - "type": "package", - "path": "runtime.native.system.net.http/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/netstandard1.0/_._", - "runtime.native.system.net.http.4.3.0.nupkg.sha512", - "runtime.native.system.net.http.nuspec" - ] - }, - "runtime.native.System.Security.Cryptography.Apple/4.3.0": { - "sha512": "DloMk88juo0OuOWr56QG7MNchmafTLYWvABy36izkrLI5VledI0rq28KGs1i9wbpeT9NPQrx/wTf8U2vazqQ3Q==", - "type": "package", - "path": "runtime.native.system.security.cryptography.apple/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/netstandard1.0/_._", - "runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512", - "runtime.native.system.security.cryptography.apple.nuspec" - ] - }, - "runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { - "sha512": "QR1OwtwehHxSeQvZKXe+iSd+d3XZNkEcuWMFYa2i0aG1l+lR739HPicKMlTbJst3spmeekDVBUS7SeS26s4U/g==", - "type": "package", - "path": "runtime.native.system.security.cryptography.openssl/4.3.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/netstandard1.0/_._", - "runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", - "runtime.native.system.security.cryptography.openssl.nuspec" - ] - }, - "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { - "sha512": "I+GNKGg2xCHueRd1m9PzeEW7WLbNNLznmTuEi8/vZX71HudUbx1UTwlGkiwMri7JLl8hGaIAWnA/GONhu+LOyQ==", - "type": "package", - "path": "runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl/4.3.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", - "runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl.nuspec", - "runtimes/opensuse.13.2-x64/native/System.Security.Cryptography.Native.OpenSsl.so" - ] - }, - "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { - "sha512": "1Z3TAq1ytS1IBRtPXJvEUZdVsfWfeNEhBkbiOCGEl9wwAfsjP2lz3ZFDx5tq8p60/EqbS0HItG5piHuB71RjoA==", - "type": "package", - "path": "runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl/4.3.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", - "runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl.nuspec", - "runtimes/opensuse.42.1-x64/native/System.Security.Cryptography.Native.OpenSsl.so" - ] - }, - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple/4.3.0": { - "sha512": "kVXCuMTrTlxq4XOOMAysuNwsXWpYeboGddNGpIgNSZmv1b6r/s/DPk0fYMB7Q5Qo4bY68o48jt4T4y5BVecbCQ==", - "type": "package", - "path": "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512", - "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple.nuspec", - "runtimes/osx.10.10-x64/native/System.Security.Cryptography.Native.Apple.dylib" - ] - }, - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { - "sha512": "6mU/cVmmHtQiDXhnzUImxIcDL48GbTk+TsptXyJA+MIOG9LRjPoAQC/qBFB7X+UNyK86bmvGwC8t+M66wsYC8w==", - "type": "package", - "path": "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl/4.3.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", - "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl.nuspec", - "runtimes/osx.10.10-x64/native/System.Security.Cryptography.Native.OpenSsl.dylib" - ] - }, - "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { - "sha512": "vjwG0GGcTW/PPg6KVud8F9GLWYuAV1rrw1BKAqY0oh4jcUqg15oYF1+qkGR2x2ZHM4DQnWKQ7cJgYbfncz/lYg==", - "type": "package", - "path": "runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl/4.3.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", - "runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl.nuspec", - "runtimes/rhel.7-x64/native/System.Security.Cryptography.Native.OpenSsl.so" - ] - }, - "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { - "sha512": "7KMFpTkHC/zoExs+PwP8jDCWcrK9H6L7soowT80CUx3e+nxP/AFnq0AQAW5W76z2WYbLAYCRyPfwYFG6zkvQRw==", - "type": "package", - "path": "runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl/4.3.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", - "runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl.nuspec", - "runtimes/ubuntu.14.04-x64/native/System.Security.Cryptography.Native.OpenSsl.so" - ] - }, - "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { - "sha512": "xrlmRCnKZJLHxyyLIqkZjNXqgxnKdZxfItrPkjI+6pkRo5lHX8YvSZlWrSI5AVwLMi4HbNWP7064hcAWeZKp5w==", - "type": "package", - "path": "runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl/4.3.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", - "runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl.nuspec", - "runtimes/ubuntu.16.04-x64/native/System.Security.Cryptography.Native.OpenSsl.so" - ] - }, - "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.2": { - "sha512": "leXiwfiIkW7Gmn7cgnNcdtNAU70SjmKW3jxGj1iKHOvdn0zRWsgv/l2OJUO5zdGdiv2VRFnAsxxhDgMzofPdWg==", - "type": "package", - "path": "runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl/4.3.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", - "runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl.nuspec", - "runtimes/ubuntu.16.10-x64/native/System.Security.Cryptography.Native.OpenSsl.so" - ] - }, - "Sprache/2.3.1": { - "sha512": "Q+mXeiTxiUYG3lKYF6TS82/SyB4F2613Q1yXTMwg4jWGHEEVC3yrzHtNcI4B3qnDI0+eJsezGJ0V+cToUytHWw==", - "type": "package", - "path": "sprache/2.3.1", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/net35/Sprache.dll", - "lib/net35/Sprache.xml", - "lib/net40/Sprache.dll", - "lib/net40/Sprache.xml", - "lib/net45/Sprache.dll", - "lib/net45/Sprache.xml", - "lib/netstandard1.0/Sprache.dll", - "lib/netstandard1.0/Sprache.xml", - "lib/netstandard2.0/Sprache.dll", - "lib/netstandard2.0/Sprache.xml", - "lib/netstandard2.1/Sprache.dll", - "lib/netstandard2.1/Sprache.xml", - "lib/sl5/Sprache.dll", - "lib/sl5/Sprache.xml", - "sprache.2.3.1.nupkg.sha512", - "sprache.nuspec" - ] - }, - "Swashbuckle.AspNetCore/8.1.1": { - "sha512": "HJHexmU0PiYevgTLvKjYkxEtclF2w4O7iTd3Ef3p6KeT0kcYLpkFVgCw6glpGS57h8769anv8G+NFi9Kge+/yw==", - "type": "package", - "path": "swashbuckle.aspnetcore/8.1.1", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "build/Swashbuckle.AspNetCore.props", - "buildMultiTargeting/Swashbuckle.AspNetCore.props", - "docs/package-readme.md", - "swashbuckle.aspnetcore.8.1.1.nupkg.sha512", - "swashbuckle.aspnetcore.nuspec" - ] - }, - "Swashbuckle.AspNetCore.Swagger/8.1.1": { - "sha512": "h+8D5jQtnl6X4f2hJQwf0Khj0SnCQANzirCELjXJ6quJ4C1aNNCvJrAsQ+4fOKAMqJkvW48cKj79ftG+YoGcRg==", - "type": "package", - "path": "swashbuckle.aspnetcore.swagger/8.1.1", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/net8.0/Swashbuckle.AspNetCore.Swagger.dll", - "lib/net8.0/Swashbuckle.AspNetCore.Swagger.pdb", - "lib/net8.0/Swashbuckle.AspNetCore.Swagger.xml", - "lib/net9.0/Swashbuckle.AspNetCore.Swagger.dll", - "lib/net9.0/Swashbuckle.AspNetCore.Swagger.pdb", - "lib/net9.0/Swashbuckle.AspNetCore.Swagger.xml", - "lib/netstandard2.0/Swashbuckle.AspNetCore.Swagger.dll", - "lib/netstandard2.0/Swashbuckle.AspNetCore.Swagger.pdb", - "lib/netstandard2.0/Swashbuckle.AspNetCore.Swagger.xml", - "package-readme.md", - "swashbuckle.aspnetcore.swagger.8.1.1.nupkg.sha512", - "swashbuckle.aspnetcore.swagger.nuspec" - ] - }, - "Swashbuckle.AspNetCore.SwaggerGen/8.1.1": { - "sha512": "2EuPzXSNleOOzYvziERWRLnk1Oz9i0Z1PimaUFy1SasBqeV/rG+eMfwFAMtTaf4W6gvVOzRcUCNRHvpBIIzr+A==", - "type": "package", - "path": "swashbuckle.aspnetcore.swaggergen/8.1.1", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll", - "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.pdb", - "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.xml", - "lib/net9.0/Swashbuckle.AspNetCore.SwaggerGen.dll", - "lib/net9.0/Swashbuckle.AspNetCore.SwaggerGen.pdb", - "lib/net9.0/Swashbuckle.AspNetCore.SwaggerGen.xml", - "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerGen.dll", - "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerGen.pdb", - "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerGen.xml", - "package-readme.md", - "swashbuckle.aspnetcore.swaggergen.8.1.1.nupkg.sha512", - "swashbuckle.aspnetcore.swaggergen.nuspec" - ] - }, - "Swashbuckle.AspNetCore.SwaggerUI/8.1.1": { - "sha512": "GDLX/MpK4oa2nYC1N/zN2UidQTtVKLPF6gkdEmGb0RITEwpJG9Gu8olKqPYnKqVeFn44JZoCS0M2LGRKXP8B/A==", - "type": "package", - "path": "swashbuckle.aspnetcore.swaggerui/8.1.1", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll", - "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.pdb", - "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.xml", - "lib/net9.0/Swashbuckle.AspNetCore.SwaggerUI.dll", - "lib/net9.0/Swashbuckle.AspNetCore.SwaggerUI.pdb", - "lib/net9.0/Swashbuckle.AspNetCore.SwaggerUI.xml", - "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerUI.dll", - "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerUI.pdb", - "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerUI.xml", - "package-readme.md", - "swashbuckle.aspnetcore.swaggerui.8.1.1.nupkg.sha512", - "swashbuckle.aspnetcore.swaggerui.nuspec" - ] - }, - "System.AppContext/4.3.0": { - "sha512": "fKC+rmaLfeIzUhagxY17Q9siv/sPrjjKcfNg1Ic8IlQkZLipo8ljcaZQu4VtI4Jqbzjc2VTjzGLF6WmsRXAEgA==", - "type": "package", - "path": "system.appcontext/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.AppContext.dll", - "lib/net463/System.AppContext.dll", - "lib/netcore50/System.AppContext.dll", - "lib/netstandard1.6/System.AppContext.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.AppContext.dll", - "ref/net463/System.AppContext.dll", - "ref/netstandard/_._", - "ref/netstandard1.3/System.AppContext.dll", - "ref/netstandard1.3/System.AppContext.xml", - "ref/netstandard1.3/de/System.AppContext.xml", - "ref/netstandard1.3/es/System.AppContext.xml", - "ref/netstandard1.3/fr/System.AppContext.xml", - "ref/netstandard1.3/it/System.AppContext.xml", - "ref/netstandard1.3/ja/System.AppContext.xml", - "ref/netstandard1.3/ko/System.AppContext.xml", - "ref/netstandard1.3/ru/System.AppContext.xml", - "ref/netstandard1.3/zh-hans/System.AppContext.xml", - "ref/netstandard1.3/zh-hant/System.AppContext.xml", - "ref/netstandard1.6/System.AppContext.dll", - "ref/netstandard1.6/System.AppContext.xml", - "ref/netstandard1.6/de/System.AppContext.xml", - "ref/netstandard1.6/es/System.AppContext.xml", - "ref/netstandard1.6/fr/System.AppContext.xml", - "ref/netstandard1.6/it/System.AppContext.xml", - "ref/netstandard1.6/ja/System.AppContext.xml", - "ref/netstandard1.6/ko/System.AppContext.xml", - "ref/netstandard1.6/ru/System.AppContext.xml", - "ref/netstandard1.6/zh-hans/System.AppContext.xml", - "ref/netstandard1.6/zh-hant/System.AppContext.xml", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/aot/lib/netcore50/System.AppContext.dll", - "system.appcontext.4.3.0.nupkg.sha512", - "system.appcontext.nuspec" - ] - }, - "System.Buffers/4.3.0": { - "sha512": "ratu44uTIHgeBeI0dE8DWvmXVBSo4u7ozRZZHOMmK/JPpYyo0dAfgSiHlpiObMQ5lEtEyIXA40sKRYg5J6A8uQ==", - "type": "package", - "path": "system.buffers/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/netstandard1.1/.xml", - "lib/netstandard1.1/System.Buffers.dll", - "system.buffers.4.3.0.nupkg.sha512", - "system.buffers.nuspec" - ] - }, - "System.CodeDom/6.0.0": { - "sha512": "CPc6tWO1LAer3IzfZufDBRL+UZQcj5uS207NHALQzP84Vp/z6wF0Aa0YZImOQY8iStY0A2zI/e3ihKNPfUm8XA==", - "type": "package", - "path": "system.codedom/6.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/netcoreapp2.0/System.CodeDom.targets", - "buildTransitive/netcoreapp3.1/_._", - "lib/net461/System.CodeDom.dll", - "lib/net461/System.CodeDom.xml", - "lib/net6.0/System.CodeDom.dll", - "lib/net6.0/System.CodeDom.xml", - "lib/netstandard2.0/System.CodeDom.dll", - "lib/netstandard2.0/System.CodeDom.xml", - "system.codedom.6.0.0.nupkg.sha512", - "system.codedom.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Collections/4.3.0": { - "sha512": "3Dcj85/TBdVpL5Zr+gEEBUuFe2icOnLalmEh9hfck1PTYbbyWuZgh4fmm2ysCLTrqLQw6t3TgTyJ+VLp+Qb+Lw==", - "type": "package", - "path": "system.collections/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Collections.dll", - "ref/netcore50/System.Collections.xml", - "ref/netcore50/de/System.Collections.xml", - "ref/netcore50/es/System.Collections.xml", - "ref/netcore50/fr/System.Collections.xml", - "ref/netcore50/it/System.Collections.xml", - "ref/netcore50/ja/System.Collections.xml", - "ref/netcore50/ko/System.Collections.xml", - "ref/netcore50/ru/System.Collections.xml", - "ref/netcore50/zh-hans/System.Collections.xml", - "ref/netcore50/zh-hant/System.Collections.xml", - "ref/netstandard1.0/System.Collections.dll", - "ref/netstandard1.0/System.Collections.xml", - "ref/netstandard1.0/de/System.Collections.xml", - "ref/netstandard1.0/es/System.Collections.xml", - "ref/netstandard1.0/fr/System.Collections.xml", - "ref/netstandard1.0/it/System.Collections.xml", - "ref/netstandard1.0/ja/System.Collections.xml", - "ref/netstandard1.0/ko/System.Collections.xml", - "ref/netstandard1.0/ru/System.Collections.xml", - "ref/netstandard1.0/zh-hans/System.Collections.xml", - "ref/netstandard1.0/zh-hant/System.Collections.xml", - "ref/netstandard1.3/System.Collections.dll", - "ref/netstandard1.3/System.Collections.xml", - "ref/netstandard1.3/de/System.Collections.xml", - "ref/netstandard1.3/es/System.Collections.xml", - "ref/netstandard1.3/fr/System.Collections.xml", - "ref/netstandard1.3/it/System.Collections.xml", - "ref/netstandard1.3/ja/System.Collections.xml", - "ref/netstandard1.3/ko/System.Collections.xml", - "ref/netstandard1.3/ru/System.Collections.xml", - "ref/netstandard1.3/zh-hans/System.Collections.xml", - "ref/netstandard1.3/zh-hant/System.Collections.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.collections.4.3.0.nupkg.sha512", - "system.collections.nuspec" - ] - }, - "System.Collections.Concurrent/4.3.0": { - "sha512": "ztl69Xp0Y/UXCL+3v3tEU+lIy+bvjKNUmopn1wep/a291pVPK7dxBd6T7WnlQqRog+d1a/hSsgRsmFnIBKTPLQ==", - "type": "package", - "path": "system.collections.concurrent/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/netcore50/System.Collections.Concurrent.dll", - "lib/netstandard1.3/System.Collections.Concurrent.dll", - "lib/portable-net45+win8+wpa81/_._", - "lib/win8/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Collections.Concurrent.dll", - "ref/netcore50/System.Collections.Concurrent.xml", - "ref/netcore50/de/System.Collections.Concurrent.xml", - "ref/netcore50/es/System.Collections.Concurrent.xml", - "ref/netcore50/fr/System.Collections.Concurrent.xml", - "ref/netcore50/it/System.Collections.Concurrent.xml", - "ref/netcore50/ja/System.Collections.Concurrent.xml", - "ref/netcore50/ko/System.Collections.Concurrent.xml", - "ref/netcore50/ru/System.Collections.Concurrent.xml", - "ref/netcore50/zh-hans/System.Collections.Concurrent.xml", - "ref/netcore50/zh-hant/System.Collections.Concurrent.xml", - "ref/netstandard1.1/System.Collections.Concurrent.dll", - "ref/netstandard1.1/System.Collections.Concurrent.xml", - "ref/netstandard1.1/de/System.Collections.Concurrent.xml", - "ref/netstandard1.1/es/System.Collections.Concurrent.xml", - "ref/netstandard1.1/fr/System.Collections.Concurrent.xml", - "ref/netstandard1.1/it/System.Collections.Concurrent.xml", - "ref/netstandard1.1/ja/System.Collections.Concurrent.xml", - "ref/netstandard1.1/ko/System.Collections.Concurrent.xml", - "ref/netstandard1.1/ru/System.Collections.Concurrent.xml", - "ref/netstandard1.1/zh-hans/System.Collections.Concurrent.xml", - "ref/netstandard1.1/zh-hant/System.Collections.Concurrent.xml", - "ref/netstandard1.3/System.Collections.Concurrent.dll", - "ref/netstandard1.3/System.Collections.Concurrent.xml", - "ref/netstandard1.3/de/System.Collections.Concurrent.xml", - "ref/netstandard1.3/es/System.Collections.Concurrent.xml", - "ref/netstandard1.3/fr/System.Collections.Concurrent.xml", - "ref/netstandard1.3/it/System.Collections.Concurrent.xml", - "ref/netstandard1.3/ja/System.Collections.Concurrent.xml", - "ref/netstandard1.3/ko/System.Collections.Concurrent.xml", - "ref/netstandard1.3/ru/System.Collections.Concurrent.xml", - "ref/netstandard1.3/zh-hans/System.Collections.Concurrent.xml", - "ref/netstandard1.3/zh-hant/System.Collections.Concurrent.xml", - "ref/portable-net45+win8+wpa81/_._", - "ref/win8/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.collections.concurrent.4.3.0.nupkg.sha512", - "system.collections.concurrent.nuspec" - ] - }, - "System.Collections.Immutable/7.0.0": { - "sha512": "dQPcs0U1IKnBdRDBkrCTi1FoajSTBzLcVTpjO4MBCMC7f4pDOIPzgBoX8JjG7X6uZRJ8EBxsi8+DR1JuwjnzOQ==", - "type": "package", - "path": "system.collections.immutable/7.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "README.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/System.Collections.Immutable.targets", - "buildTransitive/net462/_._", - "buildTransitive/net6.0/_._", - "buildTransitive/netcoreapp2.0/System.Collections.Immutable.targets", - "lib/net462/System.Collections.Immutable.dll", - "lib/net462/System.Collections.Immutable.xml", - "lib/net6.0/System.Collections.Immutable.dll", - "lib/net6.0/System.Collections.Immutable.xml", - "lib/net7.0/System.Collections.Immutable.dll", - "lib/net7.0/System.Collections.Immutable.xml", - "lib/netstandard2.0/System.Collections.Immutable.dll", - "lib/netstandard2.0/System.Collections.Immutable.xml", - "system.collections.immutable.7.0.0.nupkg.sha512", - "system.collections.immutable.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Composition/7.0.0": { - "sha512": "tRwgcAkDd85O8Aq6zHDANzQaq380cek9lbMg5Qma46u5BZXq/G+XvIYmu+UI+BIIZ9zssXLYrkTykEqxxvhcmg==", - "type": "package", - "path": "system.composition/7.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/System.Composition.targets", - "buildTransitive/net462/_._", - "buildTransitive/net6.0/_._", - "buildTransitive/netcoreapp2.0/System.Composition.targets", - "lib/net461/_._", - "lib/netcoreapp2.0/_._", - "lib/netstandard2.0/_._", - "system.composition.7.0.0.nupkg.sha512", - "system.composition.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Composition.AttributedModel/7.0.0": { - "sha512": "2QzClqjElKxgI1jK1Jztnq44/8DmSuTSGGahXqQ4TdEV0h9s2KikQZIgcEqVzR7OuWDFPGLHIprBJGQEPr8fAQ==", - "type": "package", - "path": "system.composition.attributedmodel/7.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/System.Composition.AttributedModel.targets", - "buildTransitive/net462/_._", - "buildTransitive/net6.0/_._", - "buildTransitive/netcoreapp2.0/System.Composition.AttributedModel.targets", - "lib/net462/System.Composition.AttributedModel.dll", - "lib/net462/System.Composition.AttributedModel.xml", - "lib/net6.0/System.Composition.AttributedModel.dll", - "lib/net6.0/System.Composition.AttributedModel.xml", - "lib/net7.0/System.Composition.AttributedModel.dll", - "lib/net7.0/System.Composition.AttributedModel.xml", - "lib/netstandard2.0/System.Composition.AttributedModel.dll", - "lib/netstandard2.0/System.Composition.AttributedModel.xml", - "system.composition.attributedmodel.7.0.0.nupkg.sha512", - "system.composition.attributedmodel.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Composition.Convention/7.0.0": { - "sha512": "IMhTlpCs4HmlD8B+J8/kWfwX7vrBBOs6xyjSTzBlYSs7W4OET4tlkR/Sg9NG8jkdJH9Mymq0qGdYS1VPqRTBnQ==", - "type": "package", - "path": "system.composition.convention/7.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/System.Composition.Convention.targets", - "buildTransitive/net462/_._", - "buildTransitive/net6.0/_._", - "buildTransitive/netcoreapp2.0/System.Composition.Convention.targets", - "lib/net462/System.Composition.Convention.dll", - "lib/net462/System.Composition.Convention.xml", - "lib/net6.0/System.Composition.Convention.dll", - "lib/net6.0/System.Composition.Convention.xml", - "lib/net7.0/System.Composition.Convention.dll", - "lib/net7.0/System.Composition.Convention.xml", - "lib/netstandard2.0/System.Composition.Convention.dll", - "lib/netstandard2.0/System.Composition.Convention.xml", - "system.composition.convention.7.0.0.nupkg.sha512", - "system.composition.convention.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Composition.Hosting/7.0.0": { - "sha512": "eB6gwN9S+54jCTBJ5bpwMOVerKeUfGGTYCzz3QgDr1P55Gg/Wb27ShfPIhLMjmZ3MoAKu8uUSv6fcCdYJTN7Bg==", - "type": "package", - "path": "system.composition.hosting/7.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/System.Composition.Hosting.targets", - "buildTransitive/net462/_._", - "buildTransitive/net6.0/_._", - "buildTransitive/netcoreapp2.0/System.Composition.Hosting.targets", - "lib/net462/System.Composition.Hosting.dll", - "lib/net462/System.Composition.Hosting.xml", - "lib/net6.0/System.Composition.Hosting.dll", - "lib/net6.0/System.Composition.Hosting.xml", - "lib/net7.0/System.Composition.Hosting.dll", - "lib/net7.0/System.Composition.Hosting.xml", - "lib/netstandard2.0/System.Composition.Hosting.dll", - "lib/netstandard2.0/System.Composition.Hosting.xml", - "system.composition.hosting.7.0.0.nupkg.sha512", - "system.composition.hosting.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Composition.Runtime/7.0.0": { - "sha512": "aZJ1Zr5Txe925rbo4742XifEyW0MIni1eiUebmcrP3HwLXZ3IbXUj4MFMUH/RmnJOAQiS401leg/2Sz1MkApDw==", - "type": "package", - "path": "system.composition.runtime/7.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/System.Composition.Runtime.targets", - "buildTransitive/net462/_._", - "buildTransitive/net6.0/_._", - "buildTransitive/netcoreapp2.0/System.Composition.Runtime.targets", - "lib/net462/System.Composition.Runtime.dll", - "lib/net462/System.Composition.Runtime.xml", - "lib/net6.0/System.Composition.Runtime.dll", - "lib/net6.0/System.Composition.Runtime.xml", - "lib/net7.0/System.Composition.Runtime.dll", - "lib/net7.0/System.Composition.Runtime.xml", - "lib/netstandard2.0/System.Composition.Runtime.dll", - "lib/netstandard2.0/System.Composition.Runtime.xml", - "system.composition.runtime.7.0.0.nupkg.sha512", - "system.composition.runtime.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Composition.TypedParts/7.0.0": { - "sha512": "ZK0KNPfbtxVceTwh+oHNGUOYV2WNOHReX2AXipuvkURC7s/jPwoWfsu3SnDBDgofqbiWr96geofdQ2erm/KTHg==", - "type": "package", - "path": "system.composition.typedparts/7.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/System.Composition.TypedParts.targets", - "buildTransitive/net462/_._", - "buildTransitive/net6.0/_._", - "buildTransitive/netcoreapp2.0/System.Composition.TypedParts.targets", - "lib/net462/System.Composition.TypedParts.dll", - "lib/net462/System.Composition.TypedParts.xml", - "lib/net6.0/System.Composition.TypedParts.dll", - "lib/net6.0/System.Composition.TypedParts.xml", - "lib/net7.0/System.Composition.TypedParts.dll", - "lib/net7.0/System.Composition.TypedParts.xml", - "lib/netstandard2.0/System.Composition.TypedParts.dll", - "lib/netstandard2.0/System.Composition.TypedParts.xml", - "system.composition.typedparts.7.0.0.nupkg.sha512", - "system.composition.typedparts.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Console/4.3.0": { - "sha512": "DHDrIxiqk1h03m6khKWV2X8p/uvN79rgSqpilL6uzpmSfxfU5ng8VcPtW4qsDsQDHiTv6IPV9TmD5M/vElPNLg==", - "type": "package", - "path": "system.console/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.Console.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.Console.dll", - "ref/netstandard1.3/System.Console.dll", - "ref/netstandard1.3/System.Console.xml", - "ref/netstandard1.3/de/System.Console.xml", - "ref/netstandard1.3/es/System.Console.xml", - "ref/netstandard1.3/fr/System.Console.xml", - "ref/netstandard1.3/it/System.Console.xml", - "ref/netstandard1.3/ja/System.Console.xml", - "ref/netstandard1.3/ko/System.Console.xml", - "ref/netstandard1.3/ru/System.Console.xml", - "ref/netstandard1.3/zh-hans/System.Console.xml", - "ref/netstandard1.3/zh-hant/System.Console.xml", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.console.4.3.0.nupkg.sha512", - "system.console.nuspec" - ] - }, - "System.Diagnostics.Debug/4.3.0": { - "sha512": "ZUhUOdqmaG5Jk3Xdb8xi5kIyQYAA4PnTNlHx1mu9ZY3qv4ELIdKbnL/akbGaKi2RnNUWaZsAs31rvzFdewTj2g==", - "type": "package", - "path": "system.diagnostics.debug/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Diagnostics.Debug.dll", - "ref/netcore50/System.Diagnostics.Debug.xml", - "ref/netcore50/de/System.Diagnostics.Debug.xml", - "ref/netcore50/es/System.Diagnostics.Debug.xml", - "ref/netcore50/fr/System.Diagnostics.Debug.xml", - "ref/netcore50/it/System.Diagnostics.Debug.xml", - "ref/netcore50/ja/System.Diagnostics.Debug.xml", - "ref/netcore50/ko/System.Diagnostics.Debug.xml", - "ref/netcore50/ru/System.Diagnostics.Debug.xml", - "ref/netcore50/zh-hans/System.Diagnostics.Debug.xml", - "ref/netcore50/zh-hant/System.Diagnostics.Debug.xml", - "ref/netstandard1.0/System.Diagnostics.Debug.dll", - "ref/netstandard1.0/System.Diagnostics.Debug.xml", - "ref/netstandard1.0/de/System.Diagnostics.Debug.xml", - "ref/netstandard1.0/es/System.Diagnostics.Debug.xml", - "ref/netstandard1.0/fr/System.Diagnostics.Debug.xml", - "ref/netstandard1.0/it/System.Diagnostics.Debug.xml", - "ref/netstandard1.0/ja/System.Diagnostics.Debug.xml", - "ref/netstandard1.0/ko/System.Diagnostics.Debug.xml", - "ref/netstandard1.0/ru/System.Diagnostics.Debug.xml", - "ref/netstandard1.0/zh-hans/System.Diagnostics.Debug.xml", - "ref/netstandard1.0/zh-hant/System.Diagnostics.Debug.xml", - "ref/netstandard1.3/System.Diagnostics.Debug.dll", - "ref/netstandard1.3/System.Diagnostics.Debug.xml", - "ref/netstandard1.3/de/System.Diagnostics.Debug.xml", - "ref/netstandard1.3/es/System.Diagnostics.Debug.xml", - "ref/netstandard1.3/fr/System.Diagnostics.Debug.xml", - "ref/netstandard1.3/it/System.Diagnostics.Debug.xml", - "ref/netstandard1.3/ja/System.Diagnostics.Debug.xml", - "ref/netstandard1.3/ko/System.Diagnostics.Debug.xml", - "ref/netstandard1.3/ru/System.Diagnostics.Debug.xml", - "ref/netstandard1.3/zh-hans/System.Diagnostics.Debug.xml", - "ref/netstandard1.3/zh-hant/System.Diagnostics.Debug.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.diagnostics.debug.4.3.0.nupkg.sha512", - "system.diagnostics.debug.nuspec" - ] - }, - "System.Diagnostics.DiagnosticSource/9.0.5": { - "sha512": "WoI5or8kY2VxFdDmsaRZ5yaYvvb+4MCyy66eXo79Cy1uMa7qXeGIlYmZx7R9Zy5S4xZjmqvkk2V8L6/vDwAAEA==", - "type": "package", - "path": "system.diagnostics.diagnosticsource/9.0.5", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/System.Diagnostics.DiagnosticSource.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/System.Diagnostics.DiagnosticSource.targets", - "lib/net462/System.Diagnostics.DiagnosticSource.dll", - "lib/net462/System.Diagnostics.DiagnosticSource.xml", - "lib/net8.0/System.Diagnostics.DiagnosticSource.dll", - "lib/net8.0/System.Diagnostics.DiagnosticSource.xml", - "lib/net9.0/System.Diagnostics.DiagnosticSource.dll", - "lib/net9.0/System.Diagnostics.DiagnosticSource.xml", - "lib/netstandard2.0/System.Diagnostics.DiagnosticSource.dll", - "lib/netstandard2.0/System.Diagnostics.DiagnosticSource.xml", - "system.diagnostics.diagnosticsource.9.0.5.nupkg.sha512", - "system.diagnostics.diagnosticsource.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Diagnostics.Tools/4.3.0": { - "sha512": "UUvkJfSYJMM6x527dJg2VyWPSRqIVB0Z7dbjHst1zmwTXz5CcXSYJFWRpuigfbO1Lf7yfZiIaEUesfnl/g5EyA==", - "type": "package", - "path": "system.diagnostics.tools/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Diagnostics.Tools.dll", - "ref/netcore50/System.Diagnostics.Tools.xml", - "ref/netcore50/de/System.Diagnostics.Tools.xml", - "ref/netcore50/es/System.Diagnostics.Tools.xml", - "ref/netcore50/fr/System.Diagnostics.Tools.xml", - "ref/netcore50/it/System.Diagnostics.Tools.xml", - "ref/netcore50/ja/System.Diagnostics.Tools.xml", - "ref/netcore50/ko/System.Diagnostics.Tools.xml", - "ref/netcore50/ru/System.Diagnostics.Tools.xml", - "ref/netcore50/zh-hans/System.Diagnostics.Tools.xml", - "ref/netcore50/zh-hant/System.Diagnostics.Tools.xml", - "ref/netstandard1.0/System.Diagnostics.Tools.dll", - "ref/netstandard1.0/System.Diagnostics.Tools.xml", - "ref/netstandard1.0/de/System.Diagnostics.Tools.xml", - "ref/netstandard1.0/es/System.Diagnostics.Tools.xml", - "ref/netstandard1.0/fr/System.Diagnostics.Tools.xml", - "ref/netstandard1.0/it/System.Diagnostics.Tools.xml", - "ref/netstandard1.0/ja/System.Diagnostics.Tools.xml", - "ref/netstandard1.0/ko/System.Diagnostics.Tools.xml", - "ref/netstandard1.0/ru/System.Diagnostics.Tools.xml", - "ref/netstandard1.0/zh-hans/System.Diagnostics.Tools.xml", - "ref/netstandard1.0/zh-hant/System.Diagnostics.Tools.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.diagnostics.tools.4.3.0.nupkg.sha512", - "system.diagnostics.tools.nuspec" - ] - }, - "System.Diagnostics.Tracing/4.3.0": { - "sha512": "rswfv0f/Cqkh78rA5S8eN8Neocz234+emGCtTF3lxPY96F+mmmUen6tbn0glN6PMvlKQb9bPAY5e9u7fgPTkKw==", - "type": "package", - "path": "system.diagnostics.tracing/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/net462/System.Diagnostics.Tracing.dll", - "lib/portable-net45+win8+wpa81/_._", - "lib/win8/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/net462/System.Diagnostics.Tracing.dll", - "ref/netcore50/System.Diagnostics.Tracing.dll", - "ref/netcore50/System.Diagnostics.Tracing.xml", - "ref/netcore50/de/System.Diagnostics.Tracing.xml", - "ref/netcore50/es/System.Diagnostics.Tracing.xml", - "ref/netcore50/fr/System.Diagnostics.Tracing.xml", - "ref/netcore50/it/System.Diagnostics.Tracing.xml", - "ref/netcore50/ja/System.Diagnostics.Tracing.xml", - "ref/netcore50/ko/System.Diagnostics.Tracing.xml", - "ref/netcore50/ru/System.Diagnostics.Tracing.xml", - "ref/netcore50/zh-hans/System.Diagnostics.Tracing.xml", - "ref/netcore50/zh-hant/System.Diagnostics.Tracing.xml", - "ref/netstandard1.1/System.Diagnostics.Tracing.dll", - "ref/netstandard1.1/System.Diagnostics.Tracing.xml", - "ref/netstandard1.1/de/System.Diagnostics.Tracing.xml", - "ref/netstandard1.1/es/System.Diagnostics.Tracing.xml", - "ref/netstandard1.1/fr/System.Diagnostics.Tracing.xml", - "ref/netstandard1.1/it/System.Diagnostics.Tracing.xml", - "ref/netstandard1.1/ja/System.Diagnostics.Tracing.xml", - "ref/netstandard1.1/ko/System.Diagnostics.Tracing.xml", - "ref/netstandard1.1/ru/System.Diagnostics.Tracing.xml", - "ref/netstandard1.1/zh-hans/System.Diagnostics.Tracing.xml", - "ref/netstandard1.1/zh-hant/System.Diagnostics.Tracing.xml", - "ref/netstandard1.2/System.Diagnostics.Tracing.dll", - "ref/netstandard1.2/System.Diagnostics.Tracing.xml", - "ref/netstandard1.2/de/System.Diagnostics.Tracing.xml", - "ref/netstandard1.2/es/System.Diagnostics.Tracing.xml", - "ref/netstandard1.2/fr/System.Diagnostics.Tracing.xml", - "ref/netstandard1.2/it/System.Diagnostics.Tracing.xml", - "ref/netstandard1.2/ja/System.Diagnostics.Tracing.xml", - "ref/netstandard1.2/ko/System.Diagnostics.Tracing.xml", - "ref/netstandard1.2/ru/System.Diagnostics.Tracing.xml", - "ref/netstandard1.2/zh-hans/System.Diagnostics.Tracing.xml", - "ref/netstandard1.2/zh-hant/System.Diagnostics.Tracing.xml", - "ref/netstandard1.3/System.Diagnostics.Tracing.dll", - "ref/netstandard1.3/System.Diagnostics.Tracing.xml", - "ref/netstandard1.3/de/System.Diagnostics.Tracing.xml", - "ref/netstandard1.3/es/System.Diagnostics.Tracing.xml", - "ref/netstandard1.3/fr/System.Diagnostics.Tracing.xml", - "ref/netstandard1.3/it/System.Diagnostics.Tracing.xml", - "ref/netstandard1.3/ja/System.Diagnostics.Tracing.xml", - "ref/netstandard1.3/ko/System.Diagnostics.Tracing.xml", - "ref/netstandard1.3/ru/System.Diagnostics.Tracing.xml", - "ref/netstandard1.3/zh-hans/System.Diagnostics.Tracing.xml", - "ref/netstandard1.3/zh-hant/System.Diagnostics.Tracing.xml", - "ref/netstandard1.5/System.Diagnostics.Tracing.dll", - "ref/netstandard1.5/System.Diagnostics.Tracing.xml", - "ref/netstandard1.5/de/System.Diagnostics.Tracing.xml", - "ref/netstandard1.5/es/System.Diagnostics.Tracing.xml", - "ref/netstandard1.5/fr/System.Diagnostics.Tracing.xml", - "ref/netstandard1.5/it/System.Diagnostics.Tracing.xml", - "ref/netstandard1.5/ja/System.Diagnostics.Tracing.xml", - "ref/netstandard1.5/ko/System.Diagnostics.Tracing.xml", - "ref/netstandard1.5/ru/System.Diagnostics.Tracing.xml", - "ref/netstandard1.5/zh-hans/System.Diagnostics.Tracing.xml", - "ref/netstandard1.5/zh-hant/System.Diagnostics.Tracing.xml", - "ref/portable-net45+win8+wpa81/_._", - "ref/win8/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.diagnostics.tracing.4.3.0.nupkg.sha512", - "system.diagnostics.tracing.nuspec" - ] - }, - "System.Globalization/4.3.0": { - "sha512": "kYdVd2f2PAdFGblzFswE4hkNANJBKRmsfa2X5LG2AcWE1c7/4t0pYae1L8vfZ5xvE2nK/R9JprtToA61OSHWIg==", - "type": "package", - "path": "system.globalization/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Globalization.dll", - "ref/netcore50/System.Globalization.xml", - "ref/netcore50/de/System.Globalization.xml", - "ref/netcore50/es/System.Globalization.xml", - "ref/netcore50/fr/System.Globalization.xml", - "ref/netcore50/it/System.Globalization.xml", - "ref/netcore50/ja/System.Globalization.xml", - "ref/netcore50/ko/System.Globalization.xml", - "ref/netcore50/ru/System.Globalization.xml", - "ref/netcore50/zh-hans/System.Globalization.xml", - "ref/netcore50/zh-hant/System.Globalization.xml", - "ref/netstandard1.0/System.Globalization.dll", - "ref/netstandard1.0/System.Globalization.xml", - "ref/netstandard1.0/de/System.Globalization.xml", - "ref/netstandard1.0/es/System.Globalization.xml", - "ref/netstandard1.0/fr/System.Globalization.xml", - "ref/netstandard1.0/it/System.Globalization.xml", - "ref/netstandard1.0/ja/System.Globalization.xml", - "ref/netstandard1.0/ko/System.Globalization.xml", - "ref/netstandard1.0/ru/System.Globalization.xml", - "ref/netstandard1.0/zh-hans/System.Globalization.xml", - "ref/netstandard1.0/zh-hant/System.Globalization.xml", - "ref/netstandard1.3/System.Globalization.dll", - "ref/netstandard1.3/System.Globalization.xml", - "ref/netstandard1.3/de/System.Globalization.xml", - "ref/netstandard1.3/es/System.Globalization.xml", - "ref/netstandard1.3/fr/System.Globalization.xml", - "ref/netstandard1.3/it/System.Globalization.xml", - "ref/netstandard1.3/ja/System.Globalization.xml", - "ref/netstandard1.3/ko/System.Globalization.xml", - "ref/netstandard1.3/ru/System.Globalization.xml", - "ref/netstandard1.3/zh-hans/System.Globalization.xml", - "ref/netstandard1.3/zh-hant/System.Globalization.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.globalization.4.3.0.nupkg.sha512", - "system.globalization.nuspec" - ] - }, - "System.Globalization.Calendars/4.3.0": { - "sha512": "GUlBtdOWT4LTV3I+9/PJW+56AnnChTaOqqTLFtdmype/L500M2LIyXgmtd9X2P2VOkmJd5c67H5SaC2QcL1bFA==", - "type": "package", - "path": "system.globalization.calendars/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.Globalization.Calendars.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.Globalization.Calendars.dll", - "ref/netstandard1.3/System.Globalization.Calendars.dll", - "ref/netstandard1.3/System.Globalization.Calendars.xml", - "ref/netstandard1.3/de/System.Globalization.Calendars.xml", - "ref/netstandard1.3/es/System.Globalization.Calendars.xml", - "ref/netstandard1.3/fr/System.Globalization.Calendars.xml", - "ref/netstandard1.3/it/System.Globalization.Calendars.xml", - "ref/netstandard1.3/ja/System.Globalization.Calendars.xml", - "ref/netstandard1.3/ko/System.Globalization.Calendars.xml", - "ref/netstandard1.3/ru/System.Globalization.Calendars.xml", - "ref/netstandard1.3/zh-hans/System.Globalization.Calendars.xml", - "ref/netstandard1.3/zh-hant/System.Globalization.Calendars.xml", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.globalization.calendars.4.3.0.nupkg.sha512", - "system.globalization.calendars.nuspec" - ] - }, - "System.Globalization.Extensions/4.3.0": { - "sha512": "FhKmdR6MPG+pxow6wGtNAWdZh7noIOpdD5TwQ3CprzgIE1bBBoim0vbR1+AWsWjQmU7zXHgQo4TWSP6lCeiWcQ==", - "type": "package", - "path": "system.globalization.extensions/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.Globalization.Extensions.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.Globalization.Extensions.dll", - "ref/netstandard1.3/System.Globalization.Extensions.dll", - "ref/netstandard1.3/System.Globalization.Extensions.xml", - "ref/netstandard1.3/de/System.Globalization.Extensions.xml", - "ref/netstandard1.3/es/System.Globalization.Extensions.xml", - "ref/netstandard1.3/fr/System.Globalization.Extensions.xml", - "ref/netstandard1.3/it/System.Globalization.Extensions.xml", - "ref/netstandard1.3/ja/System.Globalization.Extensions.xml", - "ref/netstandard1.3/ko/System.Globalization.Extensions.xml", - "ref/netstandard1.3/ru/System.Globalization.Extensions.xml", - "ref/netstandard1.3/zh-hans/System.Globalization.Extensions.xml", - "ref/netstandard1.3/zh-hant/System.Globalization.Extensions.xml", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/unix/lib/netstandard1.3/System.Globalization.Extensions.dll", - "runtimes/win/lib/net46/System.Globalization.Extensions.dll", - "runtimes/win/lib/netstandard1.3/System.Globalization.Extensions.dll", - "system.globalization.extensions.4.3.0.nupkg.sha512", - "system.globalization.extensions.nuspec" - ] - }, - "System.IdentityModel.Tokens.Jwt/8.10.0": { - "sha512": "UYIcKbMifWTg1CdljV3YSr7X4MKGSjUwLMKNLuSNKOsF65NvDPez0917YSDOr3tXF1GTZKCkfbZwYyPsW2owsQ==", - "type": "package", - "path": "system.identitymodel.tokens.jwt/8.10.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "README.md", - "lib/net462/System.IdentityModel.Tokens.Jwt.dll", - "lib/net462/System.IdentityModel.Tokens.Jwt.xml", - "lib/net472/System.IdentityModel.Tokens.Jwt.dll", - "lib/net472/System.IdentityModel.Tokens.Jwt.xml", - "lib/net6.0/System.IdentityModel.Tokens.Jwt.dll", - "lib/net6.0/System.IdentityModel.Tokens.Jwt.xml", - "lib/net8.0/System.IdentityModel.Tokens.Jwt.dll", - "lib/net8.0/System.IdentityModel.Tokens.Jwt.xml", - "lib/net9.0/System.IdentityModel.Tokens.Jwt.dll", - "lib/net9.0/System.IdentityModel.Tokens.Jwt.xml", - "lib/netstandard2.0/System.IdentityModel.Tokens.Jwt.dll", - "lib/netstandard2.0/System.IdentityModel.Tokens.Jwt.xml", - "system.identitymodel.tokens.jwt.8.10.0.nupkg.sha512", - "system.identitymodel.tokens.jwt.nuspec" - ] - }, - "System.IO/4.3.0": { - "sha512": "3qjaHvxQPDpSOYICjUoTsmoq5u6QJAFRUITgeT/4gqkF1bajbSmb1kwSxEA8AHlofqgcKJcM8udgieRNhaJ5Cg==", - "type": "package", - "path": "system.io/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/net462/System.IO.dll", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/net462/System.IO.dll", - "ref/netcore50/System.IO.dll", - "ref/netcore50/System.IO.xml", - "ref/netcore50/de/System.IO.xml", - "ref/netcore50/es/System.IO.xml", - "ref/netcore50/fr/System.IO.xml", - "ref/netcore50/it/System.IO.xml", - "ref/netcore50/ja/System.IO.xml", - "ref/netcore50/ko/System.IO.xml", - "ref/netcore50/ru/System.IO.xml", - "ref/netcore50/zh-hans/System.IO.xml", - "ref/netcore50/zh-hant/System.IO.xml", - "ref/netstandard1.0/System.IO.dll", - "ref/netstandard1.0/System.IO.xml", - "ref/netstandard1.0/de/System.IO.xml", - "ref/netstandard1.0/es/System.IO.xml", - "ref/netstandard1.0/fr/System.IO.xml", - "ref/netstandard1.0/it/System.IO.xml", - "ref/netstandard1.0/ja/System.IO.xml", - "ref/netstandard1.0/ko/System.IO.xml", - "ref/netstandard1.0/ru/System.IO.xml", - "ref/netstandard1.0/zh-hans/System.IO.xml", - "ref/netstandard1.0/zh-hant/System.IO.xml", - "ref/netstandard1.3/System.IO.dll", - "ref/netstandard1.3/System.IO.xml", - "ref/netstandard1.3/de/System.IO.xml", - "ref/netstandard1.3/es/System.IO.xml", - "ref/netstandard1.3/fr/System.IO.xml", - "ref/netstandard1.3/it/System.IO.xml", - "ref/netstandard1.3/ja/System.IO.xml", - "ref/netstandard1.3/ko/System.IO.xml", - "ref/netstandard1.3/ru/System.IO.xml", - "ref/netstandard1.3/zh-hans/System.IO.xml", - "ref/netstandard1.3/zh-hant/System.IO.xml", - "ref/netstandard1.5/System.IO.dll", - "ref/netstandard1.5/System.IO.xml", - "ref/netstandard1.5/de/System.IO.xml", - "ref/netstandard1.5/es/System.IO.xml", - "ref/netstandard1.5/fr/System.IO.xml", - "ref/netstandard1.5/it/System.IO.xml", - "ref/netstandard1.5/ja/System.IO.xml", - "ref/netstandard1.5/ko/System.IO.xml", - "ref/netstandard1.5/ru/System.IO.xml", - "ref/netstandard1.5/zh-hans/System.IO.xml", - "ref/netstandard1.5/zh-hant/System.IO.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.io.4.3.0.nupkg.sha512", - "system.io.nuspec" - ] - }, - "System.IO.Compression/4.3.0": { - "sha512": "YHndyoiV90iu4iKG115ibkhrG+S3jBm8Ap9OwoUAzO5oPDAWcr0SFwQFm0HjM8WkEZWo0zvLTyLmbvTkW1bXgg==", - "type": "package", - "path": "system.io.compression/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/net46/System.IO.Compression.dll", - "lib/portable-net45+win8+wpa81/_._", - "lib/win8/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/net46/System.IO.Compression.dll", - "ref/netcore50/System.IO.Compression.dll", - "ref/netcore50/System.IO.Compression.xml", - "ref/netcore50/de/System.IO.Compression.xml", - "ref/netcore50/es/System.IO.Compression.xml", - "ref/netcore50/fr/System.IO.Compression.xml", - "ref/netcore50/it/System.IO.Compression.xml", - "ref/netcore50/ja/System.IO.Compression.xml", - "ref/netcore50/ko/System.IO.Compression.xml", - "ref/netcore50/ru/System.IO.Compression.xml", - "ref/netcore50/zh-hans/System.IO.Compression.xml", - "ref/netcore50/zh-hant/System.IO.Compression.xml", - "ref/netstandard1.1/System.IO.Compression.dll", - "ref/netstandard1.1/System.IO.Compression.xml", - "ref/netstandard1.1/de/System.IO.Compression.xml", - "ref/netstandard1.1/es/System.IO.Compression.xml", - "ref/netstandard1.1/fr/System.IO.Compression.xml", - "ref/netstandard1.1/it/System.IO.Compression.xml", - "ref/netstandard1.1/ja/System.IO.Compression.xml", - "ref/netstandard1.1/ko/System.IO.Compression.xml", - "ref/netstandard1.1/ru/System.IO.Compression.xml", - "ref/netstandard1.1/zh-hans/System.IO.Compression.xml", - "ref/netstandard1.1/zh-hant/System.IO.Compression.xml", - "ref/netstandard1.3/System.IO.Compression.dll", - "ref/netstandard1.3/System.IO.Compression.xml", - "ref/netstandard1.3/de/System.IO.Compression.xml", - "ref/netstandard1.3/es/System.IO.Compression.xml", - "ref/netstandard1.3/fr/System.IO.Compression.xml", - "ref/netstandard1.3/it/System.IO.Compression.xml", - "ref/netstandard1.3/ja/System.IO.Compression.xml", - "ref/netstandard1.3/ko/System.IO.Compression.xml", - "ref/netstandard1.3/ru/System.IO.Compression.xml", - "ref/netstandard1.3/zh-hans/System.IO.Compression.xml", - "ref/netstandard1.3/zh-hant/System.IO.Compression.xml", - "ref/portable-net45+win8+wpa81/_._", - "ref/win8/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/unix/lib/netstandard1.3/System.IO.Compression.dll", - "runtimes/win/lib/net46/System.IO.Compression.dll", - "runtimes/win/lib/netstandard1.3/System.IO.Compression.dll", - "system.io.compression.4.3.0.nupkg.sha512", - "system.io.compression.nuspec" - ] - }, - "System.IO.Compression.ZipFile/4.3.0": { - "sha512": "G4HwjEsgIwy3JFBduZ9quBkAu+eUwjIdJleuNSgmUojbH6O3mlvEIme+GHx/cLlTAPcrnnL7GqvB9pTlWRfhOg==", - "type": "package", - "path": "system.io.compression.zipfile/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.IO.Compression.ZipFile.dll", - "lib/netstandard1.3/System.IO.Compression.ZipFile.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.IO.Compression.ZipFile.dll", - "ref/netstandard1.3/System.IO.Compression.ZipFile.dll", - "ref/netstandard1.3/System.IO.Compression.ZipFile.xml", - "ref/netstandard1.3/de/System.IO.Compression.ZipFile.xml", - "ref/netstandard1.3/es/System.IO.Compression.ZipFile.xml", - "ref/netstandard1.3/fr/System.IO.Compression.ZipFile.xml", - "ref/netstandard1.3/it/System.IO.Compression.ZipFile.xml", - "ref/netstandard1.3/ja/System.IO.Compression.ZipFile.xml", - "ref/netstandard1.3/ko/System.IO.Compression.ZipFile.xml", - "ref/netstandard1.3/ru/System.IO.Compression.ZipFile.xml", - "ref/netstandard1.3/zh-hans/System.IO.Compression.ZipFile.xml", - "ref/netstandard1.3/zh-hant/System.IO.Compression.ZipFile.xml", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.io.compression.zipfile.4.3.0.nupkg.sha512", - "system.io.compression.zipfile.nuspec" - ] - }, - "System.IO.FileSystem/4.3.0": { - "sha512": "3wEMARTnuio+ulnvi+hkRNROYwa1kylvYahhcLk4HSoVdl+xxTFVeVlYOfLwrDPImGls0mDqbMhrza8qnWPTdA==", - "type": "package", - "path": "system.io.filesystem/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.IO.FileSystem.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.IO.FileSystem.dll", - "ref/netstandard1.3/System.IO.FileSystem.dll", - "ref/netstandard1.3/System.IO.FileSystem.xml", - "ref/netstandard1.3/de/System.IO.FileSystem.xml", - "ref/netstandard1.3/es/System.IO.FileSystem.xml", - "ref/netstandard1.3/fr/System.IO.FileSystem.xml", - "ref/netstandard1.3/it/System.IO.FileSystem.xml", - "ref/netstandard1.3/ja/System.IO.FileSystem.xml", - "ref/netstandard1.3/ko/System.IO.FileSystem.xml", - "ref/netstandard1.3/ru/System.IO.FileSystem.xml", - "ref/netstandard1.3/zh-hans/System.IO.FileSystem.xml", - "ref/netstandard1.3/zh-hant/System.IO.FileSystem.xml", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.io.filesystem.4.3.0.nupkg.sha512", - "system.io.filesystem.nuspec" - ] - }, - "System.IO.FileSystem.Primitives/4.3.0": { - "sha512": "6QOb2XFLch7bEc4lIcJH49nJN2HV+OC3fHDgsLVsBVBk3Y4hFAnOBGzJ2lUu7CyDDFo9IBWkSsnbkT6IBwwiMw==", - "type": "package", - "path": "system.io.filesystem.primitives/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.IO.FileSystem.Primitives.dll", - "lib/netstandard1.3/System.IO.FileSystem.Primitives.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.IO.FileSystem.Primitives.dll", - "ref/netstandard1.3/System.IO.FileSystem.Primitives.dll", - "ref/netstandard1.3/System.IO.FileSystem.Primitives.xml", - "ref/netstandard1.3/de/System.IO.FileSystem.Primitives.xml", - "ref/netstandard1.3/es/System.IO.FileSystem.Primitives.xml", - "ref/netstandard1.3/fr/System.IO.FileSystem.Primitives.xml", - "ref/netstandard1.3/it/System.IO.FileSystem.Primitives.xml", - "ref/netstandard1.3/ja/System.IO.FileSystem.Primitives.xml", - "ref/netstandard1.3/ko/System.IO.FileSystem.Primitives.xml", - "ref/netstandard1.3/ru/System.IO.FileSystem.Primitives.xml", - "ref/netstandard1.3/zh-hans/System.IO.FileSystem.Primitives.xml", - "ref/netstandard1.3/zh-hant/System.IO.FileSystem.Primitives.xml", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.io.filesystem.primitives.4.3.0.nupkg.sha512", - "system.io.filesystem.primitives.nuspec" - ] - }, - "System.IO.Pipelines/9.0.4": { - "sha512": "luF2Xba+lTe2GOoNQdZLe8q7K6s7nSpWZl9jIwWNMszN4/Yv0lmxk9HISgMmwdyZ83i3UhAGXaSY9o6IJBUuuA==", - "type": "package", - "path": "system.io.pipelines/9.0.4", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/System.IO.Pipelines.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/System.IO.Pipelines.targets", - "lib/net462/System.IO.Pipelines.dll", - "lib/net462/System.IO.Pipelines.xml", - "lib/net8.0/System.IO.Pipelines.dll", - "lib/net8.0/System.IO.Pipelines.xml", - "lib/net9.0/System.IO.Pipelines.dll", - "lib/net9.0/System.IO.Pipelines.xml", - "lib/netstandard2.0/System.IO.Pipelines.dll", - "lib/netstandard2.0/System.IO.Pipelines.xml", - "system.io.pipelines.9.0.4.nupkg.sha512", - "system.io.pipelines.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Linq/4.3.0": { - "sha512": "5DbqIUpsDp0dFftytzuMmc0oeMdQwjcP/EWxsksIz/w1TcFRkZ3yKKz0PqiYFMmEwPSWw+qNVqD7PJ889JzHbw==", - "type": "package", - "path": "system.linq/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/net463/System.Linq.dll", - "lib/netcore50/System.Linq.dll", - "lib/netstandard1.6/System.Linq.dll", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/net463/System.Linq.dll", - "ref/netcore50/System.Linq.dll", - "ref/netcore50/System.Linq.xml", - "ref/netcore50/de/System.Linq.xml", - "ref/netcore50/es/System.Linq.xml", - "ref/netcore50/fr/System.Linq.xml", - "ref/netcore50/it/System.Linq.xml", - "ref/netcore50/ja/System.Linq.xml", - "ref/netcore50/ko/System.Linq.xml", - "ref/netcore50/ru/System.Linq.xml", - "ref/netcore50/zh-hans/System.Linq.xml", - "ref/netcore50/zh-hant/System.Linq.xml", - "ref/netstandard1.0/System.Linq.dll", - "ref/netstandard1.0/System.Linq.xml", - "ref/netstandard1.0/de/System.Linq.xml", - "ref/netstandard1.0/es/System.Linq.xml", - "ref/netstandard1.0/fr/System.Linq.xml", - "ref/netstandard1.0/it/System.Linq.xml", - "ref/netstandard1.0/ja/System.Linq.xml", - "ref/netstandard1.0/ko/System.Linq.xml", - "ref/netstandard1.0/ru/System.Linq.xml", - "ref/netstandard1.0/zh-hans/System.Linq.xml", - "ref/netstandard1.0/zh-hant/System.Linq.xml", - "ref/netstandard1.6/System.Linq.dll", - "ref/netstandard1.6/System.Linq.xml", - "ref/netstandard1.6/de/System.Linq.xml", - "ref/netstandard1.6/es/System.Linq.xml", - "ref/netstandard1.6/fr/System.Linq.xml", - "ref/netstandard1.6/it/System.Linq.xml", - "ref/netstandard1.6/ja/System.Linq.xml", - "ref/netstandard1.6/ko/System.Linq.xml", - "ref/netstandard1.6/ru/System.Linq.xml", - "ref/netstandard1.6/zh-hans/System.Linq.xml", - "ref/netstandard1.6/zh-hant/System.Linq.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.linq.4.3.0.nupkg.sha512", - "system.linq.nuspec" - ] - }, - "System.Linq.Expressions/4.3.0": { - "sha512": "PGKkrd2khG4CnlyJwxwwaWWiSiWFNBGlgXvJpeO0xCXrZ89ODrQ6tjEWS/kOqZ8GwEOUATtKtzp1eRgmYNfclg==", - "type": "package", - "path": "system.linq.expressions/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/net463/System.Linq.Expressions.dll", - "lib/netcore50/System.Linq.Expressions.dll", - "lib/netstandard1.6/System.Linq.Expressions.dll", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/net463/System.Linq.Expressions.dll", - "ref/netcore50/System.Linq.Expressions.dll", - "ref/netcore50/System.Linq.Expressions.xml", - "ref/netcore50/de/System.Linq.Expressions.xml", - "ref/netcore50/es/System.Linq.Expressions.xml", - "ref/netcore50/fr/System.Linq.Expressions.xml", - "ref/netcore50/it/System.Linq.Expressions.xml", - "ref/netcore50/ja/System.Linq.Expressions.xml", - "ref/netcore50/ko/System.Linq.Expressions.xml", - "ref/netcore50/ru/System.Linq.Expressions.xml", - "ref/netcore50/zh-hans/System.Linq.Expressions.xml", - "ref/netcore50/zh-hant/System.Linq.Expressions.xml", - "ref/netstandard1.0/System.Linq.Expressions.dll", - "ref/netstandard1.0/System.Linq.Expressions.xml", - "ref/netstandard1.0/de/System.Linq.Expressions.xml", - "ref/netstandard1.0/es/System.Linq.Expressions.xml", - "ref/netstandard1.0/fr/System.Linq.Expressions.xml", - "ref/netstandard1.0/it/System.Linq.Expressions.xml", - "ref/netstandard1.0/ja/System.Linq.Expressions.xml", - "ref/netstandard1.0/ko/System.Linq.Expressions.xml", - "ref/netstandard1.0/ru/System.Linq.Expressions.xml", - "ref/netstandard1.0/zh-hans/System.Linq.Expressions.xml", - "ref/netstandard1.0/zh-hant/System.Linq.Expressions.xml", - "ref/netstandard1.3/System.Linq.Expressions.dll", - "ref/netstandard1.3/System.Linq.Expressions.xml", - "ref/netstandard1.3/de/System.Linq.Expressions.xml", - "ref/netstandard1.3/es/System.Linq.Expressions.xml", - "ref/netstandard1.3/fr/System.Linq.Expressions.xml", - "ref/netstandard1.3/it/System.Linq.Expressions.xml", - "ref/netstandard1.3/ja/System.Linq.Expressions.xml", - "ref/netstandard1.3/ko/System.Linq.Expressions.xml", - "ref/netstandard1.3/ru/System.Linq.Expressions.xml", - "ref/netstandard1.3/zh-hans/System.Linq.Expressions.xml", - "ref/netstandard1.3/zh-hant/System.Linq.Expressions.xml", - "ref/netstandard1.6/System.Linq.Expressions.dll", - "ref/netstandard1.6/System.Linq.Expressions.xml", - "ref/netstandard1.6/de/System.Linq.Expressions.xml", - "ref/netstandard1.6/es/System.Linq.Expressions.xml", - "ref/netstandard1.6/fr/System.Linq.Expressions.xml", - "ref/netstandard1.6/it/System.Linq.Expressions.xml", - "ref/netstandard1.6/ja/System.Linq.Expressions.xml", - "ref/netstandard1.6/ko/System.Linq.Expressions.xml", - "ref/netstandard1.6/ru/System.Linq.Expressions.xml", - "ref/netstandard1.6/zh-hans/System.Linq.Expressions.xml", - "ref/netstandard1.6/zh-hant/System.Linq.Expressions.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/aot/lib/netcore50/System.Linq.Expressions.dll", - "system.linq.expressions.4.3.0.nupkg.sha512", - "system.linq.expressions.nuspec" - ] - }, - "System.Net.Http/4.3.4": { - "sha512": "aOa2d51SEbmM+H+Csw7yJOuNZoHkrP2XnAurye5HWYgGVVU54YZDvsLUYRv6h18X3sPnjNCANmN7ZhIPiqMcjA==", - "type": "package", - "path": "system.net.http/4.3.4", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/Xamarinmac20/_._", - "lib/monoandroid10/_._", - "lib/monotouch10/_._", - "lib/net45/_._", - "lib/net46/System.Net.Http.dll", - "lib/portable-net45+win8+wpa81/_._", - "lib/win8/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/Xamarinmac20/_._", - "ref/monoandroid10/_._", - "ref/monotouch10/_._", - "ref/net45/_._", - "ref/net46/System.Net.Http.dll", - "ref/netcore50/System.Net.Http.dll", - "ref/netstandard1.1/System.Net.Http.dll", - "ref/netstandard1.3/System.Net.Http.dll", - "ref/portable-net45+win8+wpa81/_._", - "ref/win8/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/unix/lib/netstandard1.6/System.Net.Http.dll", - "runtimes/win/lib/net46/System.Net.Http.dll", - "runtimes/win/lib/netcore50/System.Net.Http.dll", - "runtimes/win/lib/netstandard1.3/System.Net.Http.dll", - "system.net.http.4.3.4.nupkg.sha512", - "system.net.http.nuspec" - ] - }, - "System.Net.Primitives/4.3.0": { - "sha512": "qOu+hDwFwoZPbzPvwut2qATe3ygjeQBDQj91xlsaqGFQUI5i4ZnZb8yyQuLGpDGivEPIt8EJkd1BVzVoP31FXA==", - "type": "package", - "path": "system.net.primitives/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Net.Primitives.dll", - "ref/netcore50/System.Net.Primitives.xml", - "ref/netcore50/de/System.Net.Primitives.xml", - "ref/netcore50/es/System.Net.Primitives.xml", - "ref/netcore50/fr/System.Net.Primitives.xml", - "ref/netcore50/it/System.Net.Primitives.xml", - "ref/netcore50/ja/System.Net.Primitives.xml", - "ref/netcore50/ko/System.Net.Primitives.xml", - "ref/netcore50/ru/System.Net.Primitives.xml", - "ref/netcore50/zh-hans/System.Net.Primitives.xml", - "ref/netcore50/zh-hant/System.Net.Primitives.xml", - "ref/netstandard1.0/System.Net.Primitives.dll", - "ref/netstandard1.0/System.Net.Primitives.xml", - "ref/netstandard1.0/de/System.Net.Primitives.xml", - "ref/netstandard1.0/es/System.Net.Primitives.xml", - "ref/netstandard1.0/fr/System.Net.Primitives.xml", - "ref/netstandard1.0/it/System.Net.Primitives.xml", - "ref/netstandard1.0/ja/System.Net.Primitives.xml", - "ref/netstandard1.0/ko/System.Net.Primitives.xml", - "ref/netstandard1.0/ru/System.Net.Primitives.xml", - "ref/netstandard1.0/zh-hans/System.Net.Primitives.xml", - "ref/netstandard1.0/zh-hant/System.Net.Primitives.xml", - "ref/netstandard1.1/System.Net.Primitives.dll", - "ref/netstandard1.1/System.Net.Primitives.xml", - "ref/netstandard1.1/de/System.Net.Primitives.xml", - "ref/netstandard1.1/es/System.Net.Primitives.xml", - "ref/netstandard1.1/fr/System.Net.Primitives.xml", - "ref/netstandard1.1/it/System.Net.Primitives.xml", - "ref/netstandard1.1/ja/System.Net.Primitives.xml", - "ref/netstandard1.1/ko/System.Net.Primitives.xml", - "ref/netstandard1.1/ru/System.Net.Primitives.xml", - "ref/netstandard1.1/zh-hans/System.Net.Primitives.xml", - "ref/netstandard1.1/zh-hant/System.Net.Primitives.xml", - "ref/netstandard1.3/System.Net.Primitives.dll", - "ref/netstandard1.3/System.Net.Primitives.xml", - "ref/netstandard1.3/de/System.Net.Primitives.xml", - "ref/netstandard1.3/es/System.Net.Primitives.xml", - "ref/netstandard1.3/fr/System.Net.Primitives.xml", - "ref/netstandard1.3/it/System.Net.Primitives.xml", - "ref/netstandard1.3/ja/System.Net.Primitives.xml", - "ref/netstandard1.3/ko/System.Net.Primitives.xml", - "ref/netstandard1.3/ru/System.Net.Primitives.xml", - "ref/netstandard1.3/zh-hans/System.Net.Primitives.xml", - "ref/netstandard1.3/zh-hant/System.Net.Primitives.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.net.primitives.4.3.0.nupkg.sha512", - "system.net.primitives.nuspec" - ] - }, - "System.Net.Sockets/4.3.0": { - "sha512": "m6icV6TqQOAdgt5N/9I5KNpjom/5NFtkmGseEH+AK/hny8XrytLH3+b5M8zL/Ycg3fhIocFpUMyl/wpFnVRvdw==", - "type": "package", - "path": "system.net.sockets/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.Net.Sockets.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.Net.Sockets.dll", - "ref/netstandard1.3/System.Net.Sockets.dll", - "ref/netstandard1.3/System.Net.Sockets.xml", - "ref/netstandard1.3/de/System.Net.Sockets.xml", - "ref/netstandard1.3/es/System.Net.Sockets.xml", - "ref/netstandard1.3/fr/System.Net.Sockets.xml", - "ref/netstandard1.3/it/System.Net.Sockets.xml", - "ref/netstandard1.3/ja/System.Net.Sockets.xml", - "ref/netstandard1.3/ko/System.Net.Sockets.xml", - "ref/netstandard1.3/ru/System.Net.Sockets.xml", - "ref/netstandard1.3/zh-hans/System.Net.Sockets.xml", - "ref/netstandard1.3/zh-hant/System.Net.Sockets.xml", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.net.sockets.4.3.0.nupkg.sha512", - "system.net.sockets.nuspec" - ] - }, - "System.ObjectModel/4.3.0": { - "sha512": "bdX+80eKv9bN6K4N+d77OankKHGn6CH711a6fcOpMQu2Fckp/Ft4L/kW9WznHpyR0NRAvJutzOMHNNlBGvxQzQ==", - "type": "package", - "path": "system.objectmodel/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/netcore50/System.ObjectModel.dll", - "lib/netstandard1.3/System.ObjectModel.dll", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.ObjectModel.dll", - "ref/netcore50/System.ObjectModel.xml", - "ref/netcore50/de/System.ObjectModel.xml", - "ref/netcore50/es/System.ObjectModel.xml", - "ref/netcore50/fr/System.ObjectModel.xml", - "ref/netcore50/it/System.ObjectModel.xml", - "ref/netcore50/ja/System.ObjectModel.xml", - "ref/netcore50/ko/System.ObjectModel.xml", - "ref/netcore50/ru/System.ObjectModel.xml", - "ref/netcore50/zh-hans/System.ObjectModel.xml", - "ref/netcore50/zh-hant/System.ObjectModel.xml", - "ref/netstandard1.0/System.ObjectModel.dll", - "ref/netstandard1.0/System.ObjectModel.xml", - "ref/netstandard1.0/de/System.ObjectModel.xml", - "ref/netstandard1.0/es/System.ObjectModel.xml", - "ref/netstandard1.0/fr/System.ObjectModel.xml", - "ref/netstandard1.0/it/System.ObjectModel.xml", - "ref/netstandard1.0/ja/System.ObjectModel.xml", - "ref/netstandard1.0/ko/System.ObjectModel.xml", - "ref/netstandard1.0/ru/System.ObjectModel.xml", - "ref/netstandard1.0/zh-hans/System.ObjectModel.xml", - "ref/netstandard1.0/zh-hant/System.ObjectModel.xml", - "ref/netstandard1.3/System.ObjectModel.dll", - "ref/netstandard1.3/System.ObjectModel.xml", - "ref/netstandard1.3/de/System.ObjectModel.xml", - "ref/netstandard1.3/es/System.ObjectModel.xml", - "ref/netstandard1.3/fr/System.ObjectModel.xml", - "ref/netstandard1.3/it/System.ObjectModel.xml", - "ref/netstandard1.3/ja/System.ObjectModel.xml", - "ref/netstandard1.3/ko/System.ObjectModel.xml", - "ref/netstandard1.3/ru/System.ObjectModel.xml", - "ref/netstandard1.3/zh-hans/System.ObjectModel.xml", - "ref/netstandard1.3/zh-hant/System.ObjectModel.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.objectmodel.4.3.0.nupkg.sha512", - "system.objectmodel.nuspec" - ] - }, - "System.Private.Uri/4.3.2": { - "sha512": "o1+7RJnu3Ik3PazR7Z7tJhjPdE000Eq2KGLLWhqJJKXj04wrS8lwb1OFtDF9jzXXADhUuZNJZlPc98uwwqmpFA==", - "type": "package", - "path": "system.private.uri/4.3.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "ref/netstandard/_._", - "system.private.uri.4.3.2.nupkg.sha512", - "system.private.uri.nuspec" - ] - }, - "System.Reflection/4.3.0": { - "sha512": "KMiAFoW7MfJGa9nDFNcfu+FpEdiHpWgTcS2HdMpDvt9saK3y/G4GwprPyzqjFH9NTaGPQeWNHU+iDlDILj96aQ==", - "type": "package", - "path": "system.reflection/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/net462/System.Reflection.dll", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/net462/System.Reflection.dll", - "ref/netcore50/System.Reflection.dll", - "ref/netcore50/System.Reflection.xml", - "ref/netcore50/de/System.Reflection.xml", - "ref/netcore50/es/System.Reflection.xml", - "ref/netcore50/fr/System.Reflection.xml", - "ref/netcore50/it/System.Reflection.xml", - "ref/netcore50/ja/System.Reflection.xml", - "ref/netcore50/ko/System.Reflection.xml", - "ref/netcore50/ru/System.Reflection.xml", - "ref/netcore50/zh-hans/System.Reflection.xml", - "ref/netcore50/zh-hant/System.Reflection.xml", - "ref/netstandard1.0/System.Reflection.dll", - "ref/netstandard1.0/System.Reflection.xml", - "ref/netstandard1.0/de/System.Reflection.xml", - "ref/netstandard1.0/es/System.Reflection.xml", - "ref/netstandard1.0/fr/System.Reflection.xml", - "ref/netstandard1.0/it/System.Reflection.xml", - "ref/netstandard1.0/ja/System.Reflection.xml", - "ref/netstandard1.0/ko/System.Reflection.xml", - "ref/netstandard1.0/ru/System.Reflection.xml", - "ref/netstandard1.0/zh-hans/System.Reflection.xml", - "ref/netstandard1.0/zh-hant/System.Reflection.xml", - "ref/netstandard1.3/System.Reflection.dll", - "ref/netstandard1.3/System.Reflection.xml", - "ref/netstandard1.3/de/System.Reflection.xml", - "ref/netstandard1.3/es/System.Reflection.xml", - "ref/netstandard1.3/fr/System.Reflection.xml", - "ref/netstandard1.3/it/System.Reflection.xml", - "ref/netstandard1.3/ja/System.Reflection.xml", - "ref/netstandard1.3/ko/System.Reflection.xml", - "ref/netstandard1.3/ru/System.Reflection.xml", - "ref/netstandard1.3/zh-hans/System.Reflection.xml", - "ref/netstandard1.3/zh-hant/System.Reflection.xml", - "ref/netstandard1.5/System.Reflection.dll", - "ref/netstandard1.5/System.Reflection.xml", - "ref/netstandard1.5/de/System.Reflection.xml", - "ref/netstandard1.5/es/System.Reflection.xml", - "ref/netstandard1.5/fr/System.Reflection.xml", - "ref/netstandard1.5/it/System.Reflection.xml", - "ref/netstandard1.5/ja/System.Reflection.xml", - "ref/netstandard1.5/ko/System.Reflection.xml", - "ref/netstandard1.5/ru/System.Reflection.xml", - "ref/netstandard1.5/zh-hans/System.Reflection.xml", - "ref/netstandard1.5/zh-hant/System.Reflection.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.reflection.4.3.0.nupkg.sha512", - "system.reflection.nuspec" - ] - }, - "System.Reflection.Emit/4.3.0": { - "sha512": "228FG0jLcIwTVJyz8CLFKueVqQK36ANazUManGaJHkO0icjiIypKW7YLWLIWahyIkdh5M7mV2dJepllLyA1SKg==", - "type": "package", - "path": "system.reflection.emit/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/monotouch10/_._", - "lib/net45/_._", - "lib/netcore50/System.Reflection.Emit.dll", - "lib/netstandard1.3/System.Reflection.Emit.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/net45/_._", - "ref/netstandard1.1/System.Reflection.Emit.dll", - "ref/netstandard1.1/System.Reflection.Emit.xml", - "ref/netstandard1.1/de/System.Reflection.Emit.xml", - "ref/netstandard1.1/es/System.Reflection.Emit.xml", - "ref/netstandard1.1/fr/System.Reflection.Emit.xml", - "ref/netstandard1.1/it/System.Reflection.Emit.xml", - "ref/netstandard1.1/ja/System.Reflection.Emit.xml", - "ref/netstandard1.1/ko/System.Reflection.Emit.xml", - "ref/netstandard1.1/ru/System.Reflection.Emit.xml", - "ref/netstandard1.1/zh-hans/System.Reflection.Emit.xml", - "ref/netstandard1.1/zh-hant/System.Reflection.Emit.xml", - "ref/xamarinmac20/_._", - "system.reflection.emit.4.3.0.nupkg.sha512", - "system.reflection.emit.nuspec" - ] - }, - "System.Reflection.Emit.ILGeneration/4.3.0": { - "sha512": "59tBslAk9733NXLrUJrwNZEzbMAcu8k344OYo+wfSVygcgZ9lgBdGIzH/nrg3LYhXceynyvTc8t5/GD4Ri0/ng==", - "type": "package", - "path": "system.reflection.emit.ilgeneration/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/netcore50/System.Reflection.Emit.ILGeneration.dll", - "lib/netstandard1.3/System.Reflection.Emit.ILGeneration.dll", - "lib/portable-net45+wp8/_._", - "lib/wp80/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netstandard1.0/System.Reflection.Emit.ILGeneration.dll", - "ref/netstandard1.0/System.Reflection.Emit.ILGeneration.xml", - "ref/netstandard1.0/de/System.Reflection.Emit.ILGeneration.xml", - "ref/netstandard1.0/es/System.Reflection.Emit.ILGeneration.xml", - "ref/netstandard1.0/fr/System.Reflection.Emit.ILGeneration.xml", - "ref/netstandard1.0/it/System.Reflection.Emit.ILGeneration.xml", - "ref/netstandard1.0/ja/System.Reflection.Emit.ILGeneration.xml", - "ref/netstandard1.0/ko/System.Reflection.Emit.ILGeneration.xml", - "ref/netstandard1.0/ru/System.Reflection.Emit.ILGeneration.xml", - "ref/netstandard1.0/zh-hans/System.Reflection.Emit.ILGeneration.xml", - "ref/netstandard1.0/zh-hant/System.Reflection.Emit.ILGeneration.xml", - "ref/portable-net45+wp8/_._", - "ref/wp80/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/aot/lib/netcore50/_._", - "system.reflection.emit.ilgeneration.4.3.0.nupkg.sha512", - "system.reflection.emit.ilgeneration.nuspec" - ] - }, - "System.Reflection.Emit.Lightweight/4.3.0": { - "sha512": "oadVHGSMsTmZsAF864QYN1t1QzZjIcuKU3l2S9cZOwDdDueNTrqq1yRj7koFfIGEnKpt6NjpL3rOzRhs4ryOgA==", - "type": "package", - "path": "system.reflection.emit.lightweight/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/netcore50/System.Reflection.Emit.Lightweight.dll", - "lib/netstandard1.3/System.Reflection.Emit.Lightweight.dll", - "lib/portable-net45+wp8/_._", - "lib/wp80/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netstandard1.0/System.Reflection.Emit.Lightweight.dll", - "ref/netstandard1.0/System.Reflection.Emit.Lightweight.xml", - "ref/netstandard1.0/de/System.Reflection.Emit.Lightweight.xml", - "ref/netstandard1.0/es/System.Reflection.Emit.Lightweight.xml", - "ref/netstandard1.0/fr/System.Reflection.Emit.Lightweight.xml", - "ref/netstandard1.0/it/System.Reflection.Emit.Lightweight.xml", - "ref/netstandard1.0/ja/System.Reflection.Emit.Lightweight.xml", - "ref/netstandard1.0/ko/System.Reflection.Emit.Lightweight.xml", - "ref/netstandard1.0/ru/System.Reflection.Emit.Lightweight.xml", - "ref/netstandard1.0/zh-hans/System.Reflection.Emit.Lightweight.xml", - "ref/netstandard1.0/zh-hant/System.Reflection.Emit.Lightweight.xml", - "ref/portable-net45+wp8/_._", - "ref/wp80/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/aot/lib/netcore50/_._", - "system.reflection.emit.lightweight.4.3.0.nupkg.sha512", - "system.reflection.emit.lightweight.nuspec" - ] - }, - "System.Reflection.Extensions/4.3.0": { - "sha512": "rJkrJD3kBI5B712aRu4DpSIiHRtr6QlfZSQsb0hYHrDCZORXCFjQfoipo2LaMUHoT9i1B7j7MnfaEKWDFmFQNQ==", - "type": "package", - "path": "system.reflection.extensions/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Reflection.Extensions.dll", - "ref/netcore50/System.Reflection.Extensions.xml", - "ref/netcore50/de/System.Reflection.Extensions.xml", - "ref/netcore50/es/System.Reflection.Extensions.xml", - "ref/netcore50/fr/System.Reflection.Extensions.xml", - "ref/netcore50/it/System.Reflection.Extensions.xml", - "ref/netcore50/ja/System.Reflection.Extensions.xml", - "ref/netcore50/ko/System.Reflection.Extensions.xml", - "ref/netcore50/ru/System.Reflection.Extensions.xml", - "ref/netcore50/zh-hans/System.Reflection.Extensions.xml", - "ref/netcore50/zh-hant/System.Reflection.Extensions.xml", - "ref/netstandard1.0/System.Reflection.Extensions.dll", - "ref/netstandard1.0/System.Reflection.Extensions.xml", - "ref/netstandard1.0/de/System.Reflection.Extensions.xml", - "ref/netstandard1.0/es/System.Reflection.Extensions.xml", - "ref/netstandard1.0/fr/System.Reflection.Extensions.xml", - "ref/netstandard1.0/it/System.Reflection.Extensions.xml", - "ref/netstandard1.0/ja/System.Reflection.Extensions.xml", - "ref/netstandard1.0/ko/System.Reflection.Extensions.xml", - "ref/netstandard1.0/ru/System.Reflection.Extensions.xml", - "ref/netstandard1.0/zh-hans/System.Reflection.Extensions.xml", - "ref/netstandard1.0/zh-hant/System.Reflection.Extensions.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.reflection.extensions.4.3.0.nupkg.sha512", - "system.reflection.extensions.nuspec" - ] - }, - "System.Reflection.Metadata/7.0.0": { - "sha512": "MclTG61lsD9sYdpNz9xsKBzjsmsfCtcMZYXz/IUr2zlhaTaABonlr1ESeompTgM+Xk+IwtGYU7/voh3YWB/fWw==", - "type": "package", - "path": "system.reflection.metadata/7.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "README.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/System.Reflection.Metadata.targets", - "buildTransitive/net462/_._", - "buildTransitive/net6.0/_._", - "buildTransitive/netcoreapp2.0/System.Reflection.Metadata.targets", - "lib/net462/System.Reflection.Metadata.dll", - "lib/net462/System.Reflection.Metadata.xml", - "lib/net6.0/System.Reflection.Metadata.dll", - "lib/net6.0/System.Reflection.Metadata.xml", - "lib/net7.0/System.Reflection.Metadata.dll", - "lib/net7.0/System.Reflection.Metadata.xml", - "lib/netstandard2.0/System.Reflection.Metadata.dll", - "lib/netstandard2.0/System.Reflection.Metadata.xml", - "system.reflection.metadata.7.0.0.nupkg.sha512", - "system.reflection.metadata.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Reflection.Primitives/4.3.0": { - "sha512": "5RXItQz5As4xN2/YUDxdpsEkMhvw3e6aNveFXUn4Hl/udNTCNhnKp8lT9fnc3MhvGKh1baak5CovpuQUXHAlIA==", - "type": "package", - "path": "system.reflection.primitives/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Reflection.Primitives.dll", - "ref/netcore50/System.Reflection.Primitives.xml", - "ref/netcore50/de/System.Reflection.Primitives.xml", - "ref/netcore50/es/System.Reflection.Primitives.xml", - "ref/netcore50/fr/System.Reflection.Primitives.xml", - "ref/netcore50/it/System.Reflection.Primitives.xml", - "ref/netcore50/ja/System.Reflection.Primitives.xml", - "ref/netcore50/ko/System.Reflection.Primitives.xml", - "ref/netcore50/ru/System.Reflection.Primitives.xml", - "ref/netcore50/zh-hans/System.Reflection.Primitives.xml", - "ref/netcore50/zh-hant/System.Reflection.Primitives.xml", - "ref/netstandard1.0/System.Reflection.Primitives.dll", - "ref/netstandard1.0/System.Reflection.Primitives.xml", - "ref/netstandard1.0/de/System.Reflection.Primitives.xml", - "ref/netstandard1.0/es/System.Reflection.Primitives.xml", - "ref/netstandard1.0/fr/System.Reflection.Primitives.xml", - "ref/netstandard1.0/it/System.Reflection.Primitives.xml", - "ref/netstandard1.0/ja/System.Reflection.Primitives.xml", - "ref/netstandard1.0/ko/System.Reflection.Primitives.xml", - "ref/netstandard1.0/ru/System.Reflection.Primitives.xml", - "ref/netstandard1.0/zh-hans/System.Reflection.Primitives.xml", - "ref/netstandard1.0/zh-hant/System.Reflection.Primitives.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.reflection.primitives.4.3.0.nupkg.sha512", - "system.reflection.primitives.nuspec" - ] - }, - "System.Reflection.TypeExtensions/4.3.0": { - "sha512": "7u6ulLcZbyxB5Gq0nMkQttcdBTx57ibzw+4IOXEfR+sXYQoHvjW5LTLyNr8O22UIMrqYbchJQJnos4eooYzYJA==", - "type": "package", - "path": "system.reflection.typeextensions/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.Reflection.TypeExtensions.dll", - "lib/net462/System.Reflection.TypeExtensions.dll", - "lib/netcore50/System.Reflection.TypeExtensions.dll", - "lib/netstandard1.5/System.Reflection.TypeExtensions.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.Reflection.TypeExtensions.dll", - "ref/net462/System.Reflection.TypeExtensions.dll", - "ref/netstandard1.3/System.Reflection.TypeExtensions.dll", - "ref/netstandard1.3/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.3/de/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.3/es/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.3/fr/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.3/it/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.3/ja/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.3/ko/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.3/ru/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.3/zh-hans/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.3/zh-hant/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.5/System.Reflection.TypeExtensions.dll", - "ref/netstandard1.5/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.5/de/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.5/es/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.5/fr/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.5/it/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.5/ja/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.5/ko/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.5/ru/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.5/zh-hans/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.5/zh-hant/System.Reflection.TypeExtensions.xml", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/aot/lib/netcore50/System.Reflection.TypeExtensions.dll", - "system.reflection.typeextensions.4.3.0.nupkg.sha512", - "system.reflection.typeextensions.nuspec" - ] - }, - "System.Resources.ResourceManager/4.3.0": { - "sha512": "/zrcPkkWdZmI4F92gL/TPumP98AVDu/Wxr3CSJGQQ+XN6wbRZcyfSKVoPo17ilb3iOr0cCRqJInGwNMolqhS8A==", - "type": "package", - "path": "system.resources.resourcemanager/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Resources.ResourceManager.dll", - "ref/netcore50/System.Resources.ResourceManager.xml", - "ref/netcore50/de/System.Resources.ResourceManager.xml", - "ref/netcore50/es/System.Resources.ResourceManager.xml", - "ref/netcore50/fr/System.Resources.ResourceManager.xml", - "ref/netcore50/it/System.Resources.ResourceManager.xml", - "ref/netcore50/ja/System.Resources.ResourceManager.xml", - "ref/netcore50/ko/System.Resources.ResourceManager.xml", - "ref/netcore50/ru/System.Resources.ResourceManager.xml", - "ref/netcore50/zh-hans/System.Resources.ResourceManager.xml", - "ref/netcore50/zh-hant/System.Resources.ResourceManager.xml", - "ref/netstandard1.0/System.Resources.ResourceManager.dll", - "ref/netstandard1.0/System.Resources.ResourceManager.xml", - "ref/netstandard1.0/de/System.Resources.ResourceManager.xml", - "ref/netstandard1.0/es/System.Resources.ResourceManager.xml", - "ref/netstandard1.0/fr/System.Resources.ResourceManager.xml", - "ref/netstandard1.0/it/System.Resources.ResourceManager.xml", - "ref/netstandard1.0/ja/System.Resources.ResourceManager.xml", - "ref/netstandard1.0/ko/System.Resources.ResourceManager.xml", - "ref/netstandard1.0/ru/System.Resources.ResourceManager.xml", - "ref/netstandard1.0/zh-hans/System.Resources.ResourceManager.xml", - "ref/netstandard1.0/zh-hant/System.Resources.ResourceManager.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.resources.resourcemanager.4.3.0.nupkg.sha512", - "system.resources.resourcemanager.nuspec" - ] - }, - "System.Runtime/4.3.1": { - "sha512": "abhfv1dTK6NXOmu4bgHIONxHyEqFjW8HwXPmpY9gmll+ix9UNo4XDcmzJn6oLooftxNssVHdJC1pGT9jkSynQg==", - "type": "package", - "path": "system.runtime/4.3.1", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/net462/System.Runtime.dll", - "lib/portable-net45+win8+wp80+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/net462/System.Runtime.dll", - "ref/netcore50/System.Runtime.dll", - "ref/netcore50/System.Runtime.xml", - "ref/netcore50/de/System.Runtime.xml", - "ref/netcore50/es/System.Runtime.xml", - "ref/netcore50/fr/System.Runtime.xml", - "ref/netcore50/it/System.Runtime.xml", - "ref/netcore50/ja/System.Runtime.xml", - "ref/netcore50/ko/System.Runtime.xml", - "ref/netcore50/ru/System.Runtime.xml", - "ref/netcore50/zh-hans/System.Runtime.xml", - "ref/netcore50/zh-hant/System.Runtime.xml", - "ref/netstandard1.0/System.Runtime.dll", - "ref/netstandard1.0/System.Runtime.xml", - "ref/netstandard1.0/de/System.Runtime.xml", - "ref/netstandard1.0/es/System.Runtime.xml", - "ref/netstandard1.0/fr/System.Runtime.xml", - "ref/netstandard1.0/it/System.Runtime.xml", - "ref/netstandard1.0/ja/System.Runtime.xml", - "ref/netstandard1.0/ko/System.Runtime.xml", - "ref/netstandard1.0/ru/System.Runtime.xml", - "ref/netstandard1.0/zh-hans/System.Runtime.xml", - "ref/netstandard1.0/zh-hant/System.Runtime.xml", - "ref/netstandard1.2/System.Runtime.dll", - "ref/netstandard1.2/System.Runtime.xml", - "ref/netstandard1.2/de/System.Runtime.xml", - "ref/netstandard1.2/es/System.Runtime.xml", - "ref/netstandard1.2/fr/System.Runtime.xml", - "ref/netstandard1.2/it/System.Runtime.xml", - "ref/netstandard1.2/ja/System.Runtime.xml", - "ref/netstandard1.2/ko/System.Runtime.xml", - "ref/netstandard1.2/ru/System.Runtime.xml", - "ref/netstandard1.2/zh-hans/System.Runtime.xml", - "ref/netstandard1.2/zh-hant/System.Runtime.xml", - "ref/netstandard1.3/System.Runtime.dll", - "ref/netstandard1.3/System.Runtime.xml", - "ref/netstandard1.3/de/System.Runtime.xml", - "ref/netstandard1.3/es/System.Runtime.xml", - "ref/netstandard1.3/fr/System.Runtime.xml", - "ref/netstandard1.3/it/System.Runtime.xml", - "ref/netstandard1.3/ja/System.Runtime.xml", - "ref/netstandard1.3/ko/System.Runtime.xml", - "ref/netstandard1.3/ru/System.Runtime.xml", - "ref/netstandard1.3/zh-hans/System.Runtime.xml", - "ref/netstandard1.3/zh-hant/System.Runtime.xml", - "ref/netstandard1.5/System.Runtime.dll", - "ref/netstandard1.5/System.Runtime.xml", - "ref/netstandard1.5/de/System.Runtime.xml", - "ref/netstandard1.5/es/System.Runtime.xml", - "ref/netstandard1.5/fr/System.Runtime.xml", - "ref/netstandard1.5/it/System.Runtime.xml", - "ref/netstandard1.5/ja/System.Runtime.xml", - "ref/netstandard1.5/ko/System.Runtime.xml", - "ref/netstandard1.5/ru/System.Runtime.xml", - "ref/netstandard1.5/zh-hans/System.Runtime.xml", - "ref/netstandard1.5/zh-hant/System.Runtime.xml", - "ref/portable-net45+win8+wp80+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.runtime.4.3.1.nupkg.sha512", - "system.runtime.nuspec" - ] - }, - "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.Runtime.Extensions/4.3.0": { - "sha512": "guW0uK0fn5fcJJ1tJVXYd7/1h5F+pea1r7FLSOz/f8vPEqbR2ZAknuRDvTQ8PzAilDveOxNjSfr0CHfIQfFk8g==", - "type": "package", - "path": "system.runtime.extensions/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/net462/System.Runtime.Extensions.dll", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/net462/System.Runtime.Extensions.dll", - "ref/netcore50/System.Runtime.Extensions.dll", - "ref/netcore50/System.Runtime.Extensions.xml", - "ref/netcore50/de/System.Runtime.Extensions.xml", - "ref/netcore50/es/System.Runtime.Extensions.xml", - "ref/netcore50/fr/System.Runtime.Extensions.xml", - "ref/netcore50/it/System.Runtime.Extensions.xml", - "ref/netcore50/ja/System.Runtime.Extensions.xml", - "ref/netcore50/ko/System.Runtime.Extensions.xml", - "ref/netcore50/ru/System.Runtime.Extensions.xml", - "ref/netcore50/zh-hans/System.Runtime.Extensions.xml", - "ref/netcore50/zh-hant/System.Runtime.Extensions.xml", - "ref/netstandard1.0/System.Runtime.Extensions.dll", - "ref/netstandard1.0/System.Runtime.Extensions.xml", - "ref/netstandard1.0/de/System.Runtime.Extensions.xml", - "ref/netstandard1.0/es/System.Runtime.Extensions.xml", - "ref/netstandard1.0/fr/System.Runtime.Extensions.xml", - "ref/netstandard1.0/it/System.Runtime.Extensions.xml", - "ref/netstandard1.0/ja/System.Runtime.Extensions.xml", - "ref/netstandard1.0/ko/System.Runtime.Extensions.xml", - "ref/netstandard1.0/ru/System.Runtime.Extensions.xml", - "ref/netstandard1.0/zh-hans/System.Runtime.Extensions.xml", - "ref/netstandard1.0/zh-hant/System.Runtime.Extensions.xml", - "ref/netstandard1.3/System.Runtime.Extensions.dll", - "ref/netstandard1.3/System.Runtime.Extensions.xml", - "ref/netstandard1.3/de/System.Runtime.Extensions.xml", - "ref/netstandard1.3/es/System.Runtime.Extensions.xml", - "ref/netstandard1.3/fr/System.Runtime.Extensions.xml", - "ref/netstandard1.3/it/System.Runtime.Extensions.xml", - "ref/netstandard1.3/ja/System.Runtime.Extensions.xml", - "ref/netstandard1.3/ko/System.Runtime.Extensions.xml", - "ref/netstandard1.3/ru/System.Runtime.Extensions.xml", - "ref/netstandard1.3/zh-hans/System.Runtime.Extensions.xml", - "ref/netstandard1.3/zh-hant/System.Runtime.Extensions.xml", - "ref/netstandard1.5/System.Runtime.Extensions.dll", - "ref/netstandard1.5/System.Runtime.Extensions.xml", - "ref/netstandard1.5/de/System.Runtime.Extensions.xml", - "ref/netstandard1.5/es/System.Runtime.Extensions.xml", - "ref/netstandard1.5/fr/System.Runtime.Extensions.xml", - "ref/netstandard1.5/it/System.Runtime.Extensions.xml", - "ref/netstandard1.5/ja/System.Runtime.Extensions.xml", - "ref/netstandard1.5/ko/System.Runtime.Extensions.xml", - "ref/netstandard1.5/ru/System.Runtime.Extensions.xml", - "ref/netstandard1.5/zh-hans/System.Runtime.Extensions.xml", - "ref/netstandard1.5/zh-hant/System.Runtime.Extensions.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.runtime.extensions.4.3.0.nupkg.sha512", - "system.runtime.extensions.nuspec" - ] - }, - "System.Runtime.Handles/4.3.0": { - "sha512": "OKiSUN7DmTWeYb3l51A7EYaeNMnvxwE249YtZz7yooT4gOZhmTjIn48KgSsw2k2lYdLgTKNJw/ZIfSElwDRVgg==", - "type": "package", - "path": "system.runtime.handles/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/_._", - "ref/netstandard1.3/System.Runtime.Handles.dll", - "ref/netstandard1.3/System.Runtime.Handles.xml", - "ref/netstandard1.3/de/System.Runtime.Handles.xml", - "ref/netstandard1.3/es/System.Runtime.Handles.xml", - "ref/netstandard1.3/fr/System.Runtime.Handles.xml", - "ref/netstandard1.3/it/System.Runtime.Handles.xml", - "ref/netstandard1.3/ja/System.Runtime.Handles.xml", - "ref/netstandard1.3/ko/System.Runtime.Handles.xml", - "ref/netstandard1.3/ru/System.Runtime.Handles.xml", - "ref/netstandard1.3/zh-hans/System.Runtime.Handles.xml", - "ref/netstandard1.3/zh-hant/System.Runtime.Handles.xml", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.runtime.handles.4.3.0.nupkg.sha512", - "system.runtime.handles.nuspec" - ] - }, - "System.Runtime.InteropServices/4.3.0": { - "sha512": "uv1ynXqiMK8mp1GM3jDqPCFN66eJ5w5XNomaK2XD+TuCroNTLFGeZ+WCmBMcBDyTFKou3P6cR6J/QsaqDp7fGQ==", - "type": "package", - "path": "system.runtime.interopservices/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/net462/System.Runtime.InteropServices.dll", - "lib/net463/System.Runtime.InteropServices.dll", - "lib/portable-net45+win8+wpa81/_._", - "lib/win8/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/net462/System.Runtime.InteropServices.dll", - "ref/net463/System.Runtime.InteropServices.dll", - "ref/netcore50/System.Runtime.InteropServices.dll", - "ref/netcore50/System.Runtime.InteropServices.xml", - "ref/netcore50/de/System.Runtime.InteropServices.xml", - "ref/netcore50/es/System.Runtime.InteropServices.xml", - "ref/netcore50/fr/System.Runtime.InteropServices.xml", - "ref/netcore50/it/System.Runtime.InteropServices.xml", - "ref/netcore50/ja/System.Runtime.InteropServices.xml", - "ref/netcore50/ko/System.Runtime.InteropServices.xml", - "ref/netcore50/ru/System.Runtime.InteropServices.xml", - "ref/netcore50/zh-hans/System.Runtime.InteropServices.xml", - "ref/netcore50/zh-hant/System.Runtime.InteropServices.xml", - "ref/netcoreapp1.1/System.Runtime.InteropServices.dll", - "ref/netstandard1.1/System.Runtime.InteropServices.dll", - "ref/netstandard1.1/System.Runtime.InteropServices.xml", - "ref/netstandard1.1/de/System.Runtime.InteropServices.xml", - "ref/netstandard1.1/es/System.Runtime.InteropServices.xml", - "ref/netstandard1.1/fr/System.Runtime.InteropServices.xml", - "ref/netstandard1.1/it/System.Runtime.InteropServices.xml", - "ref/netstandard1.1/ja/System.Runtime.InteropServices.xml", - "ref/netstandard1.1/ko/System.Runtime.InteropServices.xml", - "ref/netstandard1.1/ru/System.Runtime.InteropServices.xml", - "ref/netstandard1.1/zh-hans/System.Runtime.InteropServices.xml", - "ref/netstandard1.1/zh-hant/System.Runtime.InteropServices.xml", - "ref/netstandard1.2/System.Runtime.InteropServices.dll", - "ref/netstandard1.2/System.Runtime.InteropServices.xml", - "ref/netstandard1.2/de/System.Runtime.InteropServices.xml", - "ref/netstandard1.2/es/System.Runtime.InteropServices.xml", - "ref/netstandard1.2/fr/System.Runtime.InteropServices.xml", - "ref/netstandard1.2/it/System.Runtime.InteropServices.xml", - "ref/netstandard1.2/ja/System.Runtime.InteropServices.xml", - "ref/netstandard1.2/ko/System.Runtime.InteropServices.xml", - "ref/netstandard1.2/ru/System.Runtime.InteropServices.xml", - "ref/netstandard1.2/zh-hans/System.Runtime.InteropServices.xml", - "ref/netstandard1.2/zh-hant/System.Runtime.InteropServices.xml", - "ref/netstandard1.3/System.Runtime.InteropServices.dll", - "ref/netstandard1.3/System.Runtime.InteropServices.xml", - "ref/netstandard1.3/de/System.Runtime.InteropServices.xml", - "ref/netstandard1.3/es/System.Runtime.InteropServices.xml", - "ref/netstandard1.3/fr/System.Runtime.InteropServices.xml", - "ref/netstandard1.3/it/System.Runtime.InteropServices.xml", - "ref/netstandard1.3/ja/System.Runtime.InteropServices.xml", - "ref/netstandard1.3/ko/System.Runtime.InteropServices.xml", - "ref/netstandard1.3/ru/System.Runtime.InteropServices.xml", - "ref/netstandard1.3/zh-hans/System.Runtime.InteropServices.xml", - "ref/netstandard1.3/zh-hant/System.Runtime.InteropServices.xml", - "ref/netstandard1.5/System.Runtime.InteropServices.dll", - "ref/netstandard1.5/System.Runtime.InteropServices.xml", - "ref/netstandard1.5/de/System.Runtime.InteropServices.xml", - "ref/netstandard1.5/es/System.Runtime.InteropServices.xml", - "ref/netstandard1.5/fr/System.Runtime.InteropServices.xml", - "ref/netstandard1.5/it/System.Runtime.InteropServices.xml", - "ref/netstandard1.5/ja/System.Runtime.InteropServices.xml", - "ref/netstandard1.5/ko/System.Runtime.InteropServices.xml", - "ref/netstandard1.5/ru/System.Runtime.InteropServices.xml", - "ref/netstandard1.5/zh-hans/System.Runtime.InteropServices.xml", - "ref/netstandard1.5/zh-hant/System.Runtime.InteropServices.xml", - "ref/portable-net45+win8+wpa81/_._", - "ref/win8/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.runtime.interopservices.4.3.0.nupkg.sha512", - "system.runtime.interopservices.nuspec" - ] - }, - "System.Runtime.InteropServices.RuntimeInformation/4.3.0": { - "sha512": "cbz4YJMqRDR7oLeMRbdYv7mYzc++17lNhScCX0goO2XpGWdvAt60CGN+FHdePUEHCe/Jy9jUlvNAiNdM+7jsOw==", - "type": "package", - "path": "system.runtime.interopservices.runtimeinformation/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/System.Runtime.InteropServices.RuntimeInformation.dll", - "lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll", - "lib/win8/System.Runtime.InteropServices.RuntimeInformation.dll", - "lib/wpa81/System.Runtime.InteropServices.RuntimeInformation.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/aot/lib/netcore50/System.Runtime.InteropServices.RuntimeInformation.dll", - "runtimes/unix/lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll", - "runtimes/win/lib/net45/System.Runtime.InteropServices.RuntimeInformation.dll", - "runtimes/win/lib/netcore50/System.Runtime.InteropServices.RuntimeInformation.dll", - "runtimes/win/lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll", - "system.runtime.interopservices.runtimeinformation.4.3.0.nupkg.sha512", - "system.runtime.interopservices.runtimeinformation.nuspec" - ] - }, - "System.Runtime.Numerics/4.3.0": { - "sha512": "yMH+MfdzHjy17l2KESnPiF2dwq7T+xLnSJar7slyimAkUh/gTrS9/UQOtv7xarskJ2/XDSNvfLGOBQPjL7PaHQ==", - "type": "package", - "path": "system.runtime.numerics/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/netcore50/System.Runtime.Numerics.dll", - "lib/netstandard1.3/System.Runtime.Numerics.dll", - "lib/portable-net45+win8+wpa81/_._", - "lib/win8/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Runtime.Numerics.dll", - "ref/netcore50/System.Runtime.Numerics.xml", - "ref/netcore50/de/System.Runtime.Numerics.xml", - "ref/netcore50/es/System.Runtime.Numerics.xml", - "ref/netcore50/fr/System.Runtime.Numerics.xml", - "ref/netcore50/it/System.Runtime.Numerics.xml", - "ref/netcore50/ja/System.Runtime.Numerics.xml", - "ref/netcore50/ko/System.Runtime.Numerics.xml", - "ref/netcore50/ru/System.Runtime.Numerics.xml", - "ref/netcore50/zh-hans/System.Runtime.Numerics.xml", - "ref/netcore50/zh-hant/System.Runtime.Numerics.xml", - "ref/netstandard1.1/System.Runtime.Numerics.dll", - "ref/netstandard1.1/System.Runtime.Numerics.xml", - "ref/netstandard1.1/de/System.Runtime.Numerics.xml", - "ref/netstandard1.1/es/System.Runtime.Numerics.xml", - "ref/netstandard1.1/fr/System.Runtime.Numerics.xml", - "ref/netstandard1.1/it/System.Runtime.Numerics.xml", - "ref/netstandard1.1/ja/System.Runtime.Numerics.xml", - "ref/netstandard1.1/ko/System.Runtime.Numerics.xml", - "ref/netstandard1.1/ru/System.Runtime.Numerics.xml", - "ref/netstandard1.1/zh-hans/System.Runtime.Numerics.xml", - "ref/netstandard1.1/zh-hant/System.Runtime.Numerics.xml", - "ref/portable-net45+win8+wpa81/_._", - "ref/win8/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.runtime.numerics.4.3.0.nupkg.sha512", - "system.runtime.numerics.nuspec" - ] - }, - "System.Security.Cryptography.Algorithms/4.3.0": { - "sha512": "W1kd2Y8mYSCgc3ULTAZ0hOP2dSdG5YauTb1089T0/kRcN2MpSAW1izOFROrJgxSlMn3ArsgHXagigyi+ibhevg==", - "type": "package", - "path": "system.security.cryptography.algorithms/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.Security.Cryptography.Algorithms.dll", - "lib/net461/System.Security.Cryptography.Algorithms.dll", - "lib/net463/System.Security.Cryptography.Algorithms.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.Security.Cryptography.Algorithms.dll", - "ref/net461/System.Security.Cryptography.Algorithms.dll", - "ref/net463/System.Security.Cryptography.Algorithms.dll", - "ref/netstandard1.3/System.Security.Cryptography.Algorithms.dll", - "ref/netstandard1.4/System.Security.Cryptography.Algorithms.dll", - "ref/netstandard1.6/System.Security.Cryptography.Algorithms.dll", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/osx/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll", - "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll", - "runtimes/win/lib/net46/System.Security.Cryptography.Algorithms.dll", - "runtimes/win/lib/net461/System.Security.Cryptography.Algorithms.dll", - "runtimes/win/lib/net463/System.Security.Cryptography.Algorithms.dll", - "runtimes/win/lib/netcore50/System.Security.Cryptography.Algorithms.dll", - "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll", - "system.security.cryptography.algorithms.4.3.0.nupkg.sha512", - "system.security.cryptography.algorithms.nuspec" - ] - }, - "System.Security.Cryptography.Cng/4.3.0": { - "sha512": "03idZOqFlsKRL4W+LuCpJ6dBYDUWReug6lZjBa3uJWnk5sPCUXckocevTaUA8iT/MFSrY/2HXkOt753xQ/cf8g==", - "type": "package", - "path": "system.security.cryptography.cng/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/net46/System.Security.Cryptography.Cng.dll", - "lib/net461/System.Security.Cryptography.Cng.dll", - "lib/net463/System.Security.Cryptography.Cng.dll", - "ref/net46/System.Security.Cryptography.Cng.dll", - "ref/net461/System.Security.Cryptography.Cng.dll", - "ref/net463/System.Security.Cryptography.Cng.dll", - "ref/netstandard1.3/System.Security.Cryptography.Cng.dll", - "ref/netstandard1.4/System.Security.Cryptography.Cng.dll", - "ref/netstandard1.6/System.Security.Cryptography.Cng.dll", - "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.Cng.dll", - "runtimes/win/lib/net46/System.Security.Cryptography.Cng.dll", - "runtimes/win/lib/net461/System.Security.Cryptography.Cng.dll", - "runtimes/win/lib/net463/System.Security.Cryptography.Cng.dll", - "runtimes/win/lib/netstandard1.4/System.Security.Cryptography.Cng.dll", - "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.Cng.dll", - "system.security.cryptography.cng.4.3.0.nupkg.sha512", - "system.security.cryptography.cng.nuspec" - ] - }, - "System.Security.Cryptography.Csp/4.3.0": { - "sha512": "X4s/FCkEUnRGnwR3aSfVIkldBmtURMhmexALNTwpjklzxWU7yjMk7GHLKOZTNkgnWnE0q7+BCf9N2LVRWxewaA==", - "type": "package", - "path": "system.security.cryptography.csp/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.Security.Cryptography.Csp.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.Security.Cryptography.Csp.dll", - "ref/netstandard1.3/System.Security.Cryptography.Csp.dll", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.Csp.dll", - "runtimes/win/lib/net46/System.Security.Cryptography.Csp.dll", - "runtimes/win/lib/netcore50/_._", - "runtimes/win/lib/netstandard1.3/System.Security.Cryptography.Csp.dll", - "system.security.cryptography.csp.4.3.0.nupkg.sha512", - "system.security.cryptography.csp.nuspec" - ] - }, - "System.Security.Cryptography.Encoding/4.3.0": { - "sha512": "1DEWjZZly9ae9C79vFwqaO5kaOlI5q+3/55ohmq/7dpDyDfc8lYe7YVxJUZ5MF/NtbkRjwFRo14yM4OEo9EmDw==", - "type": "package", - "path": "system.security.cryptography.encoding/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.Security.Cryptography.Encoding.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.Security.Cryptography.Encoding.dll", - "ref/netstandard1.3/System.Security.Cryptography.Encoding.dll", - "ref/netstandard1.3/System.Security.Cryptography.Encoding.xml", - "ref/netstandard1.3/de/System.Security.Cryptography.Encoding.xml", - "ref/netstandard1.3/es/System.Security.Cryptography.Encoding.xml", - "ref/netstandard1.3/fr/System.Security.Cryptography.Encoding.xml", - "ref/netstandard1.3/it/System.Security.Cryptography.Encoding.xml", - "ref/netstandard1.3/ja/System.Security.Cryptography.Encoding.xml", - "ref/netstandard1.3/ko/System.Security.Cryptography.Encoding.xml", - "ref/netstandard1.3/ru/System.Security.Cryptography.Encoding.xml", - "ref/netstandard1.3/zh-hans/System.Security.Cryptography.Encoding.xml", - "ref/netstandard1.3/zh-hant/System.Security.Cryptography.Encoding.xml", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.Encoding.dll", - "runtimes/win/lib/net46/System.Security.Cryptography.Encoding.dll", - "runtimes/win/lib/netstandard1.3/System.Security.Cryptography.Encoding.dll", - "system.security.cryptography.encoding.4.3.0.nupkg.sha512", - "system.security.cryptography.encoding.nuspec" - ] - }, - "System.Security.Cryptography.OpenSsl/4.3.0": { - "sha512": "h4CEgOgv5PKVF/HwaHzJRiVboL2THYCou97zpmhjghx5frc7fIvlkY1jL+lnIQyChrJDMNEXS6r7byGif8Cy4w==", - "type": "package", - "path": "system.security.cryptography.openssl/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/netstandard1.6/System.Security.Cryptography.OpenSsl.dll", - "ref/netstandard1.6/System.Security.Cryptography.OpenSsl.dll", - "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.OpenSsl.dll", - "system.security.cryptography.openssl.4.3.0.nupkg.sha512", - "system.security.cryptography.openssl.nuspec" - ] - }, - "System.Security.Cryptography.Primitives/4.3.0": { - "sha512": "7bDIyVFNL/xKeFHjhobUAQqSpJq9YTOpbEs6mR233Et01STBMXNAc/V+BM6dwYGc95gVh/Zf+iVXWzj3mE8DWg==", - "type": "package", - "path": "system.security.cryptography.primitives/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.Security.Cryptography.Primitives.dll", - "lib/netstandard1.3/System.Security.Cryptography.Primitives.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.Security.Cryptography.Primitives.dll", - "ref/netstandard1.3/System.Security.Cryptography.Primitives.dll", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.security.cryptography.primitives.4.3.0.nupkg.sha512", - "system.security.cryptography.primitives.nuspec" - ] - }, - "System.Security.Cryptography.X509Certificates/4.3.0": { - "sha512": "t2Tmu6Y2NtJ2um0RtcuhP7ZdNNxXEgUm2JeoA/0NvlMjAhKCnM1NX07TDl3244mVp3QU6LPEhT3HTtH1uF7IYw==", - "type": "package", - "path": "system.security.cryptography.x509certificates/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.Security.Cryptography.X509Certificates.dll", - "lib/net461/System.Security.Cryptography.X509Certificates.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.Security.Cryptography.X509Certificates.dll", - "ref/net461/System.Security.Cryptography.X509Certificates.dll", - "ref/netstandard1.3/System.Security.Cryptography.X509Certificates.dll", - "ref/netstandard1.3/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.3/de/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.3/es/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.3/fr/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.3/it/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.3/ja/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.3/ko/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.3/ru/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.3/zh-hans/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.3/zh-hant/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.4/System.Security.Cryptography.X509Certificates.dll", - "ref/netstandard1.4/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.4/de/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.4/es/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.4/fr/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.4/it/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.4/ja/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.4/ko/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.4/ru/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.4/zh-hans/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.4/zh-hant/System.Security.Cryptography.X509Certificates.xml", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.X509Certificates.dll", - "runtimes/win/lib/net46/System.Security.Cryptography.X509Certificates.dll", - "runtimes/win/lib/net461/System.Security.Cryptography.X509Certificates.dll", - "runtimes/win/lib/netcore50/System.Security.Cryptography.X509Certificates.dll", - "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.X509Certificates.dll", - "system.security.cryptography.x509certificates.4.3.0.nupkg.sha512", - "system.security.cryptography.x509certificates.nuspec" - ] - }, - "System.Text.Encoding/4.3.0": { - "sha512": "BiIg+KWaSDOITze6jGQynxg64naAPtqGHBwDrLaCtixsa5bKiR8dpPOHA7ge3C0JJQizJE+sfkz1wV+BAKAYZw==", - "type": "package", - "path": "system.text.encoding/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Text.Encoding.dll", - "ref/netcore50/System.Text.Encoding.xml", - "ref/netcore50/de/System.Text.Encoding.xml", - "ref/netcore50/es/System.Text.Encoding.xml", - "ref/netcore50/fr/System.Text.Encoding.xml", - "ref/netcore50/it/System.Text.Encoding.xml", - "ref/netcore50/ja/System.Text.Encoding.xml", - "ref/netcore50/ko/System.Text.Encoding.xml", - "ref/netcore50/ru/System.Text.Encoding.xml", - "ref/netcore50/zh-hans/System.Text.Encoding.xml", - "ref/netcore50/zh-hant/System.Text.Encoding.xml", - "ref/netstandard1.0/System.Text.Encoding.dll", - "ref/netstandard1.0/System.Text.Encoding.xml", - "ref/netstandard1.0/de/System.Text.Encoding.xml", - "ref/netstandard1.0/es/System.Text.Encoding.xml", - "ref/netstandard1.0/fr/System.Text.Encoding.xml", - "ref/netstandard1.0/it/System.Text.Encoding.xml", - "ref/netstandard1.0/ja/System.Text.Encoding.xml", - "ref/netstandard1.0/ko/System.Text.Encoding.xml", - "ref/netstandard1.0/ru/System.Text.Encoding.xml", - "ref/netstandard1.0/zh-hans/System.Text.Encoding.xml", - "ref/netstandard1.0/zh-hant/System.Text.Encoding.xml", - "ref/netstandard1.3/System.Text.Encoding.dll", - "ref/netstandard1.3/System.Text.Encoding.xml", - "ref/netstandard1.3/de/System.Text.Encoding.xml", - "ref/netstandard1.3/es/System.Text.Encoding.xml", - "ref/netstandard1.3/fr/System.Text.Encoding.xml", - "ref/netstandard1.3/it/System.Text.Encoding.xml", - "ref/netstandard1.3/ja/System.Text.Encoding.xml", - "ref/netstandard1.3/ko/System.Text.Encoding.xml", - "ref/netstandard1.3/ru/System.Text.Encoding.xml", - "ref/netstandard1.3/zh-hans/System.Text.Encoding.xml", - "ref/netstandard1.3/zh-hant/System.Text.Encoding.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.text.encoding.4.3.0.nupkg.sha512", - "system.text.encoding.nuspec" - ] - }, - "System.Text.Encoding.Extensions/4.3.0": { - "sha512": "YVMK0Bt/A43RmwizJoZ22ei2nmrhobgeiYwFzC4YAN+nue8RF6djXDMog0UCn+brerQoYVyaS+ghy9P/MUVcmw==", - "type": "package", - "path": "system.text.encoding.extensions/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Text.Encoding.Extensions.dll", - "ref/netcore50/System.Text.Encoding.Extensions.xml", - "ref/netcore50/de/System.Text.Encoding.Extensions.xml", - "ref/netcore50/es/System.Text.Encoding.Extensions.xml", - "ref/netcore50/fr/System.Text.Encoding.Extensions.xml", - "ref/netcore50/it/System.Text.Encoding.Extensions.xml", - "ref/netcore50/ja/System.Text.Encoding.Extensions.xml", - "ref/netcore50/ko/System.Text.Encoding.Extensions.xml", - "ref/netcore50/ru/System.Text.Encoding.Extensions.xml", - "ref/netcore50/zh-hans/System.Text.Encoding.Extensions.xml", - "ref/netcore50/zh-hant/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.0/System.Text.Encoding.Extensions.dll", - "ref/netstandard1.0/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.0/de/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.0/es/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.0/fr/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.0/it/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.0/ja/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.0/ko/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.0/ru/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.0/zh-hans/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.0/zh-hant/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.3/System.Text.Encoding.Extensions.dll", - "ref/netstandard1.3/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.3/de/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.3/es/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.3/fr/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.3/it/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.3/ja/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.3/ko/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.3/ru/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.3/zh-hans/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.3/zh-hant/System.Text.Encoding.Extensions.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.text.encoding.extensions.4.3.0.nupkg.sha512", - "system.text.encoding.extensions.nuspec" - ] - }, - "System.Text.Encodings.Web/9.0.4": { - "sha512": "V+5cCPpk1S2ngekUs9nDrQLHGiWFZMg8BthADQr+Fwi59a8DdHFu26S2oi9Bfgv+d67bqmkPqctJXMEXiimXUg==", - "type": "package", - "path": "system.text.encodings.web/9.0.4", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/System.Text.Encodings.Web.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/System.Text.Encodings.Web.targets", - "lib/net462/System.Text.Encodings.Web.dll", - "lib/net462/System.Text.Encodings.Web.xml", - "lib/net8.0/System.Text.Encodings.Web.dll", - "lib/net8.0/System.Text.Encodings.Web.xml", - "lib/net9.0/System.Text.Encodings.Web.dll", - "lib/net9.0/System.Text.Encodings.Web.xml", - "lib/netstandard2.0/System.Text.Encodings.Web.dll", - "lib/netstandard2.0/System.Text.Encodings.Web.xml", - "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll", - "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.xml", - "runtimes/browser/lib/net9.0/System.Text.Encodings.Web.dll", - "runtimes/browser/lib/net9.0/System.Text.Encodings.Web.xml", - "system.text.encodings.web.9.0.4.nupkg.sha512", - "system.text.encodings.web.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Text.Json/9.0.4": { - "sha512": "pYtmpcO6R3Ef1XilZEHgXP2xBPVORbYEzRP7dl0IAAbN8Dm+kfwio8aCKle97rAWXOExr292MuxWYurIuwN62g==", - "type": "package", - "path": "system.text.json/9.0.4", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "analyzers/dotnet/roslyn3.11/cs/System.Text.Json.SourceGeneration.dll", - "analyzers/dotnet/roslyn3.11/cs/cs/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/de/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/es/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/fr/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/it/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/ja/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/ko/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/pl/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/ru/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/tr/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/System.Text.Json.SourceGeneration.dll", - "analyzers/dotnet/roslyn4.0/cs/cs/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/de/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/es/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/fr/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/it/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/ja/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/ko/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/pl/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/ru/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/tr/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/System.Text.Json.SourceGeneration.dll", - "analyzers/dotnet/roslyn4.4/cs/cs/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/de/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/es/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/fr/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/it/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/ja/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/ko/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/pl/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/ru/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/tr/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll", - "buildTransitive/net461/System.Text.Json.targets", - "buildTransitive/net462/System.Text.Json.targets", - "buildTransitive/net8.0/System.Text.Json.targets", - "buildTransitive/netcoreapp2.0/System.Text.Json.targets", - "buildTransitive/netstandard2.0/System.Text.Json.targets", - "lib/net462/System.Text.Json.dll", - "lib/net462/System.Text.Json.xml", - "lib/net8.0/System.Text.Json.dll", - "lib/net8.0/System.Text.Json.xml", - "lib/net9.0/System.Text.Json.dll", - "lib/net9.0/System.Text.Json.xml", - "lib/netstandard2.0/System.Text.Json.dll", - "lib/netstandard2.0/System.Text.Json.xml", - "system.text.json.9.0.4.nupkg.sha512", - "system.text.json.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Text.RegularExpressions/4.3.1": { - "sha512": "N0kNRrWe4+nXOWlpLT4LAY5brb8caNFlUuIRpraCVMDLYutKkol1aV079rQjLuSxKMJT2SpBQsYX9xbcTMmzwg==", - "type": "package", - "path": "system.text.regularexpressions/4.3.1", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/net463/System.Text.RegularExpressions.dll", - "lib/netcore50/System.Text.RegularExpressions.dll", - "lib/netstandard1.6/System.Text.RegularExpressions.dll", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/net463/System.Text.RegularExpressions.dll", - "ref/netcore50/System.Text.RegularExpressions.dll", - "ref/netcore50/System.Text.RegularExpressions.xml", - "ref/netcore50/de/System.Text.RegularExpressions.xml", - "ref/netcore50/es/System.Text.RegularExpressions.xml", - "ref/netcore50/fr/System.Text.RegularExpressions.xml", - "ref/netcore50/it/System.Text.RegularExpressions.xml", - "ref/netcore50/ja/System.Text.RegularExpressions.xml", - "ref/netcore50/ko/System.Text.RegularExpressions.xml", - "ref/netcore50/ru/System.Text.RegularExpressions.xml", - "ref/netcore50/zh-hans/System.Text.RegularExpressions.xml", - "ref/netcore50/zh-hant/System.Text.RegularExpressions.xml", - "ref/netcoreapp1.1/System.Text.RegularExpressions.dll", - "ref/netstandard1.0/System.Text.RegularExpressions.dll", - "ref/netstandard1.0/System.Text.RegularExpressions.xml", - "ref/netstandard1.0/de/System.Text.RegularExpressions.xml", - "ref/netstandard1.0/es/System.Text.RegularExpressions.xml", - "ref/netstandard1.0/fr/System.Text.RegularExpressions.xml", - "ref/netstandard1.0/it/System.Text.RegularExpressions.xml", - "ref/netstandard1.0/ja/System.Text.RegularExpressions.xml", - "ref/netstandard1.0/ko/System.Text.RegularExpressions.xml", - "ref/netstandard1.0/ru/System.Text.RegularExpressions.xml", - "ref/netstandard1.0/zh-hans/System.Text.RegularExpressions.xml", - "ref/netstandard1.0/zh-hant/System.Text.RegularExpressions.xml", - "ref/netstandard1.3/System.Text.RegularExpressions.dll", - "ref/netstandard1.3/System.Text.RegularExpressions.xml", - "ref/netstandard1.3/de/System.Text.RegularExpressions.xml", - "ref/netstandard1.3/es/System.Text.RegularExpressions.xml", - "ref/netstandard1.3/fr/System.Text.RegularExpressions.xml", - "ref/netstandard1.3/it/System.Text.RegularExpressions.xml", - "ref/netstandard1.3/ja/System.Text.RegularExpressions.xml", - "ref/netstandard1.3/ko/System.Text.RegularExpressions.xml", - "ref/netstandard1.3/ru/System.Text.RegularExpressions.xml", - "ref/netstandard1.3/zh-hans/System.Text.RegularExpressions.xml", - "ref/netstandard1.3/zh-hant/System.Text.RegularExpressions.xml", - "ref/netstandard1.6/System.Text.RegularExpressions.dll", - "ref/netstandard1.6/System.Text.RegularExpressions.xml", - "ref/netstandard1.6/de/System.Text.RegularExpressions.xml", - "ref/netstandard1.6/es/System.Text.RegularExpressions.xml", - "ref/netstandard1.6/fr/System.Text.RegularExpressions.xml", - "ref/netstandard1.6/it/System.Text.RegularExpressions.xml", - "ref/netstandard1.6/ja/System.Text.RegularExpressions.xml", - "ref/netstandard1.6/ko/System.Text.RegularExpressions.xml", - "ref/netstandard1.6/ru/System.Text.RegularExpressions.xml", - "ref/netstandard1.6/zh-hans/System.Text.RegularExpressions.xml", - "ref/netstandard1.6/zh-hant/System.Text.RegularExpressions.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.text.regularexpressions.4.3.1.nupkg.sha512", - "system.text.regularexpressions.nuspec" - ] - }, - "System.Threading/4.3.0": { - "sha512": "VkUS0kOBcUf3Wwm0TSbrevDDZ6BlM+b/HRiapRFWjM5O0NS0LviG0glKmFK+hhPDd1XFeSdU1GmlLhb2CoVpIw==", - "type": "package", - "path": "system.threading/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/netcore50/System.Threading.dll", - "lib/netstandard1.3/System.Threading.dll", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Threading.dll", - "ref/netcore50/System.Threading.xml", - "ref/netcore50/de/System.Threading.xml", - "ref/netcore50/es/System.Threading.xml", - "ref/netcore50/fr/System.Threading.xml", - "ref/netcore50/it/System.Threading.xml", - "ref/netcore50/ja/System.Threading.xml", - "ref/netcore50/ko/System.Threading.xml", - "ref/netcore50/ru/System.Threading.xml", - "ref/netcore50/zh-hans/System.Threading.xml", - "ref/netcore50/zh-hant/System.Threading.xml", - "ref/netstandard1.0/System.Threading.dll", - "ref/netstandard1.0/System.Threading.xml", - "ref/netstandard1.0/de/System.Threading.xml", - "ref/netstandard1.0/es/System.Threading.xml", - "ref/netstandard1.0/fr/System.Threading.xml", - "ref/netstandard1.0/it/System.Threading.xml", - "ref/netstandard1.0/ja/System.Threading.xml", - "ref/netstandard1.0/ko/System.Threading.xml", - "ref/netstandard1.0/ru/System.Threading.xml", - "ref/netstandard1.0/zh-hans/System.Threading.xml", - "ref/netstandard1.0/zh-hant/System.Threading.xml", - "ref/netstandard1.3/System.Threading.dll", - "ref/netstandard1.3/System.Threading.xml", - "ref/netstandard1.3/de/System.Threading.xml", - "ref/netstandard1.3/es/System.Threading.xml", - "ref/netstandard1.3/fr/System.Threading.xml", - "ref/netstandard1.3/it/System.Threading.xml", - "ref/netstandard1.3/ja/System.Threading.xml", - "ref/netstandard1.3/ko/System.Threading.xml", - "ref/netstandard1.3/ru/System.Threading.xml", - "ref/netstandard1.3/zh-hans/System.Threading.xml", - "ref/netstandard1.3/zh-hant/System.Threading.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/aot/lib/netcore50/System.Threading.dll", - "system.threading.4.3.0.nupkg.sha512", - "system.threading.nuspec" - ] - }, - "System.Threading.Channels/7.0.0": { - "sha512": "qmeeYNROMsONF6ndEZcIQ+VxR4Q/TX/7uIVLJqtwIWL7dDWeh0l1UIqgo4wYyjG//5lUNhwkLDSFl+pAWO6oiA==", - "type": "package", - "path": "system.threading.channels/7.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/System.Threading.Channels.targets", - "buildTransitive/net462/_._", - "buildTransitive/net6.0/_._", - "buildTransitive/netcoreapp2.0/System.Threading.Channels.targets", - "lib/net462/System.Threading.Channels.dll", - "lib/net462/System.Threading.Channels.xml", - "lib/net6.0/System.Threading.Channels.dll", - "lib/net6.0/System.Threading.Channels.xml", - "lib/net7.0/System.Threading.Channels.dll", - "lib/net7.0/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.7.0.0.nupkg.sha512", - "system.threading.channels.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Threading.Tasks/4.3.0": { - "sha512": "LbSxKEdOUhVe8BezB/9uOGGppt+nZf6e1VFyw6v3DN6lqitm0OSn2uXMOdtP0M3W4iMcqcivm2J6UgqiwwnXiA==", - "type": "package", - "path": "system.threading.tasks/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Threading.Tasks.dll", - "ref/netcore50/System.Threading.Tasks.xml", - "ref/netcore50/de/System.Threading.Tasks.xml", - "ref/netcore50/es/System.Threading.Tasks.xml", - "ref/netcore50/fr/System.Threading.Tasks.xml", - "ref/netcore50/it/System.Threading.Tasks.xml", - "ref/netcore50/ja/System.Threading.Tasks.xml", - "ref/netcore50/ko/System.Threading.Tasks.xml", - "ref/netcore50/ru/System.Threading.Tasks.xml", - "ref/netcore50/zh-hans/System.Threading.Tasks.xml", - "ref/netcore50/zh-hant/System.Threading.Tasks.xml", - "ref/netstandard1.0/System.Threading.Tasks.dll", - "ref/netstandard1.0/System.Threading.Tasks.xml", - "ref/netstandard1.0/de/System.Threading.Tasks.xml", - "ref/netstandard1.0/es/System.Threading.Tasks.xml", - "ref/netstandard1.0/fr/System.Threading.Tasks.xml", - "ref/netstandard1.0/it/System.Threading.Tasks.xml", - "ref/netstandard1.0/ja/System.Threading.Tasks.xml", - "ref/netstandard1.0/ko/System.Threading.Tasks.xml", - "ref/netstandard1.0/ru/System.Threading.Tasks.xml", - "ref/netstandard1.0/zh-hans/System.Threading.Tasks.xml", - "ref/netstandard1.0/zh-hant/System.Threading.Tasks.xml", - "ref/netstandard1.3/System.Threading.Tasks.dll", - "ref/netstandard1.3/System.Threading.Tasks.xml", - "ref/netstandard1.3/de/System.Threading.Tasks.xml", - "ref/netstandard1.3/es/System.Threading.Tasks.xml", - "ref/netstandard1.3/fr/System.Threading.Tasks.xml", - "ref/netstandard1.3/it/System.Threading.Tasks.xml", - "ref/netstandard1.3/ja/System.Threading.Tasks.xml", - "ref/netstandard1.3/ko/System.Threading.Tasks.xml", - "ref/netstandard1.3/ru/System.Threading.Tasks.xml", - "ref/netstandard1.3/zh-hans/System.Threading.Tasks.xml", - "ref/netstandard1.3/zh-hant/System.Threading.Tasks.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.threading.tasks.4.3.0.nupkg.sha512", - "system.threading.tasks.nuspec" - ] - }, - "System.Threading.Tasks.Extensions/4.3.0": { - "sha512": "npvJkVKl5rKXrtl1Kkm6OhOUaYGEiF9wFbppFRWSMoApKzt2PiPHT2Bb8a5sAWxprvdOAtvaARS9QYMznEUtug==", - "type": "package", - "path": "system.threading.tasks.extensions/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/netstandard1.0/System.Threading.Tasks.Extensions.dll", - "lib/netstandard1.0/System.Threading.Tasks.Extensions.xml", - "lib/portable-net45+win8+wp8+wpa81/System.Threading.Tasks.Extensions.dll", - "lib/portable-net45+win8+wp8+wpa81/System.Threading.Tasks.Extensions.xml", - "system.threading.tasks.extensions.4.3.0.nupkg.sha512", - "system.threading.tasks.extensions.nuspec" - ] - }, - "System.Threading.Timer/4.3.0": { - "sha512": "Z6YfyYTCg7lOZjJzBjONJTFKGN9/NIYKSxhU5GRd+DTwHSZyvWp1xuI5aR+dLg+ayyC5Xv57KiY4oJ0tMO89fQ==", - "type": "package", - "path": "system.threading.timer/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net451/_._", - "lib/portable-net451+win81+wpa81/_._", - "lib/win81/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net451/_._", - "ref/netcore50/System.Threading.Timer.dll", - "ref/netcore50/System.Threading.Timer.xml", - "ref/netcore50/de/System.Threading.Timer.xml", - "ref/netcore50/es/System.Threading.Timer.xml", - "ref/netcore50/fr/System.Threading.Timer.xml", - "ref/netcore50/it/System.Threading.Timer.xml", - "ref/netcore50/ja/System.Threading.Timer.xml", - "ref/netcore50/ko/System.Threading.Timer.xml", - "ref/netcore50/ru/System.Threading.Timer.xml", - "ref/netcore50/zh-hans/System.Threading.Timer.xml", - "ref/netcore50/zh-hant/System.Threading.Timer.xml", - "ref/netstandard1.2/System.Threading.Timer.dll", - "ref/netstandard1.2/System.Threading.Timer.xml", - "ref/netstandard1.2/de/System.Threading.Timer.xml", - "ref/netstandard1.2/es/System.Threading.Timer.xml", - "ref/netstandard1.2/fr/System.Threading.Timer.xml", - "ref/netstandard1.2/it/System.Threading.Timer.xml", - "ref/netstandard1.2/ja/System.Threading.Timer.xml", - "ref/netstandard1.2/ko/System.Threading.Timer.xml", - "ref/netstandard1.2/ru/System.Threading.Timer.xml", - "ref/netstandard1.2/zh-hans/System.Threading.Timer.xml", - "ref/netstandard1.2/zh-hant/System.Threading.Timer.xml", - "ref/portable-net451+win81+wpa81/_._", - "ref/win81/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.threading.timer.4.3.0.nupkg.sha512", - "system.threading.timer.nuspec" - ] - }, - "System.Xml.ReaderWriter/4.3.0": { - "sha512": "GrprA+Z0RUXaR4N7/eW71j1rgMnEnEVlgii49GZyAjTH7uliMnrOU3HNFBr6fEDBCJCIdlVNq9hHbaDR621XBA==", - "type": "package", - "path": "system.xml.readerwriter/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/net46/System.Xml.ReaderWriter.dll", - "lib/netcore50/System.Xml.ReaderWriter.dll", - "lib/netstandard1.3/System.Xml.ReaderWriter.dll", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/net46/System.Xml.ReaderWriter.dll", - "ref/netcore50/System.Xml.ReaderWriter.dll", - "ref/netcore50/System.Xml.ReaderWriter.xml", - "ref/netcore50/de/System.Xml.ReaderWriter.xml", - "ref/netcore50/es/System.Xml.ReaderWriter.xml", - "ref/netcore50/fr/System.Xml.ReaderWriter.xml", - "ref/netcore50/it/System.Xml.ReaderWriter.xml", - "ref/netcore50/ja/System.Xml.ReaderWriter.xml", - "ref/netcore50/ko/System.Xml.ReaderWriter.xml", - "ref/netcore50/ru/System.Xml.ReaderWriter.xml", - "ref/netcore50/zh-hans/System.Xml.ReaderWriter.xml", - "ref/netcore50/zh-hant/System.Xml.ReaderWriter.xml", - "ref/netstandard1.0/System.Xml.ReaderWriter.dll", - "ref/netstandard1.0/System.Xml.ReaderWriter.xml", - "ref/netstandard1.0/de/System.Xml.ReaderWriter.xml", - "ref/netstandard1.0/es/System.Xml.ReaderWriter.xml", - "ref/netstandard1.0/fr/System.Xml.ReaderWriter.xml", - "ref/netstandard1.0/it/System.Xml.ReaderWriter.xml", - "ref/netstandard1.0/ja/System.Xml.ReaderWriter.xml", - "ref/netstandard1.0/ko/System.Xml.ReaderWriter.xml", - "ref/netstandard1.0/ru/System.Xml.ReaderWriter.xml", - "ref/netstandard1.0/zh-hans/System.Xml.ReaderWriter.xml", - "ref/netstandard1.0/zh-hant/System.Xml.ReaderWriter.xml", - "ref/netstandard1.3/System.Xml.ReaderWriter.dll", - "ref/netstandard1.3/System.Xml.ReaderWriter.xml", - "ref/netstandard1.3/de/System.Xml.ReaderWriter.xml", - "ref/netstandard1.3/es/System.Xml.ReaderWriter.xml", - "ref/netstandard1.3/fr/System.Xml.ReaderWriter.xml", - "ref/netstandard1.3/it/System.Xml.ReaderWriter.xml", - "ref/netstandard1.3/ja/System.Xml.ReaderWriter.xml", - "ref/netstandard1.3/ko/System.Xml.ReaderWriter.xml", - "ref/netstandard1.3/ru/System.Xml.ReaderWriter.xml", - "ref/netstandard1.3/zh-hans/System.Xml.ReaderWriter.xml", - "ref/netstandard1.3/zh-hant/System.Xml.ReaderWriter.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.xml.readerwriter.4.3.0.nupkg.sha512", - "system.xml.readerwriter.nuspec" - ] - }, - "System.Xml.XDocument/4.3.0": { - "sha512": "5zJ0XDxAIg8iy+t4aMnQAu0MqVbqyvfoUVl1yDV61xdo3Vth45oA2FoY4pPkxYAH5f8ixpmTqXeEIya95x0aCQ==", - "type": "package", - "path": "system.xml.xdocument/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/netcore50/System.Xml.XDocument.dll", - "lib/netstandard1.3/System.Xml.XDocument.dll", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Xml.XDocument.dll", - "ref/netcore50/System.Xml.XDocument.xml", - "ref/netcore50/de/System.Xml.XDocument.xml", - "ref/netcore50/es/System.Xml.XDocument.xml", - "ref/netcore50/fr/System.Xml.XDocument.xml", - "ref/netcore50/it/System.Xml.XDocument.xml", - "ref/netcore50/ja/System.Xml.XDocument.xml", - "ref/netcore50/ko/System.Xml.XDocument.xml", - "ref/netcore50/ru/System.Xml.XDocument.xml", - "ref/netcore50/zh-hans/System.Xml.XDocument.xml", - "ref/netcore50/zh-hant/System.Xml.XDocument.xml", - "ref/netstandard1.0/System.Xml.XDocument.dll", - "ref/netstandard1.0/System.Xml.XDocument.xml", - "ref/netstandard1.0/de/System.Xml.XDocument.xml", - "ref/netstandard1.0/es/System.Xml.XDocument.xml", - "ref/netstandard1.0/fr/System.Xml.XDocument.xml", - "ref/netstandard1.0/it/System.Xml.XDocument.xml", - "ref/netstandard1.0/ja/System.Xml.XDocument.xml", - "ref/netstandard1.0/ko/System.Xml.XDocument.xml", - "ref/netstandard1.0/ru/System.Xml.XDocument.xml", - "ref/netstandard1.0/zh-hans/System.Xml.XDocument.xml", - "ref/netstandard1.0/zh-hant/System.Xml.XDocument.xml", - "ref/netstandard1.3/System.Xml.XDocument.dll", - "ref/netstandard1.3/System.Xml.XDocument.xml", - "ref/netstandard1.3/de/System.Xml.XDocument.xml", - "ref/netstandard1.3/es/System.Xml.XDocument.xml", - "ref/netstandard1.3/fr/System.Xml.XDocument.xml", - "ref/netstandard1.3/it/System.Xml.XDocument.xml", - "ref/netstandard1.3/ja/System.Xml.XDocument.xml", - "ref/netstandard1.3/ko/System.Xml.XDocument.xml", - "ref/netstandard1.3/ru/System.Xml.XDocument.xml", - "ref/netstandard1.3/zh-hans/System.Xml.XDocument.xml", - "ref/netstandard1.3/zh-hant/System.Xml.XDocument.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.xml.xdocument.4.3.0.nupkg.sha512", - "system.xml.xdocument.nuspec" - ] - } - }, - "projectFileDependencyGroups": { - "net8.0": [ - "AutoMapper.Extensions.Microsoft.DependencyInjection >= 12.0.1", - "DotNetEnv >= 3.1.1", - "Microsoft.AspNetCore.Authentication.JwtBearer >= 8.0.0", - "Microsoft.AspNetCore.OpenApi >= 8.0.14", - "Microsoft.EntityFrameworkCore >= 9.0.5", - "Microsoft.EntityFrameworkCore.Design >= 9.0.4", - "Npgsql.EntityFrameworkCore.PostgreSQL >= 9.0.4", - "Swashbuckle.AspNetCore >= 8.1.1", - "System.IdentityModel.Tokens.Jwt >= 8.10.0" - ] - }, - "packageFolders": { - "C:\\Users\\samik\\.nuget\\packages\\": {} - }, - "project": { - "version": "1.0.0", - "restore": { - "projectUniqueName": "C:\\VD\\appnew\\ValuationBackend\\ValuationBackend.csproj", - "projectName": "ValuationBackend", - "projectPath": "C:\\VD\\appnew\\ValuationBackend\\ValuationBackend.csproj", - "packagesPath": "C:\\Users\\samik\\.nuget\\packages\\", - "outputPath": "C:\\VD\\appnew\\ValuationBackend\\obj\\", - "projectStyle": "PackageReference", - "configFilePaths": [ - "C:\\Users\\samik\\AppData\\Roaming\\NuGet\\NuGet.Config" - ], - "originalTargetFrameworks": [ - "net8.0" - ], - "sources": { - "https://api.nuget.org/v3/index.json": {} - }, - "frameworks": { - "net8.0": { - "targetAlias": "net8.0", - "projectReferences": {} - } - }, - "warningProperties": { - "warnAsError": [ - "NU1605" - ] - }, - "restoreAuditProperties": { - "enableAudit": "true", - "auditLevel": "low", - "auditMode": "direct" - }, - "SdkAnalysisLevel": "9.0.200" - }, - "frameworks": { - "net8.0": { - "targetAlias": "net8.0", - "dependencies": { - "AutoMapper.Extensions.Microsoft.DependencyInjection": { - "target": "Package", - "version": "[12.0.1, )" - }, - "DotNetEnv": { - "target": "Package", - "version": "[3.1.1, )" - }, - "Microsoft.AspNetCore.Authentication.JwtBearer": { - "target": "Package", - "version": "[8.0.0, )" - }, - "Microsoft.AspNetCore.OpenApi": { - "target": "Package", - "version": "[8.0.14, )" - }, - "Microsoft.EntityFrameworkCore": { - "target": "Package", - "version": "[9.0.5, )" - }, - "Microsoft.EntityFrameworkCore.Design": { - "include": "Runtime, Build, Native, ContentFiles, Analyzers, BuildTransitive", - "suppressParent": "All", - "target": "Package", - "version": "[9.0.4, )" - }, - "Npgsql.EntityFrameworkCore.PostgreSQL": { - "target": "Package", - "version": "[9.0.4, )" - }, - "Swashbuckle.AspNetCore": { - "target": "Package", - "version": "[8.1.1, )" - }, - "System.IdentityModel.Tokens.Jwt": { - "target": "Package", - "version": "[8.10.0, )" - } - }, - "imports": [ - "net461", - "net462", - "net47", - "net471", - "net472", - "net48", - "net481" - ], - "assetTargetFallback": true, - "warn": true, - "downloadDependencies": [ - { - "name": "Microsoft.AspNetCore.App.Ref", - "version": "[8.0.17, 8.0.17]" - }, - { - "name": "Microsoft.NETCore.App.Host.win-x64", - "version": "[8.0.17, 8.0.17]" - }, - { - "name": "Microsoft.NETCore.App.Ref", - "version": "[8.0.17, 8.0.17]" - }, - { - "name": "Microsoft.WindowsDesktop.App.Ref", - "version": "[8.0.17, 8.0.17]" - } - ], - "frameworkReferences": { - "Microsoft.AspNetCore.App": { - "privateAssets": "none" - }, - "Microsoft.NETCore.App": { - "privateAssets": "all" - } - }, - "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.205/PortableRuntimeIdentifierGraph.json" - } - } - } -} \ No newline at end of file diff --git a/obj/project.nuget.cache b/obj/project.nuget.cache deleted file mode 100644 index 1b2129b..0000000 --- a/obj/project.nuget.cache +++ /dev/null @@ -1,150 +0,0 @@ -{ - "version": 2, - "dgSpecHash": "0WKZVMEjd44=", - "success": true, - "projectFilePath": "C:\\VD\\appnew\\ValuationBackend\\ValuationBackend.csproj", - "expectedPackageFiles": [ - "C:\\Users\\samik\\.nuget\\packages\\automapper\\12.0.1\\automapper.12.0.1.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\automapper.extensions.microsoft.dependencyinjection\\12.0.1\\automapper.extensions.microsoft.dependencyinjection.12.0.1.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\dotnetenv\\3.1.1\\dotnetenv.3.1.1.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\humanizer.core\\2.14.1\\humanizer.core.2.14.1.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.aspnetcore.authentication.jwtbearer\\8.0.0\\microsoft.aspnetcore.authentication.jwtbearer.8.0.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.aspnetcore.openapi\\8.0.14\\microsoft.aspnetcore.openapi.8.0.14.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.bcl.asyncinterfaces\\7.0.0\\microsoft.bcl.asyncinterfaces.7.0.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.build.framework\\17.8.3\\microsoft.build.framework.17.8.3.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.build.locator\\1.7.8\\microsoft.build.locator.1.7.8.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.codeanalysis.analyzers\\3.3.4\\microsoft.codeanalysis.analyzers.3.3.4.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.codeanalysis.common\\4.8.0\\microsoft.codeanalysis.common.4.8.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.codeanalysis.csharp\\4.8.0\\microsoft.codeanalysis.csharp.4.8.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.codeanalysis.csharp.workspaces\\4.8.0\\microsoft.codeanalysis.csharp.workspaces.4.8.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.codeanalysis.workspaces.common\\4.8.0\\microsoft.codeanalysis.workspaces.common.4.8.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.codeanalysis.workspaces.msbuild\\4.8.0\\microsoft.codeanalysis.workspaces.msbuild.4.8.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.csharp\\4.7.0\\microsoft.csharp.4.7.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.entityframeworkcore\\9.0.5\\microsoft.entityframeworkcore.9.0.5.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.entityframeworkcore.abstractions\\9.0.5\\microsoft.entityframeworkcore.abstractions.9.0.5.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.entityframeworkcore.analyzers\\9.0.5\\microsoft.entityframeworkcore.analyzers.9.0.5.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.entityframeworkcore.design\\9.0.4\\microsoft.entityframeworkcore.design.9.0.4.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.entityframeworkcore.relational\\9.0.4\\microsoft.entityframeworkcore.relational.9.0.4.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.extensions.apidescription.server\\6.0.5\\microsoft.extensions.apidescription.server.6.0.5.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.extensions.caching.abstractions\\9.0.5\\microsoft.extensions.caching.abstractions.9.0.5.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.extensions.caching.memory\\9.0.5\\microsoft.extensions.caching.memory.9.0.5.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.extensions.configuration\\1.1.2\\microsoft.extensions.configuration.1.1.2.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.extensions.configuration.abstractions\\9.0.4\\microsoft.extensions.configuration.abstractions.9.0.4.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.extensions.dependencyinjection\\9.0.5\\microsoft.extensions.dependencyinjection.9.0.5.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.extensions.dependencyinjection.abstractions\\9.0.5\\microsoft.extensions.dependencyinjection.abstractions.9.0.5.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.extensions.dependencymodel\\9.0.4\\microsoft.extensions.dependencymodel.9.0.4.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.extensions.logging\\9.0.5\\microsoft.extensions.logging.9.0.5.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.extensions.logging.abstractions\\9.0.5\\microsoft.extensions.logging.abstractions.9.0.5.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.extensions.options\\9.0.5\\microsoft.extensions.options.9.0.5.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.extensions.primitives\\9.0.5\\microsoft.extensions.primitives.9.0.5.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.identitymodel.abstractions\\8.10.0\\microsoft.identitymodel.abstractions.8.10.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.identitymodel.jsonwebtokens\\8.10.0\\microsoft.identitymodel.jsonwebtokens.8.10.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.identitymodel.logging\\8.10.0\\microsoft.identitymodel.logging.8.10.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.identitymodel.protocols\\7.0.3\\microsoft.identitymodel.protocols.7.0.3.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.identitymodel.protocols.openidconnect\\7.0.3\\microsoft.identitymodel.protocols.openidconnect.7.0.3.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.identitymodel.tokens\\8.10.0\\microsoft.identitymodel.tokens.8.10.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.netcore.platforms\\1.1.1\\microsoft.netcore.platforms.1.1.1.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.netcore.targets\\1.1.3\\microsoft.netcore.targets.1.1.3.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.openapi\\1.6.23\\microsoft.openapi.1.6.23.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.win32.primitives\\4.3.0\\microsoft.win32.primitives.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\mono.texttemplating\\3.0.0\\mono.texttemplating.3.0.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\netstandard.library\\1.6.1\\netstandard.library.1.6.1.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\npgsql\\9.0.3\\npgsql.9.0.3.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\npgsql.entityframeworkcore.postgresql\\9.0.4\\npgsql.entityframeworkcore.postgresql.9.0.4.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\runtime.native.system\\4.3.0\\runtime.native.system.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\runtime.native.system.io.compression\\4.3.0\\runtime.native.system.io.compression.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\runtime.native.system.net.http\\4.3.0\\runtime.native.system.net.http.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\runtime.native.system.security.cryptography.apple\\4.3.0\\runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple\\4.3.0\\runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\sprache\\2.3.1\\sprache.2.3.1.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\swashbuckle.aspnetcore\\8.1.1\\swashbuckle.aspnetcore.8.1.1.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\swashbuckle.aspnetcore.swagger\\8.1.1\\swashbuckle.aspnetcore.swagger.8.1.1.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\swashbuckle.aspnetcore.swaggergen\\8.1.1\\swashbuckle.aspnetcore.swaggergen.8.1.1.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\swashbuckle.aspnetcore.swaggerui\\8.1.1\\swashbuckle.aspnetcore.swaggerui.8.1.1.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.appcontext\\4.3.0\\system.appcontext.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.buffers\\4.3.0\\system.buffers.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.codedom\\6.0.0\\system.codedom.6.0.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.collections\\4.3.0\\system.collections.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.collections.concurrent\\4.3.0\\system.collections.concurrent.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.collections.immutable\\7.0.0\\system.collections.immutable.7.0.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.composition\\7.0.0\\system.composition.7.0.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.composition.attributedmodel\\7.0.0\\system.composition.attributedmodel.7.0.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.composition.convention\\7.0.0\\system.composition.convention.7.0.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.composition.hosting\\7.0.0\\system.composition.hosting.7.0.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.composition.runtime\\7.0.0\\system.composition.runtime.7.0.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.composition.typedparts\\7.0.0\\system.composition.typedparts.7.0.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.console\\4.3.0\\system.console.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.diagnostics.debug\\4.3.0\\system.diagnostics.debug.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.diagnostics.diagnosticsource\\9.0.5\\system.diagnostics.diagnosticsource.9.0.5.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.diagnostics.tools\\4.3.0\\system.diagnostics.tools.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.diagnostics.tracing\\4.3.0\\system.diagnostics.tracing.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.globalization\\4.3.0\\system.globalization.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.globalization.calendars\\4.3.0\\system.globalization.calendars.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.globalization.extensions\\4.3.0\\system.globalization.extensions.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.identitymodel.tokens.jwt\\8.10.0\\system.identitymodel.tokens.jwt.8.10.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.io\\4.3.0\\system.io.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.io.compression\\4.3.0\\system.io.compression.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.io.compression.zipfile\\4.3.0\\system.io.compression.zipfile.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.io.filesystem\\4.3.0\\system.io.filesystem.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.io.filesystem.primitives\\4.3.0\\system.io.filesystem.primitives.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.io.pipelines\\9.0.4\\system.io.pipelines.9.0.4.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.linq\\4.3.0\\system.linq.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.linq.expressions\\4.3.0\\system.linq.expressions.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.net.http\\4.3.4\\system.net.http.4.3.4.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.net.primitives\\4.3.0\\system.net.primitives.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.net.sockets\\4.3.0\\system.net.sockets.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.objectmodel\\4.3.0\\system.objectmodel.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.private.uri\\4.3.2\\system.private.uri.4.3.2.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.reflection\\4.3.0\\system.reflection.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.reflection.emit\\4.3.0\\system.reflection.emit.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.reflection.emit.ilgeneration\\4.3.0\\system.reflection.emit.ilgeneration.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.reflection.emit.lightweight\\4.3.0\\system.reflection.emit.lightweight.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.reflection.extensions\\4.3.0\\system.reflection.extensions.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.reflection.metadata\\7.0.0\\system.reflection.metadata.7.0.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.reflection.primitives\\4.3.0\\system.reflection.primitives.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.reflection.typeextensions\\4.3.0\\system.reflection.typeextensions.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.resources.resourcemanager\\4.3.0\\system.resources.resourcemanager.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.runtime\\4.3.1\\system.runtime.4.3.1.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.runtime.compilerservices.unsafe\\6.0.0\\system.runtime.compilerservices.unsafe.6.0.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.runtime.extensions\\4.3.0\\system.runtime.extensions.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.runtime.handles\\4.3.0\\system.runtime.handles.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.runtime.interopservices\\4.3.0\\system.runtime.interopservices.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.runtime.interopservices.runtimeinformation\\4.3.0\\system.runtime.interopservices.runtimeinformation.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.runtime.numerics\\4.3.0\\system.runtime.numerics.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.security.cryptography.algorithms\\4.3.0\\system.security.cryptography.algorithms.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.security.cryptography.cng\\4.3.0\\system.security.cryptography.cng.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.security.cryptography.csp\\4.3.0\\system.security.cryptography.csp.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.security.cryptography.encoding\\4.3.0\\system.security.cryptography.encoding.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.security.cryptography.openssl\\4.3.0\\system.security.cryptography.openssl.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.security.cryptography.primitives\\4.3.0\\system.security.cryptography.primitives.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.security.cryptography.x509certificates\\4.3.0\\system.security.cryptography.x509certificates.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.text.encoding\\4.3.0\\system.text.encoding.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.text.encoding.extensions\\4.3.0\\system.text.encoding.extensions.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.text.encodings.web\\9.0.4\\system.text.encodings.web.9.0.4.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.text.json\\9.0.4\\system.text.json.9.0.4.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.text.regularexpressions\\4.3.1\\system.text.regularexpressions.4.3.1.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.threading\\4.3.0\\system.threading.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.threading.channels\\7.0.0\\system.threading.channels.7.0.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.threading.tasks\\4.3.0\\system.threading.tasks.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.threading.tasks.extensions\\4.3.0\\system.threading.tasks.extensions.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.threading.timer\\4.3.0\\system.threading.timer.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.xml.readerwriter\\4.3.0\\system.xml.readerwriter.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\system.xml.xdocument\\4.3.0\\system.xml.xdocument.4.3.0.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.netcore.app.ref\\8.0.17\\microsoft.netcore.app.ref.8.0.17.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.windowsdesktop.app.ref\\8.0.17\\microsoft.windowsdesktop.app.ref.8.0.17.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.aspnetcore.app.ref\\8.0.17\\microsoft.aspnetcore.app.ref.8.0.17.nupkg.sha512", - "C:\\Users\\samik\\.nuget\\packages\\microsoft.netcore.app.host.win-x64\\8.0.17\\microsoft.netcore.app.host.win-x64.8.0.17.nupkg.sha512" - ], - "logs": [] -} \ No newline at end of file From 2e6a7771becc27e650ccc1214ec7566710fcee53 Mon Sep 17 00:00:00 2001 From: JalinaH Date: Wed, 23 Jul 2025 12:13:07 +0530 Subject: [PATCH 20/21] feat: Make foreign key properties nullable in LACoordinates model - Updated the LACoordinates model to allow nullable foreign key properties for PastValuationId, BuildingRateId, SalesEvidenceId, and RentalEvidenceId. - Modified the corresponding migration to reflect these changes in the database schema. - Adjusted the AppDbContextModelSnapshot to match the new nullable properties. - Updated LACoordinateServices to set foreign key properties to null instead of 0 when creating new coordinates. --- ...videnceIdNullableInCoordinates.Designer.cs | 2231 +++++++++++++++++ ...305_MakeEvidenceIdNullableInCoordinates.cs | 182 ++ Migrations/AppDbContextModelSnapshot.cs | 24 +- Models/LACoordinates.cs | 20 +- services/LACoordinateServices.cs | 16 +- 5 files changed, 2437 insertions(+), 36 deletions(-) create mode 100644 Migrations/20250723061305_MakeEvidenceIdNullableInCoordinates.Designer.cs create mode 100644 Migrations/20250723061305_MakeEvidenceIdNullableInCoordinates.cs diff --git a/Migrations/20250723061305_MakeEvidenceIdNullableInCoordinates.Designer.cs b/Migrations/20250723061305_MakeEvidenceIdNullableInCoordinates.Designer.cs new file mode 100644 index 0000000..aff8510 --- /dev/null +++ b/Migrations/20250723061305_MakeEvidenceIdNullableInCoordinates.Designer.cs @@ -0,0 +1,2231 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using ValuationBackend.Data; + +#nullable disable + +namespace ValuationBackend.Migrations +{ + [DbContext(typeof(AppDbContext))] + [Migration("20250723061305_MakeEvidenceIdNullableInCoordinates")] + partial class MakeEvidenceIdNullableInCoordinates + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "9.0.5") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("DecisionField", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Field") + .IsRequired() + .HasColumnType("text"); + + b.Property("FieldDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("FieldSize") + .HasColumnType("integer"); + + b.Property("FieldType") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("DecisionFields"); + }); + + modelBuilder.Entity("LandAquisitionMasterFile", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Lots") + .HasColumnType("integer"); + + b.Property("MasterFileNo") + .HasColumnType("integer"); + + b.Property("MasterFilesRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanType") + .IsRequired() + .HasColumnType("text"); + + b.Property("RequestingAuthorityReferenceNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Status") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("LandAquisitionMasterFiles"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Asset", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNo") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasColumnType("integer"); + + b.Property("IsRatingCard") + .HasColumnType("boolean"); + + b.Property("Owner") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("RdSt") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("RequestId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Ward") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.HasKey("Id"); + + b.HasIndex("RequestId"); + + b.ToTable("Assets"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetDivision", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Area") + .HasColumnType("numeric"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("LandType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("NewAssetNo") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("AssetDivisions"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetNumberChange", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ChangedDate") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfChange") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasMaxLength(255) + .HasColumnType("character varying(255)"); + + b.Property("FieldSize") + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("FieldType") + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("NewAssetNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("OldAssetNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Reason") + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("AssetNumberChanges"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("ConstructedBy") + .HasColumnType("text"); + + b.Property("Cost") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("FloorAreaSQFT") + .IsRequired() + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .HasColumnType("integer"); + + b.Property("Owner") + .IsRequired() + .HasColumnType("text"); + + b.Property("RatePerSQFT") + .IsRequired() + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("YearOfConstruction") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("MasterFileId"); + + b.HasIndex("ReportId"); + + b.ToTable("BuildingRatesLA"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("BuildingRateId") + .HasColumnType("integer"); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterfileId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("BuildingRateId"); + + b.HasIndex("MasterfileId"); + + b.ToTable("BuildingRatesLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccessCategory") + .IsRequired() + .HasColumnType("text"); + + b.Property("AccessCategoryDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquiredExtent") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquiringOfficerSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("AcquisitionName") + .IsRequired() + .HasColumnType("text"); + + b.Property("AssessmentNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("AtLotNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("AtPlanNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryBottom") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryEast") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryNorth") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundarySouth") + .IsRequired() + .HasColumnType("text"); + + b.Property("BoundaryWest") + .IsRequired() + .HasColumnType("text"); + + b.Property("BuildingDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("BuildingInfo") + .IsRequired() + .HasColumnType("text"); + + b.Property("ChiefValuerRepresentativeSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfSection3BA") + .IsRequired() + .HasColumnType("text"); + + b.Property("DatePrepared") + .IsRequired() + .HasColumnType("text"); + + b.Property("DepthOfLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("DescriptionOfLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("DetailsOfBusiness") + .IsRequired() + .HasColumnType("text"); + + b.Property("Frontage") + .IsRequired() + .HasColumnType("text"); + + b.Property("GramasewakaSignature") + .IsRequired() + .HasColumnType("text"); + + b.Property("LandUseDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("LandUseType") + .IsRequired() + .HasColumnType("text"); + + b.Property("LevelWithAccess") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("NameOfTheLand") + .IsRequired() + .HasColumnType("text"); + + b.Property("NameOfTheVillage") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionsDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionsInfo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlantationDetails") + .IsRequired() + .HasColumnType("text"); + + b.Property("PpCadLotNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("PpCadNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("RoadName") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("ConditionReports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.DomesticRatingCard", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Access") + .HasColumnType("text"); + + b.Property("Age") + .HasColumnType("integer"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("Condition") + .HasColumnType("text"); + + b.Property("Conveniences") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("Floor") + .HasColumnType("text"); + + b.Property("NewNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("Notes") + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .IsRequired() + .HasColumnType("text"); + + b.Property("ParkingSpace") + .HasColumnType("text"); + + b.Property("Plantations") + .HasColumnType("text"); + + b.Property("PropertySubCategory") + .HasColumnType("text"); + + b.Property("PropertyType") + .HasColumnType("text"); + + b.Property("RentPM") + .HasColumnType("numeric"); + + b.Property("RoadName") + .HasColumnType("text"); + + b.Property("SelectWalls") + .HasColumnType("text"); + + b.Property("SuggestedRate") + .HasColumnType("numeric"); + + b.Property("Terms") + .HasColumnType("text"); + + b.Property("TsBop") + .HasColumnType("text"); + + b.Property("WardNumber") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("DomesticRatingCards"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ImageData", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ImageBase64") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.ToTable("ImageData"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionBuilding", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AgeYears") + .HasColumnType("text"); + + b.Property("BathroomToilet") + .HasColumnType("text"); + + b.Property("BathroomToiletDoorsFittings") + .HasColumnType("text"); + + b.Property("BuildingCategory") + .HasColumnType("text"); + + b.Property("BuildingClass") + .HasColumnType("text"); + + b.Property("BuildingConditions") + .HasColumnType("text"); + + b.Property("BuildingId") + .HasColumnType("text"); + + b.Property("BuildingName") + .HasColumnType("text"); + + b.Property("Ceiling") + .HasColumnType("text"); + + b.Property("Condition") + .HasColumnType("text"); + + b.Property("Conveniences") + .HasColumnType("text"); + + b.Property("Design") + .HasColumnType("text"); + + b.Property("DetailOfBuilding") + .HasColumnType("text"); + + b.Property("Door") + .HasColumnType("text"); + + b.Property("ExpectedLifePeriodYears") + .HasColumnType("text"); + + b.Property("FloorFinisher") + .HasColumnType("text"); + + b.Property("FloorStructure") + .HasColumnType("text"); + + b.Property("FoundationStructure") + .HasColumnType("text"); + + b.Property("HandRail") + .HasColumnType("text"); + + b.Property("InspectionReportId") + .HasColumnType("integer"); + + b.Property("NatureOfConstruction") + .HasColumnType("text"); + + b.Property("NoOfFloorsAboveGround") + .HasColumnType("text") + .HasColumnName("NoOfFloorsAboveGround"); + + b.Property("NoOfFloorsBelowGround") + .HasColumnType("text") + .HasColumnName("NoOfFloorsBelowGround"); + + b.Property("OtherDoors") + .HasColumnType("text"); + + b.Property("PantryCupboard") + .HasColumnType("text"); + + b.Property("ParkingSpace") + .HasColumnType("text"); + + b.Property("RoofFinisher") + .HasColumnType("text"); + + b.Property("RoofFrame") + .HasColumnType("text"); + + b.Property("RoofMaterial") + .HasColumnType("text"); + + b.Property("Services") + .HasColumnType("text"); + + b.Property("Structure") + .HasColumnType("text"); + + b.Property("WallFinisher") + .HasColumnType("text"); + + b.Property("WallStructure") + .HasColumnType("text"); + + b.Property("Window") + .HasColumnType("text"); + + b.Property("WindowProtection") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("InspectionReportId"); + + b.ToTable("InspectionBuildings"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.Property("InspectionReportId") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("InspectionReportId")); + + b.Property("DetailsOfAssestsInventoryItems") + .HasColumnType("text") + .HasColumnName("DetailsOfAssestsInventoryItems"); + + b.Property("DetailsOfBusiness") + .HasColumnType("text"); + + b.Property("District") + .HasColumnType("text"); + + b.Property("DsDivision") + .HasColumnType("text"); + + b.Property("GnDivision") + .HasColumnType("text"); + + b.Property("InspectionDate") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterFileId") + .IsRequired() + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("OtherConstructionDetails") + .HasColumnType("text"); + + b.Property("OtherInformation") + .HasColumnType("text"); + + b.Property("Province") + .HasColumnType("text"); + + b.Property("Remark") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("InspectionReportId"); + + b.HasIndex("ReportId"); + + b.ToTable("InspectionReports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LALot", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterFileId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("MasterFileId"); + + b.ToTable("LALots"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMBuildingRates", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNumber") + .HasColumnType("text"); + + b.Property("ConstructedBy") + .HasColumnType("text"); + + b.Property("Cost") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("FloorArea") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerSQFT") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("YearOfConstruction") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMBuildingRates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMPastValuation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("DateOfValuation") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FileNo_GnDivision") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanOfParticulars") + .HasColumnType("text"); + + b.Property("PurposeOfValuation") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMPastValuations"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMRentalEvidence", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNo") + .HasColumnType("text"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("FloorRate") + .HasColumnType("text"); + + b.Property("HeadOfTerms") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePer") + .HasColumnType("text"); + + b.Property("RatePerMonth") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMRentalEvidences"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMSalesEvidence", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNumber") + .HasColumnType("text"); + + b.Property("Consideration") + .HasColumnType("text"); + + b.Property("DeedAttestedNumber") + .HasColumnType("text"); + + b.Property("DeedNumber") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("LandRegistryReferences") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("LotNumber") + .HasColumnType("text"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("NotaryName") + .HasColumnType("text"); + + b.Property("PlanDate") + .HasColumnType("text"); + + b.Property("PlanNumber") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Road") + .HasColumnType("text"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("Vendor") + .HasColumnType("text"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ReportId"); + + b.ToTable("LMSalesEvidences"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LandMiscellaneousMasterFile", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Lots") + .HasColumnType("integer"); + + b.Property("MasterFileNo") + .HasColumnType("integer"); + + b.Property("PlanNo") + .HasColumnType("text"); + + b.Property("PlanType") + .HasColumnType("text"); + + b.Property("RequestingAuthorityReferenceNo") + .HasColumnType("text"); + + b.Property("Status") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("LandMiscellaneousMasterFiles"); + }); + + modelBuilder.Entity("ValuationBackend.Models.MasterDataItem", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Category") + .IsRequired() + .HasColumnType("text"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("MasterDataItems"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PasswordReset", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Email") + .IsRequired() + .HasColumnType("text"); + + b.Property("ExpiresAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Otp") + .IsRequired() + .HasColumnType("text"); + + b.Property("Used") + .HasColumnType("boolean"); + + b.HasKey("Id"); + + b.ToTable("PasswordResets"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DateOfValuation") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FileNoGNDivision") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .HasColumnType("integer"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("PlanOfParticulars") + .HasColumnType("text"); + + b.Property("PurposeOfValuation") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("MasterFileId"); + + b.HasIndex("ReportId"); + + b.ToTable("PastValuationsLA"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterfileId") + .HasColumnType("integer"); + + b.Property("PastValuationId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("MasterfileId"); + + b.HasIndex("PastValuationId"); + + b.ToTable("PastValuationsLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PropertyCategory", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Name") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("PropertyCategories"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RatingRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("LocalAuthority") + .IsRequired() + .HasColumnType("text"); + + b.Property("RatingReferenceNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("RequestType") + .IsRequired() + .HasColumnType("text"); + + b.Property("Status") + .IsRequired() + .HasColumnType("text"); + + b.Property("YearOfRevision") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.ToTable("RatingRequests"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Reconciliation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("NewNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("ObsoleteNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("StreetName") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("Reconciliations"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssessmentNo") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("FloorRateSQFT") + .HasColumnType("text"); + + b.Property("HeadOfTerms") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("MasterFileId") + .HasColumnType("integer"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("RatePerMonth") + .HasColumnType("text"); + + b.Property("RatePerSqft") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("MasterFileId"); + + b.HasIndex("ReportId"); + + b.ToTable("RentalEvidencesLA", (string)null); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterfileId") + .HasColumnType("integer"); + + b.Property("RentalEvidenceId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("MasterfileId"); + + b.HasIndex("RentalEvidenceId"); + + b.ToTable("RentalEvidenceLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Report", b => + { + b.Property("ReportId") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("ReportId")); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("ReportType") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Timestamp") + .HasColumnType("timestamp with time zone"); + + b.HasKey("ReportId"); + + b.ToTable("Reports"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Request", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("LocalAuthority") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RatingReferenceNo") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RequestTypeId") + .HasColumnType("integer"); + + b.Property("Status") + .HasColumnType("boolean"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("YearOfRevision") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("RequestTypeId"); + + b.ToTable("Requests"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RequestType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Code") + .IsRequired() + .HasMaxLength(2) + .HasColumnType("character varying(2)"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.HasKey("Id"); + + b.ToTable("RequestTypes"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLA", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssetNumber") + .HasColumnType("text"); + + b.Property("Consideration") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("DeedAttestedNumber") + .HasColumnType("text"); + + b.Property("DeedNumber") + .HasColumnType("text"); + + b.Property("Description") + .HasColumnType("text"); + + b.Property("DescriptionOfProperty") + .HasColumnType("text"); + + b.Property("Extent") + .HasColumnType("text"); + + b.Property("FloorRate") + .HasColumnType("text"); + + b.Property("LandRegistryReferences") + .HasColumnType("text"); + + b.Property("LocationLatitude") + .HasColumnType("text"); + + b.Property("LocationLongitude") + .HasColumnType("text"); + + b.Property("LotNumber") + .HasColumnType("text"); + + b.Property("MasterFileId") + .HasColumnType("integer"); + + b.Property("MasterFileRefNo") + .IsRequired() + .HasColumnType("text"); + + b.Property("NotaryName") + .HasColumnType("text"); + + b.Property("Occupier") + .HasColumnType("text"); + + b.Property("Owner") + .HasColumnType("text"); + + b.Property("PlanDate") + .HasColumnType("text"); + + b.Property("PlanNumber") + .HasColumnType("text"); + + b.Property("Rate") + .HasColumnType("text"); + + b.Property("RateType") + .HasColumnType("text"); + + b.Property("Remarks") + .HasColumnType("text"); + + b.Property("ReportId") + .HasColumnType("integer"); + + b.Property("Road") + .HasColumnType("text"); + + b.Property("Situation") + .HasColumnType("text"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Vendor") + .HasColumnType("text"); + + b.Property("Village") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("MasterFileId"); + + b.HasIndex("ReportId"); + + b.ToTable("SalesEvidencesLA", (string)null); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLACoordinate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Coordinates") + .IsRequired() + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("MasterfileId") + .HasColumnType("integer"); + + b.Property("SalesEvidenceId") + .HasColumnType("integer"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("MasterfileId"); + + b.HasIndex("SalesEvidenceId"); + + b.ToTable("SalesEvidenceLACoordinates"); + }); + + modelBuilder.Entity("ValuationBackend.Models.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssignedDivision") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpEmail") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpId") + .IsRequired() + .HasColumnType("text"); + + b.Property("EmpName") + .IsRequired() + .HasColumnType("text"); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("bytea"); + + b.Property("PasswordSalt") + .IsRequired() + .HasColumnType("bytea"); + + b.Property("Position") + .IsRequired() + .HasColumnType("text"); + + b.Property("ProfilePicture") + .HasColumnType("bytea"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("ValuationBackend.Models.UserTask", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AssignedDate") + .HasColumnType("timestamp with time zone"); + + b.Property("IsCompleted") + .HasColumnType("boolean"); + + b.Property("LandAcquisitionId") + .HasColumnType("integer"); + + b.Property("LandMiscellaneousId") + .HasColumnType("integer"); + + b.Property("ReferenceNumber") + .HasColumnType("text"); + + b.Property("RequestId") + .HasColumnType("integer"); + + b.Property("TaskType") + .IsRequired() + .HasColumnType("text"); + + b.Property("UserId") + .HasColumnType("integer"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.Property("WorkItemDescription") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("UserId"); + + b.ToTable("UserTasks"); + }); + + modelBuilder.Entity("ValuationBackend.Models.iteration2.RatingCards.OfficesRatingCard", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccessType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("Age") + .HasColumnType("integer"); + + b.Property("AssessmentNumber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("AssetId") + .HasColumnType("integer"); + + b.Property("BuildingSelection") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CeilingHeight") + .HasColumnType("decimal(18,2)"); + + b.Property("Condition") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Conveniences") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("CreatedBy") + .IsRequired() + .HasColumnType("text"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("FloorNumber") + .HasColumnType("integer"); + + b.Property("FloorType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("LocalAuthority") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("LocalAuthorityCode") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("NewNumber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Notes") + .IsRequired() + .HasMaxLength(2000) + .HasColumnType("character varying(2000)"); + + b.Property("ObsoleteNumber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("Occupier") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("OfficeGrade") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("character varying(50)"); + + b.Property("OfficeSuite") + .IsRequired() + .HasMaxLength(1000) + .HasColumnType("character varying(1000)"); + + b.Property("Owner") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("ParkingSpace") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("PropertySubCategory") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("PropertyType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("RentPM") + .HasColumnType("decimal(18,2)"); + + b.Property("RoadName") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("character varying(200)"); + + b.Property("SuggestedRate") + .HasColumnType("decimal(18,2)"); + + b.Property("Terms") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("character varying(500)"); + + b.Property("TotalArea") + .HasColumnType("decimal(18,2)"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("UpdatedBy") + .HasColumnType("text"); + + b.Property("UsableFloorArea") + .HasColumnType("decimal(18,2)"); + + b.Property("WallType") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("character varying(100)"); + + b.Property("WardNumber") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("AssetId"); + + b.ToTable("OfficesRatingCards"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Asset", b => + { + b.HasOne("ValuationBackend.Models.Request", "Request") + .WithMany() + .HasForeignKey("RequestId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Request"); + }); + + modelBuilder.Entity("ValuationBackend.Models.AssetDivision", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLA", b => + { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("MasterFile"); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.BuildingRatesLACoordinate", b => + { + b.HasOne("ValuationBackend.Models.BuildingRatesLA", "BuildingRate") + .WithMany() + .HasForeignKey("BuildingRateId"); + + b.HasOne("LandAquisitionMasterFile", "Masterfile") + .WithMany() + .HasForeignKey("MasterfileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("BuildingRate"); + + b.Navigation("Masterfile"); + }); + + modelBuilder.Entity("ValuationBackend.Models.ConditionReport", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.DomesticRatingCard", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionBuilding", b => + { + b.HasOne("ValuationBackend.Models.InspectionReport", "InspectionReport") + .WithMany("Buildings") + .HasForeignKey("InspectionReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("InspectionReport"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LALot", b => + { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("MasterFile"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMBuildingRates", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMPastValuation", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMRentalEvidence", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.LMSalesEvidence", b => + { + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLA", b => + { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("MasterFile"); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.PastValuationsLACoordinate", b => + { + b.HasOne("LandAquisitionMasterFile", "Masterfile") + .WithMany() + .HasForeignKey("MasterfileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("ValuationBackend.Models.PastValuationsLA", "PastValuation") + .WithMany() + .HasForeignKey("PastValuationId"); + + b.Navigation("Masterfile"); + + b.Navigation("PastValuation"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Reconciliation", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLA", b => + { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("MasterFile"); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.RentalEvidenceLACoordinate", b => + { + b.HasOne("LandAquisitionMasterFile", "Masterfile") + .WithMany() + .HasForeignKey("MasterfileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("ValuationBackend.Models.RentalEvidenceLA", "RentalEvidence") + .WithMany() + .HasForeignKey("RentalEvidenceId"); + + b.Navigation("Masterfile"); + + b.Navigation("RentalEvidence"); + }); + + modelBuilder.Entity("ValuationBackend.Models.Request", b => + { + b.HasOne("ValuationBackend.Models.RequestType", "RequestType") + .WithMany() + .HasForeignKey("RequestTypeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("RequestType"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLA", b => + { + b.HasOne("LandAquisitionMasterFile", "MasterFile") + .WithMany() + .HasForeignKey("MasterFileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("ValuationBackend.Models.Report", "Report") + .WithMany() + .HasForeignKey("ReportId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("MasterFile"); + + b.Navigation("Report"); + }); + + modelBuilder.Entity("ValuationBackend.Models.SalesEvidenceLACoordinate", b => + { + b.HasOne("LandAquisitionMasterFile", "Masterfile") + .WithMany() + .HasForeignKey("MasterfileId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("ValuationBackend.Models.SalesEvidenceLA", "SalesEvidence") + .WithMany() + .HasForeignKey("SalesEvidenceId"); + + b.Navigation("Masterfile"); + + b.Navigation("SalesEvidence"); + }); + + modelBuilder.Entity("ValuationBackend.Models.UserTask", b => + { + b.HasOne("ValuationBackend.Models.User", "User") + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("User"); + }); + + modelBuilder.Entity("ValuationBackend.Models.iteration2.RatingCards.OfficesRatingCard", b => + { + b.HasOne("ValuationBackend.Models.Asset", "Asset") + .WithMany() + .HasForeignKey("AssetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Asset"); + }); + + modelBuilder.Entity("ValuationBackend.Models.InspectionReport", b => + { + b.Navigation("Buildings"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/Migrations/20250723061305_MakeEvidenceIdNullableInCoordinates.cs b/Migrations/20250723061305_MakeEvidenceIdNullableInCoordinates.cs new file mode 100644 index 0000000..bcbcba9 --- /dev/null +++ b/Migrations/20250723061305_MakeEvidenceIdNullableInCoordinates.cs @@ -0,0 +1,182 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace ValuationBackend.Migrations +{ + /// + public partial class MakeEvidenceIdNullableInCoordinates : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropForeignKey( + name: "FK_BuildingRatesLACoordinates_BuildingRatesLA_BuildingRateId", + table: "BuildingRatesLACoordinates"); + + migrationBuilder.DropForeignKey( + name: "FK_PastValuationsLACoordinates_PastValuationsLA_PastValuationId", + table: "PastValuationsLACoordinates"); + + migrationBuilder.DropForeignKey( + name: "FK_RentalEvidenceLACoordinates_RentalEvidencesLA_RentalEvidenc~", + table: "RentalEvidenceLACoordinates"); + + migrationBuilder.DropForeignKey( + name: "FK_SalesEvidenceLACoordinates_SalesEvidencesLA_SalesEvidenceId", + table: "SalesEvidenceLACoordinates"); + + migrationBuilder.AlterColumn( + name: "SalesEvidenceId", + table: "SalesEvidenceLACoordinates", + type: "integer", + nullable: true, + oldClrType: typeof(int), + oldType: "integer"); + + migrationBuilder.AlterColumn( + name: "RentalEvidenceId", + table: "RentalEvidenceLACoordinates", + type: "integer", + nullable: true, + oldClrType: typeof(int), + oldType: "integer"); + + migrationBuilder.AlterColumn( + name: "PastValuationId", + table: "PastValuationsLACoordinates", + type: "integer", + nullable: true, + oldClrType: typeof(int), + oldType: "integer"); + + migrationBuilder.AlterColumn( + name: "BuildingRateId", + table: "BuildingRatesLACoordinates", + type: "integer", + nullable: true, + oldClrType: typeof(int), + oldType: "integer"); + + migrationBuilder.AddForeignKey( + name: "FK_BuildingRatesLACoordinates_BuildingRatesLA_BuildingRateId", + table: "BuildingRatesLACoordinates", + column: "BuildingRateId", + principalTable: "BuildingRatesLA", + principalColumn: "Id"); + + migrationBuilder.AddForeignKey( + name: "FK_PastValuationsLACoordinates_PastValuationsLA_PastValuationId", + table: "PastValuationsLACoordinates", + column: "PastValuationId", + principalTable: "PastValuationsLA", + principalColumn: "Id"); + + migrationBuilder.AddForeignKey( + name: "FK_RentalEvidenceLACoordinates_RentalEvidencesLA_RentalEvidenc~", + table: "RentalEvidenceLACoordinates", + column: "RentalEvidenceId", + principalTable: "RentalEvidencesLA", + principalColumn: "Id"); + + migrationBuilder.AddForeignKey( + name: "FK_SalesEvidenceLACoordinates_SalesEvidencesLA_SalesEvidenceId", + table: "SalesEvidenceLACoordinates", + column: "SalesEvidenceId", + principalTable: "SalesEvidencesLA", + principalColumn: "Id"); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropForeignKey( + name: "FK_BuildingRatesLACoordinates_BuildingRatesLA_BuildingRateId", + table: "BuildingRatesLACoordinates"); + + migrationBuilder.DropForeignKey( + name: "FK_PastValuationsLACoordinates_PastValuationsLA_PastValuationId", + table: "PastValuationsLACoordinates"); + + migrationBuilder.DropForeignKey( + name: "FK_RentalEvidenceLACoordinates_RentalEvidencesLA_RentalEvidenc~", + table: "RentalEvidenceLACoordinates"); + + migrationBuilder.DropForeignKey( + name: "FK_SalesEvidenceLACoordinates_SalesEvidencesLA_SalesEvidenceId", + table: "SalesEvidenceLACoordinates"); + + migrationBuilder.AlterColumn( + name: "SalesEvidenceId", + table: "SalesEvidenceLACoordinates", + type: "integer", + nullable: false, + defaultValue: 0, + oldClrType: typeof(int), + oldType: "integer", + oldNullable: true); + + migrationBuilder.AlterColumn( + name: "RentalEvidenceId", + table: "RentalEvidenceLACoordinates", + type: "integer", + nullable: false, + defaultValue: 0, + oldClrType: typeof(int), + oldType: "integer", + oldNullable: true); + + migrationBuilder.AlterColumn( + name: "PastValuationId", + table: "PastValuationsLACoordinates", + type: "integer", + nullable: false, + defaultValue: 0, + oldClrType: typeof(int), + oldType: "integer", + oldNullable: true); + + migrationBuilder.AlterColumn( + name: "BuildingRateId", + table: "BuildingRatesLACoordinates", + type: "integer", + nullable: false, + defaultValue: 0, + oldClrType: typeof(int), + oldType: "integer", + oldNullable: true); + + migrationBuilder.AddForeignKey( + name: "FK_BuildingRatesLACoordinates_BuildingRatesLA_BuildingRateId", + table: "BuildingRatesLACoordinates", + column: "BuildingRateId", + principalTable: "BuildingRatesLA", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + + migrationBuilder.AddForeignKey( + name: "FK_PastValuationsLACoordinates_PastValuationsLA_PastValuationId", + table: "PastValuationsLACoordinates", + column: "PastValuationId", + principalTable: "PastValuationsLA", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + + migrationBuilder.AddForeignKey( + name: "FK_RentalEvidenceLACoordinates_RentalEvidencesLA_RentalEvidenc~", + table: "RentalEvidenceLACoordinates", + column: "RentalEvidenceId", + principalTable: "RentalEvidencesLA", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + + migrationBuilder.AddForeignKey( + name: "FK_SalesEvidenceLACoordinates_SalesEvidencesLA_SalesEvidenceId", + table: "SalesEvidenceLACoordinates", + column: "SalesEvidenceId", + principalTable: "SalesEvidencesLA", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + } + } +} diff --git a/Migrations/AppDbContextModelSnapshot.cs b/Migrations/AppDbContextModelSnapshot.cs index 38727b0..d4cf192 100644 --- a/Migrations/AppDbContextModelSnapshot.cs +++ b/Migrations/AppDbContextModelSnapshot.cs @@ -298,7 +298,7 @@ protected override void BuildModel(ModelBuilder modelBuilder) NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); - b.Property("BuildingRateId") + b.Property("BuildingRateId") .HasColumnType("integer"); b.Property("Coordinates") @@ -1217,7 +1217,7 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("MasterfileId") .HasColumnType("integer"); - b.Property("PastValuationId") + b.Property("PastValuationId") .HasColumnType("integer"); b.Property("UpdatedAt") @@ -1405,7 +1405,7 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("MasterfileId") .HasColumnType("integer"); - b.Property("RentalEvidenceId") + b.Property("RentalEvidenceId") .HasColumnType("integer"); b.Property("UpdatedAt") @@ -1631,7 +1631,7 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("MasterfileId") .HasColumnType("integer"); - b.Property("SalesEvidenceId") + b.Property("SalesEvidenceId") .HasColumnType("integer"); b.Property("UpdatedAt") @@ -1954,9 +1954,7 @@ protected override void BuildModel(ModelBuilder modelBuilder) { b.HasOne("ValuationBackend.Models.BuildingRatesLA", "BuildingRate") .WithMany() - .HasForeignKey("BuildingRateId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + .HasForeignKey("BuildingRateId"); b.HasOne("LandAquisitionMasterFile", "Masterfile") .WithMany() @@ -2097,9 +2095,7 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.HasOne("ValuationBackend.Models.PastValuationsLA", "PastValuation") .WithMany() - .HasForeignKey("PastValuationId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + .HasForeignKey("PastValuationId"); b.Navigation("Masterfile"); @@ -2146,9 +2142,7 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.HasOne("ValuationBackend.Models.RentalEvidenceLA", "RentalEvidence") .WithMany() - .HasForeignKey("RentalEvidenceId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + .HasForeignKey("RentalEvidenceId"); b.Navigation("Masterfile"); @@ -2195,9 +2189,7 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.HasOne("ValuationBackend.Models.SalesEvidenceLA", "SalesEvidence") .WithMany() - .HasForeignKey("SalesEvidenceId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + .HasForeignKey("SalesEvidenceId"); b.Navigation("Masterfile"); diff --git a/Models/LACoordinates.cs b/Models/LACoordinates.cs index 5a435d6..5a64f8c 100644 --- a/Models/LACoordinates.cs +++ b/Models/LACoordinates.cs @@ -9,9 +9,8 @@ public class PastValuationsLACoordinate [DatabaseGenerated(DatabaseGeneratedOption.Identity)] public int Id { get; set; } // Primary Key (auto increment) - // Foreign key to PastValuationsLA table - [Required] - public int PastValuationId { get; set; } + // Foreign key to PastValuationsLA table (nullable to allow creation without evidence) + public int? PastValuationId { get; set; } [ForeignKey("PastValuationId")] public virtual PastValuationsLA? PastValuation { get; set; } @@ -38,9 +37,8 @@ public class BuildingRatesLACoordinate [DatabaseGenerated(DatabaseGeneratedOption.Identity)] public int Id { get; set; } // Primary Key (auto increment) - // Foreign key to BuildingRatesLA table - [Required] - public int BuildingRateId { get; set; } + // Foreign key to BuildingRatesLA table (nullable to allow creation without evidence) + public int? BuildingRateId { get; set; } [ForeignKey("BuildingRateId")] public virtual BuildingRatesLA? BuildingRate { get; set; } @@ -67,9 +65,8 @@ public class SalesEvidenceLACoordinate [DatabaseGenerated(DatabaseGeneratedOption.Identity)] public int Id { get; set; } // Primary Key (auto increment) - // Foreign key to SalesEvidenceLA table - [Required] - public int SalesEvidenceId { get; set; } + // Foreign key to SalesEvidenceLA table (nullable to allow creation without evidence) + public int? SalesEvidenceId { get; set; } [ForeignKey("SalesEvidenceId")] public virtual SalesEvidenceLA? SalesEvidence { get; set; } @@ -96,9 +93,8 @@ public class RentalEvidenceLACoordinate [DatabaseGenerated(DatabaseGeneratedOption.Identity)] public int Id { get; set; } // Primary Key (auto increment) - // Foreign key to RentalEvidenceLA table - [Required] - public int RentalEvidenceId { get; set; } + // Foreign key to RentalEvidenceLA table (nullable to allow creation without evidence) + public int? RentalEvidenceId { get; set; } [ForeignKey("RentalEvidenceId")] public virtual RentalEvidenceLA? RentalEvidence { get; set; } diff --git a/services/LACoordinateServices.cs b/services/LACoordinateServices.cs index 3ea4119..4c8b97b 100644 --- a/services/LACoordinateServices.cs +++ b/services/LACoordinateServices.cs @@ -51,8 +51,8 @@ public async Task CreateAsync(PastValuati } var coordinate = _mapper.Map(dto); - // Set PastValuationId to 0 since it will be assigned later - coordinate.PastValuationId = 0; + // Set PastValuationId to null since it will be assigned later + coordinate.PastValuationId = null; var createdCoordinate = await _repository.CreateAsync(coordinate); return _mapper.Map(createdCoordinate); } @@ -139,8 +139,8 @@ public async Task CreateAsync(BuildingRate } var coordinate = _mapper.Map(dto); - // Set BuildingRateId to 0 since it will be assigned later - coordinate.BuildingRateId = 0; + // Set BuildingRateId to null since it will be assigned later + coordinate.BuildingRateId = null; var createdCoordinate = await _repository.CreateAsync(coordinate); return _mapper.Map(createdCoordinate); } @@ -227,8 +227,8 @@ public async Task CreateAsync(SalesEvidenc } var coordinate = _mapper.Map(dto); - // Set SalesEvidenceId to 0 since it will be assigned later - coordinate.SalesEvidenceId = 0; + // Set SalesEvidenceId to null since it will be assigned later + coordinate.SalesEvidenceId = null; var createdCoordinate = await _repository.CreateAsync(coordinate); return _mapper.Map(createdCoordinate); } @@ -315,8 +315,8 @@ public async Task CreateAsync(RentalEvide } var coordinate = _mapper.Map(dto); - // Set RentalEvidenceId to 0 since it will be assigned later - coordinate.RentalEvidenceId = 0; + // Set RentalEvidenceId to null since it will be assigned later + coordinate.RentalEvidenceId = null; var createdCoordinate = await _repository.CreateAsync(coordinate); return _mapper.Map(createdCoordinate); } From 24fe6a770b7295ed1d7ea2f13fbde822184cd2d2 Mon Sep 17 00:00:00 2001 From: JalinaH Date: Wed, 23 Jul 2025 12:25:39 +0530 Subject: [PATCH 21/21] feat: Add GetByMasterfileIdAsync methods to repositories and services for multiple coordinate types --- Controllers/LACoordinateControllers.cs | 32 ++++++++++++++++++++ repositories/ILACoordinateRepositories.cs | 4 +++ repositories/LACoordinateRepositories.cs | 36 +++++++++++++++++++++++ services/ILACoordinateServices.cs | 4 +++ services/LACoordinateServices.cs | 24 +++++++++++++++ 5 files changed, 100 insertions(+) diff --git a/Controllers/LACoordinateControllers.cs b/Controllers/LACoordinateControllers.cs index 5bab2e3..e7b9f0d 100644 --- a/Controllers/LACoordinateControllers.cs +++ b/Controllers/LACoordinateControllers.cs @@ -47,6 +47,14 @@ public async Task>> GetCoordinatesByMasterfileId(int masterfileId) + { + var coordinates = await _coordinateService.GetByMasterfileIdAsync(masterfileId); + return Ok(coordinates); + } + // POST: api/PastValuationsLACoordinate [HttpPost] public async Task> CreateCoordinate(PastValuationsLACoordinateCreateDto dto) @@ -141,6 +149,14 @@ public async Task return Ok(coordinates); } + // GET: api/BuildingRatesLACoordinate/masterfile/5 + [HttpGet("masterfile/{masterfileId}")] + public async Task>> GetCoordinatesByMasterfileId(int masterfileId) + { + var coordinates = await _coordinateService.GetByMasterfileIdAsync(masterfileId); + return Ok(coordinates); + } + // POST: api/BuildingRatesLACoordinate [HttpPost] public async Task> CreateCoordinate(BuildingRatesLACoordinateCreateDto dto) @@ -235,6 +251,14 @@ public async Task return Ok(coordinates); } + // GET: api/SalesEvidenceLACoordinate/masterfile/5 + [HttpGet("masterfile/{masterfileId}")] + public async Task>> GetCoordinatesByMasterfileId(int masterfileId) + { + var coordinates = await _coordinateService.GetByMasterfileIdAsync(masterfileId); + return Ok(coordinates); + } + // POST: api/SalesEvidenceLACoordinate [HttpPost] public async Task> CreateCoordinate(SalesEvidenceLACoordinateCreateDto dto) @@ -329,6 +353,14 @@ public async Task>> GetCoordinatesByMasterfileId(int masterfileId) + { + var coordinates = await _coordinateService.GetByMasterfileIdAsync(masterfileId); + return Ok(coordinates); + } + // POST: api/RentalEvidenceLACoordinate [HttpPost] public async Task> CreateCoordinate(RentalEvidenceLACoordinateCreateDto dto) diff --git a/repositories/ILACoordinateRepositories.cs b/repositories/ILACoordinateRepositories.cs index 4b57878..83f26df 100644 --- a/repositories/ILACoordinateRepositories.cs +++ b/repositories/ILACoordinateRepositories.cs @@ -10,6 +10,7 @@ public interface IPastValuationsLACoordinateRepository Task> GetAllAsync(); Task GetByIdAsync(int id); Task> GetByPastValuationIdAsync(int pastValuationId); + Task> GetByMasterfileIdAsync(int masterfileId); Task CreateAsync(PastValuationsLACoordinate coordinate); Task UpdateAsync(PastValuationsLACoordinate coordinate); Task DeleteAsync(int id); @@ -24,6 +25,7 @@ public interface IBuildingRatesLACoordinateRepository Task> GetAllAsync(); Task GetByIdAsync(int id); Task> GetByBuildingRateIdAsync(int buildingRateId); + Task> GetByMasterfileIdAsync(int masterfileId); Task CreateAsync(BuildingRatesLACoordinate coordinate); Task UpdateAsync(BuildingRatesLACoordinate coordinate); Task DeleteAsync(int id); @@ -38,6 +40,7 @@ public interface ISalesEvidenceLACoordinateRepository Task> GetAllAsync(); Task GetByIdAsync(int id); Task> GetBySalesEvidenceIdAsync(int salesEvidenceId); + Task> GetByMasterfileIdAsync(int masterfileId); Task CreateAsync(SalesEvidenceLACoordinate coordinate); Task UpdateAsync(SalesEvidenceLACoordinate coordinate); Task DeleteAsync(int id); @@ -52,6 +55,7 @@ public interface IRentalEvidenceLACoordinateRepository Task> GetAllAsync(); Task GetByIdAsync(int id); Task> GetByRentalEvidenceIdAsync(int rentalEvidenceId); + Task> GetByMasterfileIdAsync(int masterfileId); Task CreateAsync(RentalEvidenceLACoordinate coordinate); Task UpdateAsync(RentalEvidenceLACoordinate coordinate); Task DeleteAsync(int id); diff --git a/repositories/LACoordinateRepositories.cs b/repositories/LACoordinateRepositories.cs index 99efd07..ff52f62 100644 --- a/repositories/LACoordinateRepositories.cs +++ b/repositories/LACoordinateRepositories.cs @@ -42,6 +42,15 @@ public async Task> GetByPastValuationIdA .ToListAsync(); } + public async Task> GetByMasterfileIdAsync(int masterfileId) + { + return await _context.PastValuationsLACoordinates + .Include(c => c.PastValuation) + .Include(c => c.Masterfile) + .Where(c => c.MasterfileId == masterfileId) + .ToListAsync(); + } + public async Task CreateAsync(PastValuationsLACoordinate coordinate) { coordinate.CreatedAt = DateTime.UtcNow; @@ -134,6 +143,15 @@ public async Task> GetByBuildingRateIdAsy .ToListAsync(); } + public async Task> GetByMasterfileIdAsync(int masterfileId) + { + return await _context.BuildingRatesLACoordinates + .Include(c => c.BuildingRate) + .Include(c => c.Masterfile) + .Where(c => c.MasterfileId == masterfileId) + .ToListAsync(); + } + public async Task CreateAsync(BuildingRatesLACoordinate coordinate) { coordinate.CreatedAt = DateTime.UtcNow; @@ -226,6 +244,15 @@ public async Task> GetBySalesEvidenceIdAs .ToListAsync(); } + public async Task> GetByMasterfileIdAsync(int masterfileId) + { + return await _context.SalesEvidenceLACoordinates + .Include(c => c.SalesEvidence) + .Include(c => c.Masterfile) + .Where(c => c.MasterfileId == masterfileId) + .ToListAsync(); + } + public async Task CreateAsync(SalesEvidenceLACoordinate coordinate) { coordinate.CreatedAt = DateTime.UtcNow; @@ -318,6 +345,15 @@ public async Task> GetByRentalEvidenceId .ToListAsync(); } + public async Task> GetByMasterfileIdAsync(int masterfileId) + { + return await _context.RentalEvidenceLACoordinates + .Include(c => c.RentalEvidence) + .Include(c => c.Masterfile) + .Where(c => c.MasterfileId == masterfileId) + .ToListAsync(); + } + public async Task CreateAsync(RentalEvidenceLACoordinate coordinate) { coordinate.CreatedAt = DateTime.UtcNow; diff --git a/services/ILACoordinateServices.cs b/services/ILACoordinateServices.cs index d08ca56..f0b31a5 100644 --- a/services/ILACoordinateServices.cs +++ b/services/ILACoordinateServices.cs @@ -10,6 +10,7 @@ public interface IPastValuationsLACoordinateService Task> GetAllAsync(); Task GetByIdAsync(int id); Task> GetByPastValuationIdAsync(int pastValuationId); + Task> GetByMasterfileIdAsync(int masterfileId); Task CreateAsync(PastValuationsLACoordinateCreateDto dto); Task UpdateAsync(int id, PastValuationsLACoordinateUpdateDto dto); Task DeleteAsync(int id); @@ -21,6 +22,7 @@ public interface IBuildingRatesLACoordinateService Task> GetAllAsync(); Task GetByIdAsync(int id); Task> GetByBuildingRateIdAsync(int buildingRateId); + Task> GetByMasterfileIdAsync(int masterfileId); Task CreateAsync(BuildingRatesLACoordinateCreateDto dto); Task UpdateAsync(int id, BuildingRatesLACoordinateUpdateDto dto); Task DeleteAsync(int id); @@ -32,6 +34,7 @@ public interface ISalesEvidenceLACoordinateService Task> GetAllAsync(); Task GetByIdAsync(int id); Task> GetBySalesEvidenceIdAsync(int salesEvidenceId); + Task> GetByMasterfileIdAsync(int masterfileId); Task CreateAsync(SalesEvidenceLACoordinateCreateDto dto); Task UpdateAsync(int id, SalesEvidenceLACoordinateUpdateDto dto); Task DeleteAsync(int id); @@ -43,6 +46,7 @@ public interface IRentalEvidenceLACoordinateService Task> GetAllAsync(); Task GetByIdAsync(int id); Task> GetByRentalEvidenceIdAsync(int rentalEvidenceId); + Task> GetByMasterfileIdAsync(int masterfileId); Task CreateAsync(RentalEvidenceLACoordinateCreateDto dto); Task UpdateAsync(int id, RentalEvidenceLACoordinateUpdateDto dto); Task DeleteAsync(int id); diff --git a/services/LACoordinateServices.cs b/services/LACoordinateServices.cs index 4c8b97b..becfd4d 100644 --- a/services/LACoordinateServices.cs +++ b/services/LACoordinateServices.cs @@ -42,6 +42,12 @@ public async Task> GetByPastV return _mapper.Map>(coordinates); } + public async Task> GetByMasterfileIdAsync(int masterfileId) + { + var coordinates = await _repository.GetByMasterfileIdAsync(masterfileId); + return _mapper.Map>(coordinates); + } + public async Task CreateAsync(PastValuationsLACoordinateCreateDto dto) { var masterFileExists = await _repository.MasterFileExistsAsync(dto.MasterfileId); @@ -130,6 +136,12 @@ public async Task> GetByBuildi return _mapper.Map>(coordinates); } + public async Task> GetByMasterfileIdAsync(int masterfileId) + { + var coordinates = await _repository.GetByMasterfileIdAsync(masterfileId); + return _mapper.Map>(coordinates); + } + public async Task CreateAsync(BuildingRatesLACoordinateCreateDto dto) { var masterFileExists = await _repository.MasterFileExistsAsync(dto.MasterfileId); @@ -218,6 +230,12 @@ public async Task> GetBySalesE return _mapper.Map>(coordinates); } + public async Task> GetByMasterfileIdAsync(int masterfileId) + { + var coordinates = await _repository.GetByMasterfileIdAsync(masterfileId); + return _mapper.Map>(coordinates); + } + public async Task CreateAsync(SalesEvidenceLACoordinateCreateDto dto) { var masterFileExists = await _repository.MasterFileExistsAsync(dto.MasterfileId); @@ -306,6 +324,12 @@ public async Task> GetByRenta return _mapper.Map>(coordinates); } + public async Task> GetByMasterfileIdAsync(int masterfileId) + { + var coordinates = await _repository.GetByMasterfileIdAsync(masterfileId); + return _mapper.Map>(coordinates); + } + public async Task CreateAsync(RentalEvidenceLACoordinateCreateDto dto) { var masterFileExists = await _repository.MasterFileExistsAsync(dto.MasterfileId);