diff --git a/AAIntegration.SimmonsBank.API/.env b/AAIntegration.SimmonsBank.API/.env new file mode 100644 index 0000000..374562d --- /dev/null +++ b/AAIntegration.SimmonsBank.API/.env @@ -0,0 +1,7 @@ +ActiveAllocator__Database__Host=database +ActiveAllocator__Database__Port=5432 + + +POSTGRES_PASSWORD=nqA3UV3CliLLHpLL +PGADMIN_DEFAULT_EMAIL=admin@admin.com +PGADMIN_DEFAULT_PASSWORD=3254 diff --git a/AAIntegration.SimmonsBank.API/.gitignore b/AAIntegration.SimmonsBank.API/.gitignore new file mode 100644 index 0000000..8f8b43b --- /dev/null +++ b/AAIntegration.SimmonsBank.API/.gitignore @@ -0,0 +1,232 @@ +## Ignore Visual Studio temporary files, build results, and +## files generated by popular Visual Studio add-ons. + +# User-specific files +*.suo +*.user +*.userosscache +*.sln.docstates + +# User-specific files (MonoDevelop/Xamarin Studio) +*.userprefs + +# Build results +[Dd]ebug/ +[Dd]ebugPublic/ +[Rr]elease/ +[Rr]eleases/ +x64/ +x86/ +build/ +bld/ +bin/ +Bin/ +obj/ +Obj/ + +# Visual Studio 2015 cache/options directory +.vs/ +/wwwroot/dist/ + +# MSTest test Results +[Tt]est[Rr]esult*/ +[Bb]uild[Ll]og.* + +# NUNIT +*.VisualState.xml +TestResult.xml + +# Build Results of an ATL Project +[Dd]ebugPS/ +[Rr]eleasePS/ +dlldata.c + +*_i.c +*_p.c +*_i.h +*.ilk +*.meta +*.obj +*.pch +*.pdb +*.pgc +*.pgd +*.rsp +*.sbr +*.tlb +*.tli +*.tlh +*.tmp +*.tmp_proj +*.log +*.vspscc +*.vssscc +.builds +*.pidb +*.svclog +*.scc + +# Chutzpah Test files +_Chutzpah* + +# Visual C++ cache files +ipch/ +*.aps +*.ncb +*.opendb +*.opensdf +*.sdf +*.cachefile + +# Visual Studio profiler +*.psess +*.vsp +*.vspx +*.sap + +# TFS 2012 Local Workspace +$tf/ + +# Guidance Automation Toolkit +*.gpState + +# ReSharper is a .NET coding add-in +_ReSharper*/ +*.[Rr]e[Ss]harper +*.DotSettings.user + +# JustCode is a .NET coding add-in +.JustCode + +# TeamCity is a build add-in +_TeamCity* + +# DotCover is a Code Coverage Tool +*.dotCover + +# NCrunch +_NCrunch_* +.*crunch*.local.xml +nCrunchTemp_* + +# MightyMoose +*.mm.* +AutoTest.Net/ + +# Web workbench (sass) +.sass-cache/ + +# Installshield output folder +[Ee]xpress/ + +# DocProject is a documentation generator add-in +DocProject/buildhelp/ +DocProject/Help/*.HxT +DocProject/Help/*.HxC +DocProject/Help/*.hhc +DocProject/Help/*.hhk +DocProject/Help/*.hhp +DocProject/Help/Html2 +DocProject/Help/html + +# Click-Once directory +publish/ + +# Publish Web Output +*.[Pp]ublish.xml +*.azurePubxml +# TODO: Comment the next line if you want to checkin your web deploy settings +# but database connection strings (with potential passwords) will be unencrypted +*.pubxml +*.publishproj + +# NuGet Packages +*.nupkg +# The packages folder can be ignored because of Package Restore +**/packages/* +# except build/, which is used as an MSBuild target. +!**/packages/build/ +# Uncomment if necessary however generally it will be regenerated when needed +#!**/packages/repositories.config + +# Microsoft Azure Build Output +csx/ +*.build.csdef + +# Microsoft Azure Emulator +ecf/ +rcf/ + +# Microsoft Azure ApplicationInsights config file +ApplicationInsights.config + +# Windows Store app package directory +AppPackages/ +BundleArtifacts/ + +# Visual Studio cache files +# files ending in .cache can be ignored +*.[Cc]ache +# but keep track of directories ending in .cache +!*.[Cc]ache/ + +# Others +ClientBin/ +~$* +*~ +*.dbmdl +*.dbproj.schemaview +*.pfx +*.publishsettings +orleans.codegen.cs + +/node_modules + +# RIA/Silverlight projects +Generated_Code/ + +# Backup & report files from converting an old project file +# to a newer Visual Studio version. Backup files are not needed, +# because we have git ;-) +_UpgradeReport_Files/ +Backup*/ +UpgradeLog*.XML +UpgradeLog*.htm + +# SQL Server files +*.mdf +*.ldf + +# Business Intelligence projects +*.rdl.data +*.bim.layout +*.bim_*.settings + +# Microsoft Fakes +FakesAssemblies/ + +# GhostDoc plugin setting file +*.GhostDoc.xml + +# Node.js Tools for Visual Studio +.ntvs_analysis.dat + +# Visual Studio 6 build log +*.plg + +# Visual Studio 6 workspace options file +*.opt + +# Visual Studio LightSwitch build output +**/*.HTMLClient/GeneratedArtifacts +**/*.DesktopClient/GeneratedArtifacts +**/*.DesktopClient/ModelManifest.xml +**/*.Server/GeneratedArtifacts +**/*.Server/ModelManifest.xml +_Pvt_Extensions + +# Paket dependency manager +.paket/paket.exe + +# FAKE - F# Make +.fake/ diff --git a/AAIntegration.SimmonsBank.API/AAIntegration.SimmonsBank.API.csproj b/AAIntegration.SimmonsBank.API/AAIntegration.SimmonsBank.API.csproj index ffe0227..6e5f1ae 100644 --- a/AAIntegration.SimmonsBank.API/AAIntegration.SimmonsBank.API.csproj +++ b/AAIntegration.SimmonsBank.API/AAIntegration.SimmonsBank.API.csproj @@ -3,20 +3,35 @@ net7.0 enable + AAIntegration.SimmonsBank.API + false enable + + ActiveAllocator-Integration-SimmonsBank + DefaultContainer + 1.0.0;latest + linux-x64 + + - - - - + + + + + + runtime; build; native; contentfiles; analyzers; buildtransitive all - - + + + + + + diff --git a/AAIntegration.SimmonsBank.API/Configs/ActiveAllocatorConfig.cs b/AAIntegration.SimmonsBank.API/Configs/ActiveAllocatorConfig.cs new file mode 100644 index 0000000..47db1ec --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Configs/ActiveAllocatorConfig.cs @@ -0,0 +1,8 @@ +namespace AAIntegration.SimmonsBank.API.Configs; + +public class ActiveAllocatorConfig +{ + DatabaseConfig Database { get; set; } + List AllowedHosts { get; set; } + string APIUrl { get; set; } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Configs/AppSettings.cs b/AAIntegration.SimmonsBank.API/Configs/AppSettings.cs index ad5138d..6b83fa6 100644 --- a/AAIntegration.SimmonsBank.API/Configs/AppSettings.cs +++ b/AAIntegration.SimmonsBank.API/Configs/AppSettings.cs @@ -1,4 +1,4 @@ -namespace AAIntegration.SimmonsBank.API.Configs; +namespace AAIntegration.SimmonsBank.API.Config; public class AppSettings { diff --git a/AAIntegration.SimmonsBank.API/Configs/DatabaseConfig.cs b/AAIntegration.SimmonsBank.API/Configs/DatabaseConfig.cs index d44828d..5615352 100644 --- a/AAIntegration.SimmonsBank.API/Configs/DatabaseConfig.cs +++ b/AAIntegration.SimmonsBank.API/Configs/DatabaseConfig.cs @@ -10,6 +10,7 @@ public class DatabaseConfig public string GetConnectionString() { + //Server=localhost;Port=15432;Database=aadb;User Id=postgres;Password=nqA3UV3CliLLHpLL" return $"Server={Host};Port={Port};Database={Name};User Id={User};Password={Password}"; } } diff --git a/AAIntegration.SimmonsBank.API/Configs/EnvelopeFundConfig.cs b/AAIntegration.SimmonsBank.API/Configs/EnvelopeFundConfig.cs new file mode 100644 index 0000000..7fb0dd5 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Configs/EnvelopeFundConfig.cs @@ -0,0 +1,6 @@ +namespace AAIntegration.SimmonsBank.API.Configs; + +public class EnvelopeFundConfig +{ + public int CheckIntervalInMinutes { get; set; } +} diff --git a/AAIntegration.SimmonsBank.API/Controllers/AccountController.cs b/AAIntegration.SimmonsBank.API/Controllers/AccountController.cs new file mode 100644 index 0000000..ef9d6ba --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Controllers/AccountController.cs @@ -0,0 +1,84 @@ +namespace AAIntegration.SimmonsBank.API.Controllers; + +using AutoMapper; +using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Options; +using AAIntegration.SimmonsBank.API.Models.Accounts; +using AAIntegration.SimmonsBank.API.Services; +using AAIntegration.SimmonsBank.API.Config; +using System.Collections.Generic; +using AAIntegration.SimmonsBank.API.Entities; +using Microsoft.AspNetCore.Authorization; + +[Authorize] +[ApiController] +[Route("[controller]")] +public class AccountsController : ControllerBase +{ + private IAccountService _accountService; + private IMapper _mapper; + private readonly AppSettings _appSettings; + + public AccountsController( + IAccountService accountService, + IMapper mapper, + IOptions appSettings) + { + _accountService = accountService; + _mapper = mapper; + _appSettings = appSettings.Value; + } + + [HttpGet] + public IActionResult GetAll() + { + List accountDtos = new List(); + + foreach (Account acc in _accountService.GetAll()) + accountDtos.Add(_mapper.Map(acc)); + + return Ok(accountDtos); + } + + [HttpGet("{id}")] + public IActionResult GetById(int id) + { + Account account = _accountService.GetById(id); + return Ok(_mapper.Map(account)); + } + + [HttpPost] + public IActionResult Create([FromBody]AccountCreateRequest model) + { + _accountService.Create(model); + return Ok(new { message = "account created" }); + } + + [HttpPut("{id}")] + public IActionResult Update(int id, [FromBody]AccountUpdateRequest model) + { + _accountService.Update(id, model); + return Ok(new { message = "account updated" }); + } + + [HttpDelete("{id}")] + public IActionResult Delete(int id) + { + _accountService.Delete(id); + return Ok(new { message = "account deleted" }); + } + + [HttpGet("RefreshBalance/{id}")] + public IActionResult RefreshBalance(int id) + { + Account account = _accountService.RefreshAccountBalance(id); + return Ok(_mapper.Map(account)); + } + + [HttpGet("Historical/{id}")] + public IActionResult Historical(int id, int lookBack) + { + AccountHistorical hist = _accountService.GetAccountHistorical(id, lookBack); + return Ok(_mapper.Map(hist)); + } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Controllers/ApiKeyController.cs b/AAIntegration.SimmonsBank.API/Controllers/ApiKeyController.cs new file mode 100644 index 0000000..6134b9d --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Controllers/ApiKeyController.cs @@ -0,0 +1,83 @@ +namespace AAIntegration.SimmonsBank.API.Controllers; + +using AutoMapper; +using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Options; +using AAIntegration.SimmonsBank.API.Models.Users; +using AAIntegration.SimmonsBank.API.Services; +using AAIntegration.SimmonsBank.API.Config; +using System; +using System.Security.Claims; +using Microsoft.AspNetCore.Authorization; + +[Authorize] +[ApiController] +[Route("[controller]")] +public class ApiKeyController : ControllerBase +{ + private IApiKeyService _apiKeyService; + private IMapper _mapper; + private readonly AppSettings _appSettings; + private readonly ILogger _logger; + private IUserService _userService; + + public ApiKeyController( + IApiKeyService apiKeyService, + IMapper mapper, + IOptions appSettings, + ILogger logger, + IUserService userService) + { + _apiKeyService = apiKeyService; + _mapper = mapper; + _appSettings = appSettings.Value; + _logger = logger; + _userService = userService; + } + + [HttpGet] + public IActionResult GetApiKey() + { + string apiKey = _userService.GetUserApiKey(this.GetCurrentUserId()); + string[] apiKeys = { apiKey }; + + Console.WriteLine($"User API Key Got: " + apiKey); + return Ok(new { keys = apiKeys }); + } + + /*[HttpGet("{id}")] + public IActionResult GetById(int id) + { + var user = _apiKeyService.GetById(id); + return Ok(user); + }*/ + + [HttpGet("CreateNew")] + public IActionResult CreateNewApiKey() + { + string apiKey = _userService.CreateUserApiKey(this.GetCurrentUserId()); + return Ok(new { message = "API Key created", key = apiKey }); + } + + [HttpDelete("{apiKey}")] + public IActionResult Delete(string apiKey) + { + _userService.InvalidateApiKey(apiKey); + return Ok(new { message = "API Key deleted" }); + } + + // Helpers + + private int GetCurrentUserId() + { + string nameIdentifier = User.FindFirstValue(ClaimTypes.NameIdentifier); + + if (nameIdentifier is null) + _logger.LogInformation($"Name Identifier: is null"); + + _logger.LogInformation($"Name Identifier: {nameIdentifier}"); + Console.WriteLine($"User Id: " + nameIdentifier); + + return Convert.ToInt32(nameIdentifier); + } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Controllers/AppInfoController.cs b/AAIntegration.SimmonsBank.API/Controllers/AppInfoController.cs new file mode 100644 index 0000000..47a431a --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Controllers/AppInfoController.cs @@ -0,0 +1,32 @@ +namespace AAIntegration.SimmonsBank.API.Controllers; + +using AutoMapper; +using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Options; +using AAIntegration.SimmonsBank.API.Models.Users; +using AAIntegration.SimmonsBank.API.Services; +using AAIntegration.SimmonsBank.API.Config; +using System; +using System.Security.Claims; +using Microsoft.AspNetCore.Authorization; + +[ApiController] +[Route("[controller]")] +public class AppInfoController : ControllerBase +{ + private IVersionService _versionService; + + public AppInfoController( + IVersionService versionService) + { + _versionService = versionService; + } + + [HttpGet("ApplicationVersion")] + public IActionResult GetApplicationVersion() + { + string appVersion = _versionService.GetVersion(); + + return Ok(new { version = appVersion }); + } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Controllers/AutoclassController.cs b/AAIntegration.SimmonsBank.API/Controllers/AutoclassController.cs new file mode 100644 index 0000000..f3eaac5 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Controllers/AutoclassController.cs @@ -0,0 +1,103 @@ +namespace AAIntegration.SimmonsBank.API.Controllers; + +using AutoMapper; +using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Options; +using AAIntegration.SimmonsBank.API.Models.Autoclass; +using AAIntegration.SimmonsBank.API.Services; +using AAIntegration.SimmonsBank.API.Config; +using System.Collections.Generic; +using AAIntegration.SimmonsBank.API.Entities; +using Microsoft.AspNetCore.Authorization; + +[Authorize] +[ApiController] +[Route("[controller]")] +public class AutoclassController : ControllerBase +{ + private IAutoclassService _autoclassService; + private IMapper _mapper; + private readonly AppSettings _appSettings; + + public AutoclassController( + IAutoclassService autoclassService, + IMapper mapper, + IOptions appSettings) + { + _autoclassService = autoclassService; + _mapper = mapper; + _appSettings = appSettings.Value; + } + + [HttpGet] + public IActionResult GetAll(int? account = null) + { + List autoclassDtos = new List(); + + foreach (AutoclassRule auto in _autoclassService.GetAll(account)) + autoclassDtos.Add(_mapper.Map(auto)); + + return Ok(autoclassDtos); + } + + [HttpGet("{id}")] + public IActionResult GetById(int id) + { + AutoclassRule auto = _autoclassService.GetById(id); + return Ok(_mapper.Map(auto)); + } + + [HttpPost] + public IActionResult Create([FromBody]AutoclassRuleCreateRequest model) + { + _autoclassService.Create(model); + return Ok(new { message = "AutoclassRule created" }); + } + + [HttpPut("{id}")] + public IActionResult Update(int id, [FromBody]AutoclassRuleUpdateRequest model) + { + _autoclassService.Update(id, model); + return Ok(new { message = "AutoclassRule updated" }); + } + + [HttpDelete("{id}")] + public IActionResult Delete(int id) + { + _autoclassService.Delete(id); + return Ok(new { message = "AutoclassRule deleted" }); + } + + /*[HttpGet("RefreshBalance/{id}")] + public IActionResult RefreshBalance(int id) + { + Account account = _accountService.RefreshAccountBalance(id); + return Ok(_mapper.Map(account)); + }*/ + // [HttpGet("RefreshBalance/{id}")] + [HttpGet("TypeOperatorInfo")] + public IActionResult GetAllTypeOperatorInfo() + { + return Ok(_autoclassService.GetAllTypeOperatorInfo()); + } + + [HttpGet("FieldInfo")] + public IActionResult GetAllFieldInfo() + { + return Ok(_autoclassService.GetAllFieldInfo()); + } + + [HttpGet("TriggerAutoclassRule/{id}")] + public IActionResult TriggerAutoclassRule(int id) + { + int affectedTransactions = _autoclassService.ApplyAutoclassRule(id); + return Ok(new { message = $"AutoclassRule triggered and updated {affectedTransactions} transaction(s)." }); + } + + [HttpGet("TriggerTransactionRules/{id}")] + public IActionResult TriggerAutoclassRulesForTransaction(int id) + { + int triggeredRules = _autoclassService.ApplyRulesForTransaction(id); + return Ok(new { message = $"Transaction triggered {triggeredRules} autoclass rule(s)." }); + } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Controllers/CurrencyTypeController.cs b/AAIntegration.SimmonsBank.API/Controllers/CurrencyTypeController.cs new file mode 100644 index 0000000..bb485e0 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Controllers/CurrencyTypeController.cs @@ -0,0 +1,64 @@ +namespace AAIntegration.SimmonsBank.API.Controllers; + +using AutoMapper; +using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Options; +using AAIntegration.SimmonsBank.API.Models.CurrencyType; +using AAIntegration.SimmonsBank.API.Services; +using AAIntegration.SimmonsBank.API.Config; +using Microsoft.AspNetCore.Authorization; + +[Authorize] +[ApiController] +[Route("[controller]")] +public class CurrencyTypesController : ControllerBase +{ + private ICurrencyTypeService _currencyTypeService; + private IMapper _mapper; + private readonly AppSettings _appSettings; + + public CurrencyTypesController( + ICurrencyTypeService currencyTypeService, + IMapper mapper, + IOptions appSettings) + { + _currencyTypeService = currencyTypeService; + _mapper = mapper; + _appSettings = appSettings.Value; + } + + [HttpGet] + public IActionResult GetAll() + { + var currencyTypes = _currencyTypeService.GetAll(); + return Ok(currencyTypes); + } + + [HttpGet("{id}")] + public IActionResult GetById(int id) + { + var currencyType = _currencyTypeService.GetById(id); + return Ok(currencyType); + } + + [HttpPost] + public IActionResult Create([FromBody]CurrencyTypeCreateRequest model) + { + _currencyTypeService.Create(model); + return Ok(new { message = "currencyType created" }); + } + + /*[HttpPut("{id}")] + public IActionResult Update(int id, [FromBody]AccountUpdateRequest model) + { + _accountService.Update(id, model); + return Ok(new { message = "account updated" }); + }*/ + + [HttpDelete("{id}")] + public IActionResult Delete(int id) + { + _currencyTypeService.Delete(id); + return Ok(new { message = "currencyType deleted" }); + } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Controllers/EnvelopeController.cs b/AAIntegration.SimmonsBank.API/Controllers/EnvelopeController.cs new file mode 100644 index 0000000..980324f --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Controllers/EnvelopeController.cs @@ -0,0 +1,108 @@ +namespace AAIntegration.SimmonsBank.API.Controllers; + +using AutoMapper; +using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Options; +using AAIntegration.SimmonsBank.API.Models.Envelopes; +using AAIntegration.SimmonsBank.API.Services; +using AAIntegration.SimmonsBank.API.Config; +using System.Collections.Generic; +using AAIntegration.SimmonsBank.API.Entities; +using Microsoft.AspNetCore.Authorization; + +[Authorize] +[ApiController] +[Route("[controller]")] +public class EnvelopesController : ControllerBase +{ + private IEnvelopeService _envelopeService; + private IMapper _mapper; + private readonly AppSettings _appSettings; + + public EnvelopesController( + IEnvelopeService envelopeService, + IMapper mapper, + IOptions appSettings) + { + _envelopeService = envelopeService; + _mapper = mapper; + _appSettings = appSettings.Value; + } + + [HttpGet] + public IActionResult GetAll(int? accountId = null) + { + List envelopeDtos = new List(); + + foreach (Envelope env in _envelopeService.GetAll(accountId)) + { + List methodDtos = new List(); + + foreach (EnvelopeFundingMethod method in env.FundingMethods) + { + methodDtos.Add(_mapper.Map(method)); + } + + EnvelopeDTO dto = new EnvelopeDTO { + Id = env.Id, + Name = env.Name, + AccountId = env.Account == null ? 0 : env.Account.Id, + Enabled = env.Enabled, + Period = env.Period, + IsPersistant = env.IsPersistant, + Priority = env.Priority, + Balance = env.Balance, + InitialBalance = env.InitialBalance, + LastTriggeredOn = env.LastTriggeredOn, + FundingMethods = methodDtos + }; + + envelopeDtos.Add(dto); + } + //envelopeDtos.Add(_mapper.Map(env)); + + return Ok(envelopeDtos); + } + + [HttpGet("{id}")] + public IActionResult GetById(int id) + { + Envelope envelope = _envelopeService.GetById(id); + return Ok(_mapper.Map(envelope)); + } + + [HttpPost] + public IActionResult Create([FromBody]EnvelopeCreateRequest model) + { + _envelopeService.Create(model); + return Ok(new { message = "envelope created" }); + } + + [HttpPut("{id}")] + public IActionResult Update(int id, [FromBody]EnvelopeUpdateRequest model) + { + _envelopeService.Update(id, model); + return Ok(new { message = "envelope updated" }); + } + + [HttpDelete("{id}")] + public IActionResult Delete(int id) + { + _envelopeService.Delete(id); + return Ok(new { message = "envelope deleted" }); + } + + [HttpGet("Historical/{id}")] + public IActionResult Historical(int id, int lookBack) + { + EnvelopeHistorical hist = _envelopeService.GetEnvelopeHistorical(id, lookBack); + return Ok(_mapper.Map(hist)); + } + + [HttpGet("FundingMethodModes")] + public IActionResult FundingMethodModes() + { + List modes = _envelopeService.GetEnvelopeFundingMethodModes(); + return Ok(modes); + } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Controllers/TransactionController.cs b/AAIntegration.SimmonsBank.API/Controllers/TransactionController.cs new file mode 100644 index 0000000..3ae5c74 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Controllers/TransactionController.cs @@ -0,0 +1,88 @@ +namespace AAIntegration.SimmonsBank.API.Controllers; + +using AutoMapper; +using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Options; +using AAIntegration.SimmonsBank.API.Models.Transactions; +using AAIntegration.SimmonsBank.API.Services; +using AAIntegration.SimmonsBank.API.Config; +using System.Runtime.InteropServices; +using AAIntegration.SimmonsBank.API.Entities; +using System.Collections.Generic; +using Microsoft.AspNetCore.Authorization; + +[Authorize] +[ApiController] +[Route("[controller]")] +public class TransactionsController : ControllerBase +{ + private ITransactionService _transactionService; + private IMapper _mapper; + private readonly AppSettings _appSettings; + + public TransactionsController( + ITransactionService transactionService, + IMapper mapper, + IOptions appSettings) + { + _transactionService = transactionService; + _mapper = mapper; + _appSettings = appSettings.Value; + } + + [HttpGet] + public IActionResult GetAll(int? accountId = null) + { + List transactionDtos = new List(); + + foreach (Transaction tran in _transactionService.GetAll()) + { + if (accountId.HasValue + && (tran.DebitAccount == null || tran.DebitAccount.Id != accountId) + && (tran.CreditAccount == null || tran.CreditAccount.Id != accountId)) + continue; + + transactionDtos.Add(_mapper.Map(tran)); + } + + // Sort by Date + transactionDtos.Sort((t1, t2) => t2.Date.CompareTo(t1.Date)); + + return Ok(transactionDtos); + } + + [HttpGet("{id}")] + public IActionResult GetById(int id) + { + Transaction tran = _transactionService.GetById(id); + return Ok(_mapper.Map(tran)); + } + + [HttpPost("BulkAdd")] + public IActionResult BulkCreate([FromBody]List model) + { + List trans = _transactionService.BulkCreate(model).ToList(); + return Ok(new { message = $"{trans.Count()} transaction(s) created." }); + } + + [HttpPost] + public IActionResult Create([FromBody]TransactionCreate model) + { + Transaction tran = _transactionService.Create(model); + return Ok(new { message = $"transaction '{tran.Description}' created with id '{tran.Id}'." }); + } + + [HttpPut("{id}")] + public IActionResult Update(int id, [FromBody]TransactionUpdateRequest model) + { + _transactionService.Update(id, model); + return Ok(new { message = $"transaction with id '{id}' updated" }); + } + + [HttpDelete("{id}")] + public IActionResult Delete(int id) + { + _transactionService.Delete(id); + return Ok(new { message = "transaction deleted" }); + } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Controllers/UserController.cs b/AAIntegration.SimmonsBank.API/Controllers/UserController.cs new file mode 100644 index 0000000..b4060cc --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Controllers/UserController.cs @@ -0,0 +1,78 @@ +namespace AAIntegration.SimmonsBank.API.Controllers; + +using AutoMapper; +using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Options; +using AAIntegration.SimmonsBank.API.Models.Users; +using AAIntegration.SimmonsBank.API.Services; +using AAIntegration.SimmonsBank.API.Config; +using System; +using Microsoft.AspNetCore.Authorization; + +[ApiController] +[Route("[controller]")] +public class UsersController : ControllerBase +{ + private IUserService _userService; + private IMapper _mapper; + private readonly AppSettings _appSettings; + private readonly ILogger _logger; + + public UsersController( + IUserService userService, + IMapper mapper, + IOptions appSettings, + ILogger logger) + { + _userService = userService; + _mapper = mapper; + _appSettings = appSettings.Value; + _logger = logger; + } + + [HttpPost("authenticate")] + public IActionResult Authenticate(AuthenticateRequest model) + { + var response = _userService.Authenticate(model); + return Ok(response); + } + + [HttpPost("register")] + public IActionResult Register(RegisterRequest model) + { + _userService.Register(model); + return Ok(new { message = "Registration successful" }); + } + + [Authorize] + [HttpGet] + public IActionResult GetAll() + { + var users = _userService.GetAll(); + return Ok(users); + } + + [Authorize] + [HttpGet("{id}")] + public IActionResult GetById(int id) + { + var user = _userService.GetById(id); + return Ok(user); + } + + [Authorize] + [HttpPut("{id}")] + public IActionResult Update(int id, [FromBody]UserUpdateRequest model) + { + _userService.Update(id, model); + return Ok(new { message = "User updated" }); + } + + [Authorize] + [HttpDelete("{id}")] + public IActionResult Delete(int id) + { + _userService.Delete(id); + return Ok(new { message = "User deleted" }); + } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Entities/Account.cs b/AAIntegration.SimmonsBank.API/Entities/Account.cs new file mode 100644 index 0000000..afd347b --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Entities/Account.cs @@ -0,0 +1,20 @@ +using System.Text.Json.Serialization; + +namespace AAIntegration.SimmonsBank.API.Entities; + +public class Account +{ + public int Id { get; set; } + public string Name { get; set; } + public DateTime LastActivity { get; set; } + public decimal VirtualBalance { get; set; } + public decimal Balance { get; set; } + public DateTime CreatedOn { get; set; } + public decimal InitialBalance { get; set; } + public int CurrencyId { get; set; } + public CurrencyType Currency { get; set; } + public string ExternalAccountNumber { get; set; } + public ICollection Envelopes { get; set; } + //public ICollection Transactions { get; set; } + //public Institution institution { get; set; } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Entities/AccountHistorical.cs b/AAIntegration.SimmonsBank.API/Entities/AccountHistorical.cs new file mode 100644 index 0000000..b1512c5 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Entities/AccountHistorical.cs @@ -0,0 +1,16 @@ +using System; +using System.Collections.Generic; +using System.Data; +using System.Text.Json.Serialization; + +namespace AAIntegration.SimmonsBank.API.Entities; + +public class AccountHistorical +{ + //public int Id { get; set; } + public Account Account { get; set; } + public int LookBack { get; set; } + public Statistic Income { get; set; } = null; + public Statistic Credit { get; set; } = null; + public Statistic Debit { get; set; } = null; +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Entities/AutoclassChange.cs b/AAIntegration.SimmonsBank.API/Entities/AutoclassChange.cs new file mode 100644 index 0000000..0cffe19 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Entities/AutoclassChange.cs @@ -0,0 +1,13 @@ +using System; +using System.Collections.Generic; +using System.Data; +using System.Text.Json.Serialization; + +namespace AAIntegration.SimmonsBank.API.Entities; + +public class AutoclassChange +{ + public int Id { get; set; } + public AutoclassTransactionField Field { get; set; } + public string Value { get; set; } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Entities/AutoclassExpression.cs b/AAIntegration.SimmonsBank.API/Entities/AutoclassExpression.cs new file mode 100644 index 0000000..3eced47 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Entities/AutoclassExpression.cs @@ -0,0 +1,232 @@ +using System; +using System.Collections.Generic; +using System.Data; +using System.Text.Json.Serialization; + +namespace AAIntegration.SimmonsBank.API.Entities; + +public class AutoclassExpression +{ + public int Id { get; set; } + public AutoclassTransactionField TransactionField { get; set; } + public AutoclassCompareOperator CompareOperator { get; set; } + public string Value { get; set; } + + public bool Evaluate(Transaction transaction) + { + switch (TransactionField) + { + case AutoclassTransactionField.DATE: + return EvaluateDateType(transaction.Date); + + case AutoclassTransactionField.EXTERNAL_ID: + return EvaluateStringType(transaction.ExternalId); + + case AutoclassTransactionField.DESCRIPTION: + return EvaluateStringType(transaction.Description); + + case AutoclassTransactionField.AMOUNT: + return EvaluateDecimalType(transaction.Amount); + + case AutoclassTransactionField.IS_PENDING: + return EvaluateBoolType(transaction.IsPending); + + case AutoclassTransactionField.DEBIT_ACCOUNT: + return EvaluateAccountType(transaction.DebitAccount); + + case AutoclassTransactionField.CREDIT_ACCOUNT: + return EvaluateAccountType(transaction.CreditAccount); + + case AutoclassTransactionField.DEBIT_ENVELOPE: + return EvaluateEnvelopeType(transaction.DebitEnvelope); + + case AutoclassTransactionField.CREDIT_ENVELOPE: + return EvaluateEnvelopeType(transaction.CreditEnvelope); + + case AutoclassTransactionField.CURRENCY_TYPE: + return EvaluateCurrencyType(transaction.CurrencyType); + + case AutoclassTransactionField.TAGS: + return EvaluateStringArrayType(transaction.Tags); + + default: + throw new Exception($"AutoclassExpression::Evaluate(Transaction) couldn't recognize the field '{TransactionField}'."); + } + } + + private bool EvaluateDateType(DateTime currentValue) + { + /*DateTime expValue = Convert.ToDateTime(Value); + var dt = DateTime.ParseExact(Value , "yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture);*/ + DateTime expValue = DateTime.Parse(Value, null, System.Globalization.DateTimeStyles.RoundtripKind); + + switch (CompareOperator) + { + case AutoclassCompareOperator.EQUAL: + return currentValue.Date == expValue.Date; + case AutoclassCompareOperator.NOT_EQUAL: + return currentValue.Date != expValue.Date; + case AutoclassCompareOperator.GREATER_THAN: + return currentValue.Date > expValue.Date; + case AutoclassCompareOperator.GREATER_THAN_OR_EQUAL: + return currentValue.Date >= expValue.Date; + case AutoclassCompareOperator.LESS_THAN: + return currentValue.Date < expValue.Date; + case AutoclassCompareOperator.LESS_THAN_OR_EQUAL: + return currentValue.Date <= expValue.Date; + default: + throw new Exception($"Invalid compare operator '{CompareOperator}' for type 'DateTime'"); + } + } + + private bool EvaluateStringType(string currentValue) + { + switch (CompareOperator) + { + case AutoclassCompareOperator.EQUAL: + return currentValue == Value; + case AutoclassCompareOperator.NOT_EQUAL: + return currentValue != Value; + case AutoclassCompareOperator.CONTAINS: + return currentValue.Contains(Value); + case AutoclassCompareOperator.CONTAINS_INSENSITIVE: + return currentValue.ToUpper().Contains(Value.ToUpper()); + default: + throw new Exception($"Invalid compare operator '{CompareOperator}' for type 'string'"); + } + } + + private bool EvaluateDecimalType(decimal currentValue) + { + decimal expValue = Convert.ToDecimal(Value); + + switch (CompareOperator) + { + case AutoclassCompareOperator.EQUAL: + return currentValue == expValue; + case AutoclassCompareOperator.NOT_EQUAL: + return currentValue != expValue; + case AutoclassCompareOperator.GREATER_THAN: + return currentValue > expValue; + case AutoclassCompareOperator.GREATER_THAN_OR_EQUAL: + return currentValue >= expValue; + case AutoclassCompareOperator.LESS_THAN: + return currentValue < expValue; + case AutoclassCompareOperator.LESS_THAN_OR_EQUAL: + return currentValue <= expValue; + default: + throw new Exception($"Invalid compare operator '{CompareOperator}' for type 'decimal'"); + } + } + + private bool EvaluateBoolType(bool currentValue) + { + bool expValue = Convert.ToBoolean(Value); + + switch (CompareOperator) + { + case AutoclassCompareOperator.EQUAL: + return currentValue == expValue; + case AutoclassCompareOperator.NOT_EQUAL: + return currentValue != expValue; + default: + throw new Exception($"Invalid compare operator '{CompareOperator}' for type 'boolean'"); + } + } + + private bool EvaluateAccountType(Account currentValue) + { + int expValue = Convert.ToInt32(Value); + + switch (CompareOperator) + { + case AutoclassCompareOperator.EQUAL: + if (currentValue == null) + return expValue == 0; + else + return currentValue.Id == expValue; + case AutoclassCompareOperator.NOT_EQUAL: + if (currentValue == null) + return expValue != 0; + else + return currentValue.Id != expValue; + default: + throw new Exception($"Invalid compare operator '{CompareOperator}' for type 'Account'"); + } + } + + //evaluateEnvelopeType + + private bool EvaluateEnvelopeType(Envelope currentValue) + { + int expValue = Convert.ToInt32(Value); + + switch (CompareOperator) + { + case AutoclassCompareOperator.EQUAL: + if (currentValue == null) + return expValue == 0; + else + return currentValue.Id == expValue; + case AutoclassCompareOperator.NOT_EQUAL: + if (currentValue == null) + return expValue != 0; + else + return currentValue.Id != expValue; + default: + throw new Exception($"Invalid compare operator '{CompareOperator}' for type 'Envelope'"); + } + } + + private bool EvaluateCurrencyType(CurrencyType currentValue) + { + int expValue = Convert.ToInt32(Value); + + switch (CompareOperator) + { + case AutoclassCompareOperator.EQUAL: + if (currentValue == null) + return expValue == 0; + else + return currentValue.Id == expValue; + case AutoclassCompareOperator.NOT_EQUAL: + if (currentValue == null) + return expValue != 0; + else + return currentValue.Id != expValue; + default: + throw new Exception($"Invalid compare operator '{CompareOperator}' for type 'CurrencyType'"); + } + } + + private bool EvaluateStringArrayType(List currentValue) + { + switch (CompareOperator) + { + case AutoclassCompareOperator.CONTAINS: + if (currentValue == null) + return false; + else + return currentValue.Any(s => s == Value); + case AutoclassCompareOperator.CONTAINS_INSENSITIVE: + if (currentValue == null) + return false; + else + return currentValue.Any(s => s.ToUpper() == Value.ToUpper()); + default: + throw new Exception($"Invalid compare operator '{CompareOperator}' for type 'string[]'"); + } + } +} + +public enum AutoclassCompareOperator +{ + EQUAL, + NOT_EQUAL, + GREATER_THAN, + LESS_THAN, + GREATER_THAN_OR_EQUAL, + LESS_THAN_OR_EQUAL, + CONTAINS, + CONTAINS_INSENSITIVE, +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Entities/AutoclassRule.cs b/AAIntegration.SimmonsBank.API/Entities/AutoclassRule.cs new file mode 100644 index 0000000..4b2a4c9 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Entities/AutoclassRule.cs @@ -0,0 +1,27 @@ +using System.Collections.Generic; +using System.Data; +using System.Text.Json.Serialization; + +namespace AAIntegration.SimmonsBank.API.Entities; + +public class AutoclassRule +{ + public int Id { get; set; } + public string Name { get; set; } + public Account Account { get; set; } + public IEnumerable Expressions { get; set; } + public IEnumerable Changes { get; set; } + public bool Enabled { get; set; } +} + +public enum AutoclassType +{ + STRING, + BOOLEAN, + DECIMAL, + DATETIME, + ACCOUNT, + ENVELOPE, + CURRENCYTYPE, + STRING_ARRAY, +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Entities/CurrencyType.cs b/AAIntegration.SimmonsBank.API/Entities/CurrencyType.cs new file mode 100644 index 0000000..64c7156 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Entities/CurrencyType.cs @@ -0,0 +1,12 @@ +using System.Data; +using System.Text.Json.Serialization; + +namespace AAIntegration.SimmonsBank.API.Entities; + +public class CurrencyType +{ + public int Id { get; set; } + public string Code { get; set; } // USD + public string Symbol { get; set; } // $ + public int DecimalPlaces { get; set; } // 2 +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Entities/Envelope.cs b/AAIntegration.SimmonsBank.API/Entities/Envelope.cs new file mode 100644 index 0000000..a96beaf --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Entities/Envelope.cs @@ -0,0 +1,25 @@ +using System.Collections.Generic; +using System.Data; +using System.Text.Json.Serialization; + +namespace AAIntegration.SimmonsBank.API.Entities; + +public class Envelope +{ + public int Id { get; set; } + public string Name { get; set; } + public Account Account { get; set; } + public bool Enabled { get; set; } + public TimeSpan Period { get; set; } + public bool IsPersistant { get; set; } + public int Priority { get; set; } + public decimal Balance { get; set; } + public decimal InitialBalance { get; set; } + public DateTime? LastTriggeredOn { get; set; } + public IEnumerable FundingMethods { get; set; } + + public string GetLogString() + { + return $"'{Name}' (id={Id})"; + } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Entities/EnvelopeFundingMethod.cs b/AAIntegration.SimmonsBank.API/Entities/EnvelopeFundingMethod.cs new file mode 100644 index 0000000..a7be869 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Entities/EnvelopeFundingMethod.cs @@ -0,0 +1,22 @@ +using System.Data; +using System.Text.Json.Serialization; + +namespace AAIntegration.SimmonsBank.API.Entities; + +public class EnvelopeFundingMethod +{ + public int Id { get; set; } + public Envelope Envelope { get; set; } + public int Order { get; set; } + public EnvelopeFundingMethodModes Mode { get; set; } + public string Value { get; set; } + public int PeriodsToLookback { get; set; } = 0; +} + +public enum EnvelopeFundingMethodModes +{ + ABSOLUTE, + PERCENTAGE, + HISTORICAL_MEDIAN, + HISTORICAL_MEAN, +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Entities/EnvelopeHistorical.cs b/AAIntegration.SimmonsBank.API/Entities/EnvelopeHistorical.cs new file mode 100644 index 0000000..2ffd4ca --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Entities/EnvelopeHistorical.cs @@ -0,0 +1,16 @@ +using System; +using System.Collections.Generic; +using System.Data; +using System.Text.Json.Serialization; + +namespace AAIntegration.SimmonsBank.API.Entities; + +public class EnvelopeHistorical +{ + //public int Id { get; set; } + public Envelope Envelope { get; set; } + public int LookBack { get; set; } + public decimal? EnvelopeFunding { get; set; } = null; + public Statistic Credit { get; set; } = null; + public Statistic Debit { get; set; } = null; +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Entities/Operation.cs b/AAIntegration.SimmonsBank.API/Entities/Operation.cs new file mode 100644 index 0000000..92c485c --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Entities/Operation.cs @@ -0,0 +1,19 @@ +using System.Data; +using System.Text.Json.Serialization; +using AAIntegration.SimmonsBank.API.Enums; + +namespace AAIntegration.SimmonsBank.API.Entities; + +public class Operation +{ + public int Id { get; set; } + public int Order { get; set; } + public bool Enabled { get; set; } + public bool Negative { get; set; } + public OperationMode Mode { get; set; } + public TimeSpan HistoricPeriod { get; set; } + public int HistoricLookbackDepth { get; set; } + public HistoricStatistic HistoricStatistic { get; set; } + public decimal AbsoluteValue { get; set; } + public decimal Percentage { get; set; } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Entities/Role.cs b/AAIntegration.SimmonsBank.API/Entities/Role.cs new file mode 100644 index 0000000..ebbc879 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Entities/Role.cs @@ -0,0 +1,7 @@ +namespace AAIntegration.SimmonsBank.API.Entities; + +public enum Role +{ + Admin, + User +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Entities/Statistic.cs b/AAIntegration.SimmonsBank.API/Entities/Statistic.cs new file mode 100644 index 0000000..4d68ed7 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Entities/Statistic.cs @@ -0,0 +1,16 @@ +using System; +using System.Collections.Generic; +using System.Data; +using System.Text.Json.Serialization; + +namespace AAIntegration.SimmonsBank.API.Entities; + +public class Statistic +{ + //public int Id { get; set; } + public Dictionary? Values { get; set; } = null; + public decimal? Median { get; set; } = null; + public decimal? Mean { get; set; } = null; + public decimal? High { get; set; } = null; + public decimal? Low { get; set; } = null; +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Entities/Transaction.cs b/AAIntegration.SimmonsBank.API/Entities/Transaction.cs new file mode 100644 index 0000000..1bdc18c --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Entities/Transaction.cs @@ -0,0 +1,72 @@ +using System.Collections.Generic; +using AAIntegration.SimmonsBank.API.Services; + +namespace AAIntegration.SimmonsBank.API.Entities; + +public class Transaction +{ + public int Id { get; set; } + public DateTime Date { get; set; } + public DateTime CreatedOn { get; set; } + public DateTime UpdatedOn { get; set; } + public string ExternalId { get; set; } + public string Description { get; set; } + public Account? DebitAccount { get; set; } + public Account? CreditAccount { get; set; } + public Envelope? DebitEnvelope { get; set; } + public Envelope? CreditEnvelope { get; set; } + public bool IsEnvelopeFundingTransaction { get; set; } + public decimal Amount { get; set; } + public CurrencyType CurrencyType { get; set; } + public string Notes { get; set; } + public bool IsPending { get; set; } + public List? Tags { get; set; } +} + +public static class TransactionExtensions +{ + public static bool HasTag(this Transaction transaction, string tag) + { + return transaction.Tags != null && transaction.Tags.Any(t => t.ToUpper() == tag.ToUpper()); + } + + public static Transaction AddTag(this Transaction transaction, string tag) + { + if (transaction.Tags == null) + transaction.Tags = new List() { tag }; + else if (transaction.Tags.Any(t => t.ToUpper() == tag.ToUpper()) == false) + transaction.Tags.Add(tag); + + return transaction; + } + + public static Transaction RemoveTag(this Transaction transaction, string tag) + { + if (transaction.Tags != null) + { + string? actualTag = transaction.Tags + .Where(t => t.ToUpper() == tag.ToUpper()) + .FirstOrDefault(); + + if (actualTag != null) + transaction.Tags.Remove(actualTag); + } + + return transaction; + } +} + +public enum AutoclassTransactionField +{ + DATE, + EXTERNAL_ID, + DESCRIPTION, + DEBIT_ACCOUNT, + CREDIT_ACCOUNT, + DEBIT_ENVELOPE, + CREDIT_ENVELOPE, + AMOUNT, + CURRENCY_TYPE, + IS_PENDING, + TAGS +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Entities/User.cs b/AAIntegration.SimmonsBank.API/Entities/User.cs index 3cfeb9a..9b401d2 100644 --- a/AAIntegration.SimmonsBank.API/Entities/User.cs +++ b/AAIntegration.SimmonsBank.API/Entities/User.cs @@ -1,10 +1,20 @@ +using System.Text.Json.Serialization; + namespace AAIntegration.SimmonsBank.API.Entities; public class User { public int Id { get; set; } - public string ApiKey { get; set; } - public string SimmonsBankUsername { get; set; } - public string SimmonsBankPassword { get; set; } - public string MFAKey { get; set; } + public string Username { get; set; } + public string FirstName { get; set; } + public string LastName { get; set; } + public string Email { get; set; } + public Role Role { get; set; } + public ICollection Accounts { get; set; } + + [JsonIgnore] + public string PasswordHash { get; set; } + + [JsonIgnore] + public string? ApiKey { get; set; } } \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Enums/HistoricStatistic.cs b/AAIntegration.SimmonsBank.API/Enums/HistoricStatistic.cs new file mode 100644 index 0000000..5d9f1a2 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Enums/HistoricStatistic.cs @@ -0,0 +1,12 @@ +using System.Text.Json.Serialization; + +namespace AAIntegration.SimmonsBank.API.Enums; + +public enum HistoricStatistic +{ + Mean, + Median, + Mode, + Minimum, + Maximum, +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Enums/OperationMode.cs b/AAIntegration.SimmonsBank.API/Enums/OperationMode.cs new file mode 100644 index 0000000..485fa4a --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Enums/OperationMode.cs @@ -0,0 +1,10 @@ +using System.Text.Json.Serialization; + +namespace AAIntegration.SimmonsBank.API.Enums; + +public enum OperationMode +{ + Historic, + Absolute, + Percentage, +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Handlers/ApiKeyAuthenticationHandler.cs b/AAIntegration.SimmonsBank.API/Handlers/ApiKeyAuthenticationHandler.cs index 05fa8a9..09a7c7e 100644 --- a/AAIntegration.SimmonsBank.API/Handlers/ApiKeyAuthenticationHandler.cs +++ b/AAIntegration.SimmonsBank.API/Handlers/ApiKeyAuthenticationHandler.cs @@ -2,10 +2,10 @@ namespace AAIntegration.SimmonsBank.API.Handlers; using System.Security.Claims; using System.Text.Encodings.Web; +using AAIntegration.SimmonsBank.API.Configs; +using AAIntegration.SimmonsBank.API.Services; using Microsoft.AspNetCore.Authentication; using Microsoft.Extensions.Options; -using AAIntegration.SimmonsBank.API.Services; -using AAIntegration.SimmonsBank.API.Configs; public class ApiKeyAuthenticationHandler : AuthenticationHandler { diff --git a/AAIntegration.SimmonsBank.API/Helpers/AppException.cs b/AAIntegration.SimmonsBank.API/Helpers/AppException.cs new file mode 100644 index 0000000..661abfd --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Helpers/AppException.cs @@ -0,0 +1,17 @@ +namespace AAIntegration.SimmonsBank.API.Config; + +using System.Globalization; + +// custom exception class for throwing application specific exceptions (e.g. for validation) +// that can be caught and handled within the application +public class AppException : Exception +{ + public AppException() : base() {} + + public AppException(string message) : base(message) { } + + public AppException(string message, params object[] args) + : base(String.Format(CultureInfo.CurrentCulture, message, args)) + { + } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Helpers/AutoMapperProfile.cs b/AAIntegration.SimmonsBank.API/Helpers/AutoMapperProfile.cs new file mode 100644 index 0000000..a2bec92 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Helpers/AutoMapperProfile.cs @@ -0,0 +1,211 @@ +namespace AAIntegration.SimmonsBank.API.Config; + +using AutoMapper; +using AAIntegration.SimmonsBank.API.Entities; +using AAIntegration.SimmonsBank.API.Models.Users; +using AAIntegration.SimmonsBank.API.Models.Accounts; +using AAIntegration.SimmonsBank.API.Models.Envelopes; +using AAIntegration.SimmonsBank.API.Models.CurrencyType; +using AAIntegration.SimmonsBank.API.Services; +using System.Runtime.Serialization; +using AAIntegration.SimmonsBank.API.Models.Transactions; +using AAIntegration.SimmonsBank.API.Models.Autoclass; + +public class AutoMapperProfile : Profile +{ + + public AutoMapperProfile() + { + // User -> AuthenticateResponse + CreateMap(); + + // RegisterRequest -> User + CreateMap(); + + // UserUpdateRequest -> User + CreateMap() + .ForAllMembers(x => x.Condition( + (src, dest, prop) => + { + // ignore both null & empty string properties + if (prop == null) return false; + if (prop.GetType() == typeof(string) && string.IsNullOrEmpty((string)prop)) return false; + + // ignore null role + if (x.DestinationMember.Name == "Role" && src.Role == null) return false; + + // ignore null password + if (x.DestinationMember.Name == "Password" && src.Password == null) return false; + + return true; + } + )); + + // AccountUpdateRequest -> Account + CreateMap(); + + // AccountCreateRequest -> Account + CreateMap(); + /*.ForMember( + dest => dest.OwnerId, + opt => opt.MapFrom(src => src.Owner) + ); + /*.ForAllMembers(x => x.Condition( + (src, dest, prop) => + { + // ignore both null & empty string properties + if (prop == null) return false; + if (prop.GetType() == typeof(string) && string.IsNullOrEmpty((string)prop)) return false; + + return true; + } + ))*/ + + // Account -> AccountGet + CreateMap() + .ForAllMembers(x => x.Condition( + (src, dest, prop) => + { + // ignore both null & empty string properties + if (prop == null) return false; + if (prop.GetType() == typeof(string) && string.IsNullOrEmpty((string)prop)) return false; + + return true; + } + )); + + // AccountHistorical -> AccountHistoricalDTO + CreateMap(); + + // EnvelopeHistorical -> EnvelopeHistoricalDTO + CreateMap(); + + // Envelope -> EnvelopeDTO + CreateMap() + .ForAllMembers(x => x.Condition( + (src, dest, prop) => + { + // ignore both null & empty string properties + if (prop == null) return false; + if (prop.GetType() == typeof(string) && string.IsNullOrEmpty((string)prop)) return false; + + return true; + } + )); + + // EnvelopeFundingMethod -> EnvelopeFundingMethodDTO + CreateMap() + .ForAllMembers(x => x.Condition( + (src, dest, prop) => + { + // ignore both null & empty string properties + if (prop == null) return false; + if (prop.GetType() == typeof(string) && string.IsNullOrEmpty((string)prop)) return false; + + return true; + } + )); + + // Transaction -> TransactionDto + CreateMap() + .ForMember(dest => dest.DebitAccountId, opt => opt.MapFrom(src => src.DebitAccount.Id)) + .ForMember(dest => dest.CreditAccountId, opt => opt.MapFrom(src => src.CreditAccount.Id)) + .ForMember(dest => dest.DebitEnvelopeId, opt => opt.MapFrom(src => src.DebitEnvelope.Id)) + .ForMember(dest => dest.CreditEnvelopeId, opt => opt.MapFrom(src => src.CreditEnvelope.Id)) + .ForAllMembers(x => x.Condition( + (src, dest, prop) => + { + // ignore both null & empty string properties + if (prop == null) return false; + if (prop.GetType() == typeof(string) && string.IsNullOrEmpty((string)prop)) return false; + + return true; + } + )); + + // CurrencyTypeCreateRequest -> CurrencyType + CreateMap() + .ForAllMembers(x => x.Condition( + (src, dest, prop) => + { + // ignore both null & empty string properties + if (prop == null) return false; + if (prop.GetType() == typeof(string) && string.IsNullOrEmpty((string)prop)) return false; + + return true; + } + )); + + // AutoclassExpression <-> AutoclassExpressionCreateRequest + CreateMap(); + CreateMap() + .ForAllMembers(x => x.Condition( + (src, dest, prop) => + { + // ignore both null & empty string properties + if (prop == null) return false; + if (prop.GetType() == typeof(string) && string.IsNullOrEmpty((string)prop)) return false; + + return true; + } + )); + + CreateMap(); + CreateMap(); + + // AutoclassChange <-> AutoclassChangeCreateRequest + CreateMap(); + CreateMap() + .ForAllMembers(x => x.Condition( + (src, dest, prop) => + { + // ignore both null & empty string properties + if (prop == null) return false; + if (prop.GetType() == typeof(string) && string.IsNullOrEmpty((string)prop)) return false; + + return true; + } + )); + + // AutoclassRule <-> AutoclassRuleCreateRequest + CreateMap() + //.ForMember(d => d.Account, opt => opt.MapFrom(src => src.Account.Id)) + .ReverseMap();/* + CreateMap() + .ForMember(d => d.Account, opt => opt.MapFrom(src => src)) + .ForAllMembers(x => x.Condition( + (src, dest, prop) => + { + if (dest.GetType() == typeof(Account)) + { + + } + + // ignore both null & empty string properties + if (prop == null) return false; + if (prop.GetType() == typeof(string) && string.IsNullOrEmpty((string)prop)) return false; + + return true; + } + )); + CreateMap() + .ForMember(d => d.Id, opt => opt.MapFrom(src => src.Account)) + .ForAllMembers(x => x.Condition( + (src, dest, prop) => + { + src.UseDestinationValue(); + + // ignore both null & empty string properties + if (prop == null) return false; + if (prop.GetType() == typeof(string) && string.IsNullOrEmpty((string)prop)) return false; + + return true; + } + ));*/ + + // AutoclassRule -> AutoclassRuleDTO + CreateMap() + .ForMember(dest => dest.AccountId, opt => opt.MapFrom(src => src.Account.Id)); + + } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Helpers/DataContext.cs b/AAIntegration.SimmonsBank.API/Helpers/DataContext.cs index 06248dd..3930376 100644 --- a/AAIntegration.SimmonsBank.API/Helpers/DataContext.cs +++ b/AAIntegration.SimmonsBank.API/Helpers/DataContext.cs @@ -1,10 +1,11 @@ -namespace AAIntegration.SimmonsBank.API.Helpers; +namespace AAIntegration.SimmonsBank.API.Config; using Microsoft.EntityFrameworkCore; using AAIntegration.SimmonsBank.API.Entities; using System.Diagnostics; using System; using System.Collections.Generic; +using Internal; using System.Linq; using System.Runtime.CompilerServices; using System.Diagnostics.CodeAnalysis; @@ -29,5 +30,428 @@ public class DataContext : DbContext options.UseInMemoryDatabase("TestDb"); }*/ + public void AddAmountToAccount(int accountId, decimal amount) + { + Account account = this.Accounts.Find(accountId); + if (account != null) + { + _logger.LogInformation($"\t Adding {amount} to account '{account.Name}' (id={accountId})."); + account.Balance += amount; + this.Accounts.Update(account); + this.SaveChanges(); + } + } + + public void AddAmountToEnvelope(int envelopeId, decimal amount) + { + Envelope envelope = this.Envelopes + .Include(e => e.Account) + .FirstOrDefault(e => e.Id == envelopeId); + + if (envelope != null) + { + _logger.LogInformation($"\t Adding {amount} to envelope '{envelope.Name}' (id={envelopeId})."); + envelope.Balance += amount; + this.Envelopes.Update(envelope); + this.SaveChanges(); + + if (envelope.Account != null) + this.RecalculateAccountVirtualBalance(envelope.Account.Id); + } + } + + public void RecalculateAccountBalance(int id) + { + Account account = this.Accounts + .FirstOrDefault(a => a.Id == id); + + decimal amount = account.InitialBalance; + + // Grab relevant transactions + List transactions = this.Transactions + .Include(t => t.DebitAccount) + .Include(t => t.CreditAccount) + .Where(t => + (t.DebitAccount != null && t.DebitAccount.Id == id) + || (t.CreditAccount != null && t.CreditAccount.Id == id)) + .ToList(); + + // Iterate and sum values + foreach (Transaction t in transactions) + { + if (t.DebitAccount?.Id == id) { + amount -= t.Amount; + } else if (t.CreditAccount?.Id == id) { + amount += t.Amount; + } + } + + account.Balance = amount; + _logger.LogInformation($"Recalculating Account Balance for '{account.Name}' as '{amount}'."); + + this.Accounts.Update(account); + this.SaveChanges(); + } + + public void RecalculateAccountVirtualBalance(Envelope env, int lookBack = 12) + { + Envelope envelope = this.Envelopes + .Include(e => e.Account) + .FirstOrDefault(e => e.Id == env.Id); + + RecalculateAccountVirtualBalance(envelope.Account.Id, lookBack); + } + + public void RecalculateAccountVirtualBalance(int accountId, int lookBack = 12) + { + AccountHistorical hist = this.GetAccountHistorical(accountId, lookBack); + + Account account = this.Accounts.Find(accountId); + + _logger.LogInformation($"Recalculating virtual balance for account '{account.Name}' (id={accountId})."); + decimal virtualBalance = account.Balance; + + // Make this configurable? + // // 2nd half of CHECK BELOW IS TEMPORARY + if (hist.Income != null && hist.Income.Median.HasValue) + { + /*if (hist.Income.Median.Value == 0 && hist.Income.Mean.HasValue) + hist.Income.Median = hist.Income.Mean.Value;*/ + + _logger.LogInformation($"Using Median Income Value of {hist.Income.Median.Value}..."); + virtualBalance = hist.Income.Median.Value; + } + + // Determine Virtual Balance + List envelopes = this.Envelopes + .Include(e => e.Account) + .Where(e => e.Account.Id == accountId) + .ToList(); + + foreach (Envelope e in envelopes) + { + decimal? envelopeFunding = GetEnvelopeFunding(e.Id); + if (envelopeFunding.HasValue) + { + _logger.LogInformation($"Envelope {e.Name} had funding of {envelopeFunding.Value}."); + virtualBalance -= envelopeFunding.Value; + } + } + + _logger.LogInformation($"VirtualBalance changed from {account.VirtualBalance} to {virtualBalance}."); + account.VirtualBalance = virtualBalance; + this.SaveChanges(); + } + + public AccountHistorical GetAccountHistorical(int id, int lookBack) + { + DateTime now = DateTime.UtcNow; + AccountHistorical hist = new AccountHistorical() { + Account = this.Accounts.Find(id), + LookBack = lookBack + }; + + DateTime firstOfThisMonth = new DateTime(now.Year, now.Month, 1); + DateTime lastOfLastMonth = firstOfThisMonth.AddDays(-1); + DateTime lookBackDate = firstOfThisMonth.AddMonths(-lookBack); + + List transactions = this.Transactions + .Include(t => t.CreditAccount) + .Include(t => t.DebitAccount) + .Where(t => (t.CreditAccount != null && t.CreditAccount.Id == id) || (t.DebitAccount != null && t.DebitAccount.Id == id)) + .Where(t => t.Date >= lookBackDate.ToUniversalTime() && t.Date <= lastOfLastMonth.ToUniversalTime()) + .ToList(); + + // Sum variables + decimal sumDebit = 0; + decimal sumCredit = 0; + decimal sumIncome = 0; + + // High variables + decimal highDebit = 0; + decimal highCredit = 0; + decimal highIncome = 0; + + // Low variables + decimal lowDebit = 100000000; + decimal lowCredit = 100000000; + decimal lowIncome = 100000000; + + // Values variables + Dictionary valuesDebit = new Dictionary(); + Dictionary valuesCredit = new Dictionary(); + Dictionary valuesIncome = new Dictionary(); + + bool monthsHaveData = false; + int monthsWithData = 0; + + for (int i = 0; i < lookBack; i++) + { + DateTime currentLookBackMonth = lastOfLastMonth.AddMonths(-i); + List monthTransactions = this.GetTransactionsFromMonth(currentLookBackMonth, transactions); + + decimal monthlySumDebit = 0; + decimal monthlySumCredit = 0; + decimal monthlySumIncome = 0; + + foreach (Transaction tran in monthTransactions) + { + monthsHaveData = true; + + if (tran.CreditAccount != null && tran.CreditAccount.Id == id) + { + monthlySumCredit += tran.Amount; + + if (tran.Tags != null && tran.Tags.Any(t => t.ToUpper() == "INCOME")) + monthlySumIncome += tran.Amount; + } + else + monthlySumDebit += tran.Amount; + + if (tran.Amount != 0) + monthsWithData = i + 1; + } + + if (monthsWithData == i + 1) + { + valuesDebit.Add(currentLookBackMonth, monthlySumDebit); + valuesCredit.Add(currentLookBackMonth, monthlySumCredit); + valuesIncome.Add(currentLookBackMonth, monthlySumIncome); + } + + sumDebit += monthlySumDebit; + sumCredit += monthlySumCredit; + sumIncome += monthlySumIncome; + + highDebit = i == 0 || monthlySumDebit > highDebit ? monthlySumDebit : highDebit; + highCredit = i == 0 || monthlySumCredit > highCredit ? monthlySumCredit : highCredit; + highIncome = i == 0 || monthlySumIncome > highIncome ? monthlySumIncome : highIncome; + + lowDebit = i == 0 || monthlySumDebit < lowDebit ? monthlySumDebit : lowDebit; + lowCredit = i == 0 || monthlySumCredit < lowCredit ? monthlySumCredit : lowCredit; + lowIncome = i == 0 || monthlySumIncome < lowIncome ? monthlySumIncome : lowIncome; + } + + if (monthsHaveData == false) + return hist; + + + hist.Debit = new Statistic() { + Median = HistoricalMedian(valuesDebit), + Mean = sumDebit / (decimal)monthsWithData, + High = highDebit, + Low = lowDebit, + Values = valuesDebit, + }; + + hist.Credit = new Statistic() { + Median = HistoricalMedian(valuesCredit), + Mean = sumCredit / (decimal)monthsWithData, + High = highCredit, + Low = lowCredit, + Values = valuesCredit, + }; + + hist.Income = new Statistic() { + Median = HistoricalMedian(valuesIncome), + Mean = sumIncome / (decimal)monthsWithData, + High = highIncome, + Low = lowIncome, + Values = valuesIncome, + }; + + return hist; + } + + /*private decimal? SetZeroToNull(decimal value) + { + return value == 0 ? null : (decimal?)value; + } + + private decimal? SetZeroToNull(decimal? value) + { + return value.HasValue && value.Value == 0 ? null : value; + }*/ + + public EnvelopeHistorical GetEnvelopeHistorical(int id, int lookBack) + { + DateTime now = DateTime.UtcNow; + EnvelopeHistorical hist = new EnvelopeHistorical() { + Envelope = this.Envelopes.Find(id), + LookBack = lookBack + }; + + // EnvelopeFunding this month (period) + hist.EnvelopeFunding = this.GetEnvelopeFunding(id, now); + + // Gather remaining statistics + DateTime firstOfThisMonth = new DateTime(now.Year, now.Month, 1); + DateTime lastOfLastMonth = firstOfThisMonth.AddDays(-1); + DateTime lookBackDate = firstOfThisMonth.AddMonths(-lookBack); + + List transactions = this.Transactions + .Include(t => t.CreditEnvelope) + .Include(t => t.DebitEnvelope) + .Where(t => t.IsEnvelopeFundingTransaction == false) + .Where(t => (t.CreditEnvelope != null && t.CreditEnvelope.Id == id) || (t.DebitEnvelope != null && t.DebitEnvelope.Id == id)) + .Where(t => t.Date >= lookBackDate.ToUniversalTime() && t.Date <= lastOfLastMonth.ToUniversalTime()) + .ToList(); + + // Sum variables + decimal sumDebit = 0; + decimal sumCredit = 0; + + // High variables + decimal highDebit = 0; + decimal highCredit = 0; + + // Low variables + decimal lowDebit = 100000000; + decimal lowCredit = 100000000; + + // Values variables + Dictionary valuesDebit = new Dictionary(); + Dictionary valuesCredit = new Dictionary(); + + bool monthsHaveData = false; + int monthsWithData = 0; + + for (int i = 0; i < lookBack; i++) + { + DateTime currentLookBackMonth = lastOfLastMonth.AddMonths(-i); + List monthTransactions = this.GetTransactionsFromMonth(currentLookBackMonth, transactions); + + decimal monthlySumDebit = 0; + decimal monthlySumCredit = 0; + foreach (Transaction tran in monthTransactions) + { + monthsHaveData = true; + + if (tran.CreditEnvelope != null && tran.CreditEnvelope.Id == id) + monthlySumCredit += tran.Amount; + else + monthlySumDebit += tran.Amount; + + if (tran.Amount != 0) + monthsWithData = i + 1; + } + + if (monthsWithData == i + 1) + { + valuesDebit.Add(currentLookBackMonth, monthlySumDebit); + valuesCredit.Add(currentLookBackMonth, monthlySumCredit); + } + + sumDebit += monthlySumDebit; + sumCredit += monthlySumCredit; + + highDebit = i == 0 || monthlySumDebit > highDebit ? monthlySumDebit : highDebit; + highCredit = i == 0 || monthlySumCredit > highCredit ? monthlySumCredit : highCredit; + lowDebit = i == 0 || monthlySumDebit < lowDebit ? monthlySumDebit : lowDebit; + lowCredit = i == 0 || monthlySumCredit < lowCredit ? monthlySumCredit : lowCredit; + } + + if (monthsHaveData == false) + return hist; + + hist.Credit = new Statistic() { + Median = HistoricalMedian(valuesCredit), + Mean = sumCredit / (decimal)monthsWithData, + High = highCredit, + Low = lowCredit, + Values = valuesCredit, + }; + + hist.Debit = new Statistic() { + Median = HistoricalMedian(valuesDebit), + Mean = sumDebit / (decimal)monthsWithData, + High = highDebit, + Low = lowDebit, + Values = valuesDebit, + }; + + return hist; + } + + private List GetTransactionsFromMonth(DateTime? date = null, List transactions = null) + { + DateTime dt = date.HasValue ? date.Value : DateTime.UtcNow; + + if (transactions == null) + return this.Transactions + .Where(t => t.Date.Year == dt.Year && t.Date.Month == dt.Month) + .ToList(); + + return transactions + .Where(t => t.Date.Year == dt.Year && t.Date.Month == dt.Month) + .ToList(); + } + + private decimal GetEnvelopeFunding(int id, DateTime? month = null) + { + DateTime dt = month.HasValue ? month.Value : DateTime.UtcNow; + + Transaction envelopeFundTransaction = this.Transactions + .Include(t => t.CreditEnvelope) + .Where(t => t.IsEnvelopeFundingTransaction && t.CreditEnvelope != null && t.CreditEnvelope.Id == id) + .FirstOrDefault(t => t.Date.Year == dt.Year && t.Date.Month == dt.Month); + + if (envelopeFundTransaction != null) + return envelopeFundTransaction.Amount; + + return 0; + } + + private decimal HistoricalMedian(Dictionary data) + { + int count = data.Count(); + + if (count % 2 == 0) + { + var sortedData = data.OrderBy(s => s.Value).ToArray(); + return (sortedData[count / 2 - 1].Value + sortedData[count / 2].Value) / 2; + } + else + { + return data.OrderBy(s => s.Value).ElementAt(count / 2).Value; + } + } + + public void RecalculateEnvelopeBalance(int id) + { + Envelope envelope = this.Envelopes.Find(id); + decimal amount = envelope.InitialBalance; + + List transactions = this.Transactions + .Include(t => t.DebitEnvelope) + .Include(t => t.CreditEnvelope) + .Where(t => + (t.DebitEnvelope != null && t.DebitEnvelope.Id == id) + || (t.CreditEnvelope != null && t.CreditEnvelope.Id == id)) + .ToList(); + + foreach (Transaction t in transactions) + { + if (t.DebitEnvelope?.Id == id) { + amount -= t.Amount; + } else if (t.CreditEnvelope?.Id == id) { + amount += t.Amount; + } + } + + envelope.Balance = amount; + this.Envelopes.Update(envelope); + this.SaveChanges(); + } + public DbSet Users { get; set; } + public DbSet Accounts { get; set; } + public DbSet Envelopes { get; set; } + public DbSet EnvelopeFundingMethods { get; set; } + public DbSet CurrencyTypes { get; set; } + public DbSet Operations { get; set; } + public DbSet Transactions { get; set; } + public DbSet AutoclassRules { get; set; } + public DbSet AutoclassExpressions { get; set; } + public DbSet AutoclassChanges { get; set; } } \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Helpers/ErrorHandlerMiddleware.cs b/AAIntegration.SimmonsBank.API/Helpers/ErrorHandlerMiddleware.cs new file mode 100644 index 0000000..4a04854 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Helpers/ErrorHandlerMiddleware.cs @@ -0,0 +1,54 @@ +namespace AAIntegration.SimmonsBank.API.Config; + +using Microsoft.AspNetCore.Http; +using Microsoft.Extensions.Logging; +using System; +using System.Collections.Generic; +using System.Net; +using System.Text.Json; +using System.Threading.Tasks; + +public class ErrorHandlerMiddleware +{ + private readonly RequestDelegate _next; + private readonly ILogger _logger; + + public ErrorHandlerMiddleware(RequestDelegate next, ILogger logger) + { + _next = next; + _logger = logger; + } + + public async Task Invoke(HttpContext context) + { + try + { + await _next(context); + } + catch (Exception error) + { + var response = context.Response; + response.ContentType = "application/json"; + + switch (error) + { + case AppException e: + // custom application error + response.StatusCode = (int)HttpStatusCode.BadRequest; + break; + case KeyNotFoundException e: + // not found error + response.StatusCode = (int)HttpStatusCode.NotFound; + break; + default: + // unhandled error + _logger.LogError(error, error.Message); + response.StatusCode = (int)HttpStatusCode.InternalServerError; + break; + } + + var result = JsonSerializer.Serialize(new { message = error?.Message }); + await response.WriteAsync(result); + } + } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Migrations/20231117033912_InitialCreate.Designer.cs b/AAIntegration.SimmonsBank.API/Migrations/20231117033912_InitialCreate.Designer.cs new file mode 100644 index 0000000..8ad32e1 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Migrations/20231117033912_InitialCreate.Designer.cs @@ -0,0 +1,65 @@ +// +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using AAIntegration.SimmonsBank.API.Config; + +#nullable disable + +namespace AAIntegration.SimmonsBank.API.Migrations +{ + [DbContext(typeof(DataContext))] + [Migration("20231117033912_InitialCreate")] + partial class InitialCreate + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "7.0.9") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Email") + .IsRequired() + .HasColumnType("text"); + + b.Property("FirstName") + .IsRequired() + .HasColumnType("text"); + + b.Property("LastName") + .IsRequired() + .HasColumnType("text"); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("text"); + + b.Property("Role") + .HasColumnType("integer"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Users"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/AAIntegration.SimmonsBank.API/Migrations/20231117033912_InitialCreate.cs b/AAIntegration.SimmonsBank.API/Migrations/20231117033912_InitialCreate.cs new file mode 100644 index 0000000..e3da1c0 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Migrations/20231117033912_InitialCreate.cs @@ -0,0 +1,40 @@ +using Microsoft.EntityFrameworkCore.Migrations; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; + +#nullable disable + +namespace AAIntegration.SimmonsBank.API.Migrations +{ + /// + public partial class InitialCreate : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.CreateTable( + name: "Users", + columns: table => new + { + Id = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + Username = table.Column(type: "text", nullable: false), + FirstName = table.Column(type: "text", nullable: false), + LastName = table.Column(type: "text", nullable: false), + Email = table.Column(type: "text", nullable: false), + Role = table.Column(type: "integer", nullable: false), + PasswordHash = table.Column(type: "text", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_Users", x => x.Id); + }); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable( + name: "Users"); + } + } +} diff --git a/AAIntegration.SimmonsBank.API/Migrations/20231201042238_AccountsAllocsOperations.Designer.cs b/AAIntegration.SimmonsBank.API/Migrations/20231201042238_AccountsAllocsOperations.Designer.cs new file mode 100644 index 0000000..d2b5312 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Migrations/20231201042238_AccountsAllocsOperations.Designer.cs @@ -0,0 +1,270 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using AAIntegration.SimmonsBank.API.Config; + +#nullable disable + +namespace AAIntegration.SimmonsBank.API.Migrations +{ + [DbContext(typeof(DataContext))] + [Migration("20231201042238_AccountsAllocsOperations")] + partial class AccountsAllocsOperations + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "7.0.9") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Balance") + .HasColumnType("numeric"); + + b.Property("CreatedOn") + .HasColumnType("timestamp with time zone"); + + b.Property("CurrencyId") + .HasColumnType("integer"); + + b.Property("ExternalAccountNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("InitialBalance") + .HasColumnType("numeric"); + + b.Property("LastActivity") + .HasColumnType("timestamp with time zone"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("OwnerId") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("CurrencyId"); + + b.HasIndex("OwnerId"); + + b.ToTable("Accounts"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Alloc", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccountId") + .HasColumnType("integer"); + + b.Property("CurrentBalance") + .HasColumnType("numeric"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("LastBalanceAdded") + .HasColumnType("numeric"); + + b.Property("LastTriggeredOn") + .HasColumnType("timestamp with time zone"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("Period") + .HasColumnType("interval"); + + b.Property("PersistanceEnabled") + .HasColumnType("boolean"); + + b.HasKey("Id"); + + b.HasIndex("AccountId"); + + b.ToTable("Allocs"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.CurrencyType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Code") + .IsRequired() + .HasColumnType("text"); + + b.Property("DecimalPlaces") + .HasColumnType("integer"); + + b.Property("Symbol") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("CurrencyTypes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Operation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AbsoluteValue") + .HasColumnType("numeric"); + + b.Property("AllocId") + .HasColumnType("integer"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("HistoricLookbackDepth") + .HasColumnType("integer"); + + b.Property("HistoricPeriod") + .HasColumnType("interval"); + + b.Property("HistoricStatistic") + .HasColumnType("integer"); + + b.Property("Mode") + .HasColumnType("integer"); + + b.Property("Negative") + .HasColumnType("boolean"); + + b.Property("Order") + .HasColumnType("integer"); + + b.Property("Percentage") + .HasColumnType("numeric"); + + b.HasKey("Id"); + + b.HasIndex("AllocId"); + + b.ToTable("Operations"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Email") + .IsRequired() + .HasColumnType("text"); + + b.Property("FirstName") + .IsRequired() + .HasColumnType("text"); + + b.Property("LastName") + .IsRequired() + .HasColumnType("text"); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("text"); + + b.Property("Role") + .HasColumnType("integer"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.CurrencyType", "Currency") + .WithMany() + .HasForeignKey("CurrencyId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.User", "Owner") + .WithMany("Accounts") + .HasForeignKey("OwnerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Currency"); + + b.Navigation("Owner"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Alloc", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "Account") + .WithMany("Allocs") + .HasForeignKey("AccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Account"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Operation", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Alloc", null) + .WithMany("Operations") + .HasForeignKey("AllocId"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.Navigation("Allocs"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Alloc", b => + { + b.Navigation("Operations"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.User", b => + { + b.Navigation("Accounts"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/AAIntegration.SimmonsBank.API/Migrations/20231201042238_AccountsAllocsOperations.cs b/AAIntegration.SimmonsBank.API/Migrations/20231201042238_AccountsAllocsOperations.cs new file mode 100644 index 0000000..4d718ff --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Migrations/20231201042238_AccountsAllocsOperations.cs @@ -0,0 +1,152 @@ +using System; +using Microsoft.EntityFrameworkCore.Migrations; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; + +#nullable disable + +namespace AAIntegration.SimmonsBank.API.Migrations +{ + /// + public partial class AccountsAllocsOperations : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.CreateTable( + name: "CurrencyTypes", + columns: table => new + { + Id = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + Code = table.Column(type: "text", nullable: false), + Symbol = table.Column(type: "text", nullable: false), + DecimalPlaces = table.Column(type: "integer", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_CurrencyTypes", x => x.Id); + }); + + migrationBuilder.CreateTable( + name: "Accounts", + columns: table => new + { + Id = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + Name = table.Column(type: "text", nullable: false), + OwnerId = table.Column(type: "integer", nullable: false), + LastActivity = table.Column(type: "timestamp with time zone", nullable: false), + Balance = table.Column(type: "numeric", nullable: false), + CreatedOn = table.Column(type: "timestamp with time zone", nullable: false), + InitialBalance = table.Column(type: "numeric", nullable: false), + CurrencyId = table.Column(type: "integer", nullable: false), + ExternalAccountNumber = table.Column(type: "text", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_Accounts", x => x.Id); + table.ForeignKey( + name: "FK_Accounts_CurrencyTypes_CurrencyId", + column: x => x.CurrencyId, + principalTable: "CurrencyTypes", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + table.ForeignKey( + name: "FK_Accounts_Users_OwnerId", + column: x => x.OwnerId, + principalTable: "Users", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateTable( + name: "Allocs", + columns: table => new + { + Id = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + Name = table.Column(type: "text", nullable: false), + Enabled = table.Column(type: "boolean", nullable: false), + Period = table.Column(type: "interval", nullable: false), + AccountId = table.Column(type: "integer", nullable: false), + PersistanceEnabled = table.Column(type: "boolean", nullable: false), + CurrentBalance = table.Column(type: "numeric", nullable: false), + LastTriggeredOn = table.Column(type: "timestamp with time zone", nullable: false), + LastBalanceAdded = table.Column(type: "numeric", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_Allocs", x => x.Id); + table.ForeignKey( + name: "FK_Allocs_Accounts_AccountId", + column: x => x.AccountId, + principalTable: "Accounts", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateTable( + name: "Operations", + columns: table => new + { + Id = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + Order = table.Column(type: "integer", nullable: false), + Enabled = table.Column(type: "boolean", nullable: false), + Negative = table.Column(type: "boolean", nullable: false), + Mode = table.Column(type: "integer", nullable: false), + HistoricPeriod = table.Column(type: "interval", nullable: false), + HistoricLookbackDepth = table.Column(type: "integer", nullable: false), + HistoricStatistic = table.Column(type: "integer", nullable: false), + AbsoluteValue = table.Column(type: "numeric", nullable: false), + Percentage = table.Column(type: "numeric", nullable: false), + AllocId = table.Column(type: "integer", nullable: true) + }, + constraints: table => + { + table.PrimaryKey("PK_Operations", x => x.Id); + table.ForeignKey( + name: "FK_Operations_Allocs_AllocId", + column: x => x.AllocId, + principalTable: "Allocs", + principalColumn: "Id"); + }); + + migrationBuilder.CreateIndex( + name: "IX_Accounts_CurrencyId", + table: "Accounts", + column: "CurrencyId"); + + migrationBuilder.CreateIndex( + name: "IX_Accounts_OwnerId", + table: "Accounts", + column: "OwnerId"); + + migrationBuilder.CreateIndex( + name: "IX_Allocs_AccountId", + table: "Allocs", + column: "AccountId"); + + migrationBuilder.CreateIndex( + name: "IX_Operations_AllocId", + table: "Operations", + column: "AllocId"); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable( + name: "Operations"); + + migrationBuilder.DropTable( + name: "Allocs"); + + migrationBuilder.DropTable( + name: "Accounts"); + + migrationBuilder.DropTable( + name: "CurrencyTypes"); + } + } +} diff --git a/AAIntegration.SimmonsBank.API/Migrations/20231219215509_AddedTransactionEntity.Designer.cs b/AAIntegration.SimmonsBank.API/Migrations/20231219215509_AddedTransactionEntity.Designer.cs new file mode 100644 index 0000000..74ad68b --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Migrations/20231219215509_AddedTransactionEntity.Designer.cs @@ -0,0 +1,420 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using AAIntegration.SimmonsBank.API.Config; + +#nullable disable + +namespace AAIntegration.SimmonsBank.API.Migrations +{ + [DbContext(typeof(DataContext))] + [Migration("20231219215509_AddedTransactionEntity")] + partial class AddedTransactionEntity + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "7.0.9") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Balance") + .HasColumnType("numeric"); + + b.Property("CreatedOn") + .HasColumnType("timestamp with time zone"); + + b.Property("CurrencyId") + .HasColumnType("integer"); + + b.Property("ExternalAccountNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("InitialBalance") + .HasColumnType("numeric"); + + b.Property("LastActivity") + .HasColumnType("timestamp with time zone"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("OwnerId") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("CurrencyId"); + + b.HasIndex("OwnerId"); + + b.ToTable("Accounts"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Alloc", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccountId") + .HasColumnType("integer"); + + b.Property("CurrentBalance") + .HasColumnType("numeric"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("LastBalanceAdded") + .HasColumnType("numeric"); + + b.Property("LastTriggeredOn") + .HasColumnType("timestamp with time zone"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("Period") + .HasColumnType("interval"); + + b.Property("PersistanceEnabled") + .HasColumnType("boolean"); + + b.HasKey("Id"); + + b.HasIndex("AccountId"); + + b.ToTable("Allocs"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.CurrencyType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Code") + .IsRequired() + .HasColumnType("text"); + + b.Property("DecimalPlaces") + .HasColumnType("integer"); + + b.Property("Symbol") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("CurrencyTypes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.InnerTransaction", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Amount") + .HasColumnType("numeric"); + + b.Property("CreatedOn") + .HasColumnType("timestamp with time zone"); + + b.Property("CreditAccountId") + .HasColumnType("integer"); + + b.Property("CurrencyTypeId") + .HasColumnType("integer"); + + b.Property("DebitAccountId") + .HasColumnType("integer"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("ExternalId") + .IsRequired() + .HasColumnType("text"); + + b.Property("InnerTransactionId") + .HasColumnType("integer"); + + b.Property("IsPending") + .HasColumnType("boolean"); + + b.Property("Notes") + .IsRequired() + .HasColumnType("text"); + + b.Property("OuterTransactionId") + .HasColumnType("integer"); + + b.Property("UpdatedOn") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("CreditAccountId"); + + b.HasIndex("CurrencyTypeId"); + + b.HasIndex("DebitAccountId"); + + b.HasIndex("InnerTransactionId"); + + b.HasIndex("OuterTransactionId"); + + b.ToTable("InnerTransactions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Operation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AbsoluteValue") + .HasColumnType("numeric"); + + b.Property("AllocId") + .HasColumnType("integer"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("HistoricLookbackDepth") + .HasColumnType("integer"); + + b.Property("HistoricPeriod") + .HasColumnType("interval"); + + b.Property("HistoricStatistic") + .HasColumnType("integer"); + + b.Property("Mode") + .HasColumnType("integer"); + + b.Property("Negative") + .HasColumnType("boolean"); + + b.Property("Order") + .HasColumnType("integer"); + + b.Property("Percentage") + .HasColumnType("numeric"); + + b.HasKey("Id"); + + b.HasIndex("AllocId"); + + b.ToTable("Operations"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.OuterTransaction", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedOn") + .HasColumnType("timestamp with time zone"); + + b.Property("ExternalId") + .IsRequired() + .HasColumnType("text"); + + b.Property("OwnerId") + .HasColumnType("integer"); + + b.Property("SplitDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("UpdatedOn") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("OwnerId"); + + b.ToTable("OuterTransactions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Email") + .IsRequired() + .HasColumnType("text"); + + b.Property("FirstName") + .IsRequired() + .HasColumnType("text"); + + b.Property("LastName") + .IsRequired() + .HasColumnType("text"); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("text"); + + b.Property("Role") + .HasColumnType("integer"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.CurrencyType", "Currency") + .WithMany() + .HasForeignKey("CurrencyId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.User", "Owner") + .WithMany("Accounts") + .HasForeignKey("OwnerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Currency"); + + b.Navigation("Owner"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Alloc", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "Account") + .WithMany("Allocs") + .HasForeignKey("AccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Account"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.InnerTransaction", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "CreditAccount") + .WithMany() + .HasForeignKey("CreditAccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.CurrencyType", "CurrencyType") + .WithMany() + .HasForeignKey("CurrencyTypeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "DebitAccount") + .WithMany() + .HasForeignKey("DebitAccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.InnerTransaction", null) + .WithMany("Transactions") + .HasForeignKey("InnerTransactionId"); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.OuterTransaction", null) + .WithMany("Transactions") + .HasForeignKey("OuterTransactionId"); + + b.Navigation("CreditAccount"); + + b.Navigation("CurrencyType"); + + b.Navigation("DebitAccount"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Operation", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Alloc", null) + .WithMany("Operations") + .HasForeignKey("AllocId"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.OuterTransaction", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.User", "Owner") + .WithMany() + .HasForeignKey("OwnerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Owner"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.Navigation("Allocs"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Alloc", b => + { + b.Navigation("Operations"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.InnerTransaction", b => + { + b.Navigation("Transactions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.OuterTransaction", b => + { + b.Navigation("Transactions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.User", b => + { + b.Navigation("Accounts"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/AAIntegration.SimmonsBank.API/Migrations/20231219215509_AddedTransactionEntity.cs b/AAIntegration.SimmonsBank.API/Migrations/20231219215509_AddedTransactionEntity.cs new file mode 100644 index 0000000..31f86bb --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Migrations/20231219215509_AddedTransactionEntity.cs @@ -0,0 +1,131 @@ +using System; +using Microsoft.EntityFrameworkCore.Migrations; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; + +#nullable disable + +namespace AAIntegration.SimmonsBank.API.Migrations +{ + /// + public partial class AddedTransactionEntity : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.CreateTable( + name: "OuterTransactions", + columns: table => new + { + Id = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + OwnerId = table.Column(type: "integer", nullable: false), + SplitDescription = table.Column(type: "text", nullable: false), + CreatedOn = table.Column(type: "timestamp with time zone", nullable: false), + UpdatedOn = table.Column(type: "timestamp with time zone", nullable: false), + ExternalId = table.Column(type: "text", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_OuterTransactions", x => x.Id); + table.ForeignKey( + name: "FK_OuterTransactions_Users_OwnerId", + column: x => x.OwnerId, + principalTable: "Users", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateTable( + name: "InnerTransactions", + columns: table => new + { + Id = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + Description = table.Column(type: "text", nullable: false), + DebitAccountId = table.Column(type: "integer", nullable: false), + CreditAccountId = table.Column(type: "integer", nullable: false), + Amount = table.Column(type: "numeric", nullable: false), + CreatedOn = table.Column(type: "timestamp with time zone", nullable: false), + UpdatedOn = table.Column(type: "timestamp with time zone", nullable: false), + ExternalId = table.Column(type: "text", nullable: false), + CurrencyTypeId = table.Column(type: "integer", nullable: false), + Notes = table.Column(type: "text", nullable: false), + IsPending = table.Column(type: "boolean", nullable: false), + InnerTransactionId = table.Column(type: "integer", nullable: true), + OuterTransactionId = table.Column(type: "integer", nullable: true) + }, + constraints: table => + { + table.PrimaryKey("PK_InnerTransactions", x => x.Id); + table.ForeignKey( + name: "FK_InnerTransactions_Accounts_CreditAccountId", + column: x => x.CreditAccountId, + principalTable: "Accounts", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + table.ForeignKey( + name: "FK_InnerTransactions_Accounts_DebitAccountId", + column: x => x.DebitAccountId, + principalTable: "Accounts", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + table.ForeignKey( + name: "FK_InnerTransactions_CurrencyTypes_CurrencyTypeId", + column: x => x.CurrencyTypeId, + principalTable: "CurrencyTypes", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + table.ForeignKey( + name: "FK_InnerTransactions_InnerTransactions_InnerTransactionId", + column: x => x.InnerTransactionId, + principalTable: "InnerTransactions", + principalColumn: "Id"); + table.ForeignKey( + name: "FK_InnerTransactions_OuterTransactions_OuterTransactionId", + column: x => x.OuterTransactionId, + principalTable: "OuterTransactions", + principalColumn: "Id"); + }); + + migrationBuilder.CreateIndex( + name: "IX_InnerTransactions_CreditAccountId", + table: "InnerTransactions", + column: "CreditAccountId"); + + migrationBuilder.CreateIndex( + name: "IX_InnerTransactions_CurrencyTypeId", + table: "InnerTransactions", + column: "CurrencyTypeId"); + + migrationBuilder.CreateIndex( + name: "IX_InnerTransactions_DebitAccountId", + table: "InnerTransactions", + column: "DebitAccountId"); + + migrationBuilder.CreateIndex( + name: "IX_InnerTransactions_InnerTransactionId", + table: "InnerTransactions", + column: "InnerTransactionId"); + + migrationBuilder.CreateIndex( + name: "IX_InnerTransactions_OuterTransactionId", + table: "InnerTransactions", + column: "OuterTransactionId"); + + migrationBuilder.CreateIndex( + name: "IX_OuterTransactions_OwnerId", + table: "OuterTransactions", + column: "OwnerId"); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable( + name: "InnerTransactions"); + + migrationBuilder.DropTable( + name: "OuterTransactions"); + } + } +} diff --git a/AAIntegration.SimmonsBank.API/Migrations/20231221130142_ModifiedTranscationEntity.Designer.cs b/AAIntegration.SimmonsBank.API/Migrations/20231221130142_ModifiedTranscationEntity.Designer.cs new file mode 100644 index 0000000..94888ee --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Migrations/20231221130142_ModifiedTranscationEntity.Designer.cs @@ -0,0 +1,399 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using AAIntegration.SimmonsBank.API.Config; + +#nullable disable + +namespace AAIntegration.SimmonsBank.API.Migrations +{ + [DbContext(typeof(DataContext))] + [Migration("20231221130142_ModifiedTranscationEntity")] + partial class ModifiedTranscationEntity + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "7.0.9") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Balance") + .HasColumnType("numeric"); + + b.Property("CreatedOn") + .HasColumnType("timestamp with time zone"); + + b.Property("CurrencyId") + .HasColumnType("integer"); + + b.Property("ExternalAccountNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("InitialBalance") + .HasColumnType("numeric"); + + b.Property("LastActivity") + .HasColumnType("timestamp with time zone"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("OwnerId") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("CurrencyId"); + + b.HasIndex("OwnerId"); + + b.ToTable("Accounts"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Alloc", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccountId") + .HasColumnType("integer"); + + b.Property("CurrentBalance") + .HasColumnType("numeric"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("LastBalanceAdded") + .HasColumnType("numeric"); + + b.Property("LastTriggeredOn") + .HasColumnType("timestamp with time zone"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("Period") + .HasColumnType("interval"); + + b.Property("PersistanceEnabled") + .HasColumnType("boolean"); + + b.HasKey("Id"); + + b.HasIndex("AccountId"); + + b.ToTable("Allocs"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.CurrencyType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Code") + .IsRequired() + .HasColumnType("text"); + + b.Property("DecimalPlaces") + .HasColumnType("integer"); + + b.Property("Symbol") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("CurrencyTypes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.InnerTransaction", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Amount") + .HasColumnType("numeric"); + + b.Property("CreditAccountId") + .HasColumnType("integer"); + + b.Property("CurrencyTypeId") + .HasColumnType("integer"); + + b.Property("DebitAccountId") + .HasColumnType("integer"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("IsPending") + .HasColumnType("boolean"); + + b.Property("Notes") + .IsRequired() + .HasColumnType("text"); + + b.Property("OuterTransactionId") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("CreditAccountId"); + + b.HasIndex("CurrencyTypeId"); + + b.HasIndex("DebitAccountId"); + + b.HasIndex("OuterTransactionId"); + + b.ToTable("InnerTransactions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Operation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AbsoluteValue") + .HasColumnType("numeric"); + + b.Property("AllocId") + .HasColumnType("integer"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("HistoricLookbackDepth") + .HasColumnType("integer"); + + b.Property("HistoricPeriod") + .HasColumnType("interval"); + + b.Property("HistoricStatistic") + .HasColumnType("integer"); + + b.Property("Mode") + .HasColumnType("integer"); + + b.Property("Negative") + .HasColumnType("boolean"); + + b.Property("Order") + .HasColumnType("integer"); + + b.Property("Percentage") + .HasColumnType("numeric"); + + b.HasKey("Id"); + + b.HasIndex("AllocId"); + + b.ToTable("Operations"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.OuterTransaction", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedOn") + .HasColumnType("timestamp with time zone"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("ExternalId") + .IsRequired() + .HasColumnType("text"); + + b.Property("OwnerId") + .HasColumnType("integer"); + + b.Property("SplitDescription") + .IsRequired() + .HasColumnType("text"); + + b.Property("UpdatedOn") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("OwnerId"); + + b.ToTable("OuterTransactions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Email") + .IsRequired() + .HasColumnType("text"); + + b.Property("FirstName") + .IsRequired() + .HasColumnType("text"); + + b.Property("LastName") + .IsRequired() + .HasColumnType("text"); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("text"); + + b.Property("Role") + .HasColumnType("integer"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.CurrencyType", "Currency") + .WithMany() + .HasForeignKey("CurrencyId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.User", "Owner") + .WithMany("Accounts") + .HasForeignKey("OwnerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Currency"); + + b.Navigation("Owner"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Alloc", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "Account") + .WithMany("Allocs") + .HasForeignKey("AccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Account"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.InnerTransaction", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "CreditAccount") + .WithMany() + .HasForeignKey("CreditAccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.CurrencyType", "CurrencyType") + .WithMany() + .HasForeignKey("CurrencyTypeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "DebitAccount") + .WithMany() + .HasForeignKey("DebitAccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.OuterTransaction", null) + .WithMany("Transactions") + .HasForeignKey("OuterTransactionId"); + + b.Navigation("CreditAccount"); + + b.Navigation("CurrencyType"); + + b.Navigation("DebitAccount"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Operation", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Alloc", null) + .WithMany("Operations") + .HasForeignKey("AllocId"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.OuterTransaction", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.User", "Owner") + .WithMany() + .HasForeignKey("OwnerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Owner"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.Navigation("Allocs"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Alloc", b => + { + b.Navigation("Operations"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.OuterTransaction", b => + { + b.Navigation("Transactions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.User", b => + { + b.Navigation("Accounts"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/AAIntegration.SimmonsBank.API/Migrations/20231221130142_ModifiedTranscationEntity.cs b/AAIntegration.SimmonsBank.API/Migrations/20231221130142_ModifiedTranscationEntity.cs new file mode 100644 index 0000000..1059d8a --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Migrations/20231221130142_ModifiedTranscationEntity.cs @@ -0,0 +1,93 @@ +using System; +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace AAIntegration.SimmonsBank.API.Migrations +{ + /// + public partial class ModifiedTranscationEntity : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropForeignKey( + name: "FK_InnerTransactions_InnerTransactions_InnerTransactionId", + table: "InnerTransactions"); + + migrationBuilder.DropIndex( + name: "IX_InnerTransactions_InnerTransactionId", + table: "InnerTransactions"); + + migrationBuilder.DropColumn( + name: "CreatedOn", + table: "InnerTransactions"); + + migrationBuilder.DropColumn( + name: "ExternalId", + table: "InnerTransactions"); + + migrationBuilder.DropColumn( + name: "InnerTransactionId", + table: "InnerTransactions"); + + migrationBuilder.DropColumn( + name: "UpdatedOn", + table: "InnerTransactions"); + + migrationBuilder.AddColumn( + name: "Date", + table: "OuterTransactions", + type: "timestamp with time zone", + nullable: false, + defaultValue: new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified)); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropColumn( + name: "Date", + table: "OuterTransactions"); + + migrationBuilder.AddColumn( + name: "CreatedOn", + table: "InnerTransactions", + type: "timestamp with time zone", + nullable: false, + defaultValue: new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified)); + + migrationBuilder.AddColumn( + name: "ExternalId", + table: "InnerTransactions", + type: "text", + nullable: false, + defaultValue: ""); + + migrationBuilder.AddColumn( + name: "InnerTransactionId", + table: "InnerTransactions", + type: "integer", + nullable: true); + + migrationBuilder.AddColumn( + name: "UpdatedOn", + table: "InnerTransactions", + type: "timestamp with time zone", + nullable: false, + defaultValue: new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified)); + + migrationBuilder.CreateIndex( + name: "IX_InnerTransactions_InnerTransactionId", + table: "InnerTransactions", + column: "InnerTransactionId"); + + migrationBuilder.AddForeignKey( + name: "FK_InnerTransactions_InnerTransactions_InnerTransactionId", + table: "InnerTransactions", + column: "InnerTransactionId", + principalTable: "InnerTransactions", + principalColumn: "Id"); + } + } +} diff --git a/AAIntegration.SimmonsBank.API/Migrations/20231221150634_SimplifiedTransaction.Designer.cs b/AAIntegration.SimmonsBank.API/Migrations/20231221150634_SimplifiedTransaction.Designer.cs new file mode 100644 index 0000000..396d957 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Migrations/20231221150634_SimplifiedTransaction.Designer.cs @@ -0,0 +1,365 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using AAIntegration.SimmonsBank.API.Config; + +#nullable disable + +namespace AAIntegration.SimmonsBank.API.Migrations +{ + [DbContext(typeof(DataContext))] + [Migration("20231221150634_SimplifiedTransaction")] + partial class SimplifiedTransaction + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "7.0.9") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Balance") + .HasColumnType("numeric"); + + b.Property("CreatedOn") + .HasColumnType("timestamp with time zone"); + + b.Property("CurrencyId") + .HasColumnType("integer"); + + b.Property("ExternalAccountNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("InitialBalance") + .HasColumnType("numeric"); + + b.Property("LastActivity") + .HasColumnType("timestamp with time zone"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("OwnerId") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("CurrencyId"); + + b.HasIndex("OwnerId"); + + b.ToTable("Accounts"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Alloc", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccountId") + .HasColumnType("integer"); + + b.Property("CurrentBalance") + .HasColumnType("numeric"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("LastBalanceAdded") + .HasColumnType("numeric"); + + b.Property("LastTriggeredOn") + .HasColumnType("timestamp with time zone"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("Period") + .HasColumnType("interval"); + + b.Property("PersistanceEnabled") + .HasColumnType("boolean"); + + b.HasKey("Id"); + + b.HasIndex("AccountId"); + + b.ToTable("Allocs"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.CurrencyType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Code") + .IsRequired() + .HasColumnType("text"); + + b.Property("DecimalPlaces") + .HasColumnType("integer"); + + b.Property("Symbol") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("CurrencyTypes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Operation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AbsoluteValue") + .HasColumnType("numeric"); + + b.Property("AllocId") + .HasColumnType("integer"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("HistoricLookbackDepth") + .HasColumnType("integer"); + + b.Property("HistoricPeriod") + .HasColumnType("interval"); + + b.Property("HistoricStatistic") + .HasColumnType("integer"); + + b.Property("Mode") + .HasColumnType("integer"); + + b.Property("Negative") + .HasColumnType("boolean"); + + b.Property("Order") + .HasColumnType("integer"); + + b.Property("Percentage") + .HasColumnType("numeric"); + + b.HasKey("Id"); + + b.HasIndex("AllocId"); + + b.ToTable("Operations"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Transaction", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Amount") + .HasColumnType("numeric"); + + b.Property("CreatedOn") + .HasColumnType("timestamp with time zone"); + + b.Property("CreditAccountId") + .HasColumnType("integer"); + + b.Property("CurrencyTypeId") + .HasColumnType("integer"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("DebitAccountId") + .HasColumnType("integer"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("ExternalId") + .IsRequired() + .HasColumnType("text"); + + b.Property("IsPending") + .HasColumnType("boolean"); + + b.Property("Notes") + .IsRequired() + .HasColumnType("text"); + + b.Property("OwnerId") + .HasColumnType("integer"); + + b.Property("UpdatedOn") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("CreditAccountId"); + + b.HasIndex("CurrencyTypeId"); + + b.HasIndex("DebitAccountId"); + + b.HasIndex("OwnerId"); + + b.ToTable("Transactions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Email") + .IsRequired() + .HasColumnType("text"); + + b.Property("FirstName") + .IsRequired() + .HasColumnType("text"); + + b.Property("LastName") + .IsRequired() + .HasColumnType("text"); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("text"); + + b.Property("Role") + .HasColumnType("integer"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.CurrencyType", "Currency") + .WithMany() + .HasForeignKey("CurrencyId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.User", "Owner") + .WithMany("Accounts") + .HasForeignKey("OwnerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Currency"); + + b.Navigation("Owner"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Alloc", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "Account") + .WithMany("Allocs") + .HasForeignKey("AccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Account"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Operation", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Alloc", null) + .WithMany("Operations") + .HasForeignKey("AllocId"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Transaction", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "CreditAccount") + .WithMany() + .HasForeignKey("CreditAccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.CurrencyType", "CurrencyType") + .WithMany() + .HasForeignKey("CurrencyTypeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "DebitAccount") + .WithMany() + .HasForeignKey("DebitAccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.User", "Owner") + .WithMany() + .HasForeignKey("OwnerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("CreditAccount"); + + b.Navigation("CurrencyType"); + + b.Navigation("DebitAccount"); + + b.Navigation("Owner"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.Navigation("Allocs"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Alloc", b => + { + b.Navigation("Operations"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.User", b => + { + b.Navigation("Accounts"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/AAIntegration.SimmonsBank.API/Migrations/20231221150634_SimplifiedTransaction.cs b/AAIntegration.SimmonsBank.API/Migrations/20231221150634_SimplifiedTransaction.cs new file mode 100644 index 0000000..30c2d37 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Migrations/20231221150634_SimplifiedTransaction.cs @@ -0,0 +1,189 @@ +using System; +using Microsoft.EntityFrameworkCore.Migrations; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; + +#nullable disable + +namespace AAIntegration.SimmonsBank.API.Migrations +{ + /// + public partial class SimplifiedTransaction : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable( + name: "InnerTransactions"); + + migrationBuilder.DropTable( + name: "OuterTransactions"); + + migrationBuilder.CreateTable( + name: "Transactions", + columns: table => new + { + Id = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + OwnerId = table.Column(type: "integer", nullable: false), + Date = table.Column(type: "timestamp with time zone", nullable: false), + CreatedOn = table.Column(type: "timestamp with time zone", nullable: false), + UpdatedOn = table.Column(type: "timestamp with time zone", nullable: false), + ExternalId = table.Column(type: "text", nullable: false), + Description = table.Column(type: "text", nullable: false), + DebitAccountId = table.Column(type: "integer", nullable: false), + CreditAccountId = table.Column(type: "integer", nullable: false), + Amount = table.Column(type: "numeric", nullable: false), + CurrencyTypeId = table.Column(type: "integer", nullable: false), + Notes = table.Column(type: "text", nullable: false), + IsPending = table.Column(type: "boolean", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_Transactions", x => x.Id); + table.ForeignKey( + name: "FK_Transactions_Accounts_CreditAccountId", + column: x => x.CreditAccountId, + principalTable: "Accounts", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + table.ForeignKey( + name: "FK_Transactions_Accounts_DebitAccountId", + column: x => x.DebitAccountId, + principalTable: "Accounts", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + table.ForeignKey( + name: "FK_Transactions_CurrencyTypes_CurrencyTypeId", + column: x => x.CurrencyTypeId, + principalTable: "CurrencyTypes", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + table.ForeignKey( + name: "FK_Transactions_Users_OwnerId", + column: x => x.OwnerId, + principalTable: "Users", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateIndex( + name: "IX_Transactions_CreditAccountId", + table: "Transactions", + column: "CreditAccountId"); + + migrationBuilder.CreateIndex( + name: "IX_Transactions_CurrencyTypeId", + table: "Transactions", + column: "CurrencyTypeId"); + + migrationBuilder.CreateIndex( + name: "IX_Transactions_DebitAccountId", + table: "Transactions", + column: "DebitAccountId"); + + migrationBuilder.CreateIndex( + name: "IX_Transactions_OwnerId", + table: "Transactions", + column: "OwnerId"); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable( + name: "Transactions"); + + migrationBuilder.CreateTable( + name: "OuterTransactions", + columns: table => new + { + Id = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + OwnerId = table.Column(type: "integer", nullable: false), + CreatedOn = table.Column(type: "timestamp with time zone", nullable: false), + Date = table.Column(type: "timestamp with time zone", nullable: false), + ExternalId = table.Column(type: "text", nullable: false), + SplitDescription = table.Column(type: "text", nullable: false), + UpdatedOn = table.Column(type: "timestamp with time zone", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_OuterTransactions", x => x.Id); + table.ForeignKey( + name: "FK_OuterTransactions_Users_OwnerId", + column: x => x.OwnerId, + principalTable: "Users", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateTable( + name: "InnerTransactions", + columns: table => new + { + Id = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + CreditAccountId = table.Column(type: "integer", nullable: false), + CurrencyTypeId = table.Column(type: "integer", nullable: false), + DebitAccountId = table.Column(type: "integer", nullable: false), + Amount = table.Column(type: "numeric", nullable: false), + Description = table.Column(type: "text", nullable: false), + IsPending = table.Column(type: "boolean", nullable: false), + Notes = table.Column(type: "text", nullable: false), + OuterTransactionId = table.Column(type: "integer", nullable: true) + }, + constraints: table => + { + table.PrimaryKey("PK_InnerTransactions", x => x.Id); + table.ForeignKey( + name: "FK_InnerTransactions_Accounts_CreditAccountId", + column: x => x.CreditAccountId, + principalTable: "Accounts", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + table.ForeignKey( + name: "FK_InnerTransactions_Accounts_DebitAccountId", + column: x => x.DebitAccountId, + principalTable: "Accounts", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + table.ForeignKey( + name: "FK_InnerTransactions_CurrencyTypes_CurrencyTypeId", + column: x => x.CurrencyTypeId, + principalTable: "CurrencyTypes", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + table.ForeignKey( + name: "FK_InnerTransactions_OuterTransactions_OuterTransactionId", + column: x => x.OuterTransactionId, + principalTable: "OuterTransactions", + principalColumn: "Id"); + }); + + migrationBuilder.CreateIndex( + name: "IX_InnerTransactions_CreditAccountId", + table: "InnerTransactions", + column: "CreditAccountId"); + + migrationBuilder.CreateIndex( + name: "IX_InnerTransactions_CurrencyTypeId", + table: "InnerTransactions", + column: "CurrencyTypeId"); + + migrationBuilder.CreateIndex( + name: "IX_InnerTransactions_DebitAccountId", + table: "InnerTransactions", + column: "DebitAccountId"); + + migrationBuilder.CreateIndex( + name: "IX_InnerTransactions_OuterTransactionId", + table: "InnerTransactions", + column: "OuterTransactionId"); + + migrationBuilder.CreateIndex( + name: "IX_OuterTransactions_OwnerId", + table: "OuterTransactions", + column: "OwnerId"); + } + } +} diff --git a/AAIntegration.SimmonsBank.API/Migrations/20231226233044_EnvelopeEntity.Designer.cs b/AAIntegration.SimmonsBank.API/Migrations/20231226233044_EnvelopeEntity.Designer.cs new file mode 100644 index 0000000..8ee644d --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Migrations/20231226233044_EnvelopeEntity.Designer.cs @@ -0,0 +1,351 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using AAIntegration.SimmonsBank.API.Config; + +#nullable disable + +namespace AAIntegration.SimmonsBank.API.Migrations +{ + [DbContext(typeof(DataContext))] + [Migration("20231226233044_EnvelopeEntity")] + partial class EnvelopeEntity + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "7.0.9") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Balance") + .HasColumnType("numeric"); + + b.Property("CreatedOn") + .HasColumnType("timestamp with time zone"); + + b.Property("CurrencyId") + .HasColumnType("integer"); + + b.Property("ExternalAccountNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("InitialBalance") + .HasColumnType("numeric"); + + b.Property("LastActivity") + .HasColumnType("timestamp with time zone"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("OwnerId") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("CurrencyId"); + + b.HasIndex("OwnerId"); + + b.ToTable("Accounts"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.CurrencyType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Code") + .IsRequired() + .HasColumnType("text"); + + b.Property("DecimalPlaces") + .HasColumnType("integer"); + + b.Property("Symbol") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("CurrencyTypes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Envelope", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccountId") + .HasColumnType("integer"); + + b.Property("Balance") + .HasColumnType("numeric"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("InitialBalance") + .HasColumnType("numeric"); + + b.Property("IsPersistant") + .HasColumnType("boolean"); + + b.Property("LastTriggeredOn") + .HasColumnType("timestamp with time zone"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("Period") + .HasColumnType("interval"); + + b.Property("Priority") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("AccountId"); + + b.ToTable("Envelopes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Operation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AbsoluteValue") + .HasColumnType("numeric"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("HistoricLookbackDepth") + .HasColumnType("integer"); + + b.Property("HistoricPeriod") + .HasColumnType("interval"); + + b.Property("HistoricStatistic") + .HasColumnType("integer"); + + b.Property("Mode") + .HasColumnType("integer"); + + b.Property("Negative") + .HasColumnType("boolean"); + + b.Property("Order") + .HasColumnType("integer"); + + b.Property("Percentage") + .HasColumnType("numeric"); + + b.HasKey("Id"); + + b.ToTable("Operations"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Transaction", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Amount") + .HasColumnType("numeric"); + + b.Property("CreatedOn") + .HasColumnType("timestamp with time zone"); + + b.Property("CreditAccountId") + .HasColumnType("integer"); + + b.Property("CurrencyTypeId") + .HasColumnType("integer"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("DebitAccountId") + .HasColumnType("integer"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("ExternalId") + .IsRequired() + .HasColumnType("text"); + + b.Property("IsPending") + .HasColumnType("boolean"); + + b.Property("Notes") + .IsRequired() + .HasColumnType("text"); + + b.Property("OwnerId") + .HasColumnType("integer"); + + b.Property("UpdatedOn") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("CreditAccountId"); + + b.HasIndex("CurrencyTypeId"); + + b.HasIndex("DebitAccountId"); + + b.HasIndex("OwnerId"); + + b.ToTable("Transactions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Email") + .IsRequired() + .HasColumnType("text"); + + b.Property("FirstName") + .IsRequired() + .HasColumnType("text"); + + b.Property("LastName") + .IsRequired() + .HasColumnType("text"); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("text"); + + b.Property("Role") + .HasColumnType("integer"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.CurrencyType", "Currency") + .WithMany() + .HasForeignKey("CurrencyId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.User", "Owner") + .WithMany("Accounts") + .HasForeignKey("OwnerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Currency"); + + b.Navigation("Owner"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Envelope", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "Account") + .WithMany("Envelopes") + .HasForeignKey("AccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Account"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Transaction", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "CreditAccount") + .WithMany() + .HasForeignKey("CreditAccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.CurrencyType", "CurrencyType") + .WithMany() + .HasForeignKey("CurrencyTypeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "DebitAccount") + .WithMany() + .HasForeignKey("DebitAccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.User", "Owner") + .WithMany() + .HasForeignKey("OwnerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("CreditAccount"); + + b.Navigation("CurrencyType"); + + b.Navigation("DebitAccount"); + + b.Navigation("Owner"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.Navigation("Envelopes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.User", b => + { + b.Navigation("Accounts"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/AAIntegration.SimmonsBank.API/Migrations/20231226233044_EnvelopeEntity.cs b/AAIntegration.SimmonsBank.API/Migrations/20231226233044_EnvelopeEntity.cs new file mode 100644 index 0000000..3604f7f --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Migrations/20231226233044_EnvelopeEntity.cs @@ -0,0 +1,119 @@ +using System; +using Microsoft.EntityFrameworkCore.Migrations; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; + +#nullable disable + +namespace AAIntegration.SimmonsBank.API.Migrations +{ + /// + public partial class EnvelopeEntity : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropForeignKey( + name: "FK_Operations_Allocs_AllocId", + table: "Operations"); + + migrationBuilder.DropTable( + name: "Allocs"); + + migrationBuilder.DropIndex( + name: "IX_Operations_AllocId", + table: "Operations"); + + migrationBuilder.DropColumn( + name: "AllocId", + table: "Operations"); + + migrationBuilder.CreateTable( + name: "Envelopes", + columns: table => new + { + Id = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + Name = table.Column(type: "text", nullable: false), + AccountId = table.Column(type: "integer", nullable: false), + Enabled = table.Column(type: "boolean", nullable: false), + Period = table.Column(type: "interval", nullable: false), + IsPersistant = table.Column(type: "boolean", nullable: false), + Priority = table.Column(type: "integer", nullable: false), + Balance = table.Column(type: "numeric", nullable: false), + InitialBalance = table.Column(type: "numeric", nullable: false), + LastTriggeredOn = table.Column(type: "timestamp with time zone", nullable: true) + }, + constraints: table => + { + table.PrimaryKey("PK_Envelopes", x => x.Id); + table.ForeignKey( + name: "FK_Envelopes_Accounts_AccountId", + column: x => x.AccountId, + principalTable: "Accounts", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateIndex( + name: "IX_Envelopes_AccountId", + table: "Envelopes", + column: "AccountId"); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable( + name: "Envelopes"); + + migrationBuilder.AddColumn( + name: "AllocId", + table: "Operations", + type: "integer", + nullable: true); + + migrationBuilder.CreateTable( + name: "Allocs", + columns: table => new + { + Id = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + AccountId = table.Column(type: "integer", nullable: false), + CurrentBalance = table.Column(type: "numeric", nullable: false), + Enabled = table.Column(type: "boolean", nullable: false), + LastBalanceAdded = table.Column(type: "numeric", nullable: false), + LastTriggeredOn = table.Column(type: "timestamp with time zone", nullable: false), + Name = table.Column(type: "text", nullable: false), + Period = table.Column(type: "interval", nullable: false), + PersistanceEnabled = table.Column(type: "boolean", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_Allocs", x => x.Id); + table.ForeignKey( + name: "FK_Allocs_Accounts_AccountId", + column: x => x.AccountId, + principalTable: "Accounts", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateIndex( + name: "IX_Operations_AllocId", + table: "Operations", + column: "AllocId"); + + migrationBuilder.CreateIndex( + name: "IX_Allocs_AccountId", + table: "Allocs", + column: "AccountId"); + + migrationBuilder.AddForeignKey( + name: "FK_Operations_Allocs_AllocId", + table: "Operations", + column: "AllocId", + principalTable: "Allocs", + principalColumn: "Id"); + } + } +} diff --git a/AAIntegration.SimmonsBank.API/Migrations/20231230032947_Autoclass.Designer.cs b/AAIntegration.SimmonsBank.API/Migrations/20231230032947_Autoclass.Designer.cs new file mode 100644 index 0000000..d63eb32 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Migrations/20231230032947_Autoclass.Designer.cs @@ -0,0 +1,461 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using AAIntegration.SimmonsBank.API.Config; + +#nullable disable + +namespace AAIntegration.SimmonsBank.API.Migrations +{ + [DbContext(typeof(DataContext))] + [Migration("20231230032947_Autoclass")] + partial class Autoclass + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "7.0.9") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Balance") + .HasColumnType("numeric"); + + b.Property("CreatedOn") + .HasColumnType("timestamp with time zone"); + + b.Property("CurrencyId") + .HasColumnType("integer"); + + b.Property("ExternalAccountNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("InitialBalance") + .HasColumnType("numeric"); + + b.Property("LastActivity") + .HasColumnType("timestamp with time zone"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("OwnerId") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("CurrencyId"); + + b.HasIndex("OwnerId"); + + b.ToTable("Accounts"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassChange", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AutoclassRuleId") + .HasColumnType("integer"); + + b.Property("Field") + .HasColumnType("integer"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AutoclassRuleId"); + + b.ToTable("AutoclassChanges"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassExpression", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AutoclassRuleId") + .HasColumnType("integer"); + + b.Property("CompareOperator") + .HasColumnType("integer"); + + b.Property("TransactionField") + .HasColumnType("integer"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AutoclassRuleId"); + + b.ToTable("AutoclassExpressions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccountId") + .HasColumnType("integer"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AccountId"); + + b.ToTable("AutoclassRules"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.CurrencyType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Code") + .IsRequired() + .HasColumnType("text"); + + b.Property("DecimalPlaces") + .HasColumnType("integer"); + + b.Property("Symbol") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("CurrencyTypes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Envelope", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccountId") + .HasColumnType("integer"); + + b.Property("Balance") + .HasColumnType("numeric"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("InitialBalance") + .HasColumnType("numeric"); + + b.Property("IsPersistant") + .HasColumnType("boolean"); + + b.Property("LastTriggeredOn") + .HasColumnType("timestamp with time zone"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("Period") + .HasColumnType("interval"); + + b.Property("Priority") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("AccountId"); + + b.ToTable("Envelopes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Operation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AbsoluteValue") + .HasColumnType("numeric"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("HistoricLookbackDepth") + .HasColumnType("integer"); + + b.Property("HistoricPeriod") + .HasColumnType("interval"); + + b.Property("HistoricStatistic") + .HasColumnType("integer"); + + b.Property("Mode") + .HasColumnType("integer"); + + b.Property("Negative") + .HasColumnType("boolean"); + + b.Property("Order") + .HasColumnType("integer"); + + b.Property("Percentage") + .HasColumnType("numeric"); + + b.HasKey("Id"); + + b.ToTable("Operations"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Transaction", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Amount") + .HasColumnType("numeric"); + + b.Property("CreatedOn") + .HasColumnType("timestamp with time zone"); + + b.Property("CreditAccountId") + .HasColumnType("integer"); + + b.Property("CurrencyTypeId") + .HasColumnType("integer"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("DebitAccountId") + .HasColumnType("integer"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("ExternalId") + .IsRequired() + .HasColumnType("text"); + + b.Property("IsPending") + .HasColumnType("boolean"); + + b.Property("Notes") + .IsRequired() + .HasColumnType("text"); + + b.Property("OwnerId") + .HasColumnType("integer"); + + b.Property("UpdatedOn") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("CreditAccountId"); + + b.HasIndex("CurrencyTypeId"); + + b.HasIndex("DebitAccountId"); + + b.HasIndex("OwnerId"); + + b.ToTable("Transactions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Email") + .IsRequired() + .HasColumnType("text"); + + b.Property("FirstName") + .IsRequired() + .HasColumnType("text"); + + b.Property("LastName") + .IsRequired() + .HasColumnType("text"); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("text"); + + b.Property("Role") + .HasColumnType("integer"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.CurrencyType", "Currency") + .WithMany() + .HasForeignKey("CurrencyId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.User", "Owner") + .WithMany("Accounts") + .HasForeignKey("OwnerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Currency"); + + b.Navigation("Owner"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassChange", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", null) + .WithMany("Changes") + .HasForeignKey("AutoclassRuleId"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassExpression", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", null) + .WithMany("Expressions") + .HasForeignKey("AutoclassRuleId"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "Account") + .WithMany() + .HasForeignKey("AccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Account"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Envelope", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "Account") + .WithMany("Envelopes") + .HasForeignKey("AccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Account"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Transaction", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "CreditAccount") + .WithMany() + .HasForeignKey("CreditAccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.CurrencyType", "CurrencyType") + .WithMany() + .HasForeignKey("CurrencyTypeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "DebitAccount") + .WithMany() + .HasForeignKey("DebitAccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.User", "Owner") + .WithMany() + .HasForeignKey("OwnerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("CreditAccount"); + + b.Navigation("CurrencyType"); + + b.Navigation("DebitAccount"); + + b.Navigation("Owner"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.Navigation("Envelopes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", b => + { + b.Navigation("Changes"); + + b.Navigation("Expressions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.User", b => + { + b.Navigation("Accounts"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/AAIntegration.SimmonsBank.API/Migrations/20231230032947_Autoclass.cs b/AAIntegration.SimmonsBank.API/Migrations/20231230032947_Autoclass.cs new file mode 100644 index 0000000..366f993 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Migrations/20231230032947_Autoclass.cs @@ -0,0 +1,105 @@ +using Microsoft.EntityFrameworkCore.Migrations; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; + +#nullable disable + +namespace AAIntegration.SimmonsBank.API.Migrations +{ + /// + public partial class Autoclass : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.CreateTable( + name: "AutoclassRules", + columns: table => new + { + Id = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + Name = table.Column(type: "text", nullable: false), + AccountId = table.Column(type: "integer", nullable: false), + Enabled = table.Column(type: "boolean", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_AutoclassRules", x => x.Id); + table.ForeignKey( + name: "FK_AutoclassRules_Accounts_AccountId", + column: x => x.AccountId, + principalTable: "Accounts", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateTable( + name: "AutoclassChanges", + columns: table => new + { + Id = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + Field = table.Column(type: "integer", nullable: false), + Value = table.Column(type: "text", nullable: false), + AutoclassRuleId = table.Column(type: "integer", nullable: true) + }, + constraints: table => + { + table.PrimaryKey("PK_AutoclassChanges", x => x.Id); + table.ForeignKey( + name: "FK_AutoclassChanges_AutoclassRules_AutoclassRuleId", + column: x => x.AutoclassRuleId, + principalTable: "AutoclassRules", + principalColumn: "Id"); + }); + + migrationBuilder.CreateTable( + name: "AutoclassExpressions", + columns: table => new + { + Id = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + TransactionField = table.Column(type: "integer", nullable: false), + CompareOperator = table.Column(type: "integer", nullable: false), + Value = table.Column(type: "text", nullable: false), + AutoclassRuleId = table.Column(type: "integer", nullable: true) + }, + constraints: table => + { + table.PrimaryKey("PK_AutoclassExpressions", x => x.Id); + table.ForeignKey( + name: "FK_AutoclassExpressions_AutoclassRules_AutoclassRuleId", + column: x => x.AutoclassRuleId, + principalTable: "AutoclassRules", + principalColumn: "Id"); + }); + + migrationBuilder.CreateIndex( + name: "IX_AutoclassChanges_AutoclassRuleId", + table: "AutoclassChanges", + column: "AutoclassRuleId"); + + migrationBuilder.CreateIndex( + name: "IX_AutoclassExpressions_AutoclassRuleId", + table: "AutoclassExpressions", + column: "AutoclassRuleId"); + + migrationBuilder.CreateIndex( + name: "IX_AutoclassRules_AccountId", + table: "AutoclassRules", + column: "AccountId"); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable( + name: "AutoclassChanges"); + + migrationBuilder.DropTable( + name: "AutoclassExpressions"); + + migrationBuilder.DropTable( + name: "AutoclassRules"); + } + } +} diff --git a/AAIntegration.SimmonsBank.API/Migrations/20240118221018_AddedEnvelopetoTransaction.Designer.cs b/AAIntegration.SimmonsBank.API/Migrations/20240118221018_AddedEnvelopetoTransaction.Designer.cs new file mode 100644 index 0000000..a8484b8 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Migrations/20240118221018_AddedEnvelopetoTransaction.Designer.cs @@ -0,0 +1,479 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using AAIntegration.SimmonsBank.API.Config; + +#nullable disable + +namespace AAIntegration.SimmonsBank.API.Migrations +{ + [DbContext(typeof(DataContext))] + [Migration("20240118221018_AddedEnvelopetoTransaction")] + partial class AddedEnvelopetoTransaction + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "7.0.9") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Balance") + .HasColumnType("numeric"); + + b.Property("CreatedOn") + .HasColumnType("timestamp with time zone"); + + b.Property("CurrencyId") + .HasColumnType("integer"); + + b.Property("ExternalAccountNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("InitialBalance") + .HasColumnType("numeric"); + + b.Property("LastActivity") + .HasColumnType("timestamp with time zone"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("OwnerId") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("CurrencyId"); + + b.HasIndex("OwnerId"); + + b.ToTable("Accounts"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassChange", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AutoclassRuleId") + .HasColumnType("integer"); + + b.Property("Field") + .HasColumnType("integer"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AutoclassRuleId"); + + b.ToTable("AutoclassChanges"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassExpression", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AutoclassRuleId") + .HasColumnType("integer"); + + b.Property("CompareOperator") + .HasColumnType("integer"); + + b.Property("TransactionField") + .HasColumnType("integer"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AutoclassRuleId"); + + b.ToTable("AutoclassExpressions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccountId") + .HasColumnType("integer"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AccountId"); + + b.ToTable("AutoclassRules"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.CurrencyType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Code") + .IsRequired() + .HasColumnType("text"); + + b.Property("DecimalPlaces") + .HasColumnType("integer"); + + b.Property("Symbol") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("CurrencyTypes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Envelope", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccountId") + .HasColumnType("integer"); + + b.Property("Balance") + .HasColumnType("numeric"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("InitialBalance") + .HasColumnType("numeric"); + + b.Property("IsPersistant") + .HasColumnType("boolean"); + + b.Property("LastTriggeredOn") + .HasColumnType("timestamp with time zone"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("Period") + .HasColumnType("interval"); + + b.Property("Priority") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("AccountId"); + + b.ToTable("Envelopes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Operation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AbsoluteValue") + .HasColumnType("numeric"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("HistoricLookbackDepth") + .HasColumnType("integer"); + + b.Property("HistoricPeriod") + .HasColumnType("interval"); + + b.Property("HistoricStatistic") + .HasColumnType("integer"); + + b.Property("Mode") + .HasColumnType("integer"); + + b.Property("Negative") + .HasColumnType("boolean"); + + b.Property("Order") + .HasColumnType("integer"); + + b.Property("Percentage") + .HasColumnType("numeric"); + + b.HasKey("Id"); + + b.ToTable("Operations"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Transaction", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Amount") + .HasColumnType("numeric"); + + b.Property("CreatedOn") + .HasColumnType("timestamp with time zone"); + + b.Property("CreditAccountId") + .HasColumnType("integer"); + + b.Property("CreditEnvelopeId") + .HasColumnType("integer"); + + b.Property("CurrencyTypeId") + .HasColumnType("integer"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("DebitAccountId") + .HasColumnType("integer"); + + b.Property("DebitEnvelopeId") + .HasColumnType("integer"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("ExternalId") + .IsRequired() + .HasColumnType("text"); + + b.Property("IsPending") + .HasColumnType("boolean"); + + b.Property("Notes") + .IsRequired() + .HasColumnType("text"); + + b.Property("OwnerId") + .HasColumnType("integer"); + + b.Property("UpdatedOn") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("CreditAccountId"); + + b.HasIndex("CreditEnvelopeId"); + + b.HasIndex("CurrencyTypeId"); + + b.HasIndex("DebitAccountId"); + + b.HasIndex("DebitEnvelopeId"); + + b.HasIndex("OwnerId"); + + b.ToTable("Transactions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Email") + .IsRequired() + .HasColumnType("text"); + + b.Property("FirstName") + .IsRequired() + .HasColumnType("text"); + + b.Property("LastName") + .IsRequired() + .HasColumnType("text"); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("text"); + + b.Property("Role") + .HasColumnType("integer"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.CurrencyType", "Currency") + .WithMany() + .HasForeignKey("CurrencyId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.User", "Owner") + .WithMany("Accounts") + .HasForeignKey("OwnerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Currency"); + + b.Navigation("Owner"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassChange", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", null) + .WithMany("Changes") + .HasForeignKey("AutoclassRuleId"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassExpression", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", null) + .WithMany("Expressions") + .HasForeignKey("AutoclassRuleId"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "Account") + .WithMany() + .HasForeignKey("AccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Account"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Envelope", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "Account") + .WithMany("Envelopes") + .HasForeignKey("AccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Account"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Transaction", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "CreditAccount") + .WithMany() + .HasForeignKey("CreditAccountId"); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Envelope", "CreditEnvelope") + .WithMany() + .HasForeignKey("CreditEnvelopeId"); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.CurrencyType", "CurrencyType") + .WithMany() + .HasForeignKey("CurrencyTypeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "DebitAccount") + .WithMany() + .HasForeignKey("DebitAccountId"); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Envelope", "DebitEnvelope") + .WithMany() + .HasForeignKey("DebitEnvelopeId"); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.User", "Owner") + .WithMany() + .HasForeignKey("OwnerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("CreditAccount"); + + b.Navigation("CreditEnvelope"); + + b.Navigation("CurrencyType"); + + b.Navigation("DebitAccount"); + + b.Navigation("DebitEnvelope"); + + b.Navigation("Owner"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.Navigation("Envelopes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", b => + { + b.Navigation("Changes"); + + b.Navigation("Expressions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.User", b => + { + b.Navigation("Accounts"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/AAIntegration.SimmonsBank.API/Migrations/20240118221018_AddedEnvelopetoTransaction.cs b/AAIntegration.SimmonsBank.API/Migrations/20240118221018_AddedEnvelopetoTransaction.cs new file mode 100644 index 0000000..e863d84 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Migrations/20240118221018_AddedEnvelopetoTransaction.cs @@ -0,0 +1,170 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace AAIntegration.SimmonsBank.API.Migrations +{ + /// + public partial class AddedEnvelopetoTransaction : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropForeignKey( + name: "FK_Transactions_Accounts_CreditAccountId", + table: "Transactions"); + + migrationBuilder.DropForeignKey( + name: "FK_Transactions_Accounts_DebitAccountId", + table: "Transactions"); + + migrationBuilder.AddColumn( + name: "DebitEnvelopeId", + table: "Transactions", + type: "integer", + nullable: true); + + migrationBuilder.AlterColumn( + name: "DebitAccountId", + table: "Transactions", + type: "integer", + nullable: true, + oldClrType: typeof(int), + oldType: "integer"); + + migrationBuilder.AddColumn( + name: "CreditEnvelopeId", + table: "Transactions", + type: "integer", + nullable: true); + + migrationBuilder.AlterColumn( + name: "CreditAccountId", + table: "Transactions", + type: "integer", + nullable: true, + oldClrType: typeof(int), + oldType: "integer"); + + migrationBuilder.AddForeignKey( + name: "FK_Transactions_Accounts_CreditAccountId", + table: "Transactions", + column: "CreditAccountId", + principalTable: "Accounts", + principalColumn: "Id"); + + migrationBuilder.AddForeignKey( + name: "FK_Transactions_Accounts_DebitAccountId", + table: "Transactions", + column: "DebitAccountId", + principalTable: "Accounts", + principalColumn: "Id"); + + migrationBuilder.AddForeignKey( + name: "FK_Transactions_Envelopes_CreditEnvelopeId", + table: "Transactions", + column: "CreditEnvelopeId", + principalTable: "Envelopes", + principalColumn: "Id"); + + migrationBuilder.AddForeignKey( + name: "FK_Transactions_Envelopes_DebitEnvelopeId", + table: "Transactions", + column: "DebitEnvelopeId", + principalTable: "Envelopes", + principalColumn: "Id"); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropForeignKey( + name: "FK_Transactions_Accounts_CreditAccountId", + table: "Transactions"); + + migrationBuilder.DropForeignKey( + name: "FK_Transactions_Accounts_DebitAccountId", + table: "Transactions"); + + migrationBuilder.DropForeignKey( + name: "FK_Transactions_Envelopes_CreditEnvelopeId", + table: "Transactions"); + + migrationBuilder.DropForeignKey( + name: "FK_Transactions_Envelopes_DebitEnvelopeId", + table: "Transactions"); + + migrationBuilder.AlterColumn( + name: "DebitEnvelopeId", + table: "Transactions", + type: "integer", + nullable: false, + defaultValue: 0, + oldClrType: typeof(int), + oldType: "integer", + oldNullable: true); + + migrationBuilder.AlterColumn( + name: "DebitAccountId", + table: "Transactions", + type: "integer", + nullable: false, + defaultValue: 0, + oldClrType: typeof(int), + oldType: "integer", + oldNullable: true); + + migrationBuilder.AlterColumn( + name: "CreditEnvelopeId", + table: "Transactions", + type: "integer", + nullable: false, + defaultValue: 0, + oldClrType: typeof(int), + oldType: "integer", + oldNullable: true); + + migrationBuilder.AlterColumn( + name: "CreditAccountId", + table: "Transactions", + type: "integer", + nullable: false, + defaultValue: 0, + oldClrType: typeof(int), + oldType: "integer", + oldNullable: true); + + migrationBuilder.AddForeignKey( + name: "FK_Transactions_Accounts_CreditAccountId", + table: "Transactions", + column: "CreditAccountId", + principalTable: "Accounts", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + + migrationBuilder.AddForeignKey( + name: "FK_Transactions_Accounts_DebitAccountId", + table: "Transactions", + column: "DebitAccountId", + principalTable: "Accounts", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + + migrationBuilder.AddForeignKey( + name: "FK_Transactions_Envelopes_CreditEnvelopeId", + table: "Transactions", + column: "CreditEnvelopeId", + principalTable: "Envelopes", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + + migrationBuilder.AddForeignKey( + name: "FK_Transactions_Envelopes_DebitEnvelopeId", + table: "Transactions", + column: "DebitEnvelopeId", + principalTable: "Envelopes", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + } + } +} diff --git a/AAIntegration.SimmonsBank.API/Migrations/20240122173813_EnvelopeFundingMethodEntity.Designer.cs b/AAIntegration.SimmonsBank.API/Migrations/20240122173813_EnvelopeFundingMethodEntity.Designer.cs new file mode 100644 index 0000000..8a45789 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Migrations/20240122173813_EnvelopeFundingMethodEntity.Designer.cs @@ -0,0 +1,521 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using AAIntegration.SimmonsBank.API.Config; + +#nullable disable + +namespace AAIntegration.SimmonsBank.API.Migrations +{ + [DbContext(typeof(DataContext))] + [Migration("20240122173813_EnvelopeFundingMethodEntity")] + partial class EnvelopeFundingMethodEntity + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "7.0.9") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Balance") + .HasColumnType("numeric"); + + b.Property("CreatedOn") + .HasColumnType("timestamp with time zone"); + + b.Property("CurrencyId") + .HasColumnType("integer"); + + b.Property("ExternalAccountNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("InitialBalance") + .HasColumnType("numeric"); + + b.Property("LastActivity") + .HasColumnType("timestamp with time zone"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("OwnerId") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("CurrencyId"); + + b.HasIndex("OwnerId"); + + b.ToTable("Accounts"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassChange", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AutoclassRuleId") + .HasColumnType("integer"); + + b.Property("Field") + .HasColumnType("integer"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AutoclassRuleId"); + + b.ToTable("AutoclassChanges"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassExpression", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AutoclassRuleId") + .HasColumnType("integer"); + + b.Property("CompareOperator") + .HasColumnType("integer"); + + b.Property("TransactionField") + .HasColumnType("integer"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AutoclassRuleId"); + + b.ToTable("AutoclassExpressions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccountId") + .HasColumnType("integer"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AccountId"); + + b.ToTable("AutoclassRules"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.CurrencyType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Code") + .IsRequired() + .HasColumnType("text"); + + b.Property("DecimalPlaces") + .HasColumnType("integer"); + + b.Property("Symbol") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("CurrencyTypes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Envelope", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccountId") + .HasColumnType("integer"); + + b.Property("Balance") + .HasColumnType("numeric"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("InitialBalance") + .HasColumnType("numeric"); + + b.Property("IsPersistant") + .HasColumnType("boolean"); + + b.Property("LastTriggeredOn") + .HasColumnType("timestamp with time zone"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("Period") + .HasColumnType("interval"); + + b.Property("Priority") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("AccountId"); + + b.ToTable("Envelopes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.EnvelopeFundingMethod", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("EnvelopeId") + .HasColumnType("integer"); + + b.Property("Mode") + .HasColumnType("integer"); + + b.Property("Order") + .HasColumnType("integer"); + + b.Property("PeriodsToLookback") + .HasColumnType("integer"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("EnvelopeId"); + + b.ToTable("EnvelopeFundingMethods"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Operation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AbsoluteValue") + .HasColumnType("numeric"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("HistoricLookbackDepth") + .HasColumnType("integer"); + + b.Property("HistoricPeriod") + .HasColumnType("interval"); + + b.Property("HistoricStatistic") + .HasColumnType("integer"); + + b.Property("Mode") + .HasColumnType("integer"); + + b.Property("Negative") + .HasColumnType("boolean"); + + b.Property("Order") + .HasColumnType("integer"); + + b.Property("Percentage") + .HasColumnType("numeric"); + + b.HasKey("Id"); + + b.ToTable("Operations"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Transaction", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Amount") + .HasColumnType("numeric"); + + b.Property("CreatedOn") + .HasColumnType("timestamp with time zone"); + + b.Property("CreditAccountId") + .HasColumnType("integer"); + + b.Property("CreditEnvelopeId") + .HasColumnType("integer"); + + b.Property("CurrencyTypeId") + .HasColumnType("integer"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("DebitAccountId") + .HasColumnType("integer"); + + b.Property("DebitEnvelopeId") + .HasColumnType("integer"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("ExternalId") + .IsRequired() + .HasColumnType("text"); + + b.Property("IsPending") + .HasColumnType("boolean"); + + b.Property("Notes") + .IsRequired() + .HasColumnType("text"); + + b.Property("OwnerId") + .HasColumnType("integer"); + + b.Property("UpdatedOn") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("CreditAccountId"); + + b.HasIndex("CreditEnvelopeId"); + + b.HasIndex("CurrencyTypeId"); + + b.HasIndex("DebitAccountId"); + + b.HasIndex("DebitEnvelopeId"); + + b.HasIndex("OwnerId"); + + b.ToTable("Transactions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Email") + .IsRequired() + .HasColumnType("text"); + + b.Property("FirstName") + .IsRequired() + .HasColumnType("text"); + + b.Property("LastName") + .IsRequired() + .HasColumnType("text"); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("text"); + + b.Property("Role") + .HasColumnType("integer"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.CurrencyType", "Currency") + .WithMany() + .HasForeignKey("CurrencyId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.User", "Owner") + .WithMany("Accounts") + .HasForeignKey("OwnerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Currency"); + + b.Navigation("Owner"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassChange", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", null) + .WithMany("Changes") + .HasForeignKey("AutoclassRuleId"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassExpression", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", null) + .WithMany("Expressions") + .HasForeignKey("AutoclassRuleId"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "Account") + .WithMany() + .HasForeignKey("AccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Account"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Envelope", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "Account") + .WithMany("Envelopes") + .HasForeignKey("AccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Account"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.EnvelopeFundingMethod", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Envelope", "Envelope") + .WithMany() + .HasForeignKey("EnvelopeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Envelope"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Transaction", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "CreditAccount") + .WithMany() + .HasForeignKey("CreditAccountId"); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Envelope", "CreditEnvelope") + .WithMany() + .HasForeignKey("CreditEnvelopeId"); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.CurrencyType", "CurrencyType") + .WithMany() + .HasForeignKey("CurrencyTypeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "DebitAccount") + .WithMany() + .HasForeignKey("DebitAccountId"); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Envelope", "DebitEnvelope") + .WithMany() + .HasForeignKey("DebitEnvelopeId"); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.User", "Owner") + .WithMany() + .HasForeignKey("OwnerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("CreditAccount"); + + b.Navigation("CreditEnvelope"); + + b.Navigation("CurrencyType"); + + b.Navigation("DebitAccount"); + + b.Navigation("DebitEnvelope"); + + b.Navigation("Owner"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.Navigation("Envelopes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", b => + { + b.Navigation("Changes"); + + b.Navigation("Expressions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.User", b => + { + b.Navigation("Accounts"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/AAIntegration.SimmonsBank.API/Migrations/20240122173813_EnvelopeFundingMethodEntity.cs b/AAIntegration.SimmonsBank.API/Migrations/20240122173813_EnvelopeFundingMethodEntity.cs new file mode 100644 index 0000000..ab0a8c2 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Migrations/20240122173813_EnvelopeFundingMethodEntity.cs @@ -0,0 +1,50 @@ +using Microsoft.EntityFrameworkCore.Migrations; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; + +#nullable disable + +namespace AAIntegration.SimmonsBank.API.Migrations +{ + /// + public partial class EnvelopeFundingMethodEntity : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.CreateTable( + name: "EnvelopeFundingMethods", + columns: table => new + { + Id = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + EnvelopeId = table.Column(type: "integer", nullable: false), + Order = table.Column(type: "integer", nullable: false), + Mode = table.Column(type: "integer", nullable: false), + Value = table.Column(type: "text", nullable: false), + PeriodsToLookback = table.Column(type: "integer", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_EnvelopeFundingMethods", x => x.Id); + table.ForeignKey( + name: "FK_EnvelopeFundingMethods_Envelopes_EnvelopeId", + column: x => x.EnvelopeId, + principalTable: "Envelopes", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateIndex( + name: "IX_EnvelopeFundingMethods_EnvelopeId", + table: "EnvelopeFundingMethods", + column: "EnvelopeId"); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable( + name: "EnvelopeFundingMethods"); + } + } +} diff --git a/AAIntegration.SimmonsBank.API/Migrations/20240123162419_IsEnvelopeFundingTransaction.Designer.cs b/AAIntegration.SimmonsBank.API/Migrations/20240123162419_IsEnvelopeFundingTransaction.Designer.cs new file mode 100644 index 0000000..f3a034a --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Migrations/20240123162419_IsEnvelopeFundingTransaction.Designer.cs @@ -0,0 +1,532 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using AAIntegration.SimmonsBank.API.Config; + +#nullable disable + +namespace AAIntegration.SimmonsBank.API.Migrations +{ + [DbContext(typeof(DataContext))] + [Migration("20240123162419_IsEnvelopeFundingTransaction")] + partial class IsEnvelopeFundingTransaction + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "7.0.9") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Balance") + .HasColumnType("numeric"); + + b.Property("CreatedOn") + .HasColumnType("timestamp with time zone"); + + b.Property("CurrencyId") + .HasColumnType("integer"); + + b.Property("ExternalAccountNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("InitialBalance") + .HasColumnType("numeric"); + + b.Property("LastActivity") + .HasColumnType("timestamp with time zone"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("OwnerId") + .HasColumnType("integer"); + + b.Property("VirtualBalance") + .HasColumnType("numeric"); + + b.HasKey("Id"); + + b.HasIndex("CurrencyId"); + + b.HasIndex("OwnerId"); + + b.ToTable("Accounts"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassChange", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AutoclassRuleId") + .HasColumnType("integer"); + + b.Property("Field") + .HasColumnType("integer"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AutoclassRuleId"); + + b.ToTable("AutoclassChanges"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassExpression", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AutoclassRuleId") + .HasColumnType("integer"); + + b.Property("CompareOperator") + .HasColumnType("integer"); + + b.Property("TransactionField") + .HasColumnType("integer"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AutoclassRuleId"); + + b.ToTable("AutoclassExpressions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccountId") + .HasColumnType("integer"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AccountId"); + + b.ToTable("AutoclassRules"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.CurrencyType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Code") + .IsRequired() + .HasColumnType("text"); + + b.Property("DecimalPlaces") + .HasColumnType("integer"); + + b.Property("Symbol") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("CurrencyTypes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Envelope", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccountId") + .HasColumnType("integer"); + + b.Property("Balance") + .HasColumnType("numeric"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("InitialBalance") + .HasColumnType("numeric"); + + b.Property("IsPersistant") + .HasColumnType("boolean"); + + b.Property("LastTriggeredOn") + .HasColumnType("timestamp with time zone"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("Period") + .HasColumnType("interval"); + + b.Property("Priority") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("AccountId"); + + b.ToTable("Envelopes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.EnvelopeFundingMethod", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("EnvelopeId") + .HasColumnType("integer"); + + b.Property("Mode") + .HasColumnType("integer"); + + b.Property("Order") + .HasColumnType("integer"); + + b.Property("PeriodsToLookback") + .HasColumnType("integer"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("EnvelopeId"); + + b.ToTable("EnvelopeFundingMethods"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Operation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AbsoluteValue") + .HasColumnType("numeric"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("HistoricLookbackDepth") + .HasColumnType("integer"); + + b.Property("HistoricPeriod") + .HasColumnType("interval"); + + b.Property("HistoricStatistic") + .HasColumnType("integer"); + + b.Property("Mode") + .HasColumnType("integer"); + + b.Property("Negative") + .HasColumnType("boolean"); + + b.Property("Order") + .HasColumnType("integer"); + + b.Property("Percentage") + .HasColumnType("numeric"); + + b.HasKey("Id"); + + b.ToTable("Operations"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Transaction", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Amount") + .HasColumnType("numeric"); + + b.Property("CreatedOn") + .HasColumnType("timestamp with time zone"); + + b.Property("CreditAccountId") + .HasColumnType("integer"); + + b.Property("CreditEnvelopeId") + .HasColumnType("integer"); + + b.Property("CurrencyTypeId") + .HasColumnType("integer"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("DebitAccountId") + .HasColumnType("integer"); + + b.Property("DebitEnvelopeId") + .HasColumnType("integer"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("ExternalId") + .IsRequired() + .HasColumnType("text"); + + b.Property("IsEnvelopeFundingTransaction") + .HasColumnType("boolean"); + + b.Property("IsPending") + .HasColumnType("boolean"); + + b.Property("Notes") + .IsRequired() + .HasColumnType("text"); + + b.Property("OwnerId") + .HasColumnType("integer"); + + b.Property("UpdatedOn") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("CreditAccountId"); + + b.HasIndex("CreditEnvelopeId"); + + b.HasIndex("CurrencyTypeId"); + + b.HasIndex("DebitAccountId"); + + b.HasIndex("DebitEnvelopeId"); + + b.HasIndex("OwnerId"); + + b.ToTable("Transactions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Email") + .IsRequired() + .HasColumnType("text"); + + b.Property("FirstName") + .IsRequired() + .HasColumnType("text"); + + b.Property("LastName") + .IsRequired() + .HasColumnType("text"); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("text"); + + b.Property("Role") + .HasColumnType("integer"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.CurrencyType", "Currency") + .WithMany() + .HasForeignKey("CurrencyId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.User", "Owner") + .WithMany("Accounts") + .HasForeignKey("OwnerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Currency"); + + b.Navigation("Owner"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassChange", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", null) + .WithMany("Changes") + .HasForeignKey("AutoclassRuleId"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassExpression", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", null) + .WithMany("Expressions") + .HasForeignKey("AutoclassRuleId"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "Account") + .WithMany() + .HasForeignKey("AccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Account"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Envelope", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "Account") + .WithMany("Envelopes") + .HasForeignKey("AccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Account"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.EnvelopeFundingMethod", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Envelope", "Envelope") + .WithMany("FundingMethods") + .HasForeignKey("EnvelopeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Envelope"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Transaction", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "CreditAccount") + .WithMany() + .HasForeignKey("CreditAccountId"); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Envelope", "CreditEnvelope") + .WithMany() + .HasForeignKey("CreditEnvelopeId"); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.CurrencyType", "CurrencyType") + .WithMany() + .HasForeignKey("CurrencyTypeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "DebitAccount") + .WithMany() + .HasForeignKey("DebitAccountId"); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Envelope", "DebitEnvelope") + .WithMany() + .HasForeignKey("DebitEnvelopeId"); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.User", "Owner") + .WithMany() + .HasForeignKey("OwnerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("CreditAccount"); + + b.Navigation("CreditEnvelope"); + + b.Navigation("CurrencyType"); + + b.Navigation("DebitAccount"); + + b.Navigation("DebitEnvelope"); + + b.Navigation("Owner"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.Navigation("Envelopes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", b => + { + b.Navigation("Changes"); + + b.Navigation("Expressions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Envelope", b => + { + b.Navigation("FundingMethods"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.User", b => + { + b.Navigation("Accounts"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/AAIntegration.SimmonsBank.API/Migrations/20240123162419_IsEnvelopeFundingTransaction.cs b/AAIntegration.SimmonsBank.API/Migrations/20240123162419_IsEnvelopeFundingTransaction.cs new file mode 100644 index 0000000..8c84bde --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Migrations/20240123162419_IsEnvelopeFundingTransaction.cs @@ -0,0 +1,40 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace AAIntegration.SimmonsBank.API.Migrations +{ + /// + public partial class IsEnvelopeFundingTransaction : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.AddColumn( + name: "IsEnvelopeFundingTransaction", + table: "Transactions", + type: "boolean", + nullable: false, + defaultValue: false); + + migrationBuilder.AddColumn( + name: "VirtualBalance", + table: "Accounts", + type: "numeric", + nullable: false, + defaultValue: 0m); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropColumn( + name: "IsEnvelopeFundingTransaction", + table: "Transactions"); + + migrationBuilder.DropColumn( + name: "VirtualBalance", + table: "Accounts"); + } + } +} diff --git a/AAIntegration.SimmonsBank.API/Migrations/20240123181903_removedOwner.Designer.cs b/AAIntegration.SimmonsBank.API/Migrations/20240123181903_removedOwner.Designer.cs new file mode 100644 index 0000000..0a9c3b6 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Migrations/20240123181903_removedOwner.Designer.cs @@ -0,0 +1,515 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using AAIntegration.SimmonsBank.API.Config; + +#nullable disable + +namespace AAIntegration.SimmonsBank.API.Migrations +{ + [DbContext(typeof(DataContext))] + [Migration("20240123181903_removedOwner")] + partial class removedOwner + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "7.0.9") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Balance") + .HasColumnType("numeric"); + + b.Property("CreatedOn") + .HasColumnType("timestamp with time zone"); + + b.Property("CurrencyId") + .HasColumnType("integer"); + + b.Property("ExternalAccountNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("InitialBalance") + .HasColumnType("numeric"); + + b.Property("LastActivity") + .HasColumnType("timestamp with time zone"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("UserId") + .HasColumnType("integer"); + + b.Property("VirtualBalance") + .HasColumnType("numeric"); + + b.HasKey("Id"); + + b.HasIndex("CurrencyId"); + + b.HasIndex("UserId"); + + b.ToTable("Accounts"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassChange", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AutoclassRuleId") + .HasColumnType("integer"); + + b.Property("Field") + .HasColumnType("integer"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AutoclassRuleId"); + + b.ToTable("AutoclassChanges"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassExpression", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AutoclassRuleId") + .HasColumnType("integer"); + + b.Property("CompareOperator") + .HasColumnType("integer"); + + b.Property("TransactionField") + .HasColumnType("integer"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AutoclassRuleId"); + + b.ToTable("AutoclassExpressions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccountId") + .HasColumnType("integer"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AccountId"); + + b.ToTable("AutoclassRules"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.CurrencyType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Code") + .IsRequired() + .HasColumnType("text"); + + b.Property("DecimalPlaces") + .HasColumnType("integer"); + + b.Property("Symbol") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("CurrencyTypes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Envelope", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccountId") + .HasColumnType("integer"); + + b.Property("Balance") + .HasColumnType("numeric"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("InitialBalance") + .HasColumnType("numeric"); + + b.Property("IsPersistant") + .HasColumnType("boolean"); + + b.Property("LastTriggeredOn") + .HasColumnType("timestamp with time zone"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("Period") + .HasColumnType("interval"); + + b.Property("Priority") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("AccountId"); + + b.ToTable("Envelopes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.EnvelopeFundingMethod", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("EnvelopeId") + .HasColumnType("integer"); + + b.Property("Mode") + .HasColumnType("integer"); + + b.Property("Order") + .HasColumnType("integer"); + + b.Property("PeriodsToLookback") + .HasColumnType("integer"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("EnvelopeId"); + + b.ToTable("EnvelopeFundingMethods"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Operation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AbsoluteValue") + .HasColumnType("numeric"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("HistoricLookbackDepth") + .HasColumnType("integer"); + + b.Property("HistoricPeriod") + .HasColumnType("interval"); + + b.Property("HistoricStatistic") + .HasColumnType("integer"); + + b.Property("Mode") + .HasColumnType("integer"); + + b.Property("Negative") + .HasColumnType("boolean"); + + b.Property("Order") + .HasColumnType("integer"); + + b.Property("Percentage") + .HasColumnType("numeric"); + + b.HasKey("Id"); + + b.ToTable("Operations"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Transaction", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Amount") + .HasColumnType("numeric"); + + b.Property("CreatedOn") + .HasColumnType("timestamp with time zone"); + + b.Property("CreditAccountId") + .HasColumnType("integer"); + + b.Property("CreditEnvelopeId") + .HasColumnType("integer"); + + b.Property("CurrencyTypeId") + .HasColumnType("integer"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("DebitAccountId") + .HasColumnType("integer"); + + b.Property("DebitEnvelopeId") + .HasColumnType("integer"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("ExternalId") + .IsRequired() + .HasColumnType("text"); + + b.Property("IsEnvelopeFundingTransaction") + .HasColumnType("boolean"); + + b.Property("IsPending") + .HasColumnType("boolean"); + + b.Property("Notes") + .IsRequired() + .HasColumnType("text"); + + b.Property("UpdatedOn") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("CreditAccountId"); + + b.HasIndex("CreditEnvelopeId"); + + b.HasIndex("CurrencyTypeId"); + + b.HasIndex("DebitAccountId"); + + b.HasIndex("DebitEnvelopeId"); + + b.ToTable("Transactions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Email") + .IsRequired() + .HasColumnType("text"); + + b.Property("FirstName") + .IsRequired() + .HasColumnType("text"); + + b.Property("LastName") + .IsRequired() + .HasColumnType("text"); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("text"); + + b.Property("Role") + .HasColumnType("integer"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.CurrencyType", "Currency") + .WithMany() + .HasForeignKey("CurrencyId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.User", null) + .WithMany("Accounts") + .HasForeignKey("UserId"); + + b.Navigation("Currency"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassChange", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", null) + .WithMany("Changes") + .HasForeignKey("AutoclassRuleId"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassExpression", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", null) + .WithMany("Expressions") + .HasForeignKey("AutoclassRuleId"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "Account") + .WithMany() + .HasForeignKey("AccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Account"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Envelope", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "Account") + .WithMany("Envelopes") + .HasForeignKey("AccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Account"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.EnvelopeFundingMethod", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Envelope", "Envelope") + .WithMany("FundingMethods") + .HasForeignKey("EnvelopeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Envelope"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Transaction", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "CreditAccount") + .WithMany() + .HasForeignKey("CreditAccountId"); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Envelope", "CreditEnvelope") + .WithMany() + .HasForeignKey("CreditEnvelopeId"); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.CurrencyType", "CurrencyType") + .WithMany() + .HasForeignKey("CurrencyTypeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "DebitAccount") + .WithMany() + .HasForeignKey("DebitAccountId"); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Envelope", "DebitEnvelope") + .WithMany() + .HasForeignKey("DebitEnvelopeId"); + + b.Navigation("CreditAccount"); + + b.Navigation("CreditEnvelope"); + + b.Navigation("CurrencyType"); + + b.Navigation("DebitAccount"); + + b.Navigation("DebitEnvelope"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.Navigation("Envelopes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", b => + { + b.Navigation("Changes"); + + b.Navigation("Expressions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Envelope", b => + { + b.Navigation("FundingMethods"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.User", b => + { + b.Navigation("Accounts"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/AAIntegration.SimmonsBank.API/Migrations/20240123181903_removedOwner.cs b/AAIntegration.SimmonsBank.API/Migrations/20240123181903_removedOwner.cs new file mode 100644 index 0000000..eadf199 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Migrations/20240123181903_removedOwner.cs @@ -0,0 +1,112 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace AAIntegration.SimmonsBank.API.Migrations +{ + /// + public partial class removedOwner : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropForeignKey( + name: "FK_Accounts_Users_OwnerId", + table: "Accounts"); + + migrationBuilder.DropForeignKey( + name: "FK_Transactions_Users_OwnerId", + table: "Transactions"); + + migrationBuilder.DropIndex( + name: "IX_Transactions_OwnerId", + table: "Transactions"); + + migrationBuilder.DropIndex( + name: "IX_Accounts_OwnerId", + table: "Accounts"); + + migrationBuilder.DropColumn( + name: "OwnerId", + table: "Transactions"); + + migrationBuilder.DropColumn( + name: "OwnerId", + table: "Accounts"); + + migrationBuilder.AddColumn( + name: "UserId", + table: "Accounts", + type: "integer", + nullable: true); + + migrationBuilder.CreateIndex( + name: "IX_Accounts_UserId", + table: "Accounts", + column: "UserId"); + + migrationBuilder.AddForeignKey( + name: "FK_Accounts_Users_UserId", + table: "Accounts", + column: "UserId", + principalTable: "Users", + principalColumn: "Id"); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropForeignKey( + name: "FK_Accounts_Users_UserId", + table: "Accounts"); + + migrationBuilder.DropIndex( + name: "IX_Accounts_UserId", + table: "Accounts"); + + migrationBuilder.DropColumn( + name: "UserId", + table: "Accounts"); + + migrationBuilder.AddColumn( + name: "OwnerId", + table: "Transactions", + type: "integer", + nullable: false, + defaultValue: 0); + + migrationBuilder.AddColumn( + name: "OwnerId", + table: "Accounts", + type: "integer", + nullable: false, + defaultValue: 0); + + migrationBuilder.CreateIndex( + name: "IX_Transactions_OwnerId", + table: "Transactions", + column: "OwnerId"); + + migrationBuilder.CreateIndex( + name: "IX_Accounts_OwnerId", + table: "Accounts", + column: "OwnerId"); + + migrationBuilder.AddForeignKey( + name: "FK_Accounts_Users_OwnerId", + table: "Accounts", + column: "OwnerId", + principalTable: "Users", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + + migrationBuilder.AddForeignKey( + name: "FK_Transactions_Users_OwnerId", + table: "Transactions", + column: "OwnerId", + principalTable: "Users", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + } + } +} diff --git a/AAIntegration.SimmonsBank.API/Migrations/20240201041006_TransactionTags.Designer.cs b/AAIntegration.SimmonsBank.API/Migrations/20240201041006_TransactionTags.Designer.cs new file mode 100644 index 0000000..d4c4e5c --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Migrations/20240201041006_TransactionTags.Designer.cs @@ -0,0 +1,520 @@ +// +using System; +using System.Collections.Generic; +using AAIntegration.SimmonsBank.API.Config; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; + +#nullable disable + +namespace AAIntegration.SimmonsBank.API.Migrations +{ + [DbContext(typeof(DataContext))] + [Migration("20240201041006_TransactionTags")] + partial class TransactionTags + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "7.0.9") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Balance") + .HasColumnType("numeric"); + + b.Property("CreatedOn") + .HasColumnType("timestamp with time zone"); + + b.Property("CurrencyId") + .HasColumnType("integer"); + + b.Property("ExternalAccountNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("InitialBalance") + .HasColumnType("numeric"); + + b.Property("LastActivity") + .HasColumnType("timestamp with time zone"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("UserId") + .HasColumnType("integer"); + + b.Property("VirtualBalance") + .HasColumnType("numeric"); + + b.HasKey("Id"); + + b.HasIndex("CurrencyId"); + + b.HasIndex("UserId"); + + b.ToTable("Accounts"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassChange", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AutoclassRuleId") + .HasColumnType("integer"); + + b.Property("Field") + .HasColumnType("integer"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AutoclassRuleId"); + + b.ToTable("AutoclassChanges"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassExpression", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AutoclassRuleId") + .HasColumnType("integer"); + + b.Property("CompareOperator") + .HasColumnType("integer"); + + b.Property("TransactionField") + .HasColumnType("integer"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AutoclassRuleId"); + + b.ToTable("AutoclassExpressions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccountId") + .HasColumnType("integer"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AccountId"); + + b.ToTable("AutoclassRules"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.CurrencyType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Code") + .IsRequired() + .HasColumnType("text"); + + b.Property("DecimalPlaces") + .HasColumnType("integer"); + + b.Property("Symbol") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("CurrencyTypes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Envelope", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccountId") + .HasColumnType("integer"); + + b.Property("Balance") + .HasColumnType("numeric"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("InitialBalance") + .HasColumnType("numeric"); + + b.Property("IsPersistant") + .HasColumnType("boolean"); + + b.Property("LastTriggeredOn") + .HasColumnType("timestamp with time zone"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("Period") + .HasColumnType("interval"); + + b.Property("Priority") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("AccountId"); + + b.ToTable("Envelopes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.EnvelopeFundingMethod", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("EnvelopeId") + .HasColumnType("integer"); + + b.Property("Mode") + .HasColumnType("integer"); + + b.Property("Order") + .HasColumnType("integer"); + + b.Property("PeriodsToLookback") + .HasColumnType("integer"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("EnvelopeId"); + + b.ToTable("EnvelopeFundingMethods"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Operation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AbsoluteValue") + .HasColumnType("numeric"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("HistoricLookbackDepth") + .HasColumnType("integer"); + + b.Property("HistoricPeriod") + .HasColumnType("interval"); + + b.Property("HistoricStatistic") + .HasColumnType("integer"); + + b.Property("Mode") + .HasColumnType("integer"); + + b.Property("Negative") + .HasColumnType("boolean"); + + b.Property("Order") + .HasColumnType("integer"); + + b.Property("Percentage") + .HasColumnType("numeric"); + + b.HasKey("Id"); + + b.ToTable("Operations"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Transaction", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Amount") + .HasColumnType("numeric"); + + b.Property("CreatedOn") + .HasColumnType("timestamp with time zone"); + + b.Property("CreditAccountId") + .HasColumnType("integer"); + + b.Property("CreditEnvelopeId") + .HasColumnType("integer"); + + b.Property("CurrencyTypeId") + .HasColumnType("integer"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("DebitAccountId") + .HasColumnType("integer"); + + b.Property("DebitEnvelopeId") + .HasColumnType("integer"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("ExternalId") + .IsRequired() + .HasColumnType("text"); + + b.Property("IsEnvelopeFundingTransaction") + .HasColumnType("boolean"); + + b.Property("IsPending") + .HasColumnType("boolean"); + + b.Property("Notes") + .IsRequired() + .HasColumnType("text"); + + b.Property>("Tags") + .IsRequired() + .HasColumnType("text[]"); + + b.Property("UpdatedOn") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("CreditAccountId"); + + b.HasIndex("CreditEnvelopeId"); + + b.HasIndex("CurrencyTypeId"); + + b.HasIndex("DebitAccountId"); + + b.HasIndex("DebitEnvelopeId"); + + b.ToTable("Transactions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Email") + .IsRequired() + .HasColumnType("text"); + + b.Property("FirstName") + .IsRequired() + .HasColumnType("text"); + + b.Property("LastName") + .IsRequired() + .HasColumnType("text"); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("text"); + + b.Property("Role") + .HasColumnType("integer"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.CurrencyType", "Currency") + .WithMany() + .HasForeignKey("CurrencyId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.User", null) + .WithMany("Accounts") + .HasForeignKey("UserId"); + + b.Navigation("Currency"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassChange", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", null) + .WithMany("Changes") + .HasForeignKey("AutoclassRuleId"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassExpression", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", null) + .WithMany("Expressions") + .HasForeignKey("AutoclassRuleId"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "Account") + .WithMany() + .HasForeignKey("AccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Account"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Envelope", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "Account") + .WithMany("Envelopes") + .HasForeignKey("AccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Account"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.EnvelopeFundingMethod", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Envelope", "Envelope") + .WithMany("FundingMethods") + .HasForeignKey("EnvelopeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Envelope"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Transaction", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "CreditAccount") + .WithMany() + .HasForeignKey("CreditAccountId"); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Envelope", "CreditEnvelope") + .WithMany() + .HasForeignKey("CreditEnvelopeId"); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.CurrencyType", "CurrencyType") + .WithMany() + .HasForeignKey("CurrencyTypeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "DebitAccount") + .WithMany() + .HasForeignKey("DebitAccountId"); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Envelope", "DebitEnvelope") + .WithMany() + .HasForeignKey("DebitEnvelopeId"); + + b.Navigation("CreditAccount"); + + b.Navigation("CreditEnvelope"); + + b.Navigation("CurrencyType"); + + b.Navigation("DebitAccount"); + + b.Navigation("DebitEnvelope"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.Navigation("Envelopes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", b => + { + b.Navigation("Changes"); + + b.Navigation("Expressions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Envelope", b => + { + b.Navigation("FundingMethods"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.User", b => + { + b.Navigation("Accounts"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/AAIntegration.SimmonsBank.API/Migrations/20240201041006_TransactionTags.cs b/AAIntegration.SimmonsBank.API/Migrations/20240201041006_TransactionTags.cs new file mode 100644 index 0000000..c735b90 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Migrations/20240201041006_TransactionTags.cs @@ -0,0 +1,29 @@ +using System.Collections.Generic; +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace AAIntegration.SimmonsBank.API.Migrations +{ + /// + public partial class TransactionTags : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.AddColumn>( + name: "Tags", + table: "Transactions", + type: "text[]", + nullable: true); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropColumn( + name: "Tags", + table: "Transactions"); + } + } +} diff --git a/AAIntegration.SimmonsBank.API/Migrations/20240224133139_UserApiKey.Designer.cs b/AAIntegration.SimmonsBank.API/Migrations/20240224133139_UserApiKey.Designer.cs new file mode 100644 index 0000000..b4c4030 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Migrations/20240224133139_UserApiKey.Designer.cs @@ -0,0 +1,522 @@ +// +using System; +using System.Collections.Generic; +using AAIntegration.SimmonsBank.API.Config; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; + +#nullable disable + +namespace AAIntegration.SimmonsBank.API.Migrations +{ + [DbContext(typeof(DataContext))] + [Migration("20240224133139_UserApiKey")] + partial class UserApiKey + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "7.0.9") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Balance") + .HasColumnType("numeric"); + + b.Property("CreatedOn") + .HasColumnType("timestamp with time zone"); + + b.Property("CurrencyId") + .HasColumnType("integer"); + + b.Property("ExternalAccountNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("InitialBalance") + .HasColumnType("numeric"); + + b.Property("LastActivity") + .HasColumnType("timestamp with time zone"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("UserId") + .HasColumnType("integer"); + + b.Property("VirtualBalance") + .HasColumnType("numeric"); + + b.HasKey("Id"); + + b.HasIndex("CurrencyId"); + + b.HasIndex("UserId"); + + b.ToTable("Accounts"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassChange", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AutoclassRuleId") + .HasColumnType("integer"); + + b.Property("Field") + .HasColumnType("integer"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AutoclassRuleId"); + + b.ToTable("AutoclassChanges"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassExpression", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AutoclassRuleId") + .HasColumnType("integer"); + + b.Property("CompareOperator") + .HasColumnType("integer"); + + b.Property("TransactionField") + .HasColumnType("integer"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AutoclassRuleId"); + + b.ToTable("AutoclassExpressions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccountId") + .HasColumnType("integer"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AccountId"); + + b.ToTable("AutoclassRules"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.CurrencyType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Code") + .IsRequired() + .HasColumnType("text"); + + b.Property("DecimalPlaces") + .HasColumnType("integer"); + + b.Property("Symbol") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("CurrencyTypes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Envelope", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccountId") + .HasColumnType("integer"); + + b.Property("Balance") + .HasColumnType("numeric"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("InitialBalance") + .HasColumnType("numeric"); + + b.Property("IsPersistant") + .HasColumnType("boolean"); + + b.Property("LastTriggeredOn") + .HasColumnType("timestamp with time zone"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("Period") + .HasColumnType("interval"); + + b.Property("Priority") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("AccountId"); + + b.ToTable("Envelopes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.EnvelopeFundingMethod", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("EnvelopeId") + .HasColumnType("integer"); + + b.Property("Mode") + .HasColumnType("integer"); + + b.Property("Order") + .HasColumnType("integer"); + + b.Property("PeriodsToLookback") + .HasColumnType("integer"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("EnvelopeId"); + + b.ToTable("EnvelopeFundingMethods"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Operation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AbsoluteValue") + .HasColumnType("numeric"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("HistoricLookbackDepth") + .HasColumnType("integer"); + + b.Property("HistoricPeriod") + .HasColumnType("interval"); + + b.Property("HistoricStatistic") + .HasColumnType("integer"); + + b.Property("Mode") + .HasColumnType("integer"); + + b.Property("Negative") + .HasColumnType("boolean"); + + b.Property("Order") + .HasColumnType("integer"); + + b.Property("Percentage") + .HasColumnType("numeric"); + + b.HasKey("Id"); + + b.ToTable("Operations"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Transaction", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Amount") + .HasColumnType("numeric"); + + b.Property("CreatedOn") + .HasColumnType("timestamp with time zone"); + + b.Property("CreditAccountId") + .HasColumnType("integer"); + + b.Property("CreditEnvelopeId") + .HasColumnType("integer"); + + b.Property("CurrencyTypeId") + .HasColumnType("integer"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("DebitAccountId") + .HasColumnType("integer"); + + b.Property("DebitEnvelopeId") + .HasColumnType("integer"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("ExternalId") + .IsRequired() + .HasColumnType("text"); + + b.Property("IsEnvelopeFundingTransaction") + .HasColumnType("boolean"); + + b.Property("IsPending") + .HasColumnType("boolean"); + + b.Property("Notes") + .IsRequired() + .HasColumnType("text"); + + b.Property>("Tags") + .HasColumnType("text[]"); + + b.Property("UpdatedOn") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("CreditAccountId"); + + b.HasIndex("CreditEnvelopeId"); + + b.HasIndex("CurrencyTypeId"); + + b.HasIndex("DebitAccountId"); + + b.HasIndex("DebitEnvelopeId"); + + b.ToTable("Transactions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ApiKey") + .HasColumnType("text"); + + b.Property("Email") + .IsRequired() + .HasColumnType("text"); + + b.Property("FirstName") + .IsRequired() + .HasColumnType("text"); + + b.Property("LastName") + .IsRequired() + .HasColumnType("text"); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("text"); + + b.Property("Role") + .HasColumnType("integer"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.CurrencyType", "Currency") + .WithMany() + .HasForeignKey("CurrencyId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.User", null) + .WithMany("Accounts") + .HasForeignKey("UserId"); + + b.Navigation("Currency"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassChange", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", null) + .WithMany("Changes") + .HasForeignKey("AutoclassRuleId"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassExpression", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", null) + .WithMany("Expressions") + .HasForeignKey("AutoclassRuleId"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "Account") + .WithMany() + .HasForeignKey("AccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Account"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Envelope", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "Account") + .WithMany("Envelopes") + .HasForeignKey("AccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Account"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.EnvelopeFundingMethod", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Envelope", "Envelope") + .WithMany("FundingMethods") + .HasForeignKey("EnvelopeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Envelope"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Transaction", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "CreditAccount") + .WithMany() + .HasForeignKey("CreditAccountId"); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Envelope", "CreditEnvelope") + .WithMany() + .HasForeignKey("CreditEnvelopeId"); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.CurrencyType", "CurrencyType") + .WithMany() + .HasForeignKey("CurrencyTypeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "DebitAccount") + .WithMany() + .HasForeignKey("DebitAccountId"); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Envelope", "DebitEnvelope") + .WithMany() + .HasForeignKey("DebitEnvelopeId"); + + b.Navigation("CreditAccount"); + + b.Navigation("CreditEnvelope"); + + b.Navigation("CurrencyType"); + + b.Navigation("DebitAccount"); + + b.Navigation("DebitEnvelope"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.Navigation("Envelopes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", b => + { + b.Navigation("Changes"); + + b.Navigation("Expressions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Envelope", b => + { + b.Navigation("FundingMethods"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.User", b => + { + b.Navigation("Accounts"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/AAIntegration.SimmonsBank.API/Migrations/20240224133139_UserApiKey.cs b/AAIntegration.SimmonsBank.API/Migrations/20240224133139_UserApiKey.cs new file mode 100644 index 0000000..ce58ac2 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Migrations/20240224133139_UserApiKey.cs @@ -0,0 +1,46 @@ +using System.Collections.Generic; +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace AAIntegration.SimmonsBank.API.Migrations +{ + /// + public partial class UserApiKey : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.AddColumn( + name: "ApiKey", + table: "Users", + type: "text", + nullable: true); + + migrationBuilder.AlterColumn>( + name: "Tags", + table: "Transactions", + type: "text[]", + nullable: true, + oldClrType: typeof(List), + oldType: "text[]"); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropColumn( + name: "ApiKey", + table: "Users"); + + migrationBuilder.AlterColumn>( + name: "Tags", + table: "Transactions", + type: "text[]", + nullable: false, + oldClrType: typeof(List), + oldType: "text[]", + oldNullable: true); + } + } +} diff --git a/AAIntegration.SimmonsBank.API/Migrations/DataContextModelSnapshot.cs b/AAIntegration.SimmonsBank.API/Migrations/DataContextModelSnapshot.cs new file mode 100644 index 0000000..3139328 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Migrations/DataContextModelSnapshot.cs @@ -0,0 +1,519 @@ +// +using System; +using System.Collections.Generic; +using AAIntegration.SimmonsBank.API.Config; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; + +#nullable disable + +namespace AAIntegration.SimmonsBank.API.Migrations +{ + [DbContext(typeof(DataContext))] + partial class DataContextModelSnapshot : ModelSnapshot + { + protected override void BuildModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "7.0.9") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Balance") + .HasColumnType("numeric"); + + b.Property("CreatedOn") + .HasColumnType("timestamp with time zone"); + + b.Property("CurrencyId") + .HasColumnType("integer"); + + b.Property("ExternalAccountNumber") + .IsRequired() + .HasColumnType("text"); + + b.Property("InitialBalance") + .HasColumnType("numeric"); + + b.Property("LastActivity") + .HasColumnType("timestamp with time zone"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("UserId") + .HasColumnType("integer"); + + b.Property("VirtualBalance") + .HasColumnType("numeric"); + + b.HasKey("Id"); + + b.HasIndex("CurrencyId"); + + b.HasIndex("UserId"); + + b.ToTable("Accounts"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassChange", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AutoclassRuleId") + .HasColumnType("integer"); + + b.Property("Field") + .HasColumnType("integer"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AutoclassRuleId"); + + b.ToTable("AutoclassChanges"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassExpression", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AutoclassRuleId") + .HasColumnType("integer"); + + b.Property("CompareOperator") + .HasColumnType("integer"); + + b.Property("TransactionField") + .HasColumnType("integer"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AutoclassRuleId"); + + b.ToTable("AutoclassExpressions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccountId") + .HasColumnType("integer"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AccountId"); + + b.ToTable("AutoclassRules"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.CurrencyType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Code") + .IsRequired() + .HasColumnType("text"); + + b.Property("DecimalPlaces") + .HasColumnType("integer"); + + b.Property("Symbol") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("CurrencyTypes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Envelope", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AccountId") + .HasColumnType("integer"); + + b.Property("Balance") + .HasColumnType("numeric"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("InitialBalance") + .HasColumnType("numeric"); + + b.Property("IsPersistant") + .HasColumnType("boolean"); + + b.Property("LastTriggeredOn") + .HasColumnType("timestamp with time zone"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("Period") + .HasColumnType("interval"); + + b.Property("Priority") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("AccountId"); + + b.ToTable("Envelopes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.EnvelopeFundingMethod", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("EnvelopeId") + .HasColumnType("integer"); + + b.Property("Mode") + .HasColumnType("integer"); + + b.Property("Order") + .HasColumnType("integer"); + + b.Property("PeriodsToLookback") + .HasColumnType("integer"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("EnvelopeId"); + + b.ToTable("EnvelopeFundingMethods"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Operation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AbsoluteValue") + .HasColumnType("numeric"); + + b.Property("Enabled") + .HasColumnType("boolean"); + + b.Property("HistoricLookbackDepth") + .HasColumnType("integer"); + + b.Property("HistoricPeriod") + .HasColumnType("interval"); + + b.Property("HistoricStatistic") + .HasColumnType("integer"); + + b.Property("Mode") + .HasColumnType("integer"); + + b.Property("Negative") + .HasColumnType("boolean"); + + b.Property("Order") + .HasColumnType("integer"); + + b.Property("Percentage") + .HasColumnType("numeric"); + + b.HasKey("Id"); + + b.ToTable("Operations"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Transaction", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Amount") + .HasColumnType("numeric"); + + b.Property("CreatedOn") + .HasColumnType("timestamp with time zone"); + + b.Property("CreditAccountId") + .HasColumnType("integer"); + + b.Property("CreditEnvelopeId") + .HasColumnType("integer"); + + b.Property("CurrencyTypeId") + .HasColumnType("integer"); + + b.Property("Date") + .HasColumnType("timestamp with time zone"); + + b.Property("DebitAccountId") + .HasColumnType("integer"); + + b.Property("DebitEnvelopeId") + .HasColumnType("integer"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("ExternalId") + .IsRequired() + .HasColumnType("text"); + + b.Property("IsEnvelopeFundingTransaction") + .HasColumnType("boolean"); + + b.Property("IsPending") + .HasColumnType("boolean"); + + b.Property("Notes") + .IsRequired() + .HasColumnType("text"); + + b.Property>("Tags") + .HasColumnType("text[]"); + + b.Property("UpdatedOn") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("CreditAccountId"); + + b.HasIndex("CreditEnvelopeId"); + + b.HasIndex("CurrencyTypeId"); + + b.HasIndex("DebitAccountId"); + + b.HasIndex("DebitEnvelopeId"); + + b.ToTable("Transactions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("ApiKey") + .HasColumnType("text"); + + b.Property("Email") + .IsRequired() + .HasColumnType("text"); + + b.Property("FirstName") + .IsRequired() + .HasColumnType("text"); + + b.Property("LastName") + .IsRequired() + .HasColumnType("text"); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("text"); + + b.Property("Role") + .HasColumnType("integer"); + + b.Property("Username") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.CurrencyType", "Currency") + .WithMany() + .HasForeignKey("CurrencyId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.User", null) + .WithMany("Accounts") + .HasForeignKey("UserId"); + + b.Navigation("Currency"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassChange", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", null) + .WithMany("Changes") + .HasForeignKey("AutoclassRuleId"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassExpression", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", null) + .WithMany("Expressions") + .HasForeignKey("AutoclassRuleId"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "Account") + .WithMany() + .HasForeignKey("AccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Account"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Envelope", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "Account") + .WithMany("Envelopes") + .HasForeignKey("AccountId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Account"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.EnvelopeFundingMethod", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Envelope", "Envelope") + .WithMany("FundingMethods") + .HasForeignKey("EnvelopeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Envelope"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Transaction", b => + { + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "CreditAccount") + .WithMany() + .HasForeignKey("CreditAccountId"); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Envelope", "CreditEnvelope") + .WithMany() + .HasForeignKey("CreditEnvelopeId"); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.CurrencyType", "CurrencyType") + .WithMany() + .HasForeignKey("CurrencyTypeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Account", "DebitAccount") + .WithMany() + .HasForeignKey("DebitAccountId"); + + b.HasOne("AAIntegration.SimmonsBank.API.Entities.Envelope", "DebitEnvelope") + .WithMany() + .HasForeignKey("DebitEnvelopeId"); + + b.Navigation("CreditAccount"); + + b.Navigation("CreditEnvelope"); + + b.Navigation("CurrencyType"); + + b.Navigation("DebitAccount"); + + b.Navigation("DebitEnvelope"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Account", b => + { + b.Navigation("Envelopes"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.AutoclassRule", b => + { + b.Navigation("Changes"); + + b.Navigation("Expressions"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.Envelope", b => + { + b.Navigation("FundingMethods"); + }); + + modelBuilder.Entity("AAIntegration.SimmonsBank.API.Entities.User", b => + { + b.Navigation("Accounts"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/AAIntegration.SimmonsBank.API/Models/Accounts/AccountCreateRequest.cs b/AAIntegration.SimmonsBank.API/Models/Accounts/AccountCreateRequest.cs new file mode 100644 index 0000000..71f4285 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Models/Accounts/AccountCreateRequest.cs @@ -0,0 +1,13 @@ +namespace AAIntegration.SimmonsBank.API.Models.Accounts; + +using System.ComponentModel.DataAnnotations; +using System.Runtime.InteropServices; +using AAIntegration.SimmonsBank.API.Entities; + +public class AccountCreateRequest +{ + public string Name { get; set; } + public string InitialBalance { get; set; } + public int Currency { get; set; } + public string ExternalAccountNumber { get; set; } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Models/Accounts/AccountDTO.cs b/AAIntegration.SimmonsBank.API/Models/Accounts/AccountDTO.cs new file mode 100644 index 0000000..6c3f87c --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Models/Accounts/AccountDTO.cs @@ -0,0 +1,20 @@ +using System.Collections; +using System.Collections.Generic; +using System.Text.Json.Serialization; +using AAIntegration.SimmonsBank.API.Entities; + +namespace AAIntegration.SimmonsBank.API.Models.Accounts; + +public class AccountDTO +{ + public int Id { get; set; } + public string Name { get; set; } + public DateTime LastActivity { get; set; } + public decimal VirtualBalance { get; set; } + public decimal Balance { get; set; } + public DateTime CreatedOn { get; set; } + public decimal InitialBalance { get; set; } + public int CurrencyId { get; set; } + public string ExternalAccountNumber { get; set; } + public List Envelopes { get; set; } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Models/Accounts/AccountHistoricalDTO.cs b/AAIntegration.SimmonsBank.API/Models/Accounts/AccountHistoricalDTO.cs new file mode 100644 index 0000000..376623f --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Models/Accounts/AccountHistoricalDTO.cs @@ -0,0 +1,16 @@ +using System; +using System.Collections.Generic; +using System.Text.Json.Serialization; +using AAIntegration.SimmonsBank.API.Entities; + +namespace AAIntegration.SimmonsBank.API.Models.Accounts; + +public class AccountHistoricalDTO +{ + //public int Id { get; set; } + public int AccountId { get; set; } + public int LookBack { get; set; } + public Statistic? Credit { get; set; } = null; + public Statistic? Debit { get; set; } = null; + public Statistic? Income { get; set; } = null; +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Models/Accounts/AccountUpdateRequest.cs b/AAIntegration.SimmonsBank.API/Models/Accounts/AccountUpdateRequest.cs new file mode 100644 index 0000000..5c07a8c --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Models/Accounts/AccountUpdateRequest.cs @@ -0,0 +1,13 @@ +namespace AAIntegration.SimmonsBank.API.Models.Accounts; + +using System.ComponentModel.DataAnnotations; +using AAIntegration.SimmonsBank.API.Entities; + +public class AccountUpdateRequest +{ + public string Name { get; set; } = null; + public int? Owner { get; set; } = null; + public string InitialBalance { get; set; } = null; + public int? Currency { get; set; } = null; + public string ExternalAccountNumber { get; set; } = null; +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Models/Autoclass/AutoclassDTO.cs b/AAIntegration.SimmonsBank.API/Models/Autoclass/AutoclassDTO.cs new file mode 100644 index 0000000..15469df --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Models/Autoclass/AutoclassDTO.cs @@ -0,0 +1,29 @@ +using System.Collections; +using System.Collections.Generic; +using System.Text.Json.Serialization; +using AAIntegration.SimmonsBank.API.Entities; + +namespace AAIntegration.SimmonsBank.API.Models.Autoclass; + +public class AutoclassRuleDTO +{ + public int Id { get; set; } + public string Name { get; set; } + public int AccountId { get; set; } + public IEnumerable Expressions { get; set; } + public IEnumerable Changes { get; set; } + public bool Enabled { get; set; } +} + +public class AutoclassExpressionDTO +{ + public AutoclassTransactionField TransactionField { get; set; } + public AutoclassCompareOperator CompareOperator { get; set; } + public string Value { get; set; } +} + +public class AutoclassChangeDTO +{ + public AutoclassTransactionField Field { get; set; } + public string Value { get; set; } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Models/Autoclass/AutoclassMetaDTO.cs b/AAIntegration.SimmonsBank.API/Models/Autoclass/AutoclassMetaDTO.cs new file mode 100644 index 0000000..9cbe3d0 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Models/Autoclass/AutoclassMetaDTO.cs @@ -0,0 +1,155 @@ +using System.Collections; +using System.Collections.Generic; +using System.Text.Json.Serialization; +using AAIntegration.SimmonsBank.API.Entities; + +namespace AAIntegration.SimmonsBank.API.Models.Autoclass; + +public class AutoclassFieldMetaDTO +{ + public AutoclassFieldMetaDTO(AutoclassTransactionField name) + { + Name = name; + } + + public AutoclassTransactionField Name { get; set; } + public string Type { + get + { + switch (this.Name) + { + case AutoclassTransactionField.AMOUNT: + return "DECIMAL"; + case AutoclassTransactionField.DATE: + return "DATETIME"; + case AutoclassTransactionField.DESCRIPTION: + case AutoclassTransactionField.EXTERNAL_ID: + return "STRING"; + case AutoclassTransactionField.IS_PENDING: + return "BOOLEAN"; + case AutoclassTransactionField.CURRENCY_TYPE: + return "CURRENCYTYPE"; + case AutoclassTransactionField.CREDIT_ACCOUNT: + case AutoclassTransactionField.DEBIT_ACCOUNT: + return "ACCOUNT"; + case AutoclassTransactionField.CREDIT_ENVELOPE: + case AutoclassTransactionField.DEBIT_ENVELOPE: + return "ENVELOPE"; + case AutoclassTransactionField.TAGS: + return "STRING_ARRAY"; + default: + return "ERROR"; + } + } + } +} + + +public class AutoclassTypeMetaDTO +{ + public AutoclassType Type { get; set; } + public List Operators { get; set; } + + public AutoclassTypeMetaDTO(AutoclassType type) + { + Type = type; + + switch(type) + { + case AutoclassType.DATETIME: + Operators = new List() { + new AutoclassOperatorMetaDTO(AutoclassCompareOperator.EQUAL), + new AutoclassOperatorMetaDTO(AutoclassCompareOperator.NOT_EQUAL), + new AutoclassOperatorMetaDTO(AutoclassCompareOperator.GREATER_THAN), + new AutoclassOperatorMetaDTO(AutoclassCompareOperator.GREATER_THAN_OR_EQUAL), + new AutoclassOperatorMetaDTO(AutoclassCompareOperator.LESS_THAN), + new AutoclassOperatorMetaDTO(AutoclassCompareOperator.LESS_THAN_OR_EQUAL), + }; + break; + case AutoclassType.STRING: + Operators = new List() { + new AutoclassOperatorMetaDTO(AutoclassCompareOperator.EQUAL), + new AutoclassOperatorMetaDTO(AutoclassCompareOperator.NOT_EQUAL), + new AutoclassOperatorMetaDTO(AutoclassCompareOperator.CONTAINS), + new AutoclassOperatorMetaDTO(AutoclassCompareOperator.CONTAINS_INSENSITIVE), + }; + break; + case AutoclassType.DECIMAL: + Operators = new List() { + new AutoclassOperatorMetaDTO(AutoclassCompareOperator.EQUAL), + new AutoclassOperatorMetaDTO(AutoclassCompareOperator.NOT_EQUAL), + new AutoclassOperatorMetaDTO(AutoclassCompareOperator.GREATER_THAN), + new AutoclassOperatorMetaDTO(AutoclassCompareOperator.GREATER_THAN_OR_EQUAL), + new AutoclassOperatorMetaDTO(AutoclassCompareOperator.LESS_THAN), + new AutoclassOperatorMetaDTO(AutoclassCompareOperator.LESS_THAN_OR_EQUAL), + }; + break; + case AutoclassType.BOOLEAN: + Operators = new List() { + new AutoclassOperatorMetaDTO(AutoclassCompareOperator.EQUAL), + new AutoclassOperatorMetaDTO(AutoclassCompareOperator.NOT_EQUAL), + }; + break; + case AutoclassType.ACCOUNT: + Operators = new List() { + new AutoclassOperatorMetaDTO(AutoclassCompareOperator.EQUAL), + new AutoclassOperatorMetaDTO(AutoclassCompareOperator.NOT_EQUAL), + }; + break; + case AutoclassType.ENVELOPE: + Operators = new List() { + new AutoclassOperatorMetaDTO(AutoclassCompareOperator.EQUAL), + new AutoclassOperatorMetaDTO(AutoclassCompareOperator.NOT_EQUAL), + }; + break; + case AutoclassType.CURRENCYTYPE: + Operators = new List() { + new AutoclassOperatorMetaDTO(AutoclassCompareOperator.EQUAL), + new AutoclassOperatorMetaDTO(AutoclassCompareOperator.NOT_EQUAL), + }; + break; + case AutoclassType.STRING_ARRAY: + Operators = new List() { + new AutoclassOperatorMetaDTO(AutoclassCompareOperator.CONTAINS), + new AutoclassOperatorMetaDTO(AutoclassCompareOperator.CONTAINS_INSENSITIVE), + }; + break; + } + } +} + +public class AutoclassOperatorMetaDTO +{ + public AutoclassOperatorMetaDTO(AutoclassCompareOperator op) + { + Operator = op; + } + + public AutoclassCompareOperator Operator { get; set; } + public string DisplayName { + get + { + switch (this.Operator) + { + case AutoclassCompareOperator.EQUAL: + return "="; + case AutoclassCompareOperator.NOT_EQUAL: + return "!="; + case AutoclassCompareOperator.GREATER_THAN: + return ">"; + case AutoclassCompareOperator.GREATER_THAN_OR_EQUAL: + return ">="; + case AutoclassCompareOperator.LESS_THAN: + return "<"; + case AutoclassCompareOperator.LESS_THAN_OR_EQUAL: + return "<="; + case AutoclassCompareOperator.CONTAINS: + return "Contains"; + case AutoclassCompareOperator.CONTAINS_INSENSITIVE: + return "Contains (case insensitive)"; + default: + return "ERROR"; + } + } + } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Models/Autoclass/AutoclassRuleCreateRequest.cs b/AAIntegration.SimmonsBank.API/Models/Autoclass/AutoclassRuleCreateRequest.cs new file mode 100644 index 0000000..7f4b74a --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Models/Autoclass/AutoclassRuleCreateRequest.cs @@ -0,0 +1,29 @@ +namespace AAIntegration.SimmonsBank.API.Models.Autoclass; + +using System.ComponentModel.DataAnnotations; +using System.Runtime.InteropServices; +using AAIntegration.SimmonsBank.API.Entities; +using System.Collections.Generic; + +public class AutoclassRuleCreateRequest +{ + public string Name { get; set; } + public int AccountId { get; set; } + public IEnumerable Expressions { get; set; } + public IEnumerable Changes { get; set; } + public bool Enabled { get; set; } + public bool? TriggerOnCreate { get; set; } = null; +} + +public class AutoclassExpressionCreateRequest +{ + public AutoclassTransactionField TransactionField { get; set; } + public AutoclassCompareOperator CompareOperator { get; set; } + public string Value { get; set; } +} + +public class AutoclassChangeCreateRequest +{ + public AutoclassTransactionField Field { get; set; } + public string Value { get; set; } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Models/Autoclass/AutoclassRuleUpdateRequest.cs b/AAIntegration.SimmonsBank.API/Models/Autoclass/AutoclassRuleUpdateRequest.cs new file mode 100644 index 0000000..5a7306b --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Models/Autoclass/AutoclassRuleUpdateRequest.cs @@ -0,0 +1,16 @@ +namespace AAIntegration.SimmonsBank.API.Models.Autoclass; + +using System.ComponentModel.DataAnnotations; +using System.Runtime.InteropServices; +using AAIntegration.SimmonsBank.API.Entities; +using System.Collections.Generic; + +public class AutoclassRuleUpdateRequest +{ + public string Name { get; set; } = null; + public int? AccountId { get; set; } = null; + public IEnumerable Expressions { get; set; } = null; + public IEnumerable Changes { get; set; } = null; + public bool? Enabled { get; set; } = null; + public bool? TriggerOnUpdate { get; set; } = null; +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Models/CurrencyType/CurrencyTypeCreateRequest.cs b/AAIntegration.SimmonsBank.API/Models/CurrencyType/CurrencyTypeCreateRequest.cs new file mode 100644 index 0000000..2eeb8e1 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Models/CurrencyType/CurrencyTypeCreateRequest.cs @@ -0,0 +1,12 @@ +namespace AAIntegration.SimmonsBank.API.Models.CurrencyType; + +using System.ComponentModel.DataAnnotations; +using System.Runtime.InteropServices; +using AAIntegration.SimmonsBank.API.Entities; + +public class CurrencyTypeCreateRequest +{ + public string Code { get; set; } // USD + public string Symbol { get; set; } // $ + public int DecimalPlaces { get; set; } // 2 +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Models/Envelopes/EnvelopeCreateRequest.cs b/AAIntegration.SimmonsBank.API/Models/Envelopes/EnvelopeCreateRequest.cs new file mode 100644 index 0000000..454b0bd --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Models/Envelopes/EnvelopeCreateRequest.cs @@ -0,0 +1,26 @@ +namespace AAIntegration.SimmonsBank.API.Models.Envelopes; + +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Runtime.InteropServices; +using AAIntegration.SimmonsBank.API.Entities; + +public class EnvelopeCreateRequest +{ + public string Name { get; set; } + public int Account { get; set; } + public string InitialBalance { get; set; } + public bool Enabled { get; set; } + public bool IsPersistant { get; set; } + public int Priority { get; set; } + public string ExternalAccountNumber { get; set; } + public IEnumerable FundingMethods { get; set; } +} + +public class EnvelopeFundingMethodCreateRequest +{ + public int Order { get; set; } + public EnvelopeFundingMethodModes Mode { get; set; } + public string Value { get; set; } + public int PeriodsToLookback { get; set; } = 0; +} diff --git a/AAIntegration.SimmonsBank.API/Models/Envelopes/EnvelopeDTO.cs b/AAIntegration.SimmonsBank.API/Models/Envelopes/EnvelopeDTO.cs new file mode 100644 index 0000000..c33dc0b --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Models/Envelopes/EnvelopeDTO.cs @@ -0,0 +1,29 @@ +using System.Collections; +using System.Collections.Generic; +using System.Text.Json.Serialization; +using AAIntegration.SimmonsBank.API.Entities; + +namespace AAIntegration.SimmonsBank.API.Models.Envelopes; + +public class EnvelopeDTO +{ + public int Id { get; set; } + public string Name { get; set; } + public int AccountId { get; set; } + public bool Enabled { get; set; } + public TimeSpan Period { get; set; } + public bool IsPersistant { get; set; } + public int Priority { get; set; } + public decimal Balance { get; set; } + public decimal InitialBalance { get; set; } + public DateTime? LastTriggeredOn { get; set; } + public IEnumerable FundingMethods { get; set; } +} + +public class EnvelopeFundingMethodDTO +{ + public int Order { get; set; } + public EnvelopeFundingMethodModes Mode { get; set; } + public string Value { get; set; } + public int PeriodsToLookback { get; set; } = 0; +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Models/Envelopes/EnvelopeHistoricalDTO.cs b/AAIntegration.SimmonsBank.API/Models/Envelopes/EnvelopeHistoricalDTO.cs new file mode 100644 index 0000000..6ee289a --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Models/Envelopes/EnvelopeHistoricalDTO.cs @@ -0,0 +1,16 @@ +using System; +using System.Collections.Generic; +using System.Text.Json.Serialization; +using AAIntegration.SimmonsBank.API.Entities; + +namespace AAIntegration.SimmonsBank.API.Models.Envelopes; + +public class EnvelopeHistoricalDTO +{ + //public int Id { get; set; } + public int EnvelopeId { get; set; } + public int LookBack { get; set; } + public decimal? EnvelopeFunding { get; set; } = null; + public Statistic? Credit { get; set; } = null; + public Statistic? Debit { get; set; } = null; +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Models/Envelopes/EnvelopeUpdateRequest.cs b/AAIntegration.SimmonsBank.API/Models/Envelopes/EnvelopeUpdateRequest.cs new file mode 100644 index 0000000..421ba00 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Models/Envelopes/EnvelopeUpdateRequest.cs @@ -0,0 +1,19 @@ +namespace AAIntegration.SimmonsBank.API.Models.Envelopes; + +using System; +using System.Collections; +using System.ComponentModel.DataAnnotations; +using AAIntegration.SimmonsBank.API.Entities; + +public class EnvelopeUpdateRequest +{ + public string Name { get; set; } = null; + public int? Account { get; set; } = null; + public bool? Enabled { get; set; } = null; + public TimeSpan? Period { get; set; } = null; + public bool? IsPersistant { get; set; } = null; + public int? Priority { get; set; } = null; + public string? InitialBalance { get; set; } = null; + public DateTime? LastTriggeredOn { get; set; } = null; + public IEnumerable FundingMethods { get; set; } = null; +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Models/Transactions/TransactionCreate.cs b/AAIntegration.SimmonsBank.API/Models/Transactions/TransactionCreate.cs new file mode 100644 index 0000000..5428363 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Models/Transactions/TransactionCreate.cs @@ -0,0 +1,47 @@ +using System.Collections.Generic; +using System.Runtime; +using AAIntegration.SimmonsBank.API.Services; + +namespace AAIntegration.SimmonsBank.API.Models.Transactions; + +public class TransactionCreate +{ + public DateTime Date { get; set; } + public string ExternalId { get; set; } + public string Description { get; set; } + public int? DebitAccount { get; set; } + public int? CreditAccount { get; set; } + public int? DebitEnvelope { get; set; } + public int? CreditEnvelope { get; set; } + public bool? IsEnvelopeFundingTransaction { get; set; } = null; + public decimal Amount { get; set; } + public int CurrencyType { get; set; } + public string Notes { get; set; } + public bool IsPending { get; set; } + public List? Tags { get; set; } = null; + public bool? TriggerAutoclassRules { get; set; } = null; +} + +/* +// TransactionCreate myDeserializedClass = JsonConvert.DeserializeObject(myJsonResponse); +{ + "Owner":1, + "SplitDescription":"string", + "UreatedOn":"2018-09-17T12:46:47+01:00", + "UpdatedOn":"2018-09-17T12:46:47+01:00", + "ExternalId":"string", + "Transactions":[ + { + "Description":"string", + "DebitAccount":1, + "CreditAccount":1, + "Amount":"string", + "CreatedOn":"2018-09-17T12:46:47+01:00", + "UpdatedOn":"2018-09-17T12:46:47+01:00", + "ExternalId":"string", + "CreditAccount":1, + "Notes":"string", + "IsPending":true + } + ] +}*/ \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Models/Transactions/TransactionDto.cs b/AAIntegration.SimmonsBank.API/Models/Transactions/TransactionDto.cs new file mode 100644 index 0000000..8b386f2 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Models/Transactions/TransactionDto.cs @@ -0,0 +1,24 @@ +using System.Collections.Generic; +using System.Runtime; +using AAIntegration.SimmonsBank.API.Services; + +namespace AAIntegration.SimmonsBank.API.Models.Transactions; + +public class TransactionDto +{ + public int Id { get; set; } + public DateTime Date { get; set; } + public DateTime CreatedOn { get; set; } + public DateTime UpdatedOn { get; set; } + public string ExternalId { get; set; } + public string Description { get; set; } + public int DebitAccountId { get; set; } + public int CreditAccountId { get; set; } + public int DebitEnvelopeId { get; set; } + public int CreditEnvelopeId { get; set; } + public decimal Amount { get; set; } + public Entities.CurrencyType CurrencyType { get; set; } + public string Notes { get; set; } + public bool IsPending { get; set; } + public List? Tags { get; set; } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Models/Transactions/TransactionUpdateRequest.cs b/AAIntegration.SimmonsBank.API/Models/Transactions/TransactionUpdateRequest.cs new file mode 100644 index 0000000..b3f7429 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Models/Transactions/TransactionUpdateRequest.cs @@ -0,0 +1,22 @@ +using System.ComponentModel.DataAnnotations; +using AAIntegration.SimmonsBank.API.Entities; + +namespace AAIntegration.SimmonsBank.API.Models.Transactions; + +public class TransactionUpdateRequest +{ + public DateTime? Date { get; set; } = null; + public string? ExternalId { get; set; } = null; + public string? Description { get; set; } = null; + public int? DebitAccount { get; set; } = null; + public int? CreditAccount { get; set; } = null; + public int? DebitEnvelope { get; set; } = null; + public int? CreditEnvelope { get; set; } = null; + public bool? IsEnvelopeFundingTransaction { get; set; } = null; + public decimal? Amount { get; set; } = null; + public int? CurrencyType { get; set; } = null; + public string? Notes { get; set; } = null; + public bool? IsPending { get; set; } = null; + public bool? TriggerAutoclassRules { get; set; } = false; + public List? Tags { get; set; } = null; +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Models/Users/AuthenticateRequest.cs b/AAIntegration.SimmonsBank.API/Models/Users/AuthenticateRequest.cs new file mode 100644 index 0000000..28b5c68 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Models/Users/AuthenticateRequest.cs @@ -0,0 +1,12 @@ +namespace AAIntegration.SimmonsBank.API.Models.Users; + +using System.ComponentModel.DataAnnotations; + +public class AuthenticateRequest +{ + [Required] + public string Username { get; set; } + + [Required] + public string Password { get; set; } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Models/Users/AuthenticateResponse.cs b/AAIntegration.SimmonsBank.API/Models/Users/AuthenticateResponse.cs new file mode 100644 index 0000000..fb79489 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Models/Users/AuthenticateResponse.cs @@ -0,0 +1,10 @@ +namespace AAIntegration.SimmonsBank.API.Models.Users; + +public class AuthenticateResponse +{ + public int Id { get; set; } + public string FirstName { get; set; } + public string LastName { get; set; } + public string Username { get; set; } + public string Token { get; set; } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Models/Users/RegisterRequest.cs b/AAIntegration.SimmonsBank.API/Models/Users/RegisterRequest.cs new file mode 100644 index 0000000..32710cf --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Models/Users/RegisterRequest.cs @@ -0,0 +1,28 @@ +namespace AAIntegration.SimmonsBank.API.Models.Users; + +using System.ComponentModel.DataAnnotations; +using AAIntegration.SimmonsBank.API.Entities; + +public class RegisterRequest +{ + [Required] + public string Username { get; set; } + + [Required] + public string FirstName { get; set; } + + [Required] + public string LastName { get; set; } + + [Required] + [EnumDataType(typeof(Role))] + public string Role { get; set; } + + [Required] + [EmailAddress] + public string Email { get; set; } + + [Required] + [MinLength(6)] + public string Password { get; set; } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Models/Users/UserUpdateRequest.cs b/AAIntegration.SimmonsBank.API/Models/Users/UserUpdateRequest.cs index 3a09e34..bbd2f96 100644 --- a/AAIntegration.SimmonsBank.API/Models/Users/UserUpdateRequest.cs +++ b/AAIntegration.SimmonsBank.API/Models/Users/UserUpdateRequest.cs @@ -1,8 +1,38 @@ namespace AAIntegration.SimmonsBank.API.Models.Users; +using System.ComponentModel.DataAnnotations; +using System.Diagnostics.CodeAnalysis; +using System.Runtime.InteropServices; +using AAIntegration.SimmonsBank.API.Entities; + public class UserUpdateRequest { - public string? Username { get; set; } = null; - public string? Password { get; set; } = null; - public string? MFAKey { get; set; } = null; + public string Username { get; set; } + public string FirstName { get; set; } + public string LastName { get; set; } + + [EnumDataType(typeof(Role))] + public string Role { get; set; } + + [EmailAddress] + public string Email { get; set; } + + // treat empty string as null for password fields to + // make them optional in front end apps + private string _password; + + [MinLength(6)] + public string Password + { + get => _password; + set => _password = replaceEmptyWithNull(value); + } + + // helpers + + private string replaceEmptyWithNull(string value) + { + // replace empty string with null to make field optional + return string.IsNullOrEmpty(value) ? null : value; + } } \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Processes/EnvelopeFundingProcess.cs b/AAIntegration.SimmonsBank.API/Processes/EnvelopeFundingProcess.cs new file mode 100644 index 0000000..448d3ca --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Processes/EnvelopeFundingProcess.cs @@ -0,0 +1,53 @@ +using System; +using System.Collections.Generic; +using System.Threading.Tasks; +using AAIntegration.SimmonsBank.API.Configs; +using AAIntegration.SimmonsBank.API.Entities; +using AAIntegration.SimmonsBank.API.Models.Envelopes; +using AAIntegration.SimmonsBank.API.Models.Transactions; +using AAIntegration.SimmonsBank.API.Services; +using Microsoft.Extensions.Options; + +namespace AAIntegration.SimmonsBank.API.Processes; + +public class EnvelopeFundingProcess : IEnvelopeFundingProcess +{ + private readonly EnvelopeFundConfig _config; + private readonly ILogger _logger; + + public EnvelopeFundingProcess( + IOptions config, + ILogger logger) + { + _config = config.Value; + _logger = logger; + } + + public async Task FundEnvelopes(IEnvelopeService envelopeService) + { + _logger.LogInformation($"Starting envelope funding..."); + + // Grab envelopes + List envelopes = envelopeService.GetAll().ToList(); + + bool anyTriggered = false; + + foreach (Envelope env in envelopes) + { + // Check if needs triggering + if (env.Enabled && !envelopeService.HasBeenFundedThisMonth(env.Id)) + { + _logger.LogInformation($"Envelope '{env.Name}' (id={env.Id}) needs funding - Has now been triggered."); + anyTriggered = true; + + // Fund Envelope + envelopeService.FundEnvelopeForThisMonth(env.Id); + } + } + + if (!anyTriggered) + _logger.LogInformation($"No action taken."); + else + _logger.LogInformation($"Envelope funding complete."); + } +} diff --git a/AAIntegration.SimmonsBank.API/Processes/IEnvelopeFundingProcess.cs b/AAIntegration.SimmonsBank.API/Processes/IEnvelopeFundingProcess.cs new file mode 100644 index 0000000..011fbd9 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Processes/IEnvelopeFundingProcess.cs @@ -0,0 +1,9 @@ +using System.Threading.Tasks; +using AAIntegration.SimmonsBank.API.Services; + +namespace AAIntegration.SimmonsBank.API.Processes; + +public interface IEnvelopeFundingProcess +{ + Task FundEnvelopes(IEnvelopeService envelopeService); +} diff --git a/AAIntegration.SimmonsBank.API/Program.cs b/AAIntegration.SimmonsBank.API/Program.cs index 2e3446f..d569b7e 100644 --- a/AAIntegration.SimmonsBank.API/Program.cs +++ b/AAIntegration.SimmonsBank.API/Program.cs @@ -1,9 +1,18 @@ +//using AAIntegration.SimmonsBank.API.Authorization; +using AAIntegration.SimmonsBank.API.Config; +using Microsoft.EntityFrameworkCore; + +using AAIntegration.SimmonsBank.API.Services; +using Microsoft.OpenApi.Models; +using System.Text.Json.Serialization; +using AAIntegration.SimmonsBank.API.Processes; +using AAIntegration.SimmonsBank.API.Workers; using AAIntegration.SimmonsBank.API.Configs; using AAIntegration.SimmonsBank.API.Handlers; -using AAIntegration.SimmonsBank.API.Helpers; -using AAIntegration.SimmonsBank.API.Services; +using Microsoft.IdentityModel.Tokens; +using System.Text; +//using Microsoft.Build.Framework; using Microsoft.AspNetCore.Authorization; -using Microsoft.EntityFrameworkCore; internal class Program { @@ -12,6 +21,23 @@ internal class Program var builder = WebApplication.CreateBuilder(args); // Add services to the container. + var MyAllowSpecificOrigins = "_myAllowSpecificOrigins"; + + builder.Services.AddCors(options => + { + options.AddPolicy("ClientPermission", policy => + { + policy.AllowAnyHeader() + .AllowAnyMethod() + .SetIsOriginAllowed(_ => true) + .AllowCredentials(); + }); + + options.AddPolicy(name: MyAllowSpecificOrigins, policy => + { + policy.WithOrigins(builder.Configuration.GetSection("ActiveAllocator:AllowedHosts").Get()); + }); + }); // Authentication builder.Services.AddAuthentication() @@ -27,39 +53,82 @@ internal class Program options.DefaultPolicy = defaultAuthorizationPolicyBuilder.Build(); }); + builder.Services.AddControllersWithViews().AddJsonOptions(x => + { + // serialize enums as strings in api responses (e.g. Role) + x.JsonSerializerOptions.Converters.Add(new JsonStringEnumConverter()); - builder.Services.AddControllers(); - // Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle + // ignore omitted parameters on models to enable optional params (e.g. User update) + x.JsonSerializerOptions.DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull; + }); + builder.Services.AddEndpointsApiExplorer(); - builder.Services.AddSwaggerGen(); + builder.Services.AddSwaggerGen(c => + { + c.SwaggerDoc("v1", new OpenApiInfo { Title = "AA API", Version = "v1" }); + }); + // Configure strongly typed settings object builder.Services.Configure(builder.Configuration.GetSection("AppSettings")); + builder.Services.Configure(builder.Configuration.GetSection("EnvelopeFund")); + builder.Services.Configure(builder.Configuration.GetSection("ActiveAllocator:Database")); - DatabaseConfig dbConfig = builder.Configuration.GetSection("Database").Get(); + DatabaseConfig dbConfig = builder.Configuration.GetSection("ActiveAllocator:Database").Get(); + builder.Services.AddAutoMapper(typeof(Program)); builder.Services.AddDbContext(opt => opt.UseNpgsql(dbConfig.GetConnectionString())); builder.Services.AddScoped(); + builder.Services.AddScoped(); + builder.Services.AddScoped(); + builder.Services.AddScoped(); + builder.Services.AddScoped(); + builder.Services.AddScoped(); builder.Services.AddScoped(); + builder.Services.AddScoped(); + builder.Services.AddScoped(); builder.Services.AddScoped(); + builder.Services.AddSingleton(); + + builder.Services.AddHostedService(); + var app = builder.Build(); + // Apply Database Migrations - This is NOT recommended for multi-node deployment!!! + using var scope = app.Services.CreateScope(); + using var dbContext = scope.ServiceProvider.GetRequiredService(); + dbContext.Database.Migrate(); + // Configure the HTTP request pipeline. - if (app.Environment.IsDevelopment()) + if (!app.Environment.IsDevelopment()) { - app.UseSwagger(); - app.UseSwaggerUI(); + // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts. + app.UseHsts(); } + app.UseCors("ClientPermission"); app.UseHttpsRedirection(); + app.UseStaticFiles(); + app.UseSwagger(); + app.UseSwaggerUI(); + app.UseRouting(); + app.UseCors(MyAllowSpecificOrigins); + app.UseAuthentication(); app.UseAuthorization(); - app.MapControllers(); + // global error handler + app.UseMiddleware(); + + app.MapControllerRoute( + name: "default", + pattern: "{controller}/{action=Index}/{id?}"); + + app.MapFallbackToFile("index.html"); app.Run(); } -} +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Services/AccountService.cs b/AAIntegration.SimmonsBank.API/Services/AccountService.cs new file mode 100644 index 0000000..59d10e4 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Services/AccountService.cs @@ -0,0 +1,161 @@ +namespace AAIntegration.SimmonsBank.API.Services; + +using AutoMapper; +using BCrypt.Net; +using AAIntegration.SimmonsBank.API.Entities; +using AAIntegration.SimmonsBank.API.Config; +using AAIntegration.SimmonsBank.API.Models.Accounts; +using System.Collections; +using System.Collections.Generic; +using System.Linq; +using System; +using Internal; +using Microsoft.EntityFrameworkCore; + +public interface IAccountService +{ + IEnumerable GetAll(); + Account GetById(int accountId); + void Create(AccountCreateRequest model); + void Update(int accountId, AccountUpdateRequest model); + Account RefreshAccountBalance(int accountId); + void Delete(int accountId); + AccountHistorical GetAccountHistorical(int accountId, int lookBack); +} + +public class AccountService : IAccountService +{ + private DataContext _context; + private readonly IMapper _mapper; + private IUserService _userService; + private ICurrencyTypeService _currencyTypeService; + + public AccountService( + DataContext context, + IMapper mapper, + IUserService userService, + ICurrencyTypeService currencyTypeService) + { + _context = context; + _mapper = mapper; + _userService = userService; + _currencyTypeService = currencyTypeService; + } + + public IEnumerable GetAll() + { + return _context.Accounts; + } + + public Account GetById(int accountId) + { + return getAccount(accountId); + } + + public void Create(AccountCreateRequest model) + { + // Check that account with same name or same external number doesn't exist + IEnumerable accountsWithSameName = _context.Accounts.Where(a => a.Name.ToUpper() == model.Name.ToUpper()); + + if (accountsWithSameName.Count() > 0) + throw new AppException("Account with name '" + model.Name + "' already exists"); + + if (!string.IsNullOrWhiteSpace(model.ExternalAccountNumber)) + { + IEnumerable matches = _context.Accounts.Where(a => a.ExternalAccountNumber == model.ExternalAccountNumber); + + if (matches.Count() > 0) + throw new AppException("Account with external account number '" + model.ExternalAccountNumber + "' already exists under account named '" + matches.First().Name + "'"); + } + + // map model to new account object + //var account = _mapper.Map(model); + + Account account = new Account { + Name = model.Name, + InitialBalance = Convert.ToDecimal(model.InitialBalance), + Balance = Convert.ToDecimal(model.InitialBalance), + VirtualBalance = Convert.ToDecimal(model.InitialBalance), + LastActivity = DateTime.UtcNow, + CreatedOn = DateTime.UtcNow, + CurrencyId = model.Currency, + Currency = _currencyTypeService.GetById(model.Currency), + ExternalAccountNumber = model.ExternalAccountNumber + }; + + _context.Accounts.Add(account); + _context.SaveChanges(); + } + + public void Update(int accountId, AccountUpdateRequest model) + { + Account account = getAccount(accountId); + + // validate + if (model.Name != account.Name && _context.Accounts.Any(x => x.Name == model.Name)) + throw new AppException("Account with the name '" + model.Name + "' already exists"); + + // Name + if (!string.IsNullOrWhiteSpace(model.Name)) + account.Name = model.Name; + + // Owner + /*if (model.Owner.HasValue) + { + account.OwnerId = model.Owner.Value; + account.Owner = _userService.GetById(model.Owner.Value); + }*/ + + // Initial Balance + if (!string.IsNullOrWhiteSpace(model.InitialBalance)) + account.InitialBalance = Convert.ToDecimal(model.InitialBalance); + + // CurrencyType + if (model.Currency.HasValue) + { + account.CurrencyId = model.Currency.Value; + account.Currency = _context.CurrencyTypes.Find(model.Currency.Value); + } + + // External Account Number + if (!string.IsNullOrWhiteSpace(model.ExternalAccountNumber)) + account.ExternalAccountNumber = model.ExternalAccountNumber; + + // copy model to account and save + //_mapper.Map(model, account); + _context.Accounts.Update(account); + _context.SaveChanges(); + _context.RecalculateAccountBalance(accountId); + } + + public Account RefreshAccountBalance(int accountId) + { + _context.RecalculateAccountBalance(accountId); + return _context.Accounts.Find(accountId); + } + + public void Delete(int accountId) + { + var account = getAccount(accountId); + _context.Accounts.Remove(account); + _context.SaveChanges(); + } + + public AccountHistorical GetAccountHistorical(int accountId, int lookBack) + { + // Input validate lookBack + if (lookBack < 1) + throw new AppException($"Look Back value must be greater than 0."); + + return _context.GetAccountHistorical(accountId, lookBack); + } + + // helper methods + + private Account getAccount(int id) + { + var account = _context.Accounts.Find(id); + if (account == null) throw new KeyNotFoundException("Account not found"); + return account; + } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Services/ApiKeyService.cs b/AAIntegration.SimmonsBank.API/Services/ApiKeyService.cs new file mode 100644 index 0000000..6d54b30 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Services/ApiKeyService.cs @@ -0,0 +1,43 @@ +namespace AAIntegration.SimmonsBank.API.Services; + +using AutoMapper; +using BCrypt.Net; +using AAIntegration.SimmonsBank.API.Config; +using System; +using System.Security.Cryptography; + +public interface IApiKeyService +{ + string GenerateApiKey(); +} + +public class ApiKeyService : IApiKeyService +{ + private DataContext _context; + private readonly IMapper _mapper; + + public ApiKeyService( + DataContext context, + IMapper mapper) + { + _context = context; + _mapper = mapper; + } + + private const string _prefix = "CT-"; + private const int _numberOfSecureBytesToGenerate = 32; + private const int _lengthOfKey = 32; + + public string GenerateApiKey() + { + var bytes = RandomNumberGenerator.GetBytes(_numberOfSecureBytesToGenerate); + + string base64String = Convert.ToBase64String(bytes) + .Replace("+", "-") + .Replace("/", "_"); + + var keyLength = _lengthOfKey - _prefix.Length; + + return _prefix + base64String[..keyLength]; + } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Services/AutoclassService.cs b/AAIntegration.SimmonsBank.API/Services/AutoclassService.cs new file mode 100644 index 0000000..e0e621f --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Services/AutoclassService.cs @@ -0,0 +1,407 @@ +namespace AAIntegration.SimmonsBank.API.Services; + +using AutoMapper; +using BCrypt.Net; +using AAIntegration.SimmonsBank.API.Entities; +using AAIntegration.SimmonsBank.API.Config; +using AAIntegration.SimmonsBank.API.Models.Autoclass; +using System.Collections; +using System.Collections.Generic; +using System.Linq; +using System; +using Microsoft.EntityFrameworkCore; +using Internal; + +public interface IAutoclassService +{ + IEnumerable GetAll(int? account = null); + AutoclassRule GetById(int id); + void Create(AutoclassRuleCreateRequest model); + void Update(int autoclassId, AutoclassRuleUpdateRequest model); + void Delete(int id); + List GetAllFieldInfo(); + List GetAllTypeOperatorInfo(); + Transaction ProcessRule(Transaction transaction, AutoclassRule rule, out bool ruleFired); + int ApplyRulesForTransaction(int transactionId); + int ApplyAutoclassRule(int autoclassRule); + int ApplyAutoclassRule(AutoclassRule autoclassRule); +} + +public class AutoclassService : IAutoclassService +{ + private DataContext _context; + private readonly IMapper _mapper; + private readonly ILogger _logger; + private List typeMetaData; + private List fieldMetaData; + + public AutoclassService( + DataContext context, + IMapper mapper, + ILogger logger) + { + _context = context; + _mapper = mapper; + _logger = logger; + + this.CreateFieldMetaData(); + this.CreateTypeMetaData(); + } + + public IEnumerable GetAll(int? account = null) + { + if (account.HasValue) + { + return _context.AutoclassRules + .Include(t => t.Account) + .Include(t => t.Expressions) + .Include(t => t.Changes) + .ToList() + .Where(a => a.Account.Id == account.Value); + } + + return _context.AutoclassRules + .Include(t => t.Expressions) + .Include(t => t.Changes) + .ToList(); + } + + public AutoclassRule GetById(int id) + { + return getAutoclass(id); + } + + public void Create(AutoclassRuleCreateRequest model) + { + AutoclassRule rule = new AutoclassRule { + Name = model.Name, + Account = _context.Accounts.Find(model.AccountId), + Expressions = _mapper.Map>(model.Expressions), + Changes = _mapper.Map>(model.Changes), + Enabled = model.Enabled + }; + + if (rule.Account == null) + throw new AppException($"Could not find the account with id '{model.AccountId}'."); + + if (rule.Account.Id == 0) + throw new AppException($"Can not add rules to account with id '0'."); + + if (_context.AutoclassRules.Any(x => + x.Name.ToUpper() == rule.Name.ToUpper() + && x.Account.Id == rule.Account.Id)) + { + throw new AppException("AutoclassRule with the same name already exists for this account."); + } + + _context.AutoclassRules.Add(rule); + _context.SaveChanges(); + + if (model.TriggerOnCreate.HasValue && model.TriggerOnCreate.Value) + this.ApplyAutoclassRule(rule.Id); + } + + public void Update(int autoclassId, AutoclassRuleUpdateRequest model) + { + AutoclassRule rule = getAutoclass(autoclassId); + + // Account + if (model.AccountId.HasValue) + rule.Account = _context.Accounts.Find(model.AccountId.Value); + + // Name + if (!string.IsNullOrWhiteSpace(model.Name)) + { + if (model.Name != rule.Name && _context.AutoclassRules.Any(x => + x.Name.ToUpper() == model.Name.ToUpper() + && x.Account.Id == rule.Account.Id)) + { + throw new AppException("AutoclassRule with the same name already exists for this account."); + } + + rule.Name = model.Name; + } + + // Enabled + if (model.Enabled.HasValue) + rule.Enabled = model.Enabled.Value; + + // Expressions + if (model.Expressions != null) + { + // Remove expression defined on autoclass rule + foreach (AutoclassExpression expression in rule.Expressions) + _context.AutoclassExpressions.Remove(expression); + + // Add the expressions from request + rule.Expressions = _mapper.Map>(model.Expressions); + } + + // Changes + if (model.Changes != null) + { + // Remove changes defined on autoclass rule + foreach (AutoclassChange changes in rule.Changes) + _context.AutoclassChanges.Remove(changes); + + // Add the expressions from request + rule.Changes = _mapper.Map>(model.Changes); + } + + _context.AutoclassRules.Update(rule); + _context.SaveChanges(); + + // TriggerOnUpdate + if (model.TriggerOnUpdate.HasValue && model.TriggerOnUpdate.Value) + this.ApplyAutoclassRule(rule.Id); + + } + + public void Delete(int id) + { + var autoclassRule = getAutoclass(id); + _context.AutoclassRules.Remove(autoclassRule); + _context.SaveChanges(); + } + + private AutoclassRule getAutoclass(int id) + { + var autoclassRule = _context.AutoclassRules + .Include(t => t.Account) + .Include(t => t.Expressions) + .Include(t => t.Changes) + .FirstOrDefault(o => o.Id == id); + + //_context.Entry(autoclassRule).Reference(t => t.Expressions).Load(); + //_context.Entry(autoclassRule).Reference(t => t.Changes).Load(); + + if (autoclassRule == null) throw new KeyNotFoundException("AutoclassRule not found"); + return autoclassRule; + } + + private void CreateFieldMetaData() + { + List fields = new List(); + + fields.Add(new AutoclassFieldMetaDTO(AutoclassTransactionField.AMOUNT)); + fields.Add(new AutoclassFieldMetaDTO(AutoclassTransactionField.CREDIT_ACCOUNT)); + fields.Add(new AutoclassFieldMetaDTO(AutoclassTransactionField.CREDIT_ENVELOPE)); + fields.Add(new AutoclassFieldMetaDTO(AutoclassTransactionField.CURRENCY_TYPE)); + fields.Add(new AutoclassFieldMetaDTO(AutoclassTransactionField.DATE)); + fields.Add(new AutoclassFieldMetaDTO(AutoclassTransactionField.DEBIT_ACCOUNT)); + fields.Add(new AutoclassFieldMetaDTO(AutoclassTransactionField.DEBIT_ENVELOPE)); + fields.Add(new AutoclassFieldMetaDTO(AutoclassTransactionField.DESCRIPTION)); + fields.Add(new AutoclassFieldMetaDTO(AutoclassTransactionField.EXTERNAL_ID)); + fields.Add(new AutoclassFieldMetaDTO(AutoclassTransactionField.IS_PENDING)); + fields.Add(new AutoclassFieldMetaDTO(AutoclassTransactionField.TAGS)); + + this.fieldMetaData = fields; + } + + public List GetAllFieldInfo() + { + return this.fieldMetaData; + } + + private void CreateTypeMetaData() + { + List types = new List(); + + types.Add(new AutoclassTypeMetaDTO(AutoclassType.DATETIME)); + types.Add(new AutoclassTypeMetaDTO(AutoclassType.STRING)); + types.Add(new AutoclassTypeMetaDTO(AutoclassType.DECIMAL)); + types.Add(new AutoclassTypeMetaDTO(AutoclassType.BOOLEAN)); + types.Add(new AutoclassTypeMetaDTO(AutoclassType.ACCOUNT)); + types.Add(new AutoclassTypeMetaDTO(AutoclassType.ENVELOPE)); + types.Add(new AutoclassTypeMetaDTO(AutoclassType.CURRENCYTYPE)); + types.Add(new AutoclassTypeMetaDTO(AutoclassType.STRING_ARRAY)); + + this.typeMetaData = types; + } + + public List GetAllTypeOperatorInfo() + { + return this.typeMetaData; + } + + public int ApplyRulesForTransaction(int transactionId) + { + Transaction? transaction = _context.Transactions + .Include(t => t.DebitEnvelope) + .Include(t => t.DebitAccount) + .Include(t => t.CreditAccount) + .Include(t => t.CreditEnvelope) + .Include(t => t.CurrencyType) + .FirstOrDefault(t => t.Id == transactionId); + + if (transaction == null) + throw new AppException($"Could not find transaction with id {transactionId}."); + + int rulesFired = 0; + + if (transaction.DebitAccount != null) + { + IEnumerable debitAccountRules = _context.AutoclassRules + .Include(r => r.Account) + .Where(r => r.Account.Id == transaction.DebitAccount.Id) + .Include(r => r.Expressions) + .Include(r => r.Changes) + .ToList(); + + + _logger.LogInformation($"Processing Autoclass Rules from DebitAccount '{transaction.DebitAccount.Id}' for new transaction '{transaction.Description}'."); + foreach (AutoclassRule rule in debitAccountRules) + { + transaction = ProcessRule(transaction, rule, out bool ruleFired); + + if (ruleFired) + rulesFired++; + } + + _logger.LogInformation($"...DebitAccount '{transaction.DebitAccount.Id}' rule processing complete."); + } + + if (transaction.CreditAccount != null) + { + IEnumerable creditAccountRules = _context.AutoclassRules + .Include(r => r.Account) + .Where(r => r.Account.Id == transaction.CreditAccount.Id) + .Include(r => r.Expressions) + .Include(r => r.Changes) + .ToList(); + + _logger.LogInformation($"Processing Autoclass Rules from CreditAccount '{transaction.CreditAccount.Id}' for new transaction '{transaction.Description}'."); + foreach (AutoclassRule rule in creditAccountRules) + { + transaction = ProcessRule(transaction, rule, out bool ruleFired); + + if (ruleFired) + rulesFired++; + } + + _logger.LogInformation($"...CreditAccount '{transaction.CreditAccount.Id}' rule processing complete."); + } + + _context.Transactions.Update(transaction); + _context.SaveChanges(); + + return rulesFired; + } + + public int ApplyAutoclassRule(int autoclassRuleId) + { + AutoclassRule? autoclassRule = _context.AutoclassRules + .Include(r => r.Account) + .Include(r => r.Expressions) + .Include(r => r.Changes) + .FirstOrDefault(r => r.Id == autoclassRuleId); + + if (autoclassRule == null) + throw new AppException($"AutoclassRule with id {autoclassRuleId} not found."); + + return this.ApplyAutoclassRule(autoclassRule); + } + + public int ApplyAutoclassRule(AutoclassRule autoclassRule) + { + if (autoclassRule.Account == null) + throw new AppException($"System Error: AutoclassRule with id {autoclassRule} lacks an associated account."); + + // Get Transactions + List transactions = _context.Transactions + .Include(t => t.DebitEnvelope) + .Include(t => t.DebitAccount) + .Include(t => t.CreditAccount) + .Include(t => t.CreditEnvelope) + .Include(t => t.CurrencyType) + .Where(t => (t.DebitAccount != null && t.DebitAccount.Id == autoclassRule.Account.Id) + || (t.CreditAccount != null && t.CreditAccount.Id == autoclassRule.Account.Id)) + .ToList(); + + int affectedTransactionsCount = 0; + + // Process Each Transaction for this rule + for (int i = 0; i < transactions.Count; i++) + { + transactions[i] = ProcessRule(transactions[i], autoclassRule, out bool ruleFired); + _context.Transactions.Update(transactions[i]); + + if (ruleFired) + affectedTransactionsCount++; + } + + _context.SaveChanges(); + + return affectedTransactionsCount; + } + + public Transaction ProcessRule(Transaction transaction, AutoclassRule rule, out bool ruleFired) + { + bool triggerRule = true; + + foreach (AutoclassExpression exp in rule.Expressions) + { + triggerRule &= exp.Evaluate(transaction); + } + + if (triggerRule) + { + _logger.LogInformation($"Rule '{rule.Name}' was triggered."); + foreach (AutoclassChange chg in rule.Changes) + { + _logger.LogInformation($"\tField {chg.Field} will be set to '{chg.Value}'."); + + switch (chg.Field) + { + case AutoclassTransactionField.DATE: + transaction.Date = Convert.ToDateTime(chg.Value); + break; + + case AutoclassTransactionField.EXTERNAL_ID: + transaction.ExternalId = chg.Value; + break; + + case AutoclassTransactionField.DESCRIPTION: + transaction.Description = chg.Value; + break; + + case AutoclassTransactionField.AMOUNT: + transaction.Amount = Convert.ToDecimal(chg.Value); + break; + + case AutoclassTransactionField.IS_PENDING: + transaction.IsPending = Convert.ToBoolean(chg.Value); + break; + + case AutoclassTransactionField.DEBIT_ACCOUNT: + transaction.DebitAccount = _context.Accounts.Find(Convert.ToInt32(chg.Value)); + break; + + case AutoclassTransactionField.CREDIT_ACCOUNT: + transaction.CreditAccount = _context.Accounts.Find(Convert.ToInt32(chg.Value)); + break; + + case AutoclassTransactionField.DEBIT_ENVELOPE: + transaction.DebitEnvelope = _context.Envelopes.Find(Convert.ToInt32(chg.Value)); + break; + + case AutoclassTransactionField.CREDIT_ENVELOPE: + transaction.CreditEnvelope = _context.Envelopes.Find(Convert.ToInt32(chg.Value)); + break; + + case AutoclassTransactionField.CURRENCY_TYPE: + transaction.CurrencyType = _context.CurrencyTypes.Find(Convert.ToInt32(chg.Value)); + break; + + case AutoclassTransactionField.TAGS: + transaction = transaction.AddTag(chg.Value); + break; + } + } + } + + ruleFired = triggerRule; + + return transaction; + } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Services/CacheService.cs b/AAIntegration.SimmonsBank.API/Services/CacheService.cs index e2ab0fd..2ddea35 100644 --- a/AAIntegration.SimmonsBank.API/Services/CacheService.cs +++ b/AAIntegration.SimmonsBank.API/Services/CacheService.cs @@ -35,7 +35,7 @@ public class CacheService : ICacheService return clientId; } - /*public void InvalidateApiKey(string apiKey) + public void InvalidateApiKey(string apiKey) { if (_memoryCache.TryGetValue>("Authentication_ApiKeys", out var internalKeys)) { @@ -47,5 +47,5 @@ public class CacheService : ICacheService } _userService.InvalidateApiKey(apiKey); - }*/ + } } diff --git a/AAIntegration.SimmonsBank.API/Services/CurrencyTypeService.cs b/AAIntegration.SimmonsBank.API/Services/CurrencyTypeService.cs new file mode 100644 index 0000000..200c230 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Services/CurrencyTypeService.cs @@ -0,0 +1,108 @@ +namespace AAIntegration.SimmonsBank.API.Services; + +using AutoMapper; +using BCrypt.Net; +using AAIntegration.SimmonsBank.API.Entities; +using AAIntegration.SimmonsBank.API.Config; +using AAIntegration.SimmonsBank.API.Models.CurrencyType; +using System.Collections; +using System.Collections.Generic; +using System.Linq; + +public interface ICurrencyTypeService +{ + IEnumerable GetAll(); + CurrencyType GetById(int id); + void Create(CurrencyTypeCreateRequest model); + //void Update(int id, AccountUpdateRequest model); + void Delete(int id); +} + +public class CurrencyTypeService : ICurrencyTypeService +{ + private DataContext _context; + private readonly IMapper _mapper; + + public CurrencyTypeService( + DataContext context, + IMapper mapper) + { + _context = context; + _mapper = mapper; + + if (_context.CurrencyTypes.Where(ct => ct.Code == "USD").ToList().Count() < 1) + this.createUSDCurrencyType(); + } + + private void createUSDCurrencyType() + { + _context.CurrencyTypes.Add(new CurrencyType() { + Code = "USD", + Symbol = "$", + DecimalPlaces = 2 + }); + + _context.SaveChanges(); + } + + public IEnumerable GetAll() + { + return _context.CurrencyTypes; + } + + public CurrencyType GetById(int id) + { + return getCurrencyType(id); + } + + public void Create(CurrencyTypeCreateRequest model) + { + // Check that CurrencyType with same code doesn't exist + IEnumerable sameCode = _context.CurrencyTypes.Where(a => a.Code.ToUpper() == model.Code.ToUpper()); + + if (sameCode.Count() > 0) + throw new AppException("CurrencyType with code '" + model.Code + "' already exists"); + + // Check that CurrencyType with same symbol doesn't exist + IEnumerable sameSymbol = _context.CurrencyTypes.Where(a => a.Symbol.ToUpper() == model.Symbol.ToUpper()); + + if (sameSymbol.Count() > 0) + throw new AppException("CurrencyType with symbol '" + model.Symbol + "' already exists"); + + // map model to new account object + var currencyType = _mapper.Map(model); + + _context.CurrencyTypes.Add(currencyType); + _context.SaveChanges(); + } + + /*public void Update(int id, AccountUpdateRequest model) + { + var account = getAccount(id); + + // validate + if (model.Name != account.Name && _context.Accounts.Any(x => x.Name == model.Name)) + throw new AppException("Account with the name '" + model.Name + "' already exists"); + + // copy model to account and save + _mapper.Map(model, account); + _context.Accounts.Update(account); + _context.SaveChanges(); + }*/ + + public void Delete(int id) + { + var currencyType = getCurrencyType(id); + _context.CurrencyTypes.Remove(currencyType); + _context.SaveChanges(); + } + + // helper methods + + private CurrencyType getCurrencyType(int id) + { + var currencyType = _context.CurrencyTypes.Find(id); + if (currencyType == null) throw new KeyNotFoundException("CurrencyType not found"); + return currencyType; + } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Services/EnvelopeService.cs b/AAIntegration.SimmonsBank.API/Services/EnvelopeService.cs new file mode 100644 index 0000000..a61032a --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Services/EnvelopeService.cs @@ -0,0 +1,396 @@ +namespace AAIntegration.SimmonsBank.API.Services; + +using AutoMapper; +using BCrypt.Net; +using AAIntegration.SimmonsBank.API.Entities; +using AAIntegration.SimmonsBank.API.Config; +using AAIntegration.SimmonsBank.API.Models.Envelopes; +using System.Collections; +using System.Collections.Generic; +using System.Linq; +using System; +using Internal; +using Microsoft.EntityFrameworkCore; +using AAIntegration.SimmonsBank.API.Models.Transactions; + +public interface IEnvelopeService +{ + IEnumerable GetAll(int? accountId = null); + Envelope GetById(int envelopeId); + void Create(EnvelopeCreateRequest model); + void Update(int envelopeId, EnvelopeUpdateRequest model); + //Envelope RefreshEnvelopeBalance(int envelopeId); + void Delete(int envelopeId); + bool HasBeenFundedThisMonth(int envelopeId); + EnvelopeHistorical GetEnvelopeHistorical(int envelopeId, int lookBack); + void FundEnvelopeForThisMonth(int envelopeId); + List GetEnvelopeFundingMethodModes(); +} + +public class EnvelopeService : IEnvelopeService +{ + private DataContext _context; + private readonly IMapper _mapper; + private readonly ITransactionService _transactionService; + private readonly ILogger _logger; + + public EnvelopeService( + DataContext context, + IMapper mapper, + ITransactionService transactionService, + ILogger logger) + { + _context = context; + _mapper = mapper; + _transactionService = transactionService; + _logger = logger; + } + + public IEnumerable GetAll(int? accountId = null) + { + if (accountId != null) + return _context.Envelopes + .Include(e => e.Account) + .Include(e => e.FundingMethods) + .Where(e => e.Account.Id == accountId.Value); + + return _context.Envelopes + .Include(e => e.FundingMethods); + } + + public Envelope GetById(int envelopeId) + { + return getEnvelope(envelopeId); + } + + public void Create(EnvelopeCreateRequest model) + { + Account account = _context.Accounts.Find(model.Account); + if (account == null) + throw new AppException("Could not create envelope. Account with id '" + model.Account + "' not found."); + + // Check that envelope with same name or same external number doesn't exist + IEnumerable envelopesWithSameName = _context.Envelopes + .Include(e => e.Account) + .Where(e => + e.Name.ToUpper() == model.Name.ToUpper() + && e.Account.Id == model.Account); + + if (envelopesWithSameName.Count() > 0) + throw new AppException("Envelope with name '" + model.Name + "' already exists for account '" + account.Name + "'."); + + // map model to new envelope object + //var envelope = _mapper.Map(model); + + Envelope envelope = new Envelope { + Name = model.Name, + Account = account, + InitialBalance = Convert.ToDecimal(model.InitialBalance), + Balance = Convert.ToDecimal(model.InitialBalance), + Enabled = model.Enabled, + IsPersistant = model.IsPersistant, + Priority = model.Priority, + LastTriggeredOn = null + }; + + _context.Envelopes.Add(envelope); + _context.SaveChanges(); + + foreach (EnvelopeFundingMethodCreateRequest methodReq in model.FundingMethods) + { + EnvelopeFundingMethod method = new EnvelopeFundingMethod { + Envelope = envelope, + Order = methodReq.Order, + Mode = methodReq.Mode, + Value = methodReq.Value, + PeriodsToLookback = methodReq.PeriodsToLookback + }; + + _context.EnvelopeFundingMethods.Add(method); + } + + _context.SaveChanges(); + } + + public void Update(int envelopeId, EnvelopeUpdateRequest model) + { + Envelope envelope = getEnvelope(envelopeId); + + // Name + if (!string.IsNullOrWhiteSpace(model.Name)) + { + if (model.Name != envelope.Name && _context.Envelopes.Any(x => x.Name == model.Name)) + throw new AppException("Envelope with the name '" + model.Name + "' already exists"); + + envelope.Name = model.Name; + } + + // Account + if (model.Account.HasValue) + envelope.Account = _context.Accounts.Find(model.Account.Value); + + // Enabled + if (model.Enabled.HasValue) + envelope.Enabled = model.Enabled.Value; + + // Period + if (model.Period.HasValue) + envelope.Period = model.Period.Value; + + // IsPersistant + if (model.IsPersistant.HasValue) + envelope.IsPersistant = model.IsPersistant.Value; + + // Priority + if (model.Priority.HasValue) + envelope.Priority = model.Priority.Value; + + // Last Triggered On + if (model.LastTriggeredOn.HasValue) + envelope.LastTriggeredOn = model.LastTriggeredOn; + + // FundingMethods + if (model.FundingMethods != null) + { + // Remove funding methods defined on envelope + foreach (EnvelopeFundingMethod method in envelope.FundingMethods) + { + _context.EnvelopeFundingMethods.Remove(method); + } + + // Add the methods from request + foreach (EnvelopeFundingMethodCreateRequest methodReq in model.FundingMethods) + { + EnvelopeFundingMethod method = new EnvelopeFundingMethod { + Envelope = envelope, + Order = methodReq.Order, + Mode = methodReq.Mode, + Value = methodReq.Value, + PeriodsToLookback = methodReq.PeriodsToLookback + }; + + _context.EnvelopeFundingMethods.Add(method); + } + } + + // copy model to envelope and save + //_mapper.Map(model, envelope); + _context.Envelopes.Update(envelope); + _context.SaveChanges(); + _context.RecalculateEnvelopeBalance(envelopeId); + } +/* + public Envelope RefreshEnvelopeBalance(int envelopeId) + { + _context.RecalculateEnvelopeBalance(envelopeId); + return _context.Envelopes.Find(envelopeId); + }*/ + + public void Delete(int envelopeId) + { + // MUST!!! Classify intra-account transactions as NULL account ids, and only envelope Ids + // MUST!!! Classify inter-account transactions as correct account ids, even with envelope ids + + List delTransactions = _context.Transactions + .Include(t => t.CreditEnvelope) + .Include(t => t.DebitEnvelope) + .Include(t => t.CreditAccount) + .Include(t => t.DebitAccount) + .Where(t => + (t.CreditEnvelope != null && t.CreditEnvelope.Id == envelopeId) || + (t.DebitEnvelope != null && t.DebitEnvelope.Id == envelopeId)) + .ToList(); + + foreach (Transaction tran in delTransactions) + { + if (tran.CreditAccount == null && tran.DebitAccount == null && (tran.CreditEnvelope == null || tran.DebitEnvelope == null)) + { + // Delete transactions who only have credit or debit envelope of this envelope, and nothing else (funding type transactions) + _context.Transactions.Remove(tran); + } + else + { + // Change transactions that have a reference to this envelopeId + if (tran.DebitEnvelope?.Id == envelopeId) + tran.DebitEnvelope = null; + else + tran.CreditEnvelope = null; + } + } + + var envelope = getEnvelope(envelopeId); + _context.Envelopes.Remove(envelope); + _context.SaveChanges(); + } + + public bool HasBeenFundedThisMonth(int envelopeId) + { + return _context.Transactions + .Include(t => t.CreditEnvelope) + .Where(t => t.CreditEnvelope != null && t.CreditEnvelope.Id == envelopeId && t.IsEnvelopeFundingTransaction == true) + .Any(t => t.Date.Year == DateTime.UtcNow.Year && t.Date.Month == DateTime.UtcNow.Month); + } + + public EnvelopeHistorical GetEnvelopeHistorical(int envelopeId, int lookBack) + { + // Input validate lookBack + if (lookBack < 1) + throw new AppException($"Look Back value must be greater than 0."); + + return _context.GetEnvelopeHistorical(envelopeId, lookBack); + } + + public void FundEnvelopeForThisMonth(int envelopeId) + { + // !!!!!! + // Add notes in UI about how things are calculated + + Envelope env = _context.Envelopes + .Include(e => e.FundingMethods) + .FirstOrDefault(e => e.Id == envelopeId); + + if (env.Enabled == false) + { + _logger.LogInformation($"Envelope {env.GetLogString()} is disabled. No funding will occur."); + } + + if (env.FundingMethods == null || env.FundingMethods.Any() == false) + { + _logger.LogInformation($"Envelope {env.GetLogString()} couldn't be funded. No funding methods found."); + return; + } + + if (env.IsPersistant == false) + { + this.ZeroOutEnvelopeFunds(env); + } + + DateTime firstOfThisMonth = new DateTime(DateTime.UtcNow.Year, DateTime.UtcNow.Month, 1); + + decimal amount = this.CalculateFundingAmount(envelopeId); + + TransactionCreate transaction = new TransactionCreate { + Description = $"Funding Envelope", + Date = firstOfThisMonth.ToUniversalTime(), + CreditEnvelope = envelopeId, + IsEnvelopeFundingTransaction = true, + Amount = amount, + CurrencyType = 1,// CHANGE TO DYNAMIC + IsPending = false, + Notes = "Automated Transaction. Envelope Funding Event." + }; + + _transactionService.Create(transaction); + } + + public void ZeroOutEnvelopeFunds(int envelopeId) + { + ZeroOutEnvelopeFunds(getEnvelope(envelopeId)); + } + + public void ZeroOutEnvelopeFunds(Envelope envelope) + { + if (envelope.Balance == 0) + { + _logger.LogInformation($"Envelope {envelope.GetLogString()} is already at zero."); + return; + } + + DateTime lastOfLastMonth = new DateTime(DateTime.UtcNow.Year, DateTime.UtcNow.Month, 1).AddDays(-1); + + TransactionCreate transaction = new TransactionCreate { + Description = $"Envelope Balance Reset", + Date = lastOfLastMonth.ToUniversalTime(), + IsEnvelopeFundingTransaction = true, + Amount = envelope.Balance, + CurrencyType = 1,// CHANGE TO DYNAMIC + IsPending = false, + Notes = "Automated Transaction. Envelope Clearing Event." + }; + + if (envelope.Balance < 0) + transaction.CreditEnvelope = envelope.Id; + else + transaction.DebitEnvelope = envelope.Id; + + _transactionService.Create(transaction); + _logger.LogInformation($"Envelope {envelope.GetLogString()} set to zero."); + } + + private decimal CalculateFundingAmount(int envelopeId, DateTime? month = null) + { + DateTime dt = month.HasValue ? month.Value : DateTime.UtcNow; + + Envelope envelope = _context.Envelopes + .Include(e => e.Account) + .Include(e => e.FundingMethods) + .FirstOrDefault(e => e.Id == envelopeId); + + decimal virtualBalance = envelope.Account.VirtualBalance; + decimal fundingAmount = 0; + + List fundingMethods = envelope.FundingMethods.OrderBy(f => f.Order).ToList(); + + foreach (EnvelopeFundingMethod method in fundingMethods) + { + decimal value = Convert.ToDecimal(method.Value); + decimal amount = 0; + + switch (method.Mode) + { + case EnvelopeFundingMethodModes.PERCENTAGE: + amount = virtualBalance * value / 100m; + amount = amount < 0 ? 0 : amount; + break; + case EnvelopeFundingMethodModes.HISTORICAL_MEDIAN: + case EnvelopeFundingMethodModes.HISTORICAL_MEAN: + EnvelopeHistorical hist = this.GetEnvelopeHistorical(envelopeId, method.PeriodsToLookback); + + if (hist.Debit == null || hist.Credit == null) + amount = value; + else if (method.Mode == EnvelopeFundingMethodModes.HISTORICAL_MEDIAN) + if (!hist.Debit.Median.HasValue || !hist.Credit.Median.HasValue) + amount = value; + else + amount = hist.Debit.Median.Value - hist.Credit.Median.Value; + else if (method.Mode == EnvelopeFundingMethodModes.HISTORICAL_MEAN) + if (!hist.Debit.Mean.HasValue || !hist.Credit.Mean.HasValue) + amount = value; + else + amount = hist.Debit.Mean.Value - hist.Credit.Mean.Value; + + amount = amount > value ? amount : value; + break; + case EnvelopeFundingMethodModes.ABSOLUTE: + default: + amount = Convert.ToDecimal(method.Value); + break; + } + + _logger.LogInformation($"FundMethod -> Order:{method.Order}, Mode:{method.Mode}, Value:{method.Value}, Amount:{amount}"); + fundingAmount += amount; + } + + _logger.LogInformation($"Calculated Fund Amount for envelope {envelopeId}: {fundingAmount}"); + + return fundingAmount; + } + + public List GetEnvelopeFundingMethodModes() + { + return Enum.GetValues().ToList(); + } + + // helper methods + + private Envelope getEnvelope(int id) + { + var envelope = _context.Envelopes + .Include(e => e.Account) + .Include(e => e.FundingMethods) + .FirstOrDefault(e => e.Id == id); + + if (envelope == null) throw new KeyNotFoundException("Envelope not found"); + return envelope; + } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Services/TransactionService.cs b/AAIntegration.SimmonsBank.API/Services/TransactionService.cs new file mode 100644 index 0000000..aad948b --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Services/TransactionService.cs @@ -0,0 +1,356 @@ +namespace AAIntegration.SimmonsBank.API.Services; + +using AutoMapper; +using BCrypt.Net; +using AAIntegration.SimmonsBank.API.Entities; +using AAIntegration.SimmonsBank.API.Config; +using AAIntegration.SimmonsBank.API.Models.Transactions; +using System.Collections; +using System.Collections.Generic; +using System.Linq; +using System; +using Microsoft.EntityFrameworkCore; +using Internal; +using System.Collections.Immutable; + +public interface ITransactionService +{ + IEnumerable GetAll(); + Transaction GetById(int id); + IEnumerable BulkCreate(List model); + Transaction Create(TransactionCreate model, bool errorOnFail = true); + void Update(int id, TransactionUpdateRequest model); + void Delete(int id); +} + +public class TransactionService : ITransactionService +{ + private DataContext _context; + private readonly IMapper _mapper; + private readonly ILogger _logger; + private readonly IAutoclassService _autoclassService; + + public TransactionService( + DataContext context, + IMapper mapper, + ILogger logger, + IAutoclassService autoclassService) + { + _context = context; + _mapper = mapper; + _logger = logger; + _autoclassService = autoclassService; + } + + public IEnumerable GetAll() + { + return _context.Transactions + .Include(t => t.CurrencyType) + .Include(t => t.DebitAccount) + .Include(t => t.CreditAccount) + .Include(t => t.DebitEnvelope) + .Include(t => t.CreditEnvelope) + .ToList(); + } + + public Transaction GetById(int id) + { + return getTransaction(id); + } + + private Account prepareAccount(int? accountId) + { + if (accountId == null || accountId.Value == 0) + { + return null; + } + + Account account = _context.Accounts.Find(accountId.Value); + if (account == null) + throw new AppException("Could not find account with ID of '" + accountId.Value + "'."); + + return account; + } + + private Envelope prepareEnvelope(int? envelopeId) + { + if (envelopeId == null || envelopeId.Value == 0) + { + return null; + } + + Envelope envelope = _context.Envelopes + .Include(e => e.Account) + .FirstOrDefault(e => e.Id == envelopeId.Value); + + if (envelope == null) + throw new AppException("Could not find envelope with ID of '" + envelopeId.Value + "'."); + + return envelope; + } + + public IEnumerable BulkCreate(List model) + { + List transactions = new List(); + + foreach (TransactionCreate tr in model) + { + var tran = this.Create(tr, false); + if (tran != null) + transactions.Add(tran); + } + + return transactions; + } + + public Transaction Create(TransactionCreate model, bool errorOnFail = true) + { + Transaction transaction = new Transaction { + Description = model.Description, + Date = model.Date.Date.ToUniversalTime(), + CreatedOn = DateTime.UtcNow, + UpdatedOn = DateTime.UtcNow, + ExternalId = string.IsNullOrWhiteSpace(model.ExternalId) ? "" : model.ExternalId, + DebitAccount = prepareAccount(model.DebitAccount), + CreditAccount = prepareAccount(model.CreditAccount), + DebitEnvelope = prepareEnvelope(model.DebitEnvelope), + CreditEnvelope = prepareEnvelope(model.CreditEnvelope), + IsEnvelopeFundingTransaction = model.IsEnvelopeFundingTransaction == null ? false : model.IsEnvelopeFundingTransaction.Value, + Amount = Convert.ToDecimal(model.Amount), + CurrencyType = _context.CurrencyTypes.Find(model.CurrencyType), + Notes = model.Notes, + IsPending = model.IsPending, + Tags = model.Tags, + }; + + if (this.ValidateTransaction(transaction, errorOnFail) == false) + { + _logger.LogInformation($"Aborted adding transaction '{transaction.Description}'."); + return null; + } + + // At this point transaction itself is valid + + _context.Transactions.Add(transaction); + _context.SaveChanges(); + + _logger.LogInformation("New transaction successfully created."); + + if (!model.TriggerAutoclassRules.HasValue || model.TriggerAutoclassRules.Value) + _autoclassService.ApplyRulesForTransaction(transaction.Id); + //transaction = this.ApplyAutoclassRules(transaction); + + this.UpdateAccountsAndEnvelopes(transaction); + + return transaction; + } + + public void Update(int id, TransactionUpdateRequest model) + { + Transaction transaction = getTransaction(id); + + string temp = ""; + + // Transaction.Date + if (model.Date.HasValue) + transaction.Date = model.Date.Value; + + // Transaction.ExternalId + if (model.ExternalId != null) + transaction.ExternalId = model.ExternalId; + + // Transaction.Description + if (model.Description != null) + transaction.Description = model.Description; + + // Transaction.DebitAccount + if (model.DebitAccount.HasValue) + transaction.DebitAccount = prepareAccount(model.DebitAccount); + + // Transaction.CreditAccount + if (model.CreditAccount.HasValue) + transaction.CreditAccount = prepareAccount(model.CreditAccount.Value); + + // Transaction.DebitEnvelope + if (model.DebitEnvelope.HasValue) + transaction.DebitEnvelope = prepareEnvelope(model.DebitEnvelope.Value); + + // Transaction.CreditEnvelope + if (model.CreditEnvelope.HasValue) + transaction.CreditEnvelope = prepareEnvelope(model.CreditEnvelope.Value); + + // Transaction.IsEnvelopeFundingTransaction + if (model.IsEnvelopeFundingTransaction.HasValue) + transaction.IsEnvelopeFundingTransaction = model.IsEnvelopeFundingTransaction.Value; + + // Transaction.Amount + if (model.Amount.HasValue) + transaction.Amount = model.Amount.Value; + + // Transaction.CurrencyType + if (model.CurrencyType.HasValue) + transaction.CurrencyType = _context.CurrencyTypes.Find(model.CurrencyType.Value); + + // Transaction.Notes + if (model.Notes != null) + transaction.Notes = model.Notes; + + // Transaction.IsPending + if (model.IsPending.HasValue) + transaction.IsPending = model.IsPending.Value; + + // Tags + if (model.Tags != null) + transaction.Tags = model.Tags; + + this.ValidateTransaction(transaction); + + _context.Transactions.Update(transaction); + _context.SaveChanges(); + + _logger.LogInformation($"Transaction '{id}' successfully updated."); + + if (model.TriggerAutoclassRules.HasValue && model.TriggerAutoclassRules == true) + _autoclassService.ApplyRulesForTransaction(transaction.Id); + //transaction = this.ApplyAutoclassRules(transaction); + + this.UpdateAccountsAndEnvelopes(transaction); + } + + private bool ValidateTransaction(int transactionId) + { + return this.ValidateTransaction(getTransaction(transactionId)); + } + + private bool ErrorOrFalse(bool error, string errorMessage) + { + if (error) + throw new AppException(errorMessage); + + _logger.LogWarning(errorMessage); + return false; + } + + // FIX VALIDATETRANSACTION REFERENCES TO USE BOOL + private bool ValidateTransaction(Transaction transaction, bool errorOnFail = true) + { + // MUST!!! Classify intra-account transactions as NULL account ids, and only envelope Ids + // MUST!!! Classify inter-account transactions as correct account ids, even with envelope ids + + // There has to be at least 1 specified account or envelope + if (transaction.DebitAccount == null + && transaction.CreditAccount == null + && transaction.DebitEnvelope == null + && transaction.CreditEnvelope == null) + return ErrorOrFalse(errorOnFail, "There must be an envelope or account chosen for a transaction."); + + // Envelopes must have associated parent account entities + if (transaction.CreditEnvelope != null && transaction.CreditEnvelope.Account == null) + return ErrorOrFalse(errorOnFail, $"The parent account of envelope '{transaction.CreditEnvelope.Name}' with id '{transaction.CreditEnvelope.Id}' could not be found."); + + if (transaction.DebitEnvelope != null && transaction.DebitEnvelope.Account == null) + return ErrorOrFalse(errorOnFail, $"The parent account of envelope '{transaction.DebitEnvelope.Name}' with id '{transaction.DebitEnvelope.Id}' could not be found."); + + // Accounts cannot be the same + if (transaction.DebitAccount != null && transaction.CreditAccount != null && + transaction.DebitAccount.Id == transaction.CreditAccount.Id) + return ErrorOrFalse(errorOnFail, "The debit and credit accounts of a transaction cannot be the same."); + + // Envelopes cannot be the same + if (transaction.DebitEnvelope != null && transaction.CreditEnvelope != null && + transaction.DebitEnvelope.Id == transaction.CreditEnvelope.Id) + return ErrorOrFalse(errorOnFail, "The debit and credit envelopes of a transaction cannot be the same."); + + // Envelopes must be child of underlying parent account + if (transaction.DebitEnvelope != null && transaction.DebitAccount != null && + transaction.DebitEnvelope.Account.Id != transaction.DebitAccount.Id) + return ErrorOrFalse(errorOnFail, "The debit envelope of a transaction must be a child of the debit account."); + + if (transaction.CreditEnvelope != null && transaction.CreditAccount != null && + transaction.CreditEnvelope.Account.Id != transaction.CreditAccount.Id) + return ErrorOrFalse(errorOnFail, "The credit envelope of a transaction must be a child of the credit account."); + + // If just envelopes are specified, they must belong to the same parent account, or add appropriate accounts + if (transaction.CreditEnvelope != null + && transaction.DebitEnvelope != null + && (transaction.DebitAccount != null || transaction.CreditAccount != null)) + { + // There is an account specified when the envelopes are of the same account + if (transaction.CreditEnvelope.Account.Id == transaction.DebitEnvelope.Account.Id) + { + transaction.CreditAccount = null; + transaction.DebitAccount = null; + } + else + // There are envelopes from different accounts, without the underlying accounts specified + { + transaction.CreditAccount = transaction.CreditEnvelope.Account; + transaction.DebitAccount = transaction.DebitEnvelope.Account; + } + } + + // Transaction Duplication Check - External ID + if (!string.IsNullOrWhiteSpace(transaction.ExternalId) && _context.Transactions.Any(x => x.ExternalId == transaction.ExternalId)) + return ErrorOrFalse(errorOnFail, "Transaction with the external ID '" + transaction.ExternalId + "' already exists"); + + // Transaction Duplication Check - All other fields + if (_context.Transactions.Any(x => + x.Description == transaction.Description + && x.Date == transaction.Date + && x.DebitAccount == transaction.DebitAccount + && x.CreditAccount == transaction.CreditAccount + && x.DebitEnvelope == transaction.DebitEnvelope + && x.CreditEnvelope == transaction.CreditEnvelope + && x.Amount == transaction.Amount)) + { + return ErrorOrFalse(errorOnFail, "Transaction with the same fields already exists"); + } + + return true; + } + + private void UpdateAccountsAndEnvelopes(Transaction transaction, bool invert = false) + { + _logger.LogInformation($"Updating accounts and envelopes affected by transaction '{transaction.Id}'."); + + decimal debitAmount = invert ? transaction.Amount : -transaction.Amount; + decimal creditAmount = invert ? -transaction.Amount : transaction.Amount; + + if (transaction.DebitAccount != null) + _context.AddAmountToAccount(transaction.DebitAccount.Id, debitAmount); + + if (transaction.CreditAccount != null) + _context.AddAmountToAccount(transaction.CreditAccount.Id, creditAmount); + + if (transaction.DebitEnvelope != null) + _context.AddAmountToEnvelope(transaction.DebitEnvelope.Id, debitAmount); + + if (transaction.CreditEnvelope != null) + _context.AddAmountToEnvelope(transaction.CreditEnvelope.Id, creditAmount); + } + + public void Delete(int id) + { + var transaction = getTransaction(id); + _context.Transactions.Remove(transaction); + _context.SaveChanges(); + + UpdateAccountsAndEnvelopes(transaction, true); + } + + private Transaction getTransaction(int id) + { + var transaction = _context.Transactions + .Include(t => t.DebitEnvelope) + .Include(t => t.DebitAccount) + .Include(t => t.CreditAccount) + .Include(t => t.CreditEnvelope) + .Include(t => t.CurrencyType) + .FirstOrDefault(t => t.Id == id); + + if (transaction == null) + throw new KeyNotFoundException("Transaction not found"); + + return transaction; + } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Services/UserService.cs b/AAIntegration.SimmonsBank.API/Services/UserService.cs index 7e18ae1..db98382 100644 --- a/AAIntegration.SimmonsBank.API/Services/UserService.cs +++ b/AAIntegration.SimmonsBank.API/Services/UserService.cs @@ -1,100 +1,155 @@ namespace AAIntegration.SimmonsBank.API.Services; +using AutoMapper; +using BCrypt.Net; +using AAIntegration.SimmonsBank.API.Entities; +using AAIntegration.SimmonsBank.API.Config; +using AAIntegration.SimmonsBank.API.Models.Users; using System; using System.Collections; using System.Collections.Generic; using Microsoft.EntityFrameworkCore.Internal; using Microsoft.IdentityModel.Tokens; using System.Text; +using System.IdentityModel.Tokens.Jwt; using System.Security.Claims; using Microsoft.Extensions.Options; -using AAIntegration.SimmonsBank.API.Entities; -using AAIntegration.SimmonsBank.API.Models.Users; -using AAIntegration.SimmonsBank.API.Helpers; -using AAIntegration.SimmonsBank.API.Configs; -using System.Security.Cryptography; public interface IUserService { - string Create(UserCreateRequest model); - //IEnumerable GetAll(); - //User GetById(int id); - void Update(string apiKey, UserUpdateRequest model); - void Delete(string apiKey); + AuthenticateResponse Authenticate(AuthenticateRequest model); + void Register(RegisterRequest model); + IEnumerable GetAll(); + User GetById(int id); + void Update(int id, UserUpdateRequest model); + void Delete(int id); Dictionary GetAllApiKeys(); - //string GetUserApiKey(int id); - //void InvalidateApiKey(string apiKey); - //string CreateUserApiKey(int id); + string GetUserApiKey(int id); + void InvalidateApiKey(string apiKey); + string CreateUserApiKey(int id); } public class UserService : IUserService { private DataContext _context; - private readonly AppSettings _appSettings; + private readonly IMapper _mapper; + private readonly IApiKeyService _apiKeyService; + private readonly IOptions _appSettings; public UserService( DataContext context, + IMapper mapper, + IApiKeyService apiKeyService, IOptions appSettings) { + _apiKeyService = apiKeyService; _context = context; - _appSettings = appSettings.Value; + _mapper = mapper; + _appSettings = appSettings; } - public string Create(UserCreateRequest model) + public AuthenticateResponse Authenticate(AuthenticateRequest model) { - User user = new User(); - user.SimmonsBankUsername = model.Username; - user.SimmonsBankPassword = model.Password; - user.MFAKey = model.MFAKey; + var user = _context.Users.SingleOrDefault(x => x.Username == model.Username); - // Generate API Key - user.ApiKey = generateApiKey(); + // validate + if (user == null || !BCrypt.Verify(model.Password, user.PasswordHash)) + throw new AppException("Username or password is incorrect"); + + // Authentication successful + + // Create Claims + var claims = new List + { + new Claim(ClaimTypes.NameIdentifier, user.Id.ToString()), + new Claim(ClaimTypes.Name, user.Username), + }; + + // Create JWT Token + var secretKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(_appSettings.Value.Secret)); + var signinCredentials = new SigningCredentials(secretKey, SecurityAlgorithms.HmacSha256Signature); + var tokeOptions = new JwtSecurityToken( + issuer: _appSettings.Value.APIUrl, + audience: _appSettings.Value.APIUrl, + claims: claims, + expires: DateTime.Now.AddDays(7), + signingCredentials: signinCredentials + ); + var tokenString = new JwtSecurityTokenHandler().WriteToken(tokeOptions); + + var response = _mapper.Map(user); + response.Token = tokenString; + return response; + } + + public void Register(RegisterRequest model) + { + // validate username + if (_context.Users.Any(x => x.Username == model.Username)) + throw new AppException("Username '" + model.Username + "' is already taken"); + + // validate email + if (_context.Users.Any(x => x.Email == model.Email)) + throw new AppException("Email '" + model.Email + "' is already taken"); + + // map model to new user object + var user = _mapper.Map(model); + + // hash password + user.PasswordHash = BCrypt.HashPassword(model.Password); // save user _context.Users.Add(user); _context.SaveChanges(); - - // Return API Key - return user.ApiKey; } - /*public IEnumerable GetAll() + public IEnumerable GetAll() { return _context.Users; - }*/ + } - /*public User GetById(int id) + public User GetById(int id) { return getUser(id); - }*/ + } - public void Update(string apiKey, UserUpdateRequest model) + public void Update(int id, UserUpdateRequest model) { - var user = getUser(apiKey); + var user = getUser(id); - // User.Username - if (model.Username != null) - user.SimmonsBankUsername = model.Username; + // validate + if (model.Email != user.Email && _context.Users.Any(x => x.Email == model.Email)) + throw new AppException("User with the email '" + model.Email + "' already exists"); - // User.Password - if (model.Password != null) - user.SimmonsBankPassword = model.Password; - - // User.MFAKey - if (model.MFAKey != null) - user.MFAKey = model.MFAKey; + // hash password if it was entered + if (!string.IsNullOrEmpty(model.Password)) + user.PasswordHash = BCrypt.HashPassword(model.Password); + // copy model to user and save + _mapper.Map(model, user); _context.Users.Update(user); _context.SaveChanges(); } - public void Delete(string apiKey) + public void Delete(int id) { - var user = getUser(apiKey); + var user = getUser(id); _context.Users.Remove(user); _context.SaveChanges(); } + public string CreateUserApiKey(int id) + { + var user = getUser(id); + + user.ApiKey = _apiKeyService.GenerateApiKey(); + + _context.Users.Update(user); + _context.SaveChanges(); + + return user.ApiKey; + } + public Dictionary GetAllApiKeys() { return _context.Users @@ -102,18 +157,18 @@ public class UserService : IUserService .ToDictionary(u => u.ApiKey, u => u.Id); } - /*public string GetUserApiKey(int id) + public string GetUserApiKey(int id) { return this.getUser(id).ApiKey; - }*/ + } - /*public void InvalidateApiKey(string apiKey) + public void InvalidateApiKey(string apiKey) { User? user = _context.Users.FirstOrDefault(u => u.ApiKey == apiKey); if (user is not null) user.ApiKey = null; - }*/ + } // helper methods @@ -123,31 +178,4 @@ public class UserService : IUserService if (user == null) throw new KeyNotFoundException("User not found"); return user; } - - private User getUser(string ApiKey) - { - var user = _context.Users - .Where(u => u.ApiKey == ApiKey) - .FirstOrDefault(); - - if (user == null) throw new KeyNotFoundException("User not found"); - return user; - } - - private const string _prefix = "CT-"; - private const int _numberOfSecureBytesToGenerate = 32; - private const int _lengthOfKey = 32; - - private string generateApiKey() - { - var bytes = RandomNumberGenerator.GetBytes(_numberOfSecureBytesToGenerate); - - string base64String = Convert.ToBase64String(bytes) - .Replace("+", "-") - .Replace("/", "_"); - - var keyLength = _lengthOfKey - _prefix.Length; - - return _prefix + base64String[..keyLength]; - } } \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Services/VersionService.cs b/AAIntegration.SimmonsBank.API/Services/VersionService.cs new file mode 100644 index 0000000..7ff9ef7 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Services/VersionService.cs @@ -0,0 +1,35 @@ +namespace AAIntegration.SimmonsBank.API.Services; + +using AutoMapper; +using AAIntegration.SimmonsBank.API.Entities; +using AAIntegration.SimmonsBank.API.Config; +using AAIntegration.SimmonsBank.API.Models.Accounts; +using System.Collections.Generic; +using System.Linq; +using System; +using System.Security.Policy; + +public interface IVersionService +{ + string GetVersion(); +} + +public class VersionService : IVersionService +{ + const string APP_VERSION = "1.0.0"; + + ILogger _logger; + + public VersionService( + ILogger logger) + { + _logger = logger; + + _logger.LogInformation("App Version: " + APP_VERSION); + } + + public string GetVersion() + { + return APP_VERSION; + } +} \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/Workers/EnvelopeFundWorker.cs b/AAIntegration.SimmonsBank.API/Workers/EnvelopeFundWorker.cs new file mode 100644 index 0000000..cd48219 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/Workers/EnvelopeFundWorker.cs @@ -0,0 +1,49 @@ +using System; +using AAIntegration.SimmonsBank.API.Configs; +using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.Options; +using AAIntegration.SimmonsBank.API.Processes; +using AAIntegration.SimmonsBank.API.Services; + +namespace AAIntegration.SimmonsBank.API.Workers; + +public class EnvelopeFundWorker : BackgroundService +{ + private readonly EnvelopeFundConfig _config; + private readonly IEnvelopeFundingProcess _envelopeFundingProcess; + private readonly ILogger _logger; + private readonly IServiceScopeFactory _serviceScopeFactory; + + public EnvelopeFundWorker(IOptions config, IEnvelopeFundingProcess envelopeFundingProcess, ILogger logger, IServiceScopeFactory serviceScopeFactory) + { + _config = config.Value; + _envelopeFundingProcess = envelopeFundingProcess; + _logger = logger; + _serviceScopeFactory = serviceScopeFactory; + } + + protected override async Task ExecuteAsync(CancellationToken stoppingToken) + { + DateTime? lastExecutedOn = null; + + using (var scope = _serviceScopeFactory.CreateScope()) + { + IEnvelopeService envelopeService = scope.ServiceProvider.GetService(); + + // This is how we keep the app running (in the background) + while (!stoppingToken.IsCancellationRequested) + { + if (lastExecutedOn != null) + { + int minutesRemaining = _config.CheckIntervalInMinutes - (int)DateTime.UtcNow.Subtract(lastExecutedOn.Value).TotalMinutes; + await Task.Delay(TimeSpan.FromMinutes(minutesRemaining < 0 ? 0 : minutesRemaining), stoppingToken); + } + + lastExecutedOn = DateTime.UtcNow; + _logger.LogInformation("EnvelopeFundWorker running at: {time}", DateTimeOffset.Now); + + await _envelopeFundingProcess.FundEnvelopes(envelopeService); + } + } + } +} diff --git a/AAIntegration.SimmonsBank.API/appsettings.Development.json b/AAIntegration.SimmonsBank.API/appsettings.Development.json index 0c208ae..a11de08 100644 --- a/AAIntegration.SimmonsBank.API/appsettings.Development.json +++ b/AAIntegration.SimmonsBank.API/appsettings.Development.json @@ -1,8 +1,10 @@ -{ - "Logging": { - "LogLevel": { - "Default": "Information", - "Microsoft.AspNetCore": "Warning" - } - } -} +{ + "Logging": { + "LogLevel": { + "Default": "Information", + "Microsoft": "Warning", + "Microsoft.AspNetCore.SpaProxy": "Information", + "Microsoft.Hosting.Lifetime": "Information" + } + } +} diff --git a/AAIntegration.SimmonsBank.API/appsettings.json b/AAIntegration.SimmonsBank.API/appsettings.json index fe27cc7..d4c9ada 100644 --- a/AAIntegration.SimmonsBank.API/appsettings.json +++ b/AAIntegration.SimmonsBank.API/appsettings.json @@ -1,20 +1,31 @@ { + "ActiveAllocator": { + "Database": { + "Host": "localhost", + "Name": "AAISB_DB", + "User": "postgres", + "Password": "nqA3UV3CliLLHpLL", + "Port": "15432" + }, + "AllowedHosts": [ + "*" + ] + }, + "ConnectionStrings": { + "PSQLConnection": "Server=localhost;Port=15432;Database=aadb;User Id=postgres;Password=nqA3UV3CliLLHpLL" + }, "Logging": { "LogLevel": { "Default": "Information", - "Microsoft.AspNetCore": "Warning" + "Microsoft": "Warning", + "Microsoft.Hosting.Lifetime": "Information" } }, - "AllowedHosts": "*", "AppSettings": { "Secret": "5de80277015f9fd564c4d1cc2cf827dbb1774cd66e7d79aa258d9c35a9f67f32fc6cf0dc24244242bd9501288e0fd69e315b", - "APIUrl": "https://localhost:5279" + "APIUrl": "https://localhost:7260" }, - "Database": { - "Host": "localhost", - "Name": "AAISB_DB", - "User": "postgres", - "Password": "nqA3UV3CliLLHpLL", - "Port": "15432" - } + "EnvelopeFund": { + "CheckIntervalInMinutes": 10 + } } diff --git a/AAIntegration.SimmonsBank.API/docker-compose.yml b/AAIntegration.SimmonsBank.API/docker-compose.yml new file mode 100644 index 0000000..e103696 --- /dev/null +++ b/AAIntegration.SimmonsBank.API/docker-compose.yml @@ -0,0 +1,30 @@ +version: '3.4' + +services: + activeallocator-site: + image: activeallocator:1.0.0 + container_name: activeallocator + env_file: + - .env + # environment: + # - ActiveAllocator__Database__Port=15432 + #build: + #context: . + #dockerfile: MoviesAPI/Dockerfile + ports: + - 80:80 + - 7555:7260 + depends_on: + - database + + database: + container_name: activeallocator-db + image: 'postgres:15' + #ports: + # - 15432:5432 + env_file: + - .env + #networks: + # - postgres-network + volumes: + - ./pg-db_data/:/var/lib/postgresql/data/ diff --git a/AAIntegration.SimmonsBank.API/obj/AAIntegration.SimmonsBank.API.csproj.nuget.dgspec.json b/AAIntegration.SimmonsBank.API/obj/AAIntegration.SimmonsBank.API.csproj.nuget.dgspec.json index 5097b63..db6a622 100644 --- a/AAIntegration.SimmonsBank.API/obj/AAIntegration.SimmonsBank.API.csproj.nuget.dgspec.json +++ b/AAIntegration.SimmonsBank.API/obj/AAIntegration.SimmonsBank.API.csproj.nuget.dgspec.json @@ -38,35 +38,59 @@ "net7.0": { "targetAlias": "net7.0", "dependencies": { - "Microsoft.AspNetCore.Authorization": { + "AutoMapper": { "target": "Package", - "version": "[7.0.0, )" + "version": "[12.0.1, )" }, - "Microsoft.AspNetCore.OpenApi": { + "AutoMapper.Extensions.Microsoft.DependencyInjection": { "target": "Package", - "version": "[7.0.15, )" + "version": "[12.0.1, )" + }, + "BCrypt.Net": { + "target": "Package", + "version": "[0.1.0, )" + }, + "Microsoft.AspNetCore.Authentication.JwtBearer": { + "target": "Package", + "version": "[7.0.16, )" + }, + "Microsoft.AspNetCore.SpaProxy": { + "target": "Package", + "version": "[7.0.13, )" }, "Microsoft.EntityFrameworkCore": { "target": "Package", - "version": "[7.0.0, )" + "version": "[7.0.9, )" }, "Microsoft.EntityFrameworkCore.Design": { "include": "Runtime, Build, Native, ContentFiles, Analyzers, BuildTransitive", "suppressParent": "All", "target": "Package", - "version": "[7.0.0, )" + "version": "[7.0.9, )" }, "Microsoft.IdentityModel.Tokens": { "target": "Package", - "version": "[7.0.0, )" + "version": "[6.35.0, )" + }, + "Microsoft.NET.Build.Containers": { + "target": "Package", + "version": "[7.0.400, )" + }, + "Microsoft.VisualStudio.Web.CodeGeneration.Design": { + "target": "Package", + "version": "[7.0.8, )" }, "Npgsql.EntityFrameworkCore.PostgreSQL": { "target": "Package", - "version": "[7.0.0, )" + "version": "[7.0.4, )" }, "Swashbuckle.AspNetCore": { "target": "Package", "version": "[6.5.0, )" + }, + "System.IdentityModel.Tokens.Jwt": { + "target": "Package", + "version": "[6.35.0, )" } }, "imports": [ @@ -84,6 +108,18 @@ { "name": "Microsoft.AspNetCore.App.Ref", "version": "[7.0.15, 7.0.15]" + }, + { + "name": "Microsoft.AspNetCore.App.Runtime.linux-x64", + "version": "[7.0.15, 7.0.15]" + }, + { + "name": "Microsoft.NETCore.App.Host.linux-x64", + "version": "[7.0.15, 7.0.15]" + }, + { + "name": "Microsoft.NETCore.App.Runtime.linux-x64", + "version": "[7.0.15, 7.0.15]" } ], "frameworkReferences": { @@ -96,6 +132,11 @@ }, "runtimeIdentifierGraphPath": "/usr/share/dotnet/sdk/7.0.115/RuntimeIdentifierGraph.json" } + }, + "runtimes": { + "linux-x64": { + "#import": [] + } } } } diff --git a/AAIntegration.SimmonsBank.API/obj/AAIntegration.SimmonsBank.API.csproj.nuget.g.props b/AAIntegration.SimmonsBank.API/obj/AAIntegration.SimmonsBank.API.csproj.nuget.g.props index f1e3a40..741abfd 100644 --- a/AAIntegration.SimmonsBank.API/obj/AAIntegration.SimmonsBank.API.csproj.nuget.g.props +++ b/AAIntegration.SimmonsBank.API/obj/AAIntegration.SimmonsBank.API.csproj.nuget.g.props @@ -15,10 +15,13 @@ - - + + + /home/william/.nuget/packages/microsoft.extensions.apidescription.server/6.0.5 + /home/william/.nuget/packages/microsoft.codeanalysis.analyzers/3.3.3 + /home/william/.nuget/packages/microsoft.codeanalysis.analyzerutilities/3.3.0 \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/obj/AAIntegration.SimmonsBank.API.csproj.nuget.g.targets b/AAIntegration.SimmonsBank.API/obj/AAIntegration.SimmonsBank.API.csproj.nuget.g.targets index 6fd9d39..a07a096 100644 --- a/AAIntegration.SimmonsBank.API/obj/AAIntegration.SimmonsBank.API.csproj.nuget.g.targets +++ b/AAIntegration.SimmonsBank.API/obj/AAIntegration.SimmonsBank.API.csproj.nuget.g.targets @@ -4,5 +4,7 @@ + + \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/obj/project.assets.json b/AAIntegration.SimmonsBank.API/obj/project.assets.json index a27ef08..660063d 100644 --- a/AAIntegration.SimmonsBank.API/obj/project.assets.json +++ b/AAIntegration.SimmonsBank.API/obj/project.assets.json @@ -2,10 +2,105 @@ "version": 3, "targets": { "net7.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": {} + } + }, + "BCrypt.Net/0.1.0": { + "type": "package", + "compile": { + "lib/net35/BCrypt.Net.dll": { + "related": ".XML" + } + }, + "runtime": { + "lib/net35/BCrypt.Net.dll": { + "related": ".XML" + } + } + }, + "Humanizer/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core.af": "2.14.1", + "Humanizer.Core.ar": "2.14.1", + "Humanizer.Core.az": "2.14.1", + "Humanizer.Core.bg": "2.14.1", + "Humanizer.Core.bn-BD": "2.14.1", + "Humanizer.Core.cs": "2.14.1", + "Humanizer.Core.da": "2.14.1", + "Humanizer.Core.de": "2.14.1", + "Humanizer.Core.el": "2.14.1", + "Humanizer.Core.es": "2.14.1", + "Humanizer.Core.fa": "2.14.1", + "Humanizer.Core.fi-FI": "2.14.1", + "Humanizer.Core.fr": "2.14.1", + "Humanizer.Core.fr-BE": "2.14.1", + "Humanizer.Core.he": "2.14.1", + "Humanizer.Core.hr": "2.14.1", + "Humanizer.Core.hu": "2.14.1", + "Humanizer.Core.hy": "2.14.1", + "Humanizer.Core.id": "2.14.1", + "Humanizer.Core.is": "2.14.1", + "Humanizer.Core.it": "2.14.1", + "Humanizer.Core.ja": "2.14.1", + "Humanizer.Core.ko-KR": "2.14.1", + "Humanizer.Core.ku": "2.14.1", + "Humanizer.Core.lv": "2.14.1", + "Humanizer.Core.ms-MY": "2.14.1", + "Humanizer.Core.mt": "2.14.1", + "Humanizer.Core.nb": "2.14.1", + "Humanizer.Core.nb-NO": "2.14.1", + "Humanizer.Core.nl": "2.14.1", + "Humanizer.Core.pl": "2.14.1", + "Humanizer.Core.pt": "2.14.1", + "Humanizer.Core.ro": "2.14.1", + "Humanizer.Core.ru": "2.14.1", + "Humanizer.Core.sk": "2.14.1", + "Humanizer.Core.sl": "2.14.1", + "Humanizer.Core.sr": "2.14.1", + "Humanizer.Core.sr-Latn": "2.14.1", + "Humanizer.Core.sv": "2.14.1", + "Humanizer.Core.th-TH": "2.14.1", + "Humanizer.Core.tr": "2.14.1", + "Humanizer.Core.uk": "2.14.1", + "Humanizer.Core.uz-Cyrl-UZ": "2.14.1", + "Humanizer.Core.uz-Latn-UZ": "2.14.1", + "Humanizer.Core.vi": "2.14.1", + "Humanizer.Core.zh-CN": "2.14.1", + "Humanizer.Core.zh-Hans": "2.14.1", + "Humanizer.Core.zh-Hant": "2.14.1" + } + }, "Humanizer.Core/2.14.1": { "type": "package", "compile": { - "lib/net6.0/_._": { + "lib/net6.0/Humanizer.dll": { "related": ".xml" } }, @@ -15,49 +110,546 @@ } } }, - "Microsoft.AspNetCore.Authorization/7.0.0": { + "Humanizer.Core.af/2.14.1": { "type": "package", "dependencies": { - "Microsoft.AspNetCore.Metadata": "7.0.0", - "Microsoft.Extensions.Logging.Abstractions": "7.0.0", - "Microsoft.Extensions.Options": "7.0.0" + "Humanizer.Core": "[2.14.1]" }, - "compile": { - "lib/net7.0/Microsoft.AspNetCore.Authorization.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net7.0/Microsoft.AspNetCore.Authorization.dll": { - "related": ".xml" + "resource": { + "lib/net6.0/af/Humanizer.resources.dll": { + "locale": "af" } } }, - "Microsoft.AspNetCore.Metadata/7.0.0": { + "Humanizer.Core.ar/2.14.1": { "type": "package", - "compile": { - "lib/net7.0/Microsoft.AspNetCore.Metadata.dll": { - "related": ".xml" - } + "dependencies": { + "Humanizer.Core": "[2.14.1]" }, - "runtime": { - "lib/net7.0/Microsoft.AspNetCore.Metadata.dll": { - "related": ".xml" + "resource": { + "lib/net6.0/ar/Humanizer.resources.dll": { + "locale": "ar" } } }, - "Microsoft.AspNetCore.OpenApi/7.0.15": { + "Humanizer.Core.az/2.14.1": { "type": "package", "dependencies": { - "Microsoft.OpenApi": "1.4.3" + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/az/Humanizer.resources.dll": { + "locale": "az" + } + } + }, + "Humanizer.Core.bg/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/bg/Humanizer.resources.dll": { + "locale": "bg" + } + } + }, + "Humanizer.Core.bn-BD/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/bn-BD/Humanizer.resources.dll": { + "locale": "bn-BD" + } + } + }, + "Humanizer.Core.cs/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/cs/Humanizer.resources.dll": { + "locale": "cs" + } + } + }, + "Humanizer.Core.da/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/da/Humanizer.resources.dll": { + "locale": "da" + } + } + }, + "Humanizer.Core.de/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/de/Humanizer.resources.dll": { + "locale": "de" + } + } + }, + "Humanizer.Core.el/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/el/Humanizer.resources.dll": { + "locale": "el" + } + } + }, + "Humanizer.Core.es/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/es/Humanizer.resources.dll": { + "locale": "es" + } + } + }, + "Humanizer.Core.fa/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/fa/Humanizer.resources.dll": { + "locale": "fa" + } + } + }, + "Humanizer.Core.fi-FI/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/fi-FI/Humanizer.resources.dll": { + "locale": "fi-FI" + } + } + }, + "Humanizer.Core.fr/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/fr/Humanizer.resources.dll": { + "locale": "fr" + } + } + }, + "Humanizer.Core.fr-BE/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/fr-BE/Humanizer.resources.dll": { + "locale": "fr-BE" + } + } + }, + "Humanizer.Core.he/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/he/Humanizer.resources.dll": { + "locale": "he" + } + } + }, + "Humanizer.Core.hr/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/hr/Humanizer.resources.dll": { + "locale": "hr" + } + } + }, + "Humanizer.Core.hu/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/hu/Humanizer.resources.dll": { + "locale": "hu" + } + } + }, + "Humanizer.Core.hy/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/hy/Humanizer.resources.dll": { + "locale": "hy" + } + } + }, + "Humanizer.Core.id/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/id/Humanizer.resources.dll": { + "locale": "id" + } + } + }, + "Humanizer.Core.is/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/is/Humanizer.resources.dll": { + "locale": "is" + } + } + }, + "Humanizer.Core.it/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/it/Humanizer.resources.dll": { + "locale": "it" + } + } + }, + "Humanizer.Core.ja/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/ja/Humanizer.resources.dll": { + "locale": "ja" + } + } + }, + "Humanizer.Core.ko-KR/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/netstandard2.0/ko-KR/Humanizer.resources.dll": { + "locale": "ko-KR" + } + } + }, + "Humanizer.Core.ku/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/ku/Humanizer.resources.dll": { + "locale": "ku" + } + } + }, + "Humanizer.Core.lv/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/lv/Humanizer.resources.dll": { + "locale": "lv" + } + } + }, + "Humanizer.Core.ms-MY/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/netstandard2.0/ms-MY/Humanizer.resources.dll": { + "locale": "ms-MY" + } + } + }, + "Humanizer.Core.mt/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/netstandard2.0/mt/Humanizer.resources.dll": { + "locale": "mt" + } + } + }, + "Humanizer.Core.nb/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/nb/Humanizer.resources.dll": { + "locale": "nb" + } + } + }, + "Humanizer.Core.nb-NO/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/nb-NO/Humanizer.resources.dll": { + "locale": "nb-NO" + } + } + }, + "Humanizer.Core.nl/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/nl/Humanizer.resources.dll": { + "locale": "nl" + } + } + }, + "Humanizer.Core.pl/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/pl/Humanizer.resources.dll": { + "locale": "pl" + } + } + }, + "Humanizer.Core.pt/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/pt/Humanizer.resources.dll": { + "locale": "pt" + } + } + }, + "Humanizer.Core.ro/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/ro/Humanizer.resources.dll": { + "locale": "ro" + } + } + }, + "Humanizer.Core.ru/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/ru/Humanizer.resources.dll": { + "locale": "ru" + } + } + }, + "Humanizer.Core.sk/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/sk/Humanizer.resources.dll": { + "locale": "sk" + } + } + }, + "Humanizer.Core.sl/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/sl/Humanizer.resources.dll": { + "locale": "sl" + } + } + }, + "Humanizer.Core.sr/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/sr/Humanizer.resources.dll": { + "locale": "sr" + } + } + }, + "Humanizer.Core.sr-Latn/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/sr-Latn/Humanizer.resources.dll": { + "locale": "sr-Latn" + } + } + }, + "Humanizer.Core.sv/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/sv/Humanizer.resources.dll": { + "locale": "sv" + } + } + }, + "Humanizer.Core.th-TH/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/netstandard2.0/th-TH/Humanizer.resources.dll": { + "locale": "th-TH" + } + } + }, + "Humanizer.Core.tr/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/tr/Humanizer.resources.dll": { + "locale": "tr" + } + } + }, + "Humanizer.Core.uk/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/uk/Humanizer.resources.dll": { + "locale": "uk" + } + } + }, + "Humanizer.Core.uz-Cyrl-UZ/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/uz-Cyrl-UZ/Humanizer.resources.dll": { + "locale": "uz-Cyrl-UZ" + } + } + }, + "Humanizer.Core.uz-Latn-UZ/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/uz-Latn-UZ/Humanizer.resources.dll": { + "locale": "uz-Latn-UZ" + } + } + }, + "Humanizer.Core.vi/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/vi/Humanizer.resources.dll": { + "locale": "vi" + } + } + }, + "Humanizer.Core.zh-CN/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/zh-CN/Humanizer.resources.dll": { + "locale": "zh-CN" + } + } + }, + "Humanizer.Core.zh-Hans/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/zh-Hans/Humanizer.resources.dll": { + "locale": "zh-Hans" + } + } + }, + "Humanizer.Core.zh-Hant/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/zh-Hant/Humanizer.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.AspNetCore.Authentication.JwtBearer/7.0.16": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.Protocols.OpenIdConnect": "6.35.0" }, "compile": { - "lib/net7.0/Microsoft.AspNetCore.OpenApi.dll": { + "lib/net7.0/Microsoft.AspNetCore.Authentication.JwtBearer.dll": { "related": ".xml" } }, "runtime": { - "lib/net7.0/Microsoft.AspNetCore.OpenApi.dll": { + "lib/net7.0/Microsoft.AspNetCore.Authentication.JwtBearer.dll": { "related": ".xml" } }, @@ -65,11 +657,603 @@ "Microsoft.AspNetCore.App" ] }, - "Microsoft.EntityFrameworkCore/7.0.0": { + "Microsoft.AspNetCore.Razor.Language/6.0.11": { + "type": "package", + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Razor.Language.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Razor.Language.dll": {} + } + }, + "Microsoft.AspNetCore.SpaProxy/7.0.13": { + "type": "package", + "compile": { + "lib/net7.0/Microsoft.AspNetCore.SpaProxy.dll": {} + }, + "runtime": { + "lib/net7.0/Microsoft.AspNetCore.SpaProxy.dll": {} + }, + "frameworkReferences": [ + "Microsoft.AspNetCore.App" + ], + "build": { + "build/Microsoft.AspNetCore.SpaProxy.targets": {} + } + }, + "Microsoft.Bcl.AsyncInterfaces/6.0.0": { + "type": "package", + "compile": { + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { + "related": ".xml" + } + } + }, + "Microsoft.Build/17.3.2": { "type": "package", "dependencies": { - "Microsoft.EntityFrameworkCore.Abstractions": "7.0.0", - "Microsoft.EntityFrameworkCore.Analyzers": "7.0.0", + "Microsoft.Build.Framework": "17.3.2", + "Microsoft.NET.StringTools": "17.3.2", + "System.Collections.Immutable": "6.0.0", + "System.Configuration.ConfigurationManager": "6.0.0", + "System.Reflection.Metadata": "6.0.0", + "System.Reflection.MetadataLoadContext": "6.0.0", + "System.Security.Principal.Windows": "5.0.0", + "System.Text.Encoding.CodePages": "6.0.0", + "System.Text.Json": "6.0.0", + "System.Threading.Tasks.Dataflow": "6.0.0" + }, + "compile": { + "ref/net6.0/Microsoft.Build.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/Microsoft.Build.dll": { + "related": ".pdb;.xml" + } + } + }, + "Microsoft.Build.Framework/17.3.2": { + "type": "package", + "dependencies": { + "System.Security.Permissions": "6.0.0" + }, + "compile": { + "ref/net6.0/Microsoft.Build.Framework.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/Microsoft.Build.Framework.dll": { + "related": ".pdb;.xml" + } + } + }, + "Microsoft.CodeAnalysis.Analyzers/3.3.3": { + "type": "package", + "build": { + "build/_._": {} + } + }, + "Microsoft.CodeAnalysis.AnalyzerUtilities/3.3.0": { + "type": "package", + "compile": { + "lib/netstandard2.0/Microsoft.CodeAnalysis.AnalyzerUtilities.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.CodeAnalysis.AnalyzerUtilities.dll": { + "related": ".xml" + } + } + }, + "Microsoft.CodeAnalysis.Common/4.4.0": { + "type": "package", + "dependencies": { + "Microsoft.CodeAnalysis.Analyzers": "3.3.3", + "System.Collections.Immutable": "6.0.0", + "System.Memory": "4.5.5", + "System.Reflection.Metadata": "5.0.0", + "System.Runtime.CompilerServices.Unsafe": "6.0.0", + "System.Text.Encoding.CodePages": "6.0.0", + "System.Threading.Tasks.Extensions": "4.5.4" + }, + "compile": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.dll": { + "related": ".pdb;.xml" + } + }, + "resource": { + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.CodeAnalysis.CSharp/4.4.0": { + "type": "package", + "dependencies": { + "Microsoft.CodeAnalysis.Common": "[4.4.0]" + }, + "compile": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.dll": { + "related": ".pdb;.xml" + } + }, + "resource": { + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.CodeAnalysis.CSharp.Features/4.4.0": { + "type": "package", + "dependencies": { + "Humanizer.Core": "2.14.1", + "Microsoft.CodeAnalysis.CSharp": "[4.4.0]", + "Microsoft.CodeAnalysis.CSharp.Workspaces": "[4.4.0]", + "Microsoft.CodeAnalysis.Common": "[4.4.0]", + "Microsoft.CodeAnalysis.Features": "[4.4.0]", + "Microsoft.CodeAnalysis.Workspaces.Common": "[4.4.0]" + }, + "compile": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.Features.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.Features.dll": { + "related": ".pdb;.xml" + } + }, + "resource": { + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.Features.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.Features.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.Features.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.Features.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.Features.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.Features.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.Features.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.Features.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.Features.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.Features.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.Features.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.Features.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.Features.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.CodeAnalysis.CSharp.Workspaces/4.4.0": { + "type": "package", + "dependencies": { + "Humanizer.Core": "2.14.1", + "Microsoft.CodeAnalysis.CSharp": "[4.4.0]", + "Microsoft.CodeAnalysis.Common": "[4.4.0]", + "Microsoft.CodeAnalysis.Workspaces.Common": "[4.4.0]" + }, + "compile": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.Workspaces.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.Workspaces.dll": { + "related": ".pdb;.xml" + } + }, + "resource": { + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.CodeAnalysis.Elfie/1.0.0": { + "type": "package", + "dependencies": { + "System.Configuration.ConfigurationManager": "4.5.0", + "System.Data.DataSetExtensions": "4.5.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.CodeAnalysis.Elfie.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.CodeAnalysis.Elfie.dll": {} + } + }, + "Microsoft.CodeAnalysis.Features/4.4.0": { + "type": "package", + "dependencies": { + "Microsoft.CodeAnalysis.AnalyzerUtilities": "3.3.0", + "Microsoft.CodeAnalysis.Common": "[4.4.0]", + "Microsoft.CodeAnalysis.Elfie": "1.0.0", + "Microsoft.CodeAnalysis.Scripting.Common": "[4.4.0]", + "Microsoft.CodeAnalysis.Workspaces.Common": "[4.4.0]", + "Microsoft.DiaSymReader": "1.4.0", + "System.Text.Json": "6.0.0", + "System.Threading.Tasks.Extensions": "4.5.4" + }, + "compile": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Features.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Features.dll": { + "related": ".pdb;.xml" + } + }, + "resource": { + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.Features.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.Features.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.Features.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.Features.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.Features.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.Features.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.Features.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.Features.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.Features.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.Features.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.Features.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.Features.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.Features.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.CodeAnalysis.Razor/6.0.11": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Razor.Language": "6.0.11", + "Microsoft.CodeAnalysis.CSharp": "4.0.0", + "Microsoft.CodeAnalysis.Common": "4.0.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.CodeAnalysis.Razor.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.CodeAnalysis.Razor.dll": {} + } + }, + "Microsoft.CodeAnalysis.Scripting.Common/4.4.0": { + "type": "package", + "dependencies": { + "Microsoft.CodeAnalysis.Common": "[4.4.0]" + }, + "compile": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Scripting.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Scripting.dll": { + "related": ".pdb;.xml" + } + }, + "resource": { + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.Scripting.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.Scripting.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.Scripting.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.Scripting.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.Scripting.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.Scripting.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.Scripting.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.Scripting.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.Scripting.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.Scripting.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.Scripting.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.Scripting.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.Scripting.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.CodeAnalysis.Workspaces.Common/4.4.0": { + "type": "package", + "dependencies": { + "Humanizer.Core": "2.14.1", + "Microsoft.Bcl.AsyncInterfaces": "6.0.0", + "Microsoft.CodeAnalysis.Common": "[4.4.0]", + "System.Composition": "6.0.0", + "System.IO.Pipelines": "6.0.3" + }, + "compile": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Workspaces.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Workspaces.dll": { + "related": ".pdb;.xml" + } + }, + "resource": { + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.CSharp/4.7.0": { + "type": "package", + "compile": { + "ref/netcoreapp2.0/_._": {} + }, + "runtime": { + "lib/netcoreapp2.0/_._": {} + } + }, + "Microsoft.DiaSymReader/1.4.0": { + "type": "package", + "dependencies": { + "NETStandard.Library": "1.6.1" + }, + "compile": { + "lib/netstandard1.1/Microsoft.DiaSymReader.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/netstandard1.1/Microsoft.DiaSymReader.dll": { + "related": ".pdb;.xml" + } + } + }, + "Microsoft.DotNet.Scaffolding.Shared/7.0.8": { + "type": "package", + "dependencies": { + "Humanizer": "2.14.1", + "Microsoft.CodeAnalysis.CSharp.Features": "4.4.0", + "Newtonsoft.Json": "13.0.1", + "NuGet.ProjectModel": "6.3.1" + }, + "compile": { + "lib/net7.0/Microsoft.DotNet.Scaffolding.Shared.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.DotNet.Scaffolding.Shared.dll": { + "related": ".xml" + } + } + }, + "Microsoft.EntityFrameworkCore/7.0.9": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore.Abstractions": "7.0.9", + "Microsoft.EntityFrameworkCore.Analyzers": "7.0.9", "Microsoft.Extensions.Caching.Memory": "7.0.0", "Microsoft.Extensions.DependencyInjection": "7.0.0", "Microsoft.Extensions.Logging": "7.0.0" @@ -88,7 +1272,7 @@ "buildTransitive/net6.0/Microsoft.EntityFrameworkCore.props": {} } }, - "Microsoft.EntityFrameworkCore.Abstractions/7.0.0": { + "Microsoft.EntityFrameworkCore.Abstractions/7.0.9": { "type": "package", "compile": { "lib/net6.0/Microsoft.EntityFrameworkCore.Abstractions.dll": { @@ -101,7 +1285,7 @@ } } }, - "Microsoft.EntityFrameworkCore.Analyzers/7.0.0": { + "Microsoft.EntityFrameworkCore.Analyzers/7.0.9": { "type": "package", "compile": { "lib/netstandard2.0/_._": {} @@ -110,11 +1294,11 @@ "lib/netstandard2.0/_._": {} } }, - "Microsoft.EntityFrameworkCore.Design/7.0.0": { + "Microsoft.EntityFrameworkCore.Design/7.0.9": { "type": "package", "dependencies": { "Humanizer.Core": "2.14.1", - "Microsoft.EntityFrameworkCore.Relational": "7.0.0", + "Microsoft.EntityFrameworkCore.Relational": "7.0.9", "Microsoft.Extensions.DependencyModel": "7.0.0", "Mono.TextTemplating": "2.2.1" }, @@ -132,10 +1316,10 @@ "build/net6.0/Microsoft.EntityFrameworkCore.Design.props": {} } }, - "Microsoft.EntityFrameworkCore.Relational/7.0.0": { + "Microsoft.EntityFrameworkCore.Relational/7.0.9": { "type": "package", "dependencies": { - "Microsoft.EntityFrameworkCore": "7.0.0", + "Microsoft.EntityFrameworkCore": "7.0.9", "Microsoft.Extensions.Configuration.Abstractions": "7.0.0" }, "compile": { @@ -350,7 +1534,7 @@ "buildTransitive/net6.0/_._": {} } }, - "Microsoft.IdentityModel.Abstractions/7.0.0": { + "Microsoft.IdentityModel.Abstractions/6.35.0": { "type": "package", "compile": { "lib/net6.0/Microsoft.IdentityModel.Abstractions.dll": { @@ -363,10 +1547,29 @@ } } }, - "Microsoft.IdentityModel.Logging/7.0.0": { + "Microsoft.IdentityModel.JsonWebTokens/6.35.0": { "type": "package", "dependencies": { - "Microsoft.IdentityModel.Abstractions": "7.0.0" + "Microsoft.IdentityModel.Tokens": "6.35.0", + "System.Text.Encoding": "4.3.0", + "System.Text.Encodings.Web": "4.7.2", + "System.Text.Json": "4.7.2" + }, + "compile": { + "lib/net6.0/Microsoft.IdentityModel.JsonWebTokens.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/Microsoft.IdentityModel.JsonWebTokens.dll": { + "related": ".xml" + } + } + }, + "Microsoft.IdentityModel.Logging/6.35.0": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.Abstractions": "6.35.0" }, "compile": { "lib/net6.0/Microsoft.IdentityModel.Logging.dll": { @@ -379,10 +1582,46 @@ } } }, - "Microsoft.IdentityModel.Tokens/7.0.0": { + "Microsoft.IdentityModel.Protocols/6.35.0": { "type": "package", "dependencies": { - "Microsoft.IdentityModel.Logging": "7.0.0" + "Microsoft.IdentityModel.Logging": "6.35.0", + "Microsoft.IdentityModel.Tokens": "6.35.0" + }, + "compile": { + "lib/net6.0/Microsoft.IdentityModel.Protocols.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/Microsoft.IdentityModel.Protocols.dll": { + "related": ".xml" + } + } + }, + "Microsoft.IdentityModel.Protocols.OpenIdConnect/6.35.0": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.Protocols": "6.35.0", + "System.IdentityModel.Tokens.Jwt": "6.35.0" + }, + "compile": { + "lib/net6.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll": { + "related": ".xml" + } + } + }, + "Microsoft.IdentityModel.Tokens/6.35.0": { + "type": "package", + "dependencies": { + "Microsoft.CSharp": "4.5.0", + "Microsoft.IdentityModel.Logging": "6.35.0", + "System.Security.Cryptography.Cng": "4.5.0" }, "compile": { "lib/net6.0/Microsoft.IdentityModel.Tokens.dll": { @@ -395,7 +1634,49 @@ } } }, - "Microsoft.OpenApi/1.4.3": { + "Microsoft.NET.Build.Containers/7.0.400": { + "type": "package", + "build": { + "build/Microsoft.NET.Build.Containers.props": {}, + "build/Microsoft.NET.Build.Containers.targets": {} + } + }, + "Microsoft.NET.StringTools/17.3.2": { + "type": "package", + "dependencies": { + "System.Memory": "4.5.5", + "System.Runtime.CompilerServices.Unsafe": "6.0.0" + }, + "compile": { + "ref/net6.0/Microsoft.NET.StringTools.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/Microsoft.NET.StringTools.dll": { + "related": ".pdb;.xml" + } + } + }, + "Microsoft.NETCore.Platforms/1.1.0": { + "type": "package", + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + } + }, + "Microsoft.NETCore.Targets/1.1.0": { + "type": "package", + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + } + }, + "Microsoft.OpenApi/1.2.3": { "type": "package", "compile": { "lib/netstandard2.0/Microsoft.OpenApi.dll": { @@ -408,6 +1689,165 @@ } } }, + "Microsoft.VisualStudio.Web.CodeGeneration/7.0.8": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "7.0.0", + "Microsoft.VisualStudio.Web.CodeGeneration.EntityFrameworkCore": "7.0.8" + }, + "compile": { + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.dll": { + "related": ".xml" + } + } + }, + "Microsoft.VisualStudio.Web.CodeGeneration.Core/7.0.8": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "7.0.0", + "Microsoft.VisualStudio.Web.CodeGeneration.Templating": "7.0.8", + "Newtonsoft.Json": "13.0.1" + }, + "compile": { + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.Core.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.Core.dll": { + "related": ".xml" + } + } + }, + "Microsoft.VisualStudio.Web.CodeGeneration.Design/7.0.8": { + "type": "package", + "dependencies": { + "Microsoft.DotNet.Scaffolding.Shared": "7.0.8", + "Microsoft.VisualStudio.Web.CodeGenerators.Mvc": "7.0.8" + }, + "compile": { + "lib/net7.0/dotnet-aspnet-codegenerator-design.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/dotnet-aspnet-codegenerator-design.dll": { + "related": ".xml" + } + } + }, + "Microsoft.VisualStudio.Web.CodeGeneration.EntityFrameworkCore/7.0.8": { + "type": "package", + "dependencies": { + "Microsoft.DotNet.Scaffolding.Shared": "7.0.8", + "Microsoft.VisualStudio.Web.CodeGeneration.Core": "7.0.8" + }, + "compile": { + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.EntityFrameworkCore.dll": { + "related": ".runtimeconfig.json;.xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.EntityFrameworkCore.dll": { + "related": ".runtimeconfig.json;.xml" + } + } + }, + "Microsoft.VisualStudio.Web.CodeGeneration.Templating/7.0.8": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Razor.Language": "6.0.11", + "Microsoft.CodeAnalysis.CSharp": "4.4.0", + "Microsoft.CodeAnalysis.Razor": "6.0.11", + "Microsoft.VisualStudio.Web.CodeGeneration.Utils": "7.0.8" + }, + "compile": { + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.Templating.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.Templating.dll": { + "related": ".xml" + } + } + }, + "Microsoft.VisualStudio.Web.CodeGeneration.Utils/7.0.8": { + "type": "package", + "dependencies": { + "Microsoft.Build": "17.3.2", + "Microsoft.CodeAnalysis.CSharp.Workspaces": "4.4.0", + "Microsoft.DotNet.Scaffolding.Shared": "7.0.8", + "Newtonsoft.Json": "13.0.1" + }, + "compile": { + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.Utils.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.Utils.dll": { + "related": ".xml" + } + } + }, + "Microsoft.VisualStudio.Web.CodeGenerators.Mvc/7.0.8": { + "type": "package", + "dependencies": { + "Microsoft.DotNet.Scaffolding.Shared": "7.0.8", + "Microsoft.VisualStudio.Web.CodeGeneration": "7.0.8" + }, + "compile": { + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGenerators.Mvc.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGenerators.Mvc.dll": { + "related": ".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" + } + } + }, + "Microsoft.Win32.SystemEvents/6.0.0": { + "type": "package", + "compile": { + "lib/net6.0/Microsoft.Win32.SystemEvents.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/Microsoft.Win32.SystemEvents.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + }, + "runtimeTargets": { + "runtimes/win/lib/net6.0/Microsoft.Win32.SystemEvents.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, "Mono.TextTemplating/2.2.1": { "type": "package", "dependencies": { @@ -420,11 +1860,72 @@ "lib/netstandard2.0/Mono.TextTemplating.dll": {} } }, - "Npgsql/7.0.0": { + "NETStandard.Library/1.6.1": { "type": "package", "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "6.0.0", - "System.Runtime.CompilerServices.Unsafe": "6.0.0" + "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" + } + }, + "Newtonsoft.Json/13.0.1": { + "type": "package", + "compile": { + "lib/netstandard2.0/Newtonsoft.Json.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Newtonsoft.Json.dll": { + "related": ".xml" + } + } + }, + "Npgsql/7.0.4": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "6.0.0" }, "compile": { "lib/net7.0/Npgsql.dll": { @@ -437,13 +1938,13 @@ } } }, - "Npgsql.EntityFrameworkCore.PostgreSQL/7.0.0": { + "Npgsql.EntityFrameworkCore.PostgreSQL/7.0.4": { "type": "package", "dependencies": { - "Microsoft.EntityFrameworkCore": "[7.0.0, 8.0.0)", - "Microsoft.EntityFrameworkCore.Abstractions": "[7.0.0, 8.0.0)", - "Microsoft.EntityFrameworkCore.Relational": "[7.0.0, 8.0.0)", - "Npgsql": "7.0.0" + "Microsoft.EntityFrameworkCore": "[7.0.5, 8.0.0)", + "Microsoft.EntityFrameworkCore.Abstractions": "[7.0.5, 8.0.0)", + "Microsoft.EntityFrameworkCore.Relational": "[7.0.5, 8.0.0)", + "Npgsql": "7.0.4" }, "compile": { "lib/net7.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll": { @@ -456,6 +1957,323 @@ } } }, + "NuGet.Common/6.3.1": { + "type": "package", + "dependencies": { + "NuGet.Frameworks": "6.3.1" + }, + "compile": { + "lib/netstandard2.0/NuGet.Common.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/NuGet.Common.dll": { + "related": ".xml" + } + } + }, + "NuGet.Configuration/6.3.1": { + "type": "package", + "dependencies": { + "NuGet.Common": "6.3.1", + "System.Security.Cryptography.ProtectedData": "4.4.0" + }, + "compile": { + "lib/netstandard2.0/NuGet.Configuration.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/NuGet.Configuration.dll": { + "related": ".xml" + } + } + }, + "NuGet.DependencyResolver.Core/6.3.1": { + "type": "package", + "dependencies": { + "NuGet.Configuration": "6.3.1", + "NuGet.LibraryModel": "6.3.1", + "NuGet.Protocol": "6.3.1" + }, + "compile": { + "lib/net5.0/NuGet.DependencyResolver.Core.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net5.0/NuGet.DependencyResolver.Core.dll": { + "related": ".xml" + } + } + }, + "NuGet.Frameworks/6.3.1": { + "type": "package", + "compile": { + "lib/netstandard2.0/NuGet.Frameworks.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/NuGet.Frameworks.dll": { + "related": ".xml" + } + } + }, + "NuGet.LibraryModel/6.3.1": { + "type": "package", + "dependencies": { + "NuGet.Common": "6.3.1", + "NuGet.Versioning": "6.3.1" + }, + "compile": { + "lib/netstandard2.0/NuGet.LibraryModel.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/NuGet.LibraryModel.dll": { + "related": ".xml" + } + } + }, + "NuGet.Packaging/6.3.1": { + "type": "package", + "dependencies": { + "Newtonsoft.Json": "13.0.1", + "NuGet.Configuration": "6.3.1", + "NuGet.Versioning": "6.3.1", + "System.Security.Cryptography.Cng": "5.0.0", + "System.Security.Cryptography.Pkcs": "5.0.0" + }, + "compile": { + "lib/net5.0/NuGet.Packaging.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net5.0/NuGet.Packaging.dll": { + "related": ".xml" + } + } + }, + "NuGet.ProjectModel/6.3.1": { + "type": "package", + "dependencies": { + "NuGet.DependencyResolver.Core": "6.3.1" + }, + "compile": { + "lib/net5.0/NuGet.ProjectModel.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net5.0/NuGet.ProjectModel.dll": { + "related": ".xml" + } + } + }, + "NuGet.Protocol/6.3.1": { + "type": "package", + "dependencies": { + "NuGet.Packaging": "6.3.1" + }, + "compile": { + "lib/net5.0/NuGet.Protocol.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net5.0/NuGet.Protocol.dll": { + "related": ".xml" + } + } + }, + "NuGet.Versioning/6.3.1": { + "type": "package", + "compile": { + "lib/netstandard2.0/NuGet.Versioning.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/NuGet.Versioning.dll": { + "related": ".xml" + } + } + }, + "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "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.0": { + "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.0": { + "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.0": { + "type": "package", + "dependencies": { + "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" + }, + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + } + }, + "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "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.0": { + "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.0": { + "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.0": { + "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.0": { + "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.0": { + "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.0": { + "type": "package", + "runtimeTargets": { + "runtimes/ubuntu.16.10-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "ubuntu.16.10-x64" + } + } + }, "Swashbuckle.AspNetCore/6.5.0": { "type": "package", "dependencies": { @@ -519,6 +2337,36 @@ "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/4.4.0": { "type": "package", "compile": { @@ -530,6 +2378,825 @@ "lib/netstandard2.0/System.CodeDom.dll": {} } }, + "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/6.0.0": { + "type": "package", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "6.0.0" + }, + "compile": { + "lib/net6.0/System.Collections.Immutable.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Collections.Immutable.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Composition/6.0.0": { + "type": "package", + "dependencies": { + "System.Composition.AttributedModel": "6.0.0", + "System.Composition.Convention": "6.0.0", + "System.Composition.Hosting": "6.0.0", + "System.Composition.Runtime": "6.0.0", + "System.Composition.TypedParts": "6.0.0" + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Composition.AttributedModel/6.0.0": { + "type": "package", + "compile": { + "lib/net6.0/System.Composition.AttributedModel.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Composition.AttributedModel.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Composition.Convention/6.0.0": { + "type": "package", + "dependencies": { + "System.Composition.AttributedModel": "6.0.0" + }, + "compile": { + "lib/net6.0/System.Composition.Convention.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Composition.Convention.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Composition.Hosting/6.0.0": { + "type": "package", + "dependencies": { + "System.Composition.Runtime": "6.0.0" + }, + "compile": { + "lib/net6.0/System.Composition.Hosting.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Composition.Hosting.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Composition.Runtime/6.0.0": { + "type": "package", + "compile": { + "lib/net6.0/System.Composition.Runtime.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Composition.Runtime.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Composition.TypedParts/6.0.0": { + "type": "package", + "dependencies": { + "System.Composition.AttributedModel": "6.0.0", + "System.Composition.Hosting": "6.0.0", + "System.Composition.Runtime": "6.0.0" + }, + "compile": { + "lib/net6.0/System.Composition.TypedParts.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Composition.TypedParts.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Configuration.ConfigurationManager/6.0.0": { + "type": "package", + "dependencies": { + "System.Security.Cryptography.ProtectedData": "6.0.0", + "System.Security.Permissions": "6.0.0" + }, + "compile": { + "lib/net6.0/System.Configuration.ConfigurationManager.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Configuration.ConfigurationManager.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "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.Data.DataSetExtensions/4.5.0": { + "type": "package", + "compile": { + "ref/netstandard2.0/System.Data.DataSetExtensions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/System.Data.DataSetExtensions.dll": {} + } + }, + "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/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Tracing": "4.3.0", + "System.Reflection": "4.3.0", + "System.Runtime": "4.3.0", + "System.Threading": "4.3.0" + }, + "compile": { + "lib/netstandard1.3/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.3/System.Diagnostics.DiagnosticSource.dll": { + "related": ".xml" + } + } + }, + "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.Drawing.Common/6.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Win32.SystemEvents": "6.0.0" + }, + "compile": { + "lib/net6.0/System.Drawing.Common.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Drawing.Common.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + }, + "runtimeTargets": { + "runtimes/unix/lib/net6.0/System.Drawing.Common.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/net6.0/System.Drawing.Common.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Formats.Asn1/5.0.0": { + "type": "package", + "compile": { + "lib/netstandard2.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/System.Formats.Asn1.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/6.35.0": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.JsonWebTokens": "6.35.0", + "Microsoft.IdentityModel.Tokens": "6.35.0" + }, + "compile": { + "lib/net6.0/System.IdentityModel.Tokens.Jwt.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.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/6.0.3": { + "type": "package", + "compile": { + "lib/net6.0/System.IO.Pipelines.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.IO.Pipelines.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "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.Memory/4.5.5": { + "type": "package", + "compile": { + "ref/netcoreapp2.1/_._": {} + }, + "runtime": { + "lib/netcoreapp2.1/_._": {} + } + }, + "System.Net.Http/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "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.0" + }, + "compile": { + "ref/netstandard1.3/System.Net.Http.dll": { + "related": ".xml" + } + }, + "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.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/6.0.0": { + "type": "package", + "dependencies": { + "System.Collections.Immutable": "6.0.0" + }, + "compile": { + "lib/net6.0/System.Reflection.Metadata.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Reflection.Metadata.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Reflection.MetadataLoadContext/6.0.0": { + "type": "package", + "dependencies": { + "System.Collections.Immutable": "6.0.0", + "System.Reflection.Metadata": "6.0.0" + }, + "compile": { + "lib/net6.0/System.Reflection.MetadataLoadContext.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Reflection.MetadataLoadContext.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "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.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0" + }, + "compile": { + "ref/netstandard1.5/System.Runtime.dll": { + "related": ".xml" + } + } + }, "System.Runtime.CompilerServices.Unsafe/6.0.0": { "type": "package", "compile": { @@ -546,10 +3213,471 @@ "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.AccessControl/6.0.0": { + "type": "package", + "compile": { + "lib/net6.0/System.Security.AccessControl.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Security.AccessControl.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + }, + "runtimeTargets": { + "runtimes/win/lib/net6.0/System.Security.AccessControl.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "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/5.0.0": { + "type": "package", + "dependencies": { + "System.Formats.Asn1": "5.0.0" + }, + "compile": { + "ref/netcoreapp3.0/System.Security.Cryptography.Cng.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netcoreapp3.0/System.Security.Cryptography.Cng.dll": { + "related": ".xml" + } + }, + "runtimeTargets": { + "runtimes/win/lib/netcoreapp3.0/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.Pkcs/5.0.0": { + "type": "package", + "dependencies": { + "System.Formats.Asn1": "5.0.0", + "System.Security.Cryptography.Cng": "5.0.0" + }, + "compile": { + "ref/netcoreapp3.0/System.Security.Cryptography.Pkcs.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netcoreapp3.0/System.Security.Cryptography.Pkcs.dll": { + "related": ".xml" + } + }, + "runtimeTargets": { + "runtimes/win/lib/netcoreapp3.0/System.Security.Cryptography.Pkcs.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "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.ProtectedData/6.0.0": { + "type": "package", + "compile": { + "lib/net6.0/System.Security.Cryptography.ProtectedData.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Security.Cryptography.ProtectedData.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + }, + "runtimeTargets": { + "runtimes/win/lib/net6.0/System.Security.Cryptography.ProtectedData.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "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.Security.Permissions/6.0.0": { + "type": "package", + "dependencies": { + "System.Security.AccessControl": "6.0.0", + "System.Windows.Extensions": "6.0.0" + }, + "compile": { + "lib/net6.0/System.Security.Permissions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Security.Permissions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Security.Principal.Windows/5.0.0": { + "type": "package", + "compile": { + "ref/netcoreapp3.0/System.Security.Principal.Windows.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/System.Security.Principal.Windows.dll": { + "related": ".xml" + } + }, + "runtimeTargets": { + "runtimes/unix/lib/netcoreapp2.1/System.Security.Principal.Windows.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netcoreapp2.1/System.Security.Principal.Windows.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.CodePages/6.0.0": { + "type": "package", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "6.0.0" + }, + "compile": { + "lib/net6.0/System.Text.Encoding.CodePages.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Text.Encoding.CodePages.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + }, + "runtimeTargets": { + "runtimes/win/lib/net6.0/System.Text.Encoding.CodePages.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.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/7.0.0": { "type": "package", "compile": { - "lib/net7.0/_._": { + "lib/net7.0/System.Text.Encodings.Web.dll": { "related": ".xml" } }, @@ -574,7 +3702,7 @@ "System.Text.Encodings.Web": "7.0.0" }, "compile": { - "lib/net7.0/_._": { + "lib/net7.0/System.Text.Json.dll": { "related": ".xml" } }, @@ -586,10 +3714,4270 @@ "build": { "buildTransitive/net6.0/System.Text.Json.targets": {} } + }, + "System.Text.RegularExpressions/4.3.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.3.0" + }, + "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.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.Dataflow/6.0.0": { + "type": "package", + "compile": { + "lib/net6.0/System.Threading.Tasks.Dataflow.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Threading.Tasks.Dataflow.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Threading.Tasks.Extensions/4.5.4": { + "type": "package", + "compile": { + "ref/netcoreapp2.1/_._": {} + }, + "runtime": { + "lib/netcoreapp2.1/_._": {} + } + }, + "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.Windows.Extensions/6.0.0": { + "type": "package", + "dependencies": { + "System.Drawing.Common": "6.0.0" + }, + "compile": { + "lib/net6.0/System.Windows.Extensions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Windows.Extensions.dll": { + "related": ".xml" + } + }, + "runtimeTargets": { + "runtimes/win/lib/net6.0/System.Windows.Extensions.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "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": {} + } + } + }, + "net7.0/linux-x64": { + "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": {} + } + }, + "BCrypt.Net/0.1.0": { + "type": "package", + "compile": { + "lib/net35/BCrypt.Net.dll": { + "related": ".XML" + } + }, + "runtime": { + "lib/net35/BCrypt.Net.dll": { + "related": ".XML" + } + } + }, + "Humanizer/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core.af": "2.14.1", + "Humanizer.Core.ar": "2.14.1", + "Humanizer.Core.az": "2.14.1", + "Humanizer.Core.bg": "2.14.1", + "Humanizer.Core.bn-BD": "2.14.1", + "Humanizer.Core.cs": "2.14.1", + "Humanizer.Core.da": "2.14.1", + "Humanizer.Core.de": "2.14.1", + "Humanizer.Core.el": "2.14.1", + "Humanizer.Core.es": "2.14.1", + "Humanizer.Core.fa": "2.14.1", + "Humanizer.Core.fi-FI": "2.14.1", + "Humanizer.Core.fr": "2.14.1", + "Humanizer.Core.fr-BE": "2.14.1", + "Humanizer.Core.he": "2.14.1", + "Humanizer.Core.hr": "2.14.1", + "Humanizer.Core.hu": "2.14.1", + "Humanizer.Core.hy": "2.14.1", + "Humanizer.Core.id": "2.14.1", + "Humanizer.Core.is": "2.14.1", + "Humanizer.Core.it": "2.14.1", + "Humanizer.Core.ja": "2.14.1", + "Humanizer.Core.ko-KR": "2.14.1", + "Humanizer.Core.ku": "2.14.1", + "Humanizer.Core.lv": "2.14.1", + "Humanizer.Core.ms-MY": "2.14.1", + "Humanizer.Core.mt": "2.14.1", + "Humanizer.Core.nb": "2.14.1", + "Humanizer.Core.nb-NO": "2.14.1", + "Humanizer.Core.nl": "2.14.1", + "Humanizer.Core.pl": "2.14.1", + "Humanizer.Core.pt": "2.14.1", + "Humanizer.Core.ro": "2.14.1", + "Humanizer.Core.ru": "2.14.1", + "Humanizer.Core.sk": "2.14.1", + "Humanizer.Core.sl": "2.14.1", + "Humanizer.Core.sr": "2.14.1", + "Humanizer.Core.sr-Latn": "2.14.1", + "Humanizer.Core.sv": "2.14.1", + "Humanizer.Core.th-TH": "2.14.1", + "Humanizer.Core.tr": "2.14.1", + "Humanizer.Core.uk": "2.14.1", + "Humanizer.Core.uz-Cyrl-UZ": "2.14.1", + "Humanizer.Core.uz-Latn-UZ": "2.14.1", + "Humanizer.Core.vi": "2.14.1", + "Humanizer.Core.zh-CN": "2.14.1", + "Humanizer.Core.zh-Hans": "2.14.1", + "Humanizer.Core.zh-Hant": "2.14.1" + } + }, + "Humanizer.Core/2.14.1": { + "type": "package", + "compile": { + "lib/net6.0/Humanizer.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/Humanizer.dll": { + "related": ".xml" + } + } + }, + "Humanizer.Core.af/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/af/Humanizer.resources.dll": { + "locale": "af" + } + } + }, + "Humanizer.Core.ar/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/ar/Humanizer.resources.dll": { + "locale": "ar" + } + } + }, + "Humanizer.Core.az/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/az/Humanizer.resources.dll": { + "locale": "az" + } + } + }, + "Humanizer.Core.bg/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/bg/Humanizer.resources.dll": { + "locale": "bg" + } + } + }, + "Humanizer.Core.bn-BD/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/bn-BD/Humanizer.resources.dll": { + "locale": "bn-BD" + } + } + }, + "Humanizer.Core.cs/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/cs/Humanizer.resources.dll": { + "locale": "cs" + } + } + }, + "Humanizer.Core.da/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/da/Humanizer.resources.dll": { + "locale": "da" + } + } + }, + "Humanizer.Core.de/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/de/Humanizer.resources.dll": { + "locale": "de" + } + } + }, + "Humanizer.Core.el/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/el/Humanizer.resources.dll": { + "locale": "el" + } + } + }, + "Humanizer.Core.es/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/es/Humanizer.resources.dll": { + "locale": "es" + } + } + }, + "Humanizer.Core.fa/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/fa/Humanizer.resources.dll": { + "locale": "fa" + } + } + }, + "Humanizer.Core.fi-FI/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/fi-FI/Humanizer.resources.dll": { + "locale": "fi-FI" + } + } + }, + "Humanizer.Core.fr/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/fr/Humanizer.resources.dll": { + "locale": "fr" + } + } + }, + "Humanizer.Core.fr-BE/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/fr-BE/Humanizer.resources.dll": { + "locale": "fr-BE" + } + } + }, + "Humanizer.Core.he/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/he/Humanizer.resources.dll": { + "locale": "he" + } + } + }, + "Humanizer.Core.hr/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/hr/Humanizer.resources.dll": { + "locale": "hr" + } + } + }, + "Humanizer.Core.hu/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/hu/Humanizer.resources.dll": { + "locale": "hu" + } + } + }, + "Humanizer.Core.hy/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/hy/Humanizer.resources.dll": { + "locale": "hy" + } + } + }, + "Humanizer.Core.id/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/id/Humanizer.resources.dll": { + "locale": "id" + } + } + }, + "Humanizer.Core.is/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/is/Humanizer.resources.dll": { + "locale": "is" + } + } + }, + "Humanizer.Core.it/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/it/Humanizer.resources.dll": { + "locale": "it" + } + } + }, + "Humanizer.Core.ja/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/ja/Humanizer.resources.dll": { + "locale": "ja" + } + } + }, + "Humanizer.Core.ko-KR/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/netstandard2.0/ko-KR/Humanizer.resources.dll": { + "locale": "ko-KR" + } + } + }, + "Humanizer.Core.ku/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/ku/Humanizer.resources.dll": { + "locale": "ku" + } + } + }, + "Humanizer.Core.lv/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/lv/Humanizer.resources.dll": { + "locale": "lv" + } + } + }, + "Humanizer.Core.ms-MY/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/netstandard2.0/ms-MY/Humanizer.resources.dll": { + "locale": "ms-MY" + } + } + }, + "Humanizer.Core.mt/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/netstandard2.0/mt/Humanizer.resources.dll": { + "locale": "mt" + } + } + }, + "Humanizer.Core.nb/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/nb/Humanizer.resources.dll": { + "locale": "nb" + } + } + }, + "Humanizer.Core.nb-NO/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/nb-NO/Humanizer.resources.dll": { + "locale": "nb-NO" + } + } + }, + "Humanizer.Core.nl/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/nl/Humanizer.resources.dll": { + "locale": "nl" + } + } + }, + "Humanizer.Core.pl/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/pl/Humanizer.resources.dll": { + "locale": "pl" + } + } + }, + "Humanizer.Core.pt/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/pt/Humanizer.resources.dll": { + "locale": "pt" + } + } + }, + "Humanizer.Core.ro/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/ro/Humanizer.resources.dll": { + "locale": "ro" + } + } + }, + "Humanizer.Core.ru/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/ru/Humanizer.resources.dll": { + "locale": "ru" + } + } + }, + "Humanizer.Core.sk/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/sk/Humanizer.resources.dll": { + "locale": "sk" + } + } + }, + "Humanizer.Core.sl/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/sl/Humanizer.resources.dll": { + "locale": "sl" + } + } + }, + "Humanizer.Core.sr/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/sr/Humanizer.resources.dll": { + "locale": "sr" + } + } + }, + "Humanizer.Core.sr-Latn/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/sr-Latn/Humanizer.resources.dll": { + "locale": "sr-Latn" + } + } + }, + "Humanizer.Core.sv/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/sv/Humanizer.resources.dll": { + "locale": "sv" + } + } + }, + "Humanizer.Core.th-TH/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/netstandard2.0/th-TH/Humanizer.resources.dll": { + "locale": "th-TH" + } + } + }, + "Humanizer.Core.tr/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/tr/Humanizer.resources.dll": { + "locale": "tr" + } + } + }, + "Humanizer.Core.uk/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/uk/Humanizer.resources.dll": { + "locale": "uk" + } + } + }, + "Humanizer.Core.uz-Cyrl-UZ/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/uz-Cyrl-UZ/Humanizer.resources.dll": { + "locale": "uz-Cyrl-UZ" + } + } + }, + "Humanizer.Core.uz-Latn-UZ/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/uz-Latn-UZ/Humanizer.resources.dll": { + "locale": "uz-Latn-UZ" + } + } + }, + "Humanizer.Core.vi/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/vi/Humanizer.resources.dll": { + "locale": "vi" + } + } + }, + "Humanizer.Core.zh-CN/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/zh-CN/Humanizer.resources.dll": { + "locale": "zh-CN" + } + } + }, + "Humanizer.Core.zh-Hans/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/zh-Hans/Humanizer.resources.dll": { + "locale": "zh-Hans" + } + } + }, + "Humanizer.Core.zh-Hant/2.14.1": { + "type": "package", + "dependencies": { + "Humanizer.Core": "[2.14.1]" + }, + "resource": { + "lib/net6.0/zh-Hant/Humanizer.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.AspNetCore.Authentication.JwtBearer/7.0.16": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.Protocols.OpenIdConnect": "6.35.0" + }, + "compile": { + "lib/net7.0/Microsoft.AspNetCore.Authentication.JwtBearer.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.AspNetCore.Authentication.JwtBearer.dll": { + "related": ".xml" + } + }, + "frameworkReferences": [ + "Microsoft.AspNetCore.App" + ] + }, + "Microsoft.AspNetCore.Razor.Language/6.0.11": { + "type": "package", + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Razor.Language.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Razor.Language.dll": {} + } + }, + "Microsoft.AspNetCore.SpaProxy/7.0.13": { + "type": "package", + "compile": { + "lib/net7.0/Microsoft.AspNetCore.SpaProxy.dll": {} + }, + "runtime": { + "lib/net7.0/Microsoft.AspNetCore.SpaProxy.dll": {} + }, + "frameworkReferences": [ + "Microsoft.AspNetCore.App" + ], + "build": { + "build/Microsoft.AspNetCore.SpaProxy.targets": {} + } + }, + "Microsoft.Bcl.AsyncInterfaces/6.0.0": { + "type": "package", + "compile": { + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { + "related": ".xml" + } + } + }, + "Microsoft.Build/17.3.2": { + "type": "package", + "dependencies": { + "Microsoft.Build.Framework": "17.3.2", + "Microsoft.NET.StringTools": "17.3.2", + "System.Collections.Immutable": "6.0.0", + "System.Configuration.ConfigurationManager": "6.0.0", + "System.Reflection.Metadata": "6.0.0", + "System.Reflection.MetadataLoadContext": "6.0.0", + "System.Security.Principal.Windows": "5.0.0", + "System.Text.Encoding.CodePages": "6.0.0", + "System.Text.Json": "6.0.0", + "System.Threading.Tasks.Dataflow": "6.0.0" + }, + "compile": { + "ref/net6.0/Microsoft.Build.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/Microsoft.Build.dll": { + "related": ".pdb;.xml" + } + } + }, + "Microsoft.Build.Framework/17.3.2": { + "type": "package", + "dependencies": { + "System.Security.Permissions": "6.0.0" + }, + "compile": { + "ref/net6.0/Microsoft.Build.Framework.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/Microsoft.Build.Framework.dll": { + "related": ".pdb;.xml" + } + } + }, + "Microsoft.CodeAnalysis.Analyzers/3.3.3": { + "type": "package", + "build": { + "build/_._": {} + } + }, + "Microsoft.CodeAnalysis.AnalyzerUtilities/3.3.0": { + "type": "package", + "compile": { + "lib/netstandard2.0/Microsoft.CodeAnalysis.AnalyzerUtilities.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.CodeAnalysis.AnalyzerUtilities.dll": { + "related": ".xml" + } + } + }, + "Microsoft.CodeAnalysis.Common/4.4.0": { + "type": "package", + "dependencies": { + "Microsoft.CodeAnalysis.Analyzers": "3.3.3", + "System.Collections.Immutable": "6.0.0", + "System.Memory": "4.5.5", + "System.Reflection.Metadata": "5.0.0", + "System.Runtime.CompilerServices.Unsafe": "6.0.0", + "System.Text.Encoding.CodePages": "6.0.0", + "System.Threading.Tasks.Extensions": "4.5.4" + }, + "compile": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.dll": { + "related": ".pdb;.xml" + } + }, + "resource": { + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.CodeAnalysis.CSharp/4.4.0": { + "type": "package", + "dependencies": { + "Microsoft.CodeAnalysis.Common": "[4.4.0]" + }, + "compile": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.dll": { + "related": ".pdb;.xml" + } + }, + "resource": { + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.CodeAnalysis.CSharp.Features/4.4.0": { + "type": "package", + "dependencies": { + "Humanizer.Core": "2.14.1", + "Microsoft.CodeAnalysis.CSharp": "[4.4.0]", + "Microsoft.CodeAnalysis.CSharp.Workspaces": "[4.4.0]", + "Microsoft.CodeAnalysis.Common": "[4.4.0]", + "Microsoft.CodeAnalysis.Features": "[4.4.0]", + "Microsoft.CodeAnalysis.Workspaces.Common": "[4.4.0]" + }, + "compile": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.Features.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.Features.dll": { + "related": ".pdb;.xml" + } + }, + "resource": { + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.Features.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.Features.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.Features.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.Features.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.Features.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.Features.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.Features.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.Features.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.Features.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.Features.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.Features.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.Features.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.Features.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.CodeAnalysis.CSharp.Workspaces/4.4.0": { + "type": "package", + "dependencies": { + "Humanizer.Core": "2.14.1", + "Microsoft.CodeAnalysis.CSharp": "[4.4.0]", + "Microsoft.CodeAnalysis.Common": "[4.4.0]", + "Microsoft.CodeAnalysis.Workspaces.Common": "[4.4.0]" + }, + "compile": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.Workspaces.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.Workspaces.dll": { + "related": ".pdb;.xml" + } + }, + "resource": { + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.CodeAnalysis.Elfie/1.0.0": { + "type": "package", + "dependencies": { + "System.Configuration.ConfigurationManager": "4.5.0", + "System.Data.DataSetExtensions": "4.5.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.CodeAnalysis.Elfie.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.CodeAnalysis.Elfie.dll": {} + } + }, + "Microsoft.CodeAnalysis.Features/4.4.0": { + "type": "package", + "dependencies": { + "Microsoft.CodeAnalysis.AnalyzerUtilities": "3.3.0", + "Microsoft.CodeAnalysis.Common": "[4.4.0]", + "Microsoft.CodeAnalysis.Elfie": "1.0.0", + "Microsoft.CodeAnalysis.Scripting.Common": "[4.4.0]", + "Microsoft.CodeAnalysis.Workspaces.Common": "[4.4.0]", + "Microsoft.DiaSymReader": "1.4.0", + "System.Text.Json": "6.0.0", + "System.Threading.Tasks.Extensions": "4.5.4" + }, + "compile": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Features.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Features.dll": { + "related": ".pdb;.xml" + } + }, + "resource": { + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.Features.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.Features.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.Features.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.Features.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.Features.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.Features.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.Features.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.Features.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.Features.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.Features.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.Features.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.Features.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.Features.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.CodeAnalysis.Razor/6.0.11": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Razor.Language": "6.0.11", + "Microsoft.CodeAnalysis.CSharp": "4.0.0", + "Microsoft.CodeAnalysis.Common": "4.0.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.CodeAnalysis.Razor.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.CodeAnalysis.Razor.dll": {} + } + }, + "Microsoft.CodeAnalysis.Scripting.Common/4.4.0": { + "type": "package", + "dependencies": { + "Microsoft.CodeAnalysis.Common": "[4.4.0]" + }, + "compile": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Scripting.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Scripting.dll": { + "related": ".pdb;.xml" + } + }, + "resource": { + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.Scripting.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.Scripting.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.Scripting.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.Scripting.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.Scripting.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.Scripting.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.Scripting.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.Scripting.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.Scripting.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.Scripting.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.Scripting.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.Scripting.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.Scripting.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.CodeAnalysis.Workspaces.Common/4.4.0": { + "type": "package", + "dependencies": { + "Humanizer.Core": "2.14.1", + "Microsoft.Bcl.AsyncInterfaces": "6.0.0", + "Microsoft.CodeAnalysis.Common": "[4.4.0]", + "System.Composition": "6.0.0", + "System.IO.Pipelines": "6.0.3" + }, + "compile": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Workspaces.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Workspaces.dll": { + "related": ".pdb;.xml" + } + }, + "resource": { + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.CSharp/4.7.0": { + "type": "package", + "compile": { + "ref/netcoreapp2.0/_._": {} + }, + "runtime": { + "lib/netcoreapp2.0/_._": {} + } + }, + "Microsoft.DiaSymReader/1.4.0": { + "type": "package", + "dependencies": { + "NETStandard.Library": "1.6.1" + }, + "compile": { + "lib/netstandard1.1/Microsoft.DiaSymReader.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/netstandard1.1/Microsoft.DiaSymReader.dll": { + "related": ".pdb;.xml" + } + } + }, + "Microsoft.DotNet.Scaffolding.Shared/7.0.8": { + "type": "package", + "dependencies": { + "Humanizer": "2.14.1", + "Microsoft.CodeAnalysis.CSharp.Features": "4.4.0", + "Newtonsoft.Json": "13.0.1", + "NuGet.ProjectModel": "6.3.1" + }, + "compile": { + "lib/net7.0/Microsoft.DotNet.Scaffolding.Shared.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.DotNet.Scaffolding.Shared.dll": { + "related": ".xml" + } + } + }, + "Microsoft.EntityFrameworkCore/7.0.9": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore.Abstractions": "7.0.9", + "Microsoft.EntityFrameworkCore.Analyzers": "7.0.9", + "Microsoft.Extensions.Caching.Memory": "7.0.0", + "Microsoft.Extensions.DependencyInjection": "7.0.0", + "Microsoft.Extensions.Logging": "7.0.0" + }, + "compile": { + "lib/net6.0/Microsoft.EntityFrameworkCore.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/Microsoft.EntityFrameworkCore.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/Microsoft.EntityFrameworkCore.props": {} + } + }, + "Microsoft.EntityFrameworkCore.Abstractions/7.0.9": { + "type": "package", + "compile": { + "lib/net6.0/Microsoft.EntityFrameworkCore.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/Microsoft.EntityFrameworkCore.Abstractions.dll": { + "related": ".xml" + } + } + }, + "Microsoft.EntityFrameworkCore.Analyzers/7.0.9": { + "type": "package", + "compile": { + "lib/netstandard2.0/_._": {} + }, + "runtime": { + "lib/netstandard2.0/_._": {} + } + }, + "Microsoft.EntityFrameworkCore.Design/7.0.9": { + "type": "package", + "dependencies": { + "Humanizer.Core": "2.14.1", + "Microsoft.EntityFrameworkCore.Relational": "7.0.9", + "Microsoft.Extensions.DependencyModel": "7.0.0", + "Mono.TextTemplating": "2.2.1" + }, + "compile": { + "lib/net6.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/Microsoft.EntityFrameworkCore.Design.dll": { + "related": ".xml" + } + }, + "build": { + "build/net6.0/Microsoft.EntityFrameworkCore.Design.props": {} + } + }, + "Microsoft.EntityFrameworkCore.Relational/7.0.9": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore": "7.0.9", + "Microsoft.Extensions.Configuration.Abstractions": "7.0.0" + }, + "compile": { + "lib/net6.0/Microsoft.EntityFrameworkCore.Relational.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.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/7.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Primitives": "7.0.0" + }, + "compile": { + "lib/net7.0/Microsoft.Extensions.Caching.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.Extensions.Caching.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.Caching.Memory/7.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Caching.Abstractions": "7.0.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "7.0.0", + "Microsoft.Extensions.Logging.Abstractions": "7.0.0", + "Microsoft.Extensions.Options": "7.0.0", + "Microsoft.Extensions.Primitives": "7.0.0" + }, + "compile": { + "lib/net7.0/Microsoft.Extensions.Caching.Memory.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.Extensions.Caching.Memory.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.Configuration.Abstractions/7.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Primitives": "7.0.0" + }, + "compile": { + "lib/net7.0/Microsoft.Extensions.Configuration.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.Extensions.Configuration.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.DependencyInjection/7.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "7.0.0" + }, + "compile": { + "lib/net7.0/Microsoft.Extensions.DependencyInjection.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.Extensions.DependencyInjection.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/7.0.0": { + "type": "package", + "compile": { + "lib/net7.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.DependencyModel/7.0.0": { + "type": "package", + "dependencies": { + "System.Text.Encodings.Web": "7.0.0", + "System.Text.Json": "7.0.0" + }, + "compile": { + "lib/net7.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.Extensions.DependencyModel.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.Logging/7.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "7.0.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "7.0.0", + "Microsoft.Extensions.Logging.Abstractions": "7.0.0", + "Microsoft.Extensions.Options": "7.0.0" + }, + "compile": { + "lib/net7.0/Microsoft.Extensions.Logging.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.Extensions.Logging.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.Logging.Abstractions/7.0.0": { + "type": "package", + "compile": { + "lib/net7.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/Microsoft.Extensions.Logging.Abstractions.targets": {} + } + }, + "Microsoft.Extensions.Options/7.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "7.0.0", + "Microsoft.Extensions.Primitives": "7.0.0" + }, + "compile": { + "lib/net7.0/Microsoft.Extensions.Options.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.Extensions.Options.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.Primitives/7.0.0": { + "type": "package", + "compile": { + "lib/net7.0/Microsoft.Extensions.Primitives.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.Extensions.Primitives.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.IdentityModel.Abstractions/6.35.0": { + "type": "package", + "compile": { + "lib/net6.0/Microsoft.IdentityModel.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/Microsoft.IdentityModel.Abstractions.dll": { + "related": ".xml" + } + } + }, + "Microsoft.IdentityModel.JsonWebTokens/6.35.0": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.Tokens": "6.35.0", + "System.Text.Encoding": "4.3.0", + "System.Text.Encodings.Web": "4.7.2", + "System.Text.Json": "4.7.2" + }, + "compile": { + "lib/net6.0/Microsoft.IdentityModel.JsonWebTokens.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/Microsoft.IdentityModel.JsonWebTokens.dll": { + "related": ".xml" + } + } + }, + "Microsoft.IdentityModel.Logging/6.35.0": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.Abstractions": "6.35.0" + }, + "compile": { + "lib/net6.0/Microsoft.IdentityModel.Logging.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/Microsoft.IdentityModel.Logging.dll": { + "related": ".xml" + } + } + }, + "Microsoft.IdentityModel.Protocols/6.35.0": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.Logging": "6.35.0", + "Microsoft.IdentityModel.Tokens": "6.35.0" + }, + "compile": { + "lib/net6.0/Microsoft.IdentityModel.Protocols.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/Microsoft.IdentityModel.Protocols.dll": { + "related": ".xml" + } + } + }, + "Microsoft.IdentityModel.Protocols.OpenIdConnect/6.35.0": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.Protocols": "6.35.0", + "System.IdentityModel.Tokens.Jwt": "6.35.0" + }, + "compile": { + "lib/net6.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll": { + "related": ".xml" + } + } + }, + "Microsoft.IdentityModel.Tokens/6.35.0": { + "type": "package", + "dependencies": { + "Microsoft.CSharp": "4.5.0", + "Microsoft.IdentityModel.Logging": "6.35.0", + "System.Security.Cryptography.Cng": "4.5.0" + }, + "compile": { + "lib/net6.0/Microsoft.IdentityModel.Tokens.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/Microsoft.IdentityModel.Tokens.dll": { + "related": ".xml" + } + } + }, + "Microsoft.NET.Build.Containers/7.0.400": { + "type": "package", + "build": { + "build/Microsoft.NET.Build.Containers.props": {}, + "build/Microsoft.NET.Build.Containers.targets": {} + } + }, + "Microsoft.NET.StringTools/17.3.2": { + "type": "package", + "dependencies": { + "System.Memory": "4.5.5", + "System.Runtime.CompilerServices.Unsafe": "6.0.0" + }, + "compile": { + "ref/net6.0/Microsoft.NET.StringTools.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/Microsoft.NET.StringTools.dll": { + "related": ".pdb;.xml" + } + } + }, + "Microsoft.NETCore.Platforms/1.1.0": { + "type": "package", + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + } + }, + "Microsoft.NETCore.Targets/1.1.0": { + "type": "package", + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + } + }, + "Microsoft.OpenApi/1.2.3": { + "type": "package", + "compile": { + "lib/netstandard2.0/Microsoft.OpenApi.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.OpenApi.dll": { + "related": ".pdb;.xml" + } + } + }, + "Microsoft.VisualStudio.Web.CodeGeneration/7.0.8": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "7.0.0", + "Microsoft.VisualStudio.Web.CodeGeneration.EntityFrameworkCore": "7.0.8" + }, + "compile": { + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.dll": { + "related": ".xml" + } + } + }, + "Microsoft.VisualStudio.Web.CodeGeneration.Core/7.0.8": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "7.0.0", + "Microsoft.VisualStudio.Web.CodeGeneration.Templating": "7.0.8", + "Newtonsoft.Json": "13.0.1" + }, + "compile": { + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.Core.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.Core.dll": { + "related": ".xml" + } + } + }, + "Microsoft.VisualStudio.Web.CodeGeneration.Design/7.0.8": { + "type": "package", + "dependencies": { + "Microsoft.DotNet.Scaffolding.Shared": "7.0.8", + "Microsoft.VisualStudio.Web.CodeGenerators.Mvc": "7.0.8" + }, + "compile": { + "lib/net7.0/dotnet-aspnet-codegenerator-design.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/dotnet-aspnet-codegenerator-design.dll": { + "related": ".xml" + } + } + }, + "Microsoft.VisualStudio.Web.CodeGeneration.EntityFrameworkCore/7.0.8": { + "type": "package", + "dependencies": { + "Microsoft.DotNet.Scaffolding.Shared": "7.0.8", + "Microsoft.VisualStudio.Web.CodeGeneration.Core": "7.0.8" + }, + "compile": { + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.EntityFrameworkCore.dll": { + "related": ".runtimeconfig.json;.xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.EntityFrameworkCore.dll": { + "related": ".runtimeconfig.json;.xml" + } + } + }, + "Microsoft.VisualStudio.Web.CodeGeneration.Templating/7.0.8": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Razor.Language": "6.0.11", + "Microsoft.CodeAnalysis.CSharp": "4.4.0", + "Microsoft.CodeAnalysis.Razor": "6.0.11", + "Microsoft.VisualStudio.Web.CodeGeneration.Utils": "7.0.8" + }, + "compile": { + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.Templating.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.Templating.dll": { + "related": ".xml" + } + } + }, + "Microsoft.VisualStudio.Web.CodeGeneration.Utils/7.0.8": { + "type": "package", + "dependencies": { + "Microsoft.Build": "17.3.2", + "Microsoft.CodeAnalysis.CSharp.Workspaces": "4.4.0", + "Microsoft.DotNet.Scaffolding.Shared": "7.0.8", + "Newtonsoft.Json": "13.0.1" + }, + "compile": { + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.Utils.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.Utils.dll": { + "related": ".xml" + } + } + }, + "Microsoft.VisualStudio.Web.CodeGenerators.Mvc/7.0.8": { + "type": "package", + "dependencies": { + "Microsoft.DotNet.Scaffolding.Shared": "7.0.8", + "Microsoft.VisualStudio.Web.CodeGeneration": "7.0.8" + }, + "compile": { + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGenerators.Mvc.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGenerators.Mvc.dll": { + "related": ".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", + "runtime.unix.Microsoft.Win32.Primitives": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/Microsoft.Win32.Primitives.dll": { + "related": ".xml" + } + } + }, + "Microsoft.Win32.SystemEvents/6.0.0": { + "type": "package", + "compile": { + "lib/net6.0/Microsoft.Win32.SystemEvents.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/Microsoft.Win32.SystemEvents.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "Mono.TextTemplating/2.2.1": { + "type": "package", + "dependencies": { + "System.CodeDom": "4.4.0" + }, + "compile": { + "lib/netstandard2.0/_._": {} + }, + "runtime": { + "lib/netstandard2.0/Mono.TextTemplating.dll": {} + } + }, + "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" + } + }, + "Newtonsoft.Json/13.0.1": { + "type": "package", + "compile": { + "lib/netstandard2.0/Newtonsoft.Json.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Newtonsoft.Json.dll": { + "related": ".xml" + } + } + }, + "Npgsql/7.0.4": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "6.0.0" + }, + "compile": { + "lib/net7.0/Npgsql.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/Npgsql.dll": { + "related": ".xml" + } + } + }, + "Npgsql.EntityFrameworkCore.PostgreSQL/7.0.4": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore": "[7.0.5, 8.0.0)", + "Microsoft.EntityFrameworkCore.Abstractions": "[7.0.5, 8.0.0)", + "Microsoft.EntityFrameworkCore.Relational": "[7.0.5, 8.0.0)", + "Npgsql": "7.0.4" + }, + "compile": { + "lib/net7.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll": { + "related": ".xml" + } + } + }, + "NuGet.Common/6.3.1": { + "type": "package", + "dependencies": { + "NuGet.Frameworks": "6.3.1" + }, + "compile": { + "lib/netstandard2.0/NuGet.Common.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/NuGet.Common.dll": { + "related": ".xml" + } + } + }, + "NuGet.Configuration/6.3.1": { + "type": "package", + "dependencies": { + "NuGet.Common": "6.3.1", + "System.Security.Cryptography.ProtectedData": "4.4.0" + }, + "compile": { + "lib/netstandard2.0/NuGet.Configuration.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/NuGet.Configuration.dll": { + "related": ".xml" + } + } + }, + "NuGet.DependencyResolver.Core/6.3.1": { + "type": "package", + "dependencies": { + "NuGet.Configuration": "6.3.1", + "NuGet.LibraryModel": "6.3.1", + "NuGet.Protocol": "6.3.1" + }, + "compile": { + "lib/net5.0/NuGet.DependencyResolver.Core.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net5.0/NuGet.DependencyResolver.Core.dll": { + "related": ".xml" + } + } + }, + "NuGet.Frameworks/6.3.1": { + "type": "package", + "compile": { + "lib/netstandard2.0/NuGet.Frameworks.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/NuGet.Frameworks.dll": { + "related": ".xml" + } + } + }, + "NuGet.LibraryModel/6.3.1": { + "type": "package", + "dependencies": { + "NuGet.Common": "6.3.1", + "NuGet.Versioning": "6.3.1" + }, + "compile": { + "lib/netstandard2.0/NuGet.LibraryModel.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/NuGet.LibraryModel.dll": { + "related": ".xml" + } + } + }, + "NuGet.Packaging/6.3.1": { + "type": "package", + "dependencies": { + "Newtonsoft.Json": "13.0.1", + "NuGet.Configuration": "6.3.1", + "NuGet.Versioning": "6.3.1", + "System.Security.Cryptography.Cng": "5.0.0", + "System.Security.Cryptography.Pkcs": "5.0.0" + }, + "compile": { + "lib/net5.0/NuGet.Packaging.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net5.0/NuGet.Packaging.dll": { + "related": ".xml" + } + } + }, + "NuGet.ProjectModel/6.3.1": { + "type": "package", + "dependencies": { + "NuGet.DependencyResolver.Core": "6.3.1" + }, + "compile": { + "lib/net5.0/NuGet.ProjectModel.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net5.0/NuGet.ProjectModel.dll": { + "related": ".xml" + } + } + }, + "NuGet.Protocol/6.3.1": { + "type": "package", + "dependencies": { + "NuGet.Packaging": "6.3.1" + }, + "compile": { + "lib/net5.0/NuGet.Protocol.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net5.0/NuGet.Protocol.dll": { + "related": ".xml" + } + } + }, + "NuGet.Versioning/6.3.1": { + "type": "package", + "compile": { + "lib/netstandard2.0/NuGet.Versioning.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/NuGet.Versioning.dll": { + "related": ".xml" + } + } + }, + "runtime.any.System.Collections/4.3.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard/_._": {} + }, + "runtime": { + "lib/netstandard1.3/System.Collections.dll": {} + } + }, + "runtime.any.System.Diagnostics.Tools/4.3.0": { + "type": "package", + "compile": { + "ref/netstandard/_._": {} + }, + "runtime": { + "lib/netstandard1.3/System.Diagnostics.Tools.dll": {} + } + }, + "runtime.any.System.Diagnostics.Tracing/4.3.0": { + "type": "package", + "compile": { + "ref/netstandard/_._": {} + }, + "runtime": { + "lib/netstandard1.5/System.Diagnostics.Tracing.dll": {} + } + }, + "runtime.any.System.Globalization/4.3.0": { + "type": "package", + "compile": { + "ref/netstandard/_._": {} + }, + "runtime": { + "lib/netstandard1.3/System.Globalization.dll": {} + } + }, + "runtime.any.System.Globalization.Calendars/4.3.0": { + "type": "package", + "compile": { + "ref/netstandard/_._": {} + }, + "runtime": { + "lib/netstandard1.3/System.Globalization.Calendars.dll": {} + } + }, + "runtime.any.System.IO/4.3.0": { + "type": "package", + "compile": { + "ref/netstandard/_._": {} + }, + "runtime": { + "lib/netstandard1.5/System.IO.dll": {} + } + }, + "runtime.any.System.Reflection/4.3.0": { + "type": "package", + "compile": { + "ref/netstandard/_._": {} + }, + "runtime": { + "lib/netstandard1.5/System.Reflection.dll": {} + } + }, + "runtime.any.System.Reflection.Extensions/4.3.0": { + "type": "package", + "compile": { + "ref/netstandard/_._": {} + }, + "runtime": { + "lib/netstandard1.3/System.Reflection.Extensions.dll": {} + } + }, + "runtime.any.System.Reflection.Primitives/4.3.0": { + "type": "package", + "compile": { + "ref/netstandard/_._": {} + }, + "runtime": { + "lib/netstandard1.3/System.Reflection.Primitives.dll": {} + } + }, + "runtime.any.System.Resources.ResourceManager/4.3.0": { + "type": "package", + "compile": { + "ref/netstandard/_._": {} + }, + "runtime": { + "lib/netstandard1.3/System.Resources.ResourceManager.dll": {} + } + }, + "runtime.any.System.Runtime/4.3.0": { + "type": "package", + "dependencies": { + "System.Private.Uri": "4.3.0" + }, + "compile": { + "ref/netstandard/_._": {} + }, + "runtime": { + "lib/netstandard1.5/System.Runtime.dll": {} + } + }, + "runtime.any.System.Runtime.Handles/4.3.0": { + "type": "package", + "compile": { + "ref/netstandard/_._": {} + }, + "runtime": { + "lib/netstandard1.3/System.Runtime.Handles.dll": {} + } + }, + "runtime.any.System.Runtime.InteropServices/4.3.0": { + "type": "package", + "compile": { + "ref/netstandard/_._": {} + }, + "runtime": { + "lib/netstandard1.6/System.Runtime.InteropServices.dll": {} + } + }, + "runtime.any.System.Text.Encoding/4.3.0": { + "type": "package", + "compile": { + "ref/netstandard/_._": {} + }, + "runtime": { + "lib/netstandard1.3/System.Text.Encoding.dll": {} + } + }, + "runtime.any.System.Text.Encoding.Extensions/4.3.0": { + "type": "package", + "compile": { + "ref/netstandard/_._": {} + }, + "runtime": { + "lib/netstandard1.3/System.Text.Encoding.Extensions.dll": {} + } + }, + "runtime.any.System.Threading.Tasks/4.3.0": { + "type": "package", + "compile": { + "ref/netstandard/_._": {} + }, + "runtime": { + "lib/netstandard1.3/System.Threading.Tasks.dll": {} + } + }, + "runtime.any.System.Threading.Timer/4.3.0": { + "type": "package", + "compile": { + "ref/netstandard/_._": {} + }, + "runtime": { + "lib/netstandard1.3/System.Threading.Timer.dll": {} + } + }, + "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package" + }, + "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package" + }, + "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package" + }, + "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.0": { + "type": "package", + "dependencies": { + "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" + }, + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + } + }, + "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package" + }, + "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package" + }, + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple/4.3.0": { + "type": "package" + }, + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package" + }, + "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package" + }, + "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package" + }, + "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package" + }, + "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package" + }, + "runtime.unix.Microsoft.Win32.Primitives/4.3.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "runtime.native.System": "4.3.0" + }, + "compile": { + "ref/netstandard/_._": {} + }, + "runtime": { + "runtimes/unix/lib/netstandard1.3/Microsoft.Win32.Primitives.dll": {} + } + }, + "runtime.unix.System.Console/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.IO": "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.Text.Encoding": "4.3.0", + "System.Text.Encoding.Extensions": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0", + "runtime.native.System": "4.3.0" + }, + "compile": { + "ref/netstandard/_._": {} + }, + "runtime": { + "runtimes/unix/lib/netstandard1.3/System.Console.dll": {} + } + }, + "runtime.unix.System.Diagnostics.Debug/4.3.0": { + "type": "package", + "dependencies": { + "runtime.native.System": "4.3.0" + }, + "compile": { + "ref/netstandard/_._": {} + }, + "runtime": { + "runtimes/unix/lib/netstandard1.3/System.Diagnostics.Debug.dll": {} + } + }, + "runtime.unix.System.IO.FileSystem/4.3.0": { + "type": "package", + "dependencies": { + "System.Buffers": "4.3.0", + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.IO": "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.Text.Encoding": "4.3.0", + "System.Text.Encoding.Extensions": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0", + "runtime.native.System": "4.3.0" + }, + "compile": { + "ref/netstandard/_._": {} + }, + "runtime": { + "runtimes/unix/lib/netstandard1.3/System.IO.FileSystem.dll": {} + } + }, + "runtime.unix.System.Net.Primitives/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.Win32.Primitives": "4.3.0", + "System.Collections": "4.3.0", + "System.Diagnostics.Tracing": "4.3.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.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Threading": "4.3.0", + "runtime.native.System": "4.3.0" + }, + "compile": { + "ref/netstandard/_._": {} + }, + "runtime": { + "runtimes/unix/lib/netstandard1.3/System.Net.Primitives.dll": {} + } + }, + "runtime.unix.System.Net.Sockets/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.IO": "4.3.0", + "System.IO.FileSystem": "4.3.0", + "System.Net.NameResolution": "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.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0", + "System.Threading.ThreadPool": "4.3.0", + "runtime.native.System": "4.3.0" + }, + "compile": { + "ref/netstandard/_._": {} + }, + "runtime": { + "runtimes/unix/lib/netstandard1.3/System.Net.Sockets.dll": {} + } + }, + "runtime.unix.System.Private.Uri/4.3.0": { + "type": "package", + "dependencies": { + "runtime.native.System": "4.3.0" + }, + "compile": { + "ref/netstandard/_._": {} + }, + "runtime": { + "runtimes/unix/lib/netstandard1.0/System.Private.Uri.dll": {} + } + }, + "runtime.unix.System.Runtime.Extensions/4.3.0": { + "type": "package", + "dependencies": { + "System.Private.Uri": "4.3.0", + "runtime.native.System": "4.3.0", + "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" + }, + "compile": { + "ref/netstandard/_._": {} + }, + "runtime": { + "runtimes/unix/lib/netstandard1.5/System.Runtime.Extensions.dll": {} + } + }, + "Swashbuckle.AspNetCore/6.5.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.ApiDescription.Server": "6.0.5", + "Swashbuckle.AspNetCore.Swagger": "6.5.0", + "Swashbuckle.AspNetCore.SwaggerGen": "6.5.0", + "Swashbuckle.AspNetCore.SwaggerUI": "6.5.0" + }, + "build": { + "build/Swashbuckle.AspNetCore.props": {} + } + }, + "Swashbuckle.AspNetCore.Swagger/6.5.0": { + "type": "package", + "dependencies": { + "Microsoft.OpenApi": "1.2.3" + }, + "compile": { + "lib/net7.0/Swashbuckle.AspNetCore.Swagger.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/net7.0/Swashbuckle.AspNetCore.Swagger.dll": { + "related": ".pdb;.xml" + } + }, + "frameworkReferences": [ + "Microsoft.AspNetCore.App" + ] + }, + "Swashbuckle.AspNetCore.SwaggerGen/6.5.0": { + "type": "package", + "dependencies": { + "Swashbuckle.AspNetCore.Swagger": "6.5.0" + }, + "compile": { + "lib/net7.0/Swashbuckle.AspNetCore.SwaggerGen.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/net7.0/Swashbuckle.AspNetCore.SwaggerGen.dll": { + "related": ".pdb;.xml" + } + } + }, + "Swashbuckle.AspNetCore.SwaggerUI/6.5.0": { + "type": "package", + "compile": { + "lib/net7.0/Swashbuckle.AspNetCore.SwaggerUI.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/net7.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/System.Buffers.dll": {} + }, + "runtime": { + "lib/netstandard1.1/System.Buffers.dll": {} + } + }, + "System.CodeDom/4.4.0": { + "type": "package", + "compile": { + "ref/netstandard2.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/System.CodeDom.dll": {} + } + }, + "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", + "runtime.any.System.Collections": "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/6.0.0": { + "type": "package", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "6.0.0" + }, + "compile": { + "lib/net6.0/System.Collections.Immutable.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Collections.Immutable.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Composition/6.0.0": { + "type": "package", + "dependencies": { + "System.Composition.AttributedModel": "6.0.0", + "System.Composition.Convention": "6.0.0", + "System.Composition.Hosting": "6.0.0", + "System.Composition.Runtime": "6.0.0", + "System.Composition.TypedParts": "6.0.0" + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Composition.AttributedModel/6.0.0": { + "type": "package", + "compile": { + "lib/net6.0/System.Composition.AttributedModel.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Composition.AttributedModel.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Composition.Convention/6.0.0": { + "type": "package", + "dependencies": { + "System.Composition.AttributedModel": "6.0.0" + }, + "compile": { + "lib/net6.0/System.Composition.Convention.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Composition.Convention.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Composition.Hosting/6.0.0": { + "type": "package", + "dependencies": { + "System.Composition.Runtime": "6.0.0" + }, + "compile": { + "lib/net6.0/System.Composition.Hosting.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Composition.Hosting.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Composition.Runtime/6.0.0": { + "type": "package", + "compile": { + "lib/net6.0/System.Composition.Runtime.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Composition.Runtime.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Composition.TypedParts/6.0.0": { + "type": "package", + "dependencies": { + "System.Composition.AttributedModel": "6.0.0", + "System.Composition.Hosting": "6.0.0", + "System.Composition.Runtime": "6.0.0" + }, + "compile": { + "lib/net6.0/System.Composition.TypedParts.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Composition.TypedParts.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Configuration.ConfigurationManager/6.0.0": { + "type": "package", + "dependencies": { + "System.Security.Cryptography.ProtectedData": "6.0.0", + "System.Security.Permissions": "6.0.0" + }, + "compile": { + "lib/net6.0/System.Configuration.ConfigurationManager.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Configuration.ConfigurationManager.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "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", + "runtime.unix.System.Console": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Console.dll": { + "related": ".xml" + } + } + }, + "System.Data.DataSetExtensions/4.5.0": { + "type": "package", + "compile": { + "ref/netstandard2.0/System.Data.DataSetExtensions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/System.Data.DataSetExtensions.dll": {} + } + }, + "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", + "runtime.unix.System.Diagnostics.Debug": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Diagnostics.Debug.dll": { + "related": ".xml" + } + } + }, + "System.Diagnostics.DiagnosticSource/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Tracing": "4.3.0", + "System.Reflection": "4.3.0", + "System.Runtime": "4.3.0", + "System.Threading": "4.3.0" + }, + "compile": { + "lib/netstandard1.3/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.3/System.Diagnostics.DiagnosticSource.dll": { + "related": ".xml" + } + } + }, + "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", + "runtime.any.System.Diagnostics.Tools": "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", + "runtime.any.System.Diagnostics.Tracing": "4.3.0" + }, + "compile": { + "ref/netstandard1.5/System.Diagnostics.Tracing.dll": { + "related": ".xml" + } + } + }, + "System.Drawing.Common/6.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Win32.SystemEvents": "6.0.0" + }, + "compile": { + "lib/net6.0/System.Drawing.Common.dll": { + "related": ".xml" + } + }, + "runtime": { + "runtimes/unix/lib/net6.0/System.Drawing.Common.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Formats.Asn1/5.0.0": { + "type": "package", + "compile": { + "lib/netstandard2.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/System.Formats.Asn1.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", + "runtime.any.System.Globalization": "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", + "runtime.any.System.Globalization.Calendars": "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" + } + }, + "runtime": { + "runtimes/unix/lib/netstandard1.3/System.Globalization.Extensions.dll": {} + } + }, + "System.IdentityModel.Tokens.Jwt/6.35.0": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.JsonWebTokens": "6.35.0", + "Microsoft.IdentityModel.Tokens": "6.35.0" + }, + "compile": { + "lib/net6.0/System.IdentityModel.Tokens.Jwt.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.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", + "runtime.any.System.IO": "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" + } + }, + "runtime": { + "runtimes/unix/lib/netstandard1.3/System.IO.Compression.dll": {} + } + }, + "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", + "runtime.unix.System.IO.FileSystem": "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/6.0.3": { + "type": "package", + "compile": { + "lib/net6.0/System.IO.Pipelines.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.IO.Pipelines.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "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.Memory/4.5.5": { + "type": "package", + "compile": { + "ref/netcoreapp2.1/_._": {} + }, + "runtime": { + "lib/netcoreapp2.1/_._": {} + } + }, + "System.Net.Http/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "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.0" + }, + "compile": { + "ref/netstandard1.3/System.Net.Http.dll": { + "related": ".xml" + } + }, + "runtime": { + "runtimes/unix/lib/netstandard1.6/System.Net.Http.dll": {} + } + }, + "System.Net.NameResolution/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.Collections": "4.3.0", + "System.Diagnostics.Tracing": "4.3.0", + "System.Globalization": "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.Principal.Windows": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0", + "runtime.native.System": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Net.NameResolution.dll": { + "related": ".xml" + } + }, + "runtime": { + "runtimes/unix/lib/netstandard1.3/System.Net.NameResolution.dll": {} + } + }, + "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", + "runtime.unix.System.Net.Primitives": "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", + "runtime.unix.System.Net.Sockets": "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.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "runtime.unix.System.Private.Uri": "4.3.0" + }, + "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", + "runtime.any.System.Reflection": "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", + "runtime.any.System.Reflection.Extensions": "4.3.0" + }, + "compile": { + "ref/netstandard1.0/System.Reflection.Extensions.dll": { + "related": ".xml" + } + } + }, + "System.Reflection.Metadata/6.0.0": { + "type": "package", + "dependencies": { + "System.Collections.Immutable": "6.0.0" + }, + "compile": { + "lib/net6.0/System.Reflection.Metadata.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Reflection.Metadata.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Reflection.MetadataLoadContext/6.0.0": { + "type": "package", + "dependencies": { + "System.Collections.Immutable": "6.0.0", + "System.Reflection.Metadata": "6.0.0" + }, + "compile": { + "lib/net6.0/System.Reflection.MetadataLoadContext.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Reflection.MetadataLoadContext.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "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", + "runtime.any.System.Reflection.Primitives": "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", + "runtime.any.System.Resources.ResourceManager": "4.3.0" + }, + "compile": { + "ref/netstandard1.0/System.Resources.ResourceManager.dll": { + "related": ".xml" + } + } + }, + "System.Runtime/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "runtime.any.System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.5/System.Runtime.dll": { + "related": ".xml" + } + } + }, + "System.Runtime.CompilerServices.Unsafe/6.0.0": { + "type": "package", + "compile": { + "lib/net6.0/System.Runtime.CompilerServices.Unsafe.dll": { + "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", + "runtime.unix.System.Runtime.Extensions": "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", + "runtime.any.System.Runtime.Handles": "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", + "runtime.any.System.Runtime.InteropServices": "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": { + "runtimes/unix/lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll": {} + } + }, + "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.AccessControl/6.0.0": { + "type": "package", + "compile": { + "lib/net6.0/System.Security.AccessControl.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Security.AccessControl.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "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": {} + }, + "runtime": { + "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll": {} + } + }, + "System.Security.Cryptography.Cng/5.0.0": { + "type": "package", + "dependencies": { + "System.Formats.Asn1": "5.0.0" + }, + "compile": { + "ref/netcoreapp3.0/System.Security.Cryptography.Cng.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netcoreapp3.0/System.Security.Cryptography.Cng.dll": { + "related": ".xml" + } + } + }, + "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/_._": {} + }, + "runtime": { + "runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.Csp.dll": {} + } + }, + "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" + } + }, + "runtime": { + "runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.Encoding.dll": {} + } + }, + "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": { + "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.OpenSsl.dll": {} + } + }, + "System.Security.Cryptography.Pkcs/5.0.0": { + "type": "package", + "dependencies": { + "System.Formats.Asn1": "5.0.0", + "System.Security.Cryptography.Cng": "5.0.0" + }, + "compile": { + "ref/netcoreapp3.0/System.Security.Cryptography.Pkcs.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netcoreapp3.0/System.Security.Cryptography.Pkcs.dll": { + "related": ".xml" + } + } + }, + "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.ProtectedData/6.0.0": { + "type": "package", + "compile": { + "lib/net6.0/System.Security.Cryptography.ProtectedData.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Security.Cryptography.ProtectedData.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "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" + } + }, + "runtime": { + "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.X509Certificates.dll": {} + } + }, + "System.Security.Permissions/6.0.0": { + "type": "package", + "dependencies": { + "System.Security.AccessControl": "6.0.0", + "System.Windows.Extensions": "6.0.0" + }, + "compile": { + "lib/net6.0/System.Security.Permissions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Security.Permissions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Security.Principal.Windows/5.0.0": { + "type": "package", + "compile": { + "ref/netcoreapp3.0/System.Security.Principal.Windows.dll": { + "related": ".xml" + } + }, + "runtime": { + "runtimes/unix/lib/netcoreapp2.1/System.Security.Principal.Windows.dll": { + "related": ".xml" + } + } + }, + "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", + "runtime.any.System.Text.Encoding": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Text.Encoding.dll": { + "related": ".xml" + } + } + }, + "System.Text.Encoding.CodePages/6.0.0": { + "type": "package", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "6.0.0" + }, + "compile": { + "lib/net6.0/System.Text.Encoding.CodePages.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Text.Encoding.CodePages.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "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", + "runtime.any.System.Text.Encoding.Extensions": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Text.Encoding.Extensions.dll": { + "related": ".xml" + } + } + }, + "System.Text.Encodings.Web/7.0.0": { + "type": "package", + "compile": { + "lib/net7.0/System.Text.Encodings.Web.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/System.Text.Encodings.Web.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "System.Text.Json/7.0.0": { + "type": "package", + "dependencies": { + "System.Text.Encodings.Web": "7.0.0" + }, + "compile": { + "lib/net7.0/System.Text.Json.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net7.0/System.Text.Json.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/System.Text.Json.targets": {} + } + }, + "System.Text.RegularExpressions/4.3.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.3.0" + }, + "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.Tasks/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0", + "runtime.any.System.Threading.Tasks": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Threading.Tasks.dll": { + "related": ".xml" + } + } + }, + "System.Threading.Tasks.Dataflow/6.0.0": { + "type": "package", + "compile": { + "lib/net6.0/System.Threading.Tasks.Dataflow.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Threading.Tasks.Dataflow.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + } + }, + "System.Threading.Tasks.Extensions/4.5.4": { + "type": "package", + "compile": { + "ref/netcoreapp2.1/_._": {} + }, + "runtime": { + "lib/netcoreapp2.1/_._": {} + } + }, + "System.Threading.ThreadPool/4.3.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.3.0", + "System.Runtime.Handles": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Threading.ThreadPool.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.3/System.Threading.ThreadPool.dll": {} + } + }, + "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", + "runtime.any.System.Threading.Timer": "4.3.0" + }, + "compile": { + "ref/netstandard1.2/System.Threading.Timer.dll": { + "related": ".xml" + } + } + }, + "System.Windows.Extensions/6.0.0": { + "type": "package", + "dependencies": { + "System.Drawing.Common": "6.0.0" + }, + "compile": { + "lib/net6.0/System.Windows.Extensions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Windows.Extensions.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" + ] + }, + "BCrypt.Net/0.1.0": { + "sha512": "sST2w361Dxt9GGMfpOTiK50wXGV64Ybb1hiX3xjEWnhVYZNF43NuySGwADJa7X1R+bA53NsFR+tuDxcYiJeIOA==", + "type": "package", + "path": "bcrypt.net/0.1.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "bcrypt.net.0.1.0.nupkg.sha512", + "bcrypt.net.nuspec", + "lib/net35/BCrypt.Net.XML", + "lib/net35/BCrypt.Net.dll" + ] + }, + "Humanizer/2.14.1": { + "sha512": "/FUTD3cEceAAmJSCPN9+J+VhGwmL/C12jvwlyM1DFXShEMsBzvLzLqSrJ2rb+k/W2znKw7JyflZgZpyE+tI7lA==", + "type": "package", + "path": "humanizer/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.2.14.1.nupkg.sha512", + "humanizer.nuspec", + "logo.png" + ] + }, "Humanizer.Core/2.14.1": { "sha512": "lQKvtaTDOXnoVJ20ibTuSIOf2i0uO0MPbDhd1jm238I+U/2ZnRENj0cktKZhtchBMtCUSRQ5v4xBCUbKNmyVMw==", "type": "package", @@ -608,63 +7996,1553 @@ "logo.png" ] }, - "Microsoft.AspNetCore.Authorization/7.0.0": { - "sha512": "0O7C7XHj+17Q0geMpnpRC0fnnALH2Yhaa2SAzX00OkeF2NZ/+zWoDymbSnepg1qhueufUivihZiVGtMeq5Zywg==", + "Humanizer.Core.af/2.14.1": { + "sha512": "BoQHyu5le+xxKOw+/AUM7CLXneM/Bh3++0qh1u0+D95n6f9eGt9kNc8LcAHLIOwId7Sd5hiAaaav0Nimj3peNw==", "type": "package", - "path": "microsoft.aspnetcore.authorization/7.0.0", + "path": "humanizer.core.af/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.af.2.14.1.nupkg.sha512", + "humanizer.core.af.nuspec", + "lib/net6.0/af/Humanizer.resources.dll", + "lib/netstandard1.0/af/Humanizer.resources.dll", + "lib/netstandard2.0/af/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.ar/2.14.1": { + "sha512": "3d1V10LDtmqg5bZjWkA/EkmGFeSfNBcyCH+TiHcHP+HGQQmRq3eBaLcLnOJbVQVn3Z6Ak8GOte4RX4kVCxQlFA==", + "type": "package", + "path": "humanizer.core.ar/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.ar.2.14.1.nupkg.sha512", + "humanizer.core.ar.nuspec", + "lib/net6.0/ar/Humanizer.resources.dll", + "lib/netstandard1.0/ar/Humanizer.resources.dll", + "lib/netstandard2.0/ar/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.az/2.14.1": { + "sha512": "8Z/tp9PdHr/K2Stve2Qs/7uqWPWLUK9D8sOZDNzyv42e20bSoJkHFn7SFoxhmaoVLJwku2jp6P7HuwrfkrP18Q==", + "type": "package", + "path": "humanizer.core.az/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.az.2.14.1.nupkg.sha512", + "humanizer.core.az.nuspec", + "lib/net6.0/az/Humanizer.resources.dll", + "lib/netstandard1.0/az/Humanizer.resources.dll", + "lib/netstandard2.0/az/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.bg/2.14.1": { + "sha512": "S+hIEHicrOcbV2TBtyoPp1AVIGsBzlarOGThhQYCnP6QzEYo/5imtok6LMmhZeTnBFoKhM8yJqRfvJ5yqVQKSQ==", + "type": "package", + "path": "humanizer.core.bg/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.bg.2.14.1.nupkg.sha512", + "humanizer.core.bg.nuspec", + "lib/net6.0/bg/Humanizer.resources.dll", + "lib/netstandard1.0/bg/Humanizer.resources.dll", + "lib/netstandard2.0/bg/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.bn-BD/2.14.1": { + "sha512": "U3bfj90tnUDRKlL1ZFlzhCHoVgpTcqUlTQxjvGCaFKb+734TTu3nkHUWVZltA1E/swTvimo/aXLtkxnLFrc0EQ==", + "type": "package", + "path": "humanizer.core.bn-bd/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.bn-bd.2.14.1.nupkg.sha512", + "humanizer.core.bn-bd.nuspec", + "lib/net6.0/bn-BD/Humanizer.resources.dll", + "lib/netstandard1.0/bn-BD/Humanizer.resources.dll", + "lib/netstandard2.0/bn-BD/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.cs/2.14.1": { + "sha512": "jWrQkiCTy3L2u1T86cFkgijX6k7hoB0pdcFMWYaSZnm6rvG/XJE40tfhYyKhYYgIc1x9P2GO5AC7xXvFnFdqMQ==", + "type": "package", + "path": "humanizer.core.cs/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.cs.2.14.1.nupkg.sha512", + "humanizer.core.cs.nuspec", + "lib/net6.0/cs/Humanizer.resources.dll", + "lib/netstandard1.0/cs/Humanizer.resources.dll", + "lib/netstandard2.0/cs/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.da/2.14.1": { + "sha512": "5o0rJyE/2wWUUphC79rgYDnif/21MKTTx9LIzRVz9cjCIVFrJ2bDyR2gapvI9D6fjoyvD1NAfkN18SHBsO8S9g==", + "type": "package", + "path": "humanizer.core.da/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.da.2.14.1.nupkg.sha512", + "humanizer.core.da.nuspec", + "lib/net6.0/da/Humanizer.resources.dll", + "lib/netstandard1.0/da/Humanizer.resources.dll", + "lib/netstandard2.0/da/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.de/2.14.1": { + "sha512": "9JD/p+rqjb8f5RdZ3aEJqbjMYkbk4VFii2QDnnOdNo6ywEfg/A5YeOQ55CaBJmy7KvV4tOK4+qHJnX/tg3Z54A==", + "type": "package", + "path": "humanizer.core.de/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.de.2.14.1.nupkg.sha512", + "humanizer.core.de.nuspec", + "lib/net6.0/de/Humanizer.resources.dll", + "lib/netstandard1.0/de/Humanizer.resources.dll", + "lib/netstandard2.0/de/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.el/2.14.1": { + "sha512": "Xmv6sTL5mqjOWGGpqY7bvbfK5RngaUHSa8fYDGSLyxY9mGdNbDcasnRnMOvi0SxJS9gAqBCn21Xi90n2SHZbFA==", + "type": "package", + "path": "humanizer.core.el/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.el.2.14.1.nupkg.sha512", + "humanizer.core.el.nuspec", + "lib/net6.0/el/Humanizer.resources.dll", + "lib/netstandard1.0/el/Humanizer.resources.dll", + "lib/netstandard2.0/el/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.es/2.14.1": { + "sha512": "e//OIAeMB7pjBV1HqqI4pM2Bcw3Jwgpyz9G5Fi4c+RJvhqFwztoWxW57PzTnNJE2lbhGGLQZihFZjsbTUsbczA==", + "type": "package", + "path": "humanizer.core.es/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.es.2.14.1.nupkg.sha512", + "humanizer.core.es.nuspec", + "lib/net6.0/es/Humanizer.resources.dll", + "lib/netstandard1.0/es/Humanizer.resources.dll", + "lib/netstandard2.0/es/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.fa/2.14.1": { + "sha512": "nzDOj1x0NgjXMjsQxrET21t1FbdoRYujzbmZoR8u8ou5CBWY1UNca0j6n/PEJR/iUbt4IxstpszRy41wL/BrpA==", + "type": "package", + "path": "humanizer.core.fa/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.fa.2.14.1.nupkg.sha512", + "humanizer.core.fa.nuspec", + "lib/net6.0/fa/Humanizer.resources.dll", + "lib/netstandard1.0/fa/Humanizer.resources.dll", + "lib/netstandard2.0/fa/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.fi-FI/2.14.1": { + "sha512": "Vnxxx4LUhp3AzowYi6lZLAA9Lh8UqkdwRh4IE2qDXiVpbo08rSbokATaEzFS+o+/jCNZBmoyyyph3vgmcSzhhQ==", + "type": "package", + "path": "humanizer.core.fi-fi/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.fi-fi.2.14.1.nupkg.sha512", + "humanizer.core.fi-fi.nuspec", + "lib/net6.0/fi-FI/Humanizer.resources.dll", + "lib/netstandard1.0/fi-FI/Humanizer.resources.dll", + "lib/netstandard2.0/fi-FI/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.fr/2.14.1": { + "sha512": "2p4g0BYNzFS3u9SOIDByp2VClYKO0K1ecDV4BkB9EYdEPWfFODYnF+8CH8LpUrpxL2TuWo2fiFx/4Jcmrnkbpg==", + "type": "package", + "path": "humanizer.core.fr/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.fr.2.14.1.nupkg.sha512", + "humanizer.core.fr.nuspec", + "lib/net6.0/fr/Humanizer.resources.dll", + "lib/netstandard1.0/fr/Humanizer.resources.dll", + "lib/netstandard2.0/fr/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.fr-BE/2.14.1": { + "sha512": "o6R3SerxCRn5Ij8nCihDNMGXlaJ/1AqefteAssgmU2qXYlSAGdhxmnrQAXZUDlE4YWt/XQ6VkNLtH7oMqsSPFQ==", + "type": "package", + "path": "humanizer.core.fr-be/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.fr-be.2.14.1.nupkg.sha512", + "humanizer.core.fr-be.nuspec", + "lib/net6.0/fr-BE/Humanizer.resources.dll", + "lib/netstandard1.0/fr-BE/Humanizer.resources.dll", + "lib/netstandard2.0/fr-BE/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.he/2.14.1": { + "sha512": "FPsAhy7Iw6hb+ZitLgYC26xNcgGAHXb0V823yFAzcyoL5ozM+DCJtYfDPYiOpsJhEZmKFTM9No0jUn1M89WGvg==", + "type": "package", + "path": "humanizer.core.he/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.he.2.14.1.nupkg.sha512", + "humanizer.core.he.nuspec", + "lib/net6.0/he/Humanizer.resources.dll", + "lib/netstandard1.0/he/Humanizer.resources.dll", + "lib/netstandard2.0/he/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.hr/2.14.1": { + "sha512": "chnaD89yOlST142AMkAKLuzRcV5df3yyhDyRU5rypDiqrq2HN8y1UR3h1IicEAEtXLoOEQyjSAkAQ6QuXkn7aw==", + "type": "package", + "path": "humanizer.core.hr/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.hr.2.14.1.nupkg.sha512", + "humanizer.core.hr.nuspec", + "lib/net6.0/hr/Humanizer.resources.dll", + "lib/netstandard1.0/hr/Humanizer.resources.dll", + "lib/netstandard2.0/hr/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.hu/2.14.1": { + "sha512": "hAfnaoF9LTGU/CmFdbnvugN4tIs8ppevVMe3e5bD24+tuKsggMc5hYta9aiydI8JH9JnuVmxvNI4DJee1tK05A==", + "type": "package", + "path": "humanizer.core.hu/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.hu.2.14.1.nupkg.sha512", + "humanizer.core.hu.nuspec", + "lib/net6.0/hu/Humanizer.resources.dll", + "lib/netstandard1.0/hu/Humanizer.resources.dll", + "lib/netstandard2.0/hu/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.hy/2.14.1": { + "sha512": "sVIKxOiSBUb4gStRHo9XwwAg9w7TNvAXbjy176gyTtaTiZkcjr9aCPziUlYAF07oNz6SdwdC2mwJBGgvZ0Sl2g==", + "type": "package", + "path": "humanizer.core.hy/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.hy.2.14.1.nupkg.sha512", + "humanizer.core.hy.nuspec", + "lib/net6.0/hy/Humanizer.resources.dll", + "lib/netstandard1.0/hy/Humanizer.resources.dll", + "lib/netstandard2.0/hy/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.id/2.14.1": { + "sha512": "4Zl3GTvk3a49Ia/WDNQ97eCupjjQRs2iCIZEQdmkiqyaLWttfb+cYXDMGthP42nufUL0SRsvBctN67oSpnXtsg==", + "type": "package", + "path": "humanizer.core.id/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.id.2.14.1.nupkg.sha512", + "humanizer.core.id.nuspec", + "lib/net6.0/id/Humanizer.resources.dll", + "lib/netstandard1.0/id/Humanizer.resources.dll", + "lib/netstandard2.0/id/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.is/2.14.1": { + "sha512": "R67A9j/nNgcWzU7gZy1AJ07ABSLvogRbqOWvfRDn4q6hNdbg/mjGjZBp4qCTPnB2mHQQTCKo3oeCUayBCNIBCw==", + "type": "package", + "path": "humanizer.core.is/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.is.2.14.1.nupkg.sha512", + "humanizer.core.is.nuspec", + "lib/net6.0/is/Humanizer.resources.dll", + "lib/netstandard1.0/is/Humanizer.resources.dll", + "lib/netstandard2.0/is/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.it/2.14.1": { + "sha512": "jYxGeN4XIKHVND02FZ+Woir3CUTyBhLsqxu9iqR/9BISArkMf1Px6i5pRZnvq4fc5Zn1qw71GKKoCaHDJBsLFw==", + "type": "package", + "path": "humanizer.core.it/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.it.2.14.1.nupkg.sha512", + "humanizer.core.it.nuspec", + "lib/net6.0/it/Humanizer.resources.dll", + "lib/netstandard1.0/it/Humanizer.resources.dll", + "lib/netstandard2.0/it/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.ja/2.14.1": { + "sha512": "TM3ablFNoYx4cYJybmRgpDioHpiKSD7q0QtMrmpsqwtiiEsdW5zz/q4PolwAczFnvrKpN6nBXdjnPPKVet93ng==", + "type": "package", + "path": "humanizer.core.ja/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.ja.2.14.1.nupkg.sha512", + "humanizer.core.ja.nuspec", + "lib/net6.0/ja/Humanizer.resources.dll", + "lib/netstandard1.0/ja/Humanizer.resources.dll", + "lib/netstandard2.0/ja/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.ko-KR/2.14.1": { + "sha512": "CtvwvK941k/U0r8PGdEuBEMdW6jv/rBiA9tUhakC7Zd2rA/HCnDcbr1DiNZ+/tRshnhzxy/qwmpY8h4qcAYCtQ==", + "type": "package", + "path": "humanizer.core.ko-kr/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.ko-kr.2.14.1.nupkg.sha512", + "humanizer.core.ko-kr.nuspec", + "lib/netstandard1.0/ko-KR/Humanizer.resources.dll", + "lib/netstandard2.0/ko-KR/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.ku/2.14.1": { + "sha512": "vHmzXcVMe+LNrF9txpdHzpG7XJX65SiN9GQd/Zkt6gsGIIEeECHrkwCN5Jnlkddw2M/b0HS4SNxdR1GrSn7uCA==", + "type": "package", + "path": "humanizer.core.ku/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.ku.2.14.1.nupkg.sha512", + "humanizer.core.ku.nuspec", + "lib/net6.0/ku/Humanizer.resources.dll", + "lib/netstandard1.0/ku/Humanizer.resources.dll", + "lib/netstandard2.0/ku/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.lv/2.14.1": { + "sha512": "E1/KUVnYBS1bdOTMNDD7LV/jdoZv/fbWTLPtvwdMtSdqLyRTllv6PGM9xVQoFDYlpvVGtEl/09glCojPHw8ffA==", + "type": "package", + "path": "humanizer.core.lv/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.lv.2.14.1.nupkg.sha512", + "humanizer.core.lv.nuspec", + "lib/net6.0/lv/Humanizer.resources.dll", + "lib/netstandard1.0/lv/Humanizer.resources.dll", + "lib/netstandard2.0/lv/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.ms-MY/2.14.1": { + "sha512": "vX8oq9HnYmAF7bek4aGgGFJficHDRTLgp/EOiPv9mBZq0i4SA96qVMYSjJ2YTaxs7Eljqit7pfpE2nmBhY5Fnw==", + "type": "package", + "path": "humanizer.core.ms-my/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.ms-my.2.14.1.nupkg.sha512", + "humanizer.core.ms-my.nuspec", + "lib/netstandard1.0/ms-MY/Humanizer.resources.dll", + "lib/netstandard2.0/ms-MY/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.mt/2.14.1": { + "sha512": "pEgTBzUI9hzemF7xrIZigl44LidTUhNu4x/P6M9sAwZjkUF0mMkbpxKkaasOql7lLafKrnszs0xFfaxQyzeuZQ==", + "type": "package", + "path": "humanizer.core.mt/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.mt.2.14.1.nupkg.sha512", + "humanizer.core.mt.nuspec", + "lib/netstandard1.0/mt/Humanizer.resources.dll", + "lib/netstandard2.0/mt/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.nb/2.14.1": { + "sha512": "mbs3m6JJq53ssLqVPxNfqSdTxAcZN3njlG8yhJVx83XVedpTe1ECK9aCa8FKVOXv93Gl+yRHF82Hw9T9LWv2hw==", + "type": "package", + "path": "humanizer.core.nb/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.nb.2.14.1.nupkg.sha512", + "humanizer.core.nb.nuspec", + "lib/net6.0/nb/Humanizer.resources.dll", + "lib/netstandard1.0/nb/Humanizer.resources.dll", + "lib/netstandard2.0/nb/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.nb-NO/2.14.1": { + "sha512": "AsJxrrVYmIMbKDGe8W6Z6//wKv9dhWH7RsTcEHSr4tQt/80pcNvLi0hgD3fqfTtg0tWKtgch2cLf4prorEV+5A==", + "type": "package", + "path": "humanizer.core.nb-no/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.nb-no.2.14.1.nupkg.sha512", + "humanizer.core.nb-no.nuspec", + "lib/net6.0/nb-NO/Humanizer.resources.dll", + "lib/netstandard1.0/nb-NO/Humanizer.resources.dll", + "lib/netstandard2.0/nb-NO/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.nl/2.14.1": { + "sha512": "24b0OUdzJxfoqiHPCtYnR5Y4l/s4Oh7KW7uDp+qX25NMAHLCGog2eRfA7p2kRJp8LvnynwwQxm2p534V9m55wQ==", + "type": "package", + "path": "humanizer.core.nl/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.nl.2.14.1.nupkg.sha512", + "humanizer.core.nl.nuspec", + "lib/net6.0/nl/Humanizer.resources.dll", + "lib/netstandard1.0/nl/Humanizer.resources.dll", + "lib/netstandard2.0/nl/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.pl/2.14.1": { + "sha512": "17mJNYaBssENVZyQHduiq+bvdXS0nhZJGEXtPKoMhKv3GD//WO0mEfd9wjEBsWCSmWI7bjRqhCidxzN+YtJmsg==", + "type": "package", + "path": "humanizer.core.pl/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.pl.2.14.1.nupkg.sha512", + "humanizer.core.pl.nuspec", + "lib/net6.0/pl/Humanizer.resources.dll", + "lib/netstandard1.0/pl/Humanizer.resources.dll", + "lib/netstandard2.0/pl/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.pt/2.14.1": { + "sha512": "8HB8qavcVp2la1GJX6t+G9nDYtylPKzyhxr9LAooIei9MnQvNsjEiIE4QvHoeDZ4weuQ9CsPg1c211XUMVEZ4A==", + "type": "package", + "path": "humanizer.core.pt/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.pt.2.14.1.nupkg.sha512", + "humanizer.core.pt.nuspec", + "lib/net6.0/pt/Humanizer.resources.dll", + "lib/netstandard1.0/pt/Humanizer.resources.dll", + "lib/netstandard2.0/pt/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.ro/2.14.1": { + "sha512": "psXNOcA6R8fSHoQYhpBTtTTYiOk8OBoN3PKCEDgsJKIyeY5xuK81IBdGi77qGZMu/OwBRQjQCBMtPJb0f4O1+A==", + "type": "package", + "path": "humanizer.core.ro/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.ro.2.14.1.nupkg.sha512", + "humanizer.core.ro.nuspec", + "lib/net6.0/ro/Humanizer.resources.dll", + "lib/netstandard1.0/ro/Humanizer.resources.dll", + "lib/netstandard2.0/ro/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.ru/2.14.1": { + "sha512": "zm245xUWrajSN2t9H7BTf84/2APbUkKlUJpcdgsvTdAysr1ag9fi1APu6JEok39RRBXDfNRVZHawQ/U8X0pSvQ==", + "type": "package", + "path": "humanizer.core.ru/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.ru.2.14.1.nupkg.sha512", + "humanizer.core.ru.nuspec", + "lib/net6.0/ru/Humanizer.resources.dll", + "lib/netstandard1.0/ru/Humanizer.resources.dll", + "lib/netstandard2.0/ru/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.sk/2.14.1": { + "sha512": "Ncw24Vf3ioRnbU4MsMFHafkyYi8JOnTqvK741GftlQvAbULBoTz2+e7JByOaasqeSi0KfTXeegJO+5Wk1c0Mbw==", + "type": "package", + "path": "humanizer.core.sk/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.sk.2.14.1.nupkg.sha512", + "humanizer.core.sk.nuspec", + "lib/net6.0/sk/Humanizer.resources.dll", + "lib/netstandard1.0/sk/Humanizer.resources.dll", + "lib/netstandard2.0/sk/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.sl/2.14.1": { + "sha512": "l8sUy4ciAIbVThWNL0atzTS2HWtv8qJrsGWNlqrEKmPwA4SdKolSqnTes9V89fyZTc2Q43jK8fgzVE2C7t009A==", + "type": "package", + "path": "humanizer.core.sl/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.sl.2.14.1.nupkg.sha512", + "humanizer.core.sl.nuspec", + "lib/net6.0/sl/Humanizer.resources.dll", + "lib/netstandard1.0/sl/Humanizer.resources.dll", + "lib/netstandard2.0/sl/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.sr/2.14.1": { + "sha512": "rnNvhpkOrWEymy7R/MiFv7uef8YO5HuXDyvojZ7JpijHWA5dXuVXooCOiA/3E93fYa3pxDuG2OQe4M/olXbQ7w==", + "type": "package", + "path": "humanizer.core.sr/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.sr.2.14.1.nupkg.sha512", + "humanizer.core.sr.nuspec", + "lib/net6.0/sr/Humanizer.resources.dll", + "lib/netstandard1.0/sr/Humanizer.resources.dll", + "lib/netstandard2.0/sr/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.sr-Latn/2.14.1": { + "sha512": "nuy/ykpk974F8ItoQMS00kJPr2dFNjOSjgzCwfysbu7+gjqHmbLcYs7G4kshLwdA4AsVncxp99LYeJgoh1JF5g==", + "type": "package", + "path": "humanizer.core.sr-latn/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.sr-latn.2.14.1.nupkg.sha512", + "humanizer.core.sr-latn.nuspec", + "lib/net6.0/sr-Latn/Humanizer.resources.dll", + "lib/netstandard1.0/sr-Latn/Humanizer.resources.dll", + "lib/netstandard2.0/sr-Latn/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.sv/2.14.1": { + "sha512": "E53+tpAG0RCp+cSSI7TfBPC+NnsEqUuoSV0sU+rWRXWr9MbRWx1+Zj02XMojqjGzHjjOrBFBBio6m74seFl0AA==", + "type": "package", + "path": "humanizer.core.sv/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.sv.2.14.1.nupkg.sha512", + "humanizer.core.sv.nuspec", + "lib/net6.0/sv/Humanizer.resources.dll", + "lib/netstandard1.0/sv/Humanizer.resources.dll", + "lib/netstandard2.0/sv/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.th-TH/2.14.1": { + "sha512": "eSevlJtvs1r4vQarNPfZ2kKDp/xMhuD00tVVzRXkSh1IAZbBJI/x2ydxUOwfK9bEwEp+YjvL1Djx2+kw7ziu7g==", + "type": "package", + "path": "humanizer.core.th-th/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.th-th.2.14.1.nupkg.sha512", + "humanizer.core.th-th.nuspec", + "lib/netstandard1.0/th-TH/Humanizer.resources.dll", + "lib/netstandard2.0/th-TH/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.tr/2.14.1": { + "sha512": "rQ8N+o7yFcFqdbtu1mmbrXFi8TQ+uy+fVH9OPI0CI3Cu1om5hUU/GOMC3hXsTCI6d79y4XX+0HbnD7FT5khegA==", + "type": "package", + "path": "humanizer.core.tr/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.tr.2.14.1.nupkg.sha512", + "humanizer.core.tr.nuspec", + "lib/net6.0/tr/Humanizer.resources.dll", + "lib/netstandard1.0/tr/Humanizer.resources.dll", + "lib/netstandard2.0/tr/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.uk/2.14.1": { + "sha512": "2uEfujwXKNm6bdpukaLtEJD+04uUtQD65nSGCetA1fYNizItEaIBUboNfr3GzJxSMQotNwGVM3+nSn8jTd0VSg==", + "type": "package", + "path": "humanizer.core.uk/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.uk.2.14.1.nupkg.sha512", + "humanizer.core.uk.nuspec", + "lib/net6.0/uk/Humanizer.resources.dll", + "lib/netstandard1.0/uk/Humanizer.resources.dll", + "lib/netstandard2.0/uk/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.uz-Cyrl-UZ/2.14.1": { + "sha512": "TD3ME2sprAvFqk9tkWrvSKx5XxEMlAn1sjk+cYClSWZlIMhQQ2Bp/w0VjX1Kc5oeKjxRAnR7vFcLUFLiZIDk9Q==", + "type": "package", + "path": "humanizer.core.uz-cyrl-uz/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.uz-cyrl-uz.2.14.1.nupkg.sha512", + "humanizer.core.uz-cyrl-uz.nuspec", + "lib/net6.0/uz-Cyrl-UZ/Humanizer.resources.dll", + "lib/netstandard1.0/uz-Cyrl-UZ/Humanizer.resources.dll", + "lib/netstandard2.0/uz-Cyrl-UZ/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.uz-Latn-UZ/2.14.1": { + "sha512": "/kHAoF4g0GahnugZiEMpaHlxb+W6jCEbWIdsq9/I1k48ULOsl/J0pxZj93lXC3omGzVF1BTVIeAtv5fW06Phsg==", + "type": "package", + "path": "humanizer.core.uz-latn-uz/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.uz-latn-uz.2.14.1.nupkg.sha512", + "humanizer.core.uz-latn-uz.nuspec", + "lib/net6.0/uz-Latn-UZ/Humanizer.resources.dll", + "lib/netstandard1.0/uz-Latn-UZ/Humanizer.resources.dll", + "lib/netstandard2.0/uz-Latn-UZ/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.vi/2.14.1": { + "sha512": "rsQNh9rmHMBtnsUUlJbShMsIMGflZtPmrMM6JNDw20nhsvqfrdcoDD8cMnLAbuSovtc3dP+swRmLQzKmXDTVPA==", + "type": "package", + "path": "humanizer.core.vi/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.vi.2.14.1.nupkg.sha512", + "humanizer.core.vi.nuspec", + "lib/net6.0/vi/Humanizer.resources.dll", + "lib/netstandard1.0/vi/Humanizer.resources.dll", + "lib/netstandard2.0/vi/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.zh-CN/2.14.1": { + "sha512": "uH2dWhrgugkCjDmduLdAFO9w1Mo0q07EuvM0QiIZCVm6FMCu/lGv2fpMu4GX+4HLZ6h5T2Pg9FIdDLCPN2a67w==", + "type": "package", + "path": "humanizer.core.zh-cn/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.zh-cn.2.14.1.nupkg.sha512", + "humanizer.core.zh-cn.nuspec", + "lib/net6.0/zh-CN/Humanizer.resources.dll", + "lib/netstandard1.0/zh-CN/Humanizer.resources.dll", + "lib/netstandard2.0/zh-CN/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.zh-Hans/2.14.1": { + "sha512": "WH6IhJ8V1UBG7rZXQk3dZUoP2gsi8a0WkL8xL0sN6WGiv695s8nVcmab9tWz20ySQbuzp0UkSxUQFi5jJHIpOQ==", + "type": "package", + "path": "humanizer.core.zh-hans/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.zh-hans.2.14.1.nupkg.sha512", + "humanizer.core.zh-hans.nuspec", + "lib/net6.0/zh-Hans/Humanizer.resources.dll", + "lib/netstandard1.0/zh-Hans/Humanizer.resources.dll", + "lib/netstandard2.0/zh-Hans/Humanizer.resources.dll", + "logo.png" + ] + }, + "Humanizer.Core.zh-Hant/2.14.1": { + "sha512": "VIXB7HCUC34OoaGnO3HJVtSv2/wljPhjV7eKH4+TFPgQdJj2lvHNKY41Dtg0Bphu7X5UaXFR4zrYYyo+GNOjbA==", + "type": "package", + "path": "humanizer.core.zh-hant/2.14.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "humanizer.core.zh-hant.2.14.1.nupkg.sha512", + "humanizer.core.zh-hant.nuspec", + "lib/net6.0/zh-Hant/Humanizer.resources.dll", + "lib/netstandard1.0/zh-Hant/Humanizer.resources.dll", + "lib/netstandard2.0/zh-Hant/Humanizer.resources.dll", + "logo.png" + ] + }, + "Microsoft.AspNetCore.Authentication.JwtBearer/7.0.16": { + "sha512": "m1xDkk56jfwFfsuXfkvJ0TEGiGW2zZyUdeg9TW0TqSIo9yYseFKxuQPXIaZX7CYF0H54gWbaQdq7X/3dpSXwOg==", + "type": "package", + "path": "microsoft.aspnetcore.authentication.jwtbearer/7.0.16", "files": [ ".nupkg.metadata", ".signature.p7s", "Icon.png", "THIRD-PARTY-NOTICES.TXT", - "lib/net462/Microsoft.AspNetCore.Authorization.dll", - "lib/net462/Microsoft.AspNetCore.Authorization.xml", - "lib/net7.0/Microsoft.AspNetCore.Authorization.dll", - "lib/net7.0/Microsoft.AspNetCore.Authorization.xml", - "lib/netstandard2.0/Microsoft.AspNetCore.Authorization.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.Authorization.xml", - "microsoft.aspnetcore.authorization.7.0.0.nupkg.sha512", - "microsoft.aspnetcore.authorization.nuspec" + "lib/net7.0/Microsoft.AspNetCore.Authentication.JwtBearer.dll", + "lib/net7.0/Microsoft.AspNetCore.Authentication.JwtBearer.xml", + "microsoft.aspnetcore.authentication.jwtbearer.7.0.16.nupkg.sha512", + "microsoft.aspnetcore.authentication.jwtbearer.nuspec" ] }, - "Microsoft.AspNetCore.Metadata/7.0.0": { - "sha512": "ut2azlKz7BQpCKu6AiwKEjMHpRWoD4qu2Ff/n6KagjFsyDAfZY7lgYJ158vr4O0jXet6pV1uF1q3jmXvki0OlA==", + "Microsoft.AspNetCore.Razor.Language/6.0.11": { + "sha512": "SPjSZIL7JFI5XbVfRMPG/fHLr/xfumSrmN+IOimyIf71WQQ8u2hpaE5+VvpcgjJ5VrJMhfDEhdEAB+Nj/S16dQ==", "type": "package", - "path": "microsoft.aspnetcore.metadata/7.0.0", + "path": "microsoft.aspnetcore.razor.language/6.0.11", "files": [ ".nupkg.metadata", ".signature.p7s", "Icon.png", "THIRD-PARTY-NOTICES.TXT", - "lib/net462/Microsoft.AspNetCore.Metadata.dll", - "lib/net462/Microsoft.AspNetCore.Metadata.xml", - "lib/net7.0/Microsoft.AspNetCore.Metadata.dll", - "lib/net7.0/Microsoft.AspNetCore.Metadata.xml", - "lib/netstandard2.0/Microsoft.AspNetCore.Metadata.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.Metadata.xml", - "microsoft.aspnetcore.metadata.7.0.0.nupkg.sha512", - "microsoft.aspnetcore.metadata.nuspec" + "lib/netstandard2.0/Microsoft.AspNetCore.Razor.Language.dll", + "microsoft.aspnetcore.razor.language.6.0.11.nupkg.sha512", + "microsoft.aspnetcore.razor.language.nuspec" ] }, - "Microsoft.AspNetCore.OpenApi/7.0.15": { - "sha512": "5AnwJuy7lBaoDhos9SYzLxsGO/s8LsAnP1DR0JSUp1zGzBGnHJEgT4IafAk24PnveKgkiVwh77t5+dU652rwxA==", + "Microsoft.AspNetCore.SpaProxy/7.0.13": { + "sha512": "7XxaHD6sTKXg9N03LHKzQCZvn8vLpXIwse+vlWwCSz44kLmM6Hu4VN7cy2pzXcmwPBYvPqysjOYZ5HK4mjYiZw==", "type": "package", - "path": "microsoft.aspnetcore.openapi/7.0.15", + "path": "microsoft.aspnetcore.spaproxy/7.0.13", "files": [ ".nupkg.metadata", ".signature.p7s", "Icon.png", "THIRD-PARTY-NOTICES.TXT", - "lib/net7.0/Microsoft.AspNetCore.OpenApi.dll", - "lib/net7.0/Microsoft.AspNetCore.OpenApi.xml", - "microsoft.aspnetcore.openapi.7.0.15.nupkg.sha512", - "microsoft.aspnetcore.openapi.nuspec" + "build/Microsoft.AspNetCore.SpaProxy.targets", + "lib/net7.0/Microsoft.AspNetCore.SpaProxy.dll", + "microsoft.aspnetcore.spaproxy.7.0.13.nupkg.sha512", + "microsoft.aspnetcore.spaproxy.nuspec" ] }, - "Microsoft.EntityFrameworkCore/7.0.0": { - "sha512": "9W+IfmAzMrp2ZpKZLhgTlWljSBM9Erldis1us61DAGi+L7Q6vilTbe1G2zDxtYO8F2H0I0Qnupdx5Cp4s2xoZw==", + "Microsoft.Bcl.AsyncInterfaces/6.0.0": { + "sha512": "UcSjPsst+DfAdJGVDsu346FX0ci0ah+lw3WRtn18NUwEqRt70HaOQ7lI72vy3+1LxtqI3T5GWwV39rQSrCzAeg==", "type": "package", - "path": "microsoft.entityframeworkcore/7.0.0", + "path": "microsoft.bcl.asyncinterfaces/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net461/Microsoft.Bcl.AsyncInterfaces.dll", + "lib/net461/Microsoft.Bcl.AsyncInterfaces.xml", + "lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.dll", + "lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.xml", + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll", + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.xml", + "microsoft.bcl.asyncinterfaces.6.0.0.nupkg.sha512", + "microsoft.bcl.asyncinterfaces.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Build/17.3.2": { + "sha512": "k5+7CfF/aM/hykfnrF93VhbUnhGfpJkGaD+ce8VlhLnOqDyts7WV+8Up3YCP6qmXMZFeeH/Cp23w2wSliP0mBw==", + "type": "package", + "path": "microsoft.build/17.3.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "MSBuild-NuGet-Icon.png", + "README.md", + "lib/net472/Microsoft.Build.dll", + "lib/net472/Microsoft.Build.pdb", + "lib/net472/Microsoft.Build.xml", + "lib/net6.0/Microsoft.Build.dll", + "lib/net6.0/Microsoft.Build.pdb", + "lib/net6.0/Microsoft.Build.xml", + "microsoft.build.17.3.2.nupkg.sha512", + "microsoft.build.nuspec", + "notices/THIRDPARTYNOTICES.txt", + "ref/net472/Microsoft.Build.dll", + "ref/net472/Microsoft.Build.xml", + "ref/net6.0/Microsoft.Build.dll", + "ref/net6.0/Microsoft.Build.xml" + ] + }, + "Microsoft.Build.Framework/17.3.2": { + "sha512": "iGfJt6rm/vIEowBG6qNX2Udn7UagI6MzalDwwdkDUkSwhvvrGCnDLphyRABAwrrsWHTD/LJlUAJsbW1SkC4CUQ==", + "type": "package", + "path": "microsoft.build.framework/17.3.2", + "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/net6.0/Microsoft.Build.Framework.dll", + "lib/net6.0/Microsoft.Build.Framework.pdb", + "lib/net6.0/Microsoft.Build.Framework.xml", + "microsoft.build.framework.17.3.2.nupkg.sha512", + "microsoft.build.framework.nuspec", + "notices/THIRDPARTYNOTICES.txt", + "ref/net472/Microsoft.Build.Framework.dll", + "ref/net472/Microsoft.Build.Framework.xml", + "ref/net6.0/Microsoft.Build.Framework.dll", + "ref/net6.0/Microsoft.Build.Framework.xml", + "ref/netstandard2.0/Microsoft.Build.Framework.dll", + "ref/netstandard2.0/Microsoft.Build.Framework.xml" + ] + }, + "Microsoft.CodeAnalysis.Analyzers/3.3.3": { + "sha512": "j/rOZtLMVJjrfLRlAMckJLPW/1rze9MT1yfWqSIbUPGRu1m1P0fuo9PmqapwsmePfGB5PJrudQLvmUOAMF0DqQ==", + "type": "package", + "path": "microsoft.codeanalysis.analyzers/3.3.3", + "hasTools": true, + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "ThirdPartyNotices.rtf", + "analyzers/dotnet/cs/Microsoft.CodeAnalysis.Analyzers.dll", + "analyzers/dotnet/cs/Microsoft.CodeAnalysis.CSharp.Analyzers.dll", + "analyzers/dotnet/cs/cs/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/cs/de/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/cs/es/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/cs/fr/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/cs/it/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/cs/ja/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/cs/ko/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/cs/pl/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/cs/pt-BR/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/cs/ru/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/cs/tr/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/cs/zh-Hans/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/cs/zh-Hant/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/vb/Microsoft.CodeAnalysis.Analyzers.dll", + "analyzers/dotnet/vb/Microsoft.CodeAnalysis.VisualBasic.Analyzers.dll", + "analyzers/dotnet/vb/cs/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/vb/de/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/vb/es/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/vb/fr/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/vb/it/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/vb/ja/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/vb/ko/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/vb/pl/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/vb/pt-BR/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/vb/ru/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/vb/tr/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/vb/zh-Hans/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "analyzers/dotnet/vb/zh-Hant/Microsoft.CodeAnalysis.Analyzers.resources.dll", + "build/Microsoft.CodeAnalysis.Analyzers.props", + "build/Microsoft.CodeAnalysis.Analyzers.targets", + "build/config/analysislevel_2_9_8_all.editorconfig", + "build/config/analysislevel_2_9_8_default.editorconfig", + "build/config/analysislevel_2_9_8_minimum.editorconfig", + "build/config/analysislevel_2_9_8_none.editorconfig", + "build/config/analysislevel_2_9_8_recommended.editorconfig", + "build/config/analysislevel_3_3_all.editorconfig", + "build/config/analysislevel_3_3_default.editorconfig", + "build/config/analysislevel_3_3_minimum.editorconfig", + "build/config/analysislevel_3_3_none.editorconfig", + "build/config/analysislevel_3_3_recommended.editorconfig", + "build/config/analysislevel_3_all.editorconfig", + "build/config/analysislevel_3_default.editorconfig", + "build/config/analysislevel_3_minimum.editorconfig", + "build/config/analysislevel_3_none.editorconfig", + "build/config/analysislevel_3_recommended.editorconfig", + "build/config/analysislevelcorrectness_2_9_8_all.editorconfig", + "build/config/analysislevelcorrectness_2_9_8_default.editorconfig", + "build/config/analysislevelcorrectness_2_9_8_minimum.editorconfig", + "build/config/analysislevelcorrectness_2_9_8_none.editorconfig", + "build/config/analysislevelcorrectness_2_9_8_recommended.editorconfig", + "build/config/analysislevelcorrectness_3_3_all.editorconfig", + "build/config/analysislevelcorrectness_3_3_default.editorconfig", + "build/config/analysislevelcorrectness_3_3_minimum.editorconfig", + "build/config/analysislevelcorrectness_3_3_none.editorconfig", + "build/config/analysislevelcorrectness_3_3_recommended.editorconfig", + "build/config/analysislevelcorrectness_3_all.editorconfig", + "build/config/analysislevelcorrectness_3_default.editorconfig", + "build/config/analysislevelcorrectness_3_minimum.editorconfig", + "build/config/analysislevelcorrectness_3_none.editorconfig", + "build/config/analysislevelcorrectness_3_recommended.editorconfig", + "build/config/analysislevellibrary_2_9_8_all.editorconfig", + "build/config/analysislevellibrary_2_9_8_default.editorconfig", + "build/config/analysislevellibrary_2_9_8_minimum.editorconfig", + "build/config/analysislevellibrary_2_9_8_none.editorconfig", + "build/config/analysislevellibrary_2_9_8_recommended.editorconfig", + "build/config/analysislevellibrary_3_3_all.editorconfig", + "build/config/analysislevellibrary_3_3_default.editorconfig", + "build/config/analysislevellibrary_3_3_minimum.editorconfig", + "build/config/analysislevellibrary_3_3_none.editorconfig", + "build/config/analysislevellibrary_3_3_recommended.editorconfig", + "build/config/analysislevellibrary_3_all.editorconfig", + "build/config/analysislevellibrary_3_default.editorconfig", + "build/config/analysislevellibrary_3_minimum.editorconfig", + "build/config/analysislevellibrary_3_none.editorconfig", + "build/config/analysislevellibrary_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_3_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_3_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_3_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_3_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_3_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdesign_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_3_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_3_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_3_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_3_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_3_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysislocalization_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_3_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_3_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_3_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_3_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_3_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisperformance_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_recommended.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_all.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_default.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_minimum.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_none.editorconfig", + "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_recommended.editorconfig", + "documentation/Analyzer Configuration.md", + "documentation/Microsoft.CodeAnalysis.Analyzers.md", + "documentation/Microsoft.CodeAnalysis.Analyzers.sarif", + "editorconfig/AllRulesDefault/.editorconfig", + "editorconfig/AllRulesDisabled/.editorconfig", + "editorconfig/AllRulesEnabled/.editorconfig", + "editorconfig/CorrectnessRulesDefault/.editorconfig", + "editorconfig/CorrectnessRulesEnabled/.editorconfig", + "editorconfig/DataflowRulesDefault/.editorconfig", + "editorconfig/DataflowRulesEnabled/.editorconfig", + "editorconfig/LibraryRulesDefault/.editorconfig", + "editorconfig/LibraryRulesEnabled/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisCompatibilityRulesDefault/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisCompatibilityRulesEnabled/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisCorrectnessRulesDefault/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisCorrectnessRulesEnabled/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisDesignRulesDefault/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisDesignRulesEnabled/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisDocumentationRulesDefault/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisDocumentationRulesEnabled/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisLocalizationRulesDefault/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisLocalizationRulesEnabled/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisPerformanceRulesDefault/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisPerformanceRulesEnabled/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisReleaseTrackingRulesDefault/.editorconfig", + "editorconfig/MicrosoftCodeAnalysisReleaseTrackingRulesEnabled/.editorconfig", + "editorconfig/PortedFromFxCopRulesDefault/.editorconfig", + "editorconfig/PortedFromFxCopRulesEnabled/.editorconfig", + "microsoft.codeanalysis.analyzers.3.3.3.nupkg.sha512", + "microsoft.codeanalysis.analyzers.nuspec", + "rulesets/AllRulesDefault.ruleset", + "rulesets/AllRulesDisabled.ruleset", + "rulesets/AllRulesEnabled.ruleset", + "rulesets/CorrectnessRulesDefault.ruleset", + "rulesets/CorrectnessRulesEnabled.ruleset", + "rulesets/DataflowRulesDefault.ruleset", + "rulesets/DataflowRulesEnabled.ruleset", + "rulesets/LibraryRulesDefault.ruleset", + "rulesets/LibraryRulesEnabled.ruleset", + "rulesets/MicrosoftCodeAnalysisCompatibilityRulesDefault.ruleset", + "rulesets/MicrosoftCodeAnalysisCompatibilityRulesEnabled.ruleset", + "rulesets/MicrosoftCodeAnalysisCorrectnessRulesDefault.ruleset", + "rulesets/MicrosoftCodeAnalysisCorrectnessRulesEnabled.ruleset", + "rulesets/MicrosoftCodeAnalysisDesignRulesDefault.ruleset", + "rulesets/MicrosoftCodeAnalysisDesignRulesEnabled.ruleset", + "rulesets/MicrosoftCodeAnalysisDocumentationRulesDefault.ruleset", + "rulesets/MicrosoftCodeAnalysisDocumentationRulesEnabled.ruleset", + "rulesets/MicrosoftCodeAnalysisLocalizationRulesDefault.ruleset", + "rulesets/MicrosoftCodeAnalysisLocalizationRulesEnabled.ruleset", + "rulesets/MicrosoftCodeAnalysisPerformanceRulesDefault.ruleset", + "rulesets/MicrosoftCodeAnalysisPerformanceRulesEnabled.ruleset", + "rulesets/MicrosoftCodeAnalysisReleaseTrackingRulesDefault.ruleset", + "rulesets/MicrosoftCodeAnalysisReleaseTrackingRulesEnabled.ruleset", + "rulesets/PortedFromFxCopRulesDefault.ruleset", + "rulesets/PortedFromFxCopRulesEnabled.ruleset", + "tools/install.ps1", + "tools/uninstall.ps1" + ] + }, + "Microsoft.CodeAnalysis.AnalyzerUtilities/3.3.0": { + "sha512": "gyQ70pJ4T7hu/s0+QnEaXtYfeG/JrttGnxHJlrhpxsQjRIUGuRhVwNBtkHHYOrUAZ/l47L98/NiJX6QmTwAyrg==", + "type": "package", + "path": "microsoft.codeanalysis.analyzerutilities/3.3.0", + "hasTools": true, + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "EULA.rtf", + "ThirdPartyNotices.rtf", + "lib/netstandard2.0/Microsoft.CodeAnalysis.AnalyzerUtilities.dll", + "lib/netstandard2.0/Microsoft.CodeAnalysis.AnalyzerUtilities.xml", + "microsoft.codeanalysis.analyzerutilities.3.3.0.nupkg.sha512", + "microsoft.codeanalysis.analyzerutilities.nuspec", + "tools/install.ps1", + "tools/uninstall.ps1" + ] + }, + "Microsoft.CodeAnalysis.Common/4.4.0": { + "sha512": "JfHupS/B7Jb5MZoYkFFABn3mux0wQgxi2D8F/rJYZeRBK2ZOyk7TjQ2Kq9rh6W/DCh0KNbbSbn5qoFar+ueHqw==", + "type": "package", + "path": "microsoft.codeanalysis.common/4.4.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "ThirdPartyNotices.rtf", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.dll", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.pdb", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.xml", + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.resources.dll", + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.resources.dll", + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.resources.dll", + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.resources.dll", + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.resources.dll", + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.resources.dll", + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.resources.dll", + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.resources.dll", + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.resources.dll", + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.resources.dll", + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.resources.dll", + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.resources.dll", + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.resources.dll", + "lib/netstandard2.0/Microsoft.CodeAnalysis.dll", + "lib/netstandard2.0/Microsoft.CodeAnalysis.pdb", + "lib/netstandard2.0/Microsoft.CodeAnalysis.xml", + "lib/netstandard2.0/cs/Microsoft.CodeAnalysis.resources.dll", + "lib/netstandard2.0/de/Microsoft.CodeAnalysis.resources.dll", + "lib/netstandard2.0/es/Microsoft.CodeAnalysis.resources.dll", + "lib/netstandard2.0/fr/Microsoft.CodeAnalysis.resources.dll", + "lib/netstandard2.0/it/Microsoft.CodeAnalysis.resources.dll", + "lib/netstandard2.0/ja/Microsoft.CodeAnalysis.resources.dll", + "lib/netstandard2.0/ko/Microsoft.CodeAnalysis.resources.dll", + "lib/netstandard2.0/pl/Microsoft.CodeAnalysis.resources.dll", + "lib/netstandard2.0/pt-BR/Microsoft.CodeAnalysis.resources.dll", + "lib/netstandard2.0/ru/Microsoft.CodeAnalysis.resources.dll", + "lib/netstandard2.0/tr/Microsoft.CodeAnalysis.resources.dll", + "lib/netstandard2.0/zh-Hans/Microsoft.CodeAnalysis.resources.dll", + "lib/netstandard2.0/zh-Hant/Microsoft.CodeAnalysis.resources.dll", + "microsoft.codeanalysis.common.4.4.0.nupkg.sha512", + "microsoft.codeanalysis.common.nuspec" + ] + }, + "Microsoft.CodeAnalysis.CSharp/4.4.0": { + "sha512": "eD2w0xHRoaqK07hjlOKGR9eLNy3nimiGNeCClNax1NDgS/+DBtBqCjXelOa+TNy99kIB3nHhUqDmr46nDXy/RQ==", + "type": "package", + "path": "microsoft.codeanalysis.csharp/4.4.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "ThirdPartyNotices.rtf", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.dll", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.pdb", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.xml", + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netstandard2.0/Microsoft.CodeAnalysis.CSharp.dll", + "lib/netstandard2.0/Microsoft.CodeAnalysis.CSharp.pdb", + "lib/netstandard2.0/Microsoft.CodeAnalysis.CSharp.xml", + "lib/netstandard2.0/cs/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netstandard2.0/de/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netstandard2.0/es/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netstandard2.0/fr/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netstandard2.0/it/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netstandard2.0/ja/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netstandard2.0/ko/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netstandard2.0/pl/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netstandard2.0/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netstandard2.0/ru/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netstandard2.0/tr/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netstandard2.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll", + "lib/netstandard2.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll", + "microsoft.codeanalysis.csharp.4.4.0.nupkg.sha512", + "microsoft.codeanalysis.csharp.nuspec" + ] + }, + "Microsoft.CodeAnalysis.CSharp.Features/4.4.0": { + "sha512": "Un4XeiWD8Xo4A/Q6Wrkrt9UCas6EaP/ZfQAHXNjde5ULkvliWzvy0/ZlXzlPo6L/Xoon1BWOFMprIQWCjuLq9A==", + "type": "package", + "path": "microsoft.codeanalysis.csharp.features/4.4.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "ThirdPartyNotices.rtf", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.Features.dll", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.Features.pdb", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.Features.xml", + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.Features.resources.dll", + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.Features.resources.dll", + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.Features.resources.dll", + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.Features.resources.dll", + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.Features.resources.dll", + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.Features.resources.dll", + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.Features.resources.dll", + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.Features.resources.dll", + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.Features.resources.dll", + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.Features.resources.dll", + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.Features.resources.dll", + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.Features.resources.dll", + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.Features.resources.dll", + "lib/netstandard2.0/Microsoft.CodeAnalysis.CSharp.Features.dll", + "lib/netstandard2.0/Microsoft.CodeAnalysis.CSharp.Features.pdb", + "lib/netstandard2.0/Microsoft.CodeAnalysis.CSharp.Features.xml", + "lib/netstandard2.0/cs/Microsoft.CodeAnalysis.CSharp.Features.resources.dll", + "lib/netstandard2.0/de/Microsoft.CodeAnalysis.CSharp.Features.resources.dll", + "lib/netstandard2.0/es/Microsoft.CodeAnalysis.CSharp.Features.resources.dll", + "lib/netstandard2.0/fr/Microsoft.CodeAnalysis.CSharp.Features.resources.dll", + "lib/netstandard2.0/it/Microsoft.CodeAnalysis.CSharp.Features.resources.dll", + "lib/netstandard2.0/ja/Microsoft.CodeAnalysis.CSharp.Features.resources.dll", + "lib/netstandard2.0/ko/Microsoft.CodeAnalysis.CSharp.Features.resources.dll", + "lib/netstandard2.0/pl/Microsoft.CodeAnalysis.CSharp.Features.resources.dll", + "lib/netstandard2.0/pt-BR/Microsoft.CodeAnalysis.CSharp.Features.resources.dll", + "lib/netstandard2.0/ru/Microsoft.CodeAnalysis.CSharp.Features.resources.dll", + "lib/netstandard2.0/tr/Microsoft.CodeAnalysis.CSharp.Features.resources.dll", + "lib/netstandard2.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.Features.resources.dll", + "lib/netstandard2.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.Features.resources.dll", + "microsoft.codeanalysis.csharp.features.4.4.0.nupkg.sha512", + "microsoft.codeanalysis.csharp.features.nuspec" + ] + }, + "Microsoft.CodeAnalysis.CSharp.Workspaces/4.4.0": { + "sha512": "ADmI2jcwJP9GgBsVx2l0Bo0v3Hn4hHBg1uJ5zHd230mkO8rUJBLZu2h3tCbpwJMkpAIRtrxuZDD5uNfiyz0Q5Q==", + "type": "package", + "path": "microsoft.codeanalysis.csharp.workspaces/4.4.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "ThirdPartyNotices.rtf", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.Workspaces.dll", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.Workspaces.pdb", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.Workspaces.xml", + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netstandard2.0/Microsoft.CodeAnalysis.CSharp.Workspaces.dll", + "lib/netstandard2.0/Microsoft.CodeAnalysis.CSharp.Workspaces.pdb", + "lib/netstandard2.0/Microsoft.CodeAnalysis.CSharp.Workspaces.xml", + "lib/netstandard2.0/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netstandard2.0/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netstandard2.0/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netstandard2.0/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netstandard2.0/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netstandard2.0/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netstandard2.0/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netstandard2.0/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netstandard2.0/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netstandard2.0/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netstandard2.0/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netstandard2.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "lib/netstandard2.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll", + "microsoft.codeanalysis.csharp.workspaces.4.4.0.nupkg.sha512", + "microsoft.codeanalysis.csharp.workspaces.nuspec" + ] + }, + "Microsoft.CodeAnalysis.Elfie/1.0.0": { + "sha512": "r12elUp4MRjdnRfxEP+xqVSUUfG3yIJTBEJGwbfvF5oU4m0jb9HC0gFG28V/dAkYGMkRmHVi3qvrnBLQSw9X3Q==", + "type": "package", + "path": "microsoft.codeanalysis.elfie/1.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net45/Microsoft.CodeAnalysis.Elfie.dll", + "lib/netstandard2.0/Microsoft.CodeAnalysis.Elfie.dll", + "microsoft.codeanalysis.elfie.1.0.0.nupkg.sha512", + "microsoft.codeanalysis.elfie.nuspec" + ] + }, + "Microsoft.CodeAnalysis.Features/4.4.0": { + "sha512": "0LEXWpaDlZMl5lOnM872FuBmcDD99qKp4QmmFsMpJjnq7f21KuNchdyuSdh9pdpibl2JfdMWrvA56y5dKc6EPQ==", + "type": "package", + "path": "microsoft.codeanalysis.features/4.4.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "ThirdPartyNotices.rtf", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Features.dll", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Features.pdb", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Features.xml", + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.Features.resources.dll", + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.Features.resources.dll", + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.Features.resources.dll", + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.Features.resources.dll", + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.Features.resources.dll", + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.Features.resources.dll", + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.Features.resources.dll", + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.Features.resources.dll", + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.Features.resources.dll", + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.Features.resources.dll", + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.Features.resources.dll", + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.Features.resources.dll", + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.Features.resources.dll", + "lib/netstandard2.0/Microsoft.CodeAnalysis.Features.dll", + "lib/netstandard2.0/Microsoft.CodeAnalysis.Features.pdb", + "lib/netstandard2.0/Microsoft.CodeAnalysis.Features.xml", + "lib/netstandard2.0/cs/Microsoft.CodeAnalysis.Features.resources.dll", + "lib/netstandard2.0/de/Microsoft.CodeAnalysis.Features.resources.dll", + "lib/netstandard2.0/es/Microsoft.CodeAnalysis.Features.resources.dll", + "lib/netstandard2.0/fr/Microsoft.CodeAnalysis.Features.resources.dll", + "lib/netstandard2.0/it/Microsoft.CodeAnalysis.Features.resources.dll", + "lib/netstandard2.0/ja/Microsoft.CodeAnalysis.Features.resources.dll", + "lib/netstandard2.0/ko/Microsoft.CodeAnalysis.Features.resources.dll", + "lib/netstandard2.0/pl/Microsoft.CodeAnalysis.Features.resources.dll", + "lib/netstandard2.0/pt-BR/Microsoft.CodeAnalysis.Features.resources.dll", + "lib/netstandard2.0/ru/Microsoft.CodeAnalysis.Features.resources.dll", + "lib/netstandard2.0/tr/Microsoft.CodeAnalysis.Features.resources.dll", + "lib/netstandard2.0/zh-Hans/Microsoft.CodeAnalysis.Features.resources.dll", + "lib/netstandard2.0/zh-Hant/Microsoft.CodeAnalysis.Features.resources.dll", + "microsoft.codeanalysis.features.4.4.0.nupkg.sha512", + "microsoft.codeanalysis.features.nuspec" + ] + }, + "Microsoft.CodeAnalysis.Razor/6.0.11": { + "sha512": "40M7AHKPKvOw3LnWsaKmHitk0taBZ8982zoZBQstYzsfdH+tcIdeOewRHvuej23T7HV6d8se9MZdKC9O2I78vQ==", + "type": "package", + "path": "microsoft.codeanalysis.razor/6.0.11", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "THIRD-PARTY-NOTICES.TXT", + "lib/netstandard2.0/Microsoft.CodeAnalysis.Razor.dll", + "microsoft.codeanalysis.razor.6.0.11.nupkg.sha512", + "microsoft.codeanalysis.razor.nuspec" + ] + }, + "Microsoft.CodeAnalysis.Scripting.Common/4.4.0": { + "sha512": "RkAwCFJ8LfN7TfbWDejm50nucPxVoG/vDh0qVIoGx1U2FZhaBct72U4lGIACLuYsa0dIlC7Y0ivBemfDHnqWmA==", + "type": "package", + "path": "microsoft.codeanalysis.scripting.common/4.4.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "ThirdPartyNotices.rtf", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Scripting.dll", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Scripting.pdb", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Scripting.xml", + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.Scripting.resources.dll", + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.Scripting.resources.dll", + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.Scripting.resources.dll", + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.Scripting.resources.dll", + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.Scripting.resources.dll", + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.Scripting.resources.dll", + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.Scripting.resources.dll", + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.Scripting.resources.dll", + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.Scripting.resources.dll", + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.Scripting.resources.dll", + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.Scripting.resources.dll", + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.Scripting.resources.dll", + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.Scripting.resources.dll", + "lib/netstandard2.0/Microsoft.CodeAnalysis.Scripting.dll", + "lib/netstandard2.0/Microsoft.CodeAnalysis.Scripting.pdb", + "lib/netstandard2.0/Microsoft.CodeAnalysis.Scripting.xml", + "lib/netstandard2.0/cs/Microsoft.CodeAnalysis.Scripting.resources.dll", + "lib/netstandard2.0/de/Microsoft.CodeAnalysis.Scripting.resources.dll", + "lib/netstandard2.0/es/Microsoft.CodeAnalysis.Scripting.resources.dll", + "lib/netstandard2.0/fr/Microsoft.CodeAnalysis.Scripting.resources.dll", + "lib/netstandard2.0/it/Microsoft.CodeAnalysis.Scripting.resources.dll", + "lib/netstandard2.0/ja/Microsoft.CodeAnalysis.Scripting.resources.dll", + "lib/netstandard2.0/ko/Microsoft.CodeAnalysis.Scripting.resources.dll", + "lib/netstandard2.0/pl/Microsoft.CodeAnalysis.Scripting.resources.dll", + "lib/netstandard2.0/pt-BR/Microsoft.CodeAnalysis.Scripting.resources.dll", + "lib/netstandard2.0/ru/Microsoft.CodeAnalysis.Scripting.resources.dll", + "lib/netstandard2.0/tr/Microsoft.CodeAnalysis.Scripting.resources.dll", + "lib/netstandard2.0/zh-Hans/Microsoft.CodeAnalysis.Scripting.resources.dll", + "lib/netstandard2.0/zh-Hant/Microsoft.CodeAnalysis.Scripting.resources.dll", + "microsoft.codeanalysis.scripting.common.4.4.0.nupkg.sha512", + "microsoft.codeanalysis.scripting.common.nuspec" + ] + }, + "Microsoft.CodeAnalysis.Workspaces.Common/4.4.0": { + "sha512": "6KzmmTIUU7qInQldcSPaW0nkrO71zlFPhoiabFBhkokEit49rLx4Kr/G3agBchYzirScrXibqgTRQkvx9WcJTw==", + "type": "package", + "path": "microsoft.codeanalysis.workspaces.common/4.4.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "ThirdPartyNotices.rtf", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Workspaces.dll", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Workspaces.pdb", + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Workspaces.xml", + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netstandard2.0/Microsoft.CodeAnalysis.Workspaces.dll", + "lib/netstandard2.0/Microsoft.CodeAnalysis.Workspaces.pdb", + "lib/netstandard2.0/Microsoft.CodeAnalysis.Workspaces.xml", + "lib/netstandard2.0/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netstandard2.0/de/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netstandard2.0/es/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netstandard2.0/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netstandard2.0/it/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netstandard2.0/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netstandard2.0/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netstandard2.0/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netstandard2.0/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netstandard2.0/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netstandard2.0/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netstandard2.0/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "lib/netstandard2.0/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll", + "microsoft.codeanalysis.workspaces.common.4.4.0.nupkg.sha512", + "microsoft.codeanalysis.workspaces.common.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.DiaSymReader/1.4.0": { + "sha512": "iLtWq5/W5ePzSraavAFeXAbasE6REDByizTz6M8yQO3e4jf+6pRqPLdNCSvnSfKRVqsF7y/lTVWhqlf89ttweg==", + "type": "package", + "path": "microsoft.diasymreader/1.4.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "lib/net20/Microsoft.DiaSymReader.dll", + "lib/net20/Microsoft.DiaSymReader.pdb", + "lib/net20/Microsoft.DiaSymReader.xml", + "lib/netstandard1.1/Microsoft.DiaSymReader.dll", + "lib/netstandard1.1/Microsoft.DiaSymReader.pdb", + "lib/netstandard1.1/Microsoft.DiaSymReader.xml", + "microsoft.diasymreader.1.4.0.nupkg.sha512", + "microsoft.diasymreader.nuspec" + ] + }, + "Microsoft.DotNet.Scaffolding.Shared/7.0.8": { + "sha512": "QXtyFZWYAwlKymbFCQT5O21BJ7hLmQcJGB/EdvUV0VuJyeWJMf/8JSI+ijw3IoOd7MUTBpGVNNE8UDM9gUm4Qw==", + "type": "package", + "path": "microsoft.dotnet.scaffolding.shared/7.0.8", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "lib/net7.0/Microsoft.DotNet.Scaffolding.Shared.dll", + "lib/net7.0/Microsoft.DotNet.Scaffolding.Shared.xml", + "microsoft.dotnet.scaffolding.shared.7.0.8.nupkg.sha512", + "microsoft.dotnet.scaffolding.shared.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore/7.0.9": { + "sha512": "9YuCdQWuRAmYYHqwW1h5ukKMC1fmNvcVHdp3gb8zdHxwSQz7hkGpYOBEjm6dRXRmGRkpUyHL8rwUz4kd53Ev0A==", + "type": "package", + "path": "microsoft.entityframeworkcore/7.0.9", "files": [ ".nupkg.metadata", ".signature.p7s", @@ -672,42 +9550,42 @@ "buildTransitive/net6.0/Microsoft.EntityFrameworkCore.props", "lib/net6.0/Microsoft.EntityFrameworkCore.dll", "lib/net6.0/Microsoft.EntityFrameworkCore.xml", - "microsoft.entityframeworkcore.7.0.0.nupkg.sha512", + "microsoft.entityframeworkcore.7.0.9.nupkg.sha512", "microsoft.entityframeworkcore.nuspec" ] }, - "Microsoft.EntityFrameworkCore.Abstractions/7.0.0": { - "sha512": "Pfu3Zjj5+d2Gt27oE9dpGiF/VobBB+s5ogrfI9sBsXQE1SG49RqVz5+IyeNnzhyejFrPIQsPDRMchhcojy4Hbw==", + "Microsoft.EntityFrameworkCore.Abstractions/7.0.9": { + "sha512": "cfY6Fn7cnP/5pXndL8QYaey/B2nGn1fwze5aSaMJymmbqwqYzFiszHuWbsdVBCDYJc8ok7eB1m/nCc3/rltulQ==", "type": "package", - "path": "microsoft.entityframeworkcore.abstractions/7.0.0", + "path": "microsoft.entityframeworkcore.abstractions/7.0.9", "files": [ ".nupkg.metadata", ".signature.p7s", "Icon.png", "lib/net6.0/Microsoft.EntityFrameworkCore.Abstractions.dll", "lib/net6.0/Microsoft.EntityFrameworkCore.Abstractions.xml", - "microsoft.entityframeworkcore.abstractions.7.0.0.nupkg.sha512", + "microsoft.entityframeworkcore.abstractions.7.0.9.nupkg.sha512", "microsoft.entityframeworkcore.abstractions.nuspec" ] }, - "Microsoft.EntityFrameworkCore.Analyzers/7.0.0": { - "sha512": "Qkd2H+jLe37o5ku+LjT6qf7kAHY75Yfn2bBDQgqr13DTOLYpEy1Mt93KPFjaZvIu/srEcbfGGMRL7urKm5zN8Q==", + "Microsoft.EntityFrameworkCore.Analyzers/7.0.9": { + "sha512": "VvqFD3DdML6LhPCAR/lG2xNX66juylC8v57yUAAYnUSdEUOMRi3lNoT4OrNdG0rere3UOQPhvVl5FH2QdyoF8Q==", "type": "package", - "path": "microsoft.entityframeworkcore.analyzers/7.0.0", + "path": "microsoft.entityframeworkcore.analyzers/7.0.9", "files": [ ".nupkg.metadata", ".signature.p7s", "Icon.png", "analyzers/dotnet/cs/Microsoft.EntityFrameworkCore.Analyzers.dll", "lib/netstandard2.0/_._", - "microsoft.entityframeworkcore.analyzers.7.0.0.nupkg.sha512", + "microsoft.entityframeworkcore.analyzers.7.0.9.nupkg.sha512", "microsoft.entityframeworkcore.analyzers.nuspec" ] }, - "Microsoft.EntityFrameworkCore.Design/7.0.0": { - "sha512": "fEEU/zZ/VblZRQxHNZxgGKVtEtOGqEAmuHkACV1i0H031bM8PQKTS7PlKPVOgg0C1v+6yeHoIAGGgbAvG9f7kw==", + "Microsoft.EntityFrameworkCore.Design/7.0.9": { + "sha512": "tWsa+spzKZAwHrUP6vYM1LLh0P89UMcldEjerFPPZb0LcI/ONQmh7ldK4Q8TeRuIiuXxYgRYPElSgxwLp14oug==", "type": "package", - "path": "microsoft.entityframeworkcore.design/7.0.0", + "path": "microsoft.entityframeworkcore.design/7.0.9", "files": [ ".nupkg.metadata", ".signature.p7s", @@ -715,21 +9593,21 @@ "build/net6.0/Microsoft.EntityFrameworkCore.Design.props", "lib/net6.0/Microsoft.EntityFrameworkCore.Design.dll", "lib/net6.0/Microsoft.EntityFrameworkCore.Design.xml", - "microsoft.entityframeworkcore.design.7.0.0.nupkg.sha512", + "microsoft.entityframeworkcore.design.7.0.9.nupkg.sha512", "microsoft.entityframeworkcore.design.nuspec" ] }, - "Microsoft.EntityFrameworkCore.Relational/7.0.0": { - "sha512": "eQiYygtR2xZ0Uy7KtiFRHpoEx/U8xNwbNRgu1pEJgSxbJLtg6tDL1y2YcIbSuIRSNEljXIIHq/apEhGm1QL70g==", + "Microsoft.EntityFrameworkCore.Relational/7.0.9": { + "sha512": "u7iN6cNd6SJUlpdk24JVIbkji/UbkEEQ7pXncTyT4eXXj+Hz2y4NSZFOAywPGcioIgX1YzbKWDiJhk7hjSFxBQ==", "type": "package", - "path": "microsoft.entityframeworkcore.relational/7.0.0", + "path": "microsoft.entityframeworkcore.relational/7.0.9", "files": [ ".nupkg.metadata", ".signature.p7s", "Icon.png", "lib/net6.0/Microsoft.EntityFrameworkCore.Relational.dll", "lib/net6.0/Microsoft.EntityFrameworkCore.Relational.xml", - "microsoft.entityframeworkcore.relational.7.0.0.nupkg.sha512", + "microsoft.entityframeworkcore.relational.7.0.9.nupkg.sha512", "microsoft.entityframeworkcore.relational.nuspec" ] }, @@ -1286,13 +10164,15 @@ "useSharedDesignerContext.txt" ] }, - "Microsoft.IdentityModel.Abstractions/7.0.0": { - "sha512": "7iSWSRR72VKeonFdfDi43Lvkca98Y0F3TmmWhRSuHbkjk/IKUSO0Qd272LQFZpi5eDNQNbUXy3o4THXhOAU6cw==", + "Microsoft.IdentityModel.Abstractions/6.35.0": { + "sha512": "xuR8E4Rd96M41CnUSCiOJ2DBh+z+zQSmyrYHdYhD6K4fXBcQGVnRCFQ0efROUYpP+p0zC1BLKr0JRpVuujTZSg==", "type": "package", - "path": "microsoft.identitymodel.abstractions/7.0.0", + "path": "microsoft.identitymodel.abstractions/6.35.0", "files": [ ".nupkg.metadata", ".signature.p7s", + "lib/net45/Microsoft.IdentityModel.Abstractions.dll", + "lib/net45/Microsoft.IdentityModel.Abstractions.xml", "lib/net461/Microsoft.IdentityModel.Abstractions.dll", "lib/net461/Microsoft.IdentityModel.Abstractions.xml", "lib/net462/Microsoft.IdentityModel.Abstractions.dll", @@ -1301,21 +10181,44 @@ "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/netstandard2.0/Microsoft.IdentityModel.Abstractions.dll", "lib/netstandard2.0/Microsoft.IdentityModel.Abstractions.xml", - "microsoft.identitymodel.abstractions.7.0.0.nupkg.sha512", + "microsoft.identitymodel.abstractions.6.35.0.nupkg.sha512", "microsoft.identitymodel.abstractions.nuspec" ] }, - "Microsoft.IdentityModel.Logging/7.0.0": { - "sha512": "6I35Kt2/PQZAyUYLo3+QgT/LubZ5/4Ojelkbyo8KKdDgjMbVocAx2B3P5V7iMCz+rsAe/RLr6ql87QKnHtI+aw==", + "Microsoft.IdentityModel.JsonWebTokens/6.35.0": { + "sha512": "9wxai3hKgZUb4/NjdRKfQd0QJvtXKDlvmGMYACbEC8DFaicMFCFhQFZq9ZET1kJLwZahf2lfY5Gtcpsx8zYzbg==", "type": "package", - "path": "microsoft.identitymodel.logging/7.0.0", + "path": "microsoft.identitymodel.jsonwebtokens/6.35.0", "files": [ ".nupkg.metadata", ".signature.p7s", + "lib/net45/Microsoft.IdentityModel.JsonWebTokens.dll", + "lib/net45/Microsoft.IdentityModel.JsonWebTokens.xml", + "lib/net461/Microsoft.IdentityModel.JsonWebTokens.dll", + "lib/net461/Microsoft.IdentityModel.JsonWebTokens.xml", + "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/netstandard2.0/Microsoft.IdentityModel.JsonWebTokens.dll", + "lib/netstandard2.0/Microsoft.IdentityModel.JsonWebTokens.xml", + "microsoft.identitymodel.jsonwebtokens.6.35.0.nupkg.sha512", + "microsoft.identitymodel.jsonwebtokens.nuspec" + ] + }, + "Microsoft.IdentityModel.Logging/6.35.0": { + "sha512": "jePrSfGAmqT81JDCNSY+fxVWoGuJKt9e6eJ+vT7+quVS55nWl//jGjUQn4eFtVKt4rt5dXaleZdHRB9J9AJZ7Q==", + "type": "package", + "path": "microsoft.identitymodel.logging/6.35.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net45/Microsoft.IdentityModel.Logging.dll", + "lib/net45/Microsoft.IdentityModel.Logging.xml", "lib/net461/Microsoft.IdentityModel.Logging.dll", "lib/net461/Microsoft.IdentityModel.Logging.xml", "lib/net462/Microsoft.IdentityModel.Logging.dll", @@ -1324,21 +10227,67 @@ "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/netstandard2.0/Microsoft.IdentityModel.Logging.dll", "lib/netstandard2.0/Microsoft.IdentityModel.Logging.xml", - "microsoft.identitymodel.logging.7.0.0.nupkg.sha512", + "microsoft.identitymodel.logging.6.35.0.nupkg.sha512", "microsoft.identitymodel.logging.nuspec" ] }, - "Microsoft.IdentityModel.Tokens/7.0.0": { - "sha512": "dxYqmmFLsjBQZ6F6a4XDzrZ1CTxBRFVigJvWiNtXiIsT6UlYMxs9ONMaGx9XKzcxmcgEQ2ADuCqKZduz0LR9Hw==", + "Microsoft.IdentityModel.Protocols/6.35.0": { + "sha512": "BPQhlDzdFvv1PzaUxNSk+VEPwezlDEVADIKmyxubw7IiELK18uJ06RQ9QKKkds30XI+gDu9n8j24XQ8w7fjWcg==", "type": "package", - "path": "microsoft.identitymodel.tokens/7.0.0", + "path": "microsoft.identitymodel.protocols/6.35.0", "files": [ ".nupkg.metadata", ".signature.p7s", + "lib/net45/Microsoft.IdentityModel.Protocols.dll", + "lib/net45/Microsoft.IdentityModel.Protocols.xml", + "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/netstandard2.0/Microsoft.IdentityModel.Protocols.dll", + "lib/netstandard2.0/Microsoft.IdentityModel.Protocols.xml", + "microsoft.identitymodel.protocols.6.35.0.nupkg.sha512", + "microsoft.identitymodel.protocols.nuspec" + ] + }, + "Microsoft.IdentityModel.Protocols.OpenIdConnect/6.35.0": { + "sha512": "LMtVqnECCCdSmyFoCOxIE5tXQqkOLrvGrL7OxHg41DIm1bpWtaCdGyVcTAfOQpJXvzND9zUKIN/lhngPkYR8vg==", + "type": "package", + "path": "microsoft.identitymodel.protocols.openidconnect/6.35.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net45/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", + "lib/net45/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", + "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/netstandard2.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", + "lib/netstandard2.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", + "microsoft.identitymodel.protocols.openidconnect.6.35.0.nupkg.sha512", + "microsoft.identitymodel.protocols.openidconnect.nuspec" + ] + }, + "Microsoft.IdentityModel.Tokens/6.35.0": { + "sha512": "RN7lvp7s3Boucg1NaNAbqDbxtlLj5Qeb+4uSS1TeK5FSBVM40P4DKaTKChT43sHyKfh7V0zkrMph6DdHvyA4bg==", + "type": "package", + "path": "microsoft.identitymodel.tokens/6.35.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net45/Microsoft.IdentityModel.Tokens.dll", + "lib/net45/Microsoft.IdentityModel.Tokens.xml", "lib/net461/Microsoft.IdentityModel.Tokens.dll", "lib/net461/Microsoft.IdentityModel.Tokens.xml", "lib/net462/Microsoft.IdentityModel.Tokens.dll", @@ -1347,28 +10296,803 @@ "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/netstandard2.0/Microsoft.IdentityModel.Tokens.dll", "lib/netstandard2.0/Microsoft.IdentityModel.Tokens.xml", - "microsoft.identitymodel.tokens.7.0.0.nupkg.sha512", + "microsoft.identitymodel.tokens.6.35.0.nupkg.sha512", "microsoft.identitymodel.tokens.nuspec" ] }, - "Microsoft.OpenApi/1.4.3": { - "sha512": "rURwggB+QZYcSVbDr7HSdhw/FELvMlriW10OeOzjPT7pstefMo7IThhtNtDudxbXhW+lj0NfX72Ka5EDsG8x6w==", + "Microsoft.NET.Build.Containers/7.0.400": { + "sha512": "4DfJuN5nCYmfIALEuSKeIEiSNA1oukrT5KQ67M4/gW2Y/ElnrMaFBypgo8JwnMHHTaxrAxp3KPtDUrIXSKhW9w==", "type": "package", - "path": "microsoft.openapi/1.4.3", + "path": "microsoft.net.build.containers/7.0.400", "files": [ ".nupkg.metadata", ".signature.p7s", + "Icon.png", + "README.md", + "build/Microsoft.NET.Build.Containers.props", + "build/Microsoft.NET.Build.Containers.targets", + "containerize/Microsoft.DotNet.Cli.Utils.dll", + "containerize/Microsoft.Extensions.Configuration.Abstractions.dll", + "containerize/Microsoft.Extensions.Configuration.Binder.dll", + "containerize/Microsoft.Extensions.Configuration.dll", + "containerize/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "containerize/Microsoft.Extensions.DependencyInjection.dll", + "containerize/Microsoft.Extensions.DependencyModel.dll", + "containerize/Microsoft.Extensions.Logging.Abstractions.dll", + "containerize/Microsoft.Extensions.Logging.Configuration.dll", + "containerize/Microsoft.Extensions.Logging.Console.dll", + "containerize/Microsoft.Extensions.Logging.dll", + "containerize/Microsoft.Extensions.Options.ConfigurationExtensions.dll", + "containerize/Microsoft.Extensions.Options.dll", + "containerize/Microsoft.Extensions.Primitives.dll", + "containerize/Microsoft.NET.Build.Containers.dll", + "containerize/Newtonsoft.Json.dll", + "containerize/NuGet.Common.dll", + "containerize/NuGet.Configuration.dll", + "containerize/NuGet.DependencyResolver.Core.dll", + "containerize/NuGet.Frameworks.dll", + "containerize/NuGet.LibraryModel.dll", + "containerize/NuGet.Packaging.dll", + "containerize/NuGet.ProjectModel.dll", + "containerize/NuGet.Protocol.dll", + "containerize/NuGet.Versioning.dll", + "containerize/System.CommandLine.dll", + "containerize/Valleysoft.DockerCredsProvider.dll", + "containerize/containerize.dll", + "containerize/containerize.runtimeconfig.json", + "microsoft.net.build.containers.7.0.400.nupkg.sha512", + "microsoft.net.build.containers.nuspec", + "tasks/net472/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "tasks/net472/Microsoft.Extensions.DependencyInjection.dll", + "tasks/net472/Microsoft.Extensions.DependencyModel.dll", + "tasks/net472/Microsoft.Extensions.Logging.Abstractions.dll", + "tasks/net472/Microsoft.Extensions.Logging.dll", + "tasks/net472/Microsoft.Extensions.Options.dll", + "tasks/net472/Microsoft.Extensions.Primitives.dll", + "tasks/net472/Microsoft.NET.Build.Containers.dll", + "tasks/net472/Newtonsoft.Json.dll", + "tasks/net472/NuGet.Common.dll", + "tasks/net472/NuGet.Configuration.dll", + "tasks/net472/NuGet.DependencyResolver.Core.dll", + "tasks/net472/NuGet.Frameworks.dll", + "tasks/net472/NuGet.LibraryModel.dll", + "tasks/net472/NuGet.Packaging.Core.dll", + "tasks/net472/NuGet.Packaging.dll", + "tasks/net472/NuGet.ProjectModel.dll", + "tasks/net472/NuGet.Protocol.dll", + "tasks/net472/NuGet.Versioning.dll", + "tasks/net7.0/Microsoft.DotNet.Cli.Utils.dll", + "tasks/net7.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "tasks/net7.0/Microsoft.Extensions.DependencyInjection.dll", + "tasks/net7.0/Microsoft.Extensions.DependencyModel.dll", + "tasks/net7.0/Microsoft.Extensions.Logging.Abstractions.dll", + "tasks/net7.0/Microsoft.Extensions.Logging.dll", + "tasks/net7.0/Microsoft.Extensions.Options.dll", + "tasks/net7.0/Microsoft.Extensions.Primitives.dll", + "tasks/net7.0/Microsoft.NET.Build.Containers.deps.json", + "tasks/net7.0/Microsoft.NET.Build.Containers.dll", + "tasks/net7.0/Newtonsoft.Json.dll", + "tasks/net7.0/NuGet.Common.dll", + "tasks/net7.0/NuGet.Configuration.dll", + "tasks/net7.0/NuGet.DependencyResolver.Core.dll", + "tasks/net7.0/NuGet.Frameworks.dll", + "tasks/net7.0/NuGet.LibraryModel.dll", + "tasks/net7.0/NuGet.Packaging.Core.dll", + "tasks/net7.0/NuGet.Packaging.dll", + "tasks/net7.0/NuGet.ProjectModel.dll", + "tasks/net7.0/NuGet.Protocol.dll", + "tasks/net7.0/NuGet.Versioning.dll", + "tasks/net7.0/Valleysoft.DockerCredsProvider.dll" + ] + }, + "Microsoft.NET.StringTools/17.3.2": { + "sha512": "3sIZECEDSY9kP7BqPLOSIHLsiqv0TSU5cIGAMung+NrefIooo1tBMVRt598CGz+kUF1xlbOsO8nPAYpgfokx/Q==", + "type": "package", + "path": "microsoft.net.stringtools/17.3.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "MSBuild-NuGet-Icon.png", + "README.md", + "lib/net35/Microsoft.NET.StringTools.net35.dll", + "lib/net35/Microsoft.NET.StringTools.net35.pdb", + "lib/net35/Microsoft.NET.StringTools.net35.xml", + "lib/net472/Microsoft.NET.StringTools.dll", + "lib/net472/Microsoft.NET.StringTools.pdb", + "lib/net472/Microsoft.NET.StringTools.xml", + "lib/net6.0/Microsoft.NET.StringTools.dll", + "lib/net6.0/Microsoft.NET.StringTools.pdb", + "lib/net6.0/Microsoft.NET.StringTools.xml", + "microsoft.net.stringtools.17.3.2.nupkg.sha512", + "microsoft.net.stringtools.nuspec", + "notices/THIRDPARTYNOTICES.txt", + "ref/net35/Microsoft.NET.StringTools.net35.dll", + "ref/net35/Microsoft.NET.StringTools.net35.xml", + "ref/net472/Microsoft.NET.StringTools.dll", + "ref/net472/Microsoft.NET.StringTools.xml", + "ref/net6.0/Microsoft.NET.StringTools.dll", + "ref/net6.0/Microsoft.NET.StringTools.xml", + "ref/netstandard2.0/Microsoft.NET.StringTools.dll", + "ref/netstandard2.0/Microsoft.NET.StringTools.xml" + ] + }, + "Microsoft.NETCore.Platforms/1.1.0": { + "sha512": "kz0PEW2lhqygehI/d6XsPCQzD7ff7gUJaVGPVETX611eadGsA3A877GdSlU0LRVMCTH/+P3o2iDTak+S08V2+A==", + "type": "package", + "path": "microsoft.netcore.platforms/1.1.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/_._", + "microsoft.netcore.platforms.1.1.0.nupkg.sha512", + "microsoft.netcore.platforms.nuspec", + "runtime.json" + ] + }, + "Microsoft.NETCore.Targets/1.1.0": { + "sha512": "aOZA3BWfz9RXjpzt0sRJJMjAscAUm3Hoa4UWAfceV9UTYxgwZ1lZt5nO2myFf+/jetYQo4uTP7zS8sJY67BBxg==", + "type": "package", + "path": "microsoft.netcore.targets/1.1.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/_._", + "microsoft.netcore.targets.1.1.0.nupkg.sha512", + "microsoft.netcore.targets.nuspec", + "runtime.json" + ] + }, + "Microsoft.OpenApi/1.2.3": { + "sha512": "Nug3rO+7Kl5/SBAadzSMAVgqDlfGjJZ0GenQrLywJ84XGKO0uRqkunz5Wyl0SDwcR71bAATXvSdbdzPrYRYKGw==", + "type": "package", + "path": "microsoft.openapi/1.2.3", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net46/Microsoft.OpenApi.dll", + "lib/net46/Microsoft.OpenApi.pdb", + "lib/net46/Microsoft.OpenApi.xml", "lib/netstandard2.0/Microsoft.OpenApi.dll", "lib/netstandard2.0/Microsoft.OpenApi.pdb", "lib/netstandard2.0/Microsoft.OpenApi.xml", - "microsoft.openapi.1.4.3.nupkg.sha512", + "microsoft.openapi.1.2.3.nupkg.sha512", "microsoft.openapi.nuspec" ] }, + "Microsoft.VisualStudio.Web.CodeGeneration/7.0.8": { + "sha512": "AbrSIuBwG/7+7JBMOSyHVYqcz8YdUdArGIx4Asckm/U8FWKdT6NSJmObZh3X2Da2/W176FqG3MPTPtw/P0kJag==", + "type": "package", + "path": "microsoft.visualstudio.web.codegeneration/7.0.8", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.dll", + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.xml", + "microsoft.visualstudio.web.codegeneration.7.0.8.nupkg.sha512", + "microsoft.visualstudio.web.codegeneration.nuspec" + ] + }, + "Microsoft.VisualStudio.Web.CodeGeneration.Core/7.0.8": { + "sha512": "Wdud/mzEfFMHqPNBb+N+jVeI2INNSP5WlCrPepQqvoLqiZwM0wUvf7yWGrVbNHBMOjDk3lIavqjXNkY9PriOQg==", + "type": "package", + "path": "microsoft.visualstudio.web.codegeneration.core/7.0.8", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.Core.dll", + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.Core.xml", + "microsoft.visualstudio.web.codegeneration.core.7.0.8.nupkg.sha512", + "microsoft.visualstudio.web.codegeneration.core.nuspec" + ] + }, + "Microsoft.VisualStudio.Web.CodeGeneration.Design/7.0.8": { + "sha512": "56UeN0J8SA5PJjvf6Mv0ZbhLWO6Cr+YGM5eOsNejpQDL+ba8pt8BR7SBMTnSrZIOEeOhY3nAPUkOUK3bh+v3Tg==", + "type": "package", + "path": "microsoft.visualstudio.web.codegeneration.design/7.0.8", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "README.md", + "lib/net7.0/dotnet-aspnet-codegenerator-design.dll", + "lib/net7.0/dotnet-aspnet-codegenerator-design.xml", + "microsoft.visualstudio.web.codegeneration.design.7.0.8.nupkg.sha512", + "microsoft.visualstudio.web.codegeneration.design.nuspec" + ] + }, + "Microsoft.VisualStudio.Web.CodeGeneration.EntityFrameworkCore/7.0.8": { + "sha512": "xlyRk0pmpvPCzCot0bY+Lt6bctGC4dqrQxk1vk2ep+wTdH/CZ8FflnWHEKGBpd+kMrwy93UbJZ8HSAxlBLksLA==", + "type": "package", + "path": "microsoft.visualstudio.web.codegeneration.entityframeworkcore/7.0.8", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "Templates/DbContext/NewLocalDbContext.cshtml", + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.EntityFrameworkCore.dll", + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.EntityFrameworkCore.runtimeconfig.json", + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.EntityFrameworkCore.xml", + "microsoft.visualstudio.web.codegeneration.entityframeworkcore.7.0.8.nupkg.sha512", + "microsoft.visualstudio.web.codegeneration.entityframeworkcore.nuspec" + ] + }, + "Microsoft.VisualStudio.Web.CodeGeneration.Templating/7.0.8": { + "sha512": "JTepVMzR2XOr6BVgejMltlzi3O6LMpNb3dz0VKczsjKKX/l6ZT1iTUC6FjuHs9SNTc8rTlEK7hw2TIKpGy1tCQ==", + "type": "package", + "path": "microsoft.visualstudio.web.codegeneration.templating/7.0.8", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.Templating.dll", + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.Templating.xml", + "microsoft.visualstudio.web.codegeneration.templating.7.0.8.nupkg.sha512", + "microsoft.visualstudio.web.codegeneration.templating.nuspec" + ] + }, + "Microsoft.VisualStudio.Web.CodeGeneration.Utils/7.0.8": { + "sha512": "5T6uK9MH6zWXXyVinlvmbz7fFiuA5/UIFa1wAWD6ylkReDlPTEOq5AMwlkdlEPZuqMgICH4N3BQAizY/EIAlzA==", + "type": "package", + "path": "microsoft.visualstudio.web.codegeneration.utils/7.0.8", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.Utils.dll", + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGeneration.Utils.xml", + "microsoft.visualstudio.web.codegeneration.utils.7.0.8.nupkg.sha512", + "microsoft.visualstudio.web.codegeneration.utils.nuspec" + ] + }, + "Microsoft.VisualStudio.Web.CodeGenerators.Mvc/7.0.8": { + "sha512": "xQIJfP4NpuAnFykWuXW5nr+1WyPLNVbMhqFS7SKX6CIm32Ak9iCMFS1NSbksl5bfIXaSg1rjJM8TpZYoKM+Ffg==", + "type": "package", + "path": "microsoft.visualstudio.web.codegenerators.mvc/7.0.8", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Generators/ParameterDefinitions/area.json", + "Generators/ParameterDefinitions/controller.json", + "Generators/ParameterDefinitions/identity.json", + "Generators/ParameterDefinitions/minimalapi.json", + "Generators/ParameterDefinitions/razorpage.json", + "Generators/ParameterDefinitions/view.json", + "Icon.png", + "Templates/ControllerGenerator/ApiControllerWithActions.cshtml", + "Templates/ControllerGenerator/ApiControllerWithContext.cshtml", + "Templates/ControllerGenerator/ApiEmptyController.cshtml", + "Templates/ControllerGenerator/ControllerWithActions.cshtml", + "Templates/ControllerGenerator/EmptyController.cshtml", + "Templates/ControllerGenerator/MvcControllerWithContext.cshtml", + "Templates/Identity/Data/ApplicationDbContext.cshtml", + "Templates/Identity/Data/ApplicationUser.cshtml", + "Templates/Identity/IdentityHostingStartup.cshtml", + "Templates/Identity/Pages/Account/Account.AccessDenied.cs.cshtml", + "Templates/Identity/Pages/Account/Account.AccessDenied.cshtml", + "Templates/Identity/Pages/Account/Account.ConfirmEmail.cs.cshtml", + "Templates/Identity/Pages/Account/Account.ConfirmEmail.cshtml", + "Templates/Identity/Pages/Account/Account.ConfirmEmailChange.cs.cshtml", + "Templates/Identity/Pages/Account/Account.ConfirmEmailChange.cshtml", + "Templates/Identity/Pages/Account/Account.ExternalLogin.cs.cshtml", + "Templates/Identity/Pages/Account/Account.ExternalLogin.cshtml", + "Templates/Identity/Pages/Account/Account.ForgotPassword.cs.cshtml", + "Templates/Identity/Pages/Account/Account.ForgotPassword.cshtml", + "Templates/Identity/Pages/Account/Account.ForgotPasswordConfirmation.cs.cshtml", + "Templates/Identity/Pages/Account/Account.ForgotPasswordConfirmation.cshtml", + "Templates/Identity/Pages/Account/Account.Lockout.cs.cshtml", + "Templates/Identity/Pages/Account/Account.Lockout.cshtml", + "Templates/Identity/Pages/Account/Account.Login.cs.cshtml", + "Templates/Identity/Pages/Account/Account.Login.cshtml", + "Templates/Identity/Pages/Account/Account.LoginWith2fa.cs.cshtml", + "Templates/Identity/Pages/Account/Account.LoginWith2fa.cshtml", + "Templates/Identity/Pages/Account/Account.LoginWithRecoveryCode.cs.cshtml", + "Templates/Identity/Pages/Account/Account.LoginWithRecoveryCode.cshtml", + "Templates/Identity/Pages/Account/Account.Logout.cs.cshtml", + "Templates/Identity/Pages/Account/Account.Logout.cshtml", + "Templates/Identity/Pages/Account/Account.Register.cs.cshtml", + "Templates/Identity/Pages/Account/Account.Register.cshtml", + "Templates/Identity/Pages/Account/Account.RegisterConfirmation.cs.cshtml", + "Templates/Identity/Pages/Account/Account.RegisterConfirmation.cshtml", + "Templates/Identity/Pages/Account/Account.ResendEmailConfirmation.cs.cshtml", + "Templates/Identity/Pages/Account/Account.ResendEmailConfirmation.cshtml", + "Templates/Identity/Pages/Account/Account.ResetPassword.cs.cshtml", + "Templates/Identity/Pages/Account/Account.ResetPassword.cshtml", + "Templates/Identity/Pages/Account/Account.ResetPasswordConfirmation.cs.cshtml", + "Templates/Identity/Pages/Account/Account.ResetPasswordConfirmation.cshtml", + "Templates/Identity/Pages/Account/Account._StatusMessage.cshtml", + "Templates/Identity/Pages/Account/Account._ViewImports.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.ChangePassword.cs.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.ChangePassword.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.DeletePersonalData.cs.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.DeletePersonalData.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.Disable2fa.cs.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.Disable2fa.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.DownloadPersonalData.cs.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.DownloadPersonalData.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.Email.cs.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.Email.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.EnableAuthenticator.cs.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.EnableAuthenticator.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.ExternalLogins.cs.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.ExternalLogins.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.GenerateRecoveryCodes.cs.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.GenerateRecoveryCodes.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.Index.cs.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.Index.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.ManageNavPages.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.PersonalData.cs.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.PersonalData.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.ResetAuthenticator.cs.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.ResetAuthenticator.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.SetPassword.cs.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.SetPassword.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.ShowRecoveryCodes.cs.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.ShowRecoveryCodes.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.TwoFactorAuthentication.cs.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.TwoFactorAuthentication.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage._Layout.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage._ManageNav.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage._StatusMessage.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage._ViewImports.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage._ViewStart.cshtml", + "Templates/Identity/Pages/Error.cs.cshtml", + "Templates/Identity/Pages/Error.cshtml", + "Templates/Identity/Pages/_Layout.cshtml", + "Templates/Identity/Pages/_ValidationScriptsPartial.cshtml", + "Templates/Identity/Pages/_ViewImports.cshtml", + "Templates/Identity/Pages/_ViewStart.cshtml", + "Templates/Identity/ScaffoldingReadme.cshtml", + "Templates/Identity/SupportPages._CookieConsentPartial.cshtml", + "Templates/Identity/SupportPages._ViewImports.cshtml", + "Templates/Identity/SupportPages._ViewStart.cshtml", + "Templates/Identity/_LoginPartial.cshtml", + "Templates/Identity/wwwroot/css/site.css", + "Templates/Identity/wwwroot/favicon.ico", + "Templates/Identity/wwwroot/js/site.js", + "Templates/Identity/wwwroot/lib/bootstrap/LICENSE", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-grid.css", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-grid.css.map", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-grid.min.css", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-grid.min.css.map", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-grid.rtl.css", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-grid.rtl.css.map", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-grid.rtl.min.css", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-grid.rtl.min.css.map", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-reboot.css", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-reboot.css.map", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-reboot.min.css", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-reboot.min.css.map", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-reboot.rtl.css", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-reboot.rtl.css.map", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-reboot.rtl.min.css", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-reboot.rtl.min.css.map", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-utilities.css", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-utilities.css.map", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-utilities.min.css", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-utilities.min.css.map", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-utilities.rtl.css", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-utilities.rtl.css.map", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-utilities.rtl.min.css", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-utilities.rtl.min.css.map", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap.css", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap.css.map", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap.min.css", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap.min.css.map", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap.rtl.css", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap.rtl.css.map", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap.rtl.min.css", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap.rtl.min.css.map", + "Templates/Identity/wwwroot/lib/bootstrap/dist/js/bootstrap.bundle.js", + "Templates/Identity/wwwroot/lib/bootstrap/dist/js/bootstrap.bundle.js.map", + "Templates/Identity/wwwroot/lib/bootstrap/dist/js/bootstrap.bundle.min.js", + "Templates/Identity/wwwroot/lib/bootstrap/dist/js/bootstrap.bundle.min.js.map", + "Templates/Identity/wwwroot/lib/bootstrap/dist/js/bootstrap.esm.js", + "Templates/Identity/wwwroot/lib/bootstrap/dist/js/bootstrap.esm.js.map", + "Templates/Identity/wwwroot/lib/bootstrap/dist/js/bootstrap.esm.min.js", + "Templates/Identity/wwwroot/lib/bootstrap/dist/js/bootstrap.esm.min.js.map", + "Templates/Identity/wwwroot/lib/bootstrap/dist/js/bootstrap.js", + "Templates/Identity/wwwroot/lib/bootstrap/dist/js/bootstrap.js.map", + "Templates/Identity/wwwroot/lib/bootstrap/dist/js/bootstrap.min.js", + "Templates/Identity/wwwroot/lib/bootstrap/dist/js/bootstrap.min.js.map", + "Templates/Identity/wwwroot/lib/jquery-validation-unobtrusive/LICENSE.txt", + "Templates/Identity/wwwroot/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js", + "Templates/Identity/wwwroot/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.min.js", + "Templates/Identity/wwwroot/lib/jquery-validation/LICENSE.md", + "Templates/Identity/wwwroot/lib/jquery-validation/dist/additional-methods.js", + "Templates/Identity/wwwroot/lib/jquery-validation/dist/additional-methods.min.js", + "Templates/Identity/wwwroot/lib/jquery-validation/dist/jquery.validate.js", + "Templates/Identity/wwwroot/lib/jquery-validation/dist/jquery.validate.min.js", + "Templates/Identity/wwwroot/lib/jquery/LICENSE.txt", + "Templates/Identity/wwwroot/lib/jquery/dist/jquery.js", + "Templates/Identity/wwwroot/lib/jquery/dist/jquery.min.js", + "Templates/Identity/wwwroot/lib/jquery/dist/jquery.min.map", + "Templates/Identity_Versioned/Bootstrap3/Data/ApplicationDbContext.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Data/ApplicationUser.cshtml", + "Templates/Identity_Versioned/Bootstrap3/IdentityHostingStartup.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.AccessDenied.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.AccessDenied.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.ConfirmEmail.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.ConfirmEmail.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.ConfirmEmailChange.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.ConfirmEmailChange.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.ExternalLogin.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.ExternalLogin.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.ForgotPassword.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.ForgotPassword.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.ForgotPasswordConfirmation.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.ForgotPasswordConfirmation.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.Lockout.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.Lockout.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.Login.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.Login.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.LoginWith2fa.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.LoginWith2fa.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.LoginWithRecoveryCode.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.LoginWithRecoveryCode.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.Logout.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.Logout.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.Register.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.Register.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.RegisterConfirmation.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.RegisterConfirmation.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.ResendEmailConfirmation.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.ResendEmailConfirmation.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.ResetPassword.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.ResetPassword.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.ResetPasswordConfirmation.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account.ResetPasswordConfirmation.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account._StatusMessage.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Account._ViewImports.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.ChangePassword.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.ChangePassword.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.DeletePersonalData.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.DeletePersonalData.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.Disable2fa.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.Disable2fa.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.DownloadPersonalData.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.DownloadPersonalData.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.Email.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.Email.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.EnableAuthenticator.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.EnableAuthenticator.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.ExternalLogins.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.ExternalLogins.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.GenerateRecoveryCodes.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.GenerateRecoveryCodes.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.Index.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.Index.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.ManageNavPages.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.PersonalData.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.PersonalData.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.ResetAuthenticator.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.ResetAuthenticator.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.SetPassword.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.SetPassword.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.ShowRecoveryCodes.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.ShowRecoveryCodes.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.TwoFactorAuthentication.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage.TwoFactorAuthentication.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage._Layout.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage._ManageNav.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage._StatusMessage.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Account/Manage/Account.Manage._ViewImports.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Error.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/Error.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/_Layout.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/_ValidationScriptsPartial.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/_ViewImports.cshtml", + "Templates/Identity_Versioned/Bootstrap3/Pages/_ViewStart.cshtml", + "Templates/Identity_Versioned/Bootstrap3/ScaffoldingReadme.cshtml", + "Templates/Identity_Versioned/Bootstrap3/SupportPages._CookieConsentPartial.cshtml", + "Templates/Identity_Versioned/Bootstrap3/SupportPages._ViewImports.cshtml", + "Templates/Identity_Versioned/Bootstrap3/SupportPages._ViewStart.cshtml", + "Templates/Identity_Versioned/Bootstrap3/_LoginPartial.cshtml", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/css/site.css", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/favicon.ico", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/images/banner1.svg", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/images/banner2.svg", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/images/banner3.svg", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/js/site.js", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/bootstrap/LICENSE", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.css", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.css.map", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.min.css", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.min.css.map", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/bootstrap/dist/css/bootstrap.css", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/bootstrap/dist/css/bootstrap.css.map", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/bootstrap/dist/css/bootstrap.min.css", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/bootstrap/dist/css/bootstrap.min.css.map", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.eot", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.svg", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.woff", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.woff2", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/bootstrap/dist/js/bootstrap.js", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/bootstrap/dist/js/bootstrap.min.js", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/bootstrap/dist/js/npm.js", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/jquery-validation-unobtrusive/LICENSE.txt", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.min.js", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/jquery-validation/LICENSE.md", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/jquery-validation/dist/additional-methods.js", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/jquery-validation/dist/additional-methods.min.js", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/jquery-validation/dist/jquery.validate.js", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/jquery-validation/dist/jquery.validate.min.js", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/jquery/LICENSE.txt", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/jquery/dist/jquery.js", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/jquery/dist/jquery.min.js", + "Templates/Identity_Versioned/Bootstrap3/wwwroot/lib/jquery/dist/jquery.min.map", + "Templates/Identity_Versioned/Bootstrap4/Data/ApplicationDbContext.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Data/ApplicationUser.cshtml", + "Templates/Identity_Versioned/Bootstrap4/IdentityHostingStartup.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.AccessDenied.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.AccessDenied.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.ConfirmEmail.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.ConfirmEmail.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.ConfirmEmailChange.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.ConfirmEmailChange.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.ExternalLogin.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.ExternalLogin.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.ForgotPassword.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.ForgotPassword.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.ForgotPasswordConfirmation.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.ForgotPasswordConfirmation.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.Lockout.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.Lockout.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.Login.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.Login.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.LoginWith2fa.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.LoginWith2fa.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.LoginWithRecoveryCode.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.LoginWithRecoveryCode.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.Logout.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.Logout.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.Register.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.Register.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.RegisterConfirmation.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.RegisterConfirmation.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.ResendEmailConfirmation.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.ResendEmailConfirmation.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.ResetPassword.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.ResetPassword.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.ResetPasswordConfirmation.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account.ResetPasswordConfirmation.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account._StatusMessage.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Account._ViewImports.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.ChangePassword.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.ChangePassword.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.DeletePersonalData.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.DeletePersonalData.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.Disable2fa.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.Disable2fa.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.DownloadPersonalData.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.DownloadPersonalData.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.Email.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.Email.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.EnableAuthenticator.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.EnableAuthenticator.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.ExternalLogins.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.ExternalLogins.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.GenerateRecoveryCodes.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.GenerateRecoveryCodes.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.Index.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.Index.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.ManageNavPages.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.PersonalData.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.PersonalData.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.ResetAuthenticator.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.ResetAuthenticator.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.SetPassword.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.SetPassword.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.ShowRecoveryCodes.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.ShowRecoveryCodes.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.TwoFactorAuthentication.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage.TwoFactorAuthentication.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage._Layout.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage._ManageNav.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage._StatusMessage.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Account/Manage/Account.Manage._ViewImports.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Error.cs.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/Error.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/_Layout.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/_ValidationScriptsPartial.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/_ViewImports.cshtml", + "Templates/Identity_Versioned/Bootstrap4/Pages/_ViewStart.cshtml", + "Templates/Identity_Versioned/Bootstrap4/ScaffoldingReadme.cshtml", + "Templates/Identity_Versioned/Bootstrap4/SupportPages._CookieConsentPartial.cshtml", + "Templates/Identity_Versioned/Bootstrap4/SupportPages._ViewImports.cshtml", + "Templates/Identity_Versioned/Bootstrap4/SupportPages._ViewStart.cshtml", + "Templates/Identity_Versioned/Bootstrap4/_LoginPartial.cshtml", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/css/site.css", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/favicon.ico", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/js/site.js", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/bootstrap/LICENSE", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/bootstrap/dist/css/bootstrap-grid.css", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/bootstrap/dist/css/bootstrap-grid.css.map", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/bootstrap/dist/css/bootstrap-grid.min.css", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/bootstrap/dist/css/bootstrap-grid.min.css.map", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/bootstrap/dist/css/bootstrap-reboot.css", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/bootstrap/dist/css/bootstrap-reboot.css.map", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/bootstrap/dist/css/bootstrap-reboot.min.css", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/bootstrap/dist/css/bootstrap-reboot.min.css.map", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/bootstrap/dist/css/bootstrap.css", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/bootstrap/dist/css/bootstrap.css.map", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/bootstrap/dist/css/bootstrap.min.css", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/bootstrap/dist/css/bootstrap.min.css.map", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/bootstrap/dist/js/bootstrap.bundle.js", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/bootstrap/dist/js/bootstrap.bundle.js.map", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/bootstrap/dist/js/bootstrap.bundle.min.js", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/bootstrap/dist/js/bootstrap.bundle.min.js.map", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/bootstrap/dist/js/bootstrap.js", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/bootstrap/dist/js/bootstrap.js.map", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/bootstrap/dist/js/bootstrap.min.js", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/bootstrap/dist/js/bootstrap.min.js.map", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/jquery-validation-unobtrusive/LICENSE.txt", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.min.js", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/jquery-validation/LICENSE.md", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/jquery-validation/dist/additional-methods.js", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/jquery-validation/dist/additional-methods.min.js", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/jquery-validation/dist/jquery.validate.js", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/jquery-validation/dist/jquery.validate.min.js", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/jquery/LICENSE.txt", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/jquery/dist/jquery.js", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/jquery/dist/jquery.min.js", + "Templates/Identity_Versioned/Bootstrap4/wwwroot/lib/jquery/dist/jquery.min.map", + "Templates/MinimalApi/MinimalApi.cshtml", + "Templates/MinimalApi/MinimalApiEf.cshtml", + "Templates/MinimalApi/MinimalApiEfNoClass.cshtml", + "Templates/MinimalApi/MinimalApiNoClass.cshtml", + "Templates/MvcLayout/Error.cshtml", + "Templates/MvcLayout/_Layout.cshtml", + "Templates/RazorPageGenerator/Create.cshtml", + "Templates/RazorPageGenerator/CreatePageModel.cshtml", + "Templates/RazorPageGenerator/Delete.cshtml", + "Templates/RazorPageGenerator/DeletePageModel.cshtml", + "Templates/RazorPageGenerator/Details.cshtml", + "Templates/RazorPageGenerator/DetailsPageModel.cshtml", + "Templates/RazorPageGenerator/Edit.cshtml", + "Templates/RazorPageGenerator/EditPageModel.cshtml", + "Templates/RazorPageGenerator/Empty.cshtml", + "Templates/RazorPageGenerator/EmptyPageModel.cshtml", + "Templates/RazorPageGenerator/List.cshtml", + "Templates/RazorPageGenerator/ListPageModel.cshtml", + "Templates/RazorPageGenerator/_ValidationScriptsPartial.cshtml", + "Templates/RazorPageGenerator_Versioned/Bootstrap3/Create.cshtml", + "Templates/RazorPageGenerator_Versioned/Bootstrap3/CreatePageModel.cshtml", + "Templates/RazorPageGenerator_Versioned/Bootstrap3/Delete.cshtml", + "Templates/RazorPageGenerator_Versioned/Bootstrap3/DeletePageModel.cshtml", + "Templates/RazorPageGenerator_Versioned/Bootstrap3/Details.cshtml", + "Templates/RazorPageGenerator_Versioned/Bootstrap3/DetailsPageModel.cshtml", + "Templates/RazorPageGenerator_Versioned/Bootstrap3/Edit.cshtml", + "Templates/RazorPageGenerator_Versioned/Bootstrap3/EditPageModel.cshtml", + "Templates/RazorPageGenerator_Versioned/Bootstrap3/Empty.cshtml", + "Templates/RazorPageGenerator_Versioned/Bootstrap3/EmptyPageModel.cshtml", + "Templates/RazorPageGenerator_Versioned/Bootstrap3/List.cshtml", + "Templates/RazorPageGenerator_Versioned/Bootstrap3/ListPageModel.cshtml", + "Templates/RazorPageGenerator_Versioned/Bootstrap3/_ValidationScriptsPartial.cshtml", + "Templates/RazorPageGenerator_Versioned/Bootstrap4/Create.cshtml", + "Templates/RazorPageGenerator_Versioned/Bootstrap4/CreatePageModel.cshtml", + "Templates/RazorPageGenerator_Versioned/Bootstrap4/Delete.cshtml", + "Templates/RazorPageGenerator_Versioned/Bootstrap4/DeletePageModel.cshtml", + "Templates/RazorPageGenerator_Versioned/Bootstrap4/Details.cshtml", + "Templates/RazorPageGenerator_Versioned/Bootstrap4/DetailsPageModel.cshtml", + "Templates/RazorPageGenerator_Versioned/Bootstrap4/Edit.cshtml", + "Templates/RazorPageGenerator_Versioned/Bootstrap4/EditPageModel.cshtml", + "Templates/RazorPageGenerator_Versioned/Bootstrap4/Empty.cshtml", + "Templates/RazorPageGenerator_Versioned/Bootstrap4/EmptyPageModel.cshtml", + "Templates/RazorPageGenerator_Versioned/Bootstrap4/List.cshtml", + "Templates/RazorPageGenerator_Versioned/Bootstrap4/ListPageModel.cshtml", + "Templates/RazorPageGenerator_Versioned/Bootstrap4/_ValidationScriptsPartial.cshtml", + "Templates/Startup/ReadMe.cshtml", + "Templates/Startup/Startup.cshtml", + "Templates/ViewGenerator/Create.cshtml", + "Templates/ViewGenerator/Delete.cshtml", + "Templates/ViewGenerator/Details.cshtml", + "Templates/ViewGenerator/Edit.cshtml", + "Templates/ViewGenerator/Empty.cshtml", + "Templates/ViewGenerator/List.cshtml", + "Templates/ViewGenerator/_ValidationScriptsPartial.cshtml", + "Templates/ViewGenerator_Versioned/Bootstrap3/Create.cshtml", + "Templates/ViewGenerator_Versioned/Bootstrap3/Delete.cshtml", + "Templates/ViewGenerator_Versioned/Bootstrap3/Details.cshtml", + "Templates/ViewGenerator_Versioned/Bootstrap3/Edit.cshtml", + "Templates/ViewGenerator_Versioned/Bootstrap3/Empty.cshtml", + "Templates/ViewGenerator_Versioned/Bootstrap3/List.cshtml", + "Templates/ViewGenerator_Versioned/Bootstrap3/_ValidationScriptsPartial.cshtml", + "Templates/ViewGenerator_Versioned/Bootstrap4/Create.cshtml", + "Templates/ViewGenerator_Versioned/Bootstrap4/Delete.cshtml", + "Templates/ViewGenerator_Versioned/Bootstrap4/Details.cshtml", + "Templates/ViewGenerator_Versioned/Bootstrap4/Edit.cshtml", + "Templates/ViewGenerator_Versioned/Bootstrap4/Empty.cshtml", + "Templates/ViewGenerator_Versioned/Bootstrap4/List.cshtml", + "Templates/ViewGenerator_Versioned/Bootstrap4/_ValidationScriptsPartial.cshtml", + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGenerators.Mvc.dll", + "lib/net7.0/Microsoft.VisualStudio.Web.CodeGenerators.Mvc.xml", + "lib/net7.0/bootstrap3_identitygeneratorfilesconfig.json", + "lib/net7.0/bootstrap4_identitygeneratorfilesconfig.json", + "lib/net7.0/bootstrap5_identitygeneratorfilesconfig.json", + "lib/net7.0/identityMinimalHostingChanges.json", + "lib/net7.0/minimalApiChanges.json", + "microsoft.visualstudio.web.codegenerators.mvc.7.0.8.nupkg.sha512", + "microsoft.visualstudio.web.codegenerators.mvc.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/_._" + ] + }, + "Microsoft.Win32.SystemEvents/6.0.0": { + "sha512": "hqTM5628jSsQiv+HGpiq3WKBl2c8v1KZfby2J6Pr7pEPlK9waPdgEO6b8A/+/xn/yZ9ulv8HuqK71ONy2tg67A==", + "type": "package", + "path": "microsoft.win32.systemevents/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/Microsoft.Win32.SystemEvents.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/Microsoft.Win32.SystemEvents.dll", + "lib/net461/Microsoft.Win32.SystemEvents.xml", + "lib/net6.0/Microsoft.Win32.SystemEvents.dll", + "lib/net6.0/Microsoft.Win32.SystemEvents.xml", + "lib/netcoreapp3.1/Microsoft.Win32.SystemEvents.dll", + "lib/netcoreapp3.1/Microsoft.Win32.SystemEvents.xml", + "lib/netstandard2.0/Microsoft.Win32.SystemEvents.dll", + "lib/netstandard2.0/Microsoft.Win32.SystemEvents.xml", + "microsoft.win32.systemevents.6.0.0.nupkg.sha512", + "microsoft.win32.systemevents.nuspec", + "runtimes/win/lib/net6.0/Microsoft.Win32.SystemEvents.dll", + "runtimes/win/lib/net6.0/Microsoft.Win32.SystemEvents.xml", + "runtimes/win/lib/netcoreapp3.1/Microsoft.Win32.SystemEvents.dll", + "runtimes/win/lib/netcoreapp3.1/Microsoft.Win32.SystemEvents.xml", + "useSharedDesignerContext.txt" + ] + }, "Mono.TextTemplating/2.2.1": { "sha512": "KZYeKBET/2Z0gY1WlTAK7+RHTl7GSbtvTLDXEZZojUdAPqpQNDL6tHv7VUpqfX5VEOh+uRGKaZXkuD253nEOBQ==", "type": "package", @@ -1382,10 +11106,50 @@ "mono.texttemplating.nuspec" ] }, - "Npgsql/7.0.0": { - "sha512": "tOBFksJZ2MiEz8xtDUgS5IG19jVO3nSP15QDYWiiGpXHe0PsLoQBts2Sg3hHKrrLTuw+AjsJz9iKvvGNHyKDIg==", + "NETStandard.Library/1.6.1": { + "sha512": "WcSp3+vP+yHNgS8EV5J7pZ9IRpeDuARBPN28by8zqff1wJQXm26PVU8L3/fYLBJVU7BtDyqNVWq2KlCVvSSR4A==", "type": "package", - "path": "npgsql/7.0.0", + "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" + ] + }, + "Newtonsoft.Json/13.0.1": { + "sha512": "ppPFpBcvxdsfUonNcvITKqLl3bqxWbDCZIzDWHzjpdAHRFfZe0Dw9HmA0+za13IdyrgJwpkDTDA9fHaxOrt20A==", + "type": "package", + "path": "newtonsoft.json/13.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "LICENSE.md", + "lib/net20/Newtonsoft.Json.dll", + "lib/net20/Newtonsoft.Json.xml", + "lib/net35/Newtonsoft.Json.dll", + "lib/net35/Newtonsoft.Json.xml", + "lib/net40/Newtonsoft.Json.dll", + "lib/net40/Newtonsoft.Json.xml", + "lib/net45/Newtonsoft.Json.dll", + "lib/net45/Newtonsoft.Json.xml", + "lib/netstandard1.0/Newtonsoft.Json.dll", + "lib/netstandard1.0/Newtonsoft.Json.xml", + "lib/netstandard1.3/Newtonsoft.Json.dll", + "lib/netstandard1.3/Newtonsoft.Json.xml", + "lib/netstandard2.0/Newtonsoft.Json.dll", + "lib/netstandard2.0/Newtonsoft.Json.xml", + "newtonsoft.json.13.0.1.nupkg.sha512", + "newtonsoft.json.nuspec", + "packageIcon.png" + ] + }, + "Npgsql/7.0.4": { + "sha512": "7UVPYy2RP0ci04PED1tc9ZCaTw/DfSdSkLiGEFCAvwMwsgA/bAluj1liNzP1IpN0MFofnOF0cm1zJfmbEuCehg==", + "type": "package", + "path": "npgsql/7.0.4", "files": [ ".nupkg.metadata", ".signature.p7s", @@ -1402,15 +11166,15 @@ "lib/netstandard2.0/Npgsql.xml", "lib/netstandard2.1/Npgsql.dll", "lib/netstandard2.1/Npgsql.xml", - "npgsql.7.0.0.nupkg.sha512", + "npgsql.7.0.4.nupkg.sha512", "npgsql.nuspec", "postgresql.png" ] }, - "Npgsql.EntityFrameworkCore.PostgreSQL/7.0.0": { - "sha512": "CyUNlFZmtX2Kmw8XK5Tlx5eVUCzWJ+zJHErxZiMo2Y8zCRuH9+/OMGwG+9Mmp5zD5p3Ifbi5Pp3btsqoDDkSZQ==", + "Npgsql.EntityFrameworkCore.PostgreSQL/7.0.4": { + "sha512": "ZYMtyG6pmLtUsFAx0/XaIlVkJM+1gArWEKD55cLLxiVlGScAphjiGj+G7Gk16yg5lhhdWx+bgXWpIUISXuS33g==", "type": "package", - "path": "npgsql.entityframeworkcore.postgresql/7.0.0", + "path": "npgsql.entityframeworkcore.postgresql/7.0.4", "files": [ ".nupkg.metadata", ".signature.p7s", @@ -1419,11 +11183,965 @@ "lib/net6.0/Npgsql.EntityFrameworkCore.PostgreSQL.xml", "lib/net7.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll", "lib/net7.0/Npgsql.EntityFrameworkCore.PostgreSQL.xml", - "npgsql.entityframeworkcore.postgresql.7.0.0.nupkg.sha512", + "npgsql.entityframeworkcore.postgresql.7.0.4.nupkg.sha512", "npgsql.entityframeworkcore.postgresql.nuspec", "postgresql.png" ] }, + "NuGet.Common/6.3.1": { + "sha512": "/WgxNyc9dXl+ZrQJDf5BXaqtMbl0CcDC5GEQITecbHZBQHApTMuxeTMMEqa0Y+PD1CIxTtbRY4jmotKS5dsLuA==", + "type": "package", + "path": "nuget.common/6.3.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "icon.png", + "lib/net472/NuGet.Common.dll", + "lib/net472/NuGet.Common.xml", + "lib/netstandard2.0/NuGet.Common.dll", + "lib/netstandard2.0/NuGet.Common.xml", + "nuget.common.6.3.1.nupkg.sha512", + "nuget.common.nuspec" + ] + }, + "NuGet.Configuration/6.3.1": { + "sha512": "ja227AmXuDVgPXi3p2VTZFTYI/4xwwLSPYtd9Y9WIfCrRqSNDa96J5hm70wXhBCOQYvoRVDjp3ufgDnnqZ0bYA==", + "type": "package", + "path": "nuget.configuration/6.3.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "icon.png", + "lib/net472/NuGet.Configuration.dll", + "lib/net472/NuGet.Configuration.xml", + "lib/netstandard2.0/NuGet.Configuration.dll", + "lib/netstandard2.0/NuGet.Configuration.xml", + "nuget.configuration.6.3.1.nupkg.sha512", + "nuget.configuration.nuspec" + ] + }, + "NuGet.DependencyResolver.Core/6.3.1": { + "sha512": "wSr4XMNE5f82ZveuATVwj+kS1/dWyXARjOZcS70Aiaj+XEWL8uo4EFTwPIvqPHWCem5cxmavBRuWBwlQ4HWjeA==", + "type": "package", + "path": "nuget.dependencyresolver.core/6.3.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "icon.png", + "lib/net472/NuGet.DependencyResolver.Core.dll", + "lib/net472/NuGet.DependencyResolver.Core.xml", + "lib/net5.0/NuGet.DependencyResolver.Core.dll", + "lib/net5.0/NuGet.DependencyResolver.Core.xml", + "lib/netstandard2.0/NuGet.DependencyResolver.Core.dll", + "lib/netstandard2.0/NuGet.DependencyResolver.Core.xml", + "nuget.dependencyresolver.core.6.3.1.nupkg.sha512", + "nuget.dependencyresolver.core.nuspec" + ] + }, + "NuGet.Frameworks/6.3.1": { + "sha512": "Ae1vRjHDbNU7EQwQnDlxFRl+O9iQLp2H9Z/sRB/EAmO8+neUOeOfbkLClO7ZNcTcW5p1FDABrPakXICtQ0JCRw==", + "type": "package", + "path": "nuget.frameworks/6.3.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "icon.png", + "lib/net472/NuGet.Frameworks.dll", + "lib/net472/NuGet.Frameworks.xml", + "lib/netstandard2.0/NuGet.Frameworks.dll", + "lib/netstandard2.0/NuGet.Frameworks.xml", + "nuget.frameworks.6.3.1.nupkg.sha512", + "nuget.frameworks.nuspec" + ] + }, + "NuGet.LibraryModel/6.3.1": { + "sha512": "aEB4AesZ+ddLVTBbewQFNHagbVbwewobBk2+8mk0THWjn0qIUH2l4kLTMmiTD7DOthVB6pYds8bz1B8Z0rEPrQ==", + "type": "package", + "path": "nuget.librarymodel/6.3.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "icon.png", + "lib/net472/NuGet.LibraryModel.dll", + "lib/net472/NuGet.LibraryModel.xml", + "lib/netstandard2.0/NuGet.LibraryModel.dll", + "lib/netstandard2.0/NuGet.LibraryModel.xml", + "nuget.librarymodel.6.3.1.nupkg.sha512", + "nuget.librarymodel.nuspec" + ] + }, + "NuGet.Packaging/6.3.1": { + "sha512": "/GI2ujy3t00I8qFGvuLrVMNAEMFgEHfW+GNACZna2zgjADrxqrCeONStYZR2hHt3eI2/5HbiaoX4NCP17JCYzw==", + "type": "package", + "path": "nuget.packaging/6.3.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "icon.png", + "lib/net472/NuGet.Packaging.dll", + "lib/net472/NuGet.Packaging.xml", + "lib/net5.0/NuGet.Packaging.dll", + "lib/net5.0/NuGet.Packaging.xml", + "lib/netstandard2.0/NuGet.Packaging.dll", + "lib/netstandard2.0/NuGet.Packaging.xml", + "nuget.packaging.6.3.1.nupkg.sha512", + "nuget.packaging.nuspec" + ] + }, + "NuGet.ProjectModel/6.3.1": { + "sha512": "TtC4zUKnMIkJBtM7P1GtvVK2jCh4Xi8SVK+bEsCUSoZ0rJf7Zqw2oBrmMNWe51IlfOcYkREmn6xif9mgJXOnmQ==", + "type": "package", + "path": "nuget.projectmodel/6.3.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "icon.png", + "lib/net472/NuGet.ProjectModel.dll", + "lib/net472/NuGet.ProjectModel.xml", + "lib/net5.0/NuGet.ProjectModel.dll", + "lib/net5.0/NuGet.ProjectModel.xml", + "lib/netstandard2.0/NuGet.ProjectModel.dll", + "lib/netstandard2.0/NuGet.ProjectModel.xml", + "nuget.projectmodel.6.3.1.nupkg.sha512", + "nuget.projectmodel.nuspec" + ] + }, + "NuGet.Protocol/6.3.1": { + "sha512": "1x3jozJNwoECAo88hrhYNuKkRrv9V2VoVxlCntpwr9jX5h6sTV3uHnXAN7vaVQ2/NRX9LLRIiD8K0NOTCG5EmQ==", + "type": "package", + "path": "nuget.protocol/6.3.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "icon.png", + "lib/net472/NuGet.Protocol.dll", + "lib/net472/NuGet.Protocol.xml", + "lib/net5.0/NuGet.Protocol.dll", + "lib/net5.0/NuGet.Protocol.xml", + "lib/netstandard2.0/NuGet.Protocol.dll", + "lib/netstandard2.0/NuGet.Protocol.xml", + "nuget.protocol.6.3.1.nupkg.sha512", + "nuget.protocol.nuspec" + ] + }, + "NuGet.Versioning/6.3.1": { + "sha512": "T/igBDLXCd+pH3YTWgGVNvYSOwbwaT30NyyM9ONjvlHlmaUjKBJpr9kH0AeL+Ado4EJsBhU3qxXVc6lyrpRcMw==", + "type": "package", + "path": "nuget.versioning/6.3.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "icon.png", + "lib/net472/NuGet.Versioning.dll", + "lib/net472/NuGet.Versioning.xml", + "lib/netstandard2.0/NuGet.Versioning.dll", + "lib/netstandard2.0/NuGet.Versioning.xml", + "nuget.versioning.6.3.1.nupkg.sha512", + "nuget.versioning.nuspec" + ] + }, + "runtime.any.System.Collections/4.3.0": { + "sha512": "23g6rqftKmovn2cLeGsuHUYm0FD7pdutb0uQMJpZ3qTvq+zHkgmt6J65VtRry4WDGYlmkMa4xDACtaQ94alNag==", + "type": "package", + "path": "runtime.any.system.collections/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Collections.dll", + "lib/netstandard1.3/System.Collections.dll", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/netstandard/_._", + "runtime.any.system.collections.4.3.0.nupkg.sha512", + "runtime.any.system.collections.nuspec", + "runtimes/aot/lib/netcore50/_._" + ] + }, + "runtime.any.System.Diagnostics.Tools/4.3.0": { + "sha512": "S/GPBmfPBB48ZghLxdDR7kDAJVAqgAuThyDJho3OLP5OS4tWD2ydyL8LKm8lhiBxce10OKe9X2zZ6DUjAqEbPg==", + "type": "package", + "path": "runtime.any.system.diagnostics.tools/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Diagnostics.Tools.dll", + "lib/netstandard1.3/System.Diagnostics.Tools.dll", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/netstandard/_._", + "runtime.any.system.diagnostics.tools.4.3.0.nupkg.sha512", + "runtime.any.system.diagnostics.tools.nuspec", + "runtimes/aot/lib/netcore50/_._" + ] + }, + "runtime.any.System.Diagnostics.Tracing/4.3.0": { + "sha512": "1lpifymjGDzoYIaam6/Hyqf8GhBI3xXYLK2TgEvTtuZMorG3Kb9QnMTIKhLjJYXIiu1JvxjngHvtVFQQlpQ3HQ==", + "type": "package", + "path": "runtime.any.system.diagnostics.tracing/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Diagnostics.Tracing.dll", + "lib/netstandard1.5/System.Diagnostics.Tracing.dll", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/netstandard/_._", + "runtime.any.system.diagnostics.tracing.4.3.0.nupkg.sha512", + "runtime.any.system.diagnostics.tracing.nuspec", + "runtimes/aot/lib/netcore50/_._" + ] + }, + "runtime.any.System.Globalization/4.3.0": { + "sha512": "sMDBnad4rp4t7GY442Jux0MCUuKL4otn5BK6Ni0ARTXTSpRNBzZ7hpMfKSvnVSED5kYJm96YOWsqV0JH0d2uuw==", + "type": "package", + "path": "runtime.any.system.globalization/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Globalization.dll", + "lib/netstandard1.3/System.Globalization.dll", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/netstandard/_._", + "runtime.any.system.globalization.4.3.0.nupkg.sha512", + "runtime.any.system.globalization.nuspec", + "runtimes/aot/lib/netcore50/_._" + ] + }, + "runtime.any.System.Globalization.Calendars/4.3.0": { + "sha512": "M1r+760j1CNA6M/ZaW6KX8gOS8nxPRqloqDcJYVidRG566Ykwcs29AweZs2JF+nMOCgWDiMfPSTMfvwOI9F77w==", + "type": "package", + "path": "runtime.any.system.globalization.calendars/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net/_._", + "lib/netcore50/System.Globalization.Calendars.dll", + "lib/netstandard1.3/System.Globalization.Calendars.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/netstandard/_._", + "runtime.any.system.globalization.calendars.4.3.0.nupkg.sha512", + "runtime.any.system.globalization.calendars.nuspec", + "runtimes/aot/lib/netcore50/_._" + ] + }, + "runtime.any.System.IO/4.3.0": { + "sha512": "SDZ5AD1DtyRoxYtEcqQ3HDlcrorMYXZeCt7ZhG9US9I5Vva+gpIWDGMkcwa5XiKL0ceQKRZIX2x0XEjLX7PDzQ==", + "type": "package", + "path": "runtime.any.system.io/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.IO.dll", + "lib/netstandard1.5/System.IO.dll", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/netstandard/_._", + "runtime.any.system.io.4.3.0.nupkg.sha512", + "runtime.any.system.io.nuspec", + "runtimes/aot/lib/netcore50/_._" + ] + }, + "runtime.any.System.Reflection/4.3.0": { + "sha512": "hLC3A3rI8jipR5d9k7+f0MgRCW6texsAp0MWkN/ci18FMtQ9KH7E2vDn/DH2LkxsszlpJpOn9qy6Z6/69rH6eQ==", + "type": "package", + "path": "runtime.any.system.reflection/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Reflection.dll", + "lib/netstandard1.5/System.Reflection.dll", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/netstandard/_._", + "runtime.any.system.reflection.4.3.0.nupkg.sha512", + "runtime.any.system.reflection.nuspec", + "runtimes/aot/lib/netcore50/_._" + ] + }, + "runtime.any.System.Reflection.Extensions/4.3.0": { + "sha512": "cPhT+Vqu52+cQQrDai/V91gubXUnDKNRvlBnH+hOgtGyHdC17aQIU64EaehwAQymd7kJA5rSrVRNfDYrbhnzyA==", + "type": "package", + "path": "runtime.any.system.reflection.extensions/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Reflection.Extensions.dll", + "lib/netstandard1.3/System.Reflection.Extensions.dll", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/netstandard/_._", + "runtime.any.system.reflection.extensions.4.3.0.nupkg.sha512", + "runtime.any.system.reflection.extensions.nuspec", + "runtimes/aot/lib/netcore50/_._" + ] + }, + "runtime.any.System.Reflection.Primitives/4.3.0": { + "sha512": "Nrm1p3armp6TTf2xuvaa+jGTTmncALWFq22CpmwRvhDf6dE9ZmH40EbOswD4GnFLrMRS0Ki6Kx5aUPmKK/hZBg==", + "type": "package", + "path": "runtime.any.system.reflection.primitives/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Reflection.Primitives.dll", + "lib/netstandard1.3/System.Reflection.Primitives.dll", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/netstandard/_._", + "runtime.any.system.reflection.primitives.4.3.0.nupkg.sha512", + "runtime.any.system.reflection.primitives.nuspec", + "runtimes/aot/lib/netcore50/_._" + ] + }, + "runtime.any.System.Resources.ResourceManager/4.3.0": { + "sha512": "Lxb89SMvf8w9p9+keBLyL6H6x/TEmc6QVsIIA0T36IuyOY3kNvIdyGddA2qt35cRamzxF8K5p0Opq4G4HjNbhQ==", + "type": "package", + "path": "runtime.any.system.resources.resourcemanager/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Resources.ResourceManager.dll", + "lib/netstandard1.3/System.Resources.ResourceManager.dll", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/netstandard/_._", + "runtime.any.system.resources.resourcemanager.4.3.0.nupkg.sha512", + "runtime.any.system.resources.resourcemanager.nuspec", + "runtimes/aot/lib/netcore50/_._" + ] + }, + "runtime.any.System.Runtime/4.3.0": { + "sha512": "fRS7zJgaG9NkifaAxGGclDDoRn9HC7hXACl52Or06a/fxdzDajWb5wov3c6a+gVSlekRoexfjwQSK9sh5um5LQ==", + "type": "package", + "path": "runtime.any.system.runtime/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Runtime.dll", + "lib/netstandard1.5/System.Runtime.dll", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/netstandard/_._", + "runtime.any.system.runtime.4.3.0.nupkg.sha512", + "runtime.any.system.runtime.nuspec", + "runtimes/aot/lib/netcore50/_._" + ] + }, + "runtime.any.System.Runtime.Handles/4.3.0": { + "sha512": "GG84X6vufoEzqx8PbeBKheE4srOhimv+yLtGb/JkR3Y2FmoqmueLNFU4Xx8Y67plFpltQSdK74x0qlEhIpv/CQ==", + "type": "package", + "path": "runtime.any.system.runtime.handles/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/_._", + "lib/netstandard1.3/System.Runtime.Handles.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/netstandard/_._", + "runtime.any.system.runtime.handles.4.3.0.nupkg.sha512", + "runtime.any.system.runtime.handles.nuspec", + "runtimes/aot/lib/netcore50/_._" + ] + }, + "runtime.any.System.Runtime.InteropServices/4.3.0": { + "sha512": "lBoFeQfxe/4eqjPi46E0LU/YaCMdNkQ8B4MZu/mkzdIAZh8RQ1NYZSj0egrQKdgdvlPFtP4STtob40r4o2DBAw==", + "type": "package", + "path": "runtime.any.system.runtime.interopservices/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Runtime.InteropServices.dll", + "lib/netstandard1.5/System.Runtime.InteropServices.dll", + "lib/netstandard1.6/System.Runtime.InteropServices.dll", + "lib/win8/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/netstandard/_._", + "runtime.any.system.runtime.interopservices.4.3.0.nupkg.sha512", + "runtime.any.system.runtime.interopservices.nuspec", + "runtimes/aot/lib/netcore50/_._" + ] + }, + "runtime.any.System.Text.Encoding/4.3.0": { + "sha512": "+ihI5VaXFCMVPJNstG4O4eo1CfbrByLxRrQQTqOTp1ttK0kUKDqOdBSTaCB2IBk/QtjDrs6+x4xuezyMXdm0HQ==", + "type": "package", + "path": "runtime.any.system.text.encoding/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Text.Encoding.dll", + "lib/netstandard1.3/System.Text.Encoding.dll", + "lib/win8/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/netstandard/_._", + "runtime.any.system.text.encoding.4.3.0.nupkg.sha512", + "runtime.any.system.text.encoding.nuspec", + "runtimes/aot/lib/netcore50/_._" + ] + }, + "runtime.any.System.Text.Encoding.Extensions/4.3.0": { + "sha512": "NLrxmLsfRrOuVqPWG+2lrQZnE53MLVeo+w9c54EV+TUo4c8rILpsDXfY8pPiOy9kHpUHHP07ugKmtsU3vVW5Jg==", + "type": "package", + "path": "runtime.any.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/netcore50/System.Text.Encoding.Extensions.dll", + "lib/netstandard1.3/System.Text.Encoding.Extensions.dll", + "lib/win8/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/netstandard/_._", + "runtime.any.system.text.encoding.extensions.4.3.0.nupkg.sha512", + "runtime.any.system.text.encoding.extensions.nuspec", + "runtimes/aot/lib/netcore50/_._" + ] + }, + "runtime.any.System.Threading.Tasks/4.3.0": { + "sha512": "OhBAVBQG5kFj1S+hCEQ3TUHBAEtZ3fbEMgZMRNdN8A0Pj4x+5nTELEqL59DU0TjKVE6II3dqKw4Dklb3szT65w==", + "type": "package", + "path": "runtime.any.system.threading.tasks/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Threading.Tasks.dll", + "lib/netstandard1.3/System.Threading.Tasks.dll", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/netstandard/_._", + "runtime.any.system.threading.tasks.4.3.0.nupkg.sha512", + "runtime.any.system.threading.tasks.nuspec", + "runtimes/aot/lib/netcore50/_._" + ] + }, + "runtime.any.System.Threading.Timer/4.3.0": { + "sha512": "w4ehZJ+AwXYmGwYu+rMvym6RvMaRiUEQR1u6dwcyuKHxz8Heu/mO9AG1MquEgTyucnhv3M43X0iKpDOoN17C0w==", + "type": "package", + "path": "runtime.any.system.threading.timer/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Threading.Timer.dll", + "lib/netstandard1.3/System.Threading.Timer.dll", + "lib/win8/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/netstandard/_._", + "runtime.any.system.threading.timer.4.3.0.nupkg.sha512", + "runtime.any.system.threading.timer.nuspec", + "runtimes/aot/lib/netcore50/_._" + ] + }, + "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "sha512": "HdSSp5MnJSsg08KMfZThpuLPJpPwE5hBXvHwoKWosyHHfe8Mh5WKT0ylEOf6yNzX6Ngjxe4Whkafh5q7Ymac4Q==", + "type": "package", + "path": "runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl.4.3.0.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.0": { + "sha512": "+yH1a49wJMy8Zt4yx5RhJrxO/DBDByAiCzNwiETI+1S4mPdCu0OY4djdciC7Vssk0l22wQaDLrXxXkp+3+7bVA==", + "type": "package", + "path": "runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl.4.3.0.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.0": { + "sha512": "c3YNH1GQJbfIPJeCnr4avseugSqPrxwIqzthYyZDN6EuOyNOzq+y2KSUfRcXauya1sF4foESTgwM5e1A8arAKw==", + "type": "package", + "path": "runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl.4.3.0.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.0": { + "sha512": "NS1U+700m4KFRHR5o4vo9DSlTmlCKu/u7dtE5sUHVIPB+xpXxYQvgBgA6wEIeCz6Yfn0Z52/72WYsToCEPJnrw==", + "type": "package", + "path": "runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/_._", + "runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "runtime.native.system.security.cryptography.openssl.nuspec" + ] + }, + "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "sha512": "b3pthNgxxFcD+Pc0WSEoC0+md3MyhRS6aCEeenvNE3Fdw1HyJ18ZhRFVJJzIeR/O/jpxPboB805Ho0T3Ul7w8A==", + "type": "package", + "path": "runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl.4.3.0.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.0": { + "sha512": "KeLz4HClKf+nFS7p/6Fi/CqyLXh81FpiGzcmuS8DGi9lUqSnZ6Es23/gv2O+1XVGfrbNmviF7CckBpavkBoIFQ==", + "type": "package", + "path": "runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl.4.3.0.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.0": { + "sha512": "X7IdhILzr4ROXd8mI1BUCQMSHSQwelUlBjF1JyTKCjXaOGn2fB4EKBxQbCK2VjO3WaWIdlXZL3W6TiIVnrhX4g==", + "type": "package", + "path": "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl.4.3.0.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.0": { + "sha512": "nyFNiCk/r+VOiIqreLix8yN+q3Wga9+SE8BCgkf+2BwEKiNx6DyvFjCgkfV743/grxv8jHJ8gUK4XEQw7yzRYg==", + "type": "package", + "path": "runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl.4.3.0.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.0": { + "sha512": "ytoewC6wGorL7KoCAvRfsgoJPJbNq+64k2SqW6JcOAebWsFUvCCYgfzQMrnpvPiEl4OrblUlhF2ji+Q1+SVLrQ==", + "type": "package", + "path": "runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl.4.3.0.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.0": { + "sha512": "I8bKw2I8k58Wx7fMKQJn2R8lamboCAiHfHeV/pS65ScKWMMI0+wJkLYlEKvgW1D/XvSl/221clBoR2q9QNNM7A==", + "type": "package", + "path": "runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl.4.3.0.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.0": { + "sha512": "VB5cn/7OzUfzdnC8tqAIMQciVLiq2epm2NrAm1E9OjNRyG4lVhfR61SMcLizejzQP8R8Uf/0l5qOIbUEi+RdEg==", + "type": "package", + "path": "runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl.4.3.0.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" + ] + }, + "runtime.unix.Microsoft.Win32.Primitives/4.3.0": { + "sha512": "2mI2Mfq+CVatgr4RWGvAWBjoCfUafy6VNFU7G9OA52DjO8x/okfIbsEq2UPgeGfdpO7X5gmPXKT8slx0tn0Mhw==", + "type": "package", + "path": "runtime.unix.microsoft.win32.primitives/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "ref/netstandard/_._", + "runtime.unix.microsoft.win32.primitives.4.3.0.nupkg.sha512", + "runtime.unix.microsoft.win32.primitives.nuspec", + "runtimes/unix/lib/netstandard1.3/Microsoft.Win32.Primitives.dll" + ] + }, + "runtime.unix.System.Console/4.3.0": { + "sha512": "JSEiU9EvE2vJTHUuHnSg9le8XDbvZmjZ/3PhLviICzY1TTDE7c/uNYVtE9qTA9PAOZsqccy5lxvfaZOeBhT3tA==", + "type": "package", + "path": "runtime.unix.system.console/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "ref/netstandard/_._", + "runtime.unix.system.console.4.3.0.nupkg.sha512", + "runtime.unix.system.console.nuspec", + "runtimes/unix/lib/netstandard1.3/System.Console.dll" + ] + }, + "runtime.unix.System.Diagnostics.Debug/4.3.0": { + "sha512": "WV8KLRHWVUVUDduFnvGMHt0FsEt2wK6xPl1EgDKlaMx2KnZ43A/O0GzP8wIuvAC7mq4T9V1mm90r+PXkL9FPdQ==", + "type": "package", + "path": "runtime.unix.system.diagnostics.debug/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "ref/netstandard/_._", + "runtime.unix.system.diagnostics.debug.4.3.0.nupkg.sha512", + "runtime.unix.system.diagnostics.debug.nuspec", + "runtimes/unix/lib/netstandard1.3/System.Diagnostics.Debug.dll" + ] + }, + "runtime.unix.System.IO.FileSystem/4.3.0": { + "sha512": "ajmTcjrqc3vgV1TH54DRioshbEniaFbOAJ0kReGuNsp9uIcqYle0RmUo6+Qlwqe3JIs4TDxgnqs3UzX3gRJ1rA==", + "type": "package", + "path": "runtime.unix.system.io.filesystem/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "ref/netstandard/_._", + "runtime.unix.system.io.filesystem.4.3.0.nupkg.sha512", + "runtime.unix.system.io.filesystem.nuspec", + "runtimes/unix/lib/netstandard1.3/System.IO.FileSystem.dll" + ] + }, + "runtime.unix.System.Net.Primitives/4.3.0": { + "sha512": "AZcRXhH7Gamr+bckUfX3iHefPIrujJTt9XWQWo0elNiP1SNasX0KBWINZkDKY0GsOrsyJ7cB4MgIRTZzLlsTKg==", + "type": "package", + "path": "runtime.unix.system.net.primitives/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "ref/netstandard/_._", + "runtime.unix.system.net.primitives.4.3.0.nupkg.sha512", + "runtime.unix.system.net.primitives.nuspec", + "runtimes/unix/lib/netstandard1.3/System.Net.Primitives.dll" + ] + }, + "runtime.unix.System.Net.Sockets/4.3.0": { + "sha512": "4NcLbqajFaD3PvhOdmbieeBlKY4d8/kBfgJ5g28n6k1jWEICabvLM62gvmUS/CvyfvcZxVanKPl+E9LhPzfXZw==", + "type": "package", + "path": "runtime.unix.system.net.sockets/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "ref/netstandard/_._", + "runtime.unix.system.net.sockets.4.3.0.nupkg.sha512", + "runtime.unix.system.net.sockets.nuspec", + "runtimes/unix/lib/netstandard1.3/System.Net.Sockets.dll" + ] + }, + "runtime.unix.System.Private.Uri/4.3.0": { + "sha512": "ooWzobr5RAq34r9uan1r/WPXJYG1XWy9KanrxNvEnBzbFdQbMG7Y3bVi4QxR7xZMNLOxLLTAyXvnSkfj5boZSg==", + "type": "package", + "path": "runtime.unix.system.private.uri/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "ref/netstandard/_._", + "runtime.unix.system.private.uri.4.3.0.nupkg.sha512", + "runtime.unix.system.private.uri.nuspec", + "runtimes/unix/lib/netstandard1.0/System.Private.Uri.dll" + ] + }, + "runtime.unix.System.Runtime.Extensions/4.3.0": { + "sha512": "zQiTBVpiLftTQZW8GFsV0gjYikB1WMkEPIxF5O6RkUrSV/OgvRRTYgeFQha/0keBpuS0HYweraGRwhfhJ7dj7w==", + "type": "package", + "path": "runtime.unix.system.runtime.extensions/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "ref/netstandard/_._", + "runtime.unix.system.runtime.extensions.4.3.0.nupkg.sha512", + "runtime.unix.system.runtime.extensions.nuspec", + "runtimes/unix/lib/netstandard1.5/System.Runtime.Extensions.dll" + ] + }, "Swashbuckle.AspNetCore/6.5.0": { "sha512": "FK05XokgjgwlCI6wCT+D4/abtQkL1X1/B9Oas6uIwHFmYrIO9WUD5aLC9IzMs9GnHfUXOtXZ2S43gN1mhs5+aA==", "type": "package", @@ -1514,6 +12232,76 @@ "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/4.4.0": { "sha512": "2sCCb7doXEwtYAbqzbF/8UAeDRMNmPaQbU2q50Psg1J9KzumyVVCgKQY8s53WIPTufNT0DpSe9QRvVjOzfDWBA==", "type": "package", @@ -1535,6 +12323,2213 @@ "version.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/6.0.0": { + "sha512": "l4zZJ1WU2hqpQQHXz1rvC3etVZN+2DLmQMO79FhOTZHMn8tDRr+WU287sbomD0BETlmKDn0ygUgVy9k5xkkJdA==", + "type": "package", + "path": "system.collections.immutable/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Collections.Immutable.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/System.Collections.Immutable.dll", + "lib/net461/System.Collections.Immutable.xml", + "lib/net6.0/System.Collections.Immutable.dll", + "lib/net6.0/System.Collections.Immutable.xml", + "lib/netstandard2.0/System.Collections.Immutable.dll", + "lib/netstandard2.0/System.Collections.Immutable.xml", + "system.collections.immutable.6.0.0.nupkg.sha512", + "system.collections.immutable.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Composition/6.0.0": { + "sha512": "d7wMuKQtfsxUa7S13tITC8n1cQzewuhD5iDjZtK2prwFfKVzdYtgrTHgjaV03Zq7feGQ5gkP85tJJntXwInsJA==", + "type": "package", + "path": "system.composition/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Composition.targets", + "buildTransitive/netcoreapp3.1/_._", + "system.composition.6.0.0.nupkg.sha512", + "system.composition.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Composition.AttributedModel/6.0.0": { + "sha512": "WK1nSDLByK/4VoC7fkNiFuTVEiperuCN/Hyn+VN30R+W2ijO1d0Z2Qm0ScEl9xkSn1G2MyapJi8xpf4R8WRa/w==", + "type": "package", + "path": "system.composition.attributedmodel/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Composition.AttributedModel.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/System.Composition.AttributedModel.dll", + "lib/net461/System.Composition.AttributedModel.xml", + "lib/net6.0/System.Composition.AttributedModel.dll", + "lib/net6.0/System.Composition.AttributedModel.xml", + "lib/netstandard2.0/System.Composition.AttributedModel.dll", + "lib/netstandard2.0/System.Composition.AttributedModel.xml", + "system.composition.attributedmodel.6.0.0.nupkg.sha512", + "system.composition.attributedmodel.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Composition.Convention/6.0.0": { + "sha512": "XYi4lPRdu5bM4JVJ3/UIHAiG6V6lWWUlkhB9ab4IOq0FrRsp0F4wTyV4Dj+Ds+efoXJ3qbLqlvaUozDO7OLeXA==", + "type": "package", + "path": "system.composition.convention/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Composition.Convention.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/System.Composition.Convention.dll", + "lib/net461/System.Composition.Convention.xml", + "lib/net6.0/System.Composition.Convention.dll", + "lib/net6.0/System.Composition.Convention.xml", + "lib/netstandard2.0/System.Composition.Convention.dll", + "lib/netstandard2.0/System.Composition.Convention.xml", + "system.composition.convention.6.0.0.nupkg.sha512", + "system.composition.convention.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Composition.Hosting/6.0.0": { + "sha512": "w/wXjj7kvxuHPLdzZ0PAUt++qJl03t7lENmb2Oev0n3zbxyNULbWBlnd5J5WUMMv15kg5o+/TCZFb6lSwfaUUQ==", + "type": "package", + "path": "system.composition.hosting/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Composition.Hosting.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/System.Composition.Hosting.dll", + "lib/net461/System.Composition.Hosting.xml", + "lib/net6.0/System.Composition.Hosting.dll", + "lib/net6.0/System.Composition.Hosting.xml", + "lib/netstandard2.0/System.Composition.Hosting.dll", + "lib/netstandard2.0/System.Composition.Hosting.xml", + "system.composition.hosting.6.0.0.nupkg.sha512", + "system.composition.hosting.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Composition.Runtime/6.0.0": { + "sha512": "qkRH/YBaMPTnzxrS5RDk1juvqed4A6HOD/CwRcDGyPpYps1J27waBddiiq1y93jk2ZZ9wuA/kynM+NO0kb3PKg==", + "type": "package", + "path": "system.composition.runtime/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Composition.Runtime.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/System.Composition.Runtime.dll", + "lib/net461/System.Composition.Runtime.xml", + "lib/net6.0/System.Composition.Runtime.dll", + "lib/net6.0/System.Composition.Runtime.xml", + "lib/netstandard2.0/System.Composition.Runtime.dll", + "lib/netstandard2.0/System.Composition.Runtime.xml", + "system.composition.runtime.6.0.0.nupkg.sha512", + "system.composition.runtime.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Composition.TypedParts/6.0.0": { + "sha512": "iUR1eHrL8Cwd82neQCJ00MpwNIBs4NZgXzrPqx8NJf/k4+mwBO0XCRmHYJT4OLSwDDqh5nBLJWkz5cROnrGhRA==", + "type": "package", + "path": "system.composition.typedparts/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Composition.TypedParts.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/System.Composition.TypedParts.dll", + "lib/net461/System.Composition.TypedParts.xml", + "lib/net6.0/System.Composition.TypedParts.dll", + "lib/net6.0/System.Composition.TypedParts.xml", + "lib/netstandard2.0/System.Composition.TypedParts.dll", + "lib/netstandard2.0/System.Composition.TypedParts.xml", + "system.composition.typedparts.6.0.0.nupkg.sha512", + "system.composition.typedparts.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Configuration.ConfigurationManager/6.0.0": { + "sha512": "7T+m0kDSlIPTHIkPMIu6m6tV6qsMqJpvQWW2jIc2qi7sn40qxFo0q+7mEQAhMPXZHMKnWrnv47ntGlM/ejvw3g==", + "type": "package", + "path": "system.configuration.configurationmanager/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Configuration.ConfigurationManager.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/System.Configuration.ConfigurationManager.dll", + "lib/net461/System.Configuration.ConfigurationManager.xml", + "lib/net6.0/System.Configuration.ConfigurationManager.dll", + "lib/net6.0/System.Configuration.ConfigurationManager.xml", + "lib/netstandard2.0/System.Configuration.ConfigurationManager.dll", + "lib/netstandard2.0/System.Configuration.ConfigurationManager.xml", + "runtimes/win/lib/net461/System.Configuration.ConfigurationManager.dll", + "runtimes/win/lib/net461/System.Configuration.ConfigurationManager.xml", + "system.configuration.configurationmanager.6.0.0.nupkg.sha512", + "system.configuration.configurationmanager.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.Data.DataSetExtensions/4.5.0": { + "sha512": "221clPs1445HkTBZPL+K9sDBdJRB8UN8rgjO3ztB0CQ26z//fmJXtlsr6whGatscsKGBrhJl5bwJuKSA8mwFOw==", + "type": "package", + "path": "system.data.datasetextensions/4.5.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net45/_._", + "lib/netstandard2.0/System.Data.DataSetExtensions.dll", + "ref/net45/_._", + "ref/netstandard2.0/System.Data.DataSetExtensions.dll", + "system.data.datasetextensions.4.5.0.nupkg.sha512", + "system.data.datasetextensions.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "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/4.3.0": { + "sha512": "tD6kosZnTAGdrEa0tZSuFyunMbt/5KYDnHdndJYGqZoNy00XVXyACd5d6KnE1YgYv3ne2CjtAfNXo/fwEhnKUA==", + "type": "package", + "path": "system.diagnostics.diagnosticsource/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/net46/System.Diagnostics.DiagnosticSource.dll", + "lib/net46/System.Diagnostics.DiagnosticSource.xml", + "lib/netstandard1.1/System.Diagnostics.DiagnosticSource.dll", + "lib/netstandard1.1/System.Diagnostics.DiagnosticSource.xml", + "lib/netstandard1.3/System.Diagnostics.DiagnosticSource.dll", + "lib/netstandard1.3/System.Diagnostics.DiagnosticSource.xml", + "lib/portable-net45+win8+wpa81/System.Diagnostics.DiagnosticSource.dll", + "lib/portable-net45+win8+wpa81/System.Diagnostics.DiagnosticSource.xml", + "system.diagnostics.diagnosticsource.4.3.0.nupkg.sha512", + "system.diagnostics.diagnosticsource.nuspec" + ] + }, + "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.Drawing.Common/6.0.0": { + "sha512": "NfuoKUiP2nUWwKZN6twGqXioIe1zVD0RIj2t976A+czLHr2nY454RwwXs6JU9Htc6mwqL6Dn/nEL3dpVf2jOhg==", + "type": "package", + "path": "system.drawing.common/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Drawing.Common.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net461/System.Drawing.Common.dll", + "lib/net461/System.Drawing.Common.xml", + "lib/net6.0/System.Drawing.Common.dll", + "lib/net6.0/System.Drawing.Common.xml", + "lib/netcoreapp3.1/System.Drawing.Common.dll", + "lib/netcoreapp3.1/System.Drawing.Common.xml", + "lib/netstandard2.0/System.Drawing.Common.dll", + "lib/netstandard2.0/System.Drawing.Common.xml", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "runtimes/unix/lib/net6.0/System.Drawing.Common.dll", + "runtimes/unix/lib/net6.0/System.Drawing.Common.xml", + "runtimes/unix/lib/netcoreapp3.1/System.Drawing.Common.dll", + "runtimes/unix/lib/netcoreapp3.1/System.Drawing.Common.xml", + "runtimes/win/lib/net6.0/System.Drawing.Common.dll", + "runtimes/win/lib/net6.0/System.Drawing.Common.xml", + "runtimes/win/lib/netcoreapp3.1/System.Drawing.Common.dll", + "runtimes/win/lib/netcoreapp3.1/System.Drawing.Common.xml", + "system.drawing.common.6.0.0.nupkg.sha512", + "system.drawing.common.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Formats.Asn1/5.0.0": { + "sha512": "MTvUIktmemNB+El0Fgw9egyqT9AYSIk6DTJeoDSpc3GIHxHCMo8COqkWT1mptX5tZ1SlQ6HJZ0OsSvMth1c12w==", + "type": "package", + "path": "system.formats.asn1/5.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net461/System.Formats.Asn1.dll", + "lib/net461/System.Formats.Asn1.xml", + "lib/netstandard2.0/System.Formats.Asn1.dll", + "lib/netstandard2.0/System.Formats.Asn1.xml", + "system.formats.asn1.5.0.0.nupkg.sha512", + "system.formats.asn1.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "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/6.35.0": { + "sha512": "yxGIQd3BFK7F6S62/7RdZk3C/mfwyVxvh6ngd1VYMBmbJ1YZZA9+Ku6suylVtso0FjI0wbElpJ0d27CdsyLpBQ==", + "type": "package", + "path": "system.identitymodel.tokens.jwt/6.35.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net45/System.IdentityModel.Tokens.Jwt.dll", + "lib/net45/System.IdentityModel.Tokens.Jwt.xml", + "lib/net461/System.IdentityModel.Tokens.Jwt.dll", + "lib/net461/System.IdentityModel.Tokens.Jwt.xml", + "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/netstandard2.0/System.IdentityModel.Tokens.Jwt.dll", + "lib/netstandard2.0/System.IdentityModel.Tokens.Jwt.xml", + "system.identitymodel.tokens.jwt.6.35.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/6.0.3": { + "sha512": "ryTgF+iFkpGZY1vRQhfCzX0xTdlV3pyaTTqRu2ETbEv+HlV7O6y7hyQURnghNIXvctl5DuZ//Dpks6HdL/Txgw==", + "type": "package", + "path": "system.io.pipelines/6.0.3", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.IO.Pipelines.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/System.IO.Pipelines.dll", + "lib/net461/System.IO.Pipelines.xml", + "lib/net6.0/System.IO.Pipelines.dll", + "lib/net6.0/System.IO.Pipelines.xml", + "lib/netcoreapp3.1/System.IO.Pipelines.dll", + "lib/netcoreapp3.1/System.IO.Pipelines.xml", + "lib/netstandard2.0/System.IO.Pipelines.dll", + "lib/netstandard2.0/System.IO.Pipelines.xml", + "system.io.pipelines.6.0.3.nupkg.sha512", + "system.io.pipelines.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.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.Memory/4.5.5": { + "sha512": "XIWiDvKPXaTveaB7HVganDlOCRoj03l+jrwNvcge/t8vhGYKvqV+dMv6G4SAX2NoNmN0wZfVPTAlFwZcZvVOUw==", + "type": "package", + "path": "system.memory/4.5.5", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net461/System.Memory.dll", + "lib/net461/System.Memory.xml", + "lib/netcoreapp2.1/_._", + "lib/netstandard1.1/System.Memory.dll", + "lib/netstandard1.1/System.Memory.xml", + "lib/netstandard2.0/System.Memory.dll", + "lib/netstandard2.0/System.Memory.xml", + "ref/netcoreapp2.1/_._", + "system.memory.4.5.5.nupkg.sha512", + "system.memory.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Net.Http/4.3.0": { + "sha512": "sYg+FtILtRQuYWSIAuNOELwVuVsxVyJGWQyOnlAzhV4xvhyFnON1bAzYYC+jjRW8JREM45R0R5Dgi8MTC5sEwA==", + "type": "package", + "path": "system.net.http/4.3.0", + "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/net46/System.Net.Http.xml", + "ref/net46/de/System.Net.Http.xml", + "ref/net46/es/System.Net.Http.xml", + "ref/net46/fr/System.Net.Http.xml", + "ref/net46/it/System.Net.Http.xml", + "ref/net46/ja/System.Net.Http.xml", + "ref/net46/ko/System.Net.Http.xml", + "ref/net46/ru/System.Net.Http.xml", + "ref/net46/zh-hans/System.Net.Http.xml", + "ref/net46/zh-hant/System.Net.Http.xml", + "ref/netcore50/System.Net.Http.dll", + "ref/netcore50/System.Net.Http.xml", + "ref/netcore50/de/System.Net.Http.xml", + "ref/netcore50/es/System.Net.Http.xml", + "ref/netcore50/fr/System.Net.Http.xml", + "ref/netcore50/it/System.Net.Http.xml", + "ref/netcore50/ja/System.Net.Http.xml", + "ref/netcore50/ko/System.Net.Http.xml", + "ref/netcore50/ru/System.Net.Http.xml", + "ref/netcore50/zh-hans/System.Net.Http.xml", + "ref/netcore50/zh-hant/System.Net.Http.xml", + "ref/netstandard1.1/System.Net.Http.dll", + "ref/netstandard1.1/System.Net.Http.xml", + "ref/netstandard1.1/de/System.Net.Http.xml", + "ref/netstandard1.1/es/System.Net.Http.xml", + "ref/netstandard1.1/fr/System.Net.Http.xml", + "ref/netstandard1.1/it/System.Net.Http.xml", + "ref/netstandard1.1/ja/System.Net.Http.xml", + "ref/netstandard1.1/ko/System.Net.Http.xml", + "ref/netstandard1.1/ru/System.Net.Http.xml", + "ref/netstandard1.1/zh-hans/System.Net.Http.xml", + "ref/netstandard1.1/zh-hant/System.Net.Http.xml", + "ref/netstandard1.3/System.Net.Http.dll", + "ref/netstandard1.3/System.Net.Http.xml", + "ref/netstandard1.3/de/System.Net.Http.xml", + "ref/netstandard1.3/es/System.Net.Http.xml", + "ref/netstandard1.3/fr/System.Net.Http.xml", + "ref/netstandard1.3/it/System.Net.Http.xml", + "ref/netstandard1.3/ja/System.Net.Http.xml", + "ref/netstandard1.3/ko/System.Net.Http.xml", + "ref/netstandard1.3/ru/System.Net.Http.xml", + "ref/netstandard1.3/zh-hans/System.Net.Http.xml", + "ref/netstandard1.3/zh-hant/System.Net.Http.xml", + "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.0.nupkg.sha512", + "system.net.http.nuspec" + ] + }, + "System.Net.NameResolution/4.3.0": { + "sha512": "AFYl08R7MrsrEjqpQWTZWBadqXyTzNDaWpMqyxhb0d6sGhV6xMDKueuBXlLL30gz+DIRY6MpdgnHWlCh5wmq9w==", + "type": "package", + "path": "system.net.nameresolution/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Net.NameResolution.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Net.NameResolution.dll", + "ref/netstandard1.3/System.Net.NameResolution.dll", + "ref/netstandard1.3/System.Net.NameResolution.xml", + "ref/netstandard1.3/de/System.Net.NameResolution.xml", + "ref/netstandard1.3/es/System.Net.NameResolution.xml", + "ref/netstandard1.3/fr/System.Net.NameResolution.xml", + "ref/netstandard1.3/it/System.Net.NameResolution.xml", + "ref/netstandard1.3/ja/System.Net.NameResolution.xml", + "ref/netstandard1.3/ko/System.Net.NameResolution.xml", + "ref/netstandard1.3/ru/System.Net.NameResolution.xml", + "ref/netstandard1.3/zh-hans/System.Net.NameResolution.xml", + "ref/netstandard1.3/zh-hant/System.Net.NameResolution.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/unix/lib/netstandard1.3/System.Net.NameResolution.dll", + "runtimes/win/lib/net46/System.Net.NameResolution.dll", + "runtimes/win/lib/netcore50/System.Net.NameResolution.dll", + "runtimes/win/lib/netstandard1.3/System.Net.NameResolution.dll", + "system.net.nameresolution.4.3.0.nupkg.sha512", + "system.net.nameresolution.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.0": { + "sha512": "I4SwANiUGho1esj4V4oSlPllXjzCZDE+5XXso2P03LW2vOda2Enzh8DWOxwN6hnrJyp314c7KuVu31QYhRzOGg==", + "type": "package", + "path": "system.private.uri/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "ref/netstandard/_._", + "system.private.uri.4.3.0.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/6.0.0": { + "sha512": "sffDOcex1C3HO5kDolOYcWXTwRpZY/LvJujM6SMjn63fWMJWchYAAmkoAJXlbpZ5yf4d+KMgxd+LeETa4gD9sQ==", + "type": "package", + "path": "system.reflection.metadata/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Reflection.Metadata.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/System.Reflection.Metadata.dll", + "lib/net461/System.Reflection.Metadata.xml", + "lib/net6.0/System.Reflection.Metadata.dll", + "lib/net6.0/System.Reflection.Metadata.xml", + "lib/netstandard2.0/System.Reflection.Metadata.dll", + "lib/netstandard2.0/System.Reflection.Metadata.xml", + "system.reflection.metadata.6.0.0.nupkg.sha512", + "system.reflection.metadata.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Reflection.MetadataLoadContext/6.0.0": { + "sha512": "SuK8qTHbmG3PToLo1TEq8YSfY31FiKhASBmjozUTAleDgiX4H2X4jm0VPFb+K2soSSmYPyHTpHp35TctfNtDzQ==", + "type": "package", + "path": "system.reflection.metadataloadcontext/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Reflection.MetadataLoadContext.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/System.Reflection.MetadataLoadContext.dll", + "lib/net461/System.Reflection.MetadataLoadContext.xml", + "lib/net6.0/System.Reflection.MetadataLoadContext.dll", + "lib/net6.0/System.Reflection.MetadataLoadContext.xml", + "lib/netcoreapp3.1/System.Reflection.MetadataLoadContext.dll", + "lib/netcoreapp3.1/System.Reflection.MetadataLoadContext.xml", + "lib/netstandard2.0/System.Reflection.MetadataLoadContext.dll", + "lib/netstandard2.0/System.Reflection.MetadataLoadContext.xml", + "system.reflection.metadataloadcontext.6.0.0.nupkg.sha512", + "system.reflection.metadataloadcontext.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.0": { + "sha512": "JufQi0vPQ0xGnAczR13AUFglDyVYt4Kqnz1AZaiKZ5+GICq0/1MH/mO/eAJHt/mHW1zjKBJd7kV26SrxddAhiw==", + "type": "package", + "path": "system.runtime/4.3.0", + "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.0.nupkg.sha512", + "system.runtime.nuspec" + ] + }, "System.Runtime.CompilerServices.Unsafe/6.0.0": { "sha512": "/iUeP3tq1S0XdNNoMz5C9twLSrM/TH+qElHkXWaPvuNOt+99G75NrV0OS2EqHx5wMN7popYjpc8oTjC1y16DLg==", "type": "package", @@ -1560,6 +14555,979 @@ "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.AccessControl/6.0.0": { + "sha512": "AUADIc0LIEQe7MzC+I0cl0rAT8RrTAKFHl53yHjEUzNVIaUlhFY11vc2ebiVJzVBuOzun6F7FBA+8KAbGTTedQ==", + "type": "package", + "path": "system.security.accesscontrol/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Security.AccessControl.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/System.Security.AccessControl.dll", + "lib/net461/System.Security.AccessControl.xml", + "lib/net6.0/System.Security.AccessControl.dll", + "lib/net6.0/System.Security.AccessControl.xml", + "lib/netstandard2.0/System.Security.AccessControl.dll", + "lib/netstandard2.0/System.Security.AccessControl.xml", + "runtimes/win/lib/net461/System.Security.AccessControl.dll", + "runtimes/win/lib/net461/System.Security.AccessControl.xml", + "runtimes/win/lib/net6.0/System.Security.AccessControl.dll", + "runtimes/win/lib/net6.0/System.Security.AccessControl.xml", + "runtimes/win/lib/netstandard2.0/System.Security.AccessControl.dll", + "runtimes/win/lib/netstandard2.0/System.Security.AccessControl.xml", + "system.security.accesscontrol.6.0.0.nupkg.sha512", + "system.security.accesscontrol.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "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/5.0.0": { + "sha512": "jIMXsKn94T9JY7PvPq/tMfqa6GAaHpElRDpmG+SuL+D3+sTw2M8VhnibKnN8Tq+4JqbPJ/f+BwtLeDMEnzAvRg==", + "type": "package", + "path": "system.security.cryptography.cng/5.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Security.Cryptography.Cng.dll", + "lib/net461/System.Security.Cryptography.Cng.dll", + "lib/net461/System.Security.Cryptography.Cng.xml", + "lib/net462/System.Security.Cryptography.Cng.dll", + "lib/net462/System.Security.Cryptography.Cng.xml", + "lib/net47/System.Security.Cryptography.Cng.dll", + "lib/net47/System.Security.Cryptography.Cng.xml", + "lib/netcoreapp2.1/System.Security.Cryptography.Cng.dll", + "lib/netcoreapp3.0/System.Security.Cryptography.Cng.dll", + "lib/netcoreapp3.0/System.Security.Cryptography.Cng.xml", + "lib/netstandard1.3/System.Security.Cryptography.Cng.dll", + "lib/netstandard1.4/System.Security.Cryptography.Cng.dll", + "lib/netstandard1.6/System.Security.Cryptography.Cng.dll", + "lib/netstandard2.0/System.Security.Cryptography.Cng.dll", + "lib/netstandard2.0/System.Security.Cryptography.Cng.xml", + "lib/netstandard2.1/System.Security.Cryptography.Cng.dll", + "lib/netstandard2.1/System.Security.Cryptography.Cng.xml", + "lib/uap10.0.16299/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Security.Cryptography.Cng.dll", + "ref/net461/System.Security.Cryptography.Cng.dll", + "ref/net461/System.Security.Cryptography.Cng.xml", + "ref/net462/System.Security.Cryptography.Cng.dll", + "ref/net462/System.Security.Cryptography.Cng.xml", + "ref/net47/System.Security.Cryptography.Cng.dll", + "ref/net47/System.Security.Cryptography.Cng.xml", + "ref/netcoreapp2.0/System.Security.Cryptography.Cng.dll", + "ref/netcoreapp2.0/System.Security.Cryptography.Cng.xml", + "ref/netcoreapp2.1/System.Security.Cryptography.Cng.dll", + "ref/netcoreapp2.1/System.Security.Cryptography.Cng.xml", + "ref/netcoreapp3.0/System.Security.Cryptography.Cng.dll", + "ref/netcoreapp3.0/System.Security.Cryptography.Cng.xml", + "ref/netstandard1.3/System.Security.Cryptography.Cng.dll", + "ref/netstandard1.4/System.Security.Cryptography.Cng.dll", + "ref/netstandard1.6/System.Security.Cryptography.Cng.dll", + "ref/netstandard2.0/System.Security.Cryptography.Cng.dll", + "ref/netstandard2.0/System.Security.Cryptography.Cng.xml", + "ref/netstandard2.1/System.Security.Cryptography.Cng.dll", + "ref/netstandard2.1/System.Security.Cryptography.Cng.xml", + "ref/uap10.0.16299/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/win/lib/net46/System.Security.Cryptography.Cng.dll", + "runtimes/win/lib/net461/System.Security.Cryptography.Cng.dll", + "runtimes/win/lib/net461/System.Security.Cryptography.Cng.xml", + "runtimes/win/lib/net462/System.Security.Cryptography.Cng.dll", + "runtimes/win/lib/net462/System.Security.Cryptography.Cng.xml", + "runtimes/win/lib/net47/System.Security.Cryptography.Cng.dll", + "runtimes/win/lib/net47/System.Security.Cryptography.Cng.xml", + "runtimes/win/lib/netcoreapp2.0/System.Security.Cryptography.Cng.dll", + "runtimes/win/lib/netcoreapp2.1/System.Security.Cryptography.Cng.dll", + "runtimes/win/lib/netcoreapp3.0/System.Security.Cryptography.Cng.dll", + "runtimes/win/lib/netcoreapp3.0/System.Security.Cryptography.Cng.xml", + "runtimes/win/lib/netstandard1.4/System.Security.Cryptography.Cng.dll", + "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.Cng.dll", + "runtimes/win/lib/uap10.0.16299/_._", + "system.security.cryptography.cng.5.0.0.nupkg.sha512", + "system.security.cryptography.cng.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "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.Pkcs/5.0.0": { + "sha512": "9TPLGjBCGKmNvG8pjwPeuYy0SMVmGZRwlTZvyPHDbYv/DRkoeumJdfumaaDNQzVGMEmbWtg07zUpSW9q70IlDQ==", + "type": "package", + "path": "system.security.cryptography.pkcs/5.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net46/System.Security.Cryptography.Pkcs.dll", + "lib/net461/System.Security.Cryptography.Pkcs.dll", + "lib/net461/System.Security.Cryptography.Pkcs.xml", + "lib/netcoreapp2.1/System.Security.Cryptography.Pkcs.dll", + "lib/netcoreapp3.0/System.Security.Cryptography.Pkcs.dll", + "lib/netcoreapp3.0/System.Security.Cryptography.Pkcs.xml", + "lib/netstandard1.3/System.Security.Cryptography.Pkcs.dll", + "lib/netstandard2.0/System.Security.Cryptography.Pkcs.dll", + "lib/netstandard2.0/System.Security.Cryptography.Pkcs.xml", + "lib/netstandard2.1/System.Security.Cryptography.Pkcs.dll", + "lib/netstandard2.1/System.Security.Cryptography.Pkcs.xml", + "ref/net46/System.Security.Cryptography.Pkcs.dll", + "ref/net461/System.Security.Cryptography.Pkcs.dll", + "ref/net461/System.Security.Cryptography.Pkcs.xml", + "ref/netcoreapp2.1/System.Security.Cryptography.Pkcs.dll", + "ref/netcoreapp2.1/System.Security.Cryptography.Pkcs.xml", + "ref/netcoreapp3.0/System.Security.Cryptography.Pkcs.dll", + "ref/netcoreapp3.0/System.Security.Cryptography.Pkcs.xml", + "ref/netstandard1.3/System.Security.Cryptography.Pkcs.dll", + "ref/netstandard2.0/System.Security.Cryptography.Pkcs.dll", + "ref/netstandard2.0/System.Security.Cryptography.Pkcs.xml", + "ref/netstandard2.1/System.Security.Cryptography.Pkcs.dll", + "ref/netstandard2.1/System.Security.Cryptography.Pkcs.xml", + "runtimes/win/lib/net46/System.Security.Cryptography.Pkcs.dll", + "runtimes/win/lib/net461/System.Security.Cryptography.Pkcs.dll", + "runtimes/win/lib/net461/System.Security.Cryptography.Pkcs.xml", + "runtimes/win/lib/netcoreapp2.1/System.Security.Cryptography.Pkcs.dll", + "runtimes/win/lib/netcoreapp3.0/System.Security.Cryptography.Pkcs.dll", + "runtimes/win/lib/netcoreapp3.0/System.Security.Cryptography.Pkcs.xml", + "runtimes/win/lib/netstandard1.3/System.Security.Cryptography.Pkcs.dll", + "runtimes/win/lib/netstandard2.0/System.Security.Cryptography.Pkcs.dll", + "runtimes/win/lib/netstandard2.0/System.Security.Cryptography.Pkcs.xml", + "runtimes/win/lib/netstandard2.1/System.Security.Cryptography.Pkcs.dll", + "runtimes/win/lib/netstandard2.1/System.Security.Cryptography.Pkcs.xml", + "system.security.cryptography.pkcs.5.0.0.nupkg.sha512", + "system.security.cryptography.pkcs.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "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.ProtectedData/6.0.0": { + "sha512": "rp1gMNEZpvx9vP0JW0oHLxlf8oSiQgtno77Y4PLUBjSiDYoD77Y8uXHr1Ea5XG4/pIKhqAdxZ8v8OTUtqo9PeQ==", + "type": "package", + "path": "system.security.cryptography.protecteddata/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Security.Cryptography.ProtectedData.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net461/System.Security.Cryptography.ProtectedData.dll", + "lib/net461/System.Security.Cryptography.ProtectedData.xml", + "lib/net6.0/System.Security.Cryptography.ProtectedData.dll", + "lib/net6.0/System.Security.Cryptography.ProtectedData.xml", + "lib/netstandard2.0/System.Security.Cryptography.ProtectedData.dll", + "lib/netstandard2.0/System.Security.Cryptography.ProtectedData.xml", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "runtimes/win/lib/net461/System.Security.Cryptography.ProtectedData.dll", + "runtimes/win/lib/net461/System.Security.Cryptography.ProtectedData.xml", + "runtimes/win/lib/net6.0/System.Security.Cryptography.ProtectedData.dll", + "runtimes/win/lib/net6.0/System.Security.Cryptography.ProtectedData.xml", + "runtimes/win/lib/netstandard2.0/System.Security.Cryptography.ProtectedData.dll", + "runtimes/win/lib/netstandard2.0/System.Security.Cryptography.ProtectedData.xml", + "system.security.cryptography.protecteddata.6.0.0.nupkg.sha512", + "system.security.cryptography.protecteddata.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "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.Security.Permissions/6.0.0": { + "sha512": "T/uuc7AklkDoxmcJ7LGkyX1CcSviZuLCa4jg3PekfJ7SU0niF0IVTXwUiNVP9DSpzou2PpxJ+eNY2IfDM90ZCg==", + "type": "package", + "path": "system.security.permissions/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Security.Permissions.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/System.Security.Permissions.dll", + "lib/net461/System.Security.Permissions.xml", + "lib/net5.0/System.Security.Permissions.dll", + "lib/net5.0/System.Security.Permissions.xml", + "lib/net6.0/System.Security.Permissions.dll", + "lib/net6.0/System.Security.Permissions.xml", + "lib/netcoreapp3.1/System.Security.Permissions.dll", + "lib/netcoreapp3.1/System.Security.Permissions.xml", + "lib/netstandard2.0/System.Security.Permissions.dll", + "lib/netstandard2.0/System.Security.Permissions.xml", + "runtimes/win/lib/net461/System.Security.Permissions.dll", + "runtimes/win/lib/net461/System.Security.Permissions.xml", + "system.security.permissions.6.0.0.nupkg.sha512", + "system.security.permissions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Security.Principal.Windows/5.0.0": { + "sha512": "t0MGLukB5WAVU9bO3MGzvlGnyJPgUlcwerXn1kzBRjwLKixT96XV0Uza41W49gVd8zEMFu9vQEFlv0IOrytICA==", + "type": "package", + "path": "system.security.principal.windows/5.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net46/System.Security.Principal.Windows.dll", + "lib/net461/System.Security.Principal.Windows.dll", + "lib/net461/System.Security.Principal.Windows.xml", + "lib/netstandard1.3/System.Security.Principal.Windows.dll", + "lib/netstandard2.0/System.Security.Principal.Windows.dll", + "lib/netstandard2.0/System.Security.Principal.Windows.xml", + "lib/uap10.0.16299/_._", + "ref/net46/System.Security.Principal.Windows.dll", + "ref/net461/System.Security.Principal.Windows.dll", + "ref/net461/System.Security.Principal.Windows.xml", + "ref/netcoreapp3.0/System.Security.Principal.Windows.dll", + "ref/netcoreapp3.0/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/System.Security.Principal.Windows.dll", + "ref/netstandard1.3/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/de/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/es/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/fr/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/it/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/ja/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/ko/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/ru/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/zh-hans/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/zh-hant/System.Security.Principal.Windows.xml", + "ref/netstandard2.0/System.Security.Principal.Windows.dll", + "ref/netstandard2.0/System.Security.Principal.Windows.xml", + "ref/uap10.0.16299/_._", + "runtimes/unix/lib/netcoreapp2.0/System.Security.Principal.Windows.dll", + "runtimes/unix/lib/netcoreapp2.0/System.Security.Principal.Windows.xml", + "runtimes/unix/lib/netcoreapp2.1/System.Security.Principal.Windows.dll", + "runtimes/unix/lib/netcoreapp2.1/System.Security.Principal.Windows.xml", + "runtimes/win/lib/net46/System.Security.Principal.Windows.dll", + "runtimes/win/lib/net461/System.Security.Principal.Windows.dll", + "runtimes/win/lib/net461/System.Security.Principal.Windows.xml", + "runtimes/win/lib/netcoreapp2.0/System.Security.Principal.Windows.dll", + "runtimes/win/lib/netcoreapp2.0/System.Security.Principal.Windows.xml", + "runtimes/win/lib/netcoreapp2.1/System.Security.Principal.Windows.dll", + "runtimes/win/lib/netcoreapp2.1/System.Security.Principal.Windows.xml", + "runtimes/win/lib/netstandard1.3/System.Security.Principal.Windows.dll", + "runtimes/win/lib/uap10.0.16299/_._", + "system.security.principal.windows.5.0.0.nupkg.sha512", + "system.security.principal.windows.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "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.CodePages/6.0.0": { + "sha512": "ZFCILZuOvtKPauZ/j/swhvw68ZRi9ATCfvGbk1QfydmcXBkIWecWKn/250UH7rahZ5OoDBaiAudJtPvLwzw85A==", + "type": "package", + "path": "system.text.encoding.codepages/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Text.Encoding.CodePages.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net461/System.Text.Encoding.CodePages.dll", + "lib/net461/System.Text.Encoding.CodePages.xml", + "lib/net6.0/System.Text.Encoding.CodePages.dll", + "lib/net6.0/System.Text.Encoding.CodePages.xml", + "lib/netcoreapp3.1/System.Text.Encoding.CodePages.dll", + "lib/netcoreapp3.1/System.Text.Encoding.CodePages.xml", + "lib/netstandard2.0/System.Text.Encoding.CodePages.dll", + "lib/netstandard2.0/System.Text.Encoding.CodePages.xml", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "runtimes/win/lib/net461/System.Text.Encoding.CodePages.dll", + "runtimes/win/lib/net461/System.Text.Encoding.CodePages.xml", + "runtimes/win/lib/net6.0/System.Text.Encoding.CodePages.dll", + "runtimes/win/lib/net6.0/System.Text.Encoding.CodePages.xml", + "runtimes/win/lib/netcoreapp3.1/System.Text.Encoding.CodePages.dll", + "runtimes/win/lib/netcoreapp3.1/System.Text.Encoding.CodePages.xml", + "runtimes/win/lib/netstandard2.0/System.Text.Encoding.CodePages.dll", + "runtimes/win/lib/netstandard2.0/System.Text.Encoding.CodePages.xml", + "system.text.encoding.codepages.6.0.0.nupkg.sha512", + "system.text.encoding.codepages.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.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/7.0.0": { "sha512": "OP6umVGxc0Z0MvZQBVigj4/U31Pw72ITihDWP9WiWDm+q5aoe0GaJivsfYGq53o6dxH7DcXWiCTl7+0o2CGdmg==", "type": "package", @@ -1661,17 +15629,568 @@ "system.text.json.nuspec", "useSharedDesignerContext.txt" ] + }, + "System.Text.RegularExpressions/4.3.0": { + "sha512": "RpT2DA+L660cBt1FssIE9CAGpLFdFPuheB7pLpKpn6ZXNby7jDERe8Ua/Ne2xGiwLVG2JOqziiaVCGDon5sKFA==", + "type": "package", + "path": "system.text.regularexpressions/4.3.0", + "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.0.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.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.Dataflow/6.0.0": { + "sha512": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==", + "type": "package", + "path": "system.threading.tasks.dataflow/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Threading.Tasks.Dataflow.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/System.Threading.Tasks.Dataflow.dll", + "lib/net461/System.Threading.Tasks.Dataflow.xml", + "lib/net6.0/System.Threading.Tasks.Dataflow.dll", + "lib/net6.0/System.Threading.Tasks.Dataflow.xml", + "lib/netstandard2.0/System.Threading.Tasks.Dataflow.dll", + "lib/netstandard2.0/System.Threading.Tasks.Dataflow.xml", + "lib/netstandard2.1/System.Threading.Tasks.Dataflow.dll", + "lib/netstandard2.1/System.Threading.Tasks.Dataflow.xml", + "system.threading.tasks.dataflow.6.0.0.nupkg.sha512", + "system.threading.tasks.dataflow.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Threading.Tasks.Extensions/4.5.4": { + "sha512": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", + "type": "package", + "path": "system.threading.tasks.extensions/4.5.4", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net461/System.Threading.Tasks.Extensions.dll", + "lib/net461/System.Threading.Tasks.Extensions.xml", + "lib/netcoreapp2.1/_._", + "lib/netstandard1.0/System.Threading.Tasks.Extensions.dll", + "lib/netstandard1.0/System.Threading.Tasks.Extensions.xml", + "lib/netstandard2.0/System.Threading.Tasks.Extensions.dll", + "lib/netstandard2.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", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/netcoreapp2.1/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.threading.tasks.extensions.4.5.4.nupkg.sha512", + "system.threading.tasks.extensions.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Threading.ThreadPool/4.3.0": { + "sha512": "k/+g4b7vjdd4aix83sTgC9VG6oXYKAktSfNIJUNGxPEj7ryEOfzHHhfnmsZvjxawwcD9HyWXKCXmPjX8U4zeSw==", + "type": "package", + "path": "system.threading.threadpool/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Threading.ThreadPool.dll", + "lib/netcore50/_._", + "lib/netstandard1.3/System.Threading.ThreadPool.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Threading.ThreadPool.dll", + "ref/netstandard1.3/System.Threading.ThreadPool.dll", + "ref/netstandard1.3/System.Threading.ThreadPool.xml", + "ref/netstandard1.3/de/System.Threading.ThreadPool.xml", + "ref/netstandard1.3/es/System.Threading.ThreadPool.xml", + "ref/netstandard1.3/fr/System.Threading.ThreadPool.xml", + "ref/netstandard1.3/it/System.Threading.ThreadPool.xml", + "ref/netstandard1.3/ja/System.Threading.ThreadPool.xml", + "ref/netstandard1.3/ko/System.Threading.ThreadPool.xml", + "ref/netstandard1.3/ru/System.Threading.ThreadPool.xml", + "ref/netstandard1.3/zh-hans/System.Threading.ThreadPool.xml", + "ref/netstandard1.3/zh-hant/System.Threading.ThreadPool.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.threading.threadpool.4.3.0.nupkg.sha512", + "system.threading.threadpool.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.Windows.Extensions/6.0.0": { + "sha512": "IXoJOXIqc39AIe+CIR7koBtRGMiCt/LPM3lI+PELtDIy9XdyeSrwXFdWV9dzJ2Awl0paLWUaknLxFQ5HpHZUog==", + "type": "package", + "path": "system.windows.extensions/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net6.0/System.Windows.Extensions.dll", + "lib/net6.0/System.Windows.Extensions.xml", + "lib/netcoreapp3.1/System.Windows.Extensions.dll", + "lib/netcoreapp3.1/System.Windows.Extensions.xml", + "runtimes/win/lib/net6.0/System.Windows.Extensions.dll", + "runtimes/win/lib/net6.0/System.Windows.Extensions.xml", + "runtimes/win/lib/netcoreapp3.1/System.Windows.Extensions.dll", + "runtimes/win/lib/netcoreapp3.1/System.Windows.Extensions.xml", + "system.windows.extensions.6.0.0.nupkg.sha512", + "system.windows.extensions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "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": { "net7.0": [ - "Microsoft.AspNetCore.Authorization >= 7.0.0", - "Microsoft.AspNetCore.OpenApi >= 7.0.15", - "Microsoft.EntityFrameworkCore >= 7.0.0", - "Microsoft.EntityFrameworkCore.Design >= 7.0.0", - "Microsoft.IdentityModel.Tokens >= 7.0.0", - "Npgsql.EntityFrameworkCore.PostgreSQL >= 7.0.0", - "Swashbuckle.AspNetCore >= 6.5.0" + "AutoMapper >= 12.0.1", + "AutoMapper.Extensions.Microsoft.DependencyInjection >= 12.0.1", + "BCrypt.Net >= 0.1.0", + "Microsoft.AspNetCore.Authentication.JwtBearer >= 7.0.16", + "Microsoft.AspNetCore.SpaProxy >= 7.0.13", + "Microsoft.EntityFrameworkCore >= 7.0.9", + "Microsoft.EntityFrameworkCore.Design >= 7.0.9", + "Microsoft.IdentityModel.Tokens >= 6.35.0", + "Microsoft.NET.Build.Containers >= 7.0.400", + "Microsoft.VisualStudio.Web.CodeGeneration.Design >= 7.0.8", + "Npgsql.EntityFrameworkCore.PostgreSQL >= 7.0.4", + "Swashbuckle.AspNetCore >= 6.5.0", + "System.IdentityModel.Tokens.Jwt >= 6.35.0" ] }, "packageFolders": { @@ -1711,35 +16230,59 @@ "net7.0": { "targetAlias": "net7.0", "dependencies": { - "Microsoft.AspNetCore.Authorization": { + "AutoMapper": { "target": "Package", - "version": "[7.0.0, )" + "version": "[12.0.1, )" }, - "Microsoft.AspNetCore.OpenApi": { + "AutoMapper.Extensions.Microsoft.DependencyInjection": { "target": "Package", - "version": "[7.0.15, )" + "version": "[12.0.1, )" + }, + "BCrypt.Net": { + "target": "Package", + "version": "[0.1.0, )" + }, + "Microsoft.AspNetCore.Authentication.JwtBearer": { + "target": "Package", + "version": "[7.0.16, )" + }, + "Microsoft.AspNetCore.SpaProxy": { + "target": "Package", + "version": "[7.0.13, )" }, "Microsoft.EntityFrameworkCore": { "target": "Package", - "version": "[7.0.0, )" + "version": "[7.0.9, )" }, "Microsoft.EntityFrameworkCore.Design": { "include": "Runtime, Build, Native, ContentFiles, Analyzers, BuildTransitive", "suppressParent": "All", "target": "Package", - "version": "[7.0.0, )" + "version": "[7.0.9, )" }, "Microsoft.IdentityModel.Tokens": { "target": "Package", - "version": "[7.0.0, )" + "version": "[6.35.0, )" + }, + "Microsoft.NET.Build.Containers": { + "target": "Package", + "version": "[7.0.400, )" + }, + "Microsoft.VisualStudio.Web.CodeGeneration.Design": { + "target": "Package", + "version": "[7.0.8, )" }, "Npgsql.EntityFrameworkCore.PostgreSQL": { "target": "Package", - "version": "[7.0.0, )" + "version": "[7.0.4, )" }, "Swashbuckle.AspNetCore": { "target": "Package", "version": "[6.5.0, )" + }, + "System.IdentityModel.Tokens.Jwt": { + "target": "Package", + "version": "[6.35.0, )" } }, "imports": [ @@ -1757,6 +16300,18 @@ { "name": "Microsoft.AspNetCore.App.Ref", "version": "[7.0.15, 7.0.15]" + }, + { + "name": "Microsoft.AspNetCore.App.Runtime.linux-x64", + "version": "[7.0.15, 7.0.15]" + }, + { + "name": "Microsoft.NETCore.App.Host.linux-x64", + "version": "[7.0.15, 7.0.15]" + }, + { + "name": "Microsoft.NETCore.App.Runtime.linux-x64", + "version": "[7.0.15, 7.0.15]" } ], "frameworkReferences": { @@ -1769,6 +16324,23 @@ }, "runtimeIdentifierGraphPath": "/usr/share/dotnet/sdk/7.0.115/RuntimeIdentifierGraph.json" } + }, + "runtimes": { + "linux-x64": { + "#import": [] + } } - } + }, + "logs": [ + { + "code": "NU1701", + "level": "Warning", + "warningLevel": 1, + "message": "Package 'BCrypt.Net 0.1.0' was restored using '.NETFramework,Version=v4.6.1, .NETFramework,Version=v4.6.2, .NETFramework,Version=v4.7, .NETFramework,Version=v4.7.1, .NETFramework,Version=v4.7.2, .NETFramework,Version=v4.8, .NETFramework,Version=v4.8.1' instead of the project target framework 'net7.0'. This package may not be fully compatible with your project.", + "libraryId": "BCrypt.Net", + "targetGraphs": [ + "net7.0" + ] + } + ] } \ No newline at end of file diff --git a/AAIntegration.SimmonsBank.API/obj/project.nuget.cache b/AAIntegration.SimmonsBank.API/obj/project.nuget.cache index 10f019e..d04302e 100644 --- a/AAIntegration.SimmonsBank.API/obj/project.nuget.cache +++ b/AAIntegration.SimmonsBank.API/obj/project.nuget.cache @@ -1,18 +1,87 @@ { "version": 2, - "dgSpecHash": "+YzPVm6dCqls1vMVNzEq7Me1vMtNZci2DFK/dzhgGd7F3oUcG2jW1uWdu7yR4roqWl4E1HzertAKQW8S2e71Yw==", + "dgSpecHash": "pU4IZjFuw6ck49MYsMS+1UuAOx/hMvpbrwRe+YEG/+yMX3k4+UAMntT6PNgrQmrU6kLvRLvNkyt8WlX1uYoEtw==", "success": true, "projectFilePath": "/home/william/Git/Integration-TransactionImporter-SimmonsBank/AAIntegration.SimmonsBank.API/AAIntegration.SimmonsBank.API.csproj", "expectedPackageFiles": [ + "/home/william/.nuget/packages/automapper/12.0.1/automapper.12.0.1.nupkg.sha512", + "/home/william/.nuget/packages/automapper.extensions.microsoft.dependencyinjection/12.0.1/automapper.extensions.microsoft.dependencyinjection.12.0.1.nupkg.sha512", + "/home/william/.nuget/packages/bcrypt.net/0.1.0/bcrypt.net.0.1.0.nupkg.sha512", + "/home/william/.nuget/packages/humanizer/2.14.1/humanizer.2.14.1.nupkg.sha512", "/home/william/.nuget/packages/humanizer.core/2.14.1/humanizer.core.2.14.1.nupkg.sha512", - "/home/william/.nuget/packages/microsoft.aspnetcore.authorization/7.0.0/microsoft.aspnetcore.authorization.7.0.0.nupkg.sha512", - "/home/william/.nuget/packages/microsoft.aspnetcore.metadata/7.0.0/microsoft.aspnetcore.metadata.7.0.0.nupkg.sha512", - "/home/william/.nuget/packages/microsoft.aspnetcore.openapi/7.0.15/microsoft.aspnetcore.openapi.7.0.15.nupkg.sha512", - "/home/william/.nuget/packages/microsoft.entityframeworkcore/7.0.0/microsoft.entityframeworkcore.7.0.0.nupkg.sha512", - "/home/william/.nuget/packages/microsoft.entityframeworkcore.abstractions/7.0.0/microsoft.entityframeworkcore.abstractions.7.0.0.nupkg.sha512", - "/home/william/.nuget/packages/microsoft.entityframeworkcore.analyzers/7.0.0/microsoft.entityframeworkcore.analyzers.7.0.0.nupkg.sha512", - "/home/william/.nuget/packages/microsoft.entityframeworkcore.design/7.0.0/microsoft.entityframeworkcore.design.7.0.0.nupkg.sha512", - "/home/william/.nuget/packages/microsoft.entityframeworkcore.relational/7.0.0/microsoft.entityframeworkcore.relational.7.0.0.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.af/2.14.1/humanizer.core.af.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.ar/2.14.1/humanizer.core.ar.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.az/2.14.1/humanizer.core.az.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.bg/2.14.1/humanizer.core.bg.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.bn-bd/2.14.1/humanizer.core.bn-bd.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.cs/2.14.1/humanizer.core.cs.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.da/2.14.1/humanizer.core.da.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.de/2.14.1/humanizer.core.de.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.el/2.14.1/humanizer.core.el.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.es/2.14.1/humanizer.core.es.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.fa/2.14.1/humanizer.core.fa.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.fi-fi/2.14.1/humanizer.core.fi-fi.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.fr/2.14.1/humanizer.core.fr.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.fr-be/2.14.1/humanizer.core.fr-be.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.he/2.14.1/humanizer.core.he.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.hr/2.14.1/humanizer.core.hr.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.hu/2.14.1/humanizer.core.hu.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.hy/2.14.1/humanizer.core.hy.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.id/2.14.1/humanizer.core.id.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.is/2.14.1/humanizer.core.is.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.it/2.14.1/humanizer.core.it.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.ja/2.14.1/humanizer.core.ja.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.ko-kr/2.14.1/humanizer.core.ko-kr.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.ku/2.14.1/humanizer.core.ku.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.lv/2.14.1/humanizer.core.lv.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.ms-my/2.14.1/humanizer.core.ms-my.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.mt/2.14.1/humanizer.core.mt.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.nb/2.14.1/humanizer.core.nb.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.nb-no/2.14.1/humanizer.core.nb-no.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.nl/2.14.1/humanizer.core.nl.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.pl/2.14.1/humanizer.core.pl.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.pt/2.14.1/humanizer.core.pt.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.ro/2.14.1/humanizer.core.ro.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.ru/2.14.1/humanizer.core.ru.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.sk/2.14.1/humanizer.core.sk.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.sl/2.14.1/humanizer.core.sl.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.sr/2.14.1/humanizer.core.sr.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.sr-latn/2.14.1/humanizer.core.sr-latn.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.sv/2.14.1/humanizer.core.sv.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.th-th/2.14.1/humanizer.core.th-th.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.tr/2.14.1/humanizer.core.tr.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.uk/2.14.1/humanizer.core.uk.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.uz-cyrl-uz/2.14.1/humanizer.core.uz-cyrl-uz.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.uz-latn-uz/2.14.1/humanizer.core.uz-latn-uz.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.vi/2.14.1/humanizer.core.vi.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.zh-cn/2.14.1/humanizer.core.zh-cn.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.zh-hans/2.14.1/humanizer.core.zh-hans.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/humanizer.core.zh-hant/2.14.1/humanizer.core.zh-hant.2.14.1.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.aspnetcore.authentication.jwtbearer/7.0.16/microsoft.aspnetcore.authentication.jwtbearer.7.0.16.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.aspnetcore.razor.language/6.0.11/microsoft.aspnetcore.razor.language.6.0.11.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.aspnetcore.spaproxy/7.0.13/microsoft.aspnetcore.spaproxy.7.0.13.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.bcl.asyncinterfaces/6.0.0/microsoft.bcl.asyncinterfaces.6.0.0.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.build/17.3.2/microsoft.build.17.3.2.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.build.framework/17.3.2/microsoft.build.framework.17.3.2.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.codeanalysis.analyzers/3.3.3/microsoft.codeanalysis.analyzers.3.3.3.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.codeanalysis.analyzerutilities/3.3.0/microsoft.codeanalysis.analyzerutilities.3.3.0.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.codeanalysis.common/4.4.0/microsoft.codeanalysis.common.4.4.0.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.codeanalysis.csharp/4.4.0/microsoft.codeanalysis.csharp.4.4.0.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.codeanalysis.csharp.features/4.4.0/microsoft.codeanalysis.csharp.features.4.4.0.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.codeanalysis.csharp.workspaces/4.4.0/microsoft.codeanalysis.csharp.workspaces.4.4.0.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.codeanalysis.elfie/1.0.0/microsoft.codeanalysis.elfie.1.0.0.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.codeanalysis.features/4.4.0/microsoft.codeanalysis.features.4.4.0.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.codeanalysis.razor/6.0.11/microsoft.codeanalysis.razor.6.0.11.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.codeanalysis.scripting.common/4.4.0/microsoft.codeanalysis.scripting.common.4.4.0.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.codeanalysis.workspaces.common/4.4.0/microsoft.codeanalysis.workspaces.common.4.4.0.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.csharp/4.7.0/microsoft.csharp.4.7.0.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.diasymreader/1.4.0/microsoft.diasymreader.1.4.0.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.dotnet.scaffolding.shared/7.0.8/microsoft.dotnet.scaffolding.shared.7.0.8.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.entityframeworkcore/7.0.9/microsoft.entityframeworkcore.7.0.9.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.entityframeworkcore.abstractions/7.0.9/microsoft.entityframeworkcore.abstractions.7.0.9.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.entityframeworkcore.analyzers/7.0.9/microsoft.entityframeworkcore.analyzers.7.0.9.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.entityframeworkcore.design/7.0.9/microsoft.entityframeworkcore.design.7.0.9.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.entityframeworkcore.relational/7.0.9/microsoft.entityframeworkcore.relational.7.0.9.nupkg.sha512", "/home/william/.nuget/packages/microsoft.extensions.apidescription.server/6.0.5/microsoft.extensions.apidescription.server.6.0.5.nupkg.sha512", "/home/william/.nuget/packages/microsoft.extensions.caching.abstractions/7.0.0/microsoft.extensions.caching.abstractions.7.0.0.nupkg.sha512", "/home/william/.nuget/packages/microsoft.extensions.caching.memory/7.0.0/microsoft.extensions.caching.memory.7.0.0.nupkg.sha512", @@ -24,22 +93,184 @@ "/home/william/.nuget/packages/microsoft.extensions.logging.abstractions/7.0.0/microsoft.extensions.logging.abstractions.7.0.0.nupkg.sha512", "/home/william/.nuget/packages/microsoft.extensions.options/7.0.0/microsoft.extensions.options.7.0.0.nupkg.sha512", "/home/william/.nuget/packages/microsoft.extensions.primitives/7.0.0/microsoft.extensions.primitives.7.0.0.nupkg.sha512", - "/home/william/.nuget/packages/microsoft.identitymodel.abstractions/7.0.0/microsoft.identitymodel.abstractions.7.0.0.nupkg.sha512", - "/home/william/.nuget/packages/microsoft.identitymodel.logging/7.0.0/microsoft.identitymodel.logging.7.0.0.nupkg.sha512", - "/home/william/.nuget/packages/microsoft.identitymodel.tokens/7.0.0/microsoft.identitymodel.tokens.7.0.0.nupkg.sha512", - "/home/william/.nuget/packages/microsoft.openapi/1.4.3/microsoft.openapi.1.4.3.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.identitymodel.abstractions/6.35.0/microsoft.identitymodel.abstractions.6.35.0.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.identitymodel.jsonwebtokens/6.35.0/microsoft.identitymodel.jsonwebtokens.6.35.0.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.identitymodel.logging/6.35.0/microsoft.identitymodel.logging.6.35.0.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.identitymodel.protocols/6.35.0/microsoft.identitymodel.protocols.6.35.0.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.identitymodel.protocols.openidconnect/6.35.0/microsoft.identitymodel.protocols.openidconnect.6.35.0.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.identitymodel.tokens/6.35.0/microsoft.identitymodel.tokens.6.35.0.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.net.build.containers/7.0.400/microsoft.net.build.containers.7.0.400.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.net.stringtools/17.3.2/microsoft.net.stringtools.17.3.2.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.netcore.platforms/1.1.0/microsoft.netcore.platforms.1.1.0.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.netcore.targets/1.1.0/microsoft.netcore.targets.1.1.0.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.openapi/1.2.3/microsoft.openapi.1.2.3.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.visualstudio.web.codegeneration/7.0.8/microsoft.visualstudio.web.codegeneration.7.0.8.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.visualstudio.web.codegeneration.core/7.0.8/microsoft.visualstudio.web.codegeneration.core.7.0.8.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.visualstudio.web.codegeneration.design/7.0.8/microsoft.visualstudio.web.codegeneration.design.7.0.8.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.visualstudio.web.codegeneration.entityframeworkcore/7.0.8/microsoft.visualstudio.web.codegeneration.entityframeworkcore.7.0.8.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.visualstudio.web.codegeneration.templating/7.0.8/microsoft.visualstudio.web.codegeneration.templating.7.0.8.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.visualstudio.web.codegeneration.utils/7.0.8/microsoft.visualstudio.web.codegeneration.utils.7.0.8.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.visualstudio.web.codegenerators.mvc/7.0.8/microsoft.visualstudio.web.codegenerators.mvc.7.0.8.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.win32.primitives/4.3.0/microsoft.win32.primitives.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.win32.systemevents/6.0.0/microsoft.win32.systemevents.6.0.0.nupkg.sha512", "/home/william/.nuget/packages/mono.texttemplating/2.2.1/mono.texttemplating.2.2.1.nupkg.sha512", - "/home/william/.nuget/packages/npgsql/7.0.0/npgsql.7.0.0.nupkg.sha512", - "/home/william/.nuget/packages/npgsql.entityframeworkcore.postgresql/7.0.0/npgsql.entityframeworkcore.postgresql.7.0.0.nupkg.sha512", + "/home/william/.nuget/packages/netstandard.library/1.6.1/netstandard.library.1.6.1.nupkg.sha512", + "/home/william/.nuget/packages/newtonsoft.json/13.0.1/newtonsoft.json.13.0.1.nupkg.sha512", + "/home/william/.nuget/packages/npgsql/7.0.4/npgsql.7.0.4.nupkg.sha512", + "/home/william/.nuget/packages/npgsql.entityframeworkcore.postgresql/7.0.4/npgsql.entityframeworkcore.postgresql.7.0.4.nupkg.sha512", + "/home/william/.nuget/packages/nuget.common/6.3.1/nuget.common.6.3.1.nupkg.sha512", + "/home/william/.nuget/packages/nuget.configuration/6.3.1/nuget.configuration.6.3.1.nupkg.sha512", + "/home/william/.nuget/packages/nuget.dependencyresolver.core/6.3.1/nuget.dependencyresolver.core.6.3.1.nupkg.sha512", + "/home/william/.nuget/packages/nuget.frameworks/6.3.1/nuget.frameworks.6.3.1.nupkg.sha512", + "/home/william/.nuget/packages/nuget.librarymodel/6.3.1/nuget.librarymodel.6.3.1.nupkg.sha512", + "/home/william/.nuget/packages/nuget.packaging/6.3.1/nuget.packaging.6.3.1.nupkg.sha512", + "/home/william/.nuget/packages/nuget.projectmodel/6.3.1/nuget.projectmodel.6.3.1.nupkg.sha512", + "/home/william/.nuget/packages/nuget.protocol/6.3.1/nuget.protocol.6.3.1.nupkg.sha512", + "/home/william/.nuget/packages/nuget.versioning/6.3.1/nuget.versioning.6.3.1.nupkg.sha512", + "/home/william/.nuget/packages/runtime.any.system.collections/4.3.0/runtime.any.system.collections.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.any.system.diagnostics.tools/4.3.0/runtime.any.system.diagnostics.tools.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.any.system.diagnostics.tracing/4.3.0/runtime.any.system.diagnostics.tracing.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.any.system.globalization/4.3.0/runtime.any.system.globalization.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.any.system.globalization.calendars/4.3.0/runtime.any.system.globalization.calendars.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.any.system.io/4.3.0/runtime.any.system.io.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.any.system.reflection/4.3.0/runtime.any.system.reflection.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.any.system.reflection.extensions/4.3.0/runtime.any.system.reflection.extensions.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.any.system.reflection.primitives/4.3.0/runtime.any.system.reflection.primitives.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.any.system.resources.resourcemanager/4.3.0/runtime.any.system.resources.resourcemanager.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.any.system.runtime/4.3.0/runtime.any.system.runtime.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.any.system.runtime.handles/4.3.0/runtime.any.system.runtime.handles.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.any.system.runtime.interopservices/4.3.0/runtime.any.system.runtime.interopservices.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.any.system.text.encoding/4.3.0/runtime.any.system.text.encoding.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.any.system.text.encoding.extensions/4.3.0/runtime.any.system.text.encoding.extensions.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.any.system.threading.tasks/4.3.0/runtime.any.system.threading.tasks.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.any.system.threading.timer/4.3.0/runtime.any.system.threading.timer.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.native.system/4.3.0/runtime.native.system.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.native.system.io.compression/4.3.0/runtime.native.system.io.compression.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.native.system.net.http/4.3.0/runtime.native.system.net.http.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.native.system.security.cryptography.apple/4.3.0/runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.native.system.security.cryptography.openssl/4.3.0/runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "/home/william/.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", + "/home/william/.nuget/packages/runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.unix.microsoft.win32.primitives/4.3.0/runtime.unix.microsoft.win32.primitives.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.unix.system.console/4.3.0/runtime.unix.system.console.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.unix.system.diagnostics.debug/4.3.0/runtime.unix.system.diagnostics.debug.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.unix.system.io.filesystem/4.3.0/runtime.unix.system.io.filesystem.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.unix.system.net.primitives/4.3.0/runtime.unix.system.net.primitives.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.unix.system.net.sockets/4.3.0/runtime.unix.system.net.sockets.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.unix.system.private.uri/4.3.0/runtime.unix.system.private.uri.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/runtime.unix.system.runtime.extensions/4.3.0/runtime.unix.system.runtime.extensions.4.3.0.nupkg.sha512", "/home/william/.nuget/packages/swashbuckle.aspnetcore/6.5.0/swashbuckle.aspnetcore.6.5.0.nupkg.sha512", "/home/william/.nuget/packages/swashbuckle.aspnetcore.swagger/6.5.0/swashbuckle.aspnetcore.swagger.6.5.0.nupkg.sha512", "/home/william/.nuget/packages/swashbuckle.aspnetcore.swaggergen/6.5.0/swashbuckle.aspnetcore.swaggergen.6.5.0.nupkg.sha512", "/home/william/.nuget/packages/swashbuckle.aspnetcore.swaggerui/6.5.0/swashbuckle.aspnetcore.swaggerui.6.5.0.nupkg.sha512", + "/home/william/.nuget/packages/system.appcontext/4.3.0/system.appcontext.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.buffers/4.3.0/system.buffers.4.3.0.nupkg.sha512", "/home/william/.nuget/packages/system.codedom/4.4.0/system.codedom.4.4.0.nupkg.sha512", + "/home/william/.nuget/packages/system.collections/4.3.0/system.collections.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.collections.concurrent/4.3.0/system.collections.concurrent.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.collections.immutable/6.0.0/system.collections.immutable.6.0.0.nupkg.sha512", + "/home/william/.nuget/packages/system.composition/6.0.0/system.composition.6.0.0.nupkg.sha512", + "/home/william/.nuget/packages/system.composition.attributedmodel/6.0.0/system.composition.attributedmodel.6.0.0.nupkg.sha512", + "/home/william/.nuget/packages/system.composition.convention/6.0.0/system.composition.convention.6.0.0.nupkg.sha512", + "/home/william/.nuget/packages/system.composition.hosting/6.0.0/system.composition.hosting.6.0.0.nupkg.sha512", + "/home/william/.nuget/packages/system.composition.runtime/6.0.0/system.composition.runtime.6.0.0.nupkg.sha512", + "/home/william/.nuget/packages/system.composition.typedparts/6.0.0/system.composition.typedparts.6.0.0.nupkg.sha512", + "/home/william/.nuget/packages/system.configuration.configurationmanager/6.0.0/system.configuration.configurationmanager.6.0.0.nupkg.sha512", + "/home/william/.nuget/packages/system.console/4.3.0/system.console.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.data.datasetextensions/4.5.0/system.data.datasetextensions.4.5.0.nupkg.sha512", + "/home/william/.nuget/packages/system.diagnostics.debug/4.3.0/system.diagnostics.debug.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.diagnostics.diagnosticsource/4.3.0/system.diagnostics.diagnosticsource.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.diagnostics.tools/4.3.0/system.diagnostics.tools.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.diagnostics.tracing/4.3.0/system.diagnostics.tracing.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.drawing.common/6.0.0/system.drawing.common.6.0.0.nupkg.sha512", + "/home/william/.nuget/packages/system.formats.asn1/5.0.0/system.formats.asn1.5.0.0.nupkg.sha512", + "/home/william/.nuget/packages/system.globalization/4.3.0/system.globalization.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.globalization.calendars/4.3.0/system.globalization.calendars.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.globalization.extensions/4.3.0/system.globalization.extensions.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.identitymodel.tokens.jwt/6.35.0/system.identitymodel.tokens.jwt.6.35.0.nupkg.sha512", + "/home/william/.nuget/packages/system.io/4.3.0/system.io.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.io.compression/4.3.0/system.io.compression.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.io.compression.zipfile/4.3.0/system.io.compression.zipfile.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.io.filesystem/4.3.0/system.io.filesystem.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.io.filesystem.primitives/4.3.0/system.io.filesystem.primitives.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.io.pipelines/6.0.3/system.io.pipelines.6.0.3.nupkg.sha512", + "/home/william/.nuget/packages/system.linq/4.3.0/system.linq.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.linq.expressions/4.3.0/system.linq.expressions.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.memory/4.5.5/system.memory.4.5.5.nupkg.sha512", + "/home/william/.nuget/packages/system.net.http/4.3.0/system.net.http.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.net.nameresolution/4.3.0/system.net.nameresolution.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.net.primitives/4.3.0/system.net.primitives.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.net.sockets/4.3.0/system.net.sockets.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.objectmodel/4.3.0/system.objectmodel.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.private.uri/4.3.0/system.private.uri.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.reflection/4.3.0/system.reflection.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.reflection.emit/4.3.0/system.reflection.emit.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.reflection.emit.ilgeneration/4.3.0/system.reflection.emit.ilgeneration.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.reflection.emit.lightweight/4.3.0/system.reflection.emit.lightweight.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.reflection.extensions/4.3.0/system.reflection.extensions.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.reflection.metadata/6.0.0/system.reflection.metadata.6.0.0.nupkg.sha512", + "/home/william/.nuget/packages/system.reflection.metadataloadcontext/6.0.0/system.reflection.metadataloadcontext.6.0.0.nupkg.sha512", + "/home/william/.nuget/packages/system.reflection.primitives/4.3.0/system.reflection.primitives.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.reflection.typeextensions/4.3.0/system.reflection.typeextensions.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.resources.resourcemanager/4.3.0/system.resources.resourcemanager.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.runtime/4.3.0/system.runtime.4.3.0.nupkg.sha512", "/home/william/.nuget/packages/system.runtime.compilerservices.unsafe/6.0.0/system.runtime.compilerservices.unsafe.6.0.0.nupkg.sha512", + "/home/william/.nuget/packages/system.runtime.extensions/4.3.0/system.runtime.extensions.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.runtime.handles/4.3.0/system.runtime.handles.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.runtime.interopservices/4.3.0/system.runtime.interopservices.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.runtime.interopservices.runtimeinformation/4.3.0/system.runtime.interopservices.runtimeinformation.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.runtime.numerics/4.3.0/system.runtime.numerics.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.security.accesscontrol/6.0.0/system.security.accesscontrol.6.0.0.nupkg.sha512", + "/home/william/.nuget/packages/system.security.cryptography.algorithms/4.3.0/system.security.cryptography.algorithms.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.security.cryptography.cng/5.0.0/system.security.cryptography.cng.5.0.0.nupkg.sha512", + "/home/william/.nuget/packages/system.security.cryptography.csp/4.3.0/system.security.cryptography.csp.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.security.cryptography.encoding/4.3.0/system.security.cryptography.encoding.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.security.cryptography.openssl/4.3.0/system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.security.cryptography.pkcs/5.0.0/system.security.cryptography.pkcs.5.0.0.nupkg.sha512", + "/home/william/.nuget/packages/system.security.cryptography.primitives/4.3.0/system.security.cryptography.primitives.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.security.cryptography.protecteddata/6.0.0/system.security.cryptography.protecteddata.6.0.0.nupkg.sha512", + "/home/william/.nuget/packages/system.security.cryptography.x509certificates/4.3.0/system.security.cryptography.x509certificates.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.security.permissions/6.0.0/system.security.permissions.6.0.0.nupkg.sha512", + "/home/william/.nuget/packages/system.security.principal.windows/5.0.0/system.security.principal.windows.5.0.0.nupkg.sha512", + "/home/william/.nuget/packages/system.text.encoding/4.3.0/system.text.encoding.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.text.encoding.codepages/6.0.0/system.text.encoding.codepages.6.0.0.nupkg.sha512", + "/home/william/.nuget/packages/system.text.encoding.extensions/4.3.0/system.text.encoding.extensions.4.3.0.nupkg.sha512", "/home/william/.nuget/packages/system.text.encodings.web/7.0.0/system.text.encodings.web.7.0.0.nupkg.sha512", "/home/william/.nuget/packages/system.text.json/7.0.0/system.text.json.7.0.0.nupkg.sha512", - "/home/william/.nuget/packages/microsoft.aspnetcore.app.ref/7.0.15/microsoft.aspnetcore.app.ref.7.0.15.nupkg.sha512" + "/home/william/.nuget/packages/system.text.regularexpressions/4.3.0/system.text.regularexpressions.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.threading/4.3.0/system.threading.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.threading.tasks/4.3.0/system.threading.tasks.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.threading.tasks.dataflow/6.0.0/system.threading.tasks.dataflow.6.0.0.nupkg.sha512", + "/home/william/.nuget/packages/system.threading.tasks.extensions/4.5.4/system.threading.tasks.extensions.4.5.4.nupkg.sha512", + "/home/william/.nuget/packages/system.threading.threadpool/4.3.0/system.threading.threadpool.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.threading.timer/4.3.0/system.threading.timer.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.windows.extensions/6.0.0/system.windows.extensions.6.0.0.nupkg.sha512", + "/home/william/.nuget/packages/system.xml.readerwriter/4.3.0/system.xml.readerwriter.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/system.xml.xdocument/4.3.0/system.xml.xdocument.4.3.0.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.netcore.app.runtime.linux-x64/7.0.15/microsoft.netcore.app.runtime.linux-x64.7.0.15.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.aspnetcore.app.ref/7.0.15/microsoft.aspnetcore.app.ref.7.0.15.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.aspnetcore.app.runtime.linux-x64/7.0.15/microsoft.aspnetcore.app.runtime.linux-x64.7.0.15.nupkg.sha512", + "/home/william/.nuget/packages/microsoft.netcore.app.host.linux-x64/7.0.15/microsoft.netcore.app.host.linux-x64.7.0.15.nupkg.sha512" ], - "logs": [] + "logs": [ + { + "code": "NU1701", + "level": "Warning", + "warningLevel": 1, + "message": "Package 'BCrypt.Net 0.1.0' was restored using '.NETFramework,Version=v4.6.1, .NETFramework,Version=v4.6.2, .NETFramework,Version=v4.7, .NETFramework,Version=v4.7.1, .NETFramework,Version=v4.7.2, .NETFramework,Version=v4.8, .NETFramework,Version=v4.8.1' instead of the project target framework 'net7.0'. This package may not be fully compatible with your project.", + "libraryId": "BCrypt.Net", + "targetGraphs": [ + "net7.0" + ] + } + ] } \ No newline at end of file