// #nullable enable namespace WotBlitzStatisticsPro.Blazor.GraphQl { /// /// Represents the operation service of the Player GraphQL operation /// /// query Player($accountId: Long!, $realmType: RealmType!, $requestLanguage: RequestLanguage!) { /// accountInfo(accountId: $accountId, realmType: $realmType, requestLanguage: $requestLanguage) { /// __typename /// accountId /// nickname /// createdAt /// lastBattleTime /// battles /// winRate /// avgDamage /// avgXp /// avgTier /// damageCoefficient /// survivalRate /// tanks { /// __typename /// tankId /// name /// tankNation /// tankType /// tier /// isPremium /// lastBattleTime /// battles /// winRate /// avgDamage /// avgXp /// avgBattleLifeTimeInMinutes /// damageCoefficient /// survivalRate /// } /// } /// } /// /// [global::System.CodeDom.Compiler.GeneratedCode("StrawberryShake", "11.2.2.0")] public partial class PlayerQuery : global::WotBlitzStatisticsPro.Blazor.GraphQl.IPlayerQuery { private readonly global::StrawberryShake.IOperationExecutor _operationExecutor; private readonly global::StrawberryShake.Serialization.IInputValueFormatter _longFormatter; private readonly global::StrawberryShake.Serialization.IInputValueFormatter _realmTypeFormatter; private readonly global::StrawberryShake.Serialization.IInputValueFormatter _requestLanguageFormatter; public PlayerQuery(global::StrawberryShake.IOperationExecutor operationExecutor, global::StrawberryShake.Serialization.ISerializerResolver serializerResolver) { _operationExecutor = operationExecutor ?? throw new global::System.ArgumentNullException(nameof(operationExecutor)); _longFormatter = serializerResolver.GetInputValueFormatter("Long"); _realmTypeFormatter = serializerResolver.GetInputValueFormatter("RealmType"); _requestLanguageFormatter = serializerResolver.GetInputValueFormatter("RequestLanguage"); } global::System.Type global::StrawberryShake.IOperationRequestFactory.ResultType => typeof(IPlayerResult); public async global::System.Threading.Tasks.Task> ExecuteAsync(global::System.Int64 accountId, global::WotBlitzStatisticsPro.Blazor.GraphQl.RealmType realmType, global::WotBlitzStatisticsPro.Blazor.GraphQl.RequestLanguage requestLanguage, global::System.Threading.CancellationToken cancellationToken = default) { var request = CreateRequest(accountId, realmType, requestLanguage); return await _operationExecutor.ExecuteAsync(request, cancellationToken).ConfigureAwait(false); } public global::System.IObservable> Watch(global::System.Int64 accountId, global::WotBlitzStatisticsPro.Blazor.GraphQl.RealmType realmType, global::WotBlitzStatisticsPro.Blazor.GraphQl.RequestLanguage requestLanguage, global::StrawberryShake.ExecutionStrategy? strategy = null) { var request = CreateRequest(accountId, realmType, requestLanguage); return _operationExecutor.Watch(request, strategy); } private global::StrawberryShake.OperationRequest CreateRequest(global::System.Int64 accountId, global::WotBlitzStatisticsPro.Blazor.GraphQl.RealmType realmType, global::WotBlitzStatisticsPro.Blazor.GraphQl.RequestLanguage requestLanguage) { var variables = new global::System.Collections.Generic.Dictionary(); variables.Add("accountId", FormatAccountId(accountId)); variables.Add("realmType", FormatRealmType(realmType)); 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: PlayerQueryDocument.Instance.Hash.Value, name: "Player", document: PlayerQueryDocument.Instance, strategy: global::StrawberryShake.RequestStrategy.Default, variables: variables); } private global::System.Object? FormatAccountId(global::System.Int64 value) { return _longFormatter.Format(value); } private global::System.Object? FormatRealmType(global::WotBlitzStatisticsPro.Blazor.GraphQl.RealmType value) { return _realmTypeFormatter.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!); } } }