From 557f2893922297eb543e7ff67a296f19d12a70a5 Mon Sep 17 00:00:00 2001 From: Mikhail Shabanov Date: Thu, 21 Jul 2022 14:34:04 +0200 Subject: [PATCH] chore: client graphql schema generated --- WotBlitzStatisticsPro.Blazor/.graphqlrc.json | 46 ++--- ...litzStatisticsProClient.StrawberryShake.cs | 8 + ...litzStatisticsProClient.StrawberryShake.cs | 87 +++++++++ ...litzStatisticsProClient.StrawberryShake.cs | 48 +++++ ...litzStatisticsProClient.StrawberryShake.cs | 77 ++++++++ ...litzStatisticsProClient.StrawberryShake.cs | 156 ++++++++++++++++ ...litzStatisticsProClient.StrawberryShake.cs | 34 ++++ ...litzStatisticsProClient.StrawberryShake.cs | 18 ++ ...litzStatisticsProClient.StrawberryShake.cs | 72 +++++++ ...litzStatisticsProClient.StrawberryShake.cs | 13 ++ ...litzStatisticsProClient.StrawberryShake.cs | 2 + ...litzStatisticsProClient.StrawberryShake.cs | 175 ++++++++++++++++++ ...litzStatisticsProClient.StrawberryShake.cs | 67 +++++++ ...litzStatisticsProClient.StrawberryShake.cs | 34 ++++ ...litzStatisticsProClient.StrawberryShake.cs | 65 +++++++ ...litzStatisticsProClient.StrawberryShake.cs | 5 +- .../graphql/schema.graphql | 30 +++ 17 files changed, 913 insertions(+), 24 deletions(-) create mode 100644 WotBlitzStatisticsPro.Blazor/Generated/DictionaryQuery.WotBlitzStatisticsProClient.StrawberryShake.cs create mode 100644 WotBlitzStatisticsPro.Blazor/Generated/DictionaryQueryDocument.WotBlitzStatisticsProClient.StrawberryShake.cs create mode 100644 WotBlitzStatisticsPro.Blazor/Generated/DictionaryResult.WotBlitzStatisticsProClient.StrawberryShake.cs create mode 100644 WotBlitzStatisticsPro.Blazor/Generated/Dictionary_Vehicles_VehicleResponse.WotBlitzStatisticsProClient.StrawberryShake.cs create mode 100644 WotBlitzStatisticsPro.Blazor/Generated/IDictionaryQuery.WotBlitzStatisticsProClient.StrawberryShake.cs create mode 100644 WotBlitzStatisticsPro.Blazor/Generated/IDictionaryResult.WotBlitzStatisticsProClient.StrawberryShake.cs create mode 100644 WotBlitzStatisticsPro.Blazor/Generated/IDictionary_Vehicles.WotBlitzStatisticsProClient.StrawberryShake.cs create mode 100644 WotBlitzStatisticsPro.Blazor/Generated/IDictionary_Vehicles_VehicleResponse.WotBlitzStatisticsProClient.StrawberryShake.cs create mode 100644 WotBlitzStatisticsPro.Blazor/Generated/State/DictionaryBuilder.WotBlitzStatisticsProClient.StrawberryShake.cs create mode 100644 WotBlitzStatisticsPro.Blazor/Generated/State/DictionaryResultFactory.WotBlitzStatisticsProClient.StrawberryShake.cs create mode 100644 WotBlitzStatisticsPro.Blazor/Generated/State/DictionaryResultInfo.WotBlitzStatisticsProClient.StrawberryShake.cs create mode 100644 WotBlitzStatisticsPro.Blazor/Generated/State/VehicleResponseData.WotBlitzStatisticsProClient.StrawberryShake.cs diff --git a/WotBlitzStatisticsPro.Blazor/.graphqlrc.json b/WotBlitzStatisticsPro.Blazor/.graphqlrc.json index 650e043..ced4da2 100644 --- a/WotBlitzStatisticsPro.Blazor/.graphqlrc.json +++ b/WotBlitzStatisticsPro.Blazor/.graphqlrc.json @@ -3,28 +3,28 @@ "documents": "**/*.graphql", "extensions": { "strawberryShake": { - "name": "WotBlitzStatisticsProClient", - "namespace": "WotBlitzStatisticsPro.Blazor.GraphQl", - "url": "https://localhost:5001/graphql/", - "dependencyInjection": true, - "strictSchemaValidation": true, - "hashAlgorithm": "md5", - "useSingleFile": false, - "requestStrategy": "Default", - "outputDirectoryName": "Generated", - "noStore": false, - "emitGeneratedCode": true, - "razorComponents": false, - "records": { - "inputs": false, - "entities": false - }, - "transportProfiles": [ - { - "default": "Http", - "subscription": "WebSocket" - } - ] + "name": "WotBlitzStatisticsProClient", + "namespace": "WotBlitzStatisticsPro.Blazor.GraphQl", + "url": "https://localhost:6001/graphql/", + "dependencyInjection": true, + "strictSchemaValidation": true, + "hashAlgorithm": "md5", + "useSingleFile": false, + "requestStrategy": "Default", + "outputDirectoryName": "Generated", + "noStore": false, + "emitGeneratedCode": true, + "razorComponents": false, + "records": { + "inputs": false, + "entities": false + }, + "transportProfiles": [ + { + "default": "Http", + "subscription": "WebSocket" + } + ] } } -} \ No newline at end of file +} diff --git a/WotBlitzStatisticsPro.Blazor/Generated/DependencyInjection/WotBlitzStatisticsProClientServiceCollectionExtensions.WotBlitzStatisticsProClient.StrawberryShake.cs b/WotBlitzStatisticsPro.Blazor/Generated/DependencyInjection/WotBlitzStatisticsProClientServiceCollectionExtensions.WotBlitzStatisticsProClient.StrawberryShake.cs index 6ba77a2..13fa977 100644 --- a/WotBlitzStatisticsPro.Blazor/Generated/DependencyInjection/WotBlitzStatisticsProClientServiceCollectionExtensions.WotBlitzStatisticsProClient.StrawberryShake.cs +++ b/WotBlitzStatisticsPro.Blazor/Generated/DependencyInjection/WotBlitzStatisticsProClientServiceCollectionExtensions.WotBlitzStatisticsProClient.StrawberryShake.cs @@ -23,6 +23,7 @@ namespace Microsoft.Extensions.DependencyInjection 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); @@ -113,6 +114,13 @@ 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.DictionaryResultFactory>(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.DictionaryBuilder>(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/DictionaryQuery.WotBlitzStatisticsProClient.StrawberryShake.cs b/WotBlitzStatisticsPro.Blazor/Generated/DictionaryQuery.WotBlitzStatisticsProClient.StrawberryShake.cs new file mode 100644 index 0000000..ec70ac9 --- /dev/null +++ b/WotBlitzStatisticsPro.Blazor/Generated/DictionaryQuery.WotBlitzStatisticsProClient.StrawberryShake.cs @@ -0,0 +1,87 @@ +// +#nullable enable + +namespace WotBlitzStatisticsPro.Blazor.GraphQl +{ + /// + /// Represents the operation service of the Dictionary GraphQL operation + /// + /// query Dictionary($nationId: String!, $requestLanguage: RequestLanguage!) { + /// vehicles(nationId: $nationId, language: $requestLanguage) { + /// __typename + /// tankId + /// name + /// description + /// isPremium + /// typeId + /// nationId + /// tier + /// previewImage + /// normalImage + /// priceCredit + /// priceGold + /// nexTanksInTree + /// } + /// } + /// + /// + [global::System.CodeDom.Compiler.GeneratedCode("StrawberryShake", "11.2.2.0")] + public partial class DictionaryQuery : global::WotBlitzStatisticsPro.Blazor.GraphQl.IDictionaryQuery + { + private readonly global::StrawberryShake.IOperationExecutor _operationExecutor; + private readonly global::StrawberryShake.Serialization.IInputValueFormatter _stringFormatter; + private readonly global::StrawberryShake.Serialization.IInputValueFormatter _requestLanguageFormatter; + public DictionaryQuery(global::StrawberryShake.IOperationExecutor operationExecutor, global::StrawberryShake.Serialization.ISerializerResolver serializerResolver) + { + _operationExecutor = operationExecutor ?? throw new global::System.ArgumentNullException(nameof(operationExecutor)); + _stringFormatter = serializerResolver.GetInputValueFormatter("String"); + _requestLanguageFormatter = serializerResolver.GetInputValueFormatter("RequestLanguage"); + } + + global::System.Type global::StrawberryShake.IOperationRequestFactory.ResultType => typeof(IDictionaryResult); + public async global::System.Threading.Tasks.Task> ExecuteAsync(global::System.String nationId, global::WotBlitzStatisticsPro.Blazor.GraphQl.RequestLanguage requestLanguage, global::System.Threading.CancellationToken cancellationToken = default) + { + var request = CreateRequest(nationId, requestLanguage); + return await _operationExecutor.ExecuteAsync(request, cancellationToken).ConfigureAwait(false); + } + + public global::System.IObservable> Watch(global::System.String nationId, global::WotBlitzStatisticsPro.Blazor.GraphQl.RequestLanguage requestLanguage, global::StrawberryShake.ExecutionStrategy? strategy = null) + { + var request = CreateRequest(nationId, requestLanguage); + return _operationExecutor.Watch(request, strategy); + } + + private global::StrawberryShake.OperationRequest CreateRequest(global::System.String nationId, global::WotBlitzStatisticsPro.Blazor.GraphQl.RequestLanguage requestLanguage) + { + var variables = new global::System.Collections.Generic.Dictionary(); + variables.Add("nationId", FormatNationId(nationId)); + variables.Add("requestLanguage", FormatRequestLanguage(requestLanguage)); + return CreateRequest(variables); + } + + private global::StrawberryShake.OperationRequest CreateRequest(global::System.Collections.Generic.IReadOnlyDictionary? variables) + { + return new global::StrawberryShake.OperationRequest(id: DictionaryQueryDocument.Instance.Hash.Value, name: "Dictionary", document: DictionaryQueryDocument.Instance, strategy: global::StrawberryShake.RequestStrategy.Default, variables: variables); + } + + private global::System.Object? FormatNationId(global::System.String value) + { + if (value is null) + { + throw new global::System.ArgumentNullException(nameof(value)); + } + + return _stringFormatter.Format(value); + } + + private global::System.Object? FormatRequestLanguage(global::WotBlitzStatisticsPro.Blazor.GraphQl.RequestLanguage value) + { + return _requestLanguageFormatter.Format(value); + } + + global::StrawberryShake.OperationRequest global::StrawberryShake.IOperationRequestFactory.Create(global::System.Collections.Generic.IReadOnlyDictionary? variables) + { + return CreateRequest(variables!); + } + } +} diff --git a/WotBlitzStatisticsPro.Blazor/Generated/DictionaryQueryDocument.WotBlitzStatisticsProClient.StrawberryShake.cs b/WotBlitzStatisticsPro.Blazor/Generated/DictionaryQueryDocument.WotBlitzStatisticsProClient.StrawberryShake.cs new file mode 100644 index 0000000..86487f5 --- /dev/null +++ b/WotBlitzStatisticsPro.Blazor/Generated/DictionaryQueryDocument.WotBlitzStatisticsProClient.StrawberryShake.cs @@ -0,0 +1,48 @@ +// +#nullable enable + +namespace WotBlitzStatisticsPro.Blazor.GraphQl +{ + /// + /// Represents the operation service of the Dictionary GraphQL operation + /// + /// query Dictionary($nationId: String!, $requestLanguage: RequestLanguage!) { + /// vehicles(nationId: $nationId, language: $requestLanguage) { + /// __typename + /// tankId + /// name + /// description + /// isPremium + /// typeId + /// nationId + /// tier + /// previewImage + /// normalImage + /// priceCredit + /// priceGold + /// nexTanksInTree + /// } + /// } + /// + /// + [global::System.CodeDom.Compiler.GeneratedCode("StrawberryShake", "11.2.2.0")] + public partial class DictionaryQueryDocument : global::StrawberryShake.IDocument + { + private DictionaryQueryDocument() + { + } + + public static DictionaryQueryDocument Instance { get; } = new DictionaryQueryDocument(); + public global::StrawberryShake.OperationKind Kind => global::StrawberryShake.OperationKind.Query; + public global::System.ReadOnlySpan Body => new global::System.Byte[]{0x71, 0x75, 0x65, 0x72, 0x79, 0x20, 0x44, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x28, 0x24, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x3a, 0x20, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x21, 0x2c, 0x20, 0x24, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x3a, 0x20, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x21, 0x29, 0x20, 0x7b, 0x20, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x28, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x3a, 0x20, 0x24, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x2c, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x3a, 0x20, 0x24, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x29, 0x20, 0x7b, 0x20, 0x5f, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x74, 0x61, 0x6e, 0x6b, 0x49, 0x64, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x73, 0x50, 0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d, 0x20, 0x74, 0x79, 0x70, 0x65, 0x49, 0x64, 0x20, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x20, 0x74, 0x69, 0x65, 0x72, 0x20, 0x70, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x20, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x20, 0x70, 0x72, 0x69, 0x63, 0x65, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x20, 0x70, 0x72, 0x69, 0x63, 0x65, 0x47, 0x6f, 0x6c, 0x64, 0x20, 0x6e, 0x65, 0x78, 0x54, 0x61, 0x6e, 0x6b, 0x73, 0x49, 0x6e, 0x54, 0x72, 0x65, 0x65, 0x20, 0x7d, 0x20, 0x7d}; + public global::StrawberryShake.DocumentHash Hash { get; } = new global::StrawberryShake.DocumentHash("md5Hash", "e9e782c29b22caae1a2bb926d200b1e4"); + public override global::System.String ToString() + { +#if NETSTANDARD2_0 + return global::System.Text.Encoding.UTF8.GetString(Body.ToArray()); +#else + return global::System.Text.Encoding.UTF8.GetString(Body); +#endif + } + } +} diff --git a/WotBlitzStatisticsPro.Blazor/Generated/DictionaryResult.WotBlitzStatisticsProClient.StrawberryShake.cs b/WotBlitzStatisticsPro.Blazor/Generated/DictionaryResult.WotBlitzStatisticsProClient.StrawberryShake.cs new file mode 100644 index 0000000..af33353 --- /dev/null +++ b/WotBlitzStatisticsPro.Blazor/Generated/DictionaryResult.WotBlitzStatisticsProClient.StrawberryShake.cs @@ -0,0 +1,77 @@ +// +#nullable enable + +namespace WotBlitzStatisticsPro.Blazor.GraphQl +{ + [global::System.CodeDom.Compiler.GeneratedCode("StrawberryShake", "11.2.2.0")] + public partial class DictionaryResult : global::System.IEquatable, IDictionaryResult + { + public DictionaryResult(global::System.Collections.Generic.IReadOnlyList vehicles) + { + Vehicles = vehicles; + } + + /// + /// Returns a list of all vehicles of one nation + /// + /// + /// **Returns:** + /// A list of vehicles + /// + public global::System.Collections.Generic.IReadOnlyList Vehicles { get; } + + public virtual global::System.Boolean Equals(DictionaryResult? other) + { + if (ReferenceEquals(null, other)) + { + return false; + } + + if (ReferenceEquals(this, other)) + { + return true; + } + + if (other.GetType() != GetType()) + { + return false; + } + + return (global::StrawberryShake.Helper.ComparisonHelper.SequenceEqual(Vehicles, other.Vehicles)); + } + + public override global::System.Boolean Equals(global::System.Object? obj) + { + if (ReferenceEquals(null, obj)) + { + return false; + } + + if (ReferenceEquals(this, obj)) + { + return true; + } + + if (obj.GetType() != GetType()) + { + return false; + } + + return Equals((DictionaryResult)obj); + } + + public override global::System.Int32 GetHashCode() + { + unchecked + { + int hash = 5; + foreach (var Vehicles_elm in Vehicles) + { + hash ^= 397 * Vehicles_elm.GetHashCode(); + } + + return hash; + } + } + } +} diff --git a/WotBlitzStatisticsPro.Blazor/Generated/Dictionary_Vehicles_VehicleResponse.WotBlitzStatisticsProClient.StrawberryShake.cs b/WotBlitzStatisticsPro.Blazor/Generated/Dictionary_Vehicles_VehicleResponse.WotBlitzStatisticsProClient.StrawberryShake.cs new file mode 100644 index 0000000..ea161eb --- /dev/null +++ b/WotBlitzStatisticsPro.Blazor/Generated/Dictionary_Vehicles_VehicleResponse.WotBlitzStatisticsProClient.StrawberryShake.cs @@ -0,0 +1,156 @@ +// +#nullable enable + +namespace WotBlitzStatisticsPro.Blazor.GraphQl +{ + /// + /// Response for vehicle dictionary query + /// + [global::System.CodeDom.Compiler.GeneratedCode("StrawberryShake", "11.2.2.0")] + public partial class Dictionary_Vehicles_VehicleResponse : global::System.IEquatable, IDictionary_Vehicles_VehicleResponse + { + public Dictionary_Vehicles_VehicleResponse(global::System.Int64 tankId, global::System.String name, global::System.String description, global::System.Boolean isPremium, global::System.String typeId, global::System.String nationId, global::System.Int32 tier, global::System.String previewImage, global::System.String normalImage, global::System.Decimal priceCredit, global::System.Decimal priceGold, global::System.Collections.Generic.IReadOnlyList? nexTanksInTree) + { + TankId = tankId; + Name = name; + Description = description; + IsPremium = isPremium; + TypeId = typeId; + NationId = nationId; + Tier = tier; + PreviewImage = previewImage; + NormalImage = normalImage; + PriceCredit = priceCredit; + PriceGold = priceGold; + NexTanksInTree = nexTanksInTree; + } + + /// + /// VehicleId + /// + public global::System.Int64 TankId { get; } + + /// + /// Vehicle name + /// + public global::System.String Name { get; } + + /// + /// Vehicle description + /// + public global::System.String Description { get; } + + /// + /// Is vehicle premium + /// + public global::System.Boolean IsPremium { get; } + + /// + /// Vehicle type id + /// + public global::System.String TypeId { get; } + + /// + /// Vehicle nationId + /// + public global::System.String NationId { get; } + + /// + /// Vehicle tier + /// + public global::System.Int32 Tier { get; } + + /// + /// Vehicle preview image + /// + public global::System.String PreviewImage { get; } + + /// + /// Vehicle normal image + /// + public global::System.String NormalImage { get; } + + /// + /// Vehicle price in credits + /// + public global::System.Decimal PriceCredit { get; } + + /// + /// Vehicle price in gold + /// + public global::System.Decimal PriceGold { get; } + + /// + /// Ids of nex tanks and their cost in XP + /// + public global::System.Collections.Generic.IReadOnlyList? NexTanksInTree { get; } + + public virtual global::System.Boolean Equals(Dictionary_Vehicles_VehicleResponse? other) + { + if (ReferenceEquals(null, other)) + { + return false; + } + + if (ReferenceEquals(this, other)) + { + return true; + } + + if (other.GetType() != GetType()) + { + return false; + } + + return (TankId == other.TankId) && Name.Equals(other.Name) && Description.Equals(other.Description) && IsPremium == other.IsPremium && TypeId.Equals(other.TypeId) && NationId.Equals(other.NationId) && Tier == other.Tier && PreviewImage.Equals(other.PreviewImage) && NormalImage.Equals(other.NormalImage) && PriceCredit == other.PriceCredit && PriceGold == other.PriceGold && global::StrawberryShake.Helper.ComparisonHelper.SequenceEqual(NexTanksInTree, other.NexTanksInTree); + } + + public override global::System.Boolean Equals(global::System.Object? obj) + { + if (ReferenceEquals(null, obj)) + { + return false; + } + + if (ReferenceEquals(this, obj)) + { + return true; + } + + if (obj.GetType() != GetType()) + { + return false; + } + + return Equals((Dictionary_Vehicles_VehicleResponse)obj); + } + + public override global::System.Int32 GetHashCode() + { + unchecked + { + int hash = 5; + hash ^= 397 * TankId.GetHashCode(); + hash ^= 397 * Name.GetHashCode(); + hash ^= 397 * Description.GetHashCode(); + hash ^= 397 * IsPremium.GetHashCode(); + hash ^= 397 * TypeId.GetHashCode(); + hash ^= 397 * NationId.GetHashCode(); + hash ^= 397 * Tier.GetHashCode(); + hash ^= 397 * PreviewImage.GetHashCode(); + hash ^= 397 * NormalImage.GetHashCode(); + hash ^= 397 * PriceCredit.GetHashCode(); + hash ^= 397 * PriceGold.GetHashCode(); + if (NexTanksInTree != null) + { + foreach (var NexTanksInTree_elm in NexTanksInTree) + { + hash ^= 397 * NexTanksInTree_elm.GetHashCode(); + } + } + + return hash; + } + } + } +} diff --git a/WotBlitzStatisticsPro.Blazor/Generated/IDictionaryQuery.WotBlitzStatisticsProClient.StrawberryShake.cs b/WotBlitzStatisticsPro.Blazor/Generated/IDictionaryQuery.WotBlitzStatisticsProClient.StrawberryShake.cs new file mode 100644 index 0000000..a6d18f1 --- /dev/null +++ b/WotBlitzStatisticsPro.Blazor/Generated/IDictionaryQuery.WotBlitzStatisticsProClient.StrawberryShake.cs @@ -0,0 +1,34 @@ +// +#nullable enable + +namespace WotBlitzStatisticsPro.Blazor.GraphQl +{ + /// + /// Represents the operation service of the Dictionary GraphQL operation + /// + /// query Dictionary($nationId: String!, $requestLanguage: RequestLanguage!) { + /// vehicles(nationId: $nationId, language: $requestLanguage) { + /// __typename + /// tankId + /// name + /// description + /// isPremium + /// typeId + /// nationId + /// tier + /// previewImage + /// normalImage + /// priceCredit + /// priceGold + /// nexTanksInTree + /// } + /// } + /// + /// + [global::System.CodeDom.Compiler.GeneratedCode("StrawberryShake", "11.2.2.0")] + public interface IDictionaryQuery : global::StrawberryShake.IOperationRequestFactory + { + global::System.Threading.Tasks.Task> ExecuteAsync(global::System.String nationId, global::WotBlitzStatisticsPro.Blazor.GraphQl.RequestLanguage requestLanguage, global::System.Threading.CancellationToken cancellationToken = default); + global::System.IObservable> Watch(global::System.String nationId, global::WotBlitzStatisticsPro.Blazor.GraphQl.RequestLanguage requestLanguage, global::StrawberryShake.ExecutionStrategy? strategy = null); + } +} diff --git a/WotBlitzStatisticsPro.Blazor/Generated/IDictionaryResult.WotBlitzStatisticsProClient.StrawberryShake.cs b/WotBlitzStatisticsPro.Blazor/Generated/IDictionaryResult.WotBlitzStatisticsProClient.StrawberryShake.cs new file mode 100644 index 0000000..2356b16 --- /dev/null +++ b/WotBlitzStatisticsPro.Blazor/Generated/IDictionaryResult.WotBlitzStatisticsProClient.StrawberryShake.cs @@ -0,0 +1,18 @@ +// +#nullable enable + +namespace WotBlitzStatisticsPro.Blazor.GraphQl +{ + [global::System.CodeDom.Compiler.GeneratedCode("StrawberryShake", "11.2.2.0")] + public interface IDictionaryResult + { + /// + /// Returns a list of all vehicles of one nation + /// + /// + /// **Returns:** + /// A list of vehicles + /// + public global::System.Collections.Generic.IReadOnlyList Vehicles { get; } + } +} diff --git a/WotBlitzStatisticsPro.Blazor/Generated/IDictionary_Vehicles.WotBlitzStatisticsProClient.StrawberryShake.cs b/WotBlitzStatisticsPro.Blazor/Generated/IDictionary_Vehicles.WotBlitzStatisticsProClient.StrawberryShake.cs new file mode 100644 index 0000000..68772fc --- /dev/null +++ b/WotBlitzStatisticsPro.Blazor/Generated/IDictionary_Vehicles.WotBlitzStatisticsProClient.StrawberryShake.cs @@ -0,0 +1,72 @@ +// +#nullable enable + +namespace WotBlitzStatisticsPro.Blazor.GraphQl +{ + /// + /// Response for vehicle dictionary query + /// + [global::System.CodeDom.Compiler.GeneratedCode("StrawberryShake", "11.2.2.0")] + public interface IDictionary_Vehicles + { + /// + /// VehicleId + /// + public global::System.Int64 TankId { get; } + + /// + /// Vehicle name + /// + public global::System.String Name { get; } + + /// + /// Vehicle description + /// + public global::System.String Description { get; } + + /// + /// Is vehicle premium + /// + public global::System.Boolean IsPremium { get; } + + /// + /// Vehicle type id + /// + public global::System.String TypeId { get; } + + /// + /// Vehicle nationId + /// + public global::System.String NationId { get; } + + /// + /// Vehicle tier + /// + public global::System.Int32 Tier { get; } + + /// + /// Vehicle preview image + /// + public global::System.String PreviewImage { get; } + + /// + /// Vehicle normal image + /// + public global::System.String NormalImage { get; } + + /// + /// Vehicle price in credits + /// + public global::System.Decimal PriceCredit { get; } + + /// + /// Vehicle price in gold + /// + public global::System.Decimal PriceGold { get; } + + /// + /// Ids of nex tanks and their cost in XP + /// + public global::System.Collections.Generic.IReadOnlyList? NexTanksInTree { get; } + } +} diff --git a/WotBlitzStatisticsPro.Blazor/Generated/IDictionary_Vehicles_VehicleResponse.WotBlitzStatisticsProClient.StrawberryShake.cs b/WotBlitzStatisticsPro.Blazor/Generated/IDictionary_Vehicles_VehicleResponse.WotBlitzStatisticsProClient.StrawberryShake.cs new file mode 100644 index 0000000..dec47f6 --- /dev/null +++ b/WotBlitzStatisticsPro.Blazor/Generated/IDictionary_Vehicles_VehicleResponse.WotBlitzStatisticsProClient.StrawberryShake.cs @@ -0,0 +1,13 @@ +// +#nullable enable + +namespace WotBlitzStatisticsPro.Blazor.GraphQl +{ + /// + /// Response for vehicle dictionary query + /// + [global::System.CodeDom.Compiler.GeneratedCode("StrawberryShake", "11.2.2.0")] + public interface IDictionary_Vehicles_VehicleResponse : IDictionary_Vehicles + { + } +} diff --git a/WotBlitzStatisticsPro.Blazor/Generated/IWotBlitzStatisticsProClient.WotBlitzStatisticsProClient.StrawberryShake.cs b/WotBlitzStatisticsPro.Blazor/Generated/IWotBlitzStatisticsProClient.WotBlitzStatisticsProClient.StrawberryShake.cs index 100ca10..05d0676 100644 --- a/WotBlitzStatisticsPro.Blazor/Generated/IWotBlitzStatisticsProClient.WotBlitzStatisticsProClient.StrawberryShake.cs +++ b/WotBlitzStatisticsPro.Blazor/Generated/IWotBlitzStatisticsProClient.WotBlitzStatisticsProClient.StrawberryShake.cs @@ -24,5 +24,7 @@ namespace WotBlitzStatisticsPro.Blazor.GraphQl global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingPlayersMutation WargamingPlayers { get; } global::WotBlitzStatisticsPro.Blazor.GraphQl.IUpdatePlayerMutation UpdatePlayer { get; } + + global::WotBlitzStatisticsPro.Blazor.GraphQl.IDictionaryQuery Dictionary { get; } } } diff --git a/WotBlitzStatisticsPro.Blazor/Generated/State/DictionaryBuilder.WotBlitzStatisticsProClient.StrawberryShake.cs b/WotBlitzStatisticsPro.Blazor/Generated/State/DictionaryBuilder.WotBlitzStatisticsProClient.StrawberryShake.cs new file mode 100644 index 0000000..d94c2f4 --- /dev/null +++ b/WotBlitzStatisticsPro.Blazor/Generated/State/DictionaryBuilder.WotBlitzStatisticsProClient.StrawberryShake.cs @@ -0,0 +1,175 @@ +// +#nullable enable + +namespace WotBlitzStatisticsPro.Blazor.GraphQl.State +{ + [global::System.CodeDom.Compiler.GeneratedCode("StrawberryShake", "11.2.2.0")] + public partial class DictionaryBuilder : global::StrawberryShake.IOperationResultBuilder + { + private readonly global::StrawberryShake.IEntityStore _entityStore; + private readonly global::StrawberryShake.IEntityIdSerializer _idSerializer; + private readonly global::StrawberryShake.IOperationResultDataFactory _resultDataFactory; + private readonly global::StrawberryShake.Serialization.ILeafValueParser _requestLanguageParser; + private readonly global::StrawberryShake.Serialization.ILeafValueParser _stringParser; + private readonly global::StrawberryShake.Serialization.ILeafValueParser _longParser; + private readonly global::StrawberryShake.Serialization.ILeafValueParser _booleanParser; + private readonly global::StrawberryShake.Serialization.ILeafValueParser _intParser; + private readonly global::StrawberryShake.Serialization.ILeafValueParser _decimalParser; + public DictionaryBuilder(global::StrawberryShake.IEntityStore entityStore, global::StrawberryShake.IEntityIdSerializer idSerializer, global::StrawberryShake.IOperationResultDataFactory resultDataFactory, global::StrawberryShake.Serialization.ISerializerResolver serializerResolver) + { + _entityStore = entityStore ?? throw new global::System.ArgumentNullException(nameof(entityStore)); + _idSerializer = idSerializer ?? throw new global::System.ArgumentNullException(nameof(idSerializer)); + _resultDataFactory = resultDataFactory ?? throw new global::System.ArgumentNullException(nameof(resultDataFactory)); + _requestLanguageParser = serializerResolver.GetLeafValueParser("RequestLanguage") ?? throw new global::System.ArgumentException("No serializer for type `RequestLanguage` found."); + _stringParser = serializerResolver.GetLeafValueParser("String") ?? throw new global::System.ArgumentException("No serializer for type `String` found."); + _longParser = serializerResolver.GetLeafValueParser("Long") ?? throw new global::System.ArgumentException("No serializer for type `Long` found."); + _booleanParser = serializerResolver.GetLeafValueParser("Boolean") ?? throw new global::System.ArgumentException("No serializer for type `Boolean` found."); + _intParser = serializerResolver.GetLeafValueParser("Int") ?? throw new global::System.ArgumentException("No serializer for type `Int` found."); + _decimalParser = serializerResolver.GetLeafValueParser("Decimal") ?? throw new global::System.ArgumentException("No serializer for type `Decimal` found."); + } + + public global::StrawberryShake.IOperationResult Build(global::StrawberryShake.Response response) + { + (IDictionaryResult Result, DictionaryResultInfo Info)? data = null; + global::System.Collections.Generic.IReadOnlyList? errors = null; + if (response.Exception is null) + { + try + { + if (response.Body != null) + { + if (response.Body.RootElement.TryGetProperty("data", out global::System.Text.Json.JsonElement dataElement) && dataElement.ValueKind == global::System.Text.Json.JsonValueKind.Object) + { + data = BuildData(dataElement); + } + + if (response.Body.RootElement.TryGetProperty("errors", out global::System.Text.Json.JsonElement errorsElement)) + { + errors = global::StrawberryShake.Json.JsonErrorParser.ParseErrors(errorsElement); + } + } + } + catch (global::System.Exception ex) + { + errors = new global::StrawberryShake.IClientError[]{new global::StrawberryShake.ClientError(ex.Message, exception: ex, extensions: new global::System.Collections.Generic.Dictionary{{"body", response.Body?.RootElement.ToString()}})}; + } + } + else + { + errors = new global::StrawberryShake.IClientError[]{new global::StrawberryShake.ClientError(response.Exception.Message, exception: response.Exception, extensions: new global::System.Collections.Generic.Dictionary{{"body", response.Body?.RootElement.ToString()}})}; + } + + return new global::StrawberryShake.OperationResult(data?.Result, data?.Info, _resultDataFactory, errors); + } + + private (IDictionaryResult, DictionaryResultInfo) BuildData(global::System.Text.Json.JsonElement obj) + { + var entityIds = new global::System.Collections.Generic.HashSet(); + global::StrawberryShake.IEntityStoreSnapshot snapshot = default !; + _entityStore.Update(session => + { + snapshot = session.CurrentSnapshot; + }); + var resultInfo = new DictionaryResultInfo(DeserializeNonNullableIDictionary_VehiclesNonNullableArray(global::StrawberryShake.Json.JsonElementExtensions.GetPropertyOrNull(obj, "vehicles")), entityIds, snapshot.Version); + return (_resultDataFactory.Create(resultInfo), resultInfo); + } + + private global::System.Collections.Generic.IReadOnlyList DeserializeNonNullableIDictionary_VehiclesNonNullableArray(global::System.Text.Json.JsonElement? obj) + { + if (!obj.HasValue) + { + throw new global::System.ArgumentNullException(); + } + + var vehicleResponses = new global::System.Collections.Generic.List(); + foreach (global::System.Text.Json.JsonElement child in obj.Value.EnumerateArray()) + { + vehicleResponses.Add(DeserializeNonNullableIDictionary_Vehicles(child)); + } + + return vehicleResponses; + } + + private global::WotBlitzStatisticsPro.Blazor.GraphQl.State.VehicleResponseData DeserializeNonNullableIDictionary_Vehicles(global::System.Text.Json.JsonElement? obj) + { + if (!obj.HasValue) + { + throw new global::System.ArgumentNullException(); + } + + var typename = obj.Value.GetProperty("__typename").GetString(); + if (typename?.Equals("VehicleResponse", global::System.StringComparison.Ordinal) ?? false) + { + return new global::WotBlitzStatisticsPro.Blazor.GraphQl.State.VehicleResponseData(typename, tankId: DeserializeNonNullableInt64(global::StrawberryShake.Json.JsonElementExtensions.GetPropertyOrNull(obj, "tankId")), name: DeserializeNonNullableString(global::StrawberryShake.Json.JsonElementExtensions.GetPropertyOrNull(obj, "name")), description: DeserializeNonNullableString(global::StrawberryShake.Json.JsonElementExtensions.GetPropertyOrNull(obj, "description")), isPremium: DeserializeNonNullableBoolean(global::StrawberryShake.Json.JsonElementExtensions.GetPropertyOrNull(obj, "isPremium")), typeId: DeserializeNonNullableString(global::StrawberryShake.Json.JsonElementExtensions.GetPropertyOrNull(obj, "typeId")), nationId: DeserializeNonNullableString(global::StrawberryShake.Json.JsonElementExtensions.GetPropertyOrNull(obj, "nationId")), tier: DeserializeNonNullableInt32(global::StrawberryShake.Json.JsonElementExtensions.GetPropertyOrNull(obj, "tier")), previewImage: DeserializeNonNullableString(global::StrawberryShake.Json.JsonElementExtensions.GetPropertyOrNull(obj, "previewImage")), normalImage: DeserializeNonNullableString(global::StrawberryShake.Json.JsonElementExtensions.GetPropertyOrNull(obj, "normalImage")), priceCredit: DeserializeNonNullableDecimal(global::StrawberryShake.Json.JsonElementExtensions.GetPropertyOrNull(obj, "priceCredit")), priceGold: DeserializeNonNullableDecimal(global::StrawberryShake.Json.JsonElementExtensions.GetPropertyOrNull(obj, "priceGold")), nexTanksInTree: DeserializeInt64NonNullableArray(global::StrawberryShake.Json.JsonElementExtensions.GetPropertyOrNull(obj, "nexTanksInTree"))); + } + + throw new global::System.NotSupportedException(); + } + + private global::System.Int64 DeserializeNonNullableInt64(global::System.Text.Json.JsonElement? obj) + { + if (!obj.HasValue) + { + throw new global::System.ArgumentNullException(); + } + + return _longParser.Parse(obj.Value.GetInt64()!); + } + + private global::System.String DeserializeNonNullableString(global::System.Text.Json.JsonElement? obj) + { + if (!obj.HasValue) + { + throw new global::System.ArgumentNullException(); + } + + return _stringParser.Parse(obj.Value.GetString()!); + } + + private global::System.Boolean DeserializeNonNullableBoolean(global::System.Text.Json.JsonElement? obj) + { + if (!obj.HasValue) + { + throw new global::System.ArgumentNullException(); + } + + return _booleanParser.Parse(obj.Value.GetBoolean()!); + } + + private global::System.Int32 DeserializeNonNullableInt32(global::System.Text.Json.JsonElement? obj) + { + if (!obj.HasValue) + { + throw new global::System.ArgumentNullException(); + } + + return _intParser.Parse(obj.Value.GetInt32()!); + } + + private global::System.Decimal DeserializeNonNullableDecimal(global::System.Text.Json.JsonElement? obj) + { + if (!obj.HasValue) + { + throw new global::System.ArgumentNullException(); + } + + return _decimalParser.Parse(obj.Value.GetDecimal()!); + } + + private global::System.Collections.Generic.IReadOnlyList? DeserializeInt64NonNullableArray(global::System.Text.Json.JsonElement? obj) + { + if (!obj.HasValue) + { + return null; + } + + var @longs = new global::System.Collections.Generic.List(); + foreach (global::System.Text.Json.JsonElement child in obj.Value.EnumerateArray()) + { + @longs.Add(DeserializeNonNullableInt64(child)); + } + + return @longs; + } + } +} diff --git a/WotBlitzStatisticsPro.Blazor/Generated/State/DictionaryResultFactory.WotBlitzStatisticsProClient.StrawberryShake.cs b/WotBlitzStatisticsPro.Blazor/Generated/State/DictionaryResultFactory.WotBlitzStatisticsProClient.StrawberryShake.cs new file mode 100644 index 0000000..4622e9a --- /dev/null +++ b/WotBlitzStatisticsPro.Blazor/Generated/State/DictionaryResultFactory.WotBlitzStatisticsProClient.StrawberryShake.cs @@ -0,0 +1,67 @@ +// +#nullable enable + +namespace WotBlitzStatisticsPro.Blazor.GraphQl.State +{ + [global::System.CodeDom.Compiler.GeneratedCode("StrawberryShake", "11.2.2.0")] + public partial class DictionaryResultFactory : global::StrawberryShake.IOperationResultDataFactory + { + private readonly global::StrawberryShake.IEntityStore _entityStore; + public DictionaryResultFactory(global::StrawberryShake.IEntityStore entityStore) + { + _entityStore = entityStore ?? throw new global::System.ArgumentNullException(nameof(entityStore)); + } + + global::System.Type global::StrawberryShake.IOperationResultDataFactory.ResultType => typeof(global::WotBlitzStatisticsPro.Blazor.GraphQl.IDictionaryResult); + public DictionaryResult Create(global::StrawberryShake.IOperationResultDataInfo dataInfo, global::StrawberryShake.IEntityStoreSnapshot? snapshot = null) + { + if (snapshot is null) + { + snapshot = _entityStore.CurrentSnapshot; + } + + if (dataInfo is DictionaryResultInfo info) + { + return new DictionaryResult(MapNonNullableIDictionary_VehiclesNonNullableArray(info.Vehicles, snapshot)); + } + + throw new global::System.ArgumentException("DictionaryResultInfo expected."); + } + + private global::System.Collections.Generic.IReadOnlyList MapNonNullableIDictionary_VehiclesNonNullableArray(global::System.Collections.Generic.IReadOnlyList? list, global::StrawberryShake.IEntityStoreSnapshot snapshot) + { + if (list is null) + { + throw new global::System.ArgumentNullException(); + } + + var vehicleResponses = new global::System.Collections.Generic.List(); + foreach (global::WotBlitzStatisticsPro.Blazor.GraphQl.State.VehicleResponseData child in list) + { + vehicleResponses.Add(MapNonNullableIDictionary_Vehicles(child, snapshot)); + } + + return vehicleResponses; + } + + private global::WotBlitzStatisticsPro.Blazor.GraphQl.IDictionary_Vehicles MapNonNullableIDictionary_Vehicles(global::WotBlitzStatisticsPro.Blazor.GraphQl.State.VehicleResponseData data, global::StrawberryShake.IEntityStoreSnapshot snapshot) + { + IDictionary_Vehicles returnValue = default !; + if (data.__typename.Equals("VehicleResponse", global::System.StringComparison.Ordinal)) + { + returnValue = new Dictionary_Vehicles_VehicleResponse(data.TankId ?? throw new global::System.ArgumentNullException(), data.Name ?? throw new global::System.ArgumentNullException(), data.Description ?? throw new global::System.ArgumentNullException(), data.IsPremium ?? throw new global::System.ArgumentNullException(), data.TypeId ?? throw new global::System.ArgumentNullException(), data.NationId ?? throw new global::System.ArgumentNullException(), data.Tier ?? throw new global::System.ArgumentNullException(), data.PreviewImage ?? throw new global::System.ArgumentNullException(), data.NormalImage ?? throw new global::System.ArgumentNullException(), data.PriceCredit ?? throw new global::System.ArgumentNullException(), data.PriceGold ?? throw new global::System.ArgumentNullException(), data.NexTanksInTree); + } + else + { + throw new global::System.NotSupportedException(); + } + + return returnValue; + } + + global::System.Object global::StrawberryShake.IOperationResultDataFactory.Create(global::StrawberryShake.IOperationResultDataInfo dataInfo, global::StrawberryShake.IEntityStoreSnapshot? snapshot) + { + return Create(dataInfo, snapshot); + } + } +} diff --git a/WotBlitzStatisticsPro.Blazor/Generated/State/DictionaryResultInfo.WotBlitzStatisticsProClient.StrawberryShake.cs b/WotBlitzStatisticsPro.Blazor/Generated/State/DictionaryResultInfo.WotBlitzStatisticsProClient.StrawberryShake.cs new file mode 100644 index 0000000..8c96992 --- /dev/null +++ b/WotBlitzStatisticsPro.Blazor/Generated/State/DictionaryResultInfo.WotBlitzStatisticsProClient.StrawberryShake.cs @@ -0,0 +1,34 @@ +// +#nullable enable + +namespace WotBlitzStatisticsPro.Blazor.GraphQl.State +{ + [global::System.CodeDom.Compiler.GeneratedCode("StrawberryShake", "11.2.2.0")] + public partial class DictionaryResultInfo : global::StrawberryShake.IOperationResultDataInfo + { + private readonly global::System.Collections.Generic.IReadOnlyCollection _entityIds; + private readonly global::System.UInt64 _version; + public DictionaryResultInfo(global::System.Collections.Generic.IReadOnlyList vehicles, global::System.Collections.Generic.IReadOnlyCollection entityIds, global::System.UInt64 version) + { + Vehicles = vehicles; + _entityIds = entityIds ?? throw new global::System.ArgumentNullException(nameof(entityIds)); + _version = version; + } + + /// + /// Returns a list of all vehicles of one nation + /// + /// + /// **Returns:** + /// A list of vehicles + /// + public global::System.Collections.Generic.IReadOnlyList Vehicles { get; } + + public global::System.Collections.Generic.IReadOnlyCollection EntityIds => _entityIds; + public global::System.UInt64 Version => _version; + public global::StrawberryShake.IOperationResultDataInfo WithVersion(global::System.UInt64 version) + { + return new DictionaryResultInfo(Vehicles, _entityIds, version); + } + } +} diff --git a/WotBlitzStatisticsPro.Blazor/Generated/State/VehicleResponseData.WotBlitzStatisticsProClient.StrawberryShake.cs b/WotBlitzStatisticsPro.Blazor/Generated/State/VehicleResponseData.WotBlitzStatisticsProClient.StrawberryShake.cs new file mode 100644 index 0000000..78bad7f --- /dev/null +++ b/WotBlitzStatisticsPro.Blazor/Generated/State/VehicleResponseData.WotBlitzStatisticsProClient.StrawberryShake.cs @@ -0,0 +1,65 @@ +// +#nullable enable + +namespace WotBlitzStatisticsPro.Blazor.GraphQl.State +{ + ///Response for vehicle dictionary query + [global::System.CodeDom.Compiler.GeneratedCode("StrawberryShake", "11.2.2.0")] + public partial class VehicleResponseData + { + public VehicleResponseData(global::System.String __typename, global::System.Int64? tankId = default !, global::System.String? name = default !, global::System.String? description = default !, global::System.Boolean? isPremium = default !, global::System.String? typeId = default !, global::System.String? nationId = default !, global::System.Int32? tier = default !, global::System.String? previewImage = default !, global::System.String? normalImage = default !, global::System.Decimal? priceCredit = default !, global::System.Decimal? priceGold = default !, global::System.Collections.Generic.IReadOnlyList? nexTanksInTree = default !) + { + this.__typename = __typename ?? throw new global::System.ArgumentNullException(nameof(__typename)); + TankId = tankId; + Name = name; + Description = description; + IsPremium = isPremium; + TypeId = typeId; + NationId = nationId; + Tier = tier; + PreviewImage = previewImage; + NormalImage = normalImage; + PriceCredit = priceCredit; + PriceGold = priceGold; + NexTanksInTree = nexTanksInTree; + } + + public global::System.String __typename { get; } + + ///VehicleId + public global::System.Int64? TankId { get; } + + ///Vehicle name + public global::System.String? Name { get; } + + ///Vehicle description + public global::System.String? Description { get; } + + ///Is vehicle premium + public global::System.Boolean? IsPremium { get; } + + ///Vehicle type id + public global::System.String? TypeId { get; } + + ///Vehicle nationId + public global::System.String? NationId { get; } + + ///Vehicle tier + public global::System.Int32? Tier { get; } + + ///Vehicle preview image + public global::System.String? PreviewImage { get; } + + ///Vehicle normal image + public global::System.String? NormalImage { get; } + + ///Vehicle price in credits + public global::System.Decimal? PriceCredit { get; } + + ///Vehicle price in gold + public global::System.Decimal? PriceGold { get; } + + ///Ids of nex tanks and their cost in XP + public global::System.Collections.Generic.IReadOnlyList? NexTanksInTree { get; } + } +} diff --git a/WotBlitzStatisticsPro.Blazor/Generated/WotBlitzStatisticsProClient.WotBlitzStatisticsProClient.StrawberryShake.cs b/WotBlitzStatisticsPro.Blazor/Generated/WotBlitzStatisticsProClient.WotBlitzStatisticsProClient.StrawberryShake.cs index 4b7b560..b2abbc1 100644 --- a/WotBlitzStatisticsPro.Blazor/Generated/WotBlitzStatisticsProClient.WotBlitzStatisticsProClient.StrawberryShake.cs +++ b/WotBlitzStatisticsPro.Blazor/Generated/WotBlitzStatisticsProClient.WotBlitzStatisticsProClient.StrawberryShake.cs @@ -17,7 +17,8 @@ namespace WotBlitzStatisticsPro.Blazor.GraphQl private readonly global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdAuthenticationMutation _wargamingOpenIdAuthentication; private readonly global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingPlayersMutation _wargamingPlayers; 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.IDictionaryQuery _dictionary; + 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, global::WotBlitzStatisticsPro.Blazor.GraphQl.IDictionaryQuery dictionary) { _findClans = findClans ?? throw new global::System.ArgumentNullException(nameof(findClans)); _findPlayers = findPlayers ?? throw new global::System.ArgumentNullException(nameof(findPlayers)); @@ -27,6 +28,7 @@ namespace WotBlitzStatisticsPro.Blazor.GraphQl _wargamingOpenIdAuthentication = wargamingOpenIdAuthentication ?? throw new global::System.ArgumentNullException(nameof(wargamingOpenIdAuthentication)); _wargamingPlayers = wargamingPlayers ?? throw new global::System.ArgumentNullException(nameof(wargamingPlayers)); _updatePlayer = updatePlayer ?? throw new global::System.ArgumentNullException(nameof(updatePlayer)); + _dictionary = dictionary ?? throw new global::System.ArgumentNullException(nameof(dictionary)); } public static global::System.String ClientName => "WotBlitzStatisticsProClient"; @@ -38,5 +40,6 @@ namespace WotBlitzStatisticsPro.Blazor.GraphQl public global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingOpenIdAuthenticationMutation WargamingOpenIdAuthentication => _wargamingOpenIdAuthentication; public global::WotBlitzStatisticsPro.Blazor.GraphQl.IWargamingPlayersMutation WargamingPlayers => _wargamingPlayers; public global::WotBlitzStatisticsPro.Blazor.GraphQl.IUpdatePlayerMutation UpdatePlayer => _updatePlayer; + public global::WotBlitzStatisticsPro.Blazor.GraphQl.IDictionaryQuery Dictionary => _dictionary; } } diff --git a/WotBlitzStatisticsPro.Blazor/graphql/schema.graphql b/WotBlitzStatisticsPro.Blazor/graphql/schema.graphql index 0d0070b..d293b65 100644 --- a/WotBlitzStatisticsPro.Blazor/graphql/schema.graphql +++ b/WotBlitzStatisticsPro.Blazor/graphql/schema.graphql @@ -20,6 +20,8 @@ type Query { tankMedals("AccountId" accountId: Long! "Account tank Id" tankId: Long! "Account region" realmType: RealmType "Request language" requestLanguage: RequestLanguage): AccountAchievementsResponse! "Returns authentication URL accourding Realm" loginUrl("Wargaming Realm." realmType: RealmType!): String! + "Returns a list of all vehicles of one nation\n\n\n**Returns:**\nA list of vehicles" + vehicles("Nation" nationId: String! "Request language" language: RequestLanguage): [VehicleResponse!]! } type Mutation { @@ -377,6 +379,34 @@ type UpdateDictionariesResponseItem { description: String } +"Response for vehicle dictionary query" +type VehicleResponse { + "VehicleId" + tankId: Long! + "Vehicle name" + name: String! + "Vehicle description" + description: String! + "Is vehicle premium" + isPremium: Boolean! + "Vehicle type id" + typeId: String! + "Vehicle nationId" + nationId: String! + "Vehicle tier" + tier: Int! + "Vehicle preview image" + previewImage: String! + "Vehicle normal image" + normalImage: String! + "Vehicle price in credits" + priceCredit: Decimal! + "Vehicle price in gold" + priceGold: Decimal! + "Ids of nex tanks and their cost in XP" + nexTanksInTree: [Long!] +} + "Represents information about player's achievements" type AccountAchievementsResponse { "Player Id"