diff --git a/WotBlitzStatisticsPro.Blazor/Generated/DependencyInjection/WotBlitzStatisticsProClientServiceCollectionExtensions.WotBlitzStatisticsProClient.StrawberryShake.cs b/WotBlitzStatisticsPro.Blazor/Generated/DependencyInjection/WotBlitzStatisticsProClientServiceCollectionExtensions.WotBlitzStatisticsProClient.StrawberryShake.cs index 6ba77a2..ec1e896 100644 --- a/WotBlitzStatisticsPro.Blazor/Generated/DependencyInjection/WotBlitzStatisticsProClientServiceCollectionExtensions.WotBlitzStatisticsProClient.StrawberryShake.cs +++ b/WotBlitzStatisticsPro.Blazor/Generated/DependencyInjection/WotBlitzStatisticsProClientServiceCollectionExtensions.WotBlitzStatisticsProClient.StrawberryShake.cs @@ -15,14 +15,14 @@ namespace Microsoft.Extensions.DependencyInjection return new ClientServiceProvider(global::Microsoft.Extensions.DependencyInjection.ServiceCollectionContainerBuilderExtensions.BuildServiceProvider(serviceCollection)); }); global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => new global::WotBlitzStatisticsPro.Blazor.GraphQl.State.WotBlitzStatisticsProClientStoreAccessor(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)))); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp))); global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp))); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp))); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp))); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp))); global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp))); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp))); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp))); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp))); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp))); global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp))); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp))); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp))); global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp))); global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp))); return new global::StrawberryShake.ClientBuilder("WotBlitzStatisticsProClient", services, serviceCollection); @@ -57,13 +57,6 @@ namespace Microsoft.Extensions.DependencyInjection global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services); global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services); global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => new global::StrawberryShake.Serialization.SerializerResolver(global::System.Linq.Enumerable.Concat(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(parentServices), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(sp)))); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.FindClansResultFactory>(services); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(sp)); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.FindClansBuilder>(services); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton>(services, sp => new global::StrawberryShake.OperationExecutor(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp), () => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(sp), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp), strategy)); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)); global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.FindPlayersResultFactory>(services); global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(sp)); global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)); @@ -71,27 +64,6 @@ namespace Microsoft.Extensions.DependencyInjection global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton>(services, sp => new global::StrawberryShake.OperationExecutor(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp), () => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(sp), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp), strategy)); global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services); global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.WargamingAuthenticationQueryResultFactory>(services); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(sp)); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.WargamingAuthenticationQueryBuilder>(services); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton>(services, sp => new global::StrawberryShake.OperationExecutor(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp), () => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(sp), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp), strategy)); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.WargamingOpenIdResultFactory>(services); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(sp)); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.WargamingOpenIdBuilder>(services); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton>(services, sp => new global::StrawberryShake.OperationExecutor(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp), () => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(sp), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp), strategy)); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.PlayerResultFactory>(services); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(sp)); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.PlayerBuilder>(services); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton>(services, sp => new global::StrawberryShake.OperationExecutor(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp), () => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(sp), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp), strategy)); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)); global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.WargamingOpenIdAuthenticationResultFactory>(services); global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(sp)); global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)); @@ -99,13 +71,27 @@ namespace Microsoft.Extensions.DependencyInjection global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton>(services, sp => new global::StrawberryShake.OperationExecutor(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp), () => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(sp), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp), strategy)); global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services); global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.WargamingPlayersResultFactory>(services); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(sp)); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.WargamingPlayersBuilder>(services); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton>(services, sp => new global::StrawberryShake.OperationExecutor(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp), () => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(sp), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp), strategy)); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services); - global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.WargamingOpenIdResultFactory>(services); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(sp)); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.WargamingOpenIdBuilder>(services); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton>(services, sp => new global::StrawberryShake.OperationExecutor(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp), () => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(sp), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp), strategy)); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.FindClansResultFactory>(services); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(sp)); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.FindClansBuilder>(services); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton>(services, sp => new global::StrawberryShake.OperationExecutor(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp), () => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(sp), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp), strategy)); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.PlayerResultFactory>(services); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(sp)); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.PlayerBuilder>(services); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton>(services, sp => new global::StrawberryShake.OperationExecutor(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp), () => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(sp), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp), strategy)); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)); global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.UpdatePlayerResultFactory>(services); global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(sp)); global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)); @@ -113,6 +99,20 @@ namespace Microsoft.Extensions.DependencyInjection global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton>(services, sp => new global::StrawberryShake.OperationExecutor(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp), () => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(sp), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp), strategy)); global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services); global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.WargamingPlayersResultFactory>(services); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(sp)); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.WargamingPlayersBuilder>(services); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton>(services, sp => new global::StrawberryShake.OperationExecutor(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp), () => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(sp), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp), strategy)); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.WargamingAuthenticationQueryResultFactory>(services); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(sp)); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.WargamingAuthenticationQueryBuilder>(services); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton>(services, sp => new global::StrawberryShake.OperationExecutor(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp), () => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService>(sp), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp), strategy)); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services); + global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)); global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services); global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services); global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(sp)); diff --git a/WotBlitzStatisticsPro.Blazor/Generated/IWotBlitzStatisticsProClient.WotBlitzStatisticsProClient.StrawberryShake.cs b/WotBlitzStatisticsPro.Blazor/Generated/IWotBlitzStatisticsProClient.WotBlitzStatisticsProClient.StrawberryShake.cs index 100ca10..bc5c15d 100644 --- a/WotBlitzStatisticsPro.Blazor/Generated/IWotBlitzStatisticsProClient.WotBlitzStatisticsProClient.StrawberryShake.cs +++ b/WotBlitzStatisticsPro.Blazor/Generated/IWotBlitzStatisticsProClient.WotBlitzStatisticsProClient.StrawberryShake.cs @@ -9,20 +9,20 @@ namespace WotBlitzStatisticsPro.Blazor.GraphQl [global::System.CodeDom.Compiler.GeneratedCode("StrawberryShake", "11.2.2.0")] public interface IWotBlitzStatisticsProClient { - global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansQuery FindClans { get; } - global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindPlayersQuery FindPlayers { get; } - global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryQuery WargamingAuthenticationQuery { get; } - - global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdMutation WargamingOpenId { get; } - - global::WotBlitzStatisticsPro.Blazor.GraphQl.IPlayerQuery Player { get; } - global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdAuthenticationMutation WargamingOpenIdAuthentication { get; } - global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingPlayersMutation WargamingPlayers { get; } + global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdMutation WargamingOpenId { get; } + + global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansQuery FindClans { get; } + + global::WotBlitzStatisticsPro.Blazor.GraphQl.IPlayerQuery Player { get; } global::WotBlitzStatisticsPro.Blazor.GraphQl.IUpdatePlayerMutation UpdatePlayer { get; } + + global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingPlayersMutation WargamingPlayers { get; } + + global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryQuery WargamingAuthenticationQuery { get; } } } diff --git a/WotBlitzStatisticsPro.Blazor/Generated/Serialization/MarkOfMasterySerializer.WotBlitzStatisticsProClient.StrawberryShake.cs b/WotBlitzStatisticsPro.Blazor/Generated/Serialization/MarkOfMasterySerializer.WotBlitzStatisticsProClient.StrawberryShake.cs index dc1b833..64aed85 100644 --- a/WotBlitzStatisticsPro.Blazor/Generated/Serialization/MarkOfMasterySerializer.WotBlitzStatisticsProClient.StrawberryShake.cs +++ b/WotBlitzStatisticsPro.Blazor/Generated/Serialization/MarkOfMasterySerializer.WotBlitzStatisticsProClient.StrawberryShake.cs @@ -11,18 +11,24 @@ namespace WotBlitzStatisticsPro.Blazor.GraphQl { return serializedValue switch { - "NONE" => MarkOfMastery.None, "RANK3" => MarkOfMastery.Rank3, "RANK2" => MarkOfMastery.Rank2, "RANK1" => MarkOfMastery.Rank1, "MASTER" => MarkOfMastery.Master, _ => throw new global::StrawberryShake.GraphQLClientException()} - - ; + "NONE" => MarkOfMastery.None, + "RANK3" => MarkOfMastery.Rank3, + "RANK2" => MarkOfMastery.Rank2, + "RANK1" => MarkOfMastery.Rank1, + "MASTER" => MarkOfMastery.Master, + _ => throw new global::StrawberryShake.GraphQLClientException()}; } public global::System.Object Format(global::System.Object? runtimeValue) { return runtimeValue switch { - MarkOfMastery.None => "NONE", MarkOfMastery.Rank3 => "RANK3", MarkOfMastery.Rank2 => "RANK2", MarkOfMastery.Rank1 => "RANK1", MarkOfMastery.Master => "MASTER", _ => throw new global::StrawberryShake.GraphQLClientException()} - - ; + MarkOfMastery.None => "NONE", + MarkOfMastery.Rank3 => "RANK3", + MarkOfMastery.Rank2 => "RANK2", + MarkOfMastery.Rank1 => "RANK1", + MarkOfMastery.Master => "MASTER", + _ => throw new global::StrawberryShake.GraphQLClientException()}; } } } diff --git a/WotBlitzStatisticsPro.Blazor/Generated/Serialization/RealmTypeSerializer.WotBlitzStatisticsProClient.StrawberryShake.cs b/WotBlitzStatisticsPro.Blazor/Generated/Serialization/RealmTypeSerializer.WotBlitzStatisticsProClient.StrawberryShake.cs index e052ebb..cde294a 100644 --- a/WotBlitzStatisticsPro.Blazor/Generated/Serialization/RealmTypeSerializer.WotBlitzStatisticsProClient.StrawberryShake.cs +++ b/WotBlitzStatisticsPro.Blazor/Generated/Serialization/RealmTypeSerializer.WotBlitzStatisticsProClient.StrawberryShake.cs @@ -11,18 +11,22 @@ namespace WotBlitzStatisticsPro.Blazor.GraphQl { return serializedValue switch { - "RU" => RealmType.Ru, "EU" => RealmType.Eu, "NA" => RealmType.Na, "ASIA" => RealmType.Asia, _ => throw new global::StrawberryShake.GraphQLClientException()} - - ; + "RU" => RealmType.Ru, + "EU" => RealmType.Eu, + "NA" => RealmType.Na, + "ASIA" => RealmType.Asia, + _ => throw new global::StrawberryShake.GraphQLClientException()}; } public global::System.Object Format(global::System.Object? runtimeValue) { return runtimeValue switch { - RealmType.Ru => "RU", RealmType.Eu => "EU", RealmType.Na => "NA", RealmType.Asia => "ASIA", _ => throw new global::StrawberryShake.GraphQLClientException()} - - ; + RealmType.Ru => "RU", + RealmType.Eu => "EU", + RealmType.Na => "NA", + RealmType.Asia => "ASIA", + _ => throw new global::StrawberryShake.GraphQLClientException()}; } } } diff --git a/WotBlitzStatisticsPro.Blazor/Generated/Serialization/RequestLanguageSerializer.WotBlitzStatisticsProClient.StrawberryShake.cs b/WotBlitzStatisticsPro.Blazor/Generated/Serialization/RequestLanguageSerializer.WotBlitzStatisticsProClient.StrawberryShake.cs index 6fd96d8..6d9fa5e 100644 --- a/WotBlitzStatisticsPro.Blazor/Generated/Serialization/RequestLanguageSerializer.WotBlitzStatisticsProClient.StrawberryShake.cs +++ b/WotBlitzStatisticsPro.Blazor/Generated/Serialization/RequestLanguageSerializer.WotBlitzStatisticsProClient.StrawberryShake.cs @@ -11,18 +11,20 @@ namespace WotBlitzStatisticsPro.Blazor.GraphQl { return serializedValue switch { - "RU" => RequestLanguage.Ru, "EN" => RequestLanguage.En, "DE" => RequestLanguage.De, _ => throw new global::StrawberryShake.GraphQLClientException()} - - ; + "RU" => RequestLanguage.Ru, + "EN" => RequestLanguage.En, + "DE" => RequestLanguage.De, + _ => throw new global::StrawberryShake.GraphQLClientException()}; } public global::System.Object Format(global::System.Object? runtimeValue) { return runtimeValue switch { - RequestLanguage.Ru => "RU", RequestLanguage.En => "EN", RequestLanguage.De => "DE", _ => throw new global::StrawberryShake.GraphQLClientException()} - - ; + RequestLanguage.Ru => "RU", + RequestLanguage.En => "EN", + RequestLanguage.De => "DE", + _ => throw new global::StrawberryShake.GraphQLClientException()}; } } } diff --git a/WotBlitzStatisticsPro.Blazor/Generated/State/WotBlitzStatisticsProClientEntityIdFactory.WotBlitzStatisticsProClient.StrawberryShake.cs b/WotBlitzStatisticsPro.Blazor/Generated/State/WotBlitzStatisticsProClientEntityIdFactory.WotBlitzStatisticsProClient.StrawberryShake.cs index b8e7786..2b0c883 100644 --- a/WotBlitzStatisticsPro.Blazor/Generated/State/WotBlitzStatisticsProClientEntityIdFactory.WotBlitzStatisticsProClient.StrawberryShake.cs +++ b/WotBlitzStatisticsPro.Blazor/Generated/State/WotBlitzStatisticsProClientEntityIdFactory.WotBlitzStatisticsProClient.StrawberryShake.cs @@ -13,18 +13,16 @@ namespace WotBlitzStatisticsPro.Blazor.GraphQl.State global::System.String __typename = obj.GetProperty("__typename").GetString()!; return __typename switch { - "Achievement" => ParseAchievementEntityId(obj, __typename), _ => throw new global::System.NotSupportedException()} - - ; + "Achievement" => ParseAchievementEntityId(obj, __typename), + _ => throw new global::System.NotSupportedException()}; } public global::System.String Format(global::StrawberryShake.EntityId entityId) { return entityId.Name switch { - "Achievement" => FormatAchievementEntityId(entityId), _ => throw new global::System.NotSupportedException()} - - ; + "Achievement" => FormatAchievementEntityId(entityId), + _ => throw new global::System.NotSupportedException()}; } private global::StrawberryShake.EntityId ParseAchievementEntityId(global::System.Text.Json.JsonElement obj, global::System.String type) diff --git a/WotBlitzStatisticsPro.Blazor/Generated/State/WotBlitzStatisticsProClientStoreAccessor.WotBlitzStatisticsProClient.StrawberryShake.cs b/WotBlitzStatisticsPro.Blazor/Generated/State/WotBlitzStatisticsProClientStoreAccessor.WotBlitzStatisticsProClient.StrawberryShake.cs index 54e7917..88f3c81 100644 --- a/WotBlitzStatisticsPro.Blazor/Generated/State/WotBlitzStatisticsProClientStoreAccessor.WotBlitzStatisticsProClient.StrawberryShake.cs +++ b/WotBlitzStatisticsPro.Blazor/Generated/State/WotBlitzStatisticsProClientStoreAccessor.WotBlitzStatisticsProClient.StrawberryShake.cs @@ -6,7 +6,7 @@ namespace WotBlitzStatisticsPro.Blazor.GraphQl.State [global::System.CodeDom.Compiler.GeneratedCode("StrawberryShake", "11.2.2.0")] public partial class WotBlitzStatisticsProClientStoreAccessor : global::StrawberryShake.StoreAccessor { - public WotBlitzStatisticsProClientStoreAccessor(global::StrawberryShake.IOperationStore operationStore, global::StrawberryShake.IEntityStore entityStore, global::StrawberryShake.IEntityIdSerializer entityIdSerializer, global::System.Collections.Generic.IEnumerable requestFactories, global::System.Collections.Generic.IEnumerable resultDataFactories): base(operationStore, entityStore, entityIdSerializer, requestFactories, resultDataFactories) + public WotBlitzStatisticsProClientStoreAccessor(global::StrawberryShake.IOperationStore operationStore, global::StrawberryShake.IEntityStore entityStore, global::StrawberryShake.IEntityIdSerializer entityIdSerializer, global::System.Collections.Generic.IEnumerable requestFactories, global::System.Collections.Generic.IEnumerable resultDataFactories) : base(operationStore, entityStore, entityIdSerializer, requestFactories, resultDataFactories) { } } diff --git a/WotBlitzStatisticsPro.Blazor/Generated/WotBlitzStatisticsProClient.WotBlitzStatisticsProClient.StrawberryShake.cs b/WotBlitzStatisticsPro.Blazor/Generated/WotBlitzStatisticsProClient.WotBlitzStatisticsProClient.StrawberryShake.cs index 4b7b560..6f7a5eb 100644 --- a/WotBlitzStatisticsPro.Blazor/Generated/WotBlitzStatisticsProClient.WotBlitzStatisticsProClient.StrawberryShake.cs +++ b/WotBlitzStatisticsPro.Blazor/Generated/WotBlitzStatisticsProClient.WotBlitzStatisticsProClient.StrawberryShake.cs @@ -9,34 +9,34 @@ namespace WotBlitzStatisticsPro.Blazor.GraphQl [global::System.CodeDom.Compiler.GeneratedCode("StrawberryShake", "11.2.2.0")] public partial class WotBlitzStatisticsProClient : global::WotBlitzStatisticsPro.Blazor.GraphQl.IWotBlitzStatisticsProClient { - private readonly global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansQuery _findClans; private readonly global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindPlayersQuery _findPlayers; - private readonly global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryQuery _wargamingAuthenticationQuery; - private readonly global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdMutation _wargamingOpenId; - private readonly global::WotBlitzStatisticsPro.Blazor.GraphQl.IPlayerQuery _player; private readonly global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdAuthenticationMutation _wargamingOpenIdAuthentication; - private readonly global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingPlayersMutation _wargamingPlayers; + private readonly global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdMutation _wargamingOpenId; + private readonly global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansQuery _findClans; + private readonly global::WotBlitzStatisticsPro.Blazor.GraphQl.IPlayerQuery _player; private readonly global::WotBlitzStatisticsPro.Blazor.GraphQl.IUpdatePlayerMutation _updatePlayer; - public WotBlitzStatisticsProClient(global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansQuery findClans, global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindPlayersQuery findPlayers, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryQuery wargamingAuthenticationQuery, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdMutation wargamingOpenId, global::WotBlitzStatisticsPro.Blazor.GraphQl.IPlayerQuery player, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdAuthenticationMutation wargamingOpenIdAuthentication, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingPlayersMutation wargamingPlayers, global::WotBlitzStatisticsPro.Blazor.GraphQl.IUpdatePlayerMutation updatePlayer) + private readonly global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingPlayersMutation _wargamingPlayers; + private readonly global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryQuery _wargamingAuthenticationQuery; + public WotBlitzStatisticsProClient(global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindPlayersQuery findPlayers, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdAuthenticationMutation wargamingOpenIdAuthentication, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdMutation wargamingOpenId, global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansQuery findClans, global::WotBlitzStatisticsPro.Blazor.GraphQl.IPlayerQuery player, global::WotBlitzStatisticsPro.Blazor.GraphQl.IUpdatePlayerMutation updatePlayer, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingPlayersMutation wargamingPlayers, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryQuery wargamingAuthenticationQuery) { - _findClans = findClans ?? throw new global::System.ArgumentNullException(nameof(findClans)); _findPlayers = findPlayers ?? throw new global::System.ArgumentNullException(nameof(findPlayers)); - _wargamingAuthenticationQuery = wargamingAuthenticationQuery ?? throw new global::System.ArgumentNullException(nameof(wargamingAuthenticationQuery)); - _wargamingOpenId = wargamingOpenId ?? throw new global::System.ArgumentNullException(nameof(wargamingOpenId)); - _player = player ?? throw new global::System.ArgumentNullException(nameof(player)); _wargamingOpenIdAuthentication = wargamingOpenIdAuthentication ?? throw new global::System.ArgumentNullException(nameof(wargamingOpenIdAuthentication)); - _wargamingPlayers = wargamingPlayers ?? throw new global::System.ArgumentNullException(nameof(wargamingPlayers)); + _wargamingOpenId = wargamingOpenId ?? throw new global::System.ArgumentNullException(nameof(wargamingOpenId)); + _findClans = findClans ?? throw new global::System.ArgumentNullException(nameof(findClans)); + _player = player ?? throw new global::System.ArgumentNullException(nameof(player)); _updatePlayer = updatePlayer ?? throw new global::System.ArgumentNullException(nameof(updatePlayer)); + _wargamingPlayers = wargamingPlayers ?? throw new global::System.ArgumentNullException(nameof(wargamingPlayers)); + _wargamingAuthenticationQuery = wargamingAuthenticationQuery ?? throw new global::System.ArgumentNullException(nameof(wargamingAuthenticationQuery)); } public static global::System.String ClientName => "WotBlitzStatisticsProClient"; - public global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansQuery FindClans => _findClans; public global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindPlayersQuery FindPlayers => _findPlayers; - public global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryQuery WargamingAuthenticationQuery => _wargamingAuthenticationQuery; - public global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdMutation WargamingOpenId => _wargamingOpenId; - public global::WotBlitzStatisticsPro.Blazor.GraphQl.IPlayerQuery Player => _player; public global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdAuthenticationMutation WargamingOpenIdAuthentication => _wargamingOpenIdAuthentication; - public global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingPlayersMutation WargamingPlayers => _wargamingPlayers; + public global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdMutation WargamingOpenId => _wargamingOpenId; + public global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansQuery FindClans => _findClans; + public global::WotBlitzStatisticsPro.Blazor.GraphQl.IPlayerQuery Player => _player; public global::WotBlitzStatisticsPro.Blazor.GraphQl.IUpdatePlayerMutation UpdatePlayer => _updatePlayer; + public global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingPlayersMutation WargamingPlayers => _wargamingPlayers; + public global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryQuery WargamingAuthenticationQuery => _wargamingAuthenticationQuery; } } diff --git a/WotBlitzStatisticsPro.Blazor/Helpers/AssetsHelper.cs b/WotBlitzStatisticsPro.Blazor/Helpers/AssetsHelper.cs index cd788ef..8ee7338 100644 --- a/WotBlitzStatisticsPro.Blazor/Helpers/AssetsHelper.cs +++ b/WotBlitzStatisticsPro.Blazor/Helpers/AssetsHelper.cs @@ -47,6 +47,23 @@ namespace WotBlitzStatisticsPro.Blazor.Helpers Constants.CountryEuropean => "flags/eu.png", _ => "flags/vehicle.nation.unknown.scale-200.png" }; + } + + public static string NationAssetFaded(this string nationTypeId) + { + return nationTypeId switch + { + Constants.CountryUsa => "flags/usa-faded.png", + Constants.CountryFrance => "flags/france-faded.png", + Constants.CountryUssr => "flags/ussr-faded.png", + Constants.CountryChina => "flags/china-faded.png", + Constants.CountryUk => "flags/uk-faded.png", + Constants.CountryJapan => "flags/japan-faded.png", + Constants.CountryGermany => "flags/germany-faded.png", + Constants.CountryOther => "flags/other-faded.png", + Constants.CountryEuropean => "flags/eu-faded.png", + _ => "flags/vehicle.nation.unknown.scale-200.png" + }; } } } diff --git a/WotBlitzStatisticsPro.Blazor/Messages/OpenMedalDescriptionMessage.cs b/WotBlitzStatisticsPro.Blazor/Messages/OpenMedalDescriptionMessage.cs new file mode 100644 index 0000000..2473b63 --- /dev/null +++ b/WotBlitzStatisticsPro.Blazor/Messages/OpenMedalDescriptionMessage.cs @@ -0,0 +1,15 @@ +using MediatR; +using WotBlitzStatisticsPro.Blazor.GraphQl; + +namespace WotBlitzStatisticsPro.Blazor.Messages +{ + public class OpenMedalDescriptionMessage: INotification + { + public IMedal MedalInfo { get; } + + public OpenMedalDescriptionMessage(IMedal medalInfo) + { + MedalInfo = medalInfo; + } + } +} \ No newline at end of file diff --git a/WotBlitzStatisticsPro.Blazor/Messages/OpenTankDialogMessage.cs b/WotBlitzStatisticsPro.Blazor/Messages/OpenTankDialogMessage.cs new file mode 100644 index 0000000..f3f397d --- /dev/null +++ b/WotBlitzStatisticsPro.Blazor/Messages/OpenTankDialogMessage.cs @@ -0,0 +1,15 @@ +using MediatR; +using WotBlitzStatisticsPro.Blazor.GraphQl; + +namespace WotBlitzStatisticsPro.Blazor.Messages +{ + public class OpenTankDialogMessage: INotification + { + public ITank Tank { get; } + + public OpenTankDialogMessage(ITank tank) + { + Tank = tank; + } + } +} \ No newline at end of file diff --git a/WotBlitzStatisticsPro.Blazor/Pages/MedalInfoDialog.razor b/WotBlitzStatisticsPro.Blazor/Pages/MedalInfoDialog.razor new file mode 100644 index 0000000..b5996ec --- /dev/null +++ b/WotBlitzStatisticsPro.Blazor/Pages/MedalInfoDialog.razor @@ -0,0 +1,41 @@ +@using WotBlitzStatisticsPro.Blazor.Model + + +
+ +
+
+ @MedalInfo.Description + @if(MedalInfo.MaxSeriesValue != null) + { + @($" ({MedalInfo.MaxSeriesValue})") + } +
+
+ @if(conditions != null) + { + @foreach (var conditionRow in conditions) + { +

@conditionRow

+ } + } +
+
+
+
+ +@code { + [Parameter] + public IMedal MedalInfo { get; set; } + + string[] conditions; + + protected override void OnInitialized() + { + if(MedalInfo.Condition != null) + { + conditions = MedalInfo.Condition.Split(Environment.NewLine); + } + } + +} \ No newline at end of file diff --git a/WotBlitzStatisticsPro.Blazor/Pages/OverallStatisticsCard.razor b/WotBlitzStatisticsPro.Blazor/Pages/OverallStatisticsCard.razor new file mode 100644 index 0000000..56bb226 --- /dev/null +++ b/WotBlitzStatisticsPro.Blazor/Pages/OverallStatisticsCard.razor @@ -0,0 +1,95 @@ +@using WotBlitzStatisticsPro.Blazor.Helpers +@inject IStringLocalizer Localize; + +

@Localize["Ower all statistics"]

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
@Localize["Last battle"]:@Statistics.LastBattleTime.ConvertToLocalTime().ToString("g")
@Localize["Battles"]:@Statistics.Battles.ToString("N0")
@Localize["Wins"]:@Statistics.Wins.ToString("N0") (@Statistics.WinRate.ToString("N2")%)
@Localize["Losses"]:@Statistics.Losses.ToString("N0") (@Persentage(Statistics.Losses, Statistics.Battles)%)
@Localize["Survived"]:@Statistics.SurvivedBattles.ToString("N0") (@Persentage(Statistics.SurvivedBattles, Statistics.Battles)%)
@Localize["Win and survived"]:@Statistics.WinAndSurvived.ToString("N0") (@Persentage(Statistics.WinAndSurvived, Statistics.Battles)%)
@Localize["Average XP"]:@Statistics.AvgXp.ToString("N0")
@Localize["Average Damage"]:@Statistics.AvgDamage.ToString("N0")
@Localize["Average Damage received"]:@Average(@Statistics.DamageReceived, @Statistics.Battles)
@Localize["Damage coefficient"]:@Statistics.DamageCoefficient.ToString("N2")
@Localize["Frags"]:@Statistics.Frags.ToString("N0") (@Average(Statistics.Frags, Statistics.Battles))
@Localize["Frags over 8 tier"]:@Statistics.Frags8P.ToString("N0") (@Average(Statistics.Frags8P, Statistics.Battles))
@Localize["Shots"]:@Statistics.Shots.ToString("N0") (@Average(Statistics.Shots, Statistics.Battles))
@Localize["Hits"]:@Statistics.Hits.ToString("N0") (@Average(Statistics.Hits, Statistics.Battles))
@Localize["Accuracy"]:@Persentage(Statistics.Hits, Statistics.Shots)%
@Localize["Spotted tanks"]:@Statistics.Spotted.ToString("N0") (@Average(Statistics.Spotted, Statistics.Battles))
@Localize["Base captured"]:@Statistics.CapturePoints.ToString("N0") (@Average(Statistics.CapturePoints, Statistics.Battles))
@Localize["Dropped base capture"]:@Statistics.DroppedCapturePoints.ToString("N0") (@Average(Statistics.DroppedCapturePoints, Statistics.Battles))
+
+ +@code { + [Parameter] + public IStatistics Statistics { get; set; } + + private string Persentage(long firstNumber, long secondNuber) + { + return (((decimal)(100*firstNumber))/((decimal)secondNuber)).ToString("N2"); + } + private string Average(long firstNumber, long secondNuber) + { + return (((decimal)(firstNumber))/((decimal)secondNuber)).ToString("N2"); + } +} \ No newline at end of file diff --git a/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoAchievements.razor b/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoAchievements.razor index 27fde3d..e0c52d8 100644 --- a/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoAchievements.razor +++ b/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoAchievements.razor @@ -1,5 +1,30 @@ -

PlayerInfoAchievements

+@using MediatR +@using WotBlitzStatisticsPro.Blazor.Messages +@using WotBlitzStatisticsPro.Blazor.Helpers +@inject IMediator Mediator + + + @foreach (var section in AchievementsBySection.OrderBy(s => s.Order)) + { + +
+ @foreach (var medal in section.Medals.OrderBy(m => m.Order)) + { +
+ +
+ @((section.SectionId =="step" || (medal.MaxSeriesValue != null && section.SectionId != "title")) ? medal.AchievementValue.RomanNumber() : medal.AchievementValue) +
+
+ } +
+
+ } +
+
@code { + [Parameter] + public IReadOnlyList AchievementsBySection { get; set; } } diff --git a/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoAchievements.razor.css b/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoAchievements.razor.css new file mode 100644 index 0000000..a38810e --- /dev/null +++ b/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoAchievements.razor.css @@ -0,0 +1,25 @@ +.medals-section { + display: flex; + flex-direction: row; + flex-wrap: wrap; +} + +.medal-box { + width: 56px; + height: 56px; + display: flex; + flex-direction: column; + align-items: center; + position: relative; +} + +.achievement-image { + width: 50px; + height: 50px; +} + +.achievement-badge { + position: absolute; + left: 30px; + top: 30px; +} diff --git a/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoLayout.razor b/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoLayout.razor index 15cca5c..7eec4c8 100644 --- a/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoLayout.razor +++ b/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoLayout.razor @@ -13,11 +13,19 @@ }
-
- @Localize["Created"]: @AccountInfo.CreatedAt.ToString("d") | @AccountInfo.CreatedAt.SinceTime(Localize) +
+
@Localize["Created"]:
+
+
@AccountInfo.CreatedAt.ToString("d")
+
@AccountInfo.CreatedAt.SinceTime(Localize)
+
-
- @Localize["Last battle"]: @AccountInfo.LastBattleTime.ConvertToLocalTime().ToString("g") | @AccountInfo.LastBattleTime.ConvertToLocalTime().SinceTime(Localize) +
+
@Localize["Last battle"]:
+
+
@AccountInfo.LastBattleTime.ConvertToLocalTime().ToString("g")
+
@AccountInfo.LastBattleTime.ConvertToLocalTime().SinceTime(Localize)
+
@@ -29,11 +37,17 @@ - @*TODO: In case of @SmallScreen == true, then show new tanks list component - mobile version *@ - + @if (SmallScreen) + { + + } + else + { + + } - + diff --git a/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoLayout.razor.css b/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoLayout.razor.css index af80559..08e7ab0 100644 --- a/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoLayout.razor.css +++ b/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoLayout.razor.css @@ -1,4 +1,21 @@ dates-section { - margin-top: 10px; - margin-bottom: 10px; + margin-top: 10px; + margin-bottom: 10px; +} + +.data-field { + display: flex; + flex-direction: column; + justify-content: space-between; +} + +.data-label { + color: #b3b1ad; + font-size: small; +} + +.data-value { + display: flex; + flex-direction: row; + justify-content: space-between; } diff --git a/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoOverview.razor b/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoOverview.razor index 1c89bdf..cfbea51 100644 --- a/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoOverview.razor +++ b/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoOverview.razor @@ -1,70 +1,105 @@ @using WotBlitzStatisticsPro.Blazor.Helpers +@using MediatR +@using WotBlitzStatisticsPro.Blazor.Messages @inject IStringLocalizer Localize; +@inject IMediator Mediator -
-
- + +
- + - - - - + + - - + + + + + + + + + + + + + +
@Localize["Battles"]:@AccountInfo.Battles.ToString("N0")@AccountInfo.Battles.ToString("N0")
@Localize["Win rate"]: + @AccountInfo.WinRate.ToString("N2")%
@Localize["Wn7"]: + @AccountInfo.Wn7.ToString("N2")
@Localize["Average Damage"]:@AccountInfo.AvgDamage.ToString("N0")@Localize["Average XP"]:@AccountInfo.AvgXp.ToString("N0")
@Localize["Average XP"]:@AccountInfo.AvgXp.ToString("N0")@Localize["Average Damage"]:@AccountInfo.AvgDamage.ToString("N0")
@Localize["Damage coefficient"]:@AccountInfo.DamageCoefficient.ToString("N2")
@Localize["Survival rate"]:@AccountInfo.SurvivalRate.ToString("N0")%
@Localize["Avg tier"]:@AccountInfo.AvgTier.ToString("N2")
-
-
-
- @Localize["Most effective tank"]: -
- @if (MostRelevantTank != null) - { - - } -
-
-
- @Localize["Tank with Max XP"] (@AccountInfo.MaxXp.ToString("N0")): -
- @if (MaxXpTank != null) - { - - } -
-
-
- @Localize["Tank with Max frags"] (@AccountInfo.MaxFrags): -
+ + +

@Localize["Most effective tank"]

+
+
+
+
+ @if (MostRelevantTank != null) + { + + } +
+
+
- @if (MaxFragsTank != null) - { - - } -
+
+ + +

@Localize["Tank with Max XP"] (@AccountInfo.MaxXp.ToString("N0"))

+
+
+
+
+ @if (MaxXpTank != null) + { + + } +
+
+
+ +
+
+ +

@Localize["Tank with Max frags"] (@AccountInfo.MaxFrags)

+
+
+
+
+ @if (MaxFragsTank != null) + { + + } +
+
+
+ +
+
+
-
+ @code { [Parameter] @@ -80,5 +115,4 @@ MaxXpTank = AccountInfo?.Tanks?.FirstOrDefault(t => t.TankId == AccountInfo.MaxXpTankId); MaxFragsTank = AccountInfo?.Tanks?.FirstOrDefault(t => t.TankId == AccountInfo.MaxFragsTankId); } - } diff --git a/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoTanksList.razor b/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoTanksList.razor index 64748b3..33a56f9 100644 --- a/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoTanksList.razor +++ b/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoTanksList.razor @@ -1,4 +1,5 @@ @using WotBlitzStatisticsPro.Blazor.Helpers +@using WotBlitzStatisticsPro.Blazor.Messages @inherits PlayerInfoTanksListBase;
@@ -52,7 +53,7 @@ diff --git a/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoTanksListBase.cs b/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoTanksListBase.cs index dcd2a45..da31337 100644 --- a/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoTanksListBase.cs +++ b/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoTanksListBase.cs @@ -8,7 +8,8 @@ using Radzen.Blazor; using WotBlitzStatisticsPro.Blazor.GraphQl; using WotBlitzStatisticsPro.Blazor.Helpers; using WotBlitzStatisticsPro.Blazor.Model; - +using MediatR; +using WotBlitzStatisticsPro.Blazor.Messages; namespace WotBlitzStatisticsPro.Blazor.Pages { public class PlayerInfoTanksListBase: ComponentBase @@ -22,6 +23,9 @@ namespace WotBlitzStatisticsPro.Blazor.Pages [Inject] public IStringLocalizer Localize { get; set; } + [Inject] + public IMediator Mediator { get; set; } + public RadzenDataGrid TanksGrid { get; set; } public IEnumerable FilteredTankList { get; set; } @@ -50,7 +54,7 @@ namespace WotBlitzStatisticsPro.Blazor.Pages protected override void OnInitialized() { - FilteredTankList = TanksList; + FilteredTankList = TanksList.OrderByDescending(t => t.LastBattleTime); CountTotalParams(); for (int i = 1; i < 11; i++) { diff --git a/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoTanksListSmall.razor b/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoTanksListSmall.razor new file mode 100644 index 0000000..2695fab --- /dev/null +++ b/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoTanksListSmall.razor @@ -0,0 +1,280 @@ +@using WotBlitzStatisticsPro.Blazor.Messages +@inherits PlayerInfoTanksListBase; +@if (TanksList != null && FilteredTankList.Count() > 0) +{ +
+
+ + @if(sorting == TanksSorting.LastBattle && isSortAscending) + {} + @if(sorting == TanksSorting.LastBattle && !isSortAscending) + {} +
+
+ + @if(sorting == TanksSorting.Winrate && isSortAscending) + {} + @if(sorting == TanksSorting.Winrate && !isSortAscending) + {} +
+
+ + @if(sorting == TanksSorting.Battles && isSortAscending) + {} + @if(sorting == TanksSorting.Battles && !isSortAscending) + {} +
+
+ + @if(sorting == TanksSorting.Damage && isSortAscending) + {} + @if(sorting == TanksSorting.Damage && !isSortAscending) + {} +
+
+ + @if(sorting == TanksSorting.Tier && isSortAscending) + {} + @if(sorting == TanksSorting.Tier && !isSortAscending) + {} +
+
+ Wn7 + @if(sorting == TanksSorting.Wn7 && isSortAscending) + {} + @if(sorting == TanksSorting.Wn7 && !isSortAscending) + {} +
+
+ +
+ @foreach (var tank in FilteredTankList) + { +
+ +
+ } +
+ +
+
+ @Localize["Tanks"]: @FilteredTankList.Count() +
+
+ @foreach(var nationForFilter in NationsFilter) { + + } +
+
+ @foreach(var tier in TierFilter) { +
+ @tier.ItemName +
+ } +
+
+ @foreach(var typeFor in TankTypesFilter) { + + } + +
+
+ @foreach(var mastery in MasteryFilter) { + + } +
+
+} + + +@code { + + private enum TanksSorting + { + LastBattle, + Winrate, + Battles, + Damage, + Wn7, + Tier + } + + private TanksSorting sorting = TanksSorting.LastBattle; + + private bool isSortAscending = false; + + private void OnFilterClick(MouseEventArgs e, TanksSorting sortingToApply) + { + if (sortingToApply != sorting) + { + sorting = sortingToApply; + isSortAscending = false; + } + else + { + isSortAscending = !isSortAscending; + } + FilterTanksList(); + } + + private void FilterTanksList() + { + switch (sorting) + { + case TanksSorting.LastBattle: + FilteredTankList = isSortAscending ? FilteredTankList.OrderBy(t => t.LastBattleTime) : FilteredTankList.OrderByDescending(t => t.LastBattleTime); + break; + case TanksSorting.Winrate: + FilteredTankList = isSortAscending ? FilteredTankList.OrderBy(t => t.WinRate) : FilteredTankList.OrderByDescending(t => t.WinRate); + break; + case TanksSorting.Battles: + FilteredTankList = isSortAscending ? FilteredTankList.OrderBy(t => t.Battles) : FilteredTankList.OrderByDescending(t => t.Battles); + break; + case TanksSorting.Damage: + FilteredTankList = isSortAscending ? FilteredTankList.OrderBy(t => t.AvgDamage) : FilteredTankList.OrderByDescending(t => t.AvgDamage); + break; + case TanksSorting.Wn7: + FilteredTankList = isSortAscending ? FilteredTankList.OrderBy(t => t.Wn7) : FilteredTankList.OrderByDescending(t => t.Wn7); + break; + case TanksSorting.Tier: + FilteredTankList = isSortAscending ? FilteredTankList.OrderBy(t => t.Tier) : FilteredTankList.OrderByDescending(t => t.Tier); + break; + } + } + + private void ApplyNationFilter(MouseEventArgs e, string nationToApply) + { + if(FilteredNations.Contains(nationToApply)) + { + FilteredNations = FilteredNations.Where(n => n != nationToApply).ToArray(); + } + else + { + var nations = FilteredNations.ToList(); + nations.Add(nationToApply); + FilteredNations = nations.ToArray(); + } + + OnFilterChange(null); + } + + private string NationFilterStyle(string nation) + { + string basic = "nation-filter-flag"; + if(FilteredNations.Contains(nation)) + { + return $"{basic} filter-selected"; + } + return basic; + } + + private void ApplyTierFilter(MouseEventArgs e, int tierToApply) + { + if(FilteredTiers.Contains(tierToApply)) + { + FilteredTiers = FilteredTiers.Where(n => n != tierToApply).ToArray(); + } + else + { + var tiers = FilteredTiers.ToList(); + tiers.Add(tierToApply); + FilteredTiers = tiers.ToArray(); + } + + OnFilterChange(null); + } + + private string TierFilterStyle(int tier) + { + string basic = "tier-filter"; + if(FilteredTiers.Contains(tier)) + { + return $"{basic} filter-selected"; + } + return basic; + } + + private void ApplyTankTypeFilter(MouseEventArgs e, string typeToApply) + { + if(FilteredTankTypes.Contains(typeToApply)) + { + FilteredTankTypes = FilteredTankTypes.Where(n => n != typeToApply).ToArray(); + } + else + { + var types = FilteredTankTypes.ToList(); + types.Add(typeToApply); + FilteredTankTypes = types.ToArray(); + } + + OnFilterChange(null); + } + + private string TankTypeFilterStyle(string typeToApply) + { + string basic = "tier-filter"; + if(FilteredTankTypes.Contains(typeToApply)) + { + return $"{basic} filter-selected"; + } + return basic; + } + + private void ApplyPremiumFilter(MouseEventArgs e) + { + if(FilterIsPremium.HasValue && FilterIsPremium.Value == true) + { + FilterIsPremium = false; + } + else if(FilterIsPremium.HasValue && FilterIsPremium.Value == false) + { + FilterIsPremium = null; + } + else if(!FilterIsPremium.HasValue) + { + FilterIsPremium = true; + } + OnFilterChange(null); + } + + private string PremiumStyle() + { + string basic = "tier-filter"; + if(FilterIsPremium.HasValue && FilterIsPremium.Value == true) + { + return $"{basic} filter-selected"; + } + if(FilterIsPremium.HasValue && FilterIsPremium.Value == false) + { + return $"{basic} filter-non-premium-selected"; + } + return basic; + } + + private void ApplyMasteryFilter(MouseEventArgs e, MarkOfMastery mastery) + { + if(FilteredMastery.Contains(mastery)) + { + FilteredMastery = FilteredMastery.Where(n => n != mastery).ToArray(); + } + else + { + var masteries = FilteredMastery.ToList(); + masteries.Add(mastery); + FilteredMastery = masteries.ToArray(); + } + + OnFilterChange(null); + } + + private string MasteryFilterStyle(MarkOfMastery mastery) + { + string basic = "tier-filter"; + if(FilteredMastery.Contains(mastery)) + { + return $"{basic} filter-selected"; + } + return basic; + } + +} diff --git a/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoTanksListSmall.razor.css b/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoTanksListSmall.razor.css new file mode 100644 index 0000000..aacc828 --- /dev/null +++ b/WotBlitzStatisticsPro.Blazor/Pages/PlayerInfoTanksListSmall.razor.css @@ -0,0 +1,61 @@ +.tanks-list { + height: 332px; + overflow-y: scroll; +} + +.sorting { + display: flex; + flex-direction: row; + justify-content: space-around; +} + +.sort-button { + min-height: 24px; + min-width: 24px; + width: 24px; + height: 24px; +} + +.sort-arrow { + min-height: 24px; + height: 24px; +} + +.filter-area { + display: flex; + flex-direction: column; + justify-content: space-between; + margin-top: 10px; +} + +.filter-row-area { + display: flex; + flex-direction: row; + justify-content: space-between; + margin-top: 10px; +} + +.nation-filter-flag { + width: 35px; + height: 23px; + border-radius: 4px; +} + +.tier-filter { + width: 23px; + height: 23px; + border-radius: 4px; + text-align: center; +} + +.filter-selected { + border-width: 1px; + border-color: #f5aa3b; + border-style: solid; +} + +.filter-non-premium-selected { + border-width: 1px; + border-color: #7c807c; + border-style: solid; +} diff --git a/WotBlitzStatisticsPro.Blazor/Pages/TankInfoDialog.razor b/WotBlitzStatisticsPro.Blazor/Pages/TankInfoDialog.razor new file mode 100644 index 0000000..85afe41 --- /dev/null +++ b/WotBlitzStatisticsPro.Blazor/Pages/TankInfoDialog.razor @@ -0,0 +1,10 @@ +@using WotBlitzStatisticsPro.Blazor.Model + + + + + +@code { + [Parameter] + public ITank Tank { get; set; } +} \ No newline at end of file diff --git a/WotBlitzStatisticsPro.Blazor/Pages/TankListItem.razor b/WotBlitzStatisticsPro.Blazor/Pages/TankListItem.razor new file mode 100644 index 0000000..33e21dd --- /dev/null +++ b/WotBlitzStatisticsPro.Blazor/Pages/TankListItem.razor @@ -0,0 +1,63 @@ +@using WotBlitzStatisticsPro.Blazor.Helpers +@inject IStringLocalizer Localize; + +
+
+
+
+ @if (Tank.IsPremium) + { + + @Tank.Tier.RomanNumber() + } + else + { + @Tank.Tier.RomanNumber() + } +
+ + + +
+
+
+
+ @if (Tank.IsPremium) + { + + @Tank.Name + + } + else + { + @Tank.Name + } +
+
+ Wn7: @Tank.Wn7.ToString("N0") +
+
+
+
+
+ @Tank.Battles.ToString("N0") +
+
+ @Tank.WinRate.ToString("N0")% +
+
+ @Tank.AvgDamage.ToString("N0") +
+
+ @Tank.AvgXp.ToString("N0") +
+
+
+
+
+ +@code { + [Parameter] + public ITank Tank { get; set; } + +} diff --git a/WotBlitzStatisticsPro.Blazor/Pages/TankListItem.razor.css b/WotBlitzStatisticsPro.Blazor/Pages/TankListItem.razor.css new file mode 100644 index 0000000..025e818 --- /dev/null +++ b/WotBlitzStatisticsPro.Blazor/Pages/TankListItem.razor.css @@ -0,0 +1,88 @@ +.tank-list-item { + display: flex; + flex-direction: row; + justify-content: flex-start; + width: 100%; + background-color: #3a474d; + margin-top: 5px; + font-size: 12px; +} + +.tank-image { + position: relative; + width: 120px; + min-width: 120px; + height: 70px; + justify-content: flex-end; + display: flex; + flex-direction: row; +} + +.tank-flag-background { + /*filter: grayscale(60%);*/ + /* filter: blur(1.5px);*/ + position: absolute; + width: 120px; + min-width: 120px; + height: 70px; +} + +.tank-tier { + position: absolute; + left: 5px; + top: 0px; + width: 24px; + height: 24px; +} + +.tank-preview { + position: absolute; + left: 25px; + top: 0px; + width: 95px; + height: 70px; +} + +.tank-type { + position: absolute; + left: 0px; + top: 46px; + width: 24px; + height: 24px; +} + +.mastery-image { + position: absolute; + left: 96px; + top: 46px; + width: 24px; + height: 24px; +} + +.tank-info { + display: flex; + flex-direction: column; + justify-content: space-between; + width: 100%; + margin-left: 2px; + margin-right: 2px; +} + +.tank-info-first-row { + display: flex; + flex-direction: row; + justify-content: space-between; + align-items: flex-end; +} + +.tank-info-second-row { + display: flex; + flex-direction: row; + align-items: flex-end; + justify-content: space-between; +} + +.icon-scale { + width: 20px; + height: 20px; +} diff --git a/WotBlitzStatisticsPro.Blazor/Program.cs b/WotBlitzStatisticsPro.Blazor/Program.cs index 0c00c86..b6f36ef 100644 --- a/WotBlitzStatisticsPro.Blazor/Program.cs +++ b/WotBlitzStatisticsPro.Blazor/Program.cs @@ -31,6 +31,8 @@ namespace WotBlitzStatisticsPro.Blazor builder.Services.AddScoped(); builder.Services.AddScoped(); builder.Services.AddScoped(); + builder.Services.AddScoped(); + builder.Services.AddScoped(); builder.Services.AddMediatR(typeof(Program)); @@ -52,7 +54,7 @@ namespace WotBlitzStatisticsPro.Blazor //var useMock = Environment.GetEnvironmentVariable("USE_GRAPH_QL_MOCK"); //if (useMock != null && useMock == "true") //{ - //builder.Services.AddTransient(); + // builder.Services.AddTransient(); //} //else //{ diff --git a/WotBlitzStatisticsPro.Blazor/Resources/App.de.resx b/WotBlitzStatisticsPro.Blazor/Resources/App.de.resx index 74ac7ee..9bd5663 100644 --- a/WotBlitzStatisticsPro.Blazor/Resources/App.de.resx +++ b/WotBlitzStatisticsPro.Blazor/Resources/App.de.resx @@ -1,17 +1,17 @@  - - + - + - - - - + + + + - - + + - - + + - - - - + + + + - + - + @@ -119,137 +119,186 @@ Mittlerer Schaden + Mittlere EP + Mittlerer Schaden dem Nation + Mittlerer Schaden dem Panzertype + Mittlerer Schaden dem Rang + Gefechte + Gefechte dem Nation + Gefechte dem Panzertype + Gefechte dem Rang + Abbrechen + Weiter + Erstellt + vor Tagen + Meisterschaftfilter... + Nationfilter... + Panzertypenfilter... + Rangfilter... + Startseite + vor Stunden + Letzte Gefecht + Abmelden + Anmelden mit WG.net-ID + Sie werden nun auf die WG-Anmeldeseite weitergeleitet. Autorisierte Benutzer haben die Möglichkeit, ihren Statistikverlauf zu speichern, der nur Ihnen zur Verfügung steht. Diese Anwendung speichert keine persönlichen Informationen über die Spieler, ihre Benutzernamen, Passwörter, E-Mails und spielinternen Ressourcen. Außerdem können Sie sich nach dem Einloggen mit dem Speichern oder Löschen des Verlaufs Ihrer Kontostatistiken auf dem Server abmelden. Indem Sie auf Weiter klicken, erklären Sie sich mit diesen Informationen einverstanden + Mitglieder + Min Schlachten + vor Minuten + vor Monaten + Effektivster Panzer + von + Prämiepanzern + Region + Suchen + Clan suchen + Spieler suchen + Panzer + Panzer max zerstört + Panzer mit max EP + Panzern + Willkommen bei der WOT Blitz statistics! + Sieg + Sieg dem Nation + Panzertypensieg + Sieg dem Rang + vor Jahren + Sie sind dabei, sich anzumelden + + + + Damage coefficient + \ No newline at end of file diff --git a/WotBlitzStatisticsPro.Blazor/Resources/App.ru.resx b/WotBlitzStatisticsPro.Blazor/Resources/App.ru.resx index 666ee5e..12e85fe 100644 --- a/WotBlitzStatisticsPro.Blazor/Resources/App.ru.resx +++ b/WotBlitzStatisticsPro.Blazor/Resources/App.ru.resx @@ -1,17 +1,17 @@  - - + - + - - - - + + + + - - + + - - + + - - - - + + + + - + - + @@ -119,137 +119,250 @@ Средний урон + Средний опыт + Средний урон по нациям + Средний урон по типу танка + Средний урон по уровню + Количество боёв + Количество боёв по нациям + Количество боёв по типу танка + Количество боёв по уровню + Отмена + Далее + Создан + дней назад + Фильтр по знаку мастер... + Фильтр по нациям... + Фильтр по типу танка... + Фильтр по уровню... + На главную + часов назад + Последний бой + Выйти + Войти с WG.net ID + Сейчас вы будете перенаправлены на страницу авторизации WG. Авторизованные пользователи получают возможность сохранять историю своей статистики, которая будет доступна только вам. Данное приложение не хранит никакой личной информации об игроках, их логинов, паролей e-mail-ов и внутреигровых ресурсах. Так же после авторизации вы будете иметь возможность выйти с сохранением или удалением истории статистики вашего аккаунта на сервере. Нажимая кнопку Далее, вы соглашаетесь с данной информацией + Участников + Мин боёв + минут назад + месяцев назад + Самый эффективный танк + из + Премиум танки + Регион + Поиск + Поиск клана + Поиск игрока + Танк + Максимум фрагов + Максимум XP + Танков + Добро пожаловать в WOT Blitz statistics! + Процент побед + Процент побед по нациям + Процент побед по типу танка + Процент побед по уровню + лет назад + Вы собираетесь войти в систему + + + + Коэффициент урона + + + + Выживаемость + + + + Танкоуровень + + + + Общая статистика + + + + Побед + + + + Поражений + + + + Выжил + + + + Выжил и победил + + + + Полученный средний урон + + + + Фрагов + + + + Фрагов 8+ ур. + + + + Выстрелов + + + + Пробитий + + + + Точность + + + + Обнаружено танков + + + + Захват базы + + + + Защита базы + \ No newline at end of file diff --git a/WotBlitzStatisticsPro.Blazor/Services/IMedalDialogService.cs b/WotBlitzStatisticsPro.Blazor/Services/IMedalDialogService.cs new file mode 100644 index 0000000..519a214 --- /dev/null +++ b/WotBlitzStatisticsPro.Blazor/Services/IMedalDialogService.cs @@ -0,0 +1,10 @@ +using System.Threading.Tasks; +using WotBlitzStatisticsPro.Blazor.GraphQl; + +namespace WotBlitzStatisticsPro.Blazor.Services +{ + public interface IMedalDialogService + { + Task OpenMedalInfoDIalog(IMedal medalInfo); + } +} \ No newline at end of file diff --git a/WotBlitzStatisticsPro.Blazor/Services/ITankStatisticDialogService.cs b/WotBlitzStatisticsPro.Blazor/Services/ITankStatisticDialogService.cs new file mode 100644 index 0000000..d2ec35d --- /dev/null +++ b/WotBlitzStatisticsPro.Blazor/Services/ITankStatisticDialogService.cs @@ -0,0 +1,10 @@ +using System.Threading.Tasks; +using WotBlitzStatisticsPro.Blazor.GraphQl; + +namespace WotBlitzStatisticsPro.Blazor.Services +{ + public interface ITankStatisticDialogService + { + Task OpenTankStatistics(ITank tank); + } +} \ No newline at end of file diff --git a/WotBlitzStatisticsPro.Blazor/Services/MedalDialogService.cs b/WotBlitzStatisticsPro.Blazor/Services/MedalDialogService.cs new file mode 100644 index 0000000..5580c4e --- /dev/null +++ b/WotBlitzStatisticsPro.Blazor/Services/MedalDialogService.cs @@ -0,0 +1,35 @@ +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using WotBlitzStatisticsPro.Blazor.GraphQl; +using MediatR; +using Radzen; +using WotBlitzStatisticsPro.Blazor.Messages; +using WotBlitzStatisticsPro.Blazor.Pages; + +namespace WotBlitzStatisticsPro.Blazor.Services +{ + public class MedalDialogService: IMedalDialogService, INotificationHandler + { + private readonly DialogService _dialogService; + + public MedalDialogService(DialogService dialogService) + { + _dialogService = dialogService; + } + + public async Task OpenMedalInfoDIalog(IMedal medalInfo) + { + await _dialogService.OpenAsync(medalInfo.Name, + new Dictionary() { { "MedalInfo", medalInfo } }, + new DialogOptions() { Width = "412px", Height = "600px" }); + + + } + + public Task Handle(OpenMedalDescriptionMessage notification, CancellationToken cancellationToken) + { + return OpenMedalInfoDIalog(notification.MedalInfo); + } + } +} \ No newline at end of file diff --git a/WotBlitzStatisticsPro.Blazor/Services/TankStatisticDialogService.cs b/WotBlitzStatisticsPro.Blazor/Services/TankStatisticDialogService.cs new file mode 100644 index 0000000..c94ea12 --- /dev/null +++ b/WotBlitzStatisticsPro.Blazor/Services/TankStatisticDialogService.cs @@ -0,0 +1,33 @@ +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using WotBlitzStatisticsPro.Blazor.GraphQl; +using MediatR; +using Radzen; +using WotBlitzStatisticsPro.Blazor.Messages; +using WotBlitzStatisticsPro.Blazor.Pages; + +namespace WotBlitzStatisticsPro.Blazor.Services +{ + public class TankStatisticDialogService: ITankStatisticDialogService, INotificationHandler + { + private readonly DialogService _dialogService; + public TankStatisticDialogService(DialogService dialogService) + { + _dialogService = dialogService; + } + + public async Task OpenTankStatistics(ITank tank) + { + await _dialogService.OpenAsync(tank.Name, + new Dictionary() { { "Tank", tank } }, + new DialogOptions() { Width = "412px", Height = "850px" }); + + } + + public Task Handle(OpenTankDialogMessage notification, CancellationToken cancellationToken) + { + return OpenTankStatistics(notification.Tank); + } + } +} \ No newline at end of file diff --git a/WotBlitzStatisticsPro.Blazor/WotBlitzStatisticsPro.Blazor.csproj b/WotBlitzStatisticsPro.Blazor/WotBlitzStatisticsPro.Blazor.csproj index d34a21d..83bd5ad 100644 --- a/WotBlitzStatisticsPro.Blazor/WotBlitzStatisticsPro.Blazor.csproj +++ b/WotBlitzStatisticsPro.Blazor/WotBlitzStatisticsPro.Blazor.csproj @@ -4,7 +4,7 @@ net5.0 service-worker-assets.js true - 1.0.0.2 + 1.0.0.3 diff --git a/WotBlitzStatisticsPro.Blazor/wwwroot/flags/china-faded.png b/WotBlitzStatisticsPro.Blazor/wwwroot/flags/china-faded.png new file mode 100644 index 0000000..f3218e1 Binary files /dev/null and b/WotBlitzStatisticsPro.Blazor/wwwroot/flags/china-faded.png differ diff --git a/WotBlitzStatisticsPro.Blazor/wwwroot/flags/eu-faded.png b/WotBlitzStatisticsPro.Blazor/wwwroot/flags/eu-faded.png new file mode 100644 index 0000000..d813195 Binary files /dev/null and b/WotBlitzStatisticsPro.Blazor/wwwroot/flags/eu-faded.png differ diff --git a/WotBlitzStatisticsPro.Blazor/wwwroot/flags/finland-faded.png b/WotBlitzStatisticsPro.Blazor/wwwroot/flags/finland-faded.png new file mode 100644 index 0000000..f2f6e54 Binary files /dev/null and b/WotBlitzStatisticsPro.Blazor/wwwroot/flags/finland-faded.png differ diff --git a/WotBlitzStatisticsPro.Blazor/wwwroot/flags/france-faded.png b/WotBlitzStatisticsPro.Blazor/wwwroot/flags/france-faded.png new file mode 100644 index 0000000..8490efc Binary files /dev/null and b/WotBlitzStatisticsPro.Blazor/wwwroot/flags/france-faded.png differ diff --git a/WotBlitzStatisticsPro.Blazor/wwwroot/flags/germany-faded.png b/WotBlitzStatisticsPro.Blazor/wwwroot/flags/germany-faded.png new file mode 100644 index 0000000..3f34593 Binary files /dev/null and b/WotBlitzStatisticsPro.Blazor/wwwroot/flags/germany-faded.png differ diff --git a/WotBlitzStatisticsPro.Blazor/wwwroot/flags/italy-faded.png b/WotBlitzStatisticsPro.Blazor/wwwroot/flags/italy-faded.png new file mode 100644 index 0000000..9ce23a2 Binary files /dev/null and b/WotBlitzStatisticsPro.Blazor/wwwroot/flags/italy-faded.png differ diff --git a/WotBlitzStatisticsPro.Blazor/wwwroot/flags/japan-faded.png b/WotBlitzStatisticsPro.Blazor/wwwroot/flags/japan-faded.png new file mode 100644 index 0000000..773b708 Binary files /dev/null and b/WotBlitzStatisticsPro.Blazor/wwwroot/flags/japan-faded.png differ diff --git a/WotBlitzStatisticsPro.Blazor/wwwroot/flags/other-faded.png b/WotBlitzStatisticsPro.Blazor/wwwroot/flags/other-faded.png new file mode 100644 index 0000000..4938f2f Binary files /dev/null and b/WotBlitzStatisticsPro.Blazor/wwwroot/flags/other-faded.png differ diff --git a/WotBlitzStatisticsPro.Blazor/wwwroot/flags/poland-faded.png b/WotBlitzStatisticsPro.Blazor/wwwroot/flags/poland-faded.png new file mode 100644 index 0000000..fb3ba40 Binary files /dev/null and b/WotBlitzStatisticsPro.Blazor/wwwroot/flags/poland-faded.png differ diff --git a/WotBlitzStatisticsPro.Blazor/wwwroot/flags/sweden-faded.png b/WotBlitzStatisticsPro.Blazor/wwwroot/flags/sweden-faded.png new file mode 100644 index 0000000..18079dc Binary files /dev/null and b/WotBlitzStatisticsPro.Blazor/wwwroot/flags/sweden-faded.png differ diff --git a/WotBlitzStatisticsPro.Blazor/wwwroot/flags/uk-faded.png b/WotBlitzStatisticsPro.Blazor/wwwroot/flags/uk-faded.png new file mode 100644 index 0000000..4c07c75 Binary files /dev/null and b/WotBlitzStatisticsPro.Blazor/wwwroot/flags/uk-faded.png differ diff --git a/WotBlitzStatisticsPro.Blazor/wwwroot/flags/usa-faded.png b/WotBlitzStatisticsPro.Blazor/wwwroot/flags/usa-faded.png new file mode 100644 index 0000000..552acd0 Binary files /dev/null and b/WotBlitzStatisticsPro.Blazor/wwwroot/flags/usa-faded.png differ diff --git a/WotBlitzStatisticsPro.Blazor/wwwroot/flags/ussr-faded.png b/WotBlitzStatisticsPro.Blazor/wwwroot/flags/ussr-faded.png new file mode 100644 index 0000000..9fd3f1c Binary files /dev/null and b/WotBlitzStatisticsPro.Blazor/wwwroot/flags/ussr-faded.png differ diff --git a/WotBlitzStatisticsPro.Blazor/wwwroot/icons/Ascending.png b/WotBlitzStatisticsPro.Blazor/wwwroot/icons/Ascending.png new file mode 100644 index 0000000..a86509f Binary files /dev/null and b/WotBlitzStatisticsPro.Blazor/wwwroot/icons/Ascending.png differ diff --git a/WotBlitzStatisticsPro.Blazor/wwwroot/icons/Descending.png b/WotBlitzStatisticsPro.Blazor/wwwroot/icons/Descending.png new file mode 100644 index 0000000..b925f87 Binary files /dev/null and b/WotBlitzStatisticsPro.Blazor/wwwroot/icons/Descending.png differ diff --git a/WotBlitzStatisticsPro.Blazor/wwwroot/icons/compare.scale-200.png b/WotBlitzStatisticsPro.Blazor/wwwroot/icons/compare.scale-200.png new file mode 100644 index 0000000..159e5fa Binary files /dev/null and b/WotBlitzStatisticsPro.Blazor/wwwroot/icons/compare.scale-200.png differ diff --git a/WotBlitzStatisticsPro.Blazor/wwwroot/icons/filter.scale-200.png b/WotBlitzStatisticsPro.Blazor/wwwroot/icons/filter.scale-200.png new file mode 100644 index 0000000..5d170c7 Binary files /dev/null and b/WotBlitzStatisticsPro.Blazor/wwwroot/icons/filter.scale-200.png differ diff --git a/WotBlitzStatisticsPro.Blazor/wwwroot/icons/sortby.battle.scale-200.png b/WotBlitzStatisticsPro.Blazor/wwwroot/icons/sortby.battle.scale-200.png new file mode 100644 index 0000000..af153ba Binary files /dev/null and b/WotBlitzStatisticsPro.Blazor/wwwroot/icons/sortby.battle.scale-200.png differ diff --git a/WotBlitzStatisticsPro.Blazor/wwwroot/icons/sortby.damage.scale-200.png b/WotBlitzStatisticsPro.Blazor/wwwroot/icons/sortby.damage.scale-200.png new file mode 100644 index 0000000..c3925cf Binary files /dev/null and b/WotBlitzStatisticsPro.Blazor/wwwroot/icons/sortby.damage.scale-200.png differ diff --git a/WotBlitzStatisticsPro.Blazor/wwwroot/icons/sortby.scale-200.png b/WotBlitzStatisticsPro.Blazor/wwwroot/icons/sortby.scale-200.png new file mode 100644 index 0000000..c3b118d Binary files /dev/null and b/WotBlitzStatisticsPro.Blazor/wwwroot/icons/sortby.scale-200.png differ diff --git a/WotBlitzStatisticsPro.Blazor/wwwroot/icons/sortby.scale-ascending-200.png b/WotBlitzStatisticsPro.Blazor/wwwroot/icons/sortby.scale-ascending-200.png new file mode 100644 index 0000000..c530456 Binary files /dev/null and b/WotBlitzStatisticsPro.Blazor/wwwroot/icons/sortby.scale-ascending-200.png differ diff --git a/WotBlitzStatisticsPro.Blazor/wwwroot/icons/sortby.vehicle.level.scale-200.png b/WotBlitzStatisticsPro.Blazor/wwwroot/icons/sortby.vehicle.level.scale-200.png new file mode 100644 index 0000000..7d98e50 Binary files /dev/null and b/WotBlitzStatisticsPro.Blazor/wwwroot/icons/sortby.vehicle.level.scale-200.png differ diff --git a/WotBlitzStatisticsPro.Blazor/wwwroot/icons/sortby.wins.scale-200.png b/WotBlitzStatisticsPro.Blazor/wwwroot/icons/sortby.wins.scale-200.png new file mode 100644 index 0000000..a729a86 Binary files /dev/null and b/WotBlitzStatisticsPro.Blazor/wwwroot/icons/sortby.wins.scale-200.png differ diff --git a/WotBlitzStatisticsPro.Blazor/wwwroot/icons/vehicle.filter.class.premium.scale-200.png b/WotBlitzStatisticsPro.Blazor/wwwroot/icons/vehicle.filter.class.premium.scale-200.png new file mode 100644 index 0000000..3bb40a1 Binary files /dev/null and b/WotBlitzStatisticsPro.Blazor/wwwroot/icons/vehicle.filter.class.premium.scale-200.png differ