Compare commits

...
4 Commits
12 changed files with 229 additions and 112 deletions

No files matched your search

@@ -24,6 +24,7 @@ namespace WotBlitzStatisticsPro.Blazor.Tests.Services
private Mock<IWargamingOpenIdMutation> _wagamingOpenIdMutation;
private Mock<IWargamingOpenIdAuthenticationMutation> _wargamingOpenIdAuthenticationMutationMock;
private Mock<IWargamingPlayersMutation> _wargamingPlayersMutation;
private Mock<IDictionaryQuery> _dictionaryQuery;
private WotBlitzStatisticsProClient _generatedClient;
private Mock<INotificationsService> _notificationServiceMock;
@@ -71,7 +72,8 @@ namespace WotBlitzStatisticsPro.Blazor.Tests.Services
_playerQueryMock.Object,
_wargamingOpenIdAuthenticationMutationMock.Object,
_wargamingPlayersMutation.Object,
_updatePlayerMutationMock.Object);
_updatePlayerMutationMock.Object,
_dictionaryQuery.Object);
_notificationServiceMock = new();
@@ -15,15 +15,15 @@ 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::StrawberryShake.IOperationStore>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<ClientServiceProvider>(sp)), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IEntityStore>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<ClientServiceProvider>(sp)), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IEntityIdSerializer>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<ClientServiceProvider>(sp)), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::System.Collections.Generic.IEnumerable<global::StrawberryShake.IOperationRequestFactory>>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<ClientServiceProvider>(sp)), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::System.Collections.Generic.IEnumerable<global::StrawberryShake.IOperationResultDataFactory>>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<ClientServiceProvider>(sp))));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.UpdatePlayerMutation>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<ClientServiceProvider>(sp)));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.FindPlayersQuery>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<ClientServiceProvider>(sp)));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.WargamingAuthenticationQueryQuery>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<ClientServiceProvider>(sp)));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.WargamingPlayersMutation>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<ClientServiceProvider>(sp)));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.WargamingAuthenticationQueryQuery>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<ClientServiceProvider>(sp)));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.FindClansQuery>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<ClientServiceProvider>(sp)));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.WargamingOpenIdAuthenticationMutation>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<ClientServiceProvider>(sp)));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.DictionaryQuery>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<ClientServiceProvider>(sp)));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.WargamingOpenIdMutation>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<ClientServiceProvider>(sp)));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.FindClansQuery>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<ClientServiceProvider>(sp)));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.PlayerQuery>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<ClientServiceProvider>(sp)));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.UpdatePlayerMutation>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<ClientServiceProvider>(sp)));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.WargamingOpenIdMutation>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<ClientServiceProvider>(sp)));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.WotBlitzStatisticsProClient>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<ClientServiceProvider>(sp)));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWotBlitzStatisticsProClient>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<ClientServiceProvider>(sp)));
return new global::StrawberryShake.ClientBuilder<global::WotBlitzStatisticsPro.Blazor.GraphQl.State.WotBlitzStatisticsProClientStoreAccessor>("WotBlitzStatisticsProClient", services, serviceCollection);
@@ -58,6 +58,13 @@ namespace Microsoft.Extensions.DependencyInjection
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.Serialization.ISerializer, global::StrawberryShake.Serialization.ByteArraySerializer>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.Serialization.ISerializer, global::StrawberryShake.Serialization.TimeSpanSerializer>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.Serialization.ISerializerResolver>(services, sp => new global::StrawberryShake.Serialization.SerializerResolver(global::System.Linq.Enumerable.Concat(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::System.Collections.Generic.IEnumerable<global::StrawberryShake.Serialization.ISerializer>>(parentServices), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::System.Collections.Generic.IEnumerable<global::StrawberryShake.Serialization.ISerializer>>(sp))));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultDataFactory<global::WotBlitzStatisticsPro.Blazor.GraphQl.IUpdatePlayerResult>, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.UpdatePlayerResultFactory>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultDataFactory>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationResultDataFactory<global::WotBlitzStatisticsPro.Blazor.GraphQl.IUpdatePlayerResult>>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationRequestFactory>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.IUpdatePlayerMutation>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultBuilder<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IUpdatePlayerResult>, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.UpdatePlayerBuilder>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationExecutor<global::WotBlitzStatisticsPro.Blazor.GraphQl.IUpdatePlayerResult>>(services, sp => new global::StrawberryShake.OperationExecutor<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IUpdatePlayerResult>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.Transport.Http.IHttpConnection>(sp), () => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationResultBuilder<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IUpdatePlayerResult>>(sp), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationStore>(sp), strategy));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::WotBlitzStatisticsPro.Blazor.GraphQl.UpdatePlayerMutation>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::WotBlitzStatisticsPro.Blazor.GraphQl.IUpdatePlayerMutation>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.UpdatePlayerMutation>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultDataFactory<global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindPlayersResult>, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.FindPlayersResultFactory>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultDataFactory>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationResultDataFactory<global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindPlayersResult>>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationRequestFactory>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindPlayersQuery>(sp));
@@ -65,13 +72,6 @@ namespace Microsoft.Extensions.DependencyInjection
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationExecutor<global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindPlayersResult>>(services, sp => new global::StrawberryShake.OperationExecutor<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindPlayersResult>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.Transport.Http.IHttpConnection>(sp), () => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationResultBuilder<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindPlayersResult>>(sp), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationStore>(sp), strategy));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::WotBlitzStatisticsPro.Blazor.GraphQl.FindPlayersQuery>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindPlayersQuery>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.FindPlayersQuery>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultDataFactory<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryResult>, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.WargamingAuthenticationQueryResultFactory>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultDataFactory>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationResultDataFactory<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryResult>>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationRequestFactory>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryQuery>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultBuilder<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryResult>, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.WargamingAuthenticationQueryBuilder>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationExecutor<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryResult>>(services, sp => new global::StrawberryShake.OperationExecutor<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryResult>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.Transport.Http.IHttpConnection>(sp), () => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationResultBuilder<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryResult>>(sp), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationStore>(sp), strategy));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::WotBlitzStatisticsPro.Blazor.GraphQl.WargamingAuthenticationQueryQuery>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryQuery>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.WargamingAuthenticationQueryQuery>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultDataFactory<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingPlayersResult>, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.WargamingPlayersResultFactory>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultDataFactory>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationResultDataFactory<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingPlayersResult>>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationRequestFactory>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingPlayersMutation>(sp));
@@ -79,6 +79,20 @@ namespace Microsoft.Extensions.DependencyInjection
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationExecutor<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingPlayersResult>>(services, sp => new global::StrawberryShake.OperationExecutor<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingPlayersResult>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.Transport.Http.IHttpConnection>(sp), () => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationResultBuilder<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingPlayersResult>>(sp), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationStore>(sp), strategy));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::WotBlitzStatisticsPro.Blazor.GraphQl.WargamingPlayersMutation>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingPlayersMutation>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.WargamingPlayersMutation>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultDataFactory<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryResult>, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.WargamingAuthenticationQueryResultFactory>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultDataFactory>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationResultDataFactory<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryResult>>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationRequestFactory>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryQuery>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultBuilder<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryResult>, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.WargamingAuthenticationQueryBuilder>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationExecutor<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryResult>>(services, sp => new global::StrawberryShake.OperationExecutor<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryResult>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.Transport.Http.IHttpConnection>(sp), () => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationResultBuilder<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryResult>>(sp), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationStore>(sp), strategy));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::WotBlitzStatisticsPro.Blazor.GraphQl.WargamingAuthenticationQueryQuery>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryQuery>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.WargamingAuthenticationQueryQuery>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultDataFactory<global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansResult>, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.FindClansResultFactory>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultDataFactory>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationResultDataFactory<global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansResult>>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationRequestFactory>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansQuery>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultBuilder<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansResult>, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.FindClansBuilder>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationExecutor<global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansResult>>(services, sp => new global::StrawberryShake.OperationExecutor<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansResult>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.Transport.Http.IHttpConnection>(sp), () => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationResultBuilder<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansResult>>(sp), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationStore>(sp), strategy));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::WotBlitzStatisticsPro.Blazor.GraphQl.FindClansQuery>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansQuery>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.FindClansQuery>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultDataFactory<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdAuthenticationResult>, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.WargamingOpenIdAuthenticationResultFactory>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultDataFactory>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationResultDataFactory<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdAuthenticationResult>>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationRequestFactory>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdAuthenticationMutation>(sp));
@@ -93,20 +107,6 @@ namespace Microsoft.Extensions.DependencyInjection
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationExecutor<global::WotBlitzStatisticsPro.Blazor.GraphQl.IDictionaryResult>>(services, sp => new global::StrawberryShake.OperationExecutor<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IDictionaryResult>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.Transport.Http.IHttpConnection>(sp), () => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationResultBuilder<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IDictionaryResult>>(sp), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationStore>(sp), strategy));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::WotBlitzStatisticsPro.Blazor.GraphQl.DictionaryQuery>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::WotBlitzStatisticsPro.Blazor.GraphQl.IDictionaryQuery>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.DictionaryQuery>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultDataFactory<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdResult>, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.WargamingOpenIdResultFactory>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultDataFactory>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationResultDataFactory<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdResult>>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationRequestFactory>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdMutation>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultBuilder<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdResult>, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.WargamingOpenIdBuilder>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationExecutor<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdResult>>(services, sp => new global::StrawberryShake.OperationExecutor<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdResult>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.Transport.Http.IHttpConnection>(sp), () => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationResultBuilder<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdResult>>(sp), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationStore>(sp), strategy));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::WotBlitzStatisticsPro.Blazor.GraphQl.WargamingOpenIdMutation>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdMutation>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.WargamingOpenIdMutation>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultDataFactory<global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansResult>, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.FindClansResultFactory>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultDataFactory>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationResultDataFactory<global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansResult>>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationRequestFactory>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansQuery>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultBuilder<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansResult>, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.FindClansBuilder>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationExecutor<global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansResult>>(services, sp => new global::StrawberryShake.OperationExecutor<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansResult>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.Transport.Http.IHttpConnection>(sp), () => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationResultBuilder<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansResult>>(sp), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationStore>(sp), strategy));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::WotBlitzStatisticsPro.Blazor.GraphQl.FindClansQuery>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansQuery>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.FindClansQuery>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultDataFactory<global::WotBlitzStatisticsPro.Blazor.GraphQl.IPlayerResult>, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.PlayerResultFactory>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultDataFactory>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationResultDataFactory<global::WotBlitzStatisticsPro.Blazor.GraphQl.IPlayerResult>>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationRequestFactory>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.IPlayerQuery>(sp));
@@ -114,13 +114,13 @@ namespace Microsoft.Extensions.DependencyInjection
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationExecutor<global::WotBlitzStatisticsPro.Blazor.GraphQl.IPlayerResult>>(services, sp => new global::StrawberryShake.OperationExecutor<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IPlayerResult>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.Transport.Http.IHttpConnection>(sp), () => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationResultBuilder<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IPlayerResult>>(sp), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationStore>(sp), strategy));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::WotBlitzStatisticsPro.Blazor.GraphQl.PlayerQuery>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::WotBlitzStatisticsPro.Blazor.GraphQl.IPlayerQuery>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.PlayerQuery>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultDataFactory<global::WotBlitzStatisticsPro.Blazor.GraphQl.IUpdatePlayerResult>, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.UpdatePlayerResultFactory>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultDataFactory>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationResultDataFactory<global::WotBlitzStatisticsPro.Blazor.GraphQl.IUpdatePlayerResult>>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationRequestFactory>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.IUpdatePlayerMutation>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultBuilder<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IUpdatePlayerResult>, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.UpdatePlayerBuilder>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationExecutor<global::WotBlitzStatisticsPro.Blazor.GraphQl.IUpdatePlayerResult>>(services, sp => new global::StrawberryShake.OperationExecutor<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IUpdatePlayerResult>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.Transport.Http.IHttpConnection>(sp), () => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationResultBuilder<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IUpdatePlayerResult>>(sp), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationStore>(sp), strategy));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::WotBlitzStatisticsPro.Blazor.GraphQl.UpdatePlayerMutation>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::WotBlitzStatisticsPro.Blazor.GraphQl.IUpdatePlayerMutation>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.UpdatePlayerMutation>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultDataFactory<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdResult>, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.WargamingOpenIdResultFactory>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultDataFactory>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationResultDataFactory<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdResult>>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationRequestFactory>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdMutation>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationResultBuilder<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdResult>, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.WargamingOpenIdBuilder>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IOperationExecutor<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdResult>>(services, sp => new global::StrawberryShake.OperationExecutor<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdResult>(global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.Transport.Http.IHttpConnection>(sp), () => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationResultBuilder<global::System.Text.Json.JsonDocument, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdResult>>(sp), global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::StrawberryShake.IOperationStore>(sp), strategy));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::WotBlitzStatisticsPro.Blazor.GraphQl.WargamingOpenIdMutation>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdMutation>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.WargamingOpenIdMutation>(sp));
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::StrawberryShake.IEntityIdSerializer, global::WotBlitzStatisticsPro.Blazor.GraphQl.State.WotBlitzStatisticsProClientEntityIdFactory>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::WotBlitzStatisticsPro.Blazor.GraphQl.WotBlitzStatisticsProClient>(services);
global::Microsoft.Extensions.DependencyInjection.ServiceCollectionServiceExtensions.AddSingleton<global::WotBlitzStatisticsPro.Blazor.GraphQl.IWotBlitzStatisticsProClient>(services, sp => global::Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService<global::WotBlitzStatisticsPro.Blazor.GraphQl.WotBlitzStatisticsProClient>(sp));
@@ -9,22 +9,22 @@ namespace WotBlitzStatisticsPro.Blazor.GraphQl
[global::System.CodeDom.Compiler.GeneratedCode("StrawberryShake", "11.2.2.0")]
public interface IWotBlitzStatisticsProClient
{
global::WotBlitzStatisticsPro.Blazor.GraphQl.IUpdatePlayerMutation UpdatePlayer { get; }
global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindPlayersQuery FindPlayers { get; }
global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingPlayersMutation WargamingPlayers { get; }
global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryQuery WargamingAuthenticationQuery { get; }
global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingPlayersMutation WargamingPlayers { get; }
global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansQuery FindClans { get; }
global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdAuthenticationMutation WargamingOpenIdAuthentication { get; }
global::WotBlitzStatisticsPro.Blazor.GraphQl.IDictionaryQuery Dictionary { 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.IWargamingOpenIdMutation WargamingOpenId { get; }
}
}
@@ -9,37 +9,37 @@ 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.IUpdatePlayerMutation _updatePlayer;
private readonly global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindPlayersQuery _findPlayers;
private readonly global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryQuery _wargamingAuthenticationQuery;
private readonly global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingPlayersMutation _wargamingPlayers;
private readonly global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryQuery _wargamingAuthenticationQuery;
private readonly global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansQuery _findClans;
private readonly global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdAuthenticationMutation _wargamingOpenIdAuthentication;
private readonly global::WotBlitzStatisticsPro.Blazor.GraphQl.IDictionaryQuery _dictionary;
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.IFindPlayersQuery findPlayers, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryQuery wargamingAuthenticationQuery, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingPlayersMutation wargamingPlayers, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdAuthenticationMutation wargamingOpenIdAuthentication, global::WotBlitzStatisticsPro.Blazor.GraphQl.IDictionaryQuery dictionary, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdMutation wargamingOpenId, global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansQuery findClans, global::WotBlitzStatisticsPro.Blazor.GraphQl.IPlayerQuery player, global::WotBlitzStatisticsPro.Blazor.GraphQl.IUpdatePlayerMutation updatePlayer)
private readonly global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdMutation _wargamingOpenId;
public WotBlitzStatisticsProClient(global::WotBlitzStatisticsPro.Blazor.GraphQl.IUpdatePlayerMutation updatePlayer, global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindPlayersQuery findPlayers, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingPlayersMutation wargamingPlayers, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryQuery wargamingAuthenticationQuery, global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansQuery findClans, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdAuthenticationMutation wargamingOpenIdAuthentication, global::WotBlitzStatisticsPro.Blazor.GraphQl.IDictionaryQuery dictionary, global::WotBlitzStatisticsPro.Blazor.GraphQl.IPlayerQuery player, global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdMutation wargamingOpenId)
{
_updatePlayer = updatePlayer ?? throw new global::System.ArgumentNullException(nameof(updatePlayer));
_findPlayers = findPlayers ?? throw new global::System.ArgumentNullException(nameof(findPlayers));
_wargamingAuthenticationQuery = wargamingAuthenticationQuery ?? throw new global::System.ArgumentNullException(nameof(wargamingAuthenticationQuery));
_wargamingPlayers = wargamingPlayers ?? throw new global::System.ArgumentNullException(nameof(wargamingPlayers));
_wargamingAuthenticationQuery = wargamingAuthenticationQuery ?? throw new global::System.ArgumentNullException(nameof(wargamingAuthenticationQuery));
_findClans = findClans ?? throw new global::System.ArgumentNullException(nameof(findClans));
_wargamingOpenIdAuthentication = wargamingOpenIdAuthentication ?? throw new global::System.ArgumentNullException(nameof(wargamingOpenIdAuthentication));
_dictionary = dictionary ?? throw new global::System.ArgumentNullException(nameof(dictionary));
_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));
_wargamingOpenId = wargamingOpenId ?? throw new global::System.ArgumentNullException(nameof(wargamingOpenId));
}
public static global::System.String ClientName => "WotBlitzStatisticsProClient";
public global::WotBlitzStatisticsPro.Blazor.GraphQl.IUpdatePlayerMutation UpdatePlayer => _updatePlayer;
public global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindPlayersQuery FindPlayers => _findPlayers;
public global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryQuery WargamingAuthenticationQuery => _wargamingAuthenticationQuery;
public global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingPlayersMutation WargamingPlayers => _wargamingPlayers;
public global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingAuthenticationQueryQuery WargamingAuthenticationQuery => _wargamingAuthenticationQuery;
public global::WotBlitzStatisticsPro.Blazor.GraphQl.IFindClansQuery FindClans => _findClans;
public global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdAuthenticationMutation WargamingOpenIdAuthentication => _wargamingOpenIdAuthentication;
public global::WotBlitzStatisticsPro.Blazor.GraphQl.IDictionaryQuery Dictionary => _dictionary;
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.IWargamingOpenIdMutation WargamingOpenId => _wargamingOpenId;
}
}
@@ -0,0 +1,16 @@
using Newtonsoft.Json.Linq;
namespace WotBlitzStatisticsPro.Blazor.Helpers
{
public static class JTokenHelper
{
public static bool IsNullOrEmpty(this JToken token)
{
return (token == null) ||
(token.Type == JTokenType.Array && !token.HasValues) ||
(token.Type == JTokenType.Object && !token.HasValues) ||
(token.Type == JTokenType.String && token.ToString() == string.Empty) ||
(token.Type == JTokenType.Null);
}
}
}
@@ -28,14 +28,19 @@ namespace WotBlitzStatisticsPro.Blazor.Pages
[Inject]
public ISvgHelper SvgHelper { get; set; }
[Inject]
public IGraphQlBackendService GraphQlBackendService { get; set; }
[Inject]
public INotificationsService Notifications { get; set; }
public IReadOnlyList<IDictionary_Vehicles> VehiclesLibrary { get; set; }
public int FrameHeigth { get; set; }
public int CardWidth { get; } = 200;
public int CardHeigth { get; } = 120;
//[Obsolete("Just temporary. In the future, add this into tankTree DTO")]
//public ElementDimensions[] BattlesTextSize { get; set; }
public string FrameStyle
{
get
@@ -46,22 +51,20 @@ namespace WotBlitzStatisticsPro.Blazor.Pages
protected async override Task OnInitializedAsync()
{
//var screenWidth = await MediaQueriesService.WindowWidth();
var screenHeight = await MediaQueriesService.WindowHeight();
//FrameWidth = Convert.ToInt32(((decimal)screenWidth) * 0.94m);
FrameHeigth = screenHeight - 390;
// TODO: This is temporary
//var dd = new List<ElementDimensions>();
//var tt = TanksList.ToArray();
//for (int i = 0; i < 3; i++)
//{
// var d = await SvgHelper.CalculateTextBlockSizeAsync(tt[i].Battles.ToString("N0"), "Segoe UI", 12);
// dd.Add(d);
//}
//BattlesTextSize = dd.ToArray();
//---
// TODO: Move it to the Nation selector handler
try
{
string nationId = "germany";
VehiclesLibrary = await GraphQlBackendService.GetVehiclesByNation(nationId);
}
catch (System.Exception e)
{
Notifications.ReportError("Can not get data from backend", e.Message);
}
FrameHeigth = screenHeight - 390;
}
public int GetTextWidth(string text, string fontFace, int fontSize)
+1 -1
View File
@@ -59,7 +59,7 @@ namespace WotBlitzStatisticsPro.Blazor
//}
//else
//{
//builder.Services.AddTransient<IGraphQlBackendService, GraphQlBackendService>();
// builder.Services.AddTransient<IGraphQlBackendService, GraphQlBackendService>();
//}
var host = builder.Build();
@@ -88,6 +88,13 @@ namespace WotBlitzStatisticsPro.Blazor.Services
CheckErrors(result.Errors);
}
public async Task<IReadOnlyList<IDictionary_Vehicles>> GetVehiclesByNation(string nationId)
{
var result = await _client.Dictionary.ExecuteAsync(nationId, GetLanguage());
CheckErrors(result.Errors);
return result.Data?.Vehicles;
}
private RequestLanguage GetLanguage()
{
var culture = CultureInfo.CurrentCulture;
@@ -33,5 +33,7 @@ namespace WotBlitzStatisticsPro.Blazor.Services
Task<string> Logout(
string token,
RealmType realmType);
Task<IReadOnlyList<IDictionary_Vehicles>> GetVehiclesByNation(string nationId);
}
}
@@ -6,6 +6,9 @@ using Bogus;
using Bogus.Extensions;
using WotBlitzStatisticsPro.Blazor.GraphQl;
using WotBlitzStatisticsPro.Blazor.Model;
using Newtonsoft.Json.Linq;
using System.Collections.ObjectModel;
using WotBlitzStatisticsPro.Blazor.Helpers;
namespace WotBlitzStatisticsPro.Blazor.Services.Mock
{
@@ -78,7 +81,6 @@ namespace WotBlitzStatisticsPro.Blazor.Services.Mock
public async Task<(IAccount accountInfo, IReadOnlyList<ISection> achievementsBySection)> GetPlayerInfo(long accountId, RealmType realmType)
{
var faker = new Faker(FakerLanguage(GetLanguage()));
var tanksCount = faker.Random.Number(10, 280);
var isClanInfo = faker.Random.Bool();
IPlayer_AccountInfo_ClanInfo clanInfo = null;
@@ -106,51 +108,95 @@ namespace WotBlitzStatisticsPro.Blazor.Services.Mock
);
}
var jObject = JObject.Parse(VehiclesMockData.TanksList);
var tankTokens = jObject["tanks"];
var tanks = new List<IPlayer_AccountInfo_Tanks>();
for (int i = 0; i < tanksCount; i++)
foreach (var tankToken in tankTokens)
{
var nation = GetRandomNation(faker, GetLanguage());
var vehicleType = GetRandomVehicleType(faker, GetLanguage());
tanks.Add(new Player_AccountInfo_Tanks_TankInfoResponse(
faker.Random.Long(100000, 999999),
faker.Random.Number(500),
faker.PickRandom<MarkOfMastery>(),
faker.Random.Decimal(0M, 7M),
faker.Name.LastName(),
nation.nation,
nation.nationName,
faker.Random.Number(1, 10),
vehicleType.vehicleType,
vehicleType.vehicleTypeName,
faker.Random.Bool(),
GetRandomPreviewImage(faker),
GetRandomLargeImage(faker),
faker.Date.Past(),
faker.Random.Long(1, 9999),
faker.Random.Long(1, 9999),
faker.Random.Long(1, 9999),
faker.Random.Long(1, 9999),
faker.Random.Long(1, 9999),
faker.Random.Long(1, 9999),
faker.Random.Long(1, 9999),
faker.Random.Long(1, 9999),
faker.Random.Long(1, 9999),
faker.Random.Long(1, 9999),
faker.Random.Long(1, 9999),
faker.Random.Long(1, 9999),
faker.Random.Long(1, 9999),
faker.Random.Long(1, 9999),
faker.Random.Long(1, 9999),
faker.Random.Long(1, 9999),
faker.Random.Long(1, 9999),
faker.Random.Double(500D, 2000D),
faker.Random.Decimal(20M, 95M),
faker.Random.Decimal(300M, 4000M),
faker.Random.Decimal(100M, 2000M),
faker.Random.Decimal(0M, 3M),
faker.Random.Decimal(5M, 95M)
tankToken["TankId"].Value<long>(),
tankToken["BattleLifeTimeInSeconds"].IsNullOrEmpty() ? 0 : tankToken["BattleLifeTimeInSeconds"].Value<int>(),
tankToken["MarkOfMastery"].IsNullOrEmpty() ? MarkOfMastery.None : (MarkOfMastery)tankToken["MarkOfMastery"].Value<int>(),
tankToken["AvgBattleLifeTimeInMinutes"].IsNullOrEmpty() ? 0M : tankToken["AvgBattleLifeTimeInMinutes"].Value<decimal>(),
tankToken["Name"].IsNullOrEmpty() ? string.Empty : tankToken["Name"].Value<string>(),
tankToken["TankNationId"].IsNullOrEmpty() ? string.Empty : tankToken["TankNationId"].Value<string>(),
tankToken["TankNation"].IsNullOrEmpty() ? string.Empty : tankToken["TankNation"].Value<string>(),
tankToken["Tier"].IsNullOrEmpty() ? 0 : tankToken["Tier"].Value<int>(),
tankToken["TankTypeId"].IsNullOrEmpty() ? string.Empty : tankToken["TankTypeId"].Value<string>(),
tankToken["TankType"].IsNullOrEmpty() ? string.Empty : tankToken["TankType"].Value<string>(),
tankToken["IsPremium"].IsNullOrEmpty() ? false : tankToken["IsPremium"].Value<bool>(),
tankToken["PreviewImage"].IsNullOrEmpty() ? string.Empty : tankToken["PreviewImage"].Value<string>(),
tankToken["NormalImage"].IsNullOrEmpty() ? string.Empty : tankToken["NormalImage"].Value<string>(),
tankToken["LastBattleTime"].IsNullOrEmpty() ? DateTime.MinValue : tankToken["LastBattleTime"].Value<DateTime>(),
tankToken["Battles"].IsNullOrEmpty() ? 0 : tankToken["Battles"].Value<long>(),
tankToken["CapturePoints"].IsNullOrEmpty() ? 0 : tankToken["CapturePoints"].Value<long>(),
tankToken["DamageDealt"].IsNullOrEmpty() ? 0 : tankToken["DamageDealt"].Value<long>(),
tankToken["DamageReceived"].IsNullOrEmpty() ? 0 : tankToken["DamageReceived"].Value<long>(),
tankToken["DroppedCapturePoints"].IsNullOrEmpty() ? 0 : tankToken["DroppedCapturePoints"].Value<long>(),
tankToken["Frags"].IsNullOrEmpty() ? 0 : tankToken["Frags"].Value<long>(),
tankToken["Frags8P"].IsNullOrEmpty() ? 0 : tankToken["Frags8P"].Value<long>(),
tankToken["Hits"].IsNullOrEmpty() ? 0 : tankToken["Hits"].Value<long>(),
tankToken["Losses"].IsNullOrEmpty() ? 0 : tankToken["Losses"].Value<long>(),
tankToken["MaxFrags"].IsNullOrEmpty() ? 0 : tankToken["MaxFrags"].Value<long>(),
tankToken["MaxXp"].IsNullOrEmpty() ? 0 : tankToken["MaxXp"].Value<long>(),
tankToken["Shots"].IsNullOrEmpty() ? 0 : tankToken["Shots"].Value<long>(),
tankToken["Spotted"].IsNullOrEmpty() ? 0 : tankToken["Spotted"].Value<long>(),
tankToken["SurvivedBattles"].IsNullOrEmpty() ? 0 : tankToken["SurvivedBattles"].Value<long>(),
tankToken["WinAndSurvived"].IsNullOrEmpty() ? 0 : tankToken["WinAndSurvived"].Value<long>(),
tankToken["Wins"].IsNullOrEmpty() ? 0 : tankToken["Wins"].Value<long>(),
tankToken["Xp"].IsNullOrEmpty() ? 0 : tankToken["Xp"].Value<long>(),
tankToken["Wn7"].IsNullOrEmpty() ? 0 : tankToken["Wn7"].Value<double>(),
tankToken["WinRate"].IsNullOrEmpty() ? 0M : tankToken["WinRate"].Value<decimal>(),
tankToken["AvgDamage"].IsNullOrEmpty() ? 0M : tankToken["AvgDamage"].Value<decimal>(),
tankToken["AvgXp"].IsNullOrEmpty() ? 0M : tankToken["AvgXp"].Value<decimal>(),
tankToken["DamageCoefficient"].IsNullOrEmpty() ? 0M : tankToken["DamageCoefficient"].Value<decimal>(),
tankToken["SurvivalRate"].IsNullOrEmpty() ? 0M : tankToken["SurvivalRate"].Value<decimal>()
));
}
// for (int i = 0; i < tanksCount; i++)
// {
// var nation = GetRandomNation(faker, GetLanguage());
// var vehicleType = GetRandomVehicleType(faker, GetLanguage());
// tanks.Add(new Player_AccountInfo_Tanks_TankInfoResponse(
// faker.Random.Long(100000, 999999),
// faker.Random.Number(500),
// faker.PickRandom<MarkOfMastery>(),
// faker.Random.Decimal(0M, 7M),
// faker.Name.LastName(),
// nation.nation,
// nation.nationName,
// faker.Random.Number(1, 10),
// vehicleType.vehicleType,
// vehicleType.vehicleTypeName,
// faker.Random.Bool(),
// GetRandomPreviewImage(faker),
// GetRandomLargeImage(faker),
// faker.Date.Past(),
// faker.Random.Long(1, 9999),
// faker.Random.Long(1, 9999),
// faker.Random.Long(1, 9999),
// faker.Random.Long(1, 9999),
// faker.Random.Long(1, 9999),
// faker.Random.Long(1, 9999),
// faker.Random.Long(1, 9999),
// faker.Random.Long(1, 9999),
// faker.Random.Long(1, 9999),
// faker.Random.Long(1, 9999),
// faker.Random.Long(1, 9999),
// faker.Random.Long(1, 9999),
// faker.Random.Long(1, 9999),
// faker.Random.Long(1, 9999),
// faker.Random.Long(1, 9999),
// faker.Random.Long(1, 9999),
// faker.Random.Long(1, 9999),
// faker.Random.Double(500D, 2000D),
// faker.Random.Decimal(20M, 95M),
// faker.Random.Decimal(300M, 4000M),
// faker.Random.Decimal(100M, 2000M),
// faker.Random.Decimal(0M, 3M),
// faker.Random.Decimal(5M, 95M)
// ));
// }
if (_needToWait)
{
@@ -408,5 +454,34 @@ namespace WotBlitzStatisticsPro.Blazor.Services.Mock
{
return Task.FromResult("Fake logout");
}
public Task<IReadOnlyList<IDictionary_Vehicles>> GetVehiclesByNation(string nationId)
{
var jObject = JObject.Parse(VehiclesMockData.VehiclesDictionary);
var vehicleTokens = jObject["vehicles"];
var result = new List<IDictionary_Vehicles>();
foreach (var vehicleObject in vehicleTokens)
{
var nextTanks = new List<long>();
foreach (var next in vehicleObject["NexTanksInTree"])
{
nextTanks.Add(next.Value<long>());
}
result.Add(new Dictionary_Vehicles_VehicleResponse(
vehicleObject["TankId"].Value<long>(),
vehicleObject["Name"].Value<string>(),
vehicleObject["Description"].Value<string>(),
vehicleObject["IsPremium"].Value<bool>(),
vehicleObject["TypeId"].Value<string>(),
vehicleObject["NationId"].Value<string>(),
vehicleObject["Tier"].Value<int>(),
vehicleObject["PreviewImage"].Value<string>(),
vehicleObject["NormalImage"].Value<string>(),
vehicleObject["PriceCredit"].Value<decimal>(),
vehicleObject["PriceGold"].Value<decimal>(),
nextTanks.AsReadOnly()
));
}
return Task.FromResult((IReadOnlyList<IDictionary_Vehicles>)result.AsReadOnly());
}
}
}
@@ -0,0 +1,9 @@
namespace WotBlitzStatisticsPro.Blazor.Services.Mock
{
public static class VehiclesMockData
{
public static string VehiclesDictionary = @"{""vehicles"": [{""TankId"":16401,""Name"":""Waffentr\u00E4ger auf Pz. IV"",""Description"":""Tank destroyer developed in February 1944 on the basis of the PzIV tank. Development was discontinued in favor of a similar vehicle on the basis of the Krupp Waffentrager 12.8 cm PaK 44 of Czech origin. Existed only in blueprints."",""IsPremium"":false,""TypeId"":""AT-SPG"",""NationId"":""germany"",""Tier"":9,""PreviewImage"":""http://glossary-eu-static.gcdn.co/icons/wotb/current/uploaded/vehicles/hd_thumbnail/Waffentrager_IV.png"",""NormalImage"":""http://glossary-eu-static.gcdn.co/icons/wotb/current/uploaded/vehicles/hd/Waffentrager_IV.png"",""PriceCredit"":3400000,""PriceGold"":0,""NexTanksInTree"":[19217]},{""TankId"":1297,""Name"":""Panther I"",""Description"":""This famous tank was produced from January 1943 through April 1945, with a total of 5,796 vehicles built plus eight vehicles built on the F series chassis."",""IsPremium"":false,""TypeId"":""mediumTank"",""NationId"":""germany"",""Tier"":7,""PreviewImage"":""http://glossary-eu-static.gcdn.co/icons/wotb/current/uploaded/vehicles/hd_thumbnail/PzV.png"",""NormalImage"":""http://glossary-eu-static.gcdn.co/icons/wotb/current/uploaded/vehicles/hd/PzV.png"",""PriceCredit"":1380000,""PriceGold"":0,""NexTanksInTree"":[5137,8465]},{""TankId"":52497,""Name"":""Pz.Kpfw. 38H 735 (f)"",""Description"":""In May 1940 the French Army had more than 800 vehicles of this type, most of which were captured by the German forces. They were widely used by the Wehrmacht to supplement existing armor."",""IsPremium"":true,""TypeId"":""lightTank"",""NationId"":""germany"",""Tier"":2,""PreviewImage"":""http://glossary-eu-static.gcdn.co/icons/wotb/current/uploaded/vehicles/hd_thumbnail/H39_captured.png"",""NormalImage"":""http://glossary-eu-static.gcdn.co/icons/wotb/current/uploaded/vehicles/hd/H39_captured.png"",""PriceCredit"":0,""PriceGold"":750,""NexTanksInTree"":[]},{""TankId"":18961,""Name"":""Sp\u00E4hpanzer SP I C"",""Description"":""The reconnaissance tank destroyer was being developed by Hotchkiss and Kl\u00F6ckner-Humboldt-Deutz companies from 1956 through 1962 in order to increase the anti-tank capability of recon tank battalions. A 90-mm anti-tank gun was planned to be mounted on the new vehicle. The project was eventually declined. The number of prototypes built is unknown."",""IsPremium"":false,""TypeId"":""lightTank"",""NationId"":""germany"",""Tier"":7,""PreviewImage"":""http://glossary-eu-static.gcdn.co/icons/wotb/current/uploaded/vehicles/hd_thumbnail/G113_SP_I_C.png"",""NormalImage"":""http://glossary-eu-static.gcdn.co/icons/wotb/current/uploaded/vehicles/hd/G113_SP_I_C.png"",""PriceCredit"":1360000,""PriceGold"":0,""NexTanksInTree"":[13841,18449]},{""TankId"":52241,""Name"":""Pz.Kpfw. B2 740 (f)"",""Description"":""During the European campaign, German troops captured 161 heavy B1 bis tanks that later received the Pz.Kpfw. B2 740 (f) designation. All vehicles were upgraded and received German radio equipment and twofold hatches on commander\u0027s cupolas. Some vehicles with dismantled armament were used for training purposes, and 16 vehicles were transformed into self-propelled howitzers. Most vehicles were converted into flame throwing tanks."",""IsPremium"":true,""TypeId"":""heavyTank"",""NationId"":""germany"",""Tier"":4,""PreviewImage"":""http://glossary-eu-static.gcdn.co/icons/wotb/current/uploaded/vehicles/hd_thumbnail/B-1bis_captured.png"",""NormalImage"":""http://glossary-eu-static.gcdn.co/icons/wotb/current/uploaded/vehicles/hd/B-1bis_captured.png"",""PriceCredit"":0,""PriceGold"":1500,""NexTanksInTree"":[]},{""TankId"":7185,""Name"":""VK 30.01 (P)"",""Description"":""The Porsche company developed the concept of a new vehicle in 1939. On March 5, 1941, after numerous approvals, the company prepared blueprints and, in July 1941, produced the hull from mild steel. The hull and chassis (with detachable equipment for trenching) passed performance trials. One wooden prototype of the turret and one wooden prototype of the hull were manufactured. In 1942, the project was discontinued in favor of new heavy tanks."",""IsPremium"":false,""TypeId"":""mediumTank"",""NationId"":""germany"",""Tier"":6,""PreviewImage"":""http://glossary-eu-static.gcdn.co/icons/wotb/current/uploaded/vehicles/hd_thumbnail/VK3001P.png"",""NormalImage"":""http://glossary-eu-static.gcdn.co/icons/wotb/current/uploaded/vehicles/hd/VK3001P.png"",""PriceCredit"":920000,""PriceGold"":0,""NexTanksInTree"":[10769]},{""TankId"":19985,""Name"":""Skorpion G"",""Description"":""Development of the second series of self-propelled guns on the basis of the Panther tank was started by the Rheinmetall company in January 1943. The design plans for the 12,8 cm Skorpion were completed on April 2, 1943. Existed only in blueprints."",""IsPremium"":true,""TypeId"":""AT-SPG"",""NationId"":""germany"",""Tier"":8,""PreviewImage"":""http://glossary-eu-static.gcdn. Line truncated
public static string TanksList = @"{""tanks"": [{""TankId"":9297,""BattleLifeTimeInSeconds"":1022,""MarkOfMastery"":2,""AvgBattleLifeTimeInMinutes"":2.4333333333333333333333333333,""Name"":""FV215b (183)"",""TankNationId"":""uk"",""TankNation"":""U.K."",""Tier"":10,""TankTypeId"":""AT-SPG"",""TankType"":""Tank Destroyer"",""IsPremium"":false,""PreviewImage"":""http://glossary-eu-static.gcdn.co/icons/wotb/current/uploaded/vehicles/hd_thumbnail/GB48_FV215b_183.png"",""NormalImage"":""http://glossary-eu-static.gcdn.co/icons/wotb/current/uploaded/vehicles/hd/GB48_FV215b_183.png"",""LastBattleTime"":""2022-06-21T16:08:18+02:00"",""Battles"":7,""CapturePoints"":0,""DamageDealt"":9646,""DamageReceived"":11413,""DroppedCapturePoints"":0,""Frags"":4,""Frags8P"":4,""Hits"":14,""Losses"":3,""MaxFrags"":4,""MaxXp"":1173,""Shots"":20,""Spotted"":8,""SurvivedBattles"":1,""WinAndSurvived"":1,""Wins"":4,""Xp"":9844,""Wn7"":897.7777739964606,""WinRate"":57.142857142857142857142857143,""AvgDamage"":1378,""AvgXp"":1406.2857142857142857142857143,""DamageCoefficient"":0.8451765530535354420397791992,""SurvivalRate"":14.285714285714285714285714286},{""TankId"":9217,""BattleLifeTimeInSeconds"":79623,""MarkOfMastery"":4,""AvgBattleLifeTimeInMinutes"":2.8416488222698072805139186296,""Name"":""IS-6"",""TankNationId"":""ussr"",""TankNation"":""U.S.S.R."",""Tier"":8,""TankTypeId"":""heavyTank"",""TankType"":""Heavy Tank"",""IsPremium"":true,""PreviewImage"":""http://glossary-eu-static.gcdn.co/icons/wotb/current/uploaded/vehicles/hd_thumbnail/Object252.png"",""NormalImage"":""http://glossary-eu-static.gcdn.co/icons/wotb/current/uploaded/vehicles/hd/Object252.png"",""LastBattleTime"":""2021-06-21T10:18:11+02:00"",""Battles"":467,""CapturePoints"":176,""DamageDealt"":696508,""DamageReceived"":569047,""DroppedCapturePoints"":104,""Frags"":379,""Frags8P"":277,""Hits"":2313,""Losses"":203,""MaxFrags"":5,""MaxXp"":1780,""Shots"":2621,""Spotted"":583,""SurvivedBattles"":174,""WinAndSurvived"":172,""Wins"":261,""Xp"":355474,""Wn7"":1261.8411211530142,""WinRate"":55.888650963597430406852248394,""AvgDamage"":1491.4518201284796573875802998,""AvgXp"":761.18629550321199143468950749,""DamageCoefficient"":1.2239902855124444905253871824,""SurvivalRate"":37.259100642398286937901498929},{""TankId"":59905,""BattleLifeTimeInSeconds"":134227,""MarkOfMastery"":4,""AvgBattleLifeTimeInMinutes"":2.6695902943516308671439936356,""Name"":""T-54 first prototype"",""TankNationId"":""ussr"",""TankNation"":""U.S.S.R."",""Tier"":8,""TankTypeId"":""mediumTank"",""TankType"":""Medium Tank"",""IsPremium"":true,""PreviewImage"":""http://glossary-eu-static.gcdn.co/icons/wotb/current/uploaded/vehicles/hd_thumbnail/R112_T54_45.png"",""NormalImage"":""http://glossary-eu-static.gcdn.co/icons/wotb/current/uploaded/vehicles/hd/R112_T54_45.png"",""LastBattleTime"":""2021-06-21T09:50:12+02:00"",""Battles"":838,""CapturePoints"":38,""DamageDealt"":1153940,""DamageReceived"":1061637,""DroppedCapturePoints"":204,""Frags"":714,""Frags8P"":515,""Hits"":5425,""Losses"":355,""MaxFrags"":6,""MaxXp"":1977,""Shots"":6170,""Spotted"":1405,""SurvivedBattles"":270,""WinAndSurvived"":263,""Wins"":481,""Xp"":642071,""Wn7"":1310.7587952965653,""WinRate"":57.398568019093078758949880668,""AvgDamage"":1377.0167064439140811455847255,""AvgXp"":766.19451073985680190930787589,""DamageCoefficient"":1.0869440307751142810584032018,""SurvivalRate"":32.2195704057279236276849642},{""TankId"":13345,""BattleLifeTimeInSeconds"":112711,""MarkOfMastery"":4,""AvgBattleLifeTimeInMinutes"":2.5419711321605773567884528642,""Name"":""T26E4 SuperPershing"",""TankNationId"":""usa"",""TankNation"":""U.S.A."",""Tier"":8,""TankTypeId"":""mediumTank"",""TankType"":""Medium Tank"",""IsPremium"":true,""PreviewImage"":""http://glossary-eu-static.gcdn.co/icons/wotb/current/uploaded/vehicles/hd_thumbnail/T26_E4_SuperPershing.png"",""NormalImage"":""http://glossary-eu-static.gcdn.co/icons/wotb/current/uploaded/vehicles/hd/T26_E4_SuperPershing.png"",""LastBattleTime"":""2021-06-21T09:49:37+02:00"",""Battles"":739,""CapturePoints"":34,""DamageDealt"":981562,""DamageReceived"":958400,""DroppedCapturePoints"":108,""Frags"":554,""Frags8P"":425,""Hits"":5356,""Losses"":329,""MaxFrags"":5,""MaxXp"":1888,""Shots"":6302,""Spotted"":1193,""SurvivedBattles"":231,""WinAndSurvived"":229,""Wins"":408,""Xp"":582116,""Wn7"":1199.8674820185884,""WinRate"":55.209742895805142083897158322,""AvgDamage"":1328.2300405953991880920162382,""AvgXp"":787.70771312584573748308525034,""DamageCoefficient"":1.0241673622704507512520868114,""SurvivalRate"":31.258457374830852503382949932},{""TankId"":23569,""BattleLifeTimeInSeconds"":93,""MarkOfMastery"":0,""AvgBattleLifeTimeInMinutes"":1.55,""Name"":""Pz. IV Gargoyle"",""TankNationId"":""germany"",""TankNation"":""Germany"",""Tier"":5,""TankTypeId"":""mediumTank"",""TankType"":""Medium Tank"",""IsPremium"":true,""PreviewImage"":""http://glossary-eu-static.gcdn.co/icons/wotb/current/uploaded/vehicles/hd_thumb Line truncated
}
}
@@ -6,7 +6,8 @@ using NUnit.Framework;
using WotBlitzStatisticsPro.Common.Model;
using WotBlitzStatisticsPro.Logic;
using WotBlitzStatisticsPro.Logic.Dictionaries;
using AutoMapper;
using WotBlitzStatisticsPro.DataAccess;
namespace WotBlitzStatisticsPro.Tests.DictionariesTests
{
[TestFixture]
@@ -42,7 +43,9 @@ namespace WotBlitzStatisticsPro.Tests.DictionariesTests
var services = serviceProvider.BuildServiceProvider();
_wargamingDictionaries = new WargamingDictionaries(services.GetService<DictionariesUpdaterResolver>(),
(new Mock<ILogger<WargamingDictionaries>>()).Object);
(new Mock<IDictionariesDataAccessor>()).Object,
(new Mock<ILogger<WargamingDictionaries>>()).Object,
(new Mock<IMapper>()).Object);
}
[Test]