This commit is contained in:
Adam 2025-04-07 15:23:51 +02:00
commit 9a322ec362
39 changed files with 589 additions and 62 deletions

View File

@ -0,0 +1,17 @@
using AyCode.Core.Enums;
using AyCode.Core.Loggers;
namespace Mango.Core.Loggers;
public class ConsoleLogWriter : AcConsoleLogWriter
{
public ConsoleLogWriter() : this(null)
{ }
public ConsoleLogWriter(string? categoryName = null) : base(categoryName)
{ }
public ConsoleLogWriter(AppType appType, LogLevel logLevel, string? callerClassName = null) : base(appType, logLevel, callerClassName)
{
}
}

View File

@ -0,0 +1,19 @@
using AyCode.Core.Enums;
using AyCode.Core.Loggers;
namespace Mango.Core.Loggers;
public class Logger : AcLoggerBase
{
public Logger() : this(null)
{ }
public Logger(string? categoryName) : base(categoryName)
{ }
public Logger(string? categoryName, params IAcLogWriterBase[] logWriters) : base(categoryName, logWriters)
{ }
public Logger(AppType appType, LogLevel logLevel, string? categoryName, params IAcLogWriterBase[] logWriters) : base(appType, logLevel, categoryName, logWriters)
{ }
}

View File

@ -6,6 +6,10 @@
<Nullable>enable</Nullable>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="AutoMapper" Version="13.0.1" />
</ItemGroup>
<ItemGroup>
<Reference Include="AyCode.Core">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Core.dll</HintPath>

View File

@ -1,6 +1,7 @@
using AyCode.Database.DbContexts;
using AyCode.Database.Tests;
using Mango.Database.DbContexts;
using Mango.Database.DbContexts.Users;
namespace Mango.Database.Test
{
@ -10,12 +11,15 @@ namespace Mango.Database.Test
[TestInitialize]
public void Setup()
{
}
[TestCleanup]
public void TearDown()
{
}
[DataTestMethod]
public override void DatabaseExistsTest() => base.DatabaseExistsTest();
}
}

View File

@ -24,15 +24,15 @@
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="8.0.4" />
<PackageReference Include="Microsoft.EntityFrameworkCore.InMemory" Version="8.0.4" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Proxies" Version="8.0.4" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="8.0.4" />
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="8.0.10" />
<PackageReference Include="Microsoft.EntityFrameworkCore.InMemory" Version="8.0.10" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Proxies" Version="8.0.10" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="8.0.10" />
<PackageReference Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="8.0.0" />
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="8.0.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.9.0" />
<PackageReference Include="MSTest.TestAdapter" Version="3.3.1" />
<PackageReference Include="MSTest.TestFramework" Version="3.3.1" />
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="8.0.1" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.11.1" />
<PackageReference Include="MSTest.TestAdapter" Version="3.6.1" />
<PackageReference Include="MSTest.TestFramework" Version="3.6.1" />
</ItemGroup>
<ItemGroup>

View File

@ -4,13 +4,32 @@ using Mango.Database.DataLayers.Users;
using Mango.Database.DbContexts.Users;
using Mango.Entities.Addresses;
using Mango.Entities.Companies;
using Mango.Entities.Messages.Emails;
using Mango.Entities.Profiles;
using Mango.Entities.Users;
using Microsoft.ApplicationInsights;
namespace Mango.Database.Test;
[TestClass]
public class UserDalTests : AcUserDalTestBase<UserDal, UserDbContext, User, Profile, UserToken, Company, UserToCompany, Address>
public class UserDalTests : AcUserDalTestBase<UserDal, UserDbContext, User, Profile, UserToken, Company, UserToCompany, Address, EmailMessage>
{
[DataTestMethod]
[DataRow("test@tiam.hu")]
public override void AcBase_GetUserByEmail_ReturnsUser_WhenUserExists(string email)
=> base.AcBase_GetUserByEmail_ReturnsUser_WhenUserExists(email);
[DataTestMethod]
[DataRow("540271F6-C604-4C16-8160-D5A7CAFEDF00")]
public override void AcBase_GetUserById_ReturnsUser_WhenUserExists(string userIdString)
=> base.AcBase_GetUserById_ReturnsUser_WhenUserExists(userIdString);
[DataTestMethod]
[DataRow("540271F6-C604-4C16-8160-D5A7CAFEDF00")]
public override void AcBase_GetUserModelDtoDetailById_ReturnsUser_WhenUserExists(string userIdString)
=> base.AcBase_GetUserModelDtoDetailById_ReturnsUser_WhenUserExists(userIdString);
[DataTestMethod]
[DataRow(["e31044d7-1771-4a32-8dd9-6f9853ed53c6", "0a831191-70a3-4504-9ec4-c5902affaba7", "8eed080c-d2ce-4cc3-bcfe-2268c220bba7", "addUser_test9432@tiam.hu"])]
public override async Task AcBase_AddUserTest(string[] userIdProfileIdAddressIdEmailStrings)
=> await base.AcBase_AddUserTest(userIdProfileIdAddressIdEmailStrings);
}

View File

@ -1,6 +1,7 @@
{
"ConnectionStrings": {
"DeveloperDbConnection": "Data Source=185.51.190.197;Initial Catalog=TIAM_DEV;Trusted_Connection=False;Connect Timeout=200;User ID=Anata_Development_Team;Password=v6f_?xNfg9N1;MultipleActiveResultSets=true"
"DeveloperDbConnection":
"Data Source=185.51.190.197;Initial Catalog=TIAM_DEV;Trusted_Connection=false;Encrypt=false;TrustServerCertificate=True;Connect Timeout=200;User ID=Anata_Development_Team;Password=v6f_?xNfg9N1;MultipleActiveResultSets=true"
},
"Logging": {
"LogLevel": {
@ -17,6 +18,24 @@
"SendGrid": {
//"Key": "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"
"Key": "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"
}
},
"AyCode": {
"ProjectId": "684f34d1-163a-4077-918f-a9d9df5ce789",
"Logger": {
"AppType": "Server",
"LogLevel": "Detail",
"LogWriters": [
{
"LogLevel": "Detail",
"LogWriterType": "Mango.Core.Loggers.ConsoleLogWriter, Mango.Core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
},
{
"LogLevel": "Detail",
"LogWriterType": "Mango.Database.DbLogItemWriter, Mango.Database, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
}
]
}
}
}

View File

@ -1,4 +1,5 @@
using AyCode.Database.DataLayers;
using AyCode.Database.DbContexts;
using Mango.Database.DbContexts;
namespace Mango.Database.DataLayers;
@ -6,5 +7,5 @@ namespace Mango.Database.DataLayers;
public interface IDalBase : IAcDalBase
{ }
public interface IDalBase<TDbContext> : IAcDalBase<TDbContext>, IAcDalBase where TDbContext : DbContextBase
public interface IDalBase<TDbContext> : IAcDalBase<TDbContext>, IAcDalBase where TDbContext : AcDbContextBase
{ }

View File

@ -2,13 +2,14 @@
using Mango.Database.DbContexts.Users;
using Mango.Entities.Addresses;
using Mango.Entities.Companies;
using Mango.Entities.Messages.Emails;
using Mango.Entities.Profiles;
using Mango.Entities.Users;
using Microsoft.EntityFrameworkCore;
namespace Mango.Database.DataLayers.Users
{
public class UserDal : AcUserDalBase<UserDbContext, User, Profile, UserToken, Company, UserToCompany, Address>, IDalBase<UserDbContext>
public class UserDal : AcUserDalBase<UserDbContext, User, Profile, UserToken, Company, UserToCompany, Address, EmailMessage>, IDalBase<UserDbContext>
{
public UserDal() : base()
{

View File

@ -27,7 +27,7 @@ public class DbContextBase : AcDbContextBase
//optionsBuilder.UseSqlServer(Configuration.GetConnectionString("DeveloperDbConnection"));
//var connString = string.Empty;//"Data Source=185.51.190.197;Initial Catalog=TIAM_DEV;Trusted_Connection=false;Encrypt=false;TrustServerCertificate=True;Connect Timeout=200;User ID=Anata_Development_Team;Password=v6f_?xNfg9N1;MultipleActiveResultSets=true";
var connString = "Data Source=185.51.190.197;Initial Catalog=TIAM_DEV;Trusted_Connection=false;Encrypt=false;TrustServerCertificate=True;Connect Timeout=200;User ID=Anata_Development_Team;Password=v6f_?xNfg9N1;MultipleActiveResultSets=true";
optionsBuilder.UseSqlServer(connString);
//var connString = "Data Source=185.51.190.197;Initial Catalog=TIAM_DEV;Trusted_Connection=false;Encrypt=false;TrustServerCertificate=True;Connect Timeout=200;User ID=Anata_Development_Team;Password=v6f_?xNfg9N1;MultipleActiveResultSets=true";
//optionsBuilder.UseSqlServer(connString);
}
}

View File

@ -4,10 +4,11 @@ using Mango.Database.DbSets.Emails;
using Mango.Database.DbSets.Users;
using Mango.Entities.Addresses;
using Mango.Entities.Companies;
using Mango.Entities.Messages.Emails;
using Mango.Entities.Profiles;
using Mango.Entities.Users;
namespace Mango.Database.DbContexts.Users;
public interface IUserDbContext : IAcUserDbContextBase<User, Profile, UserToken, Company, UserToCompany, Address>, IUserDbSet, IAddressDbSet, IEmailMessageDbSet
public interface IUserDbContext : IAcUserDbContextBase<User, Profile, UserToken, Company, UserToCompany, Address, EmailMessage>, IUserDbSet, IAddressDbSet, IEmailMessageDbSet
{ }

View File

@ -1,4 +1,6 @@
using Mango.Entities.Addresses;
using AyCode.Database.DbContexts.Users;
using Mango.Entities.Addresses;
using Mango.Entities.Companies;
using Mango.Entities.Messages.Emails;
using Mango.Entities.Profiles;
using Mango.Entities.Users;
@ -6,15 +8,15 @@ using Microsoft.EntityFrameworkCore;
namespace Mango.Database.DbContexts.Users
{
public class UserDbContext : DbContextBase, IUserDbContext
public class UserDbContext : AcUserDbContextBase<User, Profile, UserToken, Company, UserToCompany, Address, EmailMessage>, IUserDbContext
{
public DbSet<User> Users { get; set; }
public DbSet<UserToken> UserTokens { get; set; }
//public DbSet<User> Users { get; set; }
//public DbSet<UserToken> UserTokens { get; set; }
public DbSet<Profile> Profiles { get; set; }
public DbSet<Address> Addresses { get; set; }
//public DbSet<Profile> Profiles { get; set; }
//public DbSet<Address> Addresses { get; set; }
public DbSet<EmailMessage> EmailMessages { get; set; }
//public DbSet<EmailMessage> EmailMessages { get; set; }
public UserDbContext() //: this(string.Empty)
{

View File

@ -0,0 +1,26 @@
using AyCode.Core.Enums;
using AyCode.Core.Loggers;
using AyCode.Database;
using AyCode.Database.DbContexts.Loggers;
using AyCode.Entities.LogItems;
using AyCode.Entities.Server.LogItems;
namespace Mango.Database;
public class LoggerDbContextBase : AcLoggerDbContextBase<AcLogItem>
{
}
public class DbLogItemWriter : AcDbLogItemWriter<LoggerDbContextBase, AcLogItem>
{
public DbLogItemWriter() : this(null)
{ }
public DbLogItemWriter(string? categoryName = null) : base(categoryName)
{ }
public DbLogItemWriter(AppType appType, LogLevel logLevel, string? categoryName = null) : base(appType, logLevel, categoryName)
{
}
}

View File

@ -6,6 +6,6 @@ using Mango.Entities.Users;
namespace Mango.Database.DbSets.Users;
public interface IUserDbSet : IAcUserDbSet<User, Profile, Company, UserToCompany, Address>
public interface IUserDbSet : IAcUserDbSetBase<User, Profile, Company, UserToCompany, Address>
{
}

View File

@ -53,9 +53,11 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="8.0.4" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Proxies" Version="8.0.4" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="8.0.4" />
<PackageReference Include="DevExpress.Data" Version="24.1.3" />
<PackageReference Include="MessagePack.Annotations" Version="2.5.172" />
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="8.0.10" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Proxies" Version="8.0.10" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="8.0.10" />
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
</ItemGroup>

View File

@ -1,12 +1,14 @@
using System.ComponentModel.DataAnnotations.Schema;
using AyCode.Entities.ServiceProviders;
using Mango.Entities.Addresses;
using Mango.Entities.Profiles;
using Mango.Entities.Users;
using Mango.Interfaces.Companies;
namespace Mango.Entities.Companies;
[Table("ServiceProviders")]
public class Company : AcServiceProvider<User, UserToCompany>, ICompany<User, UserToCompany>, ICompanyBase
public class Company : AcCompany<User, UserToCompany, Profile, Address>, ICompany<User, UserToCompany, Profile, Address>, ICompanyBase
{
public Company()
{

View File

@ -1,10 +1,12 @@
using AyCode.Entities.Users;
using Mango.Entities.Companies;
using Mango.Interfaces.Users;
using System.ComponentModel.DataAnnotations.Schema;
namespace Mango.Entities.Users;
public class UserToCompany : AcUserToServiceProvider<User, Company>, IUserToCompany<User, Company>
[Table("UserToServiceProvider")]
public class UserToCompany : AcUserToCompany<User, Company>, IUserToCompany<User, Company>
{
}

View File

@ -1,11 +1,17 @@
using AyCode.Interfaces.ServiceProviders;
using AyCode.Interfaces.Users;
using System;
using AyCode.Interfaces.Addresses;
using AyCode.Interfaces.Profiles;
using AyCode.Interfaces.Profiles.Dtos;
using Mango.Interfaces.Users;
using Mango.Interfaces.Profiles;
namespace Mango.Interfaces.Companies;
public interface ICompany<TUser, TUserToCompany> : IAcServiceProvider<TUser, TUserToCompany>
public interface ICompany<TUser, TUserToCompany, TProfile, TAddress> : IAcCompany<TUser, TUserToCompany, TProfile, TAddress>
where TUser : class, IUserBase
where TUserToCompany : class, IUserToCompanyBase
where TProfile : class, IAcProfile<TAddress>
where TAddress : class, IAcAddress
{}

View File

@ -2,6 +2,6 @@
namespace Mango.Interfaces.Companies;
public interface ICompanyBase : IAcServiceProviderBase
public interface ICompanyBase : IAcCompanyBase
{
}

View File

@ -5,10 +5,10 @@ using Mango.Interfaces.Profiles;
namespace Mango.Interfaces.Users;
public interface IUser<TProfile, TCompany, TUserToCompany, TProfileAddress> : IAcUser<TProfile, TCompany, TUserToCompany, TProfileAddress>, IUserDto<TProfile, TCompany, TUserToCompany, TProfileAddress>, IUserBase
where TProfile : class, IProfile<TProfileAddress>
public interface IUser<TProfile, TCompany, TUserToCompany, TAddress> : IAcUser<TProfile, TCompany, TUserToCompany, TAddress>, IUserDto<TProfile, TCompany, TUserToCompany>, IUserBase
where TProfile : class, IProfile<TAddress>
where TCompany : class, ICompanyBase
where TUserToCompany : class, IUserToCompanyBase
where TProfileAddress : class, IAddress
where TAddress : class, IAddress
{
}

View File

@ -1,13 +1,13 @@
using AyCode.Interfaces.Users.Dtos;
using AyCode.Interfaces.Profiles.Dtos;
using AyCode.Interfaces.Users.Dtos;
using Mango.Interfaces.Addresses;
using Mango.Interfaces.Companies;
using Mango.Interfaces.Profiles;
namespace Mango.Interfaces.Users;
public interface IUserDto<TProfile, TCompany, TUserToCompany, TProfileAddress> : IAcUserDtoBase<TProfile, TCompany, TUserToCompany, TProfileAddress>
where TProfile : class, IProfile<TProfileAddress>
public interface IUserDto<TProfile, TCompany, TUserToCompany> : IAcUserDtoBase<TProfile, TCompany, TUserToCompany>
where TProfile : class, IAcProfileDtoBase
where TCompany : class, ICompanyBase
where TUserToCompany : class, IUserToCompanyBase
where TProfileAddress : class, IAddress
{ }

View File

@ -7,5 +7,5 @@ public interface IUserToCompany<TUser, TCompany> : IUserToCompanyBase
where TCompany : class, ICompanyBase
{
public TUser User { get; set; }
public TCompany ServiceProvider { get; set; }
public TCompany Company { get; set; }
}

View File

@ -2,5 +2,5 @@
namespace Mango.Interfaces.Users;
public interface IUserToCompanyBase : IAcUserToServiceProviderBase
public interface IUserToCompanyBase : IAcUserToCompanyBase
{}

View File

@ -0,0 +1,10 @@
using AyCode.Interfaces.Server.Logins;
using Mango.Entities.Addresses;
using Mango.Entities.Companies;
using Mango.Entities.Profiles;
using Mango.Entities.Users;
namespace Mango.Models.Logins;
public interface ILoggedInModel : IAcLoggedInModelBase<User, UserToken, Profile, Company, UserToCompany, Address>
{}

View File

@ -0,0 +1,11 @@
using AyCode.Models.Server.Logins;
using Mango.Entities.Addresses;
using Mango.Entities.Companies;
using Mango.Entities.Profiles;
using Mango.Entities.Users;
namespace Mango.Models.Logins;
public class LoggedInModel : AcLoggedInModelServer<User, UserToken, Profile, Company, UserToCompany, Address>, ILoggedInModel
{
}

View File

@ -6,4 +6,41 @@
<Nullable>enable</Nullable>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\Mango.Core.Server\Mango.Core.Server.csproj" />
<ProjectReference Include="..\Mango.Core\Mango.Core.csproj" />
<ProjectReference Include="..\Mango.Entities.Server\Mango.Entities.Server.csproj" />
<ProjectReference Include="..\Mango.Interfaces\Mango.Interfaces.csproj" />
</ItemGroup>
<ItemGroup>
<Reference Include="AyCode.Core">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Core.dll</HintPath>
</Reference>
<Reference Include="AyCode.Core.Server">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Core.Server.dll</HintPath>
</Reference>
<Reference Include="AyCode.Database">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Database.dll</HintPath>
</Reference>
<Reference Include="AyCode.Entities">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Entities.dll</HintPath>
</Reference>
<Reference Include="AyCode.Entities.Server">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Entities.Server.dll</HintPath>
</Reference>
<Reference Include="AyCode.Interfaces">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Interfaces.dll</HintPath>
</Reference>
<Reference Include="AyCode.Interfaces.Server">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Interfaces.Server.dll</HintPath>
</Reference>
<Reference Include="AyCode.Models">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Models.dll</HintPath>
</Reference>
<Reference Include="AyCode.Models.Server">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Models.Server.dll</HintPath>
</Reference>
</ItemGroup>
</Project>

View File

@ -0,0 +1,63 @@
using AyCode.Core.Loggers;
using AyCode.Core.Server.Loggers;
using AyCode.Services.Server.Tests.LoginServices;
using Mango.Core.Loggers;
using Mango.Database;
using Mango.Database.DataLayers.Users;
using Mango.Database.DbContexts.Users;
using Mango.Entities.Addresses;
using Mango.Entities.Companies;
using Mango.Entities.Messages.Emails;
using Mango.Entities.Profiles;
using Mango.Entities.Users;
using Mango.Models.Logins;
using Mango.Services.Server.Logins;
namespace Mango.Services.Server.Tests.LoginServices
{
[TestClass]
public class LoginServiceServerTests : AcLoginServiceServerTestBase<UserDal, UserDbContext, LoginService, LoggedInModel, User, Profile, UserToken, Company, UserToCompany, Address, EmailMessage>
{
private readonly Logger _logger = new(nameof(LoginServiceServerTests));
private const string RegisterEmail = "qwerty@xxxxx.com";
private const string RegisterPassword = "elem'r";
private const string RegisterUserIdString = "1f7e0591-330b-463b-81ad-d01f2e65e23e";
private const string LoginId = "1DED6045-1278-4B92-A10A-3EB9426E41A3";
private const string LoginEmail = "asdfsdf@ggggg.hu";
private const string LoginPassword = "alad'r";
[DataTestMethod]
[DataRow([LoginEmail, LoginPassword])]
public override void AcBase_LoginUser_ReturnsUser_WhenUserExist(string[] emailPasswordStrings)
=> base.AcBase_LoginUser_ReturnsUser_WhenUserExist(emailPasswordStrings);
[DataTestMethod]
[DataRow([RegisterUserIdString, RegisterEmail, RegisterPassword])]
public override Task AcBase_RegisterUser_ReturnsUser_WhenUserExist(string[] userIdEmailPasswordStrings)
{
//GlobalLogger.Debug("Test started0...");
//for (int i = 0; i < 1000; i++)
//{
// _logger.Debug(i + ". Test started...");
// _logger.Debug(i + ". Test started2...");
// GlobalLogger.Debug(i + ". Test started3...");
//}
//GlobalLogger.Debug("Test started4...");
//GlobalLogger.Writer<ConsoleLogWriter>().Suggest("sdfdfa", nameof(LoginServiceServerTests));
//Assert.IsTrue(true);
//return Task.CompletedTask;
return base.AcBase_RegisterUser_ReturnsUser_WhenUserExist(userIdEmailPasswordStrings);
}
[DataTestMethod]
[DataRow([LoginId, LoginPassword, "asdfgh123456"])]//, "$bcrypt$v=1$salt=JwptfNI6bXd7qKOJDChlvQ==$hash=j4CEfDeibKFWFGUOzxGICyHm3/hA+71j7qoyPDUk1qY="])]
public override void AcBase_ChangePassword_ReturnUser_WhenUserLoggedInWithNewPassword(string[] userIdOriginalPasswordNewPasswordStrings)
=> base.AcBase_ChangePassword_ReturnUser_WhenUserLoggedInWithNewPassword(userIdOriginalPasswordNewPasswordStrings);
}
}

View File

@ -0,0 +1,102 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<IsPackable>false</IsPackable>
<IsTestProject>true</IsTestProject>
</PropertyGroup>
<ItemGroup>
<None Remove="appsettings.json" />
</ItemGroup>
<ItemGroup>
<Content Include="appsettings.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
<ItemGroup>
<PackageReference Include="coverlet.collector" Version="6.0.2">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="Microsoft.AspNetCore.Cryptography.KeyDerivation" Version="8.0.10" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.11.1" />
<PackageReference Include="MSTest.TestAdapter" Version="3.6.1" />
<PackageReference Include="MSTest.TestFramework" Version="3.6.1" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Mango.Core.Server\Mango.Core.Server.csproj" />
<ProjectReference Include="..\Mango.Core\Mango.Core.csproj" />
<ProjectReference Include="..\Mango.Database.Test\Mango.Database.Test.csproj" />
<ProjectReference Include="..\Mango.Database\Mango.Database.csproj" />
<ProjectReference Include="..\Mango.Entities.Server\Mango.Entities.Server.csproj" />
<ProjectReference Include="..\Mango.Entities\Mango.Entities.csproj" />
<ProjectReference Include="..\Mango.Interfaces.Server\Mango.Interfaces.Server.csproj" />
<ProjectReference Include="..\Mango.Interfaces\Mango.Interfaces.csproj" />
<ProjectReference Include="..\Mango.Models\Mango.Models.csproj" />
<ProjectReference Include="..\Mango.Services.Server\Mango.Services.Server.csproj" />
<ProjectReference Include="..\Mango.Services\Mango.Services.csproj" />
</ItemGroup>
<ItemGroup>
<Reference Include="AyCode.Core">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Core.dll</HintPath>
</Reference>
<Reference Include="AyCode.Core.Server">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Core.Server.dll</HintPath>
</Reference>
<Reference Include="AyCode.Core.Tests">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server.Tests\bin\Debug\net8.0\AyCode.Core.Tests.dll</HintPath>
</Reference>
<Reference Include="AyCode.Database">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Database.dll</HintPath>
</Reference>
<Reference Include="AyCode.Database.Tests">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server.Tests\bin\Debug\net8.0\AyCode.Database.Tests.dll</HintPath>
</Reference>
<Reference Include="AyCode.Entities">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Entities.dll</HintPath>
</Reference>
<Reference Include="AyCode.Entities.Server">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Entities.Server.dll</HintPath>
</Reference>
<Reference Include="AyCode.Interfaces">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Interfaces.dll</HintPath>
</Reference>
<Reference Include="AyCode.Interfaces.Server">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Interfaces.Server.dll</HintPath>
</Reference>
<Reference Include="AyCode.Models">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Models.dll</HintPath>
</Reference>
<Reference Include="AyCode.Models.Server">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Models.Server.dll</HintPath>
</Reference>
<Reference Include="AyCode.Services">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Services.dll</HintPath>
</Reference>
<Reference Include="AyCode.Services.Server">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Services.Server.dll</HintPath>
</Reference>
<Reference Include="AyCode.Services.Server.Tests">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server.Tests\bin\Debug\net8.0\AyCode.Services.Server.Tests.dll</HintPath>
</Reference>
<Reference Include="AyCode.Utils">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Utils.dll</HintPath>
</Reference>
<Reference Include="AyCode.Utils.Server">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server.Tests\bin\Debug\net8.0\AyCode.Utils.Server.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
<Using Include="Microsoft.VisualStudio.TestTools.UnitTesting" />
</ItemGroup>
</Project>

View File

@ -0,0 +1,39 @@
{
"ConnectionStrings": {
"DeveloperDbConnection": "Data Source=185.51.190.197;Initial Catalog=TIAM_DEV;Trusted_Connection=false;Encrypt=false;TrustServerCertificate=True;Connect Timeout=200;User ID=Anata_Development_Team;Password=v6f_?xNfg9N1;MultipleActiveResultSets=true"
},
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
},
"AllowedHosts": "*",
"JWT": {
"Key": "Cee4400-rDMFkVvHPufyLDSzbfu2grgRhpepos299IhTLOXsljkcpt3yUR4RRjPQ",
"Issuer": "http://localhost:5000",
"Audience": "http://localhost:5000"
},
"SendGrid": {
//"Key": "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"
"Key": "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"
},
"AyCode": {
"ProjectId": "684f34d1-163a-4077-918f-a9d9df5ce789",
"Logger": {
"AppType": "Server",
"LogLevel": "Detail",
"LogWriters": [
{
"LogLevel": "Detail",
"LogWriterType": "Mango.Core.Loggers.ConsoleLogWriter, Mango.Core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
},
{
"LogLevel": "Detail",
"LogWriterType": "Mango.Database.DbLogItemWriter, Mango.Database, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
}
]
}
}
}

View File

@ -0,0 +1,13 @@
using AyCode.Interfaces.Server.Logins;
using Mango.Entities.Addresses;
using Mango.Entities.Companies;
using Mango.Entities.Profiles;
using Mango.Entities.Users;
using Mango.Models.Logins;
namespace Mango.Services.Server.Logins;
public interface ILoginService : IAcLoginServiceServer<LoggedInModel, User, UserToken, Profile, Company, UserToCompany, Address>
{
}

View File

@ -0,0 +1,32 @@
using AyCode.Core.Consts;
using AyCode.Services.Server.Logins;
using Mango.Database.DataLayers.Users;
using Mango.Database.DbContexts.Users;
using Mango.Entities.Addresses;
using Mango.Entities.Companies;
using Mango.Entities.Messages.Emails;
using Mango.Entities.Profiles;
using Mango.Entities.Users;
using Mango.Models.Logins;
using Microsoft.Extensions.Configuration;
namespace Mango.Services.Server.Logins;
public class LoginService(UserDal userDal, IConfiguration configuration) : AcLoginServiceServer<LoggedInModel, UserDal, UserDbContext, User, UserToken, Profile, Company, UserToCompany, Address, EmailMessage>(userDal, configuration), ILoginService
{
public override LoggedInModel Login(string? email, string? password)
{
return base.Login(email, password);
}
public override bool Logout()
{
return base.Logout();
}
public override Task<AcErrorCode> RegistrationAsync(string email, string password, string? phoneNumber = null, Guid? referralId = null)
{
return base.RegistrationAsync(email, password, phoneNumber, referralId);
}
}

View File

@ -0,0 +1,68 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
<ItemGroup>
<Folder Include="Messages\Emails\" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Cryptography.KeyDerivation" Version="8.0.10" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Mango.Core.Server\Mango.Core.Server.csproj" />
<ProjectReference Include="..\Mango.Core\Mango.Core.csproj" />
<ProjectReference Include="..\Mango.Database\Mango.Database.csproj" />
<ProjectReference Include="..\Mango.Entities.Server\Mango.Entities.Server.csproj" />
<ProjectReference Include="..\Mango.Entities\Mango.Entities.csproj" />
<ProjectReference Include="..\Mango.Interfaces.Server\Mango.Interfaces.Server.csproj" />
<ProjectReference Include="..\Mango.Interfaces\Mango.Interfaces.csproj" />
<ProjectReference Include="..\Mango.Models\Mango.Models.csproj" />
<ProjectReference Include="..\Mango.Services\Mango.Services.csproj" />
</ItemGroup>
<ItemGroup>
<Reference Include="AyCode.Core">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Core.dll</HintPath>
</Reference>
<Reference Include="AyCode.Core.Server">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Core.Server.dll</HintPath>
</Reference>
<Reference Include="AyCode.Database">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Database.dll</HintPath>
</Reference>
<Reference Include="AyCode.Entities">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Entities.dll</HintPath>
</Reference>
<Reference Include="AyCode.Entities.Server">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Entities.Server.dll</HintPath>
</Reference>
<Reference Include="AyCode.Interfaces">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Interfaces.dll</HintPath>
</Reference>
<Reference Include="AyCode.Interfaces.Server">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Interfaces.Server.dll</HintPath>
</Reference>
<Reference Include="AyCode.Models">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Models.dll</HintPath>
</Reference>
<Reference Include="AyCode.Models.Server">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Models.Server.dll</HintPath>
</Reference>
<Reference Include="AyCode.Services">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Services.dll</HintPath>
</Reference>
<Reference Include="AyCode.Services.Server">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Services.Server.dll</HintPath>
</Reference>
<Reference Include="AyCode.Utils">
<HintPath>..\..\..\..\Aycode\Source\AyCode.Core\AyCode.Services.Server\bin\Debug\net8.0\AyCode.Utils.dll</HintPath>
</Reference>
</ItemGroup>
</Project>

View File

@ -0,0 +1,9 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
</Project>

View File

@ -13,23 +13,29 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MissNationBlazorWASM.Shared
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MissNationSharedUI", "MissNationSharedUI\MissNationSharedUI.csproj", "{B7790887-D399-4AA6-B3F4-2C332D83C637}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mango.Core", "Mango.Core\Mango.Core.csproj", "{69E5377B-5938-4C08-AB7F-424EB353578A}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Mango.Core", "Mango.Core\Mango.Core.csproj", "{69E5377B-5938-4C08-AB7F-424EB353578A}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mango.Database", "Mango.Database\Mango.Database.csproj", "{7C58DF80-C636-4693-8AC2-6D92B503DCA5}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Mango.Database", "Mango.Database\Mango.Database.csproj", "{7C58DF80-C636-4693-8AC2-6D92B503DCA5}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mango.Entities", "Mango.Entities\Mango.Entities.csproj", "{17FE11C8-0821-4357-9BE0-6D96E948BECB}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Mango.Entities", "Mango.Entities\Mango.Entities.csproj", "{17FE11C8-0821-4357-9BE0-6D96E948BECB}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mango.Entities.Server", "Mango.Entities.Server\Mango.Entities.Server.csproj", "{51FFD293-3C1A-43D6-A272-2850AFC3F1D6}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Mango.Entities.Server", "Mango.Entities.Server\Mango.Entities.Server.csproj", "{51FFD293-3C1A-43D6-A272-2850AFC3F1D6}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mango.Interfaces", "Mango.Interfaces\Mango.Interfaces.csproj", "{B9CAB99F-AF7D-4377-ACD1-97C5A0D703EA}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Mango.Interfaces", "Mango.Interfaces\Mango.Interfaces.csproj", "{B9CAB99F-AF7D-4377-ACD1-97C5A0D703EA}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mango.Interfaces.Server", "Mango.Interfaces.Server\Mango.Interfaces.Server.csproj", "{E966ABA3-C927-4BC0-96A2-9CB9BA60DE6D}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Mango.Interfaces.Server", "Mango.Interfaces.Server\Mango.Interfaces.Server.csproj", "{E966ABA3-C927-4BC0-96A2-9CB9BA60DE6D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mango.Models", "Mango.Models\Mango.Models.csproj", "{AC74712A-880D-4633-86A9-F02AA4A62E90}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Mango.Models", "Mango.Models\Mango.Models.csproj", "{AC74712A-880D-4633-86A9-F02AA4A62E90}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mango.Database.Test", "Mango.Database.Test\Mango.Database.Test.csproj", "{F12EB241-1360-4CC7-9078-EDD487F4A9FC}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Mango.Database.Test", "Mango.Database.Test\Mango.Database.Test.csproj", "{F12EB241-1360-4CC7-9078-EDD487F4A9FC}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mango.Core.Server", "Mango.Core.Server\Mango.Core.Server.csproj", "{90AE435C-D257-4839-8AC5-F8D012A4F92C}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Mango.Core.Server", "Mango.Core.Server\Mango.Core.Server.csproj", "{90AE435C-D257-4839-8AC5-F8D012A4F92C}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mango.Services", "Mango.Services\Mango.Services.csproj", "{561010E9-A898-4EAE-98AC-23D7D988A39A}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mango.Services.Server", "Mango.Services.Server\Mango.Services.Server.csproj", "{2EB5F3A6-2A08-44AF-997E-E8F3411071D5}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mango.Services.Server.Tests", "Mango.Services.Server.Tests\Mango.Services.Server.Tests.csproj", "{9ADAA164-BBE3-4919-9881-98980D5C3CCE}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@ -95,6 +101,18 @@ Global
{90AE435C-D257-4839-8AC5-F8D012A4F92C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{90AE435C-D257-4839-8AC5-F8D012A4F92C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{90AE435C-D257-4839-8AC5-F8D012A4F92C}.Release|Any CPU.Build.0 = Release|Any CPU
{561010E9-A898-4EAE-98AC-23D7D988A39A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{561010E9-A898-4EAE-98AC-23D7D988A39A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{561010E9-A898-4EAE-98AC-23D7D988A39A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{561010E9-A898-4EAE-98AC-23D7D988A39A}.Release|Any CPU.Build.0 = Release|Any CPU
{2EB5F3A6-2A08-44AF-997E-E8F3411071D5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{2EB5F3A6-2A08-44AF-997E-E8F3411071D5}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2EB5F3A6-2A08-44AF-997E-E8F3411071D5}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2EB5F3A6-2A08-44AF-997E-E8F3411071D5}.Release|Any CPU.Build.0 = Release|Any CPU
{9ADAA164-BBE3-4919-9881-98980D5C3CCE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{9ADAA164-BBE3-4919-9881-98980D5C3CCE}.Debug|Any CPU.Build.0 = Debug|Any CPU
{9ADAA164-BBE3-4919-9881-98980D5C3CCE}.Release|Any CPU.ActiveCfg = Release|Any CPU
{9ADAA164-BBE3-4919-9881-98980D5C3CCE}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

View File

@ -58,10 +58,10 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.Maui.Controls" Version="8.0.21" />
<PackageReference Include="Microsoft.Maui.Controls.Compatibility" Version="8.0.21" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebView.Maui" Version="8.0.21" />
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="8.0.0" />
<PackageReference Include="Microsoft.Maui.Controls" Version="8.0.91" />
<PackageReference Include="Microsoft.Maui.Controls.Compatibility" Version="8.0.91" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebView.Maui" Version="8.0.91" />
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="8.0.1" />
</ItemGroup>
<ItemGroup>

View File

@ -7,9 +7,9 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly" Version="8.0.4" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.DevServer" Version="8.0.4" PrivateAssets="all" />
<PackageReference Include="Microsoft.Extensions.Http" Version="8.0.0" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly" Version="8.0.10" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.DevServer" Version="8.0.10" PrivateAssets="all" />
<PackageReference Include="Microsoft.Extensions.Http" Version="8.0.1" />
</ItemGroup>
<ItemGroup>

View File

@ -7,7 +7,7 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.Server" Version="8.0.4" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.Server" Version="8.0.10" />
</ItemGroup>
<ItemGroup>

View File

@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
</PropertyGroup>

View File

@ -12,8 +12,8 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Components.Web" Version="8.0.4" />
<PackageReference Include="Microsoft.Extensions.Localization" Version="8.0.4" />
<PackageReference Include="Microsoft.AspNetCore.Components.Web" Version="8.0.10" />
<PackageReference Include="Microsoft.Extensions.Localization" Version="8.0.10" />
</ItemGroup>
<ItemGroup>