From 3b60bcbe72904342a747e16637bc4d5126f42564 Mon Sep 17 00:00:00 2001 From: Michael Bromley Date: Wed, 4 Nov 2020 20:48:11 +0100 Subject: [PATCH] fix(core): Add retry logic in case of transaction deadlocks Fixes #527. --- .../test-plugins/slow-mutation-plugin.ts | 86 + .../e2e/graphql/generated-e2e-admin-types.ts | 9061 +++++++++-------- .../core/e2e/graphql/shared-definitions.ts | 50 + .../e2e/parallel-transactions.e2e-spec.ts | 143 + packages/core/e2e/product-option.e2e-spec.ts | 30 +- packages/core/e2e/product.e2e-spec.ts | 28 +- .../api/middleware/transaction-interceptor.ts | 77 +- scripts/codegen/generate-graphql-types.ts | 2 +- 8 files changed, 5080 insertions(+), 4397 deletions(-) create mode 100644 packages/core/e2e/fixtures/test-plugins/slow-mutation-plugin.ts create mode 100644 packages/core/e2e/parallel-transactions.e2e-spec.ts diff --git a/packages/core/e2e/fixtures/test-plugins/slow-mutation-plugin.ts b/packages/core/e2e/fixtures/test-plugins/slow-mutation-plugin.ts new file mode 100644 index 0000000000..1eba989ded --- /dev/null +++ b/packages/core/e2e/fixtures/test-plugins/slow-mutation-plugin.ts @@ -0,0 +1,86 @@ +import { Args, Mutation, Resolver } from '@nestjs/graphql'; +import { + Asset, + AssetType, + Country, + Ctx, + PluginCommonModule, + Product, + ProductAsset, + RequestContext, + TaxCategory, + TaxRate, + Transaction, + TransactionalConnection, + VendurePlugin, +} from '@vendure/core'; +import gql from 'graphql-tag'; + +@Resolver() +export class SlowMutationResolver { + constructor(private connection: TransactionalConnection) {} + + /** + * A mutation which simulates some slow DB operations occurring within a transaction. + */ + @Transaction() + @Mutation() + async slowMutation(@Ctx() ctx: RequestContext, @Args() args: { delay: number }) { + const delay = Math.round(args.delay / 2); + const country = await this.connection.getRepository(ctx, Country).findOneOrFail({ + where: { + code: 'AT', + }, + }); + country.enabled = false; + await new Promise(resolve => setTimeout(resolve, delay)); + await this.connection.getRepository(ctx, Country).save(country); + country.enabled = true; + await new Promise(resolve => setTimeout(resolve, delay)); + await this.connection.getRepository(ctx, Country).save(country); + return true; + } + + /** + * This mutation attempts to cause a deadlock + */ + @Transaction() + @Mutation() + async attemptDeadlock(@Ctx() ctx: RequestContext) { + const product = await this.connection.getRepository(ctx, Product).findOneOrFail(1); + const asset = await this.connection.getRepository(ctx, Asset).save( + new Asset({ + name: 'test', + type: AssetType.BINARY, + mimeType: 'test/test', + fileSize: 1, + source: '', + preview: '', + }), + ); + await new Promise(resolve => setTimeout(resolve, 100)); + const productAsset = await this.connection.getRepository(ctx, ProductAsset).save( + new ProductAsset({ + assetId: asset.id, + productId: product.id, + position: 0, + }), + ); + await this.connection.getRepository(ctx, Product).update(product.id, { enabled: false }); + return true; + } +} + +@VendurePlugin({ + imports: [PluginCommonModule], + adminApiExtensions: { + resolvers: [SlowMutationResolver], + schema: gql` + extend type Mutation { + slowMutation(delay: Int!): Boolean! + attemptDeadlock: Boolean! + } + `, + }, +}) +export class SlowMutationPlugin {} diff --git a/packages/core/e2e/graphql/generated-e2e-admin-types.ts b/packages/core/e2e/graphql/generated-e2e-admin-types.ts index c0f4ae68a0..6c7464ce53 100644 --- a/packages/core/e2e/graphql/generated-e2e-admin-types.ts +++ b/packages/core/e2e/graphql/generated-e2e-admin-types.ts @@ -3,948 +3,819 @@ export type Maybe = T | null; export type Exact = { [K in keyof T]: T[K] }; /** All built-in and custom scalars, mapped to their actual values */ export type Scalars = { - ID: string; - String: string; - Boolean: boolean; - Int: number; - Float: number; - /** The `JSON` scalar type represents JSON values as specified by [ECMA-404](http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf). */ - JSON: any; - /** A date-time string at UTC, such as 2007-12-03T10:15:30Z, compliant with the `date-time` format outlined in section 5.6 of the RFC 3339 profile of the ISO 8601 standard for representation of dates and times using the Gregorian calendar. */ - DateTime: any; - /** The `Upload` scalar type represents a file upload. */ - Upload: any; + ID: string; + String: string; + Boolean: boolean; + Int: number; + Float: number; + /** The `JSON` scalar type represents JSON values as specified by [ECMA-404](http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf). */ + JSON: any; + /** A date-time string at UTC, such as 2007-12-03T10:15:30Z, compliant with the `date-time` format outlined in section 5.6 of the RFC 3339 profile of the ISO 8601 standard for representation of dates and times using the Gregorian calendar. */ + DateTime: any; + /** The `Upload` scalar type represents a file upload. */ + Upload: any; }; export type Query = { - administrators: AdministratorList; - administrator?: Maybe; - /** Get a list of Assets */ - assets: AssetList; - /** Get a single Asset by id */ - asset?: Maybe; - me?: Maybe; - channels: Array; - channel?: Maybe; - activeChannel: Channel; - collections: CollectionList; - /** Get a Collection either by id or slug. If neither id nor slug is speicified, an error will result. */ - collection?: Maybe; - collectionFilters: Array; - countries: CountryList; - country?: Maybe; - customerGroups: CustomerGroupList; - customerGroup?: Maybe; - customers: CustomerList; - customer?: Maybe; - facets: FacetList; - facet?: Maybe; - globalSettings: GlobalSettings; - job?: Maybe; - jobs: JobList; - jobsById: Array; - jobQueues: Array; - order?: Maybe; - orders: OrderList; - paymentMethods: PaymentMethodList; - paymentMethod?: Maybe; - productOptionGroups: Array; - productOptionGroup?: Maybe; - search: SearchResponse; - products: ProductList; - /** Get a Product either by id or slug. If neither id nor slug is speicified, an error will result. */ - product?: Maybe; - /** Get a ProductVariant by id */ - productVariant?: Maybe; - promotion?: Maybe; - promotions: PromotionList; - promotionConditions: Array; - promotionActions: Array; - roles: RoleList; - role?: Maybe; - shippingMethods: ShippingMethodList; - shippingMethod?: Maybe; - shippingEligibilityCheckers: Array; - shippingCalculators: Array; - testShippingMethod: TestShippingMethodResult; - testEligibleShippingMethods: Array; - taxCategories: Array; - taxCategory?: Maybe; - taxRates: TaxRateList; - taxRate?: Maybe; - zones: Array; - zone?: Maybe; + administrators: AdministratorList; + administrator?: Maybe; + /** Get a list of Assets */ + assets: AssetList; + /** Get a single Asset by id */ + asset?: Maybe; + me?: Maybe; + channels: Array; + channel?: Maybe; + activeChannel: Channel; + collections: CollectionList; + /** Get a Collection either by id or slug. If neither id nor slug is speicified, an error will result. */ + collection?: Maybe; + collectionFilters: Array; + countries: CountryList; + country?: Maybe; + customerGroups: CustomerGroupList; + customerGroup?: Maybe; + customers: CustomerList; + customer?: Maybe; + facets: FacetList; + facet?: Maybe; + globalSettings: GlobalSettings; + job?: Maybe; + jobs: JobList; + jobsById: Array; + jobQueues: Array; + order?: Maybe; + orders: OrderList; + paymentMethods: PaymentMethodList; + paymentMethod?: Maybe; + productOptionGroups: Array; + productOptionGroup?: Maybe; + search: SearchResponse; + products: ProductList; + /** Get a Product either by id or slug. If neither id nor slug is speicified, an error will result. */ + product?: Maybe; + /** Get a ProductVariant by id */ + productVariant?: Maybe; + promotion?: Maybe; + promotions: PromotionList; + promotionConditions: Array; + promotionActions: Array; + roles: RoleList; + role?: Maybe; + shippingMethods: ShippingMethodList; + shippingMethod?: Maybe; + shippingEligibilityCheckers: Array; + shippingCalculators: Array; + testShippingMethod: TestShippingMethodResult; + testEligibleShippingMethods: Array; + taxCategories: Array; + taxCategory?: Maybe; + taxRates: TaxRateList; + taxRate?: Maybe; + zones: Array; + zone?: Maybe; }; - export type QueryAdministratorsArgs = { - options?: Maybe; + options?: Maybe; }; - export type QueryAdministratorArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type QueryAssetsArgs = { - options?: Maybe; + options?: Maybe; }; - export type QueryAssetArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type QueryChannelArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type QueryCollectionsArgs = { - options?: Maybe; + options?: Maybe; }; - export type QueryCollectionArgs = { - id?: Maybe; - slug?: Maybe; + id?: Maybe; + slug?: Maybe; }; - export type QueryCountriesArgs = { - options?: Maybe; + options?: Maybe; }; - export type QueryCountryArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type QueryCustomerGroupsArgs = { - options?: Maybe; + options?: Maybe; }; - export type QueryCustomerGroupArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type QueryCustomersArgs = { - options?: Maybe; + options?: Maybe; }; - export type QueryCustomerArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type QueryFacetsArgs = { - options?: Maybe; + options?: Maybe; }; - export type QueryFacetArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type QueryJobArgs = { - jobId: Scalars['ID']; + jobId: Scalars['ID']; }; - export type QueryJobsArgs = { - options?: Maybe; + options?: Maybe; }; - export type QueryJobsByIdArgs = { - jobIds: Array; + jobIds: Array; }; - export type QueryOrderArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type QueryOrdersArgs = { - options?: Maybe; + options?: Maybe; }; - export type QueryPaymentMethodsArgs = { - options?: Maybe; + options?: Maybe; }; - export type QueryPaymentMethodArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type QueryProductOptionGroupsArgs = { - filterTerm?: Maybe; + filterTerm?: Maybe; }; - export type QueryProductOptionGroupArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type QuerySearchArgs = { - input: SearchInput; + input: SearchInput; }; - export type QueryProductsArgs = { - options?: Maybe; + options?: Maybe; }; - export type QueryProductArgs = { - id?: Maybe; - slug?: Maybe; + id?: Maybe; + slug?: Maybe; }; - export type QueryProductVariantArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type QueryPromotionArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type QueryPromotionsArgs = { - options?: Maybe; + options?: Maybe; }; - export type QueryRolesArgs = { - options?: Maybe; + options?: Maybe; }; - export type QueryRoleArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type QueryShippingMethodsArgs = { - options?: Maybe; + options?: Maybe; }; - export type QueryShippingMethodArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type QueryTestShippingMethodArgs = { - input: TestShippingMethodInput; + input: TestShippingMethodInput; }; - export type QueryTestEligibleShippingMethodsArgs = { - input: TestEligibleShippingMethodsInput; + input: TestEligibleShippingMethodsInput; }; - export type QueryTaxCategoryArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type QueryTaxRatesArgs = { - options?: Maybe; + options?: Maybe; }; - export type QueryTaxRateArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type QueryZoneArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; export type Mutation = { - /** Create a new Administrator */ - createAdministrator: Administrator; - /** Update an existing Administrator */ - updateAdministrator: Administrator; - /** Delete an Administrator */ - deleteAdministrator: DeletionResponse; - /** Assign a Role to an Administrator */ - assignRoleToAdministrator: Administrator; - /** Create a new Asset */ - createAssets: Array; - /** Update an existing Asset */ - updateAsset: Asset; - /** Delete an Asset */ - deleteAsset: DeletionResponse; - /** Delete multiple Assets */ - deleteAssets: DeletionResponse; - /** Authenticates the user using the native authentication strategy. This mutation is an alias for `authenticate({ native: { ... }})` */ - login: NativeAuthenticationResult; - /** Authenticates the user using a named authentication strategy */ - authenticate: AuthenticationResult; - logout: Success; - /** Create a new Channel */ - createChannel: CreateChannelResult; - /** Update an existing Channel */ - updateChannel: UpdateChannelResult; - /** Delete a Channel */ - deleteChannel: DeletionResponse; - /** Create a new Collection */ - createCollection: Collection; - /** Update an existing Collection */ - updateCollection: Collection; - /** Delete a Collection and all of its descendants */ - deleteCollection: DeletionResponse; - /** Move a Collection to a different parent or index */ - moveCollection: Collection; - /** Create a new Country */ - createCountry: Country; - /** Update an existing Country */ - updateCountry: Country; - /** Delete a Country */ - deleteCountry: DeletionResponse; - /** Create a new CustomerGroup */ - createCustomerGroup: CustomerGroup; - /** Update an existing CustomerGroup */ - updateCustomerGroup: CustomerGroup; - /** Delete a CustomerGroup */ - deleteCustomerGroup: DeletionResponse; - /** Add Customers to a CustomerGroup */ - addCustomersToGroup: CustomerGroup; - /** Remove Customers from a CustomerGroup */ - removeCustomersFromGroup: CustomerGroup; - /** Create a new Customer. If a password is provided, a new User will also be created an linked to the Customer. */ - createCustomer: CreateCustomerResult; - /** Update an existing Customer */ - updateCustomer: UpdateCustomerResult; - /** Delete a Customer */ - deleteCustomer: DeletionResponse; - /** Create a new Address and associate it with the Customer specified by customerId */ - createCustomerAddress: Address; - /** Update an existing Address */ - updateCustomerAddress: Address; - /** Update an existing Address */ - deleteCustomerAddress: Success; - addNoteToCustomer: Customer; - updateCustomerNote: HistoryEntry; - deleteCustomerNote: DeletionResponse; - /** Create a new Facet */ - createFacet: Facet; - /** Update an existing Facet */ - updateFacet: Facet; - /** Delete an existing Facet */ - deleteFacet: DeletionResponse; - /** Create one or more FacetValues */ - createFacetValues: Array; - /** Update one or more FacetValues */ - updateFacetValues: Array; - /** Delete one or more FacetValues */ - deleteFacetValues: Array; - updateGlobalSettings: UpdateGlobalSettingsResult; - importProducts?: Maybe; - /** Remove all settled jobs in the given queues olfer than the given date. Returns the number of jobs deleted. */ - removeSettledJobs: Scalars['Int']; - settlePayment: SettlePaymentResult; - addFulfillmentToOrder: AddFulfillmentToOrderResult; - cancelOrder: CancelOrderResult; - refundOrder: RefundOrderResult; - settleRefund: SettleRefundResult; - addNoteToOrder: Order; - updateOrderNote: HistoryEntry; - deleteOrderNote: DeletionResponse; - transitionOrderToState?: Maybe; - transitionFulfillmentToState: TransitionFulfillmentToStateResult; - setOrderCustomFields?: Maybe; - /** Update an existing PaymentMethod */ - updatePaymentMethod: PaymentMethod; - /** Create a new ProductOptionGroup */ - createProductOptionGroup: ProductOptionGroup; - /** Update an existing ProductOptionGroup */ - updateProductOptionGroup: ProductOptionGroup; - /** Create a new ProductOption within a ProductOptionGroup */ - createProductOption: ProductOption; - /** Create a new ProductOption within a ProductOptionGroup */ - updateProductOption: ProductOption; - reindex: Job; - /** Create a new Product */ - createProduct: Product; - /** Update an existing Product */ - updateProduct: Product; - /** Delete a Product */ - deleteProduct: DeletionResponse; - /** Add an OptionGroup to a Product */ - addOptionGroupToProduct: Product; - /** Remove an OptionGroup from a Product */ - removeOptionGroupFromProduct: RemoveOptionGroupFromProductResult; - /** Create a set of ProductVariants based on the OptionGroups assigned to the given Product */ - createProductVariants: Array>; - /** Update existing ProductVariants */ - updateProductVariants: Array>; - /** Delete a ProductVariant */ - deleteProductVariant: DeletionResponse; - /** Assigns Products to the specified Channel */ - assignProductsToChannel: Array; - /** Removes Products from the specified Channel */ - removeProductsFromChannel: Array; - createPromotion: CreatePromotionResult; - updatePromotion: UpdatePromotionResult; - deletePromotion: DeletionResponse; - /** Create a new Role */ - createRole: Role; - /** Update an existing Role */ - updateRole: Role; - /** Delete an existing Role */ - deleteRole: DeletionResponse; - /** Create a new ShippingMethod */ - createShippingMethod: ShippingMethod; - /** Update an existing ShippingMethod */ - updateShippingMethod: ShippingMethod; - /** Delete a ShippingMethod */ - deleteShippingMethod: DeletionResponse; - /** Create a new TaxCategory */ - createTaxCategory: TaxCategory; - /** Update an existing TaxCategory */ - updateTaxCategory: TaxCategory; - /** Deletes a TaxCategory */ - deleteTaxCategory: DeletionResponse; - /** Create a new TaxRate */ - createTaxRate: TaxRate; - /** Update an existing TaxRate */ - updateTaxRate: TaxRate; - /** Delete a TaxRate */ - deleteTaxRate: DeletionResponse; - /** Create a new Zone */ - createZone: Zone; - /** Update an existing Zone */ - updateZone: Zone; - /** Delete a Zone */ - deleteZone: DeletionResponse; - /** Add members to a Zone */ - addMembersToZone: Zone; - /** Remove members from a Zone */ - removeMembersFromZone: Zone; + /** Create a new Administrator */ + createAdministrator: Administrator; + /** Update an existing Administrator */ + updateAdministrator: Administrator; + /** Delete an Administrator */ + deleteAdministrator: DeletionResponse; + /** Assign a Role to an Administrator */ + assignRoleToAdministrator: Administrator; + /** Create a new Asset */ + createAssets: Array; + /** Update an existing Asset */ + updateAsset: Asset; + /** Delete an Asset */ + deleteAsset: DeletionResponse; + /** Delete multiple Assets */ + deleteAssets: DeletionResponse; + /** Authenticates the user using the native authentication strategy. This mutation is an alias for `authenticate({ native: { ... }})` */ + login: NativeAuthenticationResult; + /** Authenticates the user using a named authentication strategy */ + authenticate: AuthenticationResult; + logout: Success; + /** Create a new Channel */ + createChannel: CreateChannelResult; + /** Update an existing Channel */ + updateChannel: UpdateChannelResult; + /** Delete a Channel */ + deleteChannel: DeletionResponse; + /** Create a new Collection */ + createCollection: Collection; + /** Update an existing Collection */ + updateCollection: Collection; + /** Delete a Collection and all of its descendants */ + deleteCollection: DeletionResponse; + /** Move a Collection to a different parent or index */ + moveCollection: Collection; + /** Create a new Country */ + createCountry: Country; + /** Update an existing Country */ + updateCountry: Country; + /** Delete a Country */ + deleteCountry: DeletionResponse; + /** Create a new CustomerGroup */ + createCustomerGroup: CustomerGroup; + /** Update an existing CustomerGroup */ + updateCustomerGroup: CustomerGroup; + /** Delete a CustomerGroup */ + deleteCustomerGroup: DeletionResponse; + /** Add Customers to a CustomerGroup */ + addCustomersToGroup: CustomerGroup; + /** Remove Customers from a CustomerGroup */ + removeCustomersFromGroup: CustomerGroup; + /** Create a new Customer. If a password is provided, a new User will also be created an linked to the Customer. */ + createCustomer: CreateCustomerResult; + /** Update an existing Customer */ + updateCustomer: UpdateCustomerResult; + /** Delete a Customer */ + deleteCustomer: DeletionResponse; + /** Create a new Address and associate it with the Customer specified by customerId */ + createCustomerAddress: Address; + /** Update an existing Address */ + updateCustomerAddress: Address; + /** Update an existing Address */ + deleteCustomerAddress: Success; + addNoteToCustomer: Customer; + updateCustomerNote: HistoryEntry; + deleteCustomerNote: DeletionResponse; + /** Create a new Facet */ + createFacet: Facet; + /** Update an existing Facet */ + updateFacet: Facet; + /** Delete an existing Facet */ + deleteFacet: DeletionResponse; + /** Create one or more FacetValues */ + createFacetValues: Array; + /** Update one or more FacetValues */ + updateFacetValues: Array; + /** Delete one or more FacetValues */ + deleteFacetValues: Array; + updateGlobalSettings: UpdateGlobalSettingsResult; + importProducts?: Maybe; + /** Remove all settled jobs in the given queues olfer than the given date. Returns the number of jobs deleted. */ + removeSettledJobs: Scalars['Int']; + settlePayment: SettlePaymentResult; + addFulfillmentToOrder: AddFulfillmentToOrderResult; + cancelOrder: CancelOrderResult; + refundOrder: RefundOrderResult; + settleRefund: SettleRefundResult; + addNoteToOrder: Order; + updateOrderNote: HistoryEntry; + deleteOrderNote: DeletionResponse; + transitionOrderToState?: Maybe; + transitionFulfillmentToState: TransitionFulfillmentToStateResult; + setOrderCustomFields?: Maybe; + /** Update an existing PaymentMethod */ + updatePaymentMethod: PaymentMethod; + /** Create a new ProductOptionGroup */ + createProductOptionGroup: ProductOptionGroup; + /** Update an existing ProductOptionGroup */ + updateProductOptionGroup: ProductOptionGroup; + /** Create a new ProductOption within a ProductOptionGroup */ + createProductOption: ProductOption; + /** Create a new ProductOption within a ProductOptionGroup */ + updateProductOption: ProductOption; + reindex: Job; + /** Create a new Product */ + createProduct: Product; + /** Update an existing Product */ + updateProduct: Product; + /** Delete a Product */ + deleteProduct: DeletionResponse; + /** Add an OptionGroup to a Product */ + addOptionGroupToProduct: Product; + /** Remove an OptionGroup from a Product */ + removeOptionGroupFromProduct: RemoveOptionGroupFromProductResult; + /** Create a set of ProductVariants based on the OptionGroups assigned to the given Product */ + createProductVariants: Array>; + /** Update existing ProductVariants */ + updateProductVariants: Array>; + /** Delete a ProductVariant */ + deleteProductVariant: DeletionResponse; + /** Assigns Products to the specified Channel */ + assignProductsToChannel: Array; + /** Removes Products from the specified Channel */ + removeProductsFromChannel: Array; + createPromotion: CreatePromotionResult; + updatePromotion: UpdatePromotionResult; + deletePromotion: DeletionResponse; + /** Create a new Role */ + createRole: Role; + /** Update an existing Role */ + updateRole: Role; + /** Delete an existing Role */ + deleteRole: DeletionResponse; + /** Create a new ShippingMethod */ + createShippingMethod: ShippingMethod; + /** Update an existing ShippingMethod */ + updateShippingMethod: ShippingMethod; + /** Delete a ShippingMethod */ + deleteShippingMethod: DeletionResponse; + /** Create a new TaxCategory */ + createTaxCategory: TaxCategory; + /** Update an existing TaxCategory */ + updateTaxCategory: TaxCategory; + /** Deletes a TaxCategory */ + deleteTaxCategory: DeletionResponse; + /** Create a new TaxRate */ + createTaxRate: TaxRate; + /** Update an existing TaxRate */ + updateTaxRate: TaxRate; + /** Delete a TaxRate */ + deleteTaxRate: DeletionResponse; + /** Create a new Zone */ + createZone: Zone; + /** Update an existing Zone */ + updateZone: Zone; + /** Delete a Zone */ + deleteZone: DeletionResponse; + /** Add members to a Zone */ + addMembersToZone: Zone; + /** Remove members from a Zone */ + removeMembersFromZone: Zone; }; - export type MutationCreateAdministratorArgs = { - input: CreateAdministratorInput; + input: CreateAdministratorInput; }; - export type MutationUpdateAdministratorArgs = { - input: UpdateAdministratorInput; + input: UpdateAdministratorInput; }; - export type MutationDeleteAdministratorArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type MutationAssignRoleToAdministratorArgs = { - administratorId: Scalars['ID']; - roleId: Scalars['ID']; + administratorId: Scalars['ID']; + roleId: Scalars['ID']; }; - export type MutationCreateAssetsArgs = { - input: Array; + input: Array; }; - export type MutationUpdateAssetArgs = { - input: UpdateAssetInput; + input: UpdateAssetInput; }; - export type MutationDeleteAssetArgs = { - id: Scalars['ID']; - force?: Maybe; + id: Scalars['ID']; + force?: Maybe; }; - export type MutationDeleteAssetsArgs = { - ids: Array; - force?: Maybe; + ids: Array; + force?: Maybe; }; - export type MutationLoginArgs = { - username: Scalars['String']; - password: Scalars['String']; - rememberMe?: Maybe; + username: Scalars['String']; + password: Scalars['String']; + rememberMe?: Maybe; }; - export type MutationAuthenticateArgs = { - input: AuthenticationInput; - rememberMe?: Maybe; + input: AuthenticationInput; + rememberMe?: Maybe; }; - export type MutationCreateChannelArgs = { - input: CreateChannelInput; + input: CreateChannelInput; }; - export type MutationUpdateChannelArgs = { - input: UpdateChannelInput; + input: UpdateChannelInput; }; - export type MutationDeleteChannelArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type MutationCreateCollectionArgs = { - input: CreateCollectionInput; + input: CreateCollectionInput; }; - export type MutationUpdateCollectionArgs = { - input: UpdateCollectionInput; + input: UpdateCollectionInput; }; - export type MutationDeleteCollectionArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type MutationMoveCollectionArgs = { - input: MoveCollectionInput; + input: MoveCollectionInput; }; - export type MutationCreateCountryArgs = { - input: CreateCountryInput; + input: CreateCountryInput; }; - export type MutationUpdateCountryArgs = { - input: UpdateCountryInput; + input: UpdateCountryInput; }; - export type MutationDeleteCountryArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type MutationCreateCustomerGroupArgs = { - input: CreateCustomerGroupInput; + input: CreateCustomerGroupInput; }; - export type MutationUpdateCustomerGroupArgs = { - input: UpdateCustomerGroupInput; + input: UpdateCustomerGroupInput; }; - export type MutationDeleteCustomerGroupArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type MutationAddCustomersToGroupArgs = { - customerGroupId: Scalars['ID']; - customerIds: Array; + customerGroupId: Scalars['ID']; + customerIds: Array; }; - export type MutationRemoveCustomersFromGroupArgs = { - customerGroupId: Scalars['ID']; - customerIds: Array; + customerGroupId: Scalars['ID']; + customerIds: Array; }; - export type MutationCreateCustomerArgs = { - input: CreateCustomerInput; - password?: Maybe; + input: CreateCustomerInput; + password?: Maybe; }; - export type MutationUpdateCustomerArgs = { - input: UpdateCustomerInput; + input: UpdateCustomerInput; }; - export type MutationDeleteCustomerArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type MutationCreateCustomerAddressArgs = { - customerId: Scalars['ID']; - input: CreateAddressInput; + customerId: Scalars['ID']; + input: CreateAddressInput; }; - export type MutationUpdateCustomerAddressArgs = { - input: UpdateAddressInput; + input: UpdateAddressInput; }; - export type MutationDeleteCustomerAddressArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type MutationAddNoteToCustomerArgs = { - input: AddNoteToCustomerInput; + input: AddNoteToCustomerInput; }; - export type MutationUpdateCustomerNoteArgs = { - input: UpdateCustomerNoteInput; + input: UpdateCustomerNoteInput; }; - export type MutationDeleteCustomerNoteArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type MutationCreateFacetArgs = { - input: CreateFacetInput; + input: CreateFacetInput; }; - export type MutationUpdateFacetArgs = { - input: UpdateFacetInput; + input: UpdateFacetInput; }; - export type MutationDeleteFacetArgs = { - id: Scalars['ID']; - force?: Maybe; + id: Scalars['ID']; + force?: Maybe; }; - export type MutationCreateFacetValuesArgs = { - input: Array; + input: Array; }; - export type MutationUpdateFacetValuesArgs = { - input: Array; + input: Array; }; - export type MutationDeleteFacetValuesArgs = { - ids: Array; - force?: Maybe; + ids: Array; + force?: Maybe; }; - export type MutationUpdateGlobalSettingsArgs = { - input: UpdateGlobalSettingsInput; + input: UpdateGlobalSettingsInput; }; - export type MutationImportProductsArgs = { - csvFile: Scalars['Upload']; + csvFile: Scalars['Upload']; }; - export type MutationRemoveSettledJobsArgs = { - queueNames?: Maybe>; - olderThan?: Maybe; + queueNames?: Maybe>; + olderThan?: Maybe; }; - export type MutationSettlePaymentArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type MutationAddFulfillmentToOrderArgs = { - input: FulfillOrderInput; + input: FulfillOrderInput; }; - export type MutationCancelOrderArgs = { - input: CancelOrderInput; + input: CancelOrderInput; }; - export type MutationRefundOrderArgs = { - input: RefundOrderInput; + input: RefundOrderInput; }; - export type MutationSettleRefundArgs = { - input: SettleRefundInput; + input: SettleRefundInput; }; - export type MutationAddNoteToOrderArgs = { - input: AddNoteToOrderInput; + input: AddNoteToOrderInput; }; - export type MutationUpdateOrderNoteArgs = { - input: UpdateOrderNoteInput; + input: UpdateOrderNoteInput; }; - export type MutationDeleteOrderNoteArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type MutationTransitionOrderToStateArgs = { - id: Scalars['ID']; - state: Scalars['String']; + id: Scalars['ID']; + state: Scalars['String']; }; - export type MutationTransitionFulfillmentToStateArgs = { - id: Scalars['ID']; - state: Scalars['String']; + id: Scalars['ID']; + state: Scalars['String']; }; - export type MutationSetOrderCustomFieldsArgs = { - input: UpdateOrderInput; + input: UpdateOrderInput; }; - export type MutationUpdatePaymentMethodArgs = { - input: UpdatePaymentMethodInput; + input: UpdatePaymentMethodInput; }; - export type MutationCreateProductOptionGroupArgs = { - input: CreateProductOptionGroupInput; + input: CreateProductOptionGroupInput; }; - export type MutationUpdateProductOptionGroupArgs = { - input: UpdateProductOptionGroupInput; + input: UpdateProductOptionGroupInput; }; - export type MutationCreateProductOptionArgs = { - input: CreateProductOptionInput; + input: CreateProductOptionInput; }; - export type MutationUpdateProductOptionArgs = { - input: UpdateProductOptionInput; + input: UpdateProductOptionInput; }; - export type MutationCreateProductArgs = { - input: CreateProductInput; + input: CreateProductInput; }; - export type MutationUpdateProductArgs = { - input: UpdateProductInput; + input: UpdateProductInput; }; - export type MutationDeleteProductArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type MutationAddOptionGroupToProductArgs = { - productId: Scalars['ID']; - optionGroupId: Scalars['ID']; + productId: Scalars['ID']; + optionGroupId: Scalars['ID']; }; - export type MutationRemoveOptionGroupFromProductArgs = { - productId: Scalars['ID']; - optionGroupId: Scalars['ID']; + productId: Scalars['ID']; + optionGroupId: Scalars['ID']; }; - export type MutationCreateProductVariantsArgs = { - input: Array; + input: Array; }; - export type MutationUpdateProductVariantsArgs = { - input: Array; + input: Array; }; - export type MutationDeleteProductVariantArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type MutationAssignProductsToChannelArgs = { - input: AssignProductsToChannelInput; + input: AssignProductsToChannelInput; }; - export type MutationRemoveProductsFromChannelArgs = { - input: RemoveProductsFromChannelInput; + input: RemoveProductsFromChannelInput; }; - export type MutationCreatePromotionArgs = { - input: CreatePromotionInput; + input: CreatePromotionInput; }; - export type MutationUpdatePromotionArgs = { - input: UpdatePromotionInput; + input: UpdatePromotionInput; }; - export type MutationDeletePromotionArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type MutationCreateRoleArgs = { - input: CreateRoleInput; + input: CreateRoleInput; }; - export type MutationUpdateRoleArgs = { - input: UpdateRoleInput; + input: UpdateRoleInput; }; - export type MutationDeleteRoleArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type MutationCreateShippingMethodArgs = { - input: CreateShippingMethodInput; + input: CreateShippingMethodInput; }; - export type MutationUpdateShippingMethodArgs = { - input: UpdateShippingMethodInput; + input: UpdateShippingMethodInput; }; - export type MutationDeleteShippingMethodArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type MutationCreateTaxCategoryArgs = { - input: CreateTaxCategoryInput; + input: CreateTaxCategoryInput; }; - export type MutationUpdateTaxCategoryArgs = { - input: UpdateTaxCategoryInput; + input: UpdateTaxCategoryInput; }; - export type MutationDeleteTaxCategoryArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type MutationCreateTaxRateArgs = { - input: CreateTaxRateInput; + input: CreateTaxRateInput; }; - export type MutationUpdateTaxRateArgs = { - input: UpdateTaxRateInput; + input: UpdateTaxRateInput; }; - export type MutationDeleteTaxRateArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type MutationCreateZoneArgs = { - input: CreateZoneInput; + input: CreateZoneInput; }; - export type MutationUpdateZoneArgs = { - input: UpdateZoneInput; + input: UpdateZoneInput; }; - export type MutationDeleteZoneArgs = { - id: Scalars['ID']; + id: Scalars['ID']; }; - export type MutationAddMembersToZoneArgs = { - zoneId: Scalars['ID']; - memberIds: Array; + zoneId: Scalars['ID']; + memberIds: Array; }; - export type MutationRemoveMembersFromZoneArgs = { - zoneId: Scalars['ID']; - memberIds: Array; + zoneId: Scalars['ID']; + memberIds: Array; }; export type CreateAdministratorInput = { - firstName: Scalars['String']; - lastName: Scalars['String']; - emailAddress: Scalars['String']; - password: Scalars['String']; - roleIds: Array; + firstName: Scalars['String']; + lastName: Scalars['String']; + emailAddress: Scalars['String']; + password: Scalars['String']; + roleIds: Array; }; export type UpdateAdministratorInput = { - id: Scalars['ID']; - firstName?: Maybe; - lastName?: Maybe; - emailAddress?: Maybe; - password?: Maybe; - roleIds?: Maybe>; + id: Scalars['ID']; + firstName?: Maybe; + lastName?: Maybe; + emailAddress?: Maybe; + password?: Maybe; + roleIds?: Maybe>; }; export type MimeTypeError = ErrorResult & { - errorCode: ErrorCode; - message: Scalars['String']; - fileName: Scalars['String']; - mimeType: Scalars['String']; + errorCode: ErrorCode; + message: Scalars['String']; + fileName: Scalars['String']; + mimeType: Scalars['String']; }; export type CreateAssetResult = Asset | MimeTypeError; export type CreateAssetInput = { - file: Scalars['Upload']; + file: Scalars['Upload']; }; export type CoordinateInput = { - x: Scalars['Float']; - y: Scalars['Float']; + x: Scalars['Float']; + y: Scalars['Float']; }; export type UpdateAssetInput = { - id: Scalars['ID']; - name?: Maybe; - focalPoint?: Maybe; + id: Scalars['ID']; + name?: Maybe; + focalPoint?: Maybe; }; export type NativeAuthenticationResult = CurrentUser | InvalidCredentialsError | NativeAuthStrategyError; @@ -952,31 +823,31 @@ export type NativeAuthenticationResult = CurrentUser | InvalidCredentialsError | export type AuthenticationResult = CurrentUser | InvalidCredentialsError; export type CreateChannelInput = { - code: Scalars['String']; - token: Scalars['String']; - defaultLanguageCode: LanguageCode; - pricesIncludeTax: Scalars['Boolean']; - currencyCode: CurrencyCode; - defaultTaxZoneId: Scalars['ID']; - defaultShippingZoneId: Scalars['ID']; + code: Scalars['String']; + token: Scalars['String']; + defaultLanguageCode: LanguageCode; + pricesIncludeTax: Scalars['Boolean']; + currencyCode: CurrencyCode; + defaultTaxZoneId: Scalars['ID']; + defaultShippingZoneId: Scalars['ID']; }; export type UpdateChannelInput = { - id: Scalars['ID']; - code?: Maybe; - token?: Maybe; - defaultLanguageCode?: Maybe; - pricesIncludeTax?: Maybe; - currencyCode?: Maybe; - defaultTaxZoneId?: Maybe; - defaultShippingZoneId?: Maybe; + id: Scalars['ID']; + code?: Maybe; + token?: Maybe; + defaultLanguageCode?: Maybe; + pricesIncludeTax?: Maybe; + currencyCode?: Maybe; + defaultTaxZoneId?: Maybe; + defaultShippingZoneId?: Maybe; }; /** Returned if attempting to set a Channel's defaultLanguageCode to a language which is not enabled in GlobalSettings */ export type LanguageNotAvailableError = ErrorResult & { - errorCode: ErrorCode; - message: Scalars['String']; - languageCode: Scalars['String']; + errorCode: ErrorCode; + message: Scalars['String']; + languageCode: Scalars['String']; }; export type CreateChannelResult = Channel | LanguageNotAvailableError; @@ -984,155 +855,152 @@ export type CreateChannelResult = Channel | LanguageNotAvailableError; export type UpdateChannelResult = Channel | LanguageNotAvailableError; export type Collection = Node & { - isPrivate: Scalars['Boolean']; - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - languageCode?: Maybe; - name: Scalars['String']; - slug: Scalars['String']; - breadcrumbs: Array; - position: Scalars['Int']; - description: Scalars['String']; - featuredAsset?: Maybe; - assets: Array; - parent?: Maybe; - children?: Maybe>; - filters: Array; - translations: Array; - productVariants: ProductVariantList; - customFields?: Maybe; + isPrivate: Scalars['Boolean']; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + languageCode?: Maybe; + name: Scalars['String']; + slug: Scalars['String']; + breadcrumbs: Array; + position: Scalars['Int']; + description: Scalars['String']; + featuredAsset?: Maybe; + assets: Array; + parent?: Maybe; + children?: Maybe>; + filters: Array; + translations: Array; + productVariants: ProductVariantList; + customFields?: Maybe; }; - export type CollectionProductVariantsArgs = { - options?: Maybe; + options?: Maybe; }; export type MoveCollectionInput = { - collectionId: Scalars['ID']; - parentId: Scalars['ID']; - index: Scalars['Int']; + collectionId: Scalars['ID']; + parentId: Scalars['ID']; + index: Scalars['Int']; }; export type CreateCollectionTranslationInput = { - languageCode: LanguageCode; - name: Scalars['String']; - slug: Scalars['String']; - description: Scalars['String']; - customFields?: Maybe; + languageCode: LanguageCode; + name: Scalars['String']; + slug: Scalars['String']; + description: Scalars['String']; + customFields?: Maybe; }; export type UpdateCollectionTranslationInput = { - id?: Maybe; - languageCode: LanguageCode; - name?: Maybe; - slug?: Maybe; - description?: Maybe; - customFields?: Maybe; + id?: Maybe; + languageCode: LanguageCode; + name?: Maybe; + slug?: Maybe; + description?: Maybe; + customFields?: Maybe; }; export type CreateCollectionInput = { - isPrivate?: Maybe; - featuredAssetId?: Maybe; - assetIds?: Maybe>; - parentId?: Maybe; - filters: Array; - translations: Array; - customFields?: Maybe; + isPrivate?: Maybe; + featuredAssetId?: Maybe; + assetIds?: Maybe>; + parentId?: Maybe; + filters: Array; + translations: Array; + customFields?: Maybe; }; export type UpdateCollectionInput = { - id: Scalars['ID']; - isPrivate?: Maybe; - featuredAssetId?: Maybe; - parentId?: Maybe; - assetIds?: Maybe>; - filters?: Maybe>; - translations?: Maybe>; - customFields?: Maybe; + id: Scalars['ID']; + isPrivate?: Maybe; + featuredAssetId?: Maybe; + parentId?: Maybe; + assetIds?: Maybe>; + filters?: Maybe>; + translations?: Maybe>; + customFields?: Maybe; }; export type CountryTranslationInput = { - id?: Maybe; - languageCode: LanguageCode; - name?: Maybe; + id?: Maybe; + languageCode: LanguageCode; + name?: Maybe; }; export type CreateCountryInput = { - code: Scalars['String']; - translations: Array; - enabled: Scalars['Boolean']; + code: Scalars['String']; + translations: Array; + enabled: Scalars['Boolean']; }; export type UpdateCountryInput = { - id: Scalars['ID']; - code?: Maybe; - translations?: Maybe>; - enabled?: Maybe; + id: Scalars['ID']; + code?: Maybe; + translations?: Maybe>; + enabled?: Maybe; }; export type CustomerGroupList = PaginatedList & { - items: Array; - totalItems: Scalars['Int']; + items: Array; + totalItems: Scalars['Int']; }; export type CreateCustomerGroupInput = { - name: Scalars['String']; - customerIds?: Maybe>; + name: Scalars['String']; + customerIds?: Maybe>; }; export type UpdateCustomerGroupInput = { - id: Scalars['ID']; - name?: Maybe; + id: Scalars['ID']; + name?: Maybe; }; export type Customer = Node & { - groups: Array; - history: HistoryEntryList; - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - title?: Maybe; - firstName: Scalars['String']; - lastName: Scalars['String']; - phoneNumber?: Maybe; - emailAddress: Scalars['String']; - addresses?: Maybe>; - orders: OrderList; - user?: Maybe; - customFields?: Maybe; + groups: Array; + history: HistoryEntryList; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + title?: Maybe; + firstName: Scalars['String']; + lastName: Scalars['String']; + phoneNumber?: Maybe; + emailAddress: Scalars['String']; + addresses?: Maybe>; + orders: OrderList; + user?: Maybe; + customFields?: Maybe; }; - export type CustomerHistoryArgs = { - options?: Maybe; + options?: Maybe; }; - export type CustomerOrdersArgs = { - options?: Maybe; + options?: Maybe; }; export type UpdateCustomerInput = { - id: Scalars['ID']; - title?: Maybe; - firstName?: Maybe; - lastName?: Maybe; - phoneNumber?: Maybe; - emailAddress?: Maybe; - customFields?: Maybe; + id: Scalars['ID']; + title?: Maybe; + firstName?: Maybe; + lastName?: Maybe; + phoneNumber?: Maybe; + emailAddress?: Maybe; + customFields?: Maybe; }; export type AddNoteToCustomerInput = { - id: Scalars['ID']; - note: Scalars['String']; - isPublic: Scalars['Boolean']; + id: Scalars['ID']; + note: Scalars['String']; + isPublic: Scalars['Boolean']; }; export type UpdateCustomerNoteInput = { - noteId: Scalars['ID']; - note: Scalars['String']; + noteId: Scalars['ID']; + note: Scalars['String']; }; export type CreateCustomerResult = Customer | EmailAddressConflictError; @@ -1140,82 +1008,82 @@ export type CreateCustomerResult = Customer | EmailAddressConflictError; export type UpdateCustomerResult = Customer | EmailAddressConflictError; export type Facet = Node & { - isPrivate: Scalars['Boolean']; - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - languageCode: LanguageCode; - name: Scalars['String']; - code: Scalars['String']; - values: Array; - translations: Array; - customFields?: Maybe; + isPrivate: Scalars['Boolean']; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + languageCode: LanguageCode; + name: Scalars['String']; + code: Scalars['String']; + values: Array; + translations: Array; + customFields?: Maybe; }; export type FacetTranslationInput = { - id?: Maybe; - languageCode: LanguageCode; - name?: Maybe; - customFields?: Maybe; + id?: Maybe; + languageCode: LanguageCode; + name?: Maybe; + customFields?: Maybe; }; export type CreateFacetInput = { - code: Scalars['String']; - isPrivate: Scalars['Boolean']; - translations: Array; - values?: Maybe>; - customFields?: Maybe; + code: Scalars['String']; + isPrivate: Scalars['Boolean']; + translations: Array; + values?: Maybe>; + customFields?: Maybe; }; export type UpdateFacetInput = { - id: Scalars['ID']; - isPrivate?: Maybe; - code?: Maybe; - translations?: Maybe>; - customFields?: Maybe; + id: Scalars['ID']; + isPrivate?: Maybe; + code?: Maybe; + translations?: Maybe>; + customFields?: Maybe; }; export type FacetValueTranslationInput = { - id?: Maybe; - languageCode: LanguageCode; - name?: Maybe; - customFields?: Maybe; + id?: Maybe; + languageCode: LanguageCode; + name?: Maybe; + customFields?: Maybe; }; export type CreateFacetValueWithFacetInput = { - code: Scalars['String']; - translations: Array; + code: Scalars['String']; + translations: Array; }; export type CreateFacetValueInput = { - facetId: Scalars['ID']; - code: Scalars['String']; - translations: Array; - customFields?: Maybe; + facetId: Scalars['ID']; + code: Scalars['String']; + translations: Array; + customFields?: Maybe; }; export type UpdateFacetValueInput = { - id: Scalars['ID']; - code?: Maybe; - translations?: Maybe>; - customFields?: Maybe; + id: Scalars['ID']; + code?: Maybe; + translations?: Maybe>; + customFields?: Maybe; }; export type Fulfillment = Node & { - nextStates: Array; - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - orderItems: Array; - state: Scalars['String']; - method: Scalars['String']; - trackingCode?: Maybe; + nextStates: Array; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + orderItems: Array; + state: Scalars['String']; + method: Scalars['String']; + trackingCode?: Maybe; }; export type UpdateGlobalSettingsInput = { - availableLanguages?: Maybe>; - trackInventory?: Maybe; - customFields?: Maybe; + availableLanguages?: Maybe>; + trackInventory?: Maybe; + customFields?: Maybe; }; /** @@ -1223,10 +1091,10 @@ export type UpdateGlobalSettingsInput = { * of the GlobalSettings */ export type ChannelDefaultLanguageError = ErrorResult & { - errorCode: ErrorCode; - message: Scalars['String']; - language: Scalars['String']; - channelCode: Scalars['String']; + errorCode: ErrorCode; + message: Scalars['String']; + language: Scalars['String']; + channelCode: Scalars['String']; }; export type UpdateGlobalSettingsResult = GlobalSettings | ChannelDefaultLanguageError; @@ -1234,498 +1102,518 @@ export type UpdateGlobalSettingsResult = GlobalSettings | ChannelDefaultLanguage /** * @description * The state of a Job in the JobQueue - * + * * @docsCategory common */ export enum JobState { - PENDING = 'PENDING', - RUNNING = 'RUNNING', - COMPLETED = 'COMPLETED', - RETRYING = 'RETRYING', - FAILED = 'FAILED' + PENDING = 'PENDING', + RUNNING = 'RUNNING', + COMPLETED = 'COMPLETED', + RETRYING = 'RETRYING', + FAILED = 'FAILED', } export type JobList = PaginatedList & { - items: Array; - totalItems: Scalars['Int']; + items: Array; + totalItems: Scalars['Int']; }; export type Job = Node & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - startedAt?: Maybe; - settledAt?: Maybe; - queueName: Scalars['String']; - state: JobState; - progress: Scalars['Float']; - data?: Maybe; - result?: Maybe; - error?: Maybe; - isSettled: Scalars['Boolean']; - duration: Scalars['Int']; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + startedAt?: Maybe; + settledAt?: Maybe; + queueName: Scalars['String']; + state: JobState; + progress: Scalars['Float']; + data?: Maybe; + result?: Maybe; + error?: Maybe; + isSettled: Scalars['Boolean']; + duration: Scalars['Int']; }; export type JobQueue = { - name: Scalars['String']; - running: Scalars['Boolean']; + name: Scalars['String']; + running: Scalars['Boolean']; }; export type Order = Node & { - nextStates: Array; - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - /** A unique code for the Order */ - code: Scalars['String']; - state: Scalars['String']; - /** An order is active as long as the payment process has not been completed */ - active: Scalars['Boolean']; - customer?: Maybe; - shippingAddress?: Maybe; - billingAddress?: Maybe; - lines: Array; - /** Order-level adjustments to the order total, such as discounts from promotions */ - adjustments: Array; - couponCodes: Array; - /** Promotions applied to the order. Only gets populated after the payment process has completed. */ - promotions: Array; - payments?: Maybe>; - fulfillments?: Maybe>; - totalQuantity: Scalars['Int']; - subTotalBeforeTax: Scalars['Int']; - /** The subTotal is the total of the OrderLines, before order-level promotions and shipping has been applied. */ - subTotal: Scalars['Int']; - currencyCode: CurrencyCode; - shipping: Scalars['Int']; - shippingWithTax: Scalars['Int']; - shippingMethod?: Maybe; - totalBeforeTax: Scalars['Int']; - total: Scalars['Int']; - history: HistoryEntryList; - customFields?: Maybe; + nextStates: Array; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + /** A unique code for the Order */ + code: Scalars['String']; + state: Scalars['String']; + /** An order is active as long as the payment process has not been completed */ + active: Scalars['Boolean']; + customer?: Maybe; + shippingAddress?: Maybe; + billingAddress?: Maybe; + lines: Array; + /** Order-level adjustments to the order total, such as discounts from promotions */ + adjustments: Array; + couponCodes: Array; + /** Promotions applied to the order. Only gets populated after the payment process has completed. */ + promotions: Array; + payments?: Maybe>; + fulfillments?: Maybe>; + totalQuantity: Scalars['Int']; + subTotalBeforeTax: Scalars['Int']; + /** The subTotal is the total of the OrderLines, before order-level promotions and shipping has been applied. */ + subTotal: Scalars['Int']; + currencyCode: CurrencyCode; + shipping: Scalars['Int']; + shippingWithTax: Scalars['Int']; + shippingMethod?: Maybe; + totalBeforeTax: Scalars['Int']; + total: Scalars['Int']; + history: HistoryEntryList; + customFields?: Maybe; }; - export type OrderHistoryArgs = { - options?: Maybe; + options?: Maybe; }; export type UpdateOrderInput = { - id: Scalars['ID']; - customFields?: Maybe; + id: Scalars['ID']; + customFields?: Maybe; }; export type FulfillOrderInput = { - lines: Array; - method: Scalars['String']; - trackingCode?: Maybe; + lines: Array; + method: Scalars['String']; + trackingCode?: Maybe; }; export type CancelOrderInput = { - /** The id of the order to be cancelled */ - orderId: Scalars['ID']; - /** Optionally specify which OrderLines to cancel. If not provided, all OrderLines will be cancelled */ - lines?: Maybe>; - reason?: Maybe; + /** The id of the order to be cancelled */ + orderId: Scalars['ID']; + /** Optionally specify which OrderLines to cancel. If not provided, all OrderLines will be cancelled */ + lines?: Maybe>; + reason?: Maybe; }; export type RefundOrderInput = { - lines: Array; - shipping: Scalars['Int']; - adjustment: Scalars['Int']; - paymentId: Scalars['ID']; - reason?: Maybe; + lines: Array; + shipping: Scalars['Int']; + adjustment: Scalars['Int']; + paymentId: Scalars['ID']; + reason?: Maybe; }; export type OrderLineInput = { - orderLineId: Scalars['ID']; - quantity: Scalars['Int']; + orderLineId: Scalars['ID']; + quantity: Scalars['Int']; }; export type SettleRefundInput = { - id: Scalars['ID']; - transactionId: Scalars['String']; + id: Scalars['ID']; + transactionId: Scalars['String']; }; export type AddNoteToOrderInput = { - id: Scalars['ID']; - note: Scalars['String']; - isPublic: Scalars['Boolean']; + id: Scalars['ID']; + note: Scalars['String']; + isPublic: Scalars['Boolean']; }; export type UpdateOrderNoteInput = { - noteId: Scalars['ID']; - note?: Maybe; - isPublic?: Maybe; + noteId: Scalars['ID']; + note?: Maybe; + isPublic?: Maybe; }; /** Returned if the Payment settlement fails */ export type SettlePaymentError = ErrorResult & { - errorCode: ErrorCode; - message: Scalars['String']; - paymentErrorMessage: Scalars['String']; + errorCode: ErrorCode; + message: Scalars['String']; + paymentErrorMessage: Scalars['String']; }; /** Returned if no OrderLines have been specified for the operation */ export type EmptyOrderLineSelectionError = ErrorResult & { - errorCode: ErrorCode; - message: Scalars['String']; + errorCode: ErrorCode; + message: Scalars['String']; }; /** Returned if the specified items are already part of a Fulfillment */ export type ItemsAlreadyFulfilledError = ErrorResult & { - errorCode: ErrorCode; - message: Scalars['String']; + errorCode: ErrorCode; + message: Scalars['String']; }; /** Returned if an operation has specified OrderLines from multiple Orders */ export type MultipleOrderError = ErrorResult & { - errorCode: ErrorCode; - message: Scalars['String']; + errorCode: ErrorCode; + message: Scalars['String']; }; /** Returned if an attempting to cancel lines from an Order which is still active */ export type CancelActiveOrderError = ErrorResult & { - errorCode: ErrorCode; - message: Scalars['String']; - orderState: Scalars['String']; + errorCode: ErrorCode; + message: Scalars['String']; + orderState: Scalars['String']; }; /** Returned if an attempting to refund a Payment against OrderLines from a different Order */ export type PaymentOrderMismatchError = ErrorResult & { - errorCode: ErrorCode; - message: Scalars['String']; + errorCode: ErrorCode; + message: Scalars['String']; }; /** Returned if an attempting to refund an Order which is not in the expected state */ export type RefundOrderStateError = ErrorResult & { - errorCode: ErrorCode; - message: Scalars['String']; - orderState: Scalars['String']; + errorCode: ErrorCode; + message: Scalars['String']; + orderState: Scalars['String']; }; /** Returned if an attempting to refund an Order but neither items nor shipping refund was specified */ export type NothingToRefundError = ErrorResult & { - errorCode: ErrorCode; - message: Scalars['String']; + errorCode: ErrorCode; + message: Scalars['String']; }; /** Returned if an attempting to refund an OrderItem which has already been refunded */ export type AlreadyRefundedError = ErrorResult & { - errorCode: ErrorCode; - message: Scalars['String']; - refundId: Scalars['ID']; + errorCode: ErrorCode; + message: Scalars['String']; + refundId: Scalars['ID']; }; /** Returned if the specified quantity of an OrderLine is greater than the number of items in that line */ export type QuantityTooGreatError = ErrorResult & { - errorCode: ErrorCode; - message: Scalars['String']; + errorCode: ErrorCode; + message: Scalars['String']; }; /** Returned when there is an error in transitioning the Refund state */ export type RefundStateTransitionError = ErrorResult & { - errorCode: ErrorCode; - message: Scalars['String']; - transitionError: Scalars['String']; - fromState: Scalars['String']; - toState: Scalars['String']; + errorCode: ErrorCode; + message: Scalars['String']; + transitionError: Scalars['String']; + fromState: Scalars['String']; + toState: Scalars['String']; }; /** Returned when there is an error in transitioning the Payment state */ export type PaymentStateTransitionError = ErrorResult & { - errorCode: ErrorCode; - message: Scalars['String']; - transitionError: Scalars['String']; - fromState: Scalars['String']; - toState: Scalars['String']; + errorCode: ErrorCode; + message: Scalars['String']; + transitionError: Scalars['String']; + fromState: Scalars['String']; + toState: Scalars['String']; }; /** Returned when there is an error in transitioning the Fulfillment state */ export type FulfillmentStateTransitionError = ErrorResult & { - errorCode: ErrorCode; - message: Scalars['String']; - transitionError: Scalars['String']; - fromState: Scalars['String']; - toState: Scalars['String']; + errorCode: ErrorCode; + message: Scalars['String']; + transitionError: Scalars['String']; + fromState: Scalars['String']; + toState: Scalars['String']; }; export type TransitionOrderToStateResult = Order | OrderStateTransitionError; -export type SettlePaymentResult = Payment | SettlePaymentError | PaymentStateTransitionError | OrderStateTransitionError; - -export type AddFulfillmentToOrderResult = Fulfillment | EmptyOrderLineSelectionError | ItemsAlreadyFulfilledError; - -export type CancelOrderResult = Order | EmptyOrderLineSelectionError | QuantityTooGreatError | MultipleOrderError | CancelActiveOrderError | OrderStateTransitionError; - -export type RefundOrderResult = Refund | QuantityTooGreatError | NothingToRefundError | OrderStateTransitionError | MultipleOrderError | PaymentOrderMismatchError | RefundOrderStateError | AlreadyRefundedError | RefundStateTransitionError; +export type SettlePaymentResult = + | Payment + | SettlePaymentError + | PaymentStateTransitionError + | OrderStateTransitionError; + +export type AddFulfillmentToOrderResult = + | Fulfillment + | EmptyOrderLineSelectionError + | ItemsAlreadyFulfilledError; + +export type CancelOrderResult = + | Order + | EmptyOrderLineSelectionError + | QuantityTooGreatError + | MultipleOrderError + | CancelActiveOrderError + | OrderStateTransitionError; + +export type RefundOrderResult = + | Refund + | QuantityTooGreatError + | NothingToRefundError + | OrderStateTransitionError + | MultipleOrderError + | PaymentOrderMismatchError + | RefundOrderStateError + | AlreadyRefundedError + | RefundStateTransitionError; export type SettleRefundResult = Refund | RefundStateTransitionError; export type TransitionFulfillmentToStateResult = Fulfillment | FulfillmentStateTransitionError; export type PaymentMethodList = PaginatedList & { - items: Array; - totalItems: Scalars['Int']; + items: Array; + totalItems: Scalars['Int']; }; export type UpdatePaymentMethodInput = { - id: Scalars['ID']; - code?: Maybe; - enabled?: Maybe; - configArgs?: Maybe>; + id: Scalars['ID']; + code?: Maybe; + enabled?: Maybe; + configArgs?: Maybe>; }; export type ProductOptionGroupTranslationInput = { - id?: Maybe; - languageCode: LanguageCode; - name?: Maybe; - customFields?: Maybe; + id?: Maybe; + languageCode: LanguageCode; + name?: Maybe; + customFields?: Maybe; }; export type CreateProductOptionGroupInput = { - code: Scalars['String']; - translations: Array; - options: Array; - customFields?: Maybe; + code: Scalars['String']; + translations: Array; + options: Array; + customFields?: Maybe; }; export type UpdateProductOptionGroupInput = { - id: Scalars['ID']; - code?: Maybe; - translations?: Maybe>; - customFields?: Maybe; + id: Scalars['ID']; + code?: Maybe; + translations?: Maybe>; + customFields?: Maybe; }; export type ProductOptionTranslationInput = { - id?: Maybe; - languageCode: LanguageCode; - name?: Maybe; - customFields?: Maybe; + id?: Maybe; + languageCode: LanguageCode; + name?: Maybe; + customFields?: Maybe; }; export type CreateGroupOptionInput = { - code: Scalars['String']; - translations: Array; + code: Scalars['String']; + translations: Array; }; export type CreateProductOptionInput = { - productOptionGroupId: Scalars['ID']; - code: Scalars['String']; - translations: Array; - customFields?: Maybe; + productOptionGroupId: Scalars['ID']; + code: Scalars['String']; + translations: Array; + customFields?: Maybe; }; export type UpdateProductOptionInput = { - id: Scalars['ID']; - code?: Maybe; - translations?: Maybe>; - customFields?: Maybe; + id: Scalars['ID']; + code?: Maybe; + translations?: Maybe>; + customFields?: Maybe; }; export type SearchResult = { - enabled: Scalars['Boolean']; - /** An array of ids of the Collections in which this result appears */ - channelIds: Array; - sku: Scalars['String']; - slug: Scalars['String']; - productId: Scalars['ID']; - productName: Scalars['String']; - /** @deprecated Use `productAsset.preview` instead */ - productPreview: Scalars['String']; - productAsset?: Maybe; - productVariantId: Scalars['ID']; - productVariantName: Scalars['String']; - /** @deprecated Use `productVariantAsset.preview` instead */ - productVariantPreview: Scalars['String']; - productVariantAsset?: Maybe; - price: SearchResultPrice; - priceWithTax: SearchResultPrice; - currencyCode: CurrencyCode; - description: Scalars['String']; - facetIds: Array; - facetValueIds: Array; - /** An array of ids of the Collections in which this result appears */ - collectionIds: Array; - /** A relevence score for the result. Differs between database implementations */ - score: Scalars['Float']; + enabled: Scalars['Boolean']; + /** An array of ids of the Collections in which this result appears */ + channelIds: Array; + sku: Scalars['String']; + slug: Scalars['String']; + productId: Scalars['ID']; + productName: Scalars['String']; + /** @deprecated Use `productAsset.preview` instead */ + productPreview: Scalars['String']; + productAsset?: Maybe; + productVariantId: Scalars['ID']; + productVariantName: Scalars['String']; + /** @deprecated Use `productVariantAsset.preview` instead */ + productVariantPreview: Scalars['String']; + productVariantAsset?: Maybe; + price: SearchResultPrice; + priceWithTax: SearchResultPrice; + currencyCode: CurrencyCode; + description: Scalars['String']; + facetIds: Array; + facetValueIds: Array; + /** An array of ids of the Collections in which this result appears */ + collectionIds: Array; + /** A relevence score for the result. Differs between database implementations */ + score: Scalars['Float']; }; export type Product = Node & { - enabled: Scalars['Boolean']; - channels: Array; - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - languageCode: LanguageCode; - name: Scalars['String']; - slug: Scalars['String']; - description: Scalars['String']; - featuredAsset?: Maybe; - assets: Array; - variants: Array; - optionGroups: Array; - facetValues: Array; - translations: Array; - collections: Array; - customFields?: Maybe; + enabled: Scalars['Boolean']; + channels: Array; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + languageCode: LanguageCode; + name: Scalars['String']; + slug: Scalars['String']; + description: Scalars['String']; + featuredAsset?: Maybe; + assets: Array; + variants: Array; + optionGroups: Array; + facetValues: Array; + translations: Array; + collections: Array; + customFields?: Maybe; }; export type ProductVariant = Node & { - enabled: Scalars['Boolean']; - stockOnHand: Scalars['Int']; - trackInventory: Scalars['Boolean']; - stockMovements: StockMovementList; - id: Scalars['ID']; - product: Product; - productId: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - languageCode: LanguageCode; - sku: Scalars['String']; - name: Scalars['String']; - featuredAsset?: Maybe; - assets: Array; - price: Scalars['Int']; - currencyCode: CurrencyCode; - priceIncludesTax: Scalars['Boolean']; - priceWithTax: Scalars['Int']; - taxRateApplied: TaxRate; - taxCategory: TaxCategory; - options: Array; - facetValues: Array; - translations: Array; - customFields?: Maybe; + enabled: Scalars['Boolean']; + stockOnHand: Scalars['Int']; + trackInventory: Scalars['Boolean']; + stockMovements: StockMovementList; + id: Scalars['ID']; + product: Product; + productId: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + languageCode: LanguageCode; + sku: Scalars['String']; + name: Scalars['String']; + featuredAsset?: Maybe; + assets: Array; + price: Scalars['Int']; + currencyCode: CurrencyCode; + priceIncludesTax: Scalars['Boolean']; + priceWithTax: Scalars['Int']; + taxRateApplied: TaxRate; + taxCategory: TaxCategory; + options: Array; + facetValues: Array; + translations: Array; + customFields?: Maybe; }; - export type ProductVariantStockMovementsArgs = { - options?: Maybe; + options?: Maybe; }; export type StockMovementListOptions = { - type?: Maybe; - skip?: Maybe; - take?: Maybe; + type?: Maybe; + skip?: Maybe; + take?: Maybe; }; export type ProductTranslationInput = { - id?: Maybe; - languageCode: LanguageCode; - name?: Maybe; - slug?: Maybe; - description?: Maybe; - customFields?: Maybe; + id?: Maybe; + languageCode: LanguageCode; + name?: Maybe; + slug?: Maybe; + description?: Maybe; + customFields?: Maybe; }; export type CreateProductInput = { - featuredAssetId?: Maybe; - assetIds?: Maybe>; - facetValueIds?: Maybe>; - translations: Array; - customFields?: Maybe; + featuredAssetId?: Maybe; + assetIds?: Maybe>; + facetValueIds?: Maybe>; + translations: Array; + customFields?: Maybe; }; export type UpdateProductInput = { - id: Scalars['ID']; - enabled?: Maybe; - featuredAssetId?: Maybe; - assetIds?: Maybe>; - facetValueIds?: Maybe>; - translations?: Maybe>; - customFields?: Maybe; + id: Scalars['ID']; + enabled?: Maybe; + featuredAssetId?: Maybe; + assetIds?: Maybe>; + facetValueIds?: Maybe>; + translations?: Maybe>; + customFields?: Maybe; }; export type ProductVariantTranslationInput = { - id?: Maybe; - languageCode: LanguageCode; - name?: Maybe; - customFields?: Maybe; + id?: Maybe; + languageCode: LanguageCode; + name?: Maybe; + customFields?: Maybe; }; export type CreateProductVariantOptionInput = { - optionGroupId: Scalars['ID']; - code: Scalars['String']; - translations: Array; + optionGroupId: Scalars['ID']; + code: Scalars['String']; + translations: Array; }; export type CreateProductVariantInput = { - productId: Scalars['ID']; - translations: Array; - facetValueIds?: Maybe>; - sku: Scalars['String']; - price?: Maybe; - taxCategoryId?: Maybe; - optionIds?: Maybe>; - featuredAssetId?: Maybe; - assetIds?: Maybe>; - stockOnHand?: Maybe; - trackInventory?: Maybe; - customFields?: Maybe; + productId: Scalars['ID']; + translations: Array; + facetValueIds?: Maybe>; + sku: Scalars['String']; + price?: Maybe; + taxCategoryId?: Maybe; + optionIds?: Maybe>; + featuredAssetId?: Maybe; + assetIds?: Maybe>; + stockOnHand?: Maybe; + trackInventory?: Maybe; + customFields?: Maybe; }; export type UpdateProductVariantInput = { - id: Scalars['ID']; - enabled?: Maybe; - translations?: Maybe>; - facetValueIds?: Maybe>; - sku?: Maybe; - taxCategoryId?: Maybe; - price?: Maybe; - featuredAssetId?: Maybe; - assetIds?: Maybe>; - stockOnHand?: Maybe; - trackInventory?: Maybe; - customFields?: Maybe; + id: Scalars['ID']; + enabled?: Maybe; + translations?: Maybe>; + facetValueIds?: Maybe>; + sku?: Maybe; + taxCategoryId?: Maybe; + price?: Maybe; + featuredAssetId?: Maybe; + assetIds?: Maybe>; + stockOnHand?: Maybe; + trackInventory?: Maybe; + customFields?: Maybe; }; export type AssignProductsToChannelInput = { - productIds: Array; - channelId: Scalars['ID']; - priceFactor?: Maybe; + productIds: Array; + channelId: Scalars['ID']; + priceFactor?: Maybe; }; export type RemoveProductsFromChannelInput = { - productIds: Array; - channelId: Scalars['ID']; + productIds: Array; + channelId: Scalars['ID']; }; export type ProductOptionInUseError = ErrorResult & { - errorCode: ErrorCode; - message: Scalars['String']; - optionGroupCode: Scalars['String']; - productVariantCount: Scalars['Int']; + errorCode: ErrorCode; + message: Scalars['String']; + optionGroupCode: Scalars['String']; + productVariantCount: Scalars['Int']; }; export type RemoveOptionGroupFromProductResult = Product | ProductOptionInUseError; export type CreatePromotionInput = { - name: Scalars['String']; - enabled: Scalars['Boolean']; - startsAt?: Maybe; - endsAt?: Maybe; - couponCode?: Maybe; - perCustomerUsageLimit?: Maybe; - conditions: Array; - actions: Array; + name: Scalars['String']; + enabled: Scalars['Boolean']; + startsAt?: Maybe; + endsAt?: Maybe; + couponCode?: Maybe; + perCustomerUsageLimit?: Maybe; + conditions: Array; + actions: Array; }; export type UpdatePromotionInput = { - id: Scalars['ID']; - name?: Maybe; - enabled?: Maybe; - startsAt?: Maybe; - endsAt?: Maybe; - couponCode?: Maybe; - perCustomerUsageLimit?: Maybe; - conditions?: Maybe>; - actions?: Maybe>; + id: Scalars['ID']; + name?: Maybe; + enabled?: Maybe; + startsAt?: Maybe; + endsAt?: Maybe; + couponCode?: Maybe; + perCustomerUsageLimit?: Maybe; + conditions?: Maybe>; + actions?: Maybe>; }; /** Returned if a PromotionCondition has neither a couponCode nor any conditions set */ export type MissingConditionsError = ErrorResult & { - errorCode: ErrorCode; - message: Scalars['String']; + errorCode: ErrorCode; + message: Scalars['String']; }; export type CreatePromotionResult = Promotion | MissingConditionsError; @@ -1733,743 +1621,740 @@ export type CreatePromotionResult = Promotion | MissingConditionsError; export type UpdatePromotionResult = Promotion | MissingConditionsError; export type CreateRoleInput = { - code: Scalars['String']; - description: Scalars['String']; - permissions: Array; - channelIds?: Maybe>; + code: Scalars['String']; + description: Scalars['String']; + permissions: Array; + channelIds?: Maybe>; }; export type UpdateRoleInput = { - id: Scalars['ID']; - code?: Maybe; - description?: Maybe; - permissions?: Maybe>; - channelIds?: Maybe>; + id: Scalars['ID']; + code?: Maybe; + description?: Maybe; + permissions?: Maybe>; + channelIds?: Maybe>; }; export type CreateShippingMethodInput = { - code: Scalars['String']; - description: Scalars['String']; - checker: ConfigurableOperationInput; - calculator: ConfigurableOperationInput; - customFields?: Maybe; + code: Scalars['String']; + description: Scalars['String']; + checker: ConfigurableOperationInput; + calculator: ConfigurableOperationInput; + customFields?: Maybe; }; export type UpdateShippingMethodInput = { - id: Scalars['ID']; - code?: Maybe; - description?: Maybe; - checker?: Maybe; - calculator?: Maybe; - customFields?: Maybe; + id: Scalars['ID']; + code?: Maybe; + description?: Maybe; + checker?: Maybe; + calculator?: Maybe; + customFields?: Maybe; }; export type TestShippingMethodInput = { - checker: ConfigurableOperationInput; - calculator: ConfigurableOperationInput; - shippingAddress: CreateAddressInput; - lines: Array; + checker: ConfigurableOperationInput; + calculator: ConfigurableOperationInput; + shippingAddress: CreateAddressInput; + lines: Array; }; export type TestEligibleShippingMethodsInput = { - shippingAddress: CreateAddressInput; - lines: Array; + shippingAddress: CreateAddressInput; + lines: Array; }; export type TestShippingMethodOrderLineInput = { - productVariantId: Scalars['ID']; - quantity: Scalars['Int']; + productVariantId: Scalars['ID']; + quantity: Scalars['Int']; }; export type TestShippingMethodResult = { - eligible: Scalars['Boolean']; - quote?: Maybe; + eligible: Scalars['Boolean']; + quote?: Maybe; }; export type TestShippingMethodQuote = { - price: Scalars['Int']; - priceWithTax: Scalars['Int']; - description: Scalars['String']; - metadata?: Maybe; + price: Scalars['Int']; + priceWithTax: Scalars['Int']; + description: Scalars['String']; + metadata?: Maybe; }; export type CreateTaxCategoryInput = { - name: Scalars['String']; + name: Scalars['String']; }; export type UpdateTaxCategoryInput = { - id: Scalars['ID']; - name?: Maybe; + id: Scalars['ID']; + name?: Maybe; }; export type CreateTaxRateInput = { - name: Scalars['String']; - enabled: Scalars['Boolean']; - value: Scalars['Float']; - categoryId: Scalars['ID']; - zoneId: Scalars['ID']; - customerGroupId?: Maybe; + name: Scalars['String']; + enabled: Scalars['Boolean']; + value: Scalars['Float']; + categoryId: Scalars['ID']; + zoneId: Scalars['ID']; + customerGroupId?: Maybe; }; export type UpdateTaxRateInput = { - id: Scalars['ID']; - name?: Maybe; - value?: Maybe; - enabled?: Maybe; - categoryId?: Maybe; - zoneId?: Maybe; - customerGroupId?: Maybe; + id: Scalars['ID']; + name?: Maybe; + value?: Maybe; + enabled?: Maybe; + categoryId?: Maybe; + zoneId?: Maybe; + customerGroupId?: Maybe; }; export type CreateZoneInput = { - name: Scalars['String']; - memberIds?: Maybe>; + name: Scalars['String']; + memberIds?: Maybe>; }; export type UpdateZoneInput = { - id: Scalars['ID']; - name?: Maybe; + id: Scalars['ID']; + name?: Maybe; }; - - - export enum AdjustmentType { - TAX = 'TAX', - PROMOTION = 'PROMOTION', - SHIPPING = 'SHIPPING', - REFUND = 'REFUND', - TAX_REFUND = 'TAX_REFUND', - PROMOTION_REFUND = 'PROMOTION_REFUND', - SHIPPING_REFUND = 'SHIPPING_REFUND' + TAX = 'TAX', + PROMOTION = 'PROMOTION', + SHIPPING = 'SHIPPING', + REFUND = 'REFUND', + TAX_REFUND = 'TAX_REFUND', + PROMOTION_REFUND = 'PROMOTION_REFUND', + SHIPPING_REFUND = 'SHIPPING_REFUND', } export type Adjustment = { - adjustmentSource: Scalars['String']; - type: AdjustmentType; - description: Scalars['String']; - amount: Scalars['Int']; + adjustmentSource: Scalars['String']; + type: AdjustmentType; + description: Scalars['String']; + amount: Scalars['Int']; }; export type ConfigArg = { - name: Scalars['String']; - value: Scalars['String']; + name: Scalars['String']; + value: Scalars['String']; }; export type ConfigArgDefinition = { - name: Scalars['String']; - type: Scalars['String']; - list: Scalars['Boolean']; - label?: Maybe; - description?: Maybe; - ui?: Maybe; + name: Scalars['String']; + type: Scalars['String']; + list: Scalars['Boolean']; + label?: Maybe; + description?: Maybe; + ui?: Maybe; }; export type ConfigurableOperation = { - code: Scalars['String']; - args: Array; + code: Scalars['String']; + args: Array; }; export type ConfigurableOperationDefinition = { - code: Scalars['String']; - args: Array; - description: Scalars['String']; + code: Scalars['String']; + args: Array; + description: Scalars['String']; }; export enum DeletionResult { - /** The entity was successfully deleted */ - DELETED = 'DELETED', - /** Deletion did not take place, reason given in message */ - NOT_DELETED = 'NOT_DELETED' + /** The entity was successfully deleted */ + DELETED = 'DELETED', + /** Deletion did not take place, reason given in message */ + NOT_DELETED = 'NOT_DELETED', } export type DeletionResponse = { - result: DeletionResult; - message?: Maybe; + result: DeletionResult; + message?: Maybe; }; export type ConfigArgInput = { - name: Scalars['String']; - value: Scalars['String']; + name: Scalars['String']; + value: Scalars['String']; }; export type ConfigurableOperationInput = { - code: Scalars['String']; - arguments: Array; + code: Scalars['String']; + arguments: Array; }; export type PaginatedList = { - items: Array; - totalItems: Scalars['Int']; + items: Array; + totalItems: Scalars['Int']; }; export type Node = { - id: Scalars['ID']; + id: Scalars['ID']; }; export enum SortOrder { - ASC = 'ASC', - DESC = 'DESC' + ASC = 'ASC', + DESC = 'DESC', } export enum ErrorCode { - UNKNOWN_ERROR = 'UNKNOWN_ERROR', - MIME_TYPE_ERROR = 'MIME_TYPE_ERROR', - LANGUAGE_NOT_AVAILABLE_ERROR = 'LANGUAGE_NOT_AVAILABLE_ERROR', - CHANNEL_DEFAULT_LANGUAGE_ERROR = 'CHANNEL_DEFAULT_LANGUAGE_ERROR', - SETTLE_PAYMENT_ERROR = 'SETTLE_PAYMENT_ERROR', - EMPTY_ORDER_LINE_SELECTION_ERROR = 'EMPTY_ORDER_LINE_SELECTION_ERROR', - ITEMS_ALREADY_FULFILLED_ERROR = 'ITEMS_ALREADY_FULFILLED_ERROR', - MULTIPLE_ORDER_ERROR = 'MULTIPLE_ORDER_ERROR', - CANCEL_ACTIVE_ORDER_ERROR = 'CANCEL_ACTIVE_ORDER_ERROR', - PAYMENT_ORDER_MISMATCH_ERROR = 'PAYMENT_ORDER_MISMATCH_ERROR', - REFUND_ORDER_STATE_ERROR = 'REFUND_ORDER_STATE_ERROR', - NOTHING_TO_REFUND_ERROR = 'NOTHING_TO_REFUND_ERROR', - ALREADY_REFUNDED_ERROR = 'ALREADY_REFUNDED_ERROR', - QUANTITY_TOO_GREAT_ERROR = 'QUANTITY_TOO_GREAT_ERROR', - REFUND_STATE_TRANSITION_ERROR = 'REFUND_STATE_TRANSITION_ERROR', - PAYMENT_STATE_TRANSITION_ERROR = 'PAYMENT_STATE_TRANSITION_ERROR', - FULFILLMENT_STATE_TRANSITION_ERROR = 'FULFILLMENT_STATE_TRANSITION_ERROR', - PRODUCT_OPTION_IN_USE_ERROR = 'PRODUCT_OPTION_IN_USE_ERROR', - MISSING_CONDITIONS_ERROR = 'MISSING_CONDITIONS_ERROR', - NATIVE_AUTH_STRATEGY_ERROR = 'NATIVE_AUTH_STRATEGY_ERROR', - INVALID_CREDENTIALS_ERROR = 'INVALID_CREDENTIALS_ERROR', - ORDER_STATE_TRANSITION_ERROR = 'ORDER_STATE_TRANSITION_ERROR', - EMAIL_ADDRESS_CONFLICT_ERROR = 'EMAIL_ADDRESS_CONFLICT_ERROR' + UNKNOWN_ERROR = 'UNKNOWN_ERROR', + MIME_TYPE_ERROR = 'MIME_TYPE_ERROR', + LANGUAGE_NOT_AVAILABLE_ERROR = 'LANGUAGE_NOT_AVAILABLE_ERROR', + CHANNEL_DEFAULT_LANGUAGE_ERROR = 'CHANNEL_DEFAULT_LANGUAGE_ERROR', + SETTLE_PAYMENT_ERROR = 'SETTLE_PAYMENT_ERROR', + EMPTY_ORDER_LINE_SELECTION_ERROR = 'EMPTY_ORDER_LINE_SELECTION_ERROR', + ITEMS_ALREADY_FULFILLED_ERROR = 'ITEMS_ALREADY_FULFILLED_ERROR', + MULTIPLE_ORDER_ERROR = 'MULTIPLE_ORDER_ERROR', + CANCEL_ACTIVE_ORDER_ERROR = 'CANCEL_ACTIVE_ORDER_ERROR', + PAYMENT_ORDER_MISMATCH_ERROR = 'PAYMENT_ORDER_MISMATCH_ERROR', + REFUND_ORDER_STATE_ERROR = 'REFUND_ORDER_STATE_ERROR', + NOTHING_TO_REFUND_ERROR = 'NOTHING_TO_REFUND_ERROR', + ALREADY_REFUNDED_ERROR = 'ALREADY_REFUNDED_ERROR', + QUANTITY_TOO_GREAT_ERROR = 'QUANTITY_TOO_GREAT_ERROR', + REFUND_STATE_TRANSITION_ERROR = 'REFUND_STATE_TRANSITION_ERROR', + PAYMENT_STATE_TRANSITION_ERROR = 'PAYMENT_STATE_TRANSITION_ERROR', + FULFILLMENT_STATE_TRANSITION_ERROR = 'FULFILLMENT_STATE_TRANSITION_ERROR', + PRODUCT_OPTION_IN_USE_ERROR = 'PRODUCT_OPTION_IN_USE_ERROR', + MISSING_CONDITIONS_ERROR = 'MISSING_CONDITIONS_ERROR', + NATIVE_AUTH_STRATEGY_ERROR = 'NATIVE_AUTH_STRATEGY_ERROR', + INVALID_CREDENTIALS_ERROR = 'INVALID_CREDENTIALS_ERROR', + ORDER_STATE_TRANSITION_ERROR = 'ORDER_STATE_TRANSITION_ERROR', + EMAIL_ADDRESS_CONFLICT_ERROR = 'EMAIL_ADDRESS_CONFLICT_ERROR', } export type ErrorResult = { - errorCode: ErrorCode; - message: Scalars['String']; + errorCode: ErrorCode; + message: Scalars['String']; }; export type StringOperators = { - eq?: Maybe; - contains?: Maybe; + eq?: Maybe; + contains?: Maybe; }; export type BooleanOperators = { - eq?: Maybe; + eq?: Maybe; }; export type NumberRange = { - start: Scalars['Float']; - end: Scalars['Float']; + start: Scalars['Float']; + end: Scalars['Float']; }; export type NumberOperators = { - eq?: Maybe; - lt?: Maybe; - lte?: Maybe; - gt?: Maybe; - gte?: Maybe; - between?: Maybe; + eq?: Maybe; + lt?: Maybe; + lte?: Maybe; + gt?: Maybe; + gte?: Maybe; + between?: Maybe; }; export type DateRange = { - start: Scalars['DateTime']; - end: Scalars['DateTime']; + start: Scalars['DateTime']; + end: Scalars['DateTime']; }; export type DateOperators = { - eq?: Maybe; - before?: Maybe; - after?: Maybe; - between?: Maybe; + eq?: Maybe; + before?: Maybe; + after?: Maybe; + between?: Maybe; }; export enum LogicalOperator { - AND = 'AND', - OR = 'OR' + AND = 'AND', + OR = 'OR', } export type SearchInput = { - term?: Maybe; - facetValueIds?: Maybe>; - facetValueOperator?: Maybe; - collectionId?: Maybe; - collectionSlug?: Maybe; - groupByProduct?: Maybe; - take?: Maybe; - skip?: Maybe; - sort?: Maybe; + term?: Maybe; + facetValueIds?: Maybe>; + facetValueOperator?: Maybe; + collectionId?: Maybe; + collectionSlug?: Maybe; + groupByProduct?: Maybe; + take?: Maybe; + skip?: Maybe; + sort?: Maybe; }; export type SearchResultSortParameter = { - name?: Maybe; - price?: Maybe; + name?: Maybe; + price?: Maybe; }; export type CreateCustomerInput = { - title?: Maybe; - firstName: Scalars['String']; - lastName: Scalars['String']; - phoneNumber?: Maybe; - emailAddress: Scalars['String']; - customFields?: Maybe; + title?: Maybe; + firstName: Scalars['String']; + lastName: Scalars['String']; + phoneNumber?: Maybe; + emailAddress: Scalars['String']; + customFields?: Maybe; }; export type CreateAddressInput = { - fullName?: Maybe; - company?: Maybe; - streetLine1: Scalars['String']; - streetLine2?: Maybe; - city?: Maybe; - province?: Maybe; - postalCode?: Maybe; - countryCode: Scalars['String']; - phoneNumber?: Maybe; - defaultShippingAddress?: Maybe; - defaultBillingAddress?: Maybe; - customFields?: Maybe; + fullName?: Maybe; + company?: Maybe; + streetLine1: Scalars['String']; + streetLine2?: Maybe; + city?: Maybe; + province?: Maybe; + postalCode?: Maybe; + countryCode: Scalars['String']; + phoneNumber?: Maybe; + defaultShippingAddress?: Maybe; + defaultBillingAddress?: Maybe; + customFields?: Maybe; }; export type UpdateAddressInput = { - id: Scalars['ID']; - fullName?: Maybe; - company?: Maybe; - streetLine1?: Maybe; - streetLine2?: Maybe; - city?: Maybe; - province?: Maybe; - postalCode?: Maybe; - countryCode?: Maybe; - phoneNumber?: Maybe; - defaultShippingAddress?: Maybe; - defaultBillingAddress?: Maybe; - customFields?: Maybe; + id: Scalars['ID']; + fullName?: Maybe; + company?: Maybe; + streetLine1?: Maybe; + streetLine2?: Maybe; + city?: Maybe; + province?: Maybe; + postalCode?: Maybe; + countryCode?: Maybe; + phoneNumber?: Maybe; + defaultShippingAddress?: Maybe; + defaultBillingAddress?: Maybe; + customFields?: Maybe; }; /** Indicates that an operation succeeded, where we do not want to return any more specific information. */ export type Success = { - success: Scalars['Boolean']; + success: Scalars['Boolean']; }; /** Retured when attempting an operation that relies on the NativeAuthStrategy, if that strategy is not configured. */ export type NativeAuthStrategyError = ErrorResult & { - errorCode: ErrorCode; - message: Scalars['String']; + errorCode: ErrorCode; + message: Scalars['String']; }; /** Returned if the user authentication credentials are not valid */ export type InvalidCredentialsError = ErrorResult & { - errorCode: ErrorCode; - message: Scalars['String']; - authenticationError: Scalars['String']; + errorCode: ErrorCode; + message: Scalars['String']; + authenticationError: Scalars['String']; }; /** Returned if there is an error in transitioning the Order state */ export type OrderStateTransitionError = ErrorResult & { - errorCode: ErrorCode; - message: Scalars['String']; - transitionError: Scalars['String']; - fromState: Scalars['String']; - toState: Scalars['String']; + errorCode: ErrorCode; + message: Scalars['String']; + transitionError: Scalars['String']; + fromState: Scalars['String']; + toState: Scalars['String']; }; /** Retured when attemting to create a Customer with an email address already registered to an existing User. */ export type EmailAddressConflictError = ErrorResult & { - errorCode: ErrorCode; - message: Scalars['String']; + errorCode: ErrorCode; + message: Scalars['String']; }; /** * @description * ISO 4217 currency code - * + * * @docsCategory common */ export enum CurrencyCode { - /** United Arab Emirates dirham */ - AED = 'AED', - /** Afghan afghani */ - AFN = 'AFN', - /** Albanian lek */ - ALL = 'ALL', - /** Armenian dram */ - AMD = 'AMD', - /** Netherlands Antillean guilder */ - ANG = 'ANG', - /** Angolan kwanza */ - AOA = 'AOA', - /** Argentine peso */ - ARS = 'ARS', - /** Australian dollar */ - AUD = 'AUD', - /** Aruban florin */ - AWG = 'AWG', - /** Azerbaijani manat */ - AZN = 'AZN', - /** Bosnia and Herzegovina convertible mark */ - BAM = 'BAM', - /** Barbados dollar */ - BBD = 'BBD', - /** Bangladeshi taka */ - BDT = 'BDT', - /** Bulgarian lev */ - BGN = 'BGN', - /** Bahraini dinar */ - BHD = 'BHD', - /** Burundian franc */ - BIF = 'BIF', - /** Bermudian dollar */ - BMD = 'BMD', - /** Brunei dollar */ - BND = 'BND', - /** Boliviano */ - BOB = 'BOB', - /** Brazilian real */ - BRL = 'BRL', - /** Bahamian dollar */ - BSD = 'BSD', - /** Bhutanese ngultrum */ - BTN = 'BTN', - /** Botswana pula */ - BWP = 'BWP', - /** Belarusian ruble */ - BYN = 'BYN', - /** Belize dollar */ - BZD = 'BZD', - /** Canadian dollar */ - CAD = 'CAD', - /** Congolese franc */ - CDF = 'CDF', - /** Swiss franc */ - CHF = 'CHF', - /** Chilean peso */ - CLP = 'CLP', - /** Renminbi (Chinese) yuan */ - CNY = 'CNY', - /** Colombian peso */ - COP = 'COP', - /** Costa Rican colon */ - CRC = 'CRC', - /** Cuban convertible peso */ - CUC = 'CUC', - /** Cuban peso */ - CUP = 'CUP', - /** Cape Verde escudo */ - CVE = 'CVE', - /** Czech koruna */ - CZK = 'CZK', - /** Djiboutian franc */ - DJF = 'DJF', - /** Danish krone */ - DKK = 'DKK', - /** Dominican peso */ - DOP = 'DOP', - /** Algerian dinar */ - DZD = 'DZD', - /** Egyptian pound */ - EGP = 'EGP', - /** Eritrean nakfa */ - ERN = 'ERN', - /** Ethiopian birr */ - ETB = 'ETB', - /** Euro */ - EUR = 'EUR', - /** Fiji dollar */ - FJD = 'FJD', - /** Falkland Islands pound */ - FKP = 'FKP', - /** Pound sterling */ - GBP = 'GBP', - /** Georgian lari */ - GEL = 'GEL', - /** Ghanaian cedi */ - GHS = 'GHS', - /** Gibraltar pound */ - GIP = 'GIP', - /** Gambian dalasi */ - GMD = 'GMD', - /** Guinean franc */ - GNF = 'GNF', - /** Guatemalan quetzal */ - GTQ = 'GTQ', - /** Guyanese dollar */ - GYD = 'GYD', - /** Hong Kong dollar */ - HKD = 'HKD', - /** Honduran lempira */ - HNL = 'HNL', - /** Croatian kuna */ - HRK = 'HRK', - /** Haitian gourde */ - HTG = 'HTG', - /** Hungarian forint */ - HUF = 'HUF', - /** Indonesian rupiah */ - IDR = 'IDR', - /** Israeli new shekel */ - ILS = 'ILS', - /** Indian rupee */ - INR = 'INR', - /** Iraqi dinar */ - IQD = 'IQD', - /** Iranian rial */ - IRR = 'IRR', - /** Icelandic króna */ - ISK = 'ISK', - /** Jamaican dollar */ - JMD = 'JMD', - /** Jordanian dinar */ - JOD = 'JOD', - /** Japanese yen */ - JPY = 'JPY', - /** Kenyan shilling */ - KES = 'KES', - /** Kyrgyzstani som */ - KGS = 'KGS', - /** Cambodian riel */ - KHR = 'KHR', - /** Comoro franc */ - KMF = 'KMF', - /** North Korean won */ - KPW = 'KPW', - /** South Korean won */ - KRW = 'KRW', - /** Kuwaiti dinar */ - KWD = 'KWD', - /** Cayman Islands dollar */ - KYD = 'KYD', - /** Kazakhstani tenge */ - KZT = 'KZT', - /** Lao kip */ - LAK = 'LAK', - /** Lebanese pound */ - LBP = 'LBP', - /** Sri Lankan rupee */ - LKR = 'LKR', - /** Liberian dollar */ - LRD = 'LRD', - /** Lesotho loti */ - LSL = 'LSL', - /** Libyan dinar */ - LYD = 'LYD', - /** Moroccan dirham */ - MAD = 'MAD', - /** Moldovan leu */ - MDL = 'MDL', - /** Malagasy ariary */ - MGA = 'MGA', - /** Macedonian denar */ - MKD = 'MKD', - /** Myanmar kyat */ - MMK = 'MMK', - /** Mongolian tögrög */ - MNT = 'MNT', - /** Macanese pataca */ - MOP = 'MOP', - /** Mauritanian ouguiya */ - MRU = 'MRU', - /** Mauritian rupee */ - MUR = 'MUR', - /** Maldivian rufiyaa */ - MVR = 'MVR', - /** Malawian kwacha */ - MWK = 'MWK', - /** Mexican peso */ - MXN = 'MXN', - /** Malaysian ringgit */ - MYR = 'MYR', - /** Mozambican metical */ - MZN = 'MZN', - /** Namibian dollar */ - NAD = 'NAD', - /** Nigerian naira */ - NGN = 'NGN', - /** Nicaraguan córdoba */ - NIO = 'NIO', - /** Norwegian krone */ - NOK = 'NOK', - /** Nepalese rupee */ - NPR = 'NPR', - /** New Zealand dollar */ - NZD = 'NZD', - /** Omani rial */ - OMR = 'OMR', - /** Panamanian balboa */ - PAB = 'PAB', - /** Peruvian sol */ - PEN = 'PEN', - /** Papua New Guinean kina */ - PGK = 'PGK', - /** Philippine peso */ - PHP = 'PHP', - /** Pakistani rupee */ - PKR = 'PKR', - /** Polish złoty */ - PLN = 'PLN', - /** Paraguayan guaraní */ - PYG = 'PYG', - /** Qatari riyal */ - QAR = 'QAR', - /** Romanian leu */ - RON = 'RON', - /** Serbian dinar */ - RSD = 'RSD', - /** Russian ruble */ - RUB = 'RUB', - /** Rwandan franc */ - RWF = 'RWF', - /** Saudi riyal */ - SAR = 'SAR', - /** Solomon Islands dollar */ - SBD = 'SBD', - /** Seychelles rupee */ - SCR = 'SCR', - /** Sudanese pound */ - SDG = 'SDG', - /** Swedish krona/kronor */ - SEK = 'SEK', - /** Singapore dollar */ - SGD = 'SGD', - /** Saint Helena pound */ - SHP = 'SHP', - /** Sierra Leonean leone */ - SLL = 'SLL', - /** Somali shilling */ - SOS = 'SOS', - /** Surinamese dollar */ - SRD = 'SRD', - /** South Sudanese pound */ - SSP = 'SSP', - /** São Tomé and Príncipe dobra */ - STN = 'STN', - /** Salvadoran colón */ - SVC = 'SVC', - /** Syrian pound */ - SYP = 'SYP', - /** Swazi lilangeni */ - SZL = 'SZL', - /** Thai baht */ - THB = 'THB', - /** Tajikistani somoni */ - TJS = 'TJS', - /** Turkmenistan manat */ - TMT = 'TMT', - /** Tunisian dinar */ - TND = 'TND', - /** Tongan paʻanga */ - TOP = 'TOP', - /** Turkish lira */ - TRY = 'TRY', - /** Trinidad and Tobago dollar */ - TTD = 'TTD', - /** New Taiwan dollar */ - TWD = 'TWD', - /** Tanzanian shilling */ - TZS = 'TZS', - /** Ukrainian hryvnia */ - UAH = 'UAH', - /** Ugandan shilling */ - UGX = 'UGX', - /** United States dollar */ - USD = 'USD', - /** Uruguayan peso */ - UYU = 'UYU', - /** Uzbekistan som */ - UZS = 'UZS', - /** Venezuelan bolívar soberano */ - VES = 'VES', - /** Vietnamese đồng */ - VND = 'VND', - /** Vanuatu vatu */ - VUV = 'VUV', - /** Samoan tala */ - WST = 'WST', - /** CFA franc BEAC */ - XAF = 'XAF', - /** East Caribbean dollar */ - XCD = 'XCD', - /** CFA franc BCEAO */ - XOF = 'XOF', - /** CFP franc (franc Pacifique) */ - XPF = 'XPF', - /** Yemeni rial */ - YER = 'YER', - /** South African rand */ - ZAR = 'ZAR', - /** Zambian kwacha */ - ZMW = 'ZMW', - /** Zimbabwean dollar */ - ZWL = 'ZWL' + /** United Arab Emirates dirham */ + AED = 'AED', + /** Afghan afghani */ + AFN = 'AFN', + /** Albanian lek */ + ALL = 'ALL', + /** Armenian dram */ + AMD = 'AMD', + /** Netherlands Antillean guilder */ + ANG = 'ANG', + /** Angolan kwanza */ + AOA = 'AOA', + /** Argentine peso */ + ARS = 'ARS', + /** Australian dollar */ + AUD = 'AUD', + /** Aruban florin */ + AWG = 'AWG', + /** Azerbaijani manat */ + AZN = 'AZN', + /** Bosnia and Herzegovina convertible mark */ + BAM = 'BAM', + /** Barbados dollar */ + BBD = 'BBD', + /** Bangladeshi taka */ + BDT = 'BDT', + /** Bulgarian lev */ + BGN = 'BGN', + /** Bahraini dinar */ + BHD = 'BHD', + /** Burundian franc */ + BIF = 'BIF', + /** Bermudian dollar */ + BMD = 'BMD', + /** Brunei dollar */ + BND = 'BND', + /** Boliviano */ + BOB = 'BOB', + /** Brazilian real */ + BRL = 'BRL', + /** Bahamian dollar */ + BSD = 'BSD', + /** Bhutanese ngultrum */ + BTN = 'BTN', + /** Botswana pula */ + BWP = 'BWP', + /** Belarusian ruble */ + BYN = 'BYN', + /** Belize dollar */ + BZD = 'BZD', + /** Canadian dollar */ + CAD = 'CAD', + /** Congolese franc */ + CDF = 'CDF', + /** Swiss franc */ + CHF = 'CHF', + /** Chilean peso */ + CLP = 'CLP', + /** Renminbi (Chinese) yuan */ + CNY = 'CNY', + /** Colombian peso */ + COP = 'COP', + /** Costa Rican colon */ + CRC = 'CRC', + /** Cuban convertible peso */ + CUC = 'CUC', + /** Cuban peso */ + CUP = 'CUP', + /** Cape Verde escudo */ + CVE = 'CVE', + /** Czech koruna */ + CZK = 'CZK', + /** Djiboutian franc */ + DJF = 'DJF', + /** Danish krone */ + DKK = 'DKK', + /** Dominican peso */ + DOP = 'DOP', + /** Algerian dinar */ + DZD = 'DZD', + /** Egyptian pound */ + EGP = 'EGP', + /** Eritrean nakfa */ + ERN = 'ERN', + /** Ethiopian birr */ + ETB = 'ETB', + /** Euro */ + EUR = 'EUR', + /** Fiji dollar */ + FJD = 'FJD', + /** Falkland Islands pound */ + FKP = 'FKP', + /** Pound sterling */ + GBP = 'GBP', + /** Georgian lari */ + GEL = 'GEL', + /** Ghanaian cedi */ + GHS = 'GHS', + /** Gibraltar pound */ + GIP = 'GIP', + /** Gambian dalasi */ + GMD = 'GMD', + /** Guinean franc */ + GNF = 'GNF', + /** Guatemalan quetzal */ + GTQ = 'GTQ', + /** Guyanese dollar */ + GYD = 'GYD', + /** Hong Kong dollar */ + HKD = 'HKD', + /** Honduran lempira */ + HNL = 'HNL', + /** Croatian kuna */ + HRK = 'HRK', + /** Haitian gourde */ + HTG = 'HTG', + /** Hungarian forint */ + HUF = 'HUF', + /** Indonesian rupiah */ + IDR = 'IDR', + /** Israeli new shekel */ + ILS = 'ILS', + /** Indian rupee */ + INR = 'INR', + /** Iraqi dinar */ + IQD = 'IQD', + /** Iranian rial */ + IRR = 'IRR', + /** Icelandic króna */ + ISK = 'ISK', + /** Jamaican dollar */ + JMD = 'JMD', + /** Jordanian dinar */ + JOD = 'JOD', + /** Japanese yen */ + JPY = 'JPY', + /** Kenyan shilling */ + KES = 'KES', + /** Kyrgyzstani som */ + KGS = 'KGS', + /** Cambodian riel */ + KHR = 'KHR', + /** Comoro franc */ + KMF = 'KMF', + /** North Korean won */ + KPW = 'KPW', + /** South Korean won */ + KRW = 'KRW', + /** Kuwaiti dinar */ + KWD = 'KWD', + /** Cayman Islands dollar */ + KYD = 'KYD', + /** Kazakhstani tenge */ + KZT = 'KZT', + /** Lao kip */ + LAK = 'LAK', + /** Lebanese pound */ + LBP = 'LBP', + /** Sri Lankan rupee */ + LKR = 'LKR', + /** Liberian dollar */ + LRD = 'LRD', + /** Lesotho loti */ + LSL = 'LSL', + /** Libyan dinar */ + LYD = 'LYD', + /** Moroccan dirham */ + MAD = 'MAD', + /** Moldovan leu */ + MDL = 'MDL', + /** Malagasy ariary */ + MGA = 'MGA', + /** Macedonian denar */ + MKD = 'MKD', + /** Myanmar kyat */ + MMK = 'MMK', + /** Mongolian tögrög */ + MNT = 'MNT', + /** Macanese pataca */ + MOP = 'MOP', + /** Mauritanian ouguiya */ + MRU = 'MRU', + /** Mauritian rupee */ + MUR = 'MUR', + /** Maldivian rufiyaa */ + MVR = 'MVR', + /** Malawian kwacha */ + MWK = 'MWK', + /** Mexican peso */ + MXN = 'MXN', + /** Malaysian ringgit */ + MYR = 'MYR', + /** Mozambican metical */ + MZN = 'MZN', + /** Namibian dollar */ + NAD = 'NAD', + /** Nigerian naira */ + NGN = 'NGN', + /** Nicaraguan córdoba */ + NIO = 'NIO', + /** Norwegian krone */ + NOK = 'NOK', + /** Nepalese rupee */ + NPR = 'NPR', + /** New Zealand dollar */ + NZD = 'NZD', + /** Omani rial */ + OMR = 'OMR', + /** Panamanian balboa */ + PAB = 'PAB', + /** Peruvian sol */ + PEN = 'PEN', + /** Papua New Guinean kina */ + PGK = 'PGK', + /** Philippine peso */ + PHP = 'PHP', + /** Pakistani rupee */ + PKR = 'PKR', + /** Polish złoty */ + PLN = 'PLN', + /** Paraguayan guaraní */ + PYG = 'PYG', + /** Qatari riyal */ + QAR = 'QAR', + /** Romanian leu */ + RON = 'RON', + /** Serbian dinar */ + RSD = 'RSD', + /** Russian ruble */ + RUB = 'RUB', + /** Rwandan franc */ + RWF = 'RWF', + /** Saudi riyal */ + SAR = 'SAR', + /** Solomon Islands dollar */ + SBD = 'SBD', + /** Seychelles rupee */ + SCR = 'SCR', + /** Sudanese pound */ + SDG = 'SDG', + /** Swedish krona/kronor */ + SEK = 'SEK', + /** Singapore dollar */ + SGD = 'SGD', + /** Saint Helena pound */ + SHP = 'SHP', + /** Sierra Leonean leone */ + SLL = 'SLL', + /** Somali shilling */ + SOS = 'SOS', + /** Surinamese dollar */ + SRD = 'SRD', + /** South Sudanese pound */ + SSP = 'SSP', + /** São Tomé and Príncipe dobra */ + STN = 'STN', + /** Salvadoran colón */ + SVC = 'SVC', + /** Syrian pound */ + SYP = 'SYP', + /** Swazi lilangeni */ + SZL = 'SZL', + /** Thai baht */ + THB = 'THB', + /** Tajikistani somoni */ + TJS = 'TJS', + /** Turkmenistan manat */ + TMT = 'TMT', + /** Tunisian dinar */ + TND = 'TND', + /** Tongan paʻanga */ + TOP = 'TOP', + /** Turkish lira */ + TRY = 'TRY', + /** Trinidad and Tobago dollar */ + TTD = 'TTD', + /** New Taiwan dollar */ + TWD = 'TWD', + /** Tanzanian shilling */ + TZS = 'TZS', + /** Ukrainian hryvnia */ + UAH = 'UAH', + /** Ugandan shilling */ + UGX = 'UGX', + /** United States dollar */ + USD = 'USD', + /** Uruguayan peso */ + UYU = 'UYU', + /** Uzbekistan som */ + UZS = 'UZS', + /** Venezuelan bolívar soberano */ + VES = 'VES', + /** Vietnamese đồng */ + VND = 'VND', + /** Vanuatu vatu */ + VUV = 'VUV', + /** Samoan tala */ + WST = 'WST', + /** CFA franc BEAC */ + XAF = 'XAF', + /** East Caribbean dollar */ + XCD = 'XCD', + /** CFA franc BCEAO */ + XOF = 'XOF', + /** CFP franc (franc Pacifique) */ + XPF = 'XPF', + /** Yemeni rial */ + YER = 'YER', + /** South African rand */ + ZAR = 'ZAR', + /** Zambian kwacha */ + ZMW = 'ZMW', + /** Zimbabwean dollar */ + ZWL = 'ZWL', } export type CustomField = { - name: Scalars['String']; - type: Scalars['String']; - list: Scalars['Boolean']; - label?: Maybe>; - description?: Maybe>; - readonly?: Maybe; - internal?: Maybe; + name: Scalars['String']; + type: Scalars['String']; + list: Scalars['Boolean']; + label?: Maybe>; + description?: Maybe>; + readonly?: Maybe; + internal?: Maybe; }; export type StringCustomFieldConfig = CustomField & { - name: Scalars['String']; - type: Scalars['String']; - list: Scalars['Boolean']; - length?: Maybe; - label?: Maybe>; - description?: Maybe>; - readonly?: Maybe; - internal?: Maybe; - pattern?: Maybe; - options?: Maybe>; + name: Scalars['String']; + type: Scalars['String']; + list: Scalars['Boolean']; + length?: Maybe; + label?: Maybe>; + description?: Maybe>; + readonly?: Maybe; + internal?: Maybe; + pattern?: Maybe; + options?: Maybe>; }; export type StringFieldOption = { - value: Scalars['String']; - label?: Maybe>; + value: Scalars['String']; + label?: Maybe>; }; export type LocaleStringCustomFieldConfig = CustomField & { - name: Scalars['String']; - type: Scalars['String']; - list: Scalars['Boolean']; - length?: Maybe; - label?: Maybe>; - description?: Maybe>; - readonly?: Maybe; - internal?: Maybe; - pattern?: Maybe; + name: Scalars['String']; + type: Scalars['String']; + list: Scalars['Boolean']; + length?: Maybe; + label?: Maybe>; + description?: Maybe>; + readonly?: Maybe; + internal?: Maybe; + pattern?: Maybe; }; export type IntCustomFieldConfig = CustomField & { - name: Scalars['String']; - type: Scalars['String']; - list: Scalars['Boolean']; - label?: Maybe>; - description?: Maybe>; - readonly?: Maybe; - internal?: Maybe; - min?: Maybe; - max?: Maybe; - step?: Maybe; + name: Scalars['String']; + type: Scalars['String']; + list: Scalars['Boolean']; + label?: Maybe>; + description?: Maybe>; + readonly?: Maybe; + internal?: Maybe; + min?: Maybe; + max?: Maybe; + step?: Maybe; }; export type FloatCustomFieldConfig = CustomField & { - name: Scalars['String']; - type: Scalars['String']; - list: Scalars['Boolean']; - label?: Maybe>; - description?: Maybe>; - readonly?: Maybe; - internal?: Maybe; - min?: Maybe; - max?: Maybe; - step?: Maybe; + name: Scalars['String']; + type: Scalars['String']; + list: Scalars['Boolean']; + label?: Maybe>; + description?: Maybe>; + readonly?: Maybe; + internal?: Maybe; + min?: Maybe; + max?: Maybe; + step?: Maybe; }; export type BooleanCustomFieldConfig = CustomField & { - name: Scalars['String']; - type: Scalars['String']; - list: Scalars['Boolean']; - label?: Maybe>; - description?: Maybe>; - readonly?: Maybe; - internal?: Maybe; + name: Scalars['String']; + type: Scalars['String']; + list: Scalars['Boolean']; + label?: Maybe>; + description?: Maybe>; + readonly?: Maybe; + internal?: Maybe; }; /** @@ -2477,24 +2362,30 @@ export type BooleanCustomFieldConfig = CustomField & { * See https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/datetime-local#Additional_attributes */ export type DateTimeCustomFieldConfig = CustomField & { - name: Scalars['String']; - type: Scalars['String']; - list: Scalars['Boolean']; - label?: Maybe>; - description?: Maybe>; - readonly?: Maybe; - internal?: Maybe; - min?: Maybe; - max?: Maybe; - step?: Maybe; + name: Scalars['String']; + type: Scalars['String']; + list: Scalars['Boolean']; + label?: Maybe>; + description?: Maybe>; + readonly?: Maybe; + internal?: Maybe; + min?: Maybe; + max?: Maybe; + step?: Maybe; }; export type LocalizedString = { - languageCode: LanguageCode; - value: Scalars['String']; + languageCode: LanguageCode; + value: Scalars['String']; }; -export type CustomFieldConfig = StringCustomFieldConfig | LocaleStringCustomFieldConfig | IntCustomFieldConfig | FloatCustomFieldConfig | BooleanCustomFieldConfig | DateTimeCustomFieldConfig; +export type CustomFieldConfig = + | StringCustomFieldConfig + | LocaleStringCustomFieldConfig + | IntCustomFieldConfig + | FloatCustomFieldConfig + | BooleanCustomFieldConfig + | DateTimeCustomFieldConfig; /** * @description @@ -2502,324 +2393,324 @@ export type CustomFieldConfig = StringCustomFieldConfig | LocaleStringCustomFiel * region or script modifier (e.g. de_AT). The selection available is based * on the [Unicode CLDR summary list](https://unicode-org.github.io/cldr-staging/charts/37/summary/root.html) * and includes the major spoken languages of the world and any widely-used variants. - * + * * @docsCategory common */ export enum LanguageCode { - /** Afrikaans */ - af = 'af', - /** Akan */ - ak = 'ak', - /** Albanian */ - sq = 'sq', - /** Amharic */ - am = 'am', - /** Arabic */ - ar = 'ar', - /** Armenian */ - hy = 'hy', - /** Assamese */ - as = 'as', - /** Azerbaijani */ - az = 'az', - /** Bambara */ - bm = 'bm', - /** Bangla */ - bn = 'bn', - /** Basque */ - eu = 'eu', - /** Belarusian */ - be = 'be', - /** Bosnian */ - bs = 'bs', - /** Breton */ - br = 'br', - /** Bulgarian */ - bg = 'bg', - /** Burmese */ - my = 'my', - /** Catalan */ - ca = 'ca', - /** Chechen */ - ce = 'ce', - /** Chinese */ - zh = 'zh', - /** Simplified Chinese */ - zh_Hans = 'zh_Hans', - /** Traditional Chinese */ - zh_Hant = 'zh_Hant', - /** Church Slavic */ - cu = 'cu', - /** Cornish */ - kw = 'kw', - /** Corsican */ - co = 'co', - /** Croatian */ - hr = 'hr', - /** Czech */ - cs = 'cs', - /** Danish */ - da = 'da', - /** Dutch */ - nl = 'nl', - /** Flemish */ - nl_BE = 'nl_BE', - /** Dzongkha */ - dz = 'dz', - /** English */ - en = 'en', - /** Australian English */ - en_AU = 'en_AU', - /** Canadian English */ - en_CA = 'en_CA', - /** British English */ - en_GB = 'en_GB', - /** American English */ - en_US = 'en_US', - /** Esperanto */ - eo = 'eo', - /** Estonian */ - et = 'et', - /** Ewe */ - ee = 'ee', - /** Faroese */ - fo = 'fo', - /** Finnish */ - fi = 'fi', - /** French */ - fr = 'fr', - /** Canadian French */ - fr_CA = 'fr_CA', - /** Swiss French */ - fr_CH = 'fr_CH', - /** Fulah */ - ff = 'ff', - /** Galician */ - gl = 'gl', - /** Ganda */ - lg = 'lg', - /** Georgian */ - ka = 'ka', - /** German */ - de = 'de', - /** Austrian German */ - de_AT = 'de_AT', - /** Swiss High German */ - de_CH = 'de_CH', - /** Greek */ - el = 'el', - /** Gujarati */ - gu = 'gu', - /** Haitian Creole */ - ht = 'ht', - /** Hausa */ - ha = 'ha', - /** Hebrew */ - he = 'he', - /** Hindi */ - hi = 'hi', - /** Hungarian */ - hu = 'hu', - /** Icelandic */ - is = 'is', - /** Igbo */ - ig = 'ig', - /** Indonesian */ - id = 'id', - /** Interlingua */ - ia = 'ia', - /** Irish */ - ga = 'ga', - /** Italian */ - it = 'it', - /** Japanese */ - ja = 'ja', - /** Javanese */ - jv = 'jv', - /** Kalaallisut */ - kl = 'kl', - /** Kannada */ - kn = 'kn', - /** Kashmiri */ - ks = 'ks', - /** Kazakh */ - kk = 'kk', - /** Khmer */ - km = 'km', - /** Kikuyu */ - ki = 'ki', - /** Kinyarwanda */ - rw = 'rw', - /** Korean */ - ko = 'ko', - /** Kurdish */ - ku = 'ku', - /** Kyrgyz */ - ky = 'ky', - /** Lao */ - lo = 'lo', - /** Latin */ - la = 'la', - /** Latvian */ - lv = 'lv', - /** Lingala */ - ln = 'ln', - /** Lithuanian */ - lt = 'lt', - /** Luba-Katanga */ - lu = 'lu', - /** Luxembourgish */ - lb = 'lb', - /** Macedonian */ - mk = 'mk', - /** Malagasy */ - mg = 'mg', - /** Malay */ - ms = 'ms', - /** Malayalam */ - ml = 'ml', - /** Maltese */ - mt = 'mt', - /** Manx */ - gv = 'gv', - /** Maori */ - mi = 'mi', - /** Marathi */ - mr = 'mr', - /** Mongolian */ - mn = 'mn', - /** Nepali */ - ne = 'ne', - /** North Ndebele */ - nd = 'nd', - /** Northern Sami */ - se = 'se', - /** Norwegian Bokmål */ - nb = 'nb', - /** Norwegian Nynorsk */ - nn = 'nn', - /** Nyanja */ - ny = 'ny', - /** Odia */ - or = 'or', - /** Oromo */ - om = 'om', - /** Ossetic */ - os = 'os', - /** Pashto */ - ps = 'ps', - /** Persian */ - fa = 'fa', - /** Dari */ - fa_AF = 'fa_AF', - /** Polish */ - pl = 'pl', - /** Portuguese */ - pt = 'pt', - /** Brazilian Portuguese */ - pt_BR = 'pt_BR', - /** European Portuguese */ - pt_PT = 'pt_PT', - /** Punjabi */ - pa = 'pa', - /** Quechua */ - qu = 'qu', - /** Romanian */ - ro = 'ro', - /** Moldavian */ - ro_MD = 'ro_MD', - /** Romansh */ - rm = 'rm', - /** Rundi */ - rn = 'rn', - /** Russian */ - ru = 'ru', - /** Samoan */ - sm = 'sm', - /** Sango */ - sg = 'sg', - /** Sanskrit */ - sa = 'sa', - /** Scottish Gaelic */ - gd = 'gd', - /** Serbian */ - sr = 'sr', - /** Shona */ - sn = 'sn', - /** Sichuan Yi */ - ii = 'ii', - /** Sindhi */ - sd = 'sd', - /** Sinhala */ - si = 'si', - /** Slovak */ - sk = 'sk', - /** Slovenian */ - sl = 'sl', - /** Somali */ - so = 'so', - /** Southern Sotho */ - st = 'st', - /** Spanish */ - es = 'es', - /** European Spanish */ - es_ES = 'es_ES', - /** Mexican Spanish */ - es_MX = 'es_MX', - /** Sundanese */ - su = 'su', - /** Swahili */ - sw = 'sw', - /** Congo Swahili */ - sw_CD = 'sw_CD', - /** Swedish */ - sv = 'sv', - /** Tajik */ - tg = 'tg', - /** Tamil */ - ta = 'ta', - /** Tatar */ - tt = 'tt', - /** Telugu */ - te = 'te', - /** Thai */ - th = 'th', - /** Tibetan */ - bo = 'bo', - /** Tigrinya */ - ti = 'ti', - /** Tongan */ - to = 'to', - /** Turkish */ - tr = 'tr', - /** Turkmen */ - tk = 'tk', - /** Ukrainian */ - uk = 'uk', - /** Urdu */ - ur = 'ur', - /** Uyghur */ - ug = 'ug', - /** Uzbek */ - uz = 'uz', - /** Vietnamese */ - vi = 'vi', - /** Volapük */ - vo = 'vo', - /** Welsh */ - cy = 'cy', - /** Western Frisian */ - fy = 'fy', - /** Wolof */ - wo = 'wo', - /** Xhosa */ - xh = 'xh', - /** Yiddish */ - yi = 'yi', - /** Yoruba */ - yo = 'yo', - /** Zulu */ - zu = 'zu' + /** Afrikaans */ + af = 'af', + /** Akan */ + ak = 'ak', + /** Albanian */ + sq = 'sq', + /** Amharic */ + am = 'am', + /** Arabic */ + ar = 'ar', + /** Armenian */ + hy = 'hy', + /** Assamese */ + as = 'as', + /** Azerbaijani */ + az = 'az', + /** Bambara */ + bm = 'bm', + /** Bangla */ + bn = 'bn', + /** Basque */ + eu = 'eu', + /** Belarusian */ + be = 'be', + /** Bosnian */ + bs = 'bs', + /** Breton */ + br = 'br', + /** Bulgarian */ + bg = 'bg', + /** Burmese */ + my = 'my', + /** Catalan */ + ca = 'ca', + /** Chechen */ + ce = 'ce', + /** Chinese */ + zh = 'zh', + /** Simplified Chinese */ + zh_Hans = 'zh_Hans', + /** Traditional Chinese */ + zh_Hant = 'zh_Hant', + /** Church Slavic */ + cu = 'cu', + /** Cornish */ + kw = 'kw', + /** Corsican */ + co = 'co', + /** Croatian */ + hr = 'hr', + /** Czech */ + cs = 'cs', + /** Danish */ + da = 'da', + /** Dutch */ + nl = 'nl', + /** Flemish */ + nl_BE = 'nl_BE', + /** Dzongkha */ + dz = 'dz', + /** English */ + en = 'en', + /** Australian English */ + en_AU = 'en_AU', + /** Canadian English */ + en_CA = 'en_CA', + /** British English */ + en_GB = 'en_GB', + /** American English */ + en_US = 'en_US', + /** Esperanto */ + eo = 'eo', + /** Estonian */ + et = 'et', + /** Ewe */ + ee = 'ee', + /** Faroese */ + fo = 'fo', + /** Finnish */ + fi = 'fi', + /** French */ + fr = 'fr', + /** Canadian French */ + fr_CA = 'fr_CA', + /** Swiss French */ + fr_CH = 'fr_CH', + /** Fulah */ + ff = 'ff', + /** Galician */ + gl = 'gl', + /** Ganda */ + lg = 'lg', + /** Georgian */ + ka = 'ka', + /** German */ + de = 'de', + /** Austrian German */ + de_AT = 'de_AT', + /** Swiss High German */ + de_CH = 'de_CH', + /** Greek */ + el = 'el', + /** Gujarati */ + gu = 'gu', + /** Haitian Creole */ + ht = 'ht', + /** Hausa */ + ha = 'ha', + /** Hebrew */ + he = 'he', + /** Hindi */ + hi = 'hi', + /** Hungarian */ + hu = 'hu', + /** Icelandic */ + is = 'is', + /** Igbo */ + ig = 'ig', + /** Indonesian */ + id = 'id', + /** Interlingua */ + ia = 'ia', + /** Irish */ + ga = 'ga', + /** Italian */ + it = 'it', + /** Japanese */ + ja = 'ja', + /** Javanese */ + jv = 'jv', + /** Kalaallisut */ + kl = 'kl', + /** Kannada */ + kn = 'kn', + /** Kashmiri */ + ks = 'ks', + /** Kazakh */ + kk = 'kk', + /** Khmer */ + km = 'km', + /** Kikuyu */ + ki = 'ki', + /** Kinyarwanda */ + rw = 'rw', + /** Korean */ + ko = 'ko', + /** Kurdish */ + ku = 'ku', + /** Kyrgyz */ + ky = 'ky', + /** Lao */ + lo = 'lo', + /** Latin */ + la = 'la', + /** Latvian */ + lv = 'lv', + /** Lingala */ + ln = 'ln', + /** Lithuanian */ + lt = 'lt', + /** Luba-Katanga */ + lu = 'lu', + /** Luxembourgish */ + lb = 'lb', + /** Macedonian */ + mk = 'mk', + /** Malagasy */ + mg = 'mg', + /** Malay */ + ms = 'ms', + /** Malayalam */ + ml = 'ml', + /** Maltese */ + mt = 'mt', + /** Manx */ + gv = 'gv', + /** Maori */ + mi = 'mi', + /** Marathi */ + mr = 'mr', + /** Mongolian */ + mn = 'mn', + /** Nepali */ + ne = 'ne', + /** North Ndebele */ + nd = 'nd', + /** Northern Sami */ + se = 'se', + /** Norwegian Bokmål */ + nb = 'nb', + /** Norwegian Nynorsk */ + nn = 'nn', + /** Nyanja */ + ny = 'ny', + /** Odia */ + or = 'or', + /** Oromo */ + om = 'om', + /** Ossetic */ + os = 'os', + /** Pashto */ + ps = 'ps', + /** Persian */ + fa = 'fa', + /** Dari */ + fa_AF = 'fa_AF', + /** Polish */ + pl = 'pl', + /** Portuguese */ + pt = 'pt', + /** Brazilian Portuguese */ + pt_BR = 'pt_BR', + /** European Portuguese */ + pt_PT = 'pt_PT', + /** Punjabi */ + pa = 'pa', + /** Quechua */ + qu = 'qu', + /** Romanian */ + ro = 'ro', + /** Moldavian */ + ro_MD = 'ro_MD', + /** Romansh */ + rm = 'rm', + /** Rundi */ + rn = 'rn', + /** Russian */ + ru = 'ru', + /** Samoan */ + sm = 'sm', + /** Sango */ + sg = 'sg', + /** Sanskrit */ + sa = 'sa', + /** Scottish Gaelic */ + gd = 'gd', + /** Serbian */ + sr = 'sr', + /** Shona */ + sn = 'sn', + /** Sichuan Yi */ + ii = 'ii', + /** Sindhi */ + sd = 'sd', + /** Sinhala */ + si = 'si', + /** Slovak */ + sk = 'sk', + /** Slovenian */ + sl = 'sl', + /** Somali */ + so = 'so', + /** Southern Sotho */ + st = 'st', + /** Spanish */ + es = 'es', + /** European Spanish */ + es_ES = 'es_ES', + /** Mexican Spanish */ + es_MX = 'es_MX', + /** Sundanese */ + su = 'su', + /** Swahili */ + sw = 'sw', + /** Congo Swahili */ + sw_CD = 'sw_CD', + /** Swedish */ + sv = 'sv', + /** Tajik */ + tg = 'tg', + /** Tamil */ + ta = 'ta', + /** Tatar */ + tt = 'tt', + /** Telugu */ + te = 'te', + /** Thai */ + th = 'th', + /** Tibetan */ + bo = 'bo', + /** Tigrinya */ + ti = 'ti', + /** Tongan */ + to = 'to', + /** Turkish */ + tr = 'tr', + /** Turkmen */ + tk = 'tk', + /** Ukrainian */ + uk = 'uk', + /** Urdu */ + ur = 'ur', + /** Uyghur */ + ug = 'ug', + /** Uzbek */ + uz = 'uz', + /** Vietnamese */ + vi = 'vi', + /** Volapük */ + vo = 'vo', + /** Welsh */ + cy = 'cy', + /** Western Frisian */ + fy = 'fy', + /** Wolof */ + wo = 'wo', + /** Xhosa */ + xh = 'xh', + /** Yiddish */ + yi = 'yi', + /** Yoruba */ + yo = 'yo', + /** Zulu */ + zu = 'zu', } /** @@ -2827,448 +2718,447 @@ export enum LanguageCode { * @description * Permissions for administrators and customers. Used to control access to * GraphQL resolvers via the {@link Allow} decorator. - * + * * @docsCategory common */ export enum Permission { - /** The Authenticated role means simply that the user is logged in */ - Authenticated = 'Authenticated', - /** SuperAdmin can perform the most sensitive tasks */ - SuperAdmin = 'SuperAdmin', - /** Owner means the user owns this entity, e.g. a Customer's own Order */ - Owner = 'Owner', - /** Public means any unauthenticated user may perform the operation */ - Public = 'Public', - CreateCatalog = 'CreateCatalog', - ReadCatalog = 'ReadCatalog', - UpdateCatalog = 'UpdateCatalog', - DeleteCatalog = 'DeleteCatalog', - CreateCustomer = 'CreateCustomer', - ReadCustomer = 'ReadCustomer', - UpdateCustomer = 'UpdateCustomer', - DeleteCustomer = 'DeleteCustomer', - CreateAdministrator = 'CreateAdministrator', - ReadAdministrator = 'ReadAdministrator', - UpdateAdministrator = 'UpdateAdministrator', - DeleteAdministrator = 'DeleteAdministrator', - CreateOrder = 'CreateOrder', - ReadOrder = 'ReadOrder', - UpdateOrder = 'UpdateOrder', - DeleteOrder = 'DeleteOrder', - CreatePromotion = 'CreatePromotion', - ReadPromotion = 'ReadPromotion', - UpdatePromotion = 'UpdatePromotion', - DeletePromotion = 'DeletePromotion', - CreateSettings = 'CreateSettings', - ReadSettings = 'ReadSettings', - UpdateSettings = 'UpdateSettings', - DeleteSettings = 'DeleteSettings' + /** The Authenticated role means simply that the user is logged in */ + Authenticated = 'Authenticated', + /** SuperAdmin can perform the most sensitive tasks */ + SuperAdmin = 'SuperAdmin', + /** Owner means the user owns this entity, e.g. a Customer's own Order */ + Owner = 'Owner', + /** Public means any unauthenticated user may perform the operation */ + Public = 'Public', + CreateCatalog = 'CreateCatalog', + ReadCatalog = 'ReadCatalog', + UpdateCatalog = 'UpdateCatalog', + DeleteCatalog = 'DeleteCatalog', + CreateCustomer = 'CreateCustomer', + ReadCustomer = 'ReadCustomer', + UpdateCustomer = 'UpdateCustomer', + DeleteCustomer = 'DeleteCustomer', + CreateAdministrator = 'CreateAdministrator', + ReadAdministrator = 'ReadAdministrator', + UpdateAdministrator = 'UpdateAdministrator', + DeleteAdministrator = 'DeleteAdministrator', + CreateOrder = 'CreateOrder', + ReadOrder = 'ReadOrder', + UpdateOrder = 'UpdateOrder', + DeleteOrder = 'DeleteOrder', + CreatePromotion = 'CreatePromotion', + ReadPromotion = 'ReadPromotion', + UpdatePromotion = 'UpdatePromotion', + DeletePromotion = 'DeletePromotion', + CreateSettings = 'CreateSettings', + ReadSettings = 'ReadSettings', + UpdateSettings = 'UpdateSettings', + DeleteSettings = 'DeleteSettings', } export type Address = Node & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - fullName?: Maybe; - company?: Maybe; - streetLine1: Scalars['String']; - streetLine2?: Maybe; - city?: Maybe; - province?: Maybe; - postalCode?: Maybe; - country: Country; - phoneNumber?: Maybe; - defaultShippingAddress?: Maybe; - defaultBillingAddress?: Maybe; - customFields?: Maybe; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + fullName?: Maybe; + company?: Maybe; + streetLine1: Scalars['String']; + streetLine2?: Maybe; + city?: Maybe; + province?: Maybe; + postalCode?: Maybe; + country: Country; + phoneNumber?: Maybe; + defaultShippingAddress?: Maybe; + defaultBillingAddress?: Maybe; + customFields?: Maybe; }; export type Administrator = Node & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - firstName: Scalars['String']; - lastName: Scalars['String']; - emailAddress: Scalars['String']; - user: User; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + firstName: Scalars['String']; + lastName: Scalars['String']; + emailAddress: Scalars['String']; + user: User; }; export type AdministratorList = PaginatedList & { - items: Array; - totalItems: Scalars['Int']; + items: Array; + totalItems: Scalars['Int']; }; export type Asset = Node & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - name: Scalars['String']; - type: AssetType; - fileSize: Scalars['Int']; - mimeType: Scalars['String']; - width: Scalars['Int']; - height: Scalars['Int']; - source: Scalars['String']; - preview: Scalars['String']; - focalPoint?: Maybe; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + name: Scalars['String']; + type: AssetType; + fileSize: Scalars['Int']; + mimeType: Scalars['String']; + width: Scalars['Int']; + height: Scalars['Int']; + source: Scalars['String']; + preview: Scalars['String']; + focalPoint?: Maybe; }; export type Coordinate = { - x: Scalars['Float']; - y: Scalars['Float']; + x: Scalars['Float']; + y: Scalars['Float']; }; export type AssetList = PaginatedList & { - items: Array; - totalItems: Scalars['Int']; + items: Array; + totalItems: Scalars['Int']; }; export enum AssetType { - IMAGE = 'IMAGE', - VIDEO = 'VIDEO', - BINARY = 'BINARY' + IMAGE = 'IMAGE', + VIDEO = 'VIDEO', + BINARY = 'BINARY', } export type CurrentUser = { - id: Scalars['ID']; - identifier: Scalars['String']; - channels: Array; + id: Scalars['ID']; + identifier: Scalars['String']; + channels: Array; }; export type CurrentUserChannel = { - id: Scalars['ID']; - token: Scalars['String']; - code: Scalars['String']; - permissions: Array; + id: Scalars['ID']; + token: Scalars['String']; + code: Scalars['String']; + permissions: Array; }; export type Channel = Node & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - code: Scalars['String']; - token: Scalars['String']; - defaultTaxZone?: Maybe; - defaultShippingZone?: Maybe; - defaultLanguageCode: LanguageCode; - currencyCode: CurrencyCode; - pricesIncludeTax: Scalars['Boolean']; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + code: Scalars['String']; + token: Scalars['String']; + defaultTaxZone?: Maybe; + defaultShippingZone?: Maybe; + defaultLanguageCode: LanguageCode; + currencyCode: CurrencyCode; + pricesIncludeTax: Scalars['Boolean']; }; export type CollectionBreadcrumb = { - id: Scalars['ID']; - name: Scalars['String']; - slug: Scalars['String']; + id: Scalars['ID']; + name: Scalars['String']; + slug: Scalars['String']; }; export type CollectionTranslation = { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - languageCode: LanguageCode; - name: Scalars['String']; - slug: Scalars['String']; - description: Scalars['String']; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + languageCode: LanguageCode; + name: Scalars['String']; + slug: Scalars['String']; + description: Scalars['String']; }; export type CollectionList = PaginatedList & { - items: Array; - totalItems: Scalars['Int']; + items: Array; + totalItems: Scalars['Int']; }; export type ProductVariantList = PaginatedList & { - items: Array; - totalItems: Scalars['Int']; + items: Array; + totalItems: Scalars['Int']; }; export type Country = Node & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - languageCode: LanguageCode; - code: Scalars['String']; - name: Scalars['String']; - enabled: Scalars['Boolean']; - translations: Array; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + languageCode: LanguageCode; + code: Scalars['String']; + name: Scalars['String']; + enabled: Scalars['Boolean']; + translations: Array; }; export type CountryTranslation = { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - languageCode: LanguageCode; - name: Scalars['String']; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + languageCode: LanguageCode; + name: Scalars['String']; }; export type CountryList = PaginatedList & { - items: Array; - totalItems: Scalars['Int']; + items: Array; + totalItems: Scalars['Int']; }; export type CustomerGroup = Node & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - name: Scalars['String']; - customers: CustomerList; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + name: Scalars['String']; + customers: CustomerList; }; - export type CustomerGroupCustomersArgs = { - options?: Maybe; + options?: Maybe; }; export type CustomerList = PaginatedList & { - items: Array; - totalItems: Scalars['Int']; + items: Array; + totalItems: Scalars['Int']; }; export type FacetValue = Node & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - languageCode: LanguageCode; - facet: Facet; - name: Scalars['String']; - code: Scalars['String']; - translations: Array; - customFields?: Maybe; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + languageCode: LanguageCode; + facet: Facet; + name: Scalars['String']; + code: Scalars['String']; + translations: Array; + customFields?: Maybe; }; export type FacetValueTranslation = { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - languageCode: LanguageCode; - name: Scalars['String']; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + languageCode: LanguageCode; + name: Scalars['String']; }; export type FacetTranslation = { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - languageCode: LanguageCode; - name: Scalars['String']; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + languageCode: LanguageCode; + name: Scalars['String']; }; export type FacetList = PaginatedList & { - items: Array; - totalItems: Scalars['Int']; + items: Array; + totalItems: Scalars['Int']; }; export type GlobalSettings = { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - availableLanguages: Array; - trackInventory: Scalars['Boolean']; - serverConfig: ServerConfig; - customFields?: Maybe; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + availableLanguages: Array; + trackInventory: Scalars['Boolean']; + serverConfig: ServerConfig; + customFields?: Maybe; }; export type OrderProcessState = { - name: Scalars['String']; - to: Array; + name: Scalars['String']; + to: Array; }; export type ServerConfig = { - orderProcess: Array; - permittedAssetTypes: Array; - customFieldConfig: CustomFields; + orderProcess: Array; + permittedAssetTypes: Array; + customFieldConfig: CustomFields; }; export type HistoryEntry = Node & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - isPublic: Scalars['Boolean']; - type: HistoryEntryType; - administrator?: Maybe; - data: Scalars['JSON']; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + isPublic: Scalars['Boolean']; + type: HistoryEntryType; + administrator?: Maybe; + data: Scalars['JSON']; }; export enum HistoryEntryType { - CUSTOMER_REGISTERED = 'CUSTOMER_REGISTERED', - CUSTOMER_VERIFIED = 'CUSTOMER_VERIFIED', - CUSTOMER_DETAIL_UPDATED = 'CUSTOMER_DETAIL_UPDATED', - CUSTOMER_ADDED_TO_GROUP = 'CUSTOMER_ADDED_TO_GROUP', - CUSTOMER_REMOVED_FROM_GROUP = 'CUSTOMER_REMOVED_FROM_GROUP', - CUSTOMER_ADDRESS_CREATED = 'CUSTOMER_ADDRESS_CREATED', - CUSTOMER_ADDRESS_UPDATED = 'CUSTOMER_ADDRESS_UPDATED', - CUSTOMER_ADDRESS_DELETED = 'CUSTOMER_ADDRESS_DELETED', - CUSTOMER_PASSWORD_UPDATED = 'CUSTOMER_PASSWORD_UPDATED', - CUSTOMER_PASSWORD_RESET_REQUESTED = 'CUSTOMER_PASSWORD_RESET_REQUESTED', - CUSTOMER_PASSWORD_RESET_VERIFIED = 'CUSTOMER_PASSWORD_RESET_VERIFIED', - CUSTOMER_EMAIL_UPDATE_REQUESTED = 'CUSTOMER_EMAIL_UPDATE_REQUESTED', - CUSTOMER_EMAIL_UPDATE_VERIFIED = 'CUSTOMER_EMAIL_UPDATE_VERIFIED', - CUSTOMER_NOTE = 'CUSTOMER_NOTE', - ORDER_STATE_TRANSITION = 'ORDER_STATE_TRANSITION', - ORDER_PAYMENT_TRANSITION = 'ORDER_PAYMENT_TRANSITION', - ORDER_FULFILLMENT = 'ORDER_FULFILLMENT', - ORDER_CANCELLATION = 'ORDER_CANCELLATION', - ORDER_REFUND_TRANSITION = 'ORDER_REFUND_TRANSITION', - ORDER_FULFILLMENT_TRANSITION = 'ORDER_FULFILLMENT_TRANSITION', - ORDER_NOTE = 'ORDER_NOTE', - ORDER_COUPON_APPLIED = 'ORDER_COUPON_APPLIED', - ORDER_COUPON_REMOVED = 'ORDER_COUPON_REMOVED' + CUSTOMER_REGISTERED = 'CUSTOMER_REGISTERED', + CUSTOMER_VERIFIED = 'CUSTOMER_VERIFIED', + CUSTOMER_DETAIL_UPDATED = 'CUSTOMER_DETAIL_UPDATED', + CUSTOMER_ADDED_TO_GROUP = 'CUSTOMER_ADDED_TO_GROUP', + CUSTOMER_REMOVED_FROM_GROUP = 'CUSTOMER_REMOVED_FROM_GROUP', + CUSTOMER_ADDRESS_CREATED = 'CUSTOMER_ADDRESS_CREATED', + CUSTOMER_ADDRESS_UPDATED = 'CUSTOMER_ADDRESS_UPDATED', + CUSTOMER_ADDRESS_DELETED = 'CUSTOMER_ADDRESS_DELETED', + CUSTOMER_PASSWORD_UPDATED = 'CUSTOMER_PASSWORD_UPDATED', + CUSTOMER_PASSWORD_RESET_REQUESTED = 'CUSTOMER_PASSWORD_RESET_REQUESTED', + CUSTOMER_PASSWORD_RESET_VERIFIED = 'CUSTOMER_PASSWORD_RESET_VERIFIED', + CUSTOMER_EMAIL_UPDATE_REQUESTED = 'CUSTOMER_EMAIL_UPDATE_REQUESTED', + CUSTOMER_EMAIL_UPDATE_VERIFIED = 'CUSTOMER_EMAIL_UPDATE_VERIFIED', + CUSTOMER_NOTE = 'CUSTOMER_NOTE', + ORDER_STATE_TRANSITION = 'ORDER_STATE_TRANSITION', + ORDER_PAYMENT_TRANSITION = 'ORDER_PAYMENT_TRANSITION', + ORDER_FULFILLMENT = 'ORDER_FULFILLMENT', + ORDER_CANCELLATION = 'ORDER_CANCELLATION', + ORDER_REFUND_TRANSITION = 'ORDER_REFUND_TRANSITION', + ORDER_FULFILLMENT_TRANSITION = 'ORDER_FULFILLMENT_TRANSITION', + ORDER_NOTE = 'ORDER_NOTE', + ORDER_COUPON_APPLIED = 'ORDER_COUPON_APPLIED', + ORDER_COUPON_REMOVED = 'ORDER_COUPON_REMOVED', } export type HistoryEntryList = PaginatedList & { - items: Array; - totalItems: Scalars['Int']; + items: Array; + totalItems: Scalars['Int']; }; export type ImportInfo = { - errors?: Maybe>; - processed: Scalars['Int']; - imported: Scalars['Int']; + errors?: Maybe>; + processed: Scalars['Int']; + imported: Scalars['Int']; }; export type OrderAddress = { - fullName?: Maybe; - company?: Maybe; - streetLine1?: Maybe; - streetLine2?: Maybe; - city?: Maybe; - province?: Maybe; - postalCode?: Maybe; - country?: Maybe; - countryCode?: Maybe; - phoneNumber?: Maybe; + fullName?: Maybe; + company?: Maybe; + streetLine1?: Maybe; + streetLine2?: Maybe; + city?: Maybe; + province?: Maybe; + postalCode?: Maybe; + country?: Maybe; + countryCode?: Maybe; + phoneNumber?: Maybe; }; export type OrderList = PaginatedList & { - items: Array; - totalItems: Scalars['Int']; + items: Array; + totalItems: Scalars['Int']; }; export type ShippingMethodQuote = { - id: Scalars['ID']; - price: Scalars['Int']; - priceWithTax: Scalars['Int']; - description: Scalars['String']; - metadata?: Maybe; + id: Scalars['ID']; + price: Scalars['Int']; + priceWithTax: Scalars['Int']; + description: Scalars['String']; + metadata?: Maybe; }; export type OrderItem = Node & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - cancelled: Scalars['Boolean']; - unitPrice: Scalars['Int']; - unitPriceWithTax: Scalars['Int']; - unitPriceIncludesTax: Scalars['Boolean']; - taxRate: Scalars['Float']; - adjustments: Array; - fulfillment?: Maybe; - refundId?: Maybe; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + cancelled: Scalars['Boolean']; + unitPrice: Scalars['Int']; + unitPriceWithTax: Scalars['Int']; + unitPriceIncludesTax: Scalars['Boolean']; + taxRate: Scalars['Float']; + adjustments: Array; + fulfillment?: Maybe; + refundId?: Maybe; }; export type OrderLine = Node & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - productVariant: ProductVariant; - featuredAsset?: Maybe; - unitPrice: Scalars['Int']; - unitPriceWithTax: Scalars['Int']; - quantity: Scalars['Int']; - items: Array; - totalPrice: Scalars['Int']; - adjustments: Array; - order: Order; - customFields?: Maybe; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + productVariant: ProductVariant; + featuredAsset?: Maybe; + unitPrice: Scalars['Int']; + unitPriceWithTax: Scalars['Int']; + quantity: Scalars['Int']; + items: Array; + totalPrice: Scalars['Int']; + adjustments: Array; + order: Order; + customFields?: Maybe; }; export type Payment = Node & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - method: Scalars['String']; - amount: Scalars['Int']; - state: Scalars['String']; - transactionId?: Maybe; - errorMessage?: Maybe; - refunds: Array; - metadata?: Maybe; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + method: Scalars['String']; + amount: Scalars['Int']; + state: Scalars['String']; + transactionId?: Maybe; + errorMessage?: Maybe; + refunds: Array; + metadata?: Maybe; }; export type Refund = Node & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - items: Scalars['Int']; - shipping: Scalars['Int']; - adjustment: Scalars['Int']; - total: Scalars['Int']; - method?: Maybe; - state: Scalars['String']; - transactionId?: Maybe; - reason?: Maybe; - orderItems: Array; - paymentId: Scalars['ID']; - metadata?: Maybe; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + items: Scalars['Int']; + shipping: Scalars['Int']; + adjustment: Scalars['Int']; + total: Scalars['Int']; + method?: Maybe; + state: Scalars['String']; + transactionId?: Maybe; + reason?: Maybe; + orderItems: Array; + paymentId: Scalars['ID']; + metadata?: Maybe; }; export type PaymentMethod = Node & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - code: Scalars['String']; - enabled: Scalars['Boolean']; - configArgs: Array; - definition: ConfigurableOperationDefinition; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + code: Scalars['String']; + enabled: Scalars['Boolean']; + configArgs: Array; + definition: ConfigurableOperationDefinition; }; export type ProductOptionGroup = Node & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - languageCode: LanguageCode; - code: Scalars['String']; - name: Scalars['String']; - options: Array; - translations: Array; - customFields?: Maybe; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + languageCode: LanguageCode; + code: Scalars['String']; + name: Scalars['String']; + options: Array; + translations: Array; + customFields?: Maybe; }; export type ProductOptionGroupTranslation = { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - languageCode: LanguageCode; - name: Scalars['String']; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + languageCode: LanguageCode; + name: Scalars['String']; }; export type ProductOption = Node & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - languageCode: LanguageCode; - code: Scalars['String']; - name: Scalars['String']; - groupId: Scalars['ID']; - group: ProductOptionGroup; - translations: Array; - customFields?: Maybe; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + languageCode: LanguageCode; + code: Scalars['String']; + name: Scalars['String']; + groupId: Scalars['ID']; + group: ProductOptionGroup; + translations: Array; + customFields?: Maybe; }; export type ProductOptionTranslation = { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - languageCode: LanguageCode; - name: Scalars['String']; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + languageCode: LanguageCode; + name: Scalars['String']; }; export type SearchReindexResponse = { - success: Scalars['Boolean']; + success: Scalars['Boolean']; }; export type SearchResponse = { - items: Array; - totalItems: Scalars['Int']; - facetValues: Array; + items: Array; + totalItems: Scalars['Int']; + facetValues: Array; }; /** @@ -3276,14 +3166,14 @@ export type SearchResponse = { * by the search, and in what quantity. */ export type FacetValueResult = { - facetValue: FacetValue; - count: Scalars['Int']; + facetValue: FacetValue; + count: Scalars['Int']; }; export type SearchResultAsset = { - id: Scalars['ID']; - preview: Scalars['String']; - focalPoint?: Maybe; + id: Scalars['ID']; + preview: Scalars['String']; + focalPoint?: Maybe; }; /** The price of a search result product, either as a range or as a single price */ @@ -3291,3752 +3181,4249 @@ export type SearchResultPrice = PriceRange | SinglePrice; /** The price value where the result has a single price */ export type SinglePrice = { - value: Scalars['Int']; + value: Scalars['Int']; }; /** The price range where the result has more than one price */ export type PriceRange = { - min: Scalars['Int']; - max: Scalars['Int']; + min: Scalars['Int']; + max: Scalars['Int']; }; export type ProductTranslation = { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - languageCode: LanguageCode; - name: Scalars['String']; - slug: Scalars['String']; - description: Scalars['String']; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + languageCode: LanguageCode; + name: Scalars['String']; + slug: Scalars['String']; + description: Scalars['String']; }; export type ProductList = PaginatedList & { - items: Array; - totalItems: Scalars['Int']; + items: Array; + totalItems: Scalars['Int']; }; export type ProductVariantTranslation = { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - languageCode: LanguageCode; - name: Scalars['String']; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + languageCode: LanguageCode; + name: Scalars['String']; }; export type Promotion = Node & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - startsAt?: Maybe; - endsAt?: Maybe; - couponCode?: Maybe; - perCustomerUsageLimit?: Maybe; - name: Scalars['String']; - enabled: Scalars['Boolean']; - conditions: Array; - actions: Array; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + startsAt?: Maybe; + endsAt?: Maybe; + couponCode?: Maybe; + perCustomerUsageLimit?: Maybe; + name: Scalars['String']; + enabled: Scalars['Boolean']; + conditions: Array; + actions: Array; }; export type PromotionList = PaginatedList & { - items: Array; - totalItems: Scalars['Int']; + items: Array; + totalItems: Scalars['Int']; }; export type Role = Node & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - code: Scalars['String']; - description: Scalars['String']; - permissions: Array; - channels: Array; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + code: Scalars['String']; + description: Scalars['String']; + permissions: Array; + channels: Array; }; export type RoleList = PaginatedList & { - items: Array; - totalItems: Scalars['Int']; + items: Array; + totalItems: Scalars['Int']; }; export type ShippingMethod = Node & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - code: Scalars['String']; - description: Scalars['String']; - checker: ConfigurableOperation; - calculator: ConfigurableOperation; - customFields?: Maybe; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + code: Scalars['String']; + description: Scalars['String']; + checker: ConfigurableOperation; + calculator: ConfigurableOperation; + customFields?: Maybe; }; export type ShippingMethodList = PaginatedList & { - items: Array; - totalItems: Scalars['Int']; + items: Array; + totalItems: Scalars['Int']; }; export enum StockMovementType { - ADJUSTMENT = 'ADJUSTMENT', - SALE = 'SALE', - CANCELLATION = 'CANCELLATION', - RETURN = 'RETURN' + ADJUSTMENT = 'ADJUSTMENT', + SALE = 'SALE', + CANCELLATION = 'CANCELLATION', + RETURN = 'RETURN', } export type StockMovement = { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - productVariant: ProductVariant; - type: StockMovementType; - quantity: Scalars['Int']; -}; - -export type StockAdjustment = Node & StockMovement & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - productVariant: ProductVariant; - type: StockMovementType; - quantity: Scalars['Int']; -}; - -export type Sale = Node & StockMovement & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - productVariant: ProductVariant; - type: StockMovementType; - quantity: Scalars['Int']; - orderLine: OrderLine; -}; - -export type Cancellation = Node & StockMovement & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - productVariant: ProductVariant; - type: StockMovementType; - quantity: Scalars['Int']; - orderLine: OrderLine; -}; - -export type Return = Node & StockMovement & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - productVariant: ProductVariant; - type: StockMovementType; - quantity: Scalars['Int']; - orderItem: OrderItem; -}; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + productVariant: ProductVariant; + type: StockMovementType; + quantity: Scalars['Int']; +}; + +export type StockAdjustment = Node & + StockMovement & { + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + productVariant: ProductVariant; + type: StockMovementType; + quantity: Scalars['Int']; + }; + +export type Sale = Node & + StockMovement & { + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + productVariant: ProductVariant; + type: StockMovementType; + quantity: Scalars['Int']; + orderLine: OrderLine; + }; + +export type Cancellation = Node & + StockMovement & { + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + productVariant: ProductVariant; + type: StockMovementType; + quantity: Scalars['Int']; + orderLine: OrderLine; + }; + +export type Return = Node & + StockMovement & { + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + productVariant: ProductVariant; + type: StockMovementType; + quantity: Scalars['Int']; + orderItem: OrderItem; + }; export type StockMovementItem = StockAdjustment | Sale | Cancellation | Return; export type StockMovementList = { - items: Array; - totalItems: Scalars['Int']; + items: Array; + totalItems: Scalars['Int']; }; export type TaxCategory = Node & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - name: Scalars['String']; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + name: Scalars['String']; }; export type TaxRate = Node & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - name: Scalars['String']; - enabled: Scalars['Boolean']; - value: Scalars['Float']; - category: TaxCategory; - zone: Zone; - customerGroup?: Maybe; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + name: Scalars['String']; + enabled: Scalars['Boolean']; + value: Scalars['Float']; + category: TaxCategory; + zone: Zone; + customerGroup?: Maybe; }; export type TaxRateList = PaginatedList & { - items: Array; - totalItems: Scalars['Int']; + items: Array; + totalItems: Scalars['Int']; }; export type User = Node & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - identifier: Scalars['String']; - verified: Scalars['Boolean']; - roles: Array; - lastLogin?: Maybe; - authenticationMethods: Array; - customFields?: Maybe; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + identifier: Scalars['String']; + verified: Scalars['Boolean']; + roles: Array; + lastLogin?: Maybe; + authenticationMethods: Array; + customFields?: Maybe; }; export type AuthenticationMethod = Node & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - strategy: Scalars['String']; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + strategy: Scalars['String']; }; export type Zone = Node & { - id: Scalars['ID']; - createdAt: Scalars['DateTime']; - updatedAt: Scalars['DateTime']; - name: Scalars['String']; - members: Array; + id: Scalars['ID']; + createdAt: Scalars['DateTime']; + updatedAt: Scalars['DateTime']; + name: Scalars['String']; + members: Array; }; export type AdministratorListOptions = { - skip?: Maybe; - take?: Maybe; - sort?: Maybe; - filter?: Maybe; + skip?: Maybe; + take?: Maybe; + sort?: Maybe; + filter?: Maybe; }; export type AssetListOptions = { - skip?: Maybe; - take?: Maybe; - sort?: Maybe; - filter?: Maybe; + skip?: Maybe; + take?: Maybe; + sort?: Maybe; + filter?: Maybe; }; export type CollectionListOptions = { - skip?: Maybe; - take?: Maybe; - sort?: Maybe; - filter?: Maybe; + skip?: Maybe; + take?: Maybe; + sort?: Maybe; + filter?: Maybe; }; export type CountryListOptions = { - skip?: Maybe; - take?: Maybe; - sort?: Maybe; - filter?: Maybe; + skip?: Maybe; + take?: Maybe; + sort?: Maybe; + filter?: Maybe; }; export type CustomerGroupListOptions = { - skip?: Maybe; - take?: Maybe; - sort?: Maybe; - filter?: Maybe; + skip?: Maybe; + take?: Maybe; + sort?: Maybe; + filter?: Maybe; }; export type CustomerListOptions = { - skip?: Maybe; - take?: Maybe; - sort?: Maybe; - filter?: Maybe; + skip?: Maybe; + take?: Maybe; + sort?: Maybe; + filter?: Maybe; }; export type FacetListOptions = { - skip?: Maybe; - take?: Maybe; - sort?: Maybe; - filter?: Maybe; + skip?: Maybe; + take?: Maybe; + sort?: Maybe; + filter?: Maybe; }; export type JobListOptions = { - skip?: Maybe; - take?: Maybe; - sort?: Maybe; - filter?: Maybe; + skip?: Maybe; + take?: Maybe; + sort?: Maybe; + filter?: Maybe; }; export type OrderListOptions = { - skip?: Maybe; - take?: Maybe; - sort?: Maybe; - filter?: Maybe; + skip?: Maybe; + take?: Maybe; + sort?: Maybe; + filter?: Maybe; }; export type PaymentMethodListOptions = { - skip?: Maybe; - take?: Maybe; - sort?: Maybe; - filter?: Maybe; + skip?: Maybe; + take?: Maybe; + sort?: Maybe; + filter?: Maybe; }; export type ProductListOptions = { - skip?: Maybe; - take?: Maybe; - sort?: Maybe; - filter?: Maybe; + skip?: Maybe; + take?: Maybe; + sort?: Maybe; + filter?: Maybe; }; export type PromotionListOptions = { - skip?: Maybe; - take?: Maybe; - sort?: Maybe; - filter?: Maybe; + skip?: Maybe; + take?: Maybe; + sort?: Maybe; + filter?: Maybe; }; export type RoleListOptions = { - skip?: Maybe; - take?: Maybe; - sort?: Maybe; - filter?: Maybe; + skip?: Maybe; + take?: Maybe; + sort?: Maybe; + filter?: Maybe; }; export type ShippingMethodListOptions = { - skip?: Maybe; - take?: Maybe; - sort?: Maybe; - filter?: Maybe; + skip?: Maybe; + take?: Maybe; + sort?: Maybe; + filter?: Maybe; }; export type TaxRateListOptions = { - skip?: Maybe; - take?: Maybe; - sort?: Maybe; - filter?: Maybe; + skip?: Maybe; + take?: Maybe; + sort?: Maybe; + filter?: Maybe; }; export type ProductVariantListOptions = { - skip?: Maybe; - take?: Maybe; - sort?: Maybe; - filter?: Maybe; + skip?: Maybe; + take?: Maybe; + sort?: Maybe; + filter?: Maybe; }; export type HistoryEntryListOptions = { - skip?: Maybe; - take?: Maybe; - sort?: Maybe; - filter?: Maybe; + skip?: Maybe; + take?: Maybe; + sort?: Maybe; + filter?: Maybe; }; export type AdministratorFilterParameter = { - createdAt?: Maybe; - updatedAt?: Maybe; - firstName?: Maybe; - lastName?: Maybe; - emailAddress?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + firstName?: Maybe; + lastName?: Maybe; + emailAddress?: Maybe; }; export type AdministratorSortParameter = { - id?: Maybe; - createdAt?: Maybe; - updatedAt?: Maybe; - firstName?: Maybe; - lastName?: Maybe; - emailAddress?: Maybe; + id?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + firstName?: Maybe; + lastName?: Maybe; + emailAddress?: Maybe; }; export type AssetFilterParameter = { - createdAt?: Maybe; - updatedAt?: Maybe; - name?: Maybe; - type?: Maybe; - fileSize?: Maybe; - mimeType?: Maybe; - width?: Maybe; - height?: Maybe; - source?: Maybe; - preview?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + name?: Maybe; + type?: Maybe; + fileSize?: Maybe; + mimeType?: Maybe; + width?: Maybe; + height?: Maybe; + source?: Maybe; + preview?: Maybe; }; export type AssetSortParameter = { - id?: Maybe; - createdAt?: Maybe; - updatedAt?: Maybe; - name?: Maybe; - fileSize?: Maybe; - mimeType?: Maybe; - width?: Maybe; - height?: Maybe; - source?: Maybe; - preview?: Maybe; + id?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + name?: Maybe; + fileSize?: Maybe; + mimeType?: Maybe; + width?: Maybe; + height?: Maybe; + source?: Maybe; + preview?: Maybe; }; export type CollectionFilterParameter = { - isPrivate?: Maybe; - createdAt?: Maybe; - updatedAt?: Maybe; - languageCode?: Maybe; - name?: Maybe; - slug?: Maybe; - position?: Maybe; - description?: Maybe; + isPrivate?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + languageCode?: Maybe; + name?: Maybe; + slug?: Maybe; + position?: Maybe; + description?: Maybe; }; export type CollectionSortParameter = { - id?: Maybe; - createdAt?: Maybe; - updatedAt?: Maybe; - name?: Maybe; - slug?: Maybe; - position?: Maybe; - description?: Maybe; + id?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + name?: Maybe; + slug?: Maybe; + position?: Maybe; + description?: Maybe; }; export type CountryFilterParameter = { - createdAt?: Maybe; - updatedAt?: Maybe; - languageCode?: Maybe; - code?: Maybe; - name?: Maybe; - enabled?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + languageCode?: Maybe; + code?: Maybe; + name?: Maybe; + enabled?: Maybe; }; export type CountrySortParameter = { - id?: Maybe; - createdAt?: Maybe; - updatedAt?: Maybe; - code?: Maybe; - name?: Maybe; + id?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + code?: Maybe; + name?: Maybe; }; export type CustomerGroupFilterParameter = { - createdAt?: Maybe; - updatedAt?: Maybe; - name?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + name?: Maybe; }; export type CustomerGroupSortParameter = { - id?: Maybe; - createdAt?: Maybe; - updatedAt?: Maybe; - name?: Maybe; + id?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + name?: Maybe; }; export type CustomerFilterParameter = { - createdAt?: Maybe; - updatedAt?: Maybe; - title?: Maybe; - firstName?: Maybe; - lastName?: Maybe; - phoneNumber?: Maybe; - emailAddress?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + title?: Maybe; + firstName?: Maybe; + lastName?: Maybe; + phoneNumber?: Maybe; + emailAddress?: Maybe; }; export type CustomerSortParameter = { - id?: Maybe; - createdAt?: Maybe; - updatedAt?: Maybe; - title?: Maybe; - firstName?: Maybe; - lastName?: Maybe; - phoneNumber?: Maybe; - emailAddress?: Maybe; + id?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + title?: Maybe; + firstName?: Maybe; + lastName?: Maybe; + phoneNumber?: Maybe; + emailAddress?: Maybe; }; export type FacetFilterParameter = { - isPrivate?: Maybe; - createdAt?: Maybe; - updatedAt?: Maybe; - languageCode?: Maybe; - name?: Maybe; - code?: Maybe; + isPrivate?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + languageCode?: Maybe; + name?: Maybe; + code?: Maybe; }; export type FacetSortParameter = { - id?: Maybe; - createdAt?: Maybe; - updatedAt?: Maybe; - name?: Maybe; - code?: Maybe; + id?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + name?: Maybe; + code?: Maybe; }; export type JobFilterParameter = { - createdAt?: Maybe; - startedAt?: Maybe; - settledAt?: Maybe; - queueName?: Maybe; - state?: Maybe; - progress?: Maybe; - isSettled?: Maybe; - duration?: Maybe; + createdAt?: Maybe; + startedAt?: Maybe; + settledAt?: Maybe; + queueName?: Maybe; + state?: Maybe; + progress?: Maybe; + isSettled?: Maybe; + duration?: Maybe; }; export type JobSortParameter = { - id?: Maybe; - createdAt?: Maybe; - startedAt?: Maybe; - settledAt?: Maybe; - queueName?: Maybe; - progress?: Maybe; - duration?: Maybe; + id?: Maybe; + createdAt?: Maybe; + startedAt?: Maybe; + settledAt?: Maybe; + queueName?: Maybe; + progress?: Maybe; + duration?: Maybe; }; export type OrderFilterParameter = { - createdAt?: Maybe; - updatedAt?: Maybe; - code?: Maybe; - state?: Maybe; - active?: Maybe; - totalQuantity?: Maybe; - subTotalBeforeTax?: Maybe; - subTotal?: Maybe; - currencyCode?: Maybe; - shipping?: Maybe; - shippingWithTax?: Maybe; - totalBeforeTax?: Maybe; - total?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + code?: Maybe; + state?: Maybe; + active?: Maybe; + totalQuantity?: Maybe; + subTotalBeforeTax?: Maybe; + subTotal?: Maybe; + currencyCode?: Maybe; + shipping?: Maybe; + shippingWithTax?: Maybe; + totalBeforeTax?: Maybe; + total?: Maybe; }; export type OrderSortParameter = { - id?: Maybe; - createdAt?: Maybe; - updatedAt?: Maybe; - code?: Maybe; - state?: Maybe; - totalQuantity?: Maybe; - subTotalBeforeTax?: Maybe; - subTotal?: Maybe; - shipping?: Maybe; - shippingWithTax?: Maybe; - totalBeforeTax?: Maybe; - total?: Maybe; + id?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + code?: Maybe; + state?: Maybe; + totalQuantity?: Maybe; + subTotalBeforeTax?: Maybe; + subTotal?: Maybe; + shipping?: Maybe; + shippingWithTax?: Maybe; + totalBeforeTax?: Maybe; + total?: Maybe; }; export type PaymentMethodFilterParameter = { - createdAt?: Maybe; - updatedAt?: Maybe; - code?: Maybe; - enabled?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + code?: Maybe; + enabled?: Maybe; }; export type PaymentMethodSortParameter = { - id?: Maybe; - createdAt?: Maybe; - updatedAt?: Maybe; - code?: Maybe; + id?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + code?: Maybe; }; export type ProductFilterParameter = { - enabled?: Maybe; - createdAt?: Maybe; - updatedAt?: Maybe; - languageCode?: Maybe; - name?: Maybe; - slug?: Maybe; - description?: Maybe; + enabled?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + languageCode?: Maybe; + name?: Maybe; + slug?: Maybe; + description?: Maybe; }; export type ProductSortParameter = { - id?: Maybe; - createdAt?: Maybe; - updatedAt?: Maybe; - name?: Maybe; - slug?: Maybe; - description?: Maybe; + id?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + name?: Maybe; + slug?: Maybe; + description?: Maybe; }; export type PromotionFilterParameter = { - createdAt?: Maybe; - updatedAt?: Maybe; - startsAt?: Maybe; - endsAt?: Maybe; - couponCode?: Maybe; - perCustomerUsageLimit?: Maybe; - name?: Maybe; - enabled?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + startsAt?: Maybe; + endsAt?: Maybe; + couponCode?: Maybe; + perCustomerUsageLimit?: Maybe; + name?: Maybe; + enabled?: Maybe; }; export type PromotionSortParameter = { - id?: Maybe; - createdAt?: Maybe; - updatedAt?: Maybe; - startsAt?: Maybe; - endsAt?: Maybe; - couponCode?: Maybe; - perCustomerUsageLimit?: Maybe; - name?: Maybe; + id?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + startsAt?: Maybe; + endsAt?: Maybe; + couponCode?: Maybe; + perCustomerUsageLimit?: Maybe; + name?: Maybe; }; export type RoleFilterParameter = { - createdAt?: Maybe; - updatedAt?: Maybe; - code?: Maybe; - description?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + code?: Maybe; + description?: Maybe; }; export type RoleSortParameter = { - id?: Maybe; - createdAt?: Maybe; - updatedAt?: Maybe; - code?: Maybe; - description?: Maybe; + id?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + code?: Maybe; + description?: Maybe; }; export type ShippingMethodFilterParameter = { - createdAt?: Maybe; - updatedAt?: Maybe; - code?: Maybe; - description?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + code?: Maybe; + description?: Maybe; }; export type ShippingMethodSortParameter = { - id?: Maybe; - createdAt?: Maybe; - updatedAt?: Maybe; - code?: Maybe; - description?: Maybe; + id?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + code?: Maybe; + description?: Maybe; }; export type TaxRateFilterParameter = { - createdAt?: Maybe; - updatedAt?: Maybe; - name?: Maybe; - enabled?: Maybe; - value?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + name?: Maybe; + enabled?: Maybe; + value?: Maybe; }; export type TaxRateSortParameter = { - id?: Maybe; - createdAt?: Maybe; - updatedAt?: Maybe; - name?: Maybe; - value?: Maybe; + id?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + name?: Maybe; + value?: Maybe; }; export type ProductVariantFilterParameter = { - enabled?: Maybe; - stockOnHand?: Maybe; - trackInventory?: Maybe; - createdAt?: Maybe; - updatedAt?: Maybe; - languageCode?: Maybe; - sku?: Maybe; - name?: Maybe; - price?: Maybe; - currencyCode?: Maybe; - priceIncludesTax?: Maybe; - priceWithTax?: Maybe; + enabled?: Maybe; + stockOnHand?: Maybe; + trackInventory?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + languageCode?: Maybe; + sku?: Maybe; + name?: Maybe; + price?: Maybe; + currencyCode?: Maybe; + priceIncludesTax?: Maybe; + priceWithTax?: Maybe; }; export type ProductVariantSortParameter = { - stockOnHand?: Maybe; - id?: Maybe; - productId?: Maybe; - createdAt?: Maybe; - updatedAt?: Maybe; - sku?: Maybe; - name?: Maybe; - price?: Maybe; - priceWithTax?: Maybe; + stockOnHand?: Maybe; + id?: Maybe; + productId?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + sku?: Maybe; + name?: Maybe; + price?: Maybe; + priceWithTax?: Maybe; }; export type HistoryEntryFilterParameter = { - createdAt?: Maybe; - updatedAt?: Maybe; - isPublic?: Maybe; - type?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; + isPublic?: Maybe; + type?: Maybe; }; export type HistoryEntrySortParameter = { - id?: Maybe; - createdAt?: Maybe; - updatedAt?: Maybe; + id?: Maybe; + createdAt?: Maybe; + updatedAt?: Maybe; }; export type CustomFields = { - Address: Array; - Collection: Array; - Customer: Array; - Facet: Array; - FacetValue: Array; - GlobalSettings: Array; - Order: Array; - OrderLine: Array; - Product: Array; - ProductOption: Array; - ProductOptionGroup: Array; - ProductVariant: Array; - User: Array; - ShippingMethod: Array; + Address: Array; + Collection: Array; + Customer: Array; + Facet: Array; + FacetValue: Array; + GlobalSettings: Array; + Order: Array; + OrderLine: Array; + Product: Array; + ProductOption: Array; + ProductOptionGroup: Array; + ProductVariant: Array; + User: Array; + ShippingMethod: Array; }; export type AuthenticationInput = { - native?: Maybe; + native?: Maybe; }; export type NativeAuthInput = { - username: Scalars['String']; - password: Scalars['String']; + username: Scalars['String']; + password: Scalars['String']; }; export type GetAdministratorsQueryVariables = Exact<{ - options?: Maybe; + options?: Maybe; }>; - -export type GetAdministratorsQuery = { administrators: ( - Pick - & { items: Array } - ) }; +export type GetAdministratorsQuery = { + administrators: Pick & { items: Array }; +}; export type GetAdministratorQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - export type GetAdministratorQuery = { administrator?: Maybe }; export type UpdateAdministratorMutationVariables = Exact<{ - input: UpdateAdministratorInput; + input: UpdateAdministratorInput; }>; - export type UpdateAdministratorMutation = { updateAdministrator: AdministratorFragment }; export type DeleteAdministratorMutationVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; +export type DeleteAdministratorMutation = { + deleteAdministrator: Pick; +}; -export type DeleteAdministratorMutation = { deleteAdministrator: Pick }; - -export type Q1QueryVariables = Exact<{ [key: string]: never; }>; - +export type Q1QueryVariables = Exact<{ [key: string]: never }>; export type Q1Query = { product?: Maybe> }; -export type Q2QueryVariables = Exact<{ [key: string]: never; }>; - +export type Q2QueryVariables = Exact<{ [key: string]: never }>; export type Q2Query = { product?: Maybe> }; export type GetAssetQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - -export type GetAssetQuery = { asset?: Maybe<( - Pick - & AssetFragment - )> }; +export type GetAssetQuery = { asset?: Maybe & AssetFragment> }; export type AssetFragFirstFragment = Pick; export type GetAssetFragmentFirstQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - export type GetAssetFragmentFirstQuery = { asset?: Maybe }; export type CreateAssetsMutationVariables = Exact<{ - input: Array; + input: Array; }>; - -export type CreateAssetsMutation = { createAssets: Array<( - { focalPoint?: Maybe> } - & AssetFragment - ) | Pick> }; +export type CreateAssetsMutation = { + createAssets: Array< + | ({ focalPoint?: Maybe> } & AssetFragment) + | Pick + >; +}; export type CanCreateCustomerMutationVariables = Exact<{ - input: CreateCustomerInput; + input: CreateCustomerInput; }>; - export type CanCreateCustomerMutation = { createCustomer: Pick }; -export type GetCustomerCountQueryVariables = Exact<{ [key: string]: never; }>; - +export type GetCustomerCountQueryVariables = Exact<{ [key: string]: never }>; export type GetCustomerCountQuery = { customers: Pick }; export type AuthenticateMutationVariables = Exact<{ - input: AuthenticationInput; + input: AuthenticationInput; }>; +export type AuthenticateMutation = { + authenticate: + | CurrentUserFragment + | Pick; +}; -export type AuthenticateMutation = { authenticate: CurrentUserFragment | Pick }; - -export type GetCustomersQueryVariables = Exact<{ [key: string]: never; }>; - +export type GetCustomersQueryVariables = Exact<{ [key: string]: never }>; -export type GetCustomersQuery = { customers: ( - Pick - & { items: Array> } - ) }; +export type GetCustomersQuery = { + customers: Pick & { items: Array> }; +}; export type GetCustomerUserAuthQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; +export type GetCustomerUserAuthQuery = { + customer?: Maybe< + Pick & { + user?: Maybe< + Pick & { + authenticationMethods: Array>; + } + >; + } + >; +}; -export type GetCustomerUserAuthQuery = { customer?: Maybe<( - Pick - & { user?: Maybe<( - Pick - & { authenticationMethods: Array> } - )> } - )> }; - -export type GetChannelsQueryVariables = Exact<{ [key: string]: never; }>; - +export type GetChannelsQueryVariables = Exact<{ [key: string]: never }>; export type GetChannelsQuery = { channels: Array> }; export type DeleteChannelMutationVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - export type DeleteChannelMutation = { deleteChannel: Pick }; export type UpdateGlobalLanguagesMutationVariables = Exact<{ - input: UpdateGlobalSettingsInput; + input: UpdateGlobalSettingsInput; }>; +export type UpdateGlobalLanguagesMutation = { + updateGlobalSettings: Pick; +}; -export type UpdateGlobalLanguagesMutation = { updateGlobalSettings: Pick }; - -export type GetCollectionsWithAssetsQueryVariables = Exact<{ [key: string]: never; }>; - - -export type GetCollectionsWithAssetsQuery = { collections: { items: Array<{ assets: Array> }> } }; +export type GetCollectionsWithAssetsQueryVariables = Exact<{ [key: string]: never }>; -export type GetProductsWithVariantIdsQueryVariables = Exact<{ [key: string]: never; }>; +export type GetCollectionsWithAssetsQuery = { + collections: { items: Array<{ assets: Array> }> }; +}; +export type GetProductsWithVariantIdsQueryVariables = Exact<{ [key: string]: never }>; -export type GetProductsWithVariantIdsQuery = { products: { items: Array<( - Pick - & { variants: Array> } - )> } }; +export type GetProductsWithVariantIdsQuery = { + products: { + items: Array & { variants: Array> }>; + }; +}; export type GetCollectionQueryVariables = Exact<{ - id?: Maybe; - slug?: Maybe; + id?: Maybe; + slug?: Maybe; }>; - -export type GetCollectionQuery = { collection?: Maybe<( - { productVariants: { items: Array> } } - & CollectionFragment - )> }; +export type GetCollectionQuery = { + collection?: Maybe< + { productVariants: { items: Array> } } & CollectionFragment + >; +}; export type MoveCollectionMutationVariables = Exact<{ - input: MoveCollectionInput; + input: MoveCollectionInput; }>; - export type MoveCollectionMutation = { moveCollection: CollectionFragment }; -export type GetFacetValuesQueryVariables = Exact<{ [key: string]: never; }>; - +export type GetFacetValuesQueryVariables = Exact<{ [key: string]: never }>; export type GetFacetValuesQuery = { facets: { items: Array<{ values: Array }> } }; -export type GetCollectionsQueryVariables = Exact<{ [key: string]: never; }>; - +export type GetCollectionsQueryVariables = Exact<{ [key: string]: never }>; -export type GetCollectionsQuery = { collections: { items: Array<( - Pick - & { parent?: Maybe> } - )> } }; +export type GetCollectionsQuery = { + collections: { + items: Array< + Pick & { parent?: Maybe> } + >; + }; +}; export type GetCollectionProductsQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - -export type GetCollectionProductsQuery = { collection?: Maybe<{ productVariants: { items: Array<( - Pick - & { facetValues: Array> } - )> } }> }; +export type GetCollectionProductsQuery = { + collection?: Maybe<{ + productVariants: { + items: Array< + Pick & { + facetValues: Array>; + } + >; + }; + }>; +}; export type CreateCollectionSelectVariantsMutationVariables = Exact<{ - input: CreateCollectionInput; + input: CreateCollectionInput; }>; - -export type CreateCollectionSelectVariantsMutation = { createCollection: ( - Pick - & { productVariants: ( - Pick - & { items: Array> } - ) } - ) }; +export type CreateCollectionSelectVariantsMutation = { + createCollection: Pick & { + productVariants: Pick & { + items: Array>; + }; + }; +}; export type GetCollectionBreadcrumbsQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - -export type GetCollectionBreadcrumbsQuery = { collection?: Maybe<{ breadcrumbs: Array> }> }; +export type GetCollectionBreadcrumbsQuery = { + collection?: Maybe<{ breadcrumbs: Array> }>; +}; export type GetCollectionsForProductsQueryVariables = Exact<{ - term: Scalars['String']; + term: Scalars['String']; }>; - -export type GetCollectionsForProductsQuery = { products: { items: Array<( - Pick - & { collections: Array> } - )> } }; +export type GetCollectionsForProductsQuery = { + products: { + items: Array & { collections: Array> }>; + }; +}; export type DeleteCollectionMutationVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - export type DeleteCollectionMutation = { deleteCollection: Pick }; export type GetProductCollectionsQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - -export type GetProductCollectionsQuery = { product?: Maybe<( - Pick - & { collections: Array> } - )> }; +export type GetProductCollectionsQuery = { + product?: Maybe & { collections: Array> }>; +}; export type GetProductCollectionsWithParentQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - -export type GetProductCollectionsWithParentQuery = { product?: Maybe<( - Pick - & { collections: Array<( - Pick - & { parent?: Maybe> } - )> } - )> }; +export type GetProductCollectionsWithParentQuery = { + product?: Maybe< + Pick & { + collections: Array< + Pick & { parent?: Maybe> } + >; + } + >; +}; export type DeleteCountryMutationVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - export type DeleteCountryMutation = { deleteCountry: Pick }; export type GetCountryQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - export type GetCountryQuery = { country?: Maybe }; export type CreateCountryMutationVariables = Exact<{ - input: CreateCountryInput; + input: CreateCountryInput; }>; - export type CreateCountryMutation = { createCountry: CountryFragment }; export type DeleteCustomerAddressMutationVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - export type DeleteCustomerAddressMutation = { deleteCustomerAddress: Pick }; export type GetCustomerWithUserQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - -export type GetCustomerWithUserQuery = { customer?: Maybe<( - Pick - & { user?: Maybe> } - )> }; +export type GetCustomerWithUserQuery = { + customer?: Maybe & { user?: Maybe> }>; +}; export type GetCustomerOrdersQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - -export type GetCustomerOrdersQuery = { customer?: Maybe<{ orders: ( - Pick - & { items: Array> } - ) }> }; +export type GetCustomerOrdersQuery = { + customer?: Maybe<{ orders: Pick & { items: Array> } }>; +}; export type AddNoteToCustomerMutationVariables = Exact<{ - input: AddNoteToCustomerInput; + input: AddNoteToCustomerInput; }>; - export type AddNoteToCustomerMutation = { addNoteToCustomer: CustomerFragment }; -export type ReindexMutationVariables = Exact<{ [key: string]: never; }>; - +export type ReindexMutationVariables = Exact<{ [key: string]: never }>; export type ReindexMutation = { reindex: Pick }; export type SearchProductsAdminQueryVariables = Exact<{ - input: SearchInput; -}>; - - -export type SearchProductsAdminQuery = { search: ( - Pick - & { items: Array> } - ) }; + input: SearchInput; +}>; + +export type SearchProductsAdminQuery = { + search: Pick & { + items: Array< + Pick< + SearchResult, + | 'enabled' + | 'productId' + | 'productName' + | 'slug' + | 'description' + | 'productPreview' + | 'productVariantId' + | 'productVariantName' + | 'productVariantPreview' + | 'sku' + > + >; + }; +}; export type SearchFacetValuesQueryVariables = Exact<{ - input: SearchInput; + input: SearchInput; }>; - -export type SearchFacetValuesQuery = { search: ( - Pick - & { facetValues: Array<( - Pick - & { facetValue: Pick } - )> } - ) }; +export type SearchFacetValuesQuery = { + search: Pick & { + facetValues: Array & { facetValue: Pick }>; + }; +}; export type SearchGetAssetsQueryVariables = Exact<{ - input: SearchInput; -}>; - - -export type SearchGetAssetsQuery = { search: ( - Pick - & { items: Array<( - Pick - & { productAsset?: Maybe<( - Pick - & { focalPoint?: Maybe> } - )>, productVariantAsset?: Maybe<( - Pick - & { focalPoint?: Maybe> } - )> } - )> } - ) }; + input: SearchInput; +}>; + +export type SearchGetAssetsQuery = { + search: Pick & { + items: Array< + Pick & { + productAsset?: Maybe< + Pick & { + focalPoint?: Maybe>; + } + >; + productVariantAsset?: Maybe< + Pick & { + focalPoint?: Maybe>; + } + >; + } + >; + }; +}; export type SearchGetPricesQueryVariables = Exact<{ - input: SearchInput; + input: SearchInput; }>; +export type SearchGetPricesQuery = { + search: { + items: Array<{ + price: Pick | Pick; + priceWithTax: Pick | Pick; + }>; + }; +}; -export type SearchGetPricesQuery = { search: { items: Array<{ price: Pick | Pick, priceWithTax: Pick | Pick }> } }; - -export type IdTest1QueryVariables = Exact<{ [key: string]: never; }>; - +export type IdTest1QueryVariables = Exact<{ [key: string]: never }>; export type IdTest1Query = { products: { items: Array> } }; -export type IdTest2QueryVariables = Exact<{ [key: string]: never; }>; +export type IdTest2QueryVariables = Exact<{ [key: string]: never }>; +export type IdTest2Query = { + products: { + items: Array< + Pick & { + variants: Array< + Pick & { options: Array> } + >; + } + >; + }; +}; -export type IdTest2Query = { products: { items: Array<( - Pick - & { variants: Array<( - Pick - & { options: Array> } - )> } - )> } }; - -export type IdTest3QueryVariables = Exact<{ [key: string]: never; }>; - +export type IdTest3QueryVariables = Exact<{ [key: string]: never }>; export type IdTest3Query = { product?: Maybe> }; -export type IdTest4MutationVariables = Exact<{ [key: string]: never; }>; - +export type IdTest4MutationVariables = Exact<{ [key: string]: never }>; -export type IdTest4Mutation = { updateProduct: ( - Pick - & { featuredAsset?: Maybe> } - ) }; - -export type IdTest5MutationVariables = Exact<{ [key: string]: never; }>; +export type IdTest4Mutation = { + updateProduct: Pick & { featuredAsset?: Maybe> }; +}; +export type IdTest5MutationVariables = Exact<{ [key: string]: never }>; export type IdTest5Mutation = { updateProduct: Pick }; export type IdTest6QueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - export type IdTest6Query = { product?: Maybe> }; export type IdTest7MutationVariables = Exact<{ - input: UpdateProductInput; + input: UpdateProductInput; }>; - -export type IdTest7Mutation = { updateProduct: ( - Pick - & { featuredAsset?: Maybe> } - ) }; +export type IdTest7Mutation = { + updateProduct: Pick & { featuredAsset?: Maybe> }; +}; export type IdTest8MutationVariables = Exact<{ - input: UpdateProductInput; + input: UpdateProductInput; }>; - export type IdTest8Mutation = { updateProduct: Pick }; -export type IdTest9QueryVariables = Exact<{ [key: string]: never; }>; - +export type IdTest9QueryVariables = Exact<{ [key: string]: never }>; export type IdTest9Query = { products: { items: Array } }; -export type ProdFragmentFragment = ( - Pick - & { featuredAsset?: Maybe> } -); +export type ProdFragmentFragment = Pick & { featuredAsset?: Maybe> }; export type GetFacetWithValuesQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - export type GetFacetWithValuesQuery = { facet?: Maybe }; export type DeleteFacetValuesMutationVariables = Exact<{ - ids: Array; - force?: Maybe; + ids: Array; + force?: Maybe; }>; - -export type DeleteFacetValuesMutation = { deleteFacetValues: Array> }; +export type DeleteFacetValuesMutation = { + deleteFacetValues: Array>; +}; export type DeleteFacetMutationVariables = Exact<{ - id: Scalars['ID']; - force?: Maybe; + id: Scalars['ID']; + force?: Maybe; }>; - export type DeleteFacetMutation = { deleteFacet: Pick }; -export type GetProductListWithVariantsQueryVariables = Exact<{ [key: string]: never; }>; - +export type GetProductListWithVariantsQueryVariables = Exact<{ [key: string]: never }>; -export type GetProductListWithVariantsQuery = { products: ( - Pick - & { items: Array<( - Pick - & { variants: Array> } - )> } - ) }; +export type GetProductListWithVariantsQuery = { + products: Pick & { + items: Array & { variants: Array> }>; + }; +}; export type CreateFacetValuesMutationVariables = Exact<{ - input: Array; + input: Array; }>; - export type CreateFacetValuesMutation = { createFacetValues: Array }; export type UpdateFacetValuesMutationVariables = Exact<{ - input: Array; + input: Array; }>; - export type UpdateFacetValuesMutation = { updateFacetValues: Array }; -export type GlobalSettingsFragment = ( - Pick - & { serverConfig: ( - Pick - & { orderProcess: Array>, customFieldConfig: { Customer: Array | Pick | Pick | Pick | Pick | Pick> } } - ) } -); - -export type GetGlobalSettingsQueryVariables = Exact<{ [key: string]: never; }>; +export type GlobalSettingsFragment = Pick & { + serverConfig: Pick & { + orderProcess: Array>; + customFieldConfig: { + Customer: Array< + | Pick + | Pick + | Pick + | Pick + | Pick + | Pick + >; + }; + }; +}; +export type GetGlobalSettingsQueryVariables = Exact<{ [key: string]: never }>; export type GetGlobalSettingsQuery = { globalSettings: GlobalSettingsFragment }; export type UpdateGlobalSettingsMutationVariables = Exact<{ - input: UpdateGlobalSettingsInput; -}>; - - -export type UpdateGlobalSettingsMutation = { updateGlobalSettings: GlobalSettingsFragment | Pick }; - -export type AdministratorFragment = ( - Pick - & { user: ( - Pick - & { roles: Array> } - ) } -); - -export type AssetFragment = Pick; - -export type ProductVariantFragment = ( - Pick - & { taxRateApplied: Pick, taxCategory: Pick, options: Array>, facetValues: Array<( - Pick - & { facet: Pick } - )>, featuredAsset?: Maybe, assets: Array, translations: Array> } -); - -export type ProductWithVariantsFragment = ( - Pick - & { featuredAsset?: Maybe, assets: Array, translations: Array>, optionGroups: Array>, variants: Array, facetValues: Array<( - Pick - & { facet: Pick } - )>, channels: Array> } -); - -export type RoleFragment = ( - Pick - & { channels: Array> } -); - -export type ConfigurableOperationFragment = ( - Pick - & { args: Array> } -); - -export type CollectionFragment = ( - Pick - & { featuredAsset?: Maybe, assets: Array, filters: Array, translations: Array>, parent?: Maybe>, children?: Maybe>> } -); - -export type FacetValueFragment = ( - Pick - & { translations: Array>, facet: Pick } -); - -export type FacetWithValuesFragment = ( - Pick - & { translations: Array>, values: Array } -); - -export type CountryFragment = ( - Pick - & { translations: Array> } -); - -export type AddressFragment = ( - Pick - & { country: Pick } -); - -export type CustomerFragment = ( - Pick - & { user?: Maybe>, addresses?: Maybe> } -); + input: UpdateGlobalSettingsInput; +}>; + +export type UpdateGlobalSettingsMutation = { + updateGlobalSettings: GlobalSettingsFragment | Pick; +}; + +export type AdministratorFragment = Pick & { + user: Pick & { + roles: Array>; + }; +}; + +export type AssetFragment = Pick< + Asset, + 'id' | 'name' | 'fileSize' | 'mimeType' | 'type' | 'preview' | 'source' +>; + +export type ProductVariantFragment = Pick< + ProductVariant, + | 'id' + | 'enabled' + | 'languageCode' + | 'name' + | 'price' + | 'currencyCode' + | 'priceIncludesTax' + | 'priceWithTax' + | 'stockOnHand' + | 'trackInventory' + | 'sku' +> & { + taxRateApplied: Pick; + taxCategory: Pick; + options: Array>; + facetValues: Array & { facet: Pick }>; + featuredAsset?: Maybe; + assets: Array; + translations: Array>; +}; + +export type ProductWithVariantsFragment = Pick< + Product, + 'id' | 'enabled' | 'languageCode' | 'name' | 'slug' | 'description' +> & { + featuredAsset?: Maybe; + assets: Array; + translations: Array>; + optionGroups: Array>; + variants: Array; + facetValues: Array & { facet: Pick }>; + channels: Array>; +}; + +export type RoleFragment = Pick & { + channels: Array>; +}; + +export type ConfigurableOperationFragment = Pick & { + args: Array>; +}; + +export type CollectionFragment = Pick< + Collection, + 'id' | 'name' | 'slug' | 'description' | 'isPrivate' | 'languageCode' +> & { + featuredAsset?: Maybe; + assets: Array; + filters: Array; + translations: Array>; + parent?: Maybe>; + children?: Maybe>>; +}; + +export type FacetValueFragment = Pick & { + translations: Array>; + facet: Pick; +}; + +export type FacetWithValuesFragment = Pick & { + translations: Array>; + values: Array; +}; + +export type CountryFragment = Pick & { + translations: Array>; +}; + +export type AddressFragment = Pick< + Address, + | 'id' + | 'fullName' + | 'company' + | 'streetLine1' + | 'streetLine2' + | 'city' + | 'province' + | 'postalCode' + | 'phoneNumber' + | 'defaultShippingAddress' + | 'defaultBillingAddress' +> & { country: Pick }; + +export type CustomerFragment = Pick< + Customer, + 'id' | 'title' | 'firstName' | 'lastName' | 'phoneNumber' | 'emailAddress' +> & { + user?: Maybe>; + addresses?: Maybe>; +}; export type AdjustmentFragment = Pick; -export type ShippingAddressFragment = Pick; - -export type OrderFragment = ( - Pick - & { customer?: Maybe> } -); - -export type OrderItemFragment = ( - Pick - & { fulfillment?: Maybe> } -); - -export type OrderWithLinesFragment = ( - Pick - & { customer?: Maybe>, lines: Array<( - Pick - & { featuredAsset?: Maybe>, productVariant: Pick, items: Array } - )>, adjustments: Array, shippingMethod?: Maybe>, shippingAddress?: Maybe, payments?: Maybe>> } -); - -export type PromotionFragment = ( - Pick - & { conditions: Array, actions: Array } -); - -export type ZoneFragment = ( - Pick - & { members: Array } -); - -export type TaxRateFragment = ( - Pick - & { category: Pick, zone: Pick, customerGroup?: Maybe> } -); - -export type CurrentUserFragment = ( - Pick - & { channels: Array> } -); - -export type VariantWithStockFragment = ( - Pick - & { stockMovements: ( - Pick - & { items: Array | Pick | Pick | Pick> } - ) } -); - -export type FulfillmentFragment = ( - Pick - & { orderItems: Array> } -); - -export type ChannelFragment = ( - Pick - & { defaultShippingZone?: Maybe>, defaultTaxZone?: Maybe> } -); +export type ShippingAddressFragment = Pick< + OrderAddress, + | 'fullName' + | 'company' + | 'streetLine1' + | 'streetLine2' + | 'city' + | 'province' + | 'postalCode' + | 'country' + | 'phoneNumber' +>; + +export type OrderFragment = Pick< + Order, + 'id' | 'createdAt' | 'updatedAt' | 'code' | 'state' | 'total' | 'currencyCode' +> & { customer?: Maybe> }; + +export type OrderItemFragment = Pick< + OrderItem, + 'id' | 'cancelled' | 'unitPrice' | 'unitPriceIncludesTax' | 'unitPriceWithTax' | 'taxRate' +> & { fulfillment?: Maybe> }; + +export type OrderWithLinesFragment = Pick< + Order, + | 'id' + | 'createdAt' + | 'updatedAt' + | 'code' + | 'state' + | 'active' + | 'subTotal' + | 'subTotalBeforeTax' + | 'totalBeforeTax' + | 'currencyCode' + | 'shipping' + | 'total' +> & { + customer?: Maybe>; + lines: Array< + Pick & { + featuredAsset?: Maybe>; + productVariant: Pick; + items: Array; + } + >; + adjustments: Array; + shippingMethod?: Maybe>; + shippingAddress?: Maybe; + payments?: Maybe< + Array> + >; +}; + +export type PromotionFragment = Pick< + Promotion, + 'id' | 'createdAt' | 'updatedAt' | 'couponCode' | 'startsAt' | 'endsAt' | 'name' | 'enabled' +> & { conditions: Array; actions: Array }; + +export type ZoneFragment = Pick & { members: Array }; + +export type TaxRateFragment = Pick & { + category: Pick; + zone: Pick; + customerGroup?: Maybe>; +}; + +export type CurrentUserFragment = Pick & { + channels: Array>; +}; + +export type VariantWithStockFragment = Pick & { + stockMovements: Pick & { + items: Array< + | Pick + | Pick + | Pick + | Pick + >; + }; +}; + +export type FulfillmentFragment = Pick< + Fulfillment, + 'id' | 'state' | 'nextStates' | 'method' | 'trackingCode' +> & { orderItems: Array> }; + +export type ChannelFragment = Pick< + Channel, + 'id' | 'code' | 'token' | 'currencyCode' | 'defaultLanguageCode' | 'pricesIncludeTax' +> & { defaultShippingZone?: Maybe>; defaultTaxZone?: Maybe> }; export type CreateAdministratorMutationVariables = Exact<{ - input: CreateAdministratorInput; + input: CreateAdministratorInput; }>; - export type CreateAdministratorMutation = { createAdministrator: AdministratorFragment }; export type UpdateProductMutationVariables = Exact<{ - input: UpdateProductInput; + input: UpdateProductInput; }>; - export type UpdateProductMutation = { updateProduct: ProductWithVariantsFragment }; export type CreateProductMutationVariables = Exact<{ - input: CreateProductInput; + input: CreateProductInput; }>; - export type CreateProductMutation = { createProduct: ProductWithVariantsFragment }; export type GetProductWithVariantsQueryVariables = Exact<{ - id?: Maybe; - slug?: Maybe; + id?: Maybe; + slug?: Maybe; }>; - export type GetProductWithVariantsQuery = { product?: Maybe }; export type GetProductListQueryVariables = Exact<{ - options?: Maybe; + options?: Maybe; }>; - -export type GetProductListQuery = { products: ( - Pick - & { items: Array<( - Pick - & { featuredAsset?: Maybe> } - )> } - ) }; +export type GetProductListQuery = { + products: Pick & { + items: Array< + Pick & { + featuredAsset?: Maybe>; + } + >; + }; +}; export type CreateProductVariantsMutationVariables = Exact<{ - input: Array; + input: Array; }>; - export type CreateProductVariantsMutation = { createProductVariants: Array> }; export type UpdateProductVariantsMutationVariables = Exact<{ - input: Array; + input: Array; }>; - export type UpdateProductVariantsMutation = { updateProductVariants: Array> }; export type UpdateTaxRateMutationVariables = Exact<{ - input: UpdateTaxRateInput; + input: UpdateTaxRateInput; }>; - export type UpdateTaxRateMutation = { updateTaxRate: TaxRateFragment }; export type CreateFacetMutationVariables = Exact<{ - input: CreateFacetInput; + input: CreateFacetInput; }>; - export type CreateFacetMutation = { createFacet: FacetWithValuesFragment }; export type UpdateFacetMutationVariables = Exact<{ - input: UpdateFacetInput; + input: UpdateFacetInput; }>; - export type UpdateFacetMutation = { updateFacet: FacetWithValuesFragment }; export type GetCustomerListQueryVariables = Exact<{ - options?: Maybe; + options?: Maybe; }>; - -export type GetCustomerListQuery = { customers: ( - Pick - & { items: Array<( - Pick - & { user?: Maybe> } - )> } - ) }; +export type GetCustomerListQuery = { + customers: Pick & { + items: Array< + Pick & { + user?: Maybe>; + } + >; + }; +}; export type GetAssetListQueryVariables = Exact<{ - options?: Maybe; + options?: Maybe; }>; - -export type GetAssetListQuery = { assets: ( - Pick - & { items: Array } - ) }; +export type GetAssetListQuery = { assets: Pick & { items: Array } }; export type CreateRoleMutationVariables = Exact<{ - input: CreateRoleInput; + input: CreateRoleInput; }>; - export type CreateRoleMutation = { createRole: RoleFragment }; export type CreateCollectionMutationVariables = Exact<{ - input: CreateCollectionInput; + input: CreateCollectionInput; }>; - export type CreateCollectionMutation = { createCollection: CollectionFragment }; export type UpdateCollectionMutationVariables = Exact<{ - input: UpdateCollectionInput; + input: UpdateCollectionInput; }>; - export type UpdateCollectionMutation = { updateCollection: CollectionFragment }; export type GetCustomerQueryVariables = Exact<{ - id: Scalars['ID']; - orderListOptions?: Maybe; + id: Scalars['ID']; + orderListOptions?: Maybe; }>; - -export type GetCustomerQuery = { customer?: Maybe<( - { orders: ( - Pick - & { items: Array> } - ) } - & CustomerFragment - )> }; +export type GetCustomerQuery = { + customer?: Maybe< + { + orders: Pick & { + items: Array>; + }; + } & CustomerFragment + >; +}; export type AttemptLoginMutationVariables = Exact<{ - username: Scalars['String']; - password: Scalars['String']; - rememberMe?: Maybe; + username: Scalars['String']; + password: Scalars['String']; + rememberMe?: Maybe; }>; - export type AttemptLoginMutation = { login: CurrentUserFragment }; export type GetCountryListQueryVariables = Exact<{ - options?: Maybe; + options?: Maybe; }>; - -export type GetCountryListQuery = { countries: ( - Pick - & { items: Array> } - ) }; +export type GetCountryListQuery = { + countries: Pick & { + items: Array>; + }; +}; export type UpdateCountryMutationVariables = Exact<{ - input: UpdateCountryInput; + input: UpdateCountryInput; }>; - export type UpdateCountryMutation = { updateCountry: CountryFragment }; export type GetFacetListQueryVariables = Exact<{ - options?: Maybe; + options?: Maybe; }>; - -export type GetFacetListQuery = { facets: ( - Pick - & { items: Array } - ) }; +export type GetFacetListQuery = { + facets: Pick & { items: Array }; +}; export type DeleteProductMutationVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - export type DeleteProductMutation = { deleteProduct: Pick }; export type GetProductSimpleQueryVariables = Exact<{ - id?: Maybe; - slug?: Maybe; + id?: Maybe; + slug?: Maybe; }>; - export type GetProductSimpleQuery = { product?: Maybe> }; export type GetStockMovementQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - -export type GetStockMovementQuery = { product?: Maybe<( - Pick - & { variants: Array } - )> }; +export type GetStockMovementQuery = { + product?: Maybe & { variants: Array }>; +}; export type GetRunningJobsQueryVariables = Exact<{ - options?: Maybe; + options?: Maybe; }>; - -export type GetRunningJobsQuery = { jobs: ( - Pick - & { items: Array> } - ) }; +export type GetRunningJobsQuery = { + jobs: Pick & { + items: Array>; + }; +}; export type CreatePromotionMutationVariables = Exact<{ - input: CreatePromotionInput; + input: CreatePromotionInput; }>; +export type CreatePromotionMutation = { + createPromotion: PromotionFragment | Pick; +}; -export type CreatePromotionMutation = { createPromotion: PromotionFragment | Pick }; - -export type MeQueryVariables = Exact<{ [key: string]: never; }>; - +export type MeQueryVariables = Exact<{ [key: string]: never }>; export type MeQuery = { me?: Maybe }; export type CreateChannelMutationVariables = Exact<{ - input: CreateChannelInput; + input: CreateChannelInput; }>; - -export type CreateChannelMutation = { createChannel: ChannelFragment | Pick }; +export type CreateChannelMutation = { + createChannel: + | ChannelFragment + | Pick; +}; export type DeleteProductVariantMutationVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - -export type DeleteProductVariantMutation = { deleteProductVariant: Pick }; +export type DeleteProductVariantMutation = { + deleteProductVariant: Pick; +}; export type AssignProductsToChannelMutationVariables = Exact<{ - input: AssignProductsToChannelInput; + input: AssignProductsToChannelInput; }>; - export type AssignProductsToChannelMutation = { assignProductsToChannel: Array }; export type RemoveProductsFromChannelMutationVariables = Exact<{ - input: RemoveProductsFromChannelInput; + input: RemoveProductsFromChannelInput; }>; - -export type RemoveProductsFromChannelMutation = { removeProductsFromChannel: Array }; +export type RemoveProductsFromChannelMutation = { + removeProductsFromChannel: Array; +}; export type UpdateAssetMutationVariables = Exact<{ - input: UpdateAssetInput; + input: UpdateAssetInput; }>; - -export type UpdateAssetMutation = { updateAsset: ( - { focalPoint?: Maybe> } - & AssetFragment - ) }; +export type UpdateAssetMutation = { + updateAsset: { focalPoint?: Maybe> } & AssetFragment; +}; export type DeleteAssetMutationVariables = Exact<{ - id: Scalars['ID']; - force?: Maybe; + id: Scalars['ID']; + force?: Maybe; }>; - export type DeleteAssetMutation = { deleteAsset: Pick }; export type UpdateChannelMutationVariables = Exact<{ - input: UpdateChannelInput; + input: UpdateChannelInput; }>; - -export type UpdateChannelMutation = { updateChannel: ChannelFragment | Pick }; +export type UpdateChannelMutation = { + updateChannel: + | ChannelFragment + | Pick; +}; export type GetCustomerHistoryQueryVariables = Exact<{ - id: Scalars['ID']; - options?: Maybe; + id: Scalars['ID']; + options?: Maybe; }>; - -export type GetCustomerHistoryQuery = { customer?: Maybe<( - Pick - & { history: ( - Pick - & { items: Array<( - Pick - & { administrator?: Maybe> } - )> } - ) } - )> }; +export type GetCustomerHistoryQuery = { + customer?: Maybe< + Pick & { + history: Pick & { + items: Array< + Pick & { + administrator?: Maybe>; + } + >; + }; + } + >; +}; export type GetOrderQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - export type GetOrderQuery = { order?: Maybe }; -export type CustomerGroupFragment = ( - Pick - & { customers: ( - Pick - & { items: Array> } - ) } -); +export type CustomerGroupFragment = Pick & { + customers: Pick & { items: Array> }; +}; export type CreateCustomerGroupMutationVariables = Exact<{ - input: CreateCustomerGroupInput; + input: CreateCustomerGroupInput; }>; - export type CreateCustomerGroupMutation = { createCustomerGroup: CustomerGroupFragment }; export type RemoveCustomersFromGroupMutationVariables = Exact<{ - groupId: Scalars['ID']; - customerIds: Array; + groupId: Scalars['ID']; + customerIds: Array; }>; - export type RemoveCustomersFromGroupMutation = { removeCustomersFromGroup: CustomerGroupFragment }; export type CreateFulfillmentMutationVariables = Exact<{ - input: FulfillOrderInput; + input: FulfillOrderInput; }>; - -export type CreateFulfillmentMutation = { addFulfillmentToOrder: FulfillmentFragment | Pick | Pick }; +export type CreateFulfillmentMutation = { + addFulfillmentToOrder: + | FulfillmentFragment + | Pick + | Pick; +}; export type TransitFulfillmentMutationVariables = Exact<{ - id: Scalars['ID']; - state: Scalars['String']; + id: Scalars['ID']; + state: Scalars['String']; }>; - -export type TransitFulfillmentMutation = { transitionFulfillmentToState: FulfillmentFragment | Pick }; +export type TransitFulfillmentMutation = { + transitionFulfillmentToState: + | FulfillmentFragment + | Pick< + FulfillmentStateTransitionError, + 'errorCode' | 'message' | 'transitionError' | 'fromState' | 'toState' + >; +}; export type GetOrderFulfillmentsQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - -export type GetOrderFulfillmentsQuery = { order?: Maybe<( - Pick - & { fulfillments?: Maybe>> } - )> }; +export type GetOrderFulfillmentsQuery = { + order?: Maybe< + Pick & { + fulfillments?: Maybe>>; + } + >; +}; export type GetOrderListQueryVariables = Exact<{ - options?: Maybe; + options?: Maybe; }>; - -export type GetOrderListQuery = { orders: ( - Pick - & { items: Array } - ) }; +export type GetOrderListQuery = { orders: Pick & { items: Array } }; export type CreateAddressMutationVariables = Exact<{ - id: Scalars['ID']; - input: CreateAddressInput; -}>; - - -export type CreateAddressMutation = { createCustomerAddress: ( - Pick - & { country: Pick } - ) }; + id: Scalars['ID']; + input: CreateAddressInput; +}>; + +export type CreateAddressMutation = { + createCustomerAddress: Pick< + Address, + | 'id' + | 'fullName' + | 'company' + | 'streetLine1' + | 'streetLine2' + | 'city' + | 'province' + | 'postalCode' + | 'phoneNumber' + | 'defaultShippingAddress' + | 'defaultBillingAddress' + > & { country: Pick }; +}; export type UpdateAddressMutationVariables = Exact<{ - input: UpdateAddressInput; + input: UpdateAddressInput; }>; - -export type UpdateAddressMutation = { updateCustomerAddress: ( - Pick - & { country: Pick } - ) }; +export type UpdateAddressMutation = { + updateCustomerAddress: Pick & { + country: Pick; + }; +}; export type CreateCustomerMutationVariables = Exact<{ - input: CreateCustomerInput; - password?: Maybe; + input: CreateCustomerInput; + password?: Maybe; }>; - -export type CreateCustomerMutation = { createCustomer: CustomerFragment | Pick }; +export type CreateCustomerMutation = { + createCustomer: CustomerFragment | Pick; +}; export type UpdateCustomerMutationVariables = Exact<{ - input: UpdateCustomerInput; + input: UpdateCustomerInput; }>; - -export type UpdateCustomerMutation = { updateCustomer: CustomerFragment | Pick }; +export type UpdateCustomerMutation = { + updateCustomer: CustomerFragment | Pick; +}; export type DeleteCustomerMutationVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - export type DeleteCustomerMutation = { deleteCustomer: Pick }; export type UpdateCustomerNoteMutationVariables = Exact<{ - input: UpdateCustomerNoteInput; + input: UpdateCustomerNoteInput; }>; - -export type UpdateCustomerNoteMutation = { updateCustomerNote: Pick }; +export type UpdateCustomerNoteMutation = { + updateCustomerNote: Pick; +}; export type DeleteCustomerNoteMutationVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - export type DeleteCustomerNoteMutation = { deleteCustomerNote: Pick }; export type UpdateCustomerGroupMutationVariables = Exact<{ - input: UpdateCustomerGroupInput; + input: UpdateCustomerGroupInput; }>; - export type UpdateCustomerGroupMutation = { updateCustomerGroup: CustomerGroupFragment }; export type DeleteCustomerGroupMutationVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - -export type DeleteCustomerGroupMutation = { deleteCustomerGroup: Pick }; +export type DeleteCustomerGroupMutation = { + deleteCustomerGroup: Pick; +}; export type GetCustomerGroupsQueryVariables = Exact<{ - options?: Maybe; + options?: Maybe; }>; - -export type GetCustomerGroupsQuery = { customerGroups: ( - Pick - & { items: Array> } - ) }; +export type GetCustomerGroupsQuery = { + customerGroups: Pick & { + items: Array>; + }; +}; export type GetCustomerGroupQueryVariables = Exact<{ - id: Scalars['ID']; - options?: Maybe; + id: Scalars['ID']; + options?: Maybe; }>; - -export type GetCustomerGroupQuery = { customerGroup?: Maybe<( - Pick - & { customers: ( - Pick - & { items: Array> } - ) } - )> }; +export type GetCustomerGroupQuery = { + customerGroup?: Maybe< + Pick & { + customers: Pick & { items: Array> }; + } + >; +}; export type AddCustomersToGroupMutationVariables = Exact<{ - groupId: Scalars['ID']; - customerIds: Array; + groupId: Scalars['ID']; + customerIds: Array; }>; - export type AddCustomersToGroupMutation = { addCustomersToGroup: CustomerGroupFragment }; export type GetCustomerWithGroupsQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - -export type GetCustomerWithGroupsQuery = { customer?: Maybe<( - Pick - & { groups: Array> } - )> }; +export type GetCustomerWithGroupsQuery = { + customer?: Maybe & { groups: Array> }>; +}; export type AdminTransitionMutationVariables = Exact<{ - id: Scalars['ID']; - state: Scalars['String']; + id: Scalars['ID']; + state: Scalars['String']; }>; +export type AdminTransitionMutation = { + transitionOrderToState?: Maybe< + | OrderFragment + | Pick< + OrderStateTransitionError, + 'errorCode' | 'message' | 'transitionError' | 'fromState' | 'toState' + > + >; +}; -export type AdminTransitionMutation = { transitionOrderToState?: Maybe> }; +export type ProductOptionGroupFragment = Pick & { + options: Array>; + translations: Array>; +}; -export type UpdateOptionGroupMutationVariables = Exact<{ - input: UpdateProductOptionGroupInput; +export type CreateProductOptionGroupMutationVariables = Exact<{ + input: CreateProductOptionGroupInput; }>; +export type CreateProductOptionGroupMutation = { createProductOptionGroup: ProductOptionGroupFragment }; -export type UpdateOptionGroupMutation = { updateProductOptionGroup: Pick }; +export type ProductWithOptionsFragment = Pick & { + optionGroups: Array< + Pick & { options: Array> } + >; +}; -export type DeletePromotionAdHoc1MutationVariables = Exact<{ [key: string]: never; }>; +export type AddOptionGroupToProductMutationVariables = Exact<{ + productId: Scalars['ID']; + optionGroupId: Scalars['ID']; +}>; +export type AddOptionGroupToProductMutation = { addOptionGroupToProduct: ProductWithOptionsFragment }; -export type DeletePromotionAdHoc1Mutation = { deletePromotion: Pick }; +export type UpdateOptionGroupMutationVariables = Exact<{ + input: UpdateProductOptionGroupInput; +}>; + +export type UpdateOptionGroupMutation = { updateProductOptionGroup: Pick }; -export type GetPromoProductsQueryVariables = Exact<{ [key: string]: never; }>; +export type DeletePromotionAdHoc1MutationVariables = Exact<{ [key: string]: never }>; +export type DeletePromotionAdHoc1Mutation = { deletePromotion: Pick }; -export type GetPromoProductsQuery = { products: { items: Array<( - Pick - & { variants: Array<( - Pick - & { facetValues: Array> } - )> } - )> } }; +export type GetPromoProductsQueryVariables = Exact<{ [key: string]: never }>; + +export type GetPromoProductsQuery = { + products: { + items: Array< + Pick & { + variants: Array< + Pick & { + facetValues: Array>; + } + >; + } + >; + }; +}; export type SettlePaymentMutationVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - -export type SettlePaymentMutation = { settlePayment: PaymentFragment | Pick | Pick | Pick }; +export type SettlePaymentMutation = { + settlePayment: + | PaymentFragment + | Pick + | Pick + | Pick; +}; export type PaymentFragment = Pick; -export type GetOrderListFulfillmentsQueryVariables = Exact<{ [key: string]: never; }>; - +export type GetOrderListFulfillmentsQueryVariables = Exact<{ [key: string]: never }>; -export type GetOrderListFulfillmentsQuery = { orders: { items: Array<( - Pick - & { fulfillments?: Maybe>> } - )> } }; +export type GetOrderListFulfillmentsQuery = { + orders: { + items: Array< + Pick & { + fulfillments?: Maybe>>; + } + >; + }; +}; export type GetOrderFulfillmentItemsQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - -export type GetOrderFulfillmentItemsQuery = { order?: Maybe<( - Pick - & { fulfillments?: Maybe> } - )> }; +export type GetOrderFulfillmentItemsQuery = { + order?: Maybe & { fulfillments?: Maybe> }>; +}; export type CancelOrderMutationVariables = Exact<{ - input: CancelOrderInput; + input: CancelOrderInput; }>; +export type CancelOrderMutation = { + cancelOrder: + | CanceledOrderFragment + | Pick + | Pick + | Pick + | Pick + | Pick; +}; -export type CancelOrderMutation = { cancelOrder: CanceledOrderFragment | Pick | Pick | Pick | Pick | Pick }; - -export type CanceledOrderFragment = ( - Pick - & { lines: Array<( - Pick - & { items: Array> } - )> } -); +export type CanceledOrderFragment = Pick & { + lines: Array & { items: Array> }>; +}; -export type RefundFragment = Pick; +export type RefundFragment = Pick< + Refund, + 'id' | 'state' | 'items' | 'transactionId' | 'shipping' | 'total' | 'metadata' +>; export type RefundOrderMutationVariables = Exact<{ - input: RefundOrderInput; + input: RefundOrderInput; }>; - -export type RefundOrderMutation = { refundOrder: RefundFragment | Pick | Pick | Pick | Pick | Pick | Pick | Pick | Pick }; +export type RefundOrderMutation = { + refundOrder: + | RefundFragment + | Pick + | Pick + | Pick + | Pick + | Pick + | Pick + | Pick + | Pick; +}; export type SettleRefundMutationVariables = Exact<{ - input: SettleRefundInput; + input: SettleRefundInput; }>; - -export type SettleRefundMutation = { settleRefund: RefundFragment | Pick }; +export type SettleRefundMutation = { + settleRefund: RefundFragment | Pick; +}; export type GetOrderHistoryQueryVariables = Exact<{ - id: Scalars['ID']; - options?: Maybe; + id: Scalars['ID']; + options?: Maybe; }>; - -export type GetOrderHistoryQuery = { order?: Maybe<( - Pick - & { history: ( - Pick - & { items: Array<( - Pick - & { administrator?: Maybe> } - )> } - ) } - )> }; +export type GetOrderHistoryQuery = { + order?: Maybe< + Pick & { + history: Pick & { + items: Array< + Pick & { + administrator?: Maybe>; + } + >; + }; + } + >; +}; export type AddNoteToOrderMutationVariables = Exact<{ - input: AddNoteToOrderInput; + input: AddNoteToOrderInput; }>; - export type AddNoteToOrderMutation = { addNoteToOrder: Pick }; export type UpdateOrderNoteMutationVariables = Exact<{ - input: UpdateOrderNoteInput; + input: UpdateOrderNoteInput; }>; - export type UpdateOrderNoteMutation = { updateOrderNote: Pick }; export type DeleteOrderNoteMutationVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - export type DeleteOrderNoteMutation = { deleteOrderNote: Pick }; export type GetOrderWithPaymentsQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - -export type GetOrderWithPaymentsQuery = { order?: Maybe<( - Pick - & { payments?: Maybe>> } - )> }; - -export type ProductOptionGroupFragment = ( - Pick - & { options: Array>, translations: Array> } -); - -export type CreateProductOptionGroupMutationVariables = Exact<{ - input: CreateProductOptionGroupInput; -}>; - - -export type CreateProductOptionGroupMutation = { createProductOptionGroup: ProductOptionGroupFragment }; +export type GetOrderWithPaymentsQuery = { + order?: Maybe< + Pick & { payments?: Maybe>> } + >; +}; export type UpdateProductOptionGroupMutationVariables = Exact<{ - input: UpdateProductOptionGroupInput; + input: UpdateProductOptionGroupInput; }>; - export type UpdateProductOptionGroupMutation = { updateProductOptionGroup: ProductOptionGroupFragment }; export type CreateProductOptionMutationVariables = Exact<{ - input: CreateProductOptionInput; + input: CreateProductOptionInput; }>; - -export type CreateProductOptionMutation = { createProductOption: ( - Pick - & { translations: Array> } - ) }; +export type CreateProductOptionMutation = { + createProductOption: Pick & { + translations: Array>; + }; +}; export type UpdateProductOptionMutationVariables = Exact<{ - input: UpdateProductOptionInput; + input: UpdateProductOptionInput; }>; - -export type UpdateProductOptionMutation = { updateProductOption: Pick }; - -export type ProductWithOptionsFragment = ( - Pick - & { optionGroups: Array<( - Pick - & { options: Array> } - )> } -); - -export type AddOptionGroupToProductMutationVariables = Exact<{ - productId: Scalars['ID']; - optionGroupId: Scalars['ID']; -}>; - - -export type AddOptionGroupToProductMutation = { addOptionGroupToProduct: ProductWithOptionsFragment }; +export type UpdateProductOptionMutation = { + updateProductOption: Pick; +}; export type RemoveOptionGroupFromProductMutationVariables = Exact<{ - productId: Scalars['ID']; - optionGroupId: Scalars['ID']; + productId: Scalars['ID']; + optionGroupId: Scalars['ID']; }>; - -export type RemoveOptionGroupFromProductMutation = { removeOptionGroupFromProduct: ProductWithOptionsFragment | Pick }; +export type RemoveOptionGroupFromProductMutation = { + removeOptionGroupFromProduct: + | ProductWithOptionsFragment + | Pick; +}; export type GetOptionGroupQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - -export type GetOptionGroupQuery = { productOptionGroup?: Maybe<( - Pick - & { options: Array> } - )> }; +export type GetOptionGroupQuery = { + productOptionGroup?: Maybe< + Pick & { options: Array> } + >; +}; export type GetProductVariantQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - export type GetProductVariantQuery = { productVariant?: Maybe> }; export type DeletePromotionMutationVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - export type DeletePromotionMutation = { deletePromotion: Pick }; export type GetPromotionListQueryVariables = Exact<{ - options?: Maybe; + options?: Maybe; }>; - -export type GetPromotionListQuery = { promotions: ( - Pick - & { items: Array } - ) }; +export type GetPromotionListQuery = { + promotions: Pick & { items: Array }; +}; export type GetPromotionQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - export type GetPromotionQuery = { promotion?: Maybe }; export type UpdatePromotionMutationVariables = Exact<{ - input: UpdatePromotionInput; + input: UpdatePromotionInput; }>; +export type UpdatePromotionMutation = { + updatePromotion: PromotionFragment | Pick; +}; -export type UpdatePromotionMutation = { updatePromotion: PromotionFragment | Pick }; - -export type ConfigurableOperationDefFragment = ( - Pick - & { args: Array> } -); - -export type GetAdjustmentOperationsQueryVariables = Exact<{ [key: string]: never; }>; +export type ConfigurableOperationDefFragment = Pick< + ConfigurableOperationDefinition, + 'code' | 'description' +> & { args: Array> }; +export type GetAdjustmentOperationsQueryVariables = Exact<{ [key: string]: never }>; -export type GetAdjustmentOperationsQuery = { promotionActions: Array, promotionConditions: Array }; +export type GetAdjustmentOperationsQuery = { + promotionActions: Array; + promotionConditions: Array; +}; export type GetRolesQueryVariables = Exact<{ - options?: Maybe; + options?: Maybe; }>; - -export type GetRolesQuery = { roles: ( - Pick - & { items: Array } - ) }; +export type GetRolesQuery = { roles: Pick & { items: Array } }; export type GetRoleQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - export type GetRoleQuery = { role?: Maybe }; export type UpdateRoleMutationVariables = Exact<{ - input: UpdateRoleInput; + input: UpdateRoleInput; }>; - export type UpdateRoleMutation = { updateRole: RoleFragment }; export type DeleteRoleMutationVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - export type DeleteRoleMutation = { deleteRole: Pick }; -export type LogoutMutationVariables = Exact<{ [key: string]: never; }>; - +export type LogoutMutationVariables = Exact<{ [key: string]: never }>; export type LogoutMutation = { logout: Pick }; -export type ShippingMethodFragment = ( - Pick - & { calculator: Pick, checker: Pick } -); - -export type GetShippingMethodListQueryVariables = Exact<{ [key: string]: never; }>; +export type ShippingMethodFragment = Pick & { + calculator: Pick; + checker: Pick; +}; +export type GetShippingMethodListQueryVariables = Exact<{ [key: string]: never }>; -export type GetShippingMethodListQuery = { shippingMethods: ( - Pick - & { items: Array } - ) }; +export type GetShippingMethodListQuery = { + shippingMethods: Pick & { items: Array }; +}; export type GetShippingMethodQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - export type GetShippingMethodQuery = { shippingMethod?: Maybe }; export type CreateShippingMethodMutationVariables = Exact<{ - input: CreateShippingMethodInput; + input: CreateShippingMethodInput; }>; - export type CreateShippingMethodMutation = { createShippingMethod: ShippingMethodFragment }; export type UpdateShippingMethodMutationVariables = Exact<{ - input: UpdateShippingMethodInput; + input: UpdateShippingMethodInput; }>; - export type UpdateShippingMethodMutation = { updateShippingMethod: ShippingMethodFragment }; export type DeleteShippingMethodMutationVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; +export type DeleteShippingMethodMutation = { + deleteShippingMethod: Pick; +}; -export type DeleteShippingMethodMutation = { deleteShippingMethod: Pick }; - -export type GetEligibilityCheckersQueryVariables = Exact<{ [key: string]: never; }>; - - -export type GetEligibilityCheckersQuery = { shippingEligibilityCheckers: Array<( - Pick - & { args: Array> } - )> }; +export type GetEligibilityCheckersQueryVariables = Exact<{ [key: string]: never }>; -export type GetCalculatorsQueryVariables = Exact<{ [key: string]: never; }>; +export type GetEligibilityCheckersQuery = { + shippingEligibilityCheckers: Array< + Pick & { + args: Array>; + } + >; +}; +export type GetCalculatorsQueryVariables = Exact<{ [key: string]: never }>; -export type GetCalculatorsQuery = { shippingCalculators: Array<( - Pick - & { args: Array> } - )> }; +export type GetCalculatorsQuery = { + shippingCalculators: Array< + Pick & { + args: Array>; + } + >; +}; export type TestShippingMethodQueryVariables = Exact<{ - input: TestShippingMethodInput; + input: TestShippingMethodInput; }>; - -export type TestShippingMethodQuery = { testShippingMethod: ( - Pick - & { quote?: Maybe> } - ) }; +export type TestShippingMethodQuery = { + testShippingMethod: Pick & { + quote?: Maybe>; + }; +}; export type TestEligibleMethodsQueryVariables = Exact<{ - input: TestEligibleShippingMethodsInput; + input: TestEligibleShippingMethodsInput; }>; +export type TestEligibleMethodsQuery = { + testEligibleShippingMethods: Array< + Pick + >; +}; -export type TestEligibleMethodsQuery = { testEligibleShippingMethods: Array> }; - -export type GetMeQueryVariables = Exact<{ [key: string]: never; }>; - +export type GetMeQueryVariables = Exact<{ [key: string]: never }>; export type GetMeQuery = { me?: Maybe> }; -export type GetProductsTake3QueryVariables = Exact<{ [key: string]: never; }>; - +export type GetProductsTake3QueryVariables = Exact<{ [key: string]: never }>; export type GetProductsTake3Query = { products: { items: Array> } }; -export type GetProduct1QueryVariables = Exact<{ [key: string]: never; }>; - +export type GetProduct1QueryVariables = Exact<{ [key: string]: never }>; export type GetProduct1Query = { product?: Maybe> }; -export type GetProduct2VariantsQueryVariables = Exact<{ [key: string]: never; }>; - +export type GetProduct2VariantsQueryVariables = Exact<{ [key: string]: never }>; -export type GetProduct2VariantsQuery = { product?: Maybe<( - Pick - & { variants: Array> } - )> }; - -export type GetProductCollectionQueryVariables = Exact<{ [key: string]: never; }>; +export type GetProduct2VariantsQuery = { + product?: Maybe & { variants: Array> }>; +}; +export type GetProductCollectionQueryVariables = Exact<{ [key: string]: never }>; -export type GetProductCollectionQuery = { product?: Maybe<{ collections: Array> }> }; +export type GetProductCollectionQuery = { + product?: Maybe<{ collections: Array> }>; +}; export type DisableProductMutationVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - export type DisableProductMutation = { updateProduct: Pick }; export type GetCollectionVariantsQueryVariables = Exact<{ - id?: Maybe; - slug?: Maybe; + id?: Maybe; + slug?: Maybe; }>; +export type GetCollectionVariantsQuery = { + collection?: Maybe< + Pick & { productVariants: { items: Array> } } + >; +}; -export type GetCollectionVariantsQuery = { collection?: Maybe<( - Pick - & { productVariants: { items: Array> } } - )> }; - -export type GetCollectionListQueryVariables = Exact<{ [key: string]: never; }>; - +export type GetCollectionListQueryVariables = Exact<{ [key: string]: never }>; export type GetCollectionListQuery = { collections: { items: Array> } }; export type GetProductFacetValuesQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - -export type GetProductFacetValuesQuery = { product?: Maybe<( - Pick - & { facetValues: Array> } - )> }; +export type GetProductFacetValuesQuery = { + product?: Maybe & { facetValues: Array> }>; +}; export type GetVariantFacetValuesQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; +export type GetVariantFacetValuesQuery = { + product?: Maybe< + Pick & { + variants: Array & { facetValues: Array> }>; + } + >; +}; -export type GetVariantFacetValuesQuery = { product?: Maybe<( - Pick - & { variants: Array<( - Pick - & { facetValues: Array> } - )> } - )> }; - -export type GetCustomerIdsQueryVariables = Exact<{ [key: string]: never; }>; - +export type GetCustomerIdsQueryVariables = Exact<{ [key: string]: never }>; export type GetCustomerIdsQuery = { customers: { items: Array> } }; export type UpdateStockMutationVariables = Exact<{ - input: Array; + input: Array; }>; - export type UpdateStockMutation = { updateProductVariants: Array> }; -export type GetTaxCategoryListQueryVariables = Exact<{ [key: string]: never; }>; - +export type GetTaxCategoryListQueryVariables = Exact<{ [key: string]: never }>; export type GetTaxCategoryListQuery = { taxCategories: Array> }; export type GetTaxCategoryQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - export type GetTaxCategoryQuery = { taxCategory?: Maybe> }; export type CreateTaxCategoryMutationVariables = Exact<{ - input: CreateTaxCategoryInput; + input: CreateTaxCategoryInput; }>; - export type CreateTaxCategoryMutation = { createTaxCategory: Pick }; export type UpdateTaxCategoryMutationVariables = Exact<{ - input: UpdateTaxCategoryInput; + input: UpdateTaxCategoryInput; }>; - export type UpdateTaxCategoryMutation = { updateTaxCategory: Pick }; export type DeleteTaxCategoryMutationVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - export type DeleteTaxCategoryMutation = { deleteTaxCategory: Pick }; -export type GetTaxRatesQueryVariables = Exact<{ [key: string]: never; }>; +export type GetTaxRatesQueryVariables = Exact<{ [key: string]: never }>; - -export type GetTaxRatesQuery = { taxRates: ( - Pick - & { items: Array } - ) }; +export type GetTaxRatesQuery = { + taxRates: Pick & { items: Array }; +}; export type GetTaxRateQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - export type GetTaxRateQuery = { taxRate?: Maybe }; export type CreateTaxRateMutationVariables = Exact<{ - input: CreateTaxRateInput; + input: CreateTaxRateInput; }>; - export type CreateTaxRateMutation = { createTaxRate: TaxRateFragment }; export type DeleteTaxRateMutationVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - export type DeleteTaxRateMutation = { deleteTaxRate: Pick }; export type DeleteZoneMutationVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - export type DeleteZoneMutation = { deleteZone: Pick }; -export type GetZonesQueryVariables = Exact<{ [key: string]: never; }>; - +export type GetZonesQueryVariables = Exact<{ [key: string]: never }>; export type GetZonesQuery = { zones: Array> }; export type GetZoneQueryVariables = Exact<{ - id: Scalars['ID']; + id: Scalars['ID']; }>; - export type GetZoneQuery = { zone?: Maybe }; export type CreateZoneMutationVariables = Exact<{ - input: CreateZoneInput; + input: CreateZoneInput; }>; - export type CreateZoneMutation = { createZone: ZoneFragment }; export type UpdateZoneMutationVariables = Exact<{ - input: UpdateZoneInput; + input: UpdateZoneInput; }>; - export type UpdateZoneMutation = { updateZone: ZoneFragment }; export type AddMembersToZoneMutationVariables = Exact<{ - zoneId: Scalars['ID']; - memberIds: Array; + zoneId: Scalars['ID']; + memberIds: Array; }>; - export type AddMembersToZoneMutation = { addMembersToZone: ZoneFragment }; export type RemoveMembersFromZoneMutationVariables = Exact<{ - zoneId: Scalars['ID']; - memberIds: Array; + zoneId: Scalars['ID']; + memberIds: Array; }>; - export type RemoveMembersFromZoneMutation = { removeMembersFromZone: ZoneFragment }; type DiscriminateUnion = T extends U ? T : never; export namespace GetAdministrators { - export type Variables = GetAdministratorsQueryVariables; - export type Query = GetAdministratorsQuery; - export type Administrators = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; + export type Variables = GetAdministratorsQueryVariables; + export type Query = GetAdministratorsQuery; + export type Administrators = NonNullable; + export type Items = NonNullable< + NonNullable['items']>[number] + >; } export namespace GetAdministrator { - export type Variables = GetAdministratorQueryVariables; - export type Query = GetAdministratorQuery; - export type Administrator = (NonNullable); + export type Variables = GetAdministratorQueryVariables; + export type Query = GetAdministratorQuery; + export type Administrator = NonNullable; } export namespace UpdateAdministrator { - export type Variables = UpdateAdministratorMutationVariables; - export type Mutation = UpdateAdministratorMutation; - export type UpdateAdministrator = (NonNullable); + export type Variables = UpdateAdministratorMutationVariables; + export type Mutation = UpdateAdministratorMutation; + export type UpdateAdministrator = NonNullable; } export namespace DeleteAdministrator { - export type Variables = DeleteAdministratorMutationVariables; - export type Mutation = DeleteAdministratorMutation; - export type DeleteAdministrator = (NonNullable); + export type Variables = DeleteAdministratorMutationVariables; + export type Mutation = DeleteAdministratorMutation; + export type DeleteAdministrator = NonNullable; } export namespace Q1 { - export type Variables = Q1QueryVariables; - export type Query = Q1Query; - export type Product = (NonNullable); + export type Variables = Q1QueryVariables; + export type Query = Q1Query; + export type Product = NonNullable; } export namespace Q2 { - export type Variables = Q2QueryVariables; - export type Query = Q2Query; - export type Product = (NonNullable); + export type Variables = Q2QueryVariables; + export type Query = Q2Query; + export type Product = NonNullable; } export namespace GetAsset { - export type Variables = GetAssetQueryVariables; - export type Query = GetAssetQuery; - export type Asset = (NonNullable); + export type Variables = GetAssetQueryVariables; + export type Query = GetAssetQuery; + export type Asset = NonNullable; } export namespace AssetFragFirst { - export type Fragment = AssetFragFirstFragment; + export type Fragment = AssetFragFirstFragment; } export namespace GetAssetFragmentFirst { - export type Variables = GetAssetFragmentFirstQueryVariables; - export type Query = GetAssetFragmentFirstQuery; - export type Asset = (NonNullable); + export type Variables = GetAssetFragmentFirstQueryVariables; + export type Query = GetAssetFragmentFirstQuery; + export type Asset = NonNullable; } export namespace CreateAssets { - export type Variables = CreateAssetsMutationVariables; - export type Mutation = CreateAssetsMutation; - export type CreateAssets = NonNullable<(NonNullable)[number]>; - export type AssetInlineFragment = (DiscriminateUnion)[number]>, { __typename?: 'Asset' }>); - export type FocalPoint = (NonNullable<(DiscriminateUnion)[number]>, { __typename?: 'Asset' }>)['focalPoint']>); - export type MimeTypeErrorInlineFragment = (DiscriminateUnion)[number]>, { __typename?: 'MimeTypeError' }>); + export type Variables = CreateAssetsMutationVariables; + export type Mutation = CreateAssetsMutation; + export type CreateAssets = NonNullable[number]>; + export type AssetInlineFragment = DiscriminateUnion< + NonNullable[number]>, + { __typename?: 'Asset' } + >; + export type FocalPoint = NonNullable< + DiscriminateUnion< + NonNullable[number]>, + { __typename?: 'Asset' } + >['focalPoint'] + >; + export type MimeTypeErrorInlineFragment = DiscriminateUnion< + NonNullable[number]>, + { __typename?: 'MimeTypeError' } + >; } export namespace CanCreateCustomer { - export type Variables = CanCreateCustomerMutationVariables; - export type Mutation = CanCreateCustomerMutation; - export type CreateCustomer = (NonNullable); - export type CustomerInlineFragment = (DiscriminateUnion<(NonNullable), { __typename?: 'Customer' }>); + export type Variables = CanCreateCustomerMutationVariables; + export type Mutation = CanCreateCustomerMutation; + export type CreateCustomer = NonNullable; + export type CustomerInlineFragment = DiscriminateUnion< + NonNullable, + { __typename?: 'Customer' } + >; } export namespace GetCustomerCount { - export type Variables = GetCustomerCountQueryVariables; - export type Query = GetCustomerCountQuery; - export type Customers = (NonNullable); + export type Variables = GetCustomerCountQueryVariables; + export type Query = GetCustomerCountQuery; + export type Customers = NonNullable; } export namespace Authenticate { - export type Variables = AuthenticateMutationVariables; - export type Mutation = AuthenticateMutation; - export type Authenticate = (NonNullable); - export type InvalidCredentialsErrorInlineFragment = (DiscriminateUnion<(NonNullable), { __typename?: 'InvalidCredentialsError' }>); + export type Variables = AuthenticateMutationVariables; + export type Mutation = AuthenticateMutation; + export type Authenticate = NonNullable; + export type InvalidCredentialsErrorInlineFragment = DiscriminateUnion< + NonNullable, + { __typename?: 'InvalidCredentialsError' } + >; } export namespace GetCustomers { - export type Variables = GetCustomersQueryVariables; - export type Query = GetCustomersQuery; - export type Customers = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; + export type Variables = GetCustomersQueryVariables; + export type Query = GetCustomersQuery; + export type Customers = NonNullable; + export type Items = NonNullable< + NonNullable['items']>[number] + >; } export namespace GetCustomerUserAuth { - export type Variables = GetCustomerUserAuthQueryVariables; - export type Query = GetCustomerUserAuthQuery; - export type Customer = (NonNullable); - export type User = (NonNullable<(NonNullable)['user']>); - export type AuthenticationMethods = NonNullable<(NonNullable<(NonNullable<(NonNullable)['user']>)['authenticationMethods']>)[number]>; + export type Variables = GetCustomerUserAuthQueryVariables; + export type Query = GetCustomerUserAuthQuery; + export type Customer = NonNullable; + export type User = NonNullable['user']>; + export type AuthenticationMethods = NonNullable< + NonNullable< + NonNullable['user']>['authenticationMethods'] + >[number] + >; } export namespace GetChannels { - export type Variables = GetChannelsQueryVariables; - export type Query = GetChannelsQuery; - export type Channels = NonNullable<(NonNullable)[number]>; + export type Variables = GetChannelsQueryVariables; + export type Query = GetChannelsQuery; + export type Channels = NonNullable[number]>; } export namespace DeleteChannel { - export type Variables = DeleteChannelMutationVariables; - export type Mutation = DeleteChannelMutation; - export type DeleteChannel = (NonNullable); + export type Variables = DeleteChannelMutationVariables; + export type Mutation = DeleteChannelMutation; + export type DeleteChannel = NonNullable; } export namespace UpdateGlobalLanguages { - export type Variables = UpdateGlobalLanguagesMutationVariables; - export type Mutation = UpdateGlobalLanguagesMutation; - export type UpdateGlobalSettings = (NonNullable); - export type GlobalSettingsInlineFragment = (DiscriminateUnion<(NonNullable), { __typename?: 'GlobalSettings' }>); + export type Variables = UpdateGlobalLanguagesMutationVariables; + export type Mutation = UpdateGlobalLanguagesMutation; + export type UpdateGlobalSettings = NonNullable; + export type GlobalSettingsInlineFragment = DiscriminateUnion< + NonNullable, + { __typename?: 'GlobalSettings' } + >; } export namespace GetCollectionsWithAssets { - export type Variables = GetCollectionsWithAssetsQueryVariables; - export type Query = GetCollectionsWithAssetsQuery; - export type Collections = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; - export type Assets = NonNullable<(NonNullable)['items']>)[number]>['assets']>)[number]>; + export type Variables = GetCollectionsWithAssetsQueryVariables; + export type Query = GetCollectionsWithAssetsQuery; + export type Collections = NonNullable; + export type Items = NonNullable< + NonNullable['items']>[number] + >; + export type Assets = NonNullable< + NonNullable< + NonNullable< + NonNullable['items']>[number] + >['assets'] + >[number] + >; } export namespace GetProductsWithVariantIds { - export type Variables = GetProductsWithVariantIdsQueryVariables; - export type Query = GetProductsWithVariantIdsQuery; - export type Products = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; - export type Variants = NonNullable<(NonNullable)['items']>)[number]>['variants']>)[number]>; + export type Variables = GetProductsWithVariantIdsQueryVariables; + export type Query = GetProductsWithVariantIdsQuery; + export type Products = NonNullable; + export type Items = NonNullable< + NonNullable['items']>[number] + >; + export type Variants = NonNullable< + NonNullable< + NonNullable< + NonNullable['items']>[number] + >['variants'] + >[number] + >; } export namespace GetCollection { - export type Variables = GetCollectionQueryVariables; - export type Query = GetCollectionQuery; - export type Collection = (NonNullable); - export type ProductVariants = (NonNullable<(NonNullable)['productVariants']>); - export type Items = NonNullable<(NonNullable<(NonNullable<(NonNullable)['productVariants']>)['items']>)[number]>; + export type Variables = GetCollectionQueryVariables; + export type Query = GetCollectionQuery; + export type Collection = NonNullable; + export type ProductVariants = NonNullable< + NonNullable['productVariants'] + >; + export type Items = NonNullable< + NonNullable< + NonNullable['productVariants']>['items'] + >[number] + >; } export namespace MoveCollection { - export type Variables = MoveCollectionMutationVariables; - export type Mutation = MoveCollectionMutation; - export type MoveCollection = (NonNullable); + export type Variables = MoveCollectionMutationVariables; + export type Mutation = MoveCollectionMutation; + export type MoveCollection = NonNullable; } export namespace GetFacetValues { - export type Variables = GetFacetValuesQueryVariables; - export type Query = GetFacetValuesQuery; - export type Facets = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; - export type Values = NonNullable<(NonNullable)['items']>)[number]>['values']>)[number]>; + export type Variables = GetFacetValuesQueryVariables; + export type Query = GetFacetValuesQuery; + export type Facets = NonNullable; + export type Items = NonNullable['items']>[number]>; + export type Values = NonNullable< + NonNullable< + NonNullable['items']>[number]>['values'] + >[number] + >; } export namespace GetCollections { - export type Variables = GetCollectionsQueryVariables; - export type Query = GetCollectionsQuery; - export type Collections = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; - export type Parent = (NonNullable)['items']>)[number]>['parent']>); + export type Variables = GetCollectionsQueryVariables; + export type Query = GetCollectionsQuery; + export type Collections = NonNullable; + export type Items = NonNullable< + NonNullable['items']>[number] + >; + export type Parent = NonNullable< + NonNullable['items']>[number]>['parent'] + >; } export namespace GetCollectionProducts { - export type Variables = GetCollectionProductsQueryVariables; - export type Query = GetCollectionProductsQuery; - export type Collection = (NonNullable); - export type ProductVariants = (NonNullable<(NonNullable)['productVariants']>); - export type Items = NonNullable<(NonNullable<(NonNullable<(NonNullable)['productVariants']>)['items']>)[number]>; - export type FacetValues = NonNullable<(NonNullable)['productVariants']>)['items']>)[number]>['facetValues']>)[number]>; + export type Variables = GetCollectionProductsQueryVariables; + export type Query = GetCollectionProductsQuery; + export type Collection = NonNullable; + export type ProductVariants = NonNullable< + NonNullable['productVariants'] + >; + export type Items = NonNullable< + NonNullable< + NonNullable['productVariants']>['items'] + >[number] + >; + export type FacetValues = NonNullable< + NonNullable< + NonNullable< + NonNullable< + NonNullable< + NonNullable['productVariants'] + >['items'] + >[number] + >['facetValues'] + >[number] + >; } export namespace CreateCollectionSelectVariants { - export type Variables = CreateCollectionSelectVariantsMutationVariables; - export type Mutation = CreateCollectionSelectVariantsMutation; - export type CreateCollection = (NonNullable); - export type ProductVariants = (NonNullable<(NonNullable)['productVariants']>); - export type Items = NonNullable<(NonNullable<(NonNullable<(NonNullable)['productVariants']>)['items']>)[number]>; + export type Variables = CreateCollectionSelectVariantsMutationVariables; + export type Mutation = CreateCollectionSelectVariantsMutation; + export type CreateCollection = NonNullable; + export type ProductVariants = NonNullable< + NonNullable['productVariants'] + >; + export type Items = NonNullable< + NonNullable< + NonNullable< + NonNullable['productVariants'] + >['items'] + >[number] + >; } export namespace GetCollectionBreadcrumbs { - export type Variables = GetCollectionBreadcrumbsQueryVariables; - export type Query = GetCollectionBreadcrumbsQuery; - export type Collection = (NonNullable); - export type Breadcrumbs = NonNullable<(NonNullable<(NonNullable)['breadcrumbs']>)[number]>; + export type Variables = GetCollectionBreadcrumbsQueryVariables; + export type Query = GetCollectionBreadcrumbsQuery; + export type Collection = NonNullable; + export type Breadcrumbs = NonNullable< + NonNullable['breadcrumbs']>[number] + >; } export namespace GetCollectionsForProducts { - export type Variables = GetCollectionsForProductsQueryVariables; - export type Query = GetCollectionsForProductsQuery; - export type Products = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; - export type Collections = NonNullable<(NonNullable)['items']>)[number]>['collections']>)[number]>; + export type Variables = GetCollectionsForProductsQueryVariables; + export type Query = GetCollectionsForProductsQuery; + export type Products = NonNullable; + export type Items = NonNullable< + NonNullable['items']>[number] + >; + export type Collections = NonNullable< + NonNullable< + NonNullable< + NonNullable['items']>[number] + >['collections'] + >[number] + >; } export namespace DeleteCollection { - export type Variables = DeleteCollectionMutationVariables; - export type Mutation = DeleteCollectionMutation; - export type DeleteCollection = (NonNullable); + export type Variables = DeleteCollectionMutationVariables; + export type Mutation = DeleteCollectionMutation; + export type DeleteCollection = NonNullable; } export namespace GetProductCollections { - export type Variables = GetProductCollectionsQueryVariables; - export type Query = GetProductCollectionsQuery; - export type Product = (NonNullable); - export type Collections = NonNullable<(NonNullable<(NonNullable)['collections']>)[number]>; + export type Variables = GetProductCollectionsQueryVariables; + export type Query = GetProductCollectionsQuery; + export type Product = NonNullable; + export type Collections = NonNullable< + NonNullable['collections']>[number] + >; } export namespace GetProductCollectionsWithParent { - export type Variables = GetProductCollectionsWithParentQueryVariables; - export type Query = GetProductCollectionsWithParentQuery; - export type Product = (NonNullable); - export type Collections = NonNullable<(NonNullable<(NonNullable)['collections']>)[number]>; - export type Parent = (NonNullable)['collections']>)[number]>['parent']>); + export type Variables = GetProductCollectionsWithParentQueryVariables; + export type Query = GetProductCollectionsWithParentQuery; + export type Product = NonNullable; + export type Collections = NonNullable< + NonNullable['collections']>[number] + >; + export type Parent = NonNullable< + NonNullable< + NonNullable['collections']>[number] + >['parent'] + >; } export namespace DeleteCountry { - export type Variables = DeleteCountryMutationVariables; - export type Mutation = DeleteCountryMutation; - export type DeleteCountry = (NonNullable); + export type Variables = DeleteCountryMutationVariables; + export type Mutation = DeleteCountryMutation; + export type DeleteCountry = NonNullable; } export namespace GetCountry { - export type Variables = GetCountryQueryVariables; - export type Query = GetCountryQuery; - export type Country = (NonNullable); + export type Variables = GetCountryQueryVariables; + export type Query = GetCountryQuery; + export type Country = NonNullable; } export namespace CreateCountry { - export type Variables = CreateCountryMutationVariables; - export type Mutation = CreateCountryMutation; - export type CreateCountry = (NonNullable); + export type Variables = CreateCountryMutationVariables; + export type Mutation = CreateCountryMutation; + export type CreateCountry = NonNullable; } export namespace DeleteCustomerAddress { - export type Variables = DeleteCustomerAddressMutationVariables; - export type Mutation = DeleteCustomerAddressMutation; - export type DeleteCustomerAddress = (NonNullable); + export type Variables = DeleteCustomerAddressMutationVariables; + export type Mutation = DeleteCustomerAddressMutation; + export type DeleteCustomerAddress = NonNullable; } export namespace GetCustomerWithUser { - export type Variables = GetCustomerWithUserQueryVariables; - export type Query = GetCustomerWithUserQuery; - export type Customer = (NonNullable); - export type User = (NonNullable<(NonNullable)['user']>); + export type Variables = GetCustomerWithUserQueryVariables; + export type Query = GetCustomerWithUserQuery; + export type Customer = NonNullable; + export type User = NonNullable['user']>; } export namespace GetCustomerOrders { - export type Variables = GetCustomerOrdersQueryVariables; - export type Query = GetCustomerOrdersQuery; - export type Customer = (NonNullable); - export type Orders = (NonNullable<(NonNullable)['orders']>); - export type Items = NonNullable<(NonNullable<(NonNullable<(NonNullable)['orders']>)['items']>)[number]>; + export type Variables = GetCustomerOrdersQueryVariables; + export type Query = GetCustomerOrdersQuery; + export type Customer = NonNullable; + export type Orders = NonNullable['orders']>; + export type Items = NonNullable< + NonNullable['orders']>['items']>[number] + >; } export namespace AddNoteToCustomer { - export type Variables = AddNoteToCustomerMutationVariables; - export type Mutation = AddNoteToCustomerMutation; - export type AddNoteToCustomer = (NonNullable); + export type Variables = AddNoteToCustomerMutationVariables; + export type Mutation = AddNoteToCustomerMutation; + export type AddNoteToCustomer = NonNullable; } export namespace Reindex { - export type Variables = ReindexMutationVariables; - export type Mutation = ReindexMutation; - export type Reindex = (NonNullable); + export type Variables = ReindexMutationVariables; + export type Mutation = ReindexMutation; + export type Reindex = NonNullable; } export namespace SearchProductsAdmin { - export type Variables = SearchProductsAdminQueryVariables; - export type Query = SearchProductsAdminQuery; - export type Search = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; + export type Variables = SearchProductsAdminQueryVariables; + export type Query = SearchProductsAdminQuery; + export type Search = NonNullable; + export type Items = NonNullable< + NonNullable['items']>[number] + >; } export namespace SearchFacetValues { - export type Variables = SearchFacetValuesQueryVariables; - export type Query = SearchFacetValuesQuery; - export type Search = (NonNullable); - export type FacetValues = NonNullable<(NonNullable<(NonNullable)['facetValues']>)[number]>; - export type FacetValue = (NonNullable)['facetValues']>)[number]>['facetValue']>); + export type Variables = SearchFacetValuesQueryVariables; + export type Query = SearchFacetValuesQuery; + export type Search = NonNullable; + export type FacetValues = NonNullable< + NonNullable['facetValues']>[number] + >; + export type FacetValue = NonNullable< + NonNullable< + NonNullable['facetValues']>[number] + >['facetValue'] + >; } export namespace SearchGetAssets { - export type Variables = SearchGetAssetsQueryVariables; - export type Query = SearchGetAssetsQuery; - export type Search = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; - export type ProductAsset = (NonNullable)['items']>)[number]>['productAsset']>); - export type FocalPoint = (NonNullable<(NonNullable)['items']>)[number]>['productAsset']>)['focalPoint']>); - export type ProductVariantAsset = (NonNullable)['items']>)[number]>['productVariantAsset']>); - export type _FocalPoint = (NonNullable<(NonNullable)['items']>)[number]>['productVariantAsset']>)['focalPoint']>); + export type Variables = SearchGetAssetsQueryVariables; + export type Query = SearchGetAssetsQuery; + export type Search = NonNullable; + export type Items = NonNullable< + NonNullable['items']>[number] + >; + export type ProductAsset = NonNullable< + NonNullable['items']>[number]>['productAsset'] + >; + export type FocalPoint = NonNullable< + NonNullable< + NonNullable< + NonNullable['items']>[number] + >['productAsset'] + >['focalPoint'] + >; + export type ProductVariantAsset = NonNullable< + NonNullable< + NonNullable['items']>[number] + >['productVariantAsset'] + >; + export type _FocalPoint = NonNullable< + NonNullable< + NonNullable< + NonNullable['items']>[number] + >['productVariantAsset'] + >['focalPoint'] + >; } export namespace SearchGetPrices { - export type Variables = SearchGetPricesQueryVariables; - export type Query = SearchGetPricesQuery; - export type Search = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; - export type Price = (NonNullable)['items']>)[number]>['price']>); - export type PriceRangeInlineFragment = (DiscriminateUnion<(NonNullable)['items']>)[number]>['price']>), { __typename?: 'PriceRange' }>); - export type SinglePriceInlineFragment = (DiscriminateUnion<(NonNullable)['items']>)[number]>['price']>), { __typename?: 'SinglePrice' }>); - export type PriceWithTax = (NonNullable)['items']>)[number]>['priceWithTax']>); - export type _PriceRangeInlineFragment = (DiscriminateUnion<(NonNullable)['items']>)[number]>['priceWithTax']>), { __typename?: 'PriceRange' }>); - export type _SinglePriceInlineFragment = (DiscriminateUnion<(NonNullable)['items']>)[number]>['priceWithTax']>), { __typename?: 'SinglePrice' }>); + export type Variables = SearchGetPricesQueryVariables; + export type Query = SearchGetPricesQuery; + export type Search = NonNullable; + export type Items = NonNullable< + NonNullable['items']>[number] + >; + export type Price = NonNullable< + NonNullable['items']>[number]>['price'] + >; + export type PriceRangeInlineFragment = DiscriminateUnion< + NonNullable< + NonNullable['items']>[number]>['price'] + >, + { __typename?: 'PriceRange' } + >; + export type SinglePriceInlineFragment = DiscriminateUnion< + NonNullable< + NonNullable['items']>[number]>['price'] + >, + { __typename?: 'SinglePrice' } + >; + export type PriceWithTax = NonNullable< + NonNullable['items']>[number]>['priceWithTax'] + >; + export type _PriceRangeInlineFragment = DiscriminateUnion< + NonNullable< + NonNullable< + NonNullable['items']>[number] + >['priceWithTax'] + >, + { __typename?: 'PriceRange' } + >; + export type _SinglePriceInlineFragment = DiscriminateUnion< + NonNullable< + NonNullable< + NonNullable['items']>[number] + >['priceWithTax'] + >, + { __typename?: 'SinglePrice' } + >; } export namespace IdTest1 { - export type Variables = IdTest1QueryVariables; - export type Query = IdTest1Query; - export type Products = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; + export type Variables = IdTest1QueryVariables; + export type Query = IdTest1Query; + export type Products = NonNullable; + export type Items = NonNullable['items']>[number]>; } export namespace IdTest2 { - export type Variables = IdTest2QueryVariables; - export type Query = IdTest2Query; - export type Products = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; - export type Variants = NonNullable<(NonNullable)['items']>)[number]>['variants']>)[number]>; - export type Options = NonNullable<(NonNullable)['items']>)[number]>['variants']>)[number]>['options']>)[number]>; + export type Variables = IdTest2QueryVariables; + export type Query = IdTest2Query; + export type Products = NonNullable; + export type Items = NonNullable['items']>[number]>; + export type Variants = NonNullable< + NonNullable< + NonNullable['items']>[number]>['variants'] + >[number] + >; + export type Options = NonNullable< + NonNullable< + NonNullable< + NonNullable< + NonNullable< + NonNullable['items']>[number] + >['variants'] + >[number] + >['options'] + >[number] + >; } export namespace IdTest3 { - export type Variables = IdTest3QueryVariables; - export type Query = IdTest3Query; - export type Product = (NonNullable); + export type Variables = IdTest3QueryVariables; + export type Query = IdTest3Query; + export type Product = NonNullable; } export namespace IdTest4 { - export type Variables = IdTest4MutationVariables; - export type Mutation = IdTest4Mutation; - export type UpdateProduct = (NonNullable); - export type FeaturedAsset = (NonNullable<(NonNullable)['featuredAsset']>); + export type Variables = IdTest4MutationVariables; + export type Mutation = IdTest4Mutation; + export type UpdateProduct = NonNullable; + export type FeaturedAsset = NonNullable['featuredAsset']>; } export namespace IdTest5 { - export type Variables = IdTest5MutationVariables; - export type Mutation = IdTest5Mutation; - export type UpdateProduct = (NonNullable); + export type Variables = IdTest5MutationVariables; + export type Mutation = IdTest5Mutation; + export type UpdateProduct = NonNullable; } export namespace IdTest6 { - export type Variables = IdTest6QueryVariables; - export type Query = IdTest6Query; - export type Product = (NonNullable); + export type Variables = IdTest6QueryVariables; + export type Query = IdTest6Query; + export type Product = NonNullable; } export namespace IdTest7 { - export type Variables = IdTest7MutationVariables; - export type Mutation = IdTest7Mutation; - export type UpdateProduct = (NonNullable); - export type FeaturedAsset = (NonNullable<(NonNullable)['featuredAsset']>); + export type Variables = IdTest7MutationVariables; + export type Mutation = IdTest7Mutation; + export type UpdateProduct = NonNullable; + export type FeaturedAsset = NonNullable['featuredAsset']>; } export namespace IdTest8 { - export type Variables = IdTest8MutationVariables; - export type Mutation = IdTest8Mutation; - export type UpdateProduct = (NonNullable); + export type Variables = IdTest8MutationVariables; + export type Mutation = IdTest8Mutation; + export type UpdateProduct = NonNullable; } export namespace IdTest9 { - export type Variables = IdTest9QueryVariables; - export type Query = IdTest9Query; - export type Products = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; + export type Variables = IdTest9QueryVariables; + export type Query = IdTest9Query; + export type Products = NonNullable; + export type Items = NonNullable['items']>[number]>; } export namespace ProdFragment { - export type Fragment = ProdFragmentFragment; - export type FeaturedAsset = (NonNullable); + export type Fragment = ProdFragmentFragment; + export type FeaturedAsset = NonNullable; } export namespace GetFacetWithValues { - export type Variables = GetFacetWithValuesQueryVariables; - export type Query = GetFacetWithValuesQuery; - export type Facet = (NonNullable); + export type Variables = GetFacetWithValuesQueryVariables; + export type Query = GetFacetWithValuesQuery; + export type Facet = NonNullable; } export namespace DeleteFacetValues { - export type Variables = DeleteFacetValuesMutationVariables; - export type Mutation = DeleteFacetValuesMutation; - export type DeleteFacetValues = NonNullable<(NonNullable)[number]>; + export type Variables = DeleteFacetValuesMutationVariables; + export type Mutation = DeleteFacetValuesMutation; + export type DeleteFacetValues = NonNullable< + NonNullable[number] + >; } export namespace DeleteFacet { - export type Variables = DeleteFacetMutationVariables; - export type Mutation = DeleteFacetMutation; - export type DeleteFacet = (NonNullable); + export type Variables = DeleteFacetMutationVariables; + export type Mutation = DeleteFacetMutation; + export type DeleteFacet = NonNullable; } export namespace GetProductListWithVariants { - export type Variables = GetProductListWithVariantsQueryVariables; - export type Query = GetProductListWithVariantsQuery; - export type Products = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; - export type Variants = NonNullable<(NonNullable)['items']>)[number]>['variants']>)[number]>; + export type Variables = GetProductListWithVariantsQueryVariables; + export type Query = GetProductListWithVariantsQuery; + export type Products = NonNullable; + export type Items = NonNullable< + NonNullable['items']>[number] + >; + export type Variants = NonNullable< + NonNullable< + NonNullable< + NonNullable['items']>[number] + >['variants'] + >[number] + >; } export namespace CreateFacetValues { - export type Variables = CreateFacetValuesMutationVariables; - export type Mutation = CreateFacetValuesMutation; - export type CreateFacetValues = NonNullable<(NonNullable)[number]>; + export type Variables = CreateFacetValuesMutationVariables; + export type Mutation = CreateFacetValuesMutation; + export type CreateFacetValues = NonNullable< + NonNullable[number] + >; } export namespace UpdateFacetValues { - export type Variables = UpdateFacetValuesMutationVariables; - export type Mutation = UpdateFacetValuesMutation; - export type UpdateFacetValues = NonNullable<(NonNullable)[number]>; + export type Variables = UpdateFacetValuesMutationVariables; + export type Mutation = UpdateFacetValuesMutation; + export type UpdateFacetValues = NonNullable< + NonNullable[number] + >; } export namespace GlobalSettings { - export type Fragment = GlobalSettingsFragment; - export type ServerConfig = (NonNullable); - export type OrderProcess = NonNullable<(NonNullable<(NonNullable)['orderProcess']>)[number]>; - export type CustomFieldConfig = (NonNullable<(NonNullable)['customFieldConfig']>); - export type Customer = NonNullable<(NonNullable<(NonNullable<(NonNullable)['customFieldConfig']>)['Customer']>)[number]>; - export type CustomFieldInlineFragment = (DiscriminateUnion)['customFieldConfig']>)['Customer']>)[number]>, { __typename?: 'CustomField' }>); + export type Fragment = GlobalSettingsFragment; + export type ServerConfig = NonNullable; + export type OrderProcess = NonNullable< + NonNullable['orderProcess']>[number] + >; + export type CustomFieldConfig = NonNullable< + NonNullable['customFieldConfig'] + >; + export type Customer = NonNullable< + NonNullable< + NonNullable['customFieldConfig']>['Customer'] + >[number] + >; + export type CustomFieldInlineFragment = DiscriminateUnion< + NonNullable< + NonNullable< + NonNullable< + NonNullable['customFieldConfig'] + >['Customer'] + >[number] + >, + { __typename?: 'CustomField' } + >; } export namespace GetGlobalSettings { - export type Variables = GetGlobalSettingsQueryVariables; - export type Query = GetGlobalSettingsQuery; - export type GlobalSettings = (NonNullable); + export type Variables = GetGlobalSettingsQueryVariables; + export type Query = GetGlobalSettingsQuery; + export type GlobalSettings = NonNullable; } export namespace UpdateGlobalSettings { - export type Variables = UpdateGlobalSettingsMutationVariables; - export type Mutation = UpdateGlobalSettingsMutation; - export type UpdateGlobalSettings = (NonNullable); - export type ErrorResultInlineFragment = (DiscriminateUnion<(NonNullable), { __typename?: 'ErrorResult' }>); + export type Variables = UpdateGlobalSettingsMutationVariables; + export type Mutation = UpdateGlobalSettingsMutation; + export type UpdateGlobalSettings = NonNullable; + export type ErrorResultInlineFragment = DiscriminateUnion< + NonNullable, + { __typename?: 'ErrorResult' } + >; } export namespace Administrator { - export type Fragment = AdministratorFragment; - export type User = (NonNullable); - export type Roles = NonNullable<(NonNullable<(NonNullable)['roles']>)[number]>; + export type Fragment = AdministratorFragment; + export type User = NonNullable; + export type Roles = NonNullable['roles']>[number]>; } export namespace Asset { - export type Fragment = AssetFragment; + export type Fragment = AssetFragment; } export namespace ProductVariant { - export type Fragment = ProductVariantFragment; - export type TaxRateApplied = (NonNullable); - export type TaxCategory = (NonNullable); - export type Options = NonNullable<(NonNullable)[number]>; - export type FacetValues = NonNullable<(NonNullable)[number]>; - export type Facet = (NonNullable)[number]>['facet']>); - export type FeaturedAsset = (NonNullable); - export type Assets = NonNullable<(NonNullable)[number]>; - export type Translations = NonNullable<(NonNullable)[number]>; + export type Fragment = ProductVariantFragment; + export type TaxRateApplied = NonNullable; + export type TaxCategory = NonNullable; + export type Options = NonNullable[number]>; + export type FacetValues = NonNullable[number]>; + export type Facet = NonNullable< + NonNullable[number]>['facet'] + >; + export type FeaturedAsset = NonNullable; + export type Assets = NonNullable[number]>; + export type Translations = NonNullable[number]>; } export namespace ProductWithVariants { - export type Fragment = ProductWithVariantsFragment; - export type FeaturedAsset = (NonNullable); - export type Assets = NonNullable<(NonNullable)[number]>; - export type Translations = NonNullable<(NonNullable)[number]>; - export type OptionGroups = NonNullable<(NonNullable)[number]>; - export type Variants = NonNullable<(NonNullable)[number]>; - export type FacetValues = NonNullable<(NonNullable)[number]>; - export type Facet = (NonNullable)[number]>['facet']>); - export type Channels = NonNullable<(NonNullable)[number]>; + export type Fragment = ProductWithVariantsFragment; + export type FeaturedAsset = NonNullable; + export type Assets = NonNullable[number]>; + export type Translations = NonNullable[number]>; + export type OptionGroups = NonNullable[number]>; + export type Variants = NonNullable[number]>; + export type FacetValues = NonNullable[number]>; + export type Facet = NonNullable< + NonNullable[number]>['facet'] + >; + export type Channels = NonNullable[number]>; } export namespace Role { - export type Fragment = RoleFragment; - export type Channels = NonNullable<(NonNullable)[number]>; + export type Fragment = RoleFragment; + export type Channels = NonNullable[number]>; } export namespace ConfigurableOperation { - export type Fragment = ConfigurableOperationFragment; - export type Args = NonNullable<(NonNullable)[number]>; + export type Fragment = ConfigurableOperationFragment; + export type Args = NonNullable[number]>; } export namespace Collection { - export type Fragment = CollectionFragment; - export type FeaturedAsset = (NonNullable); - export type Assets = NonNullable<(NonNullable)[number]>; - export type Filters = NonNullable<(NonNullable)[number]>; - export type Translations = NonNullable<(NonNullable)[number]>; - export type Parent = (NonNullable); - export type Children = NonNullable<(NonNullable)[number]>; + export type Fragment = CollectionFragment; + export type FeaturedAsset = NonNullable; + export type Assets = NonNullable[number]>; + export type Filters = NonNullable[number]>; + export type Translations = NonNullable[number]>; + export type Parent = NonNullable; + export type Children = NonNullable[number]>; } export namespace FacetValue { - export type Fragment = FacetValueFragment; - export type Translations = NonNullable<(NonNullable)[number]>; - export type Facet = (NonNullable); + export type Fragment = FacetValueFragment; + export type Translations = NonNullable[number]>; + export type Facet = NonNullable; } export namespace FacetWithValues { - export type Fragment = FacetWithValuesFragment; - export type Translations = NonNullable<(NonNullable)[number]>; - export type Values = NonNullable<(NonNullable)[number]>; + export type Fragment = FacetWithValuesFragment; + export type Translations = NonNullable[number]>; + export type Values = NonNullable[number]>; } export namespace Country { - export type Fragment = CountryFragment; - export type Translations = NonNullable<(NonNullable)[number]>; + export type Fragment = CountryFragment; + export type Translations = NonNullable[number]>; } export namespace Address { - export type Fragment = AddressFragment; - export type Country = (NonNullable); + export type Fragment = AddressFragment; + export type Country = NonNullable; } export namespace Customer { - export type Fragment = CustomerFragment; - export type User = (NonNullable); - export type Addresses = NonNullable<(NonNullable)[number]>; + export type Fragment = CustomerFragment; + export type User = NonNullable; + export type Addresses = NonNullable[number]>; } export namespace Adjustment { - export type Fragment = AdjustmentFragment; + export type Fragment = AdjustmentFragment; } export namespace ShippingAddress { - export type Fragment = ShippingAddressFragment; + export type Fragment = ShippingAddressFragment; } export namespace Order { - export type Fragment = OrderFragment; - export type Customer = (NonNullable); + export type Fragment = OrderFragment; + export type Customer = NonNullable; } export namespace OrderItem { - export type Fragment = OrderItemFragment; - export type Fulfillment = (NonNullable); + export type Fragment = OrderItemFragment; + export type Fulfillment = NonNullable; } export namespace OrderWithLines { - export type Fragment = OrderWithLinesFragment; - export type Customer = (NonNullable); - export type Lines = NonNullable<(NonNullable)[number]>; - export type FeaturedAsset = (NonNullable)[number]>['featuredAsset']>); - export type ProductVariant = (NonNullable)[number]>['productVariant']>); - export type Items = NonNullable<(NonNullable)[number]>['items']>)[number]>; - export type Adjustments = NonNullable<(NonNullable)[number]>; - export type ShippingMethod = (NonNullable); - export type ShippingAddress = (NonNullable); - export type Payments = NonNullable<(NonNullable)[number]>; + export type Fragment = OrderWithLinesFragment; + export type Customer = NonNullable; + export type Lines = NonNullable[number]>; + export type FeaturedAsset = NonNullable< + NonNullable[number]>['featuredAsset'] + >; + export type ProductVariant = NonNullable< + NonNullable[number]>['productVariant'] + >; + export type Items = NonNullable< + NonNullable[number]>['items']>[number] + >; + export type Adjustments = NonNullable[number]>; + export type ShippingMethod = NonNullable; + export type ShippingAddress = NonNullable; + export type Payments = NonNullable[number]>; } export namespace Promotion { - export type Fragment = PromotionFragment; - export type Conditions = NonNullable<(NonNullable)[number]>; - export type Actions = NonNullable<(NonNullable)[number]>; + export type Fragment = PromotionFragment; + export type Conditions = NonNullable[number]>; + export type Actions = NonNullable[number]>; } export namespace Zone { - export type Fragment = ZoneFragment; - export type Members = NonNullable<(NonNullable)[number]>; + export type Fragment = ZoneFragment; + export type Members = NonNullable[number]>; } export namespace TaxRate { - export type Fragment = TaxRateFragment; - export type Category = (NonNullable); - export type Zone = (NonNullable); - export type CustomerGroup = (NonNullable); + export type Fragment = TaxRateFragment; + export type Category = NonNullable; + export type Zone = NonNullable; + export type CustomerGroup = NonNullable; } export namespace CurrentUser { - export type Fragment = CurrentUserFragment; - export type Channels = NonNullable<(NonNullable)[number]>; + export type Fragment = CurrentUserFragment; + export type Channels = NonNullable[number]>; } export namespace VariantWithStock { - export type Fragment = VariantWithStockFragment; - export type StockMovements = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; - export type StockMovementInlineFragment = (DiscriminateUnion)['items']>)[number]>, { __typename?: 'StockMovement' }>); + export type Fragment = VariantWithStockFragment; + export type StockMovements = NonNullable; + export type Items = NonNullable< + NonNullable['items']>[number] + >; + export type StockMovementInlineFragment = DiscriminateUnion< + NonNullable['items']>[number]>, + { __typename?: 'StockMovement' } + >; } export namespace Fulfillment { - export type Fragment = FulfillmentFragment; - export type OrderItems = NonNullable<(NonNullable)[number]>; + export type Fragment = FulfillmentFragment; + export type OrderItems = NonNullable[number]>; } export namespace Channel { - export type Fragment = ChannelFragment; - export type DefaultShippingZone = (NonNullable); - export type DefaultTaxZone = (NonNullable); + export type Fragment = ChannelFragment; + export type DefaultShippingZone = NonNullable; + export type DefaultTaxZone = NonNullable; } export namespace CreateAdministrator { - export type Variables = CreateAdministratorMutationVariables; - export type Mutation = CreateAdministratorMutation; - export type CreateAdministrator = (NonNullable); + export type Variables = CreateAdministratorMutationVariables; + export type Mutation = CreateAdministratorMutation; + export type CreateAdministrator = NonNullable; } export namespace UpdateProduct { - export type Variables = UpdateProductMutationVariables; - export type Mutation = UpdateProductMutation; - export type UpdateProduct = (NonNullable); + export type Variables = UpdateProductMutationVariables; + export type Mutation = UpdateProductMutation; + export type UpdateProduct = NonNullable; } export namespace CreateProduct { - export type Variables = CreateProductMutationVariables; - export type Mutation = CreateProductMutation; - export type CreateProduct = (NonNullable); + export type Variables = CreateProductMutationVariables; + export type Mutation = CreateProductMutation; + export type CreateProduct = NonNullable; } export namespace GetProductWithVariants { - export type Variables = GetProductWithVariantsQueryVariables; - export type Query = GetProductWithVariantsQuery; - export type Product = (NonNullable); + export type Variables = GetProductWithVariantsQueryVariables; + export type Query = GetProductWithVariantsQuery; + export type Product = NonNullable; } export namespace GetProductList { - export type Variables = GetProductListQueryVariables; - export type Query = GetProductListQuery; - export type Products = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; - export type FeaturedAsset = (NonNullable)['items']>)[number]>['featuredAsset']>); + export type Variables = GetProductListQueryVariables; + export type Query = GetProductListQuery; + export type Products = NonNullable; + export type Items = NonNullable< + NonNullable['items']>[number] + >; + export type FeaturedAsset = NonNullable< + NonNullable< + NonNullable['items']>[number] + >['featuredAsset'] + >; } export namespace CreateProductVariants { - export type Variables = CreateProductVariantsMutationVariables; - export type Mutation = CreateProductVariantsMutation; - export type CreateProductVariants = NonNullable<(NonNullable)[number]>; + export type Variables = CreateProductVariantsMutationVariables; + export type Mutation = CreateProductVariantsMutation; + export type CreateProductVariants = NonNullable< + NonNullable[number] + >; } export namespace UpdateProductVariants { - export type Variables = UpdateProductVariantsMutationVariables; - export type Mutation = UpdateProductVariantsMutation; - export type UpdateProductVariants = NonNullable<(NonNullable)[number]>; + export type Variables = UpdateProductVariantsMutationVariables; + export type Mutation = UpdateProductVariantsMutation; + export type UpdateProductVariants = NonNullable< + NonNullable[number] + >; } export namespace UpdateTaxRate { - export type Variables = UpdateTaxRateMutationVariables; - export type Mutation = UpdateTaxRateMutation; - export type UpdateTaxRate = (NonNullable); + export type Variables = UpdateTaxRateMutationVariables; + export type Mutation = UpdateTaxRateMutation; + export type UpdateTaxRate = NonNullable; } export namespace CreateFacet { - export type Variables = CreateFacetMutationVariables; - export type Mutation = CreateFacetMutation; - export type CreateFacet = (NonNullable); + export type Variables = CreateFacetMutationVariables; + export type Mutation = CreateFacetMutation; + export type CreateFacet = NonNullable; } export namespace UpdateFacet { - export type Variables = UpdateFacetMutationVariables; - export type Mutation = UpdateFacetMutation; - export type UpdateFacet = (NonNullable); + export type Variables = UpdateFacetMutationVariables; + export type Mutation = UpdateFacetMutation; + export type UpdateFacet = NonNullable; } export namespace GetCustomerList { - export type Variables = GetCustomerListQueryVariables; - export type Query = GetCustomerListQuery; - export type Customers = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; - export type User = (NonNullable)['items']>)[number]>['user']>); + export type Variables = GetCustomerListQueryVariables; + export type Query = GetCustomerListQuery; + export type Customers = NonNullable; + export type Items = NonNullable< + NonNullable['items']>[number] + >; + export type User = NonNullable< + NonNullable['items']>[number]>['user'] + >; } export namespace GetAssetList { - export type Variables = GetAssetListQueryVariables; - export type Query = GetAssetListQuery; - export type Assets = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; + export type Variables = GetAssetListQueryVariables; + export type Query = GetAssetListQuery; + export type Assets = NonNullable; + export type Items = NonNullable['items']>[number]>; } export namespace CreateRole { - export type Variables = CreateRoleMutationVariables; - export type Mutation = CreateRoleMutation; - export type CreateRole = (NonNullable); + export type Variables = CreateRoleMutationVariables; + export type Mutation = CreateRoleMutation; + export type CreateRole = NonNullable; } export namespace CreateCollection { - export type Variables = CreateCollectionMutationVariables; - export type Mutation = CreateCollectionMutation; - export type CreateCollection = (NonNullable); + export type Variables = CreateCollectionMutationVariables; + export type Mutation = CreateCollectionMutation; + export type CreateCollection = NonNullable; } export namespace UpdateCollection { - export type Variables = UpdateCollectionMutationVariables; - export type Mutation = UpdateCollectionMutation; - export type UpdateCollection = (NonNullable); + export type Variables = UpdateCollectionMutationVariables; + export type Mutation = UpdateCollectionMutation; + export type UpdateCollection = NonNullable; } export namespace GetCustomer { - export type Variables = GetCustomerQueryVariables; - export type Query = GetCustomerQuery; - export type Customer = (NonNullable); - export type Orders = (NonNullable<(NonNullable)['orders']>); - export type Items = NonNullable<(NonNullable<(NonNullable<(NonNullable)['orders']>)['items']>)[number]>; + export type Variables = GetCustomerQueryVariables; + export type Query = GetCustomerQuery; + export type Customer = NonNullable; + export type Orders = NonNullable['orders']>; + export type Items = NonNullable< + NonNullable['orders']>['items']>[number] + >; } export namespace AttemptLogin { - export type Variables = AttemptLoginMutationVariables; - export type Mutation = AttemptLoginMutation; - export type Login = (NonNullable); + export type Variables = AttemptLoginMutationVariables; + export type Mutation = AttemptLoginMutation; + export type Login = NonNullable; } export namespace GetCountryList { - export type Variables = GetCountryListQueryVariables; - export type Query = GetCountryListQuery; - export type Countries = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; + export type Variables = GetCountryListQueryVariables; + export type Query = GetCountryListQuery; + export type Countries = NonNullable; + export type Items = NonNullable< + NonNullable['items']>[number] + >; } export namespace UpdateCountry { - export type Variables = UpdateCountryMutationVariables; - export type Mutation = UpdateCountryMutation; - export type UpdateCountry = (NonNullable); + export type Variables = UpdateCountryMutationVariables; + export type Mutation = UpdateCountryMutation; + export type UpdateCountry = NonNullable; } export namespace GetFacetList { - export type Variables = GetFacetListQueryVariables; - export type Query = GetFacetListQuery; - export type Facets = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; + export type Variables = GetFacetListQueryVariables; + export type Query = GetFacetListQuery; + export type Facets = NonNullable; + export type Items = NonNullable['items']>[number]>; } export namespace DeleteProduct { - export type Variables = DeleteProductMutationVariables; - export type Mutation = DeleteProductMutation; - export type DeleteProduct = (NonNullable); + export type Variables = DeleteProductMutationVariables; + export type Mutation = DeleteProductMutation; + export type DeleteProduct = NonNullable; } export namespace GetProductSimple { - export type Variables = GetProductSimpleQueryVariables; - export type Query = GetProductSimpleQuery; - export type Product = (NonNullable); + export type Variables = GetProductSimpleQueryVariables; + export type Query = GetProductSimpleQuery; + export type Product = NonNullable; } export namespace GetStockMovement { - export type Variables = GetStockMovementQueryVariables; - export type Query = GetStockMovementQuery; - export type Product = (NonNullable); - export type Variants = NonNullable<(NonNullable<(NonNullable)['variants']>)[number]>; + export type Variables = GetStockMovementQueryVariables; + export type Query = GetStockMovementQuery; + export type Product = NonNullable; + export type Variants = NonNullable< + NonNullable['variants']>[number] + >; } export namespace GetRunningJobs { - export type Variables = GetRunningJobsQueryVariables; - export type Query = GetRunningJobsQuery; - export type Jobs = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; + export type Variables = GetRunningJobsQueryVariables; + export type Query = GetRunningJobsQuery; + export type Jobs = NonNullable; + export type Items = NonNullable['items']>[number]>; } export namespace CreatePromotion { - export type Variables = CreatePromotionMutationVariables; - export type Mutation = CreatePromotionMutation; - export type CreatePromotion = (NonNullable); - export type ErrorResultInlineFragment = (DiscriminateUnion<(NonNullable), { __typename?: 'ErrorResult' }>); + export type Variables = CreatePromotionMutationVariables; + export type Mutation = CreatePromotionMutation; + export type CreatePromotion = NonNullable; + export type ErrorResultInlineFragment = DiscriminateUnion< + NonNullable, + { __typename?: 'ErrorResult' } + >; } export namespace Me { - export type Variables = MeQueryVariables; - export type Query = MeQuery; - export type Me = (NonNullable); + export type Variables = MeQueryVariables; + export type Query = MeQuery; + export type Me = NonNullable; } export namespace CreateChannel { - export type Variables = CreateChannelMutationVariables; - export type Mutation = CreateChannelMutation; - export type CreateChannel = (NonNullable); - export type LanguageNotAvailableErrorInlineFragment = (DiscriminateUnion<(NonNullable), { __typename?: 'LanguageNotAvailableError' }>); + export type Variables = CreateChannelMutationVariables; + export type Mutation = CreateChannelMutation; + export type CreateChannel = NonNullable; + export type LanguageNotAvailableErrorInlineFragment = DiscriminateUnion< + NonNullable, + { __typename?: 'LanguageNotAvailableError' } + >; } export namespace DeleteProductVariant { - export type Variables = DeleteProductVariantMutationVariables; - export type Mutation = DeleteProductVariantMutation; - export type DeleteProductVariant = (NonNullable); + export type Variables = DeleteProductVariantMutationVariables; + export type Mutation = DeleteProductVariantMutation; + export type DeleteProductVariant = NonNullable; } export namespace AssignProductsToChannel { - export type Variables = AssignProductsToChannelMutationVariables; - export type Mutation = AssignProductsToChannelMutation; - export type AssignProductsToChannel = NonNullable<(NonNullable)[number]>; + export type Variables = AssignProductsToChannelMutationVariables; + export type Mutation = AssignProductsToChannelMutation; + export type AssignProductsToChannel = NonNullable< + NonNullable[number] + >; } export namespace RemoveProductsFromChannel { - export type Variables = RemoveProductsFromChannelMutationVariables; - export type Mutation = RemoveProductsFromChannelMutation; - export type RemoveProductsFromChannel = NonNullable<(NonNullable)[number]>; + export type Variables = RemoveProductsFromChannelMutationVariables; + export type Mutation = RemoveProductsFromChannelMutation; + export type RemoveProductsFromChannel = NonNullable< + NonNullable[number] + >; } export namespace UpdateAsset { - export type Variables = UpdateAssetMutationVariables; - export type Mutation = UpdateAssetMutation; - export type UpdateAsset = (NonNullable); - export type AssetInlineFragment = ({ __typename: 'Asset' } & Pick<(NonNullable), 'focalPoint'>); - export type FocalPoint = (NonNullable<({ __typename: 'Asset' } & Pick<(NonNullable), 'focalPoint'>)['focalPoint']>); + export type Variables = UpdateAssetMutationVariables; + export type Mutation = UpdateAssetMutation; + export type UpdateAsset = NonNullable; + export type AssetInlineFragment = { __typename: 'Asset' } & Pick< + NonNullable, + 'focalPoint' + >; + export type FocalPoint = NonNullable< + ({ __typename: 'Asset' } & Pick< + NonNullable, + 'focalPoint' + >)['focalPoint'] + >; } export namespace DeleteAsset { - export type Variables = DeleteAssetMutationVariables; - export type Mutation = DeleteAssetMutation; - export type DeleteAsset = (NonNullable); + export type Variables = DeleteAssetMutationVariables; + export type Mutation = DeleteAssetMutation; + export type DeleteAsset = NonNullable; } export namespace UpdateChannel { - export type Variables = UpdateChannelMutationVariables; - export type Mutation = UpdateChannelMutation; - export type UpdateChannel = (NonNullable); - export type LanguageNotAvailableErrorInlineFragment = (DiscriminateUnion<(NonNullable), { __typename?: 'LanguageNotAvailableError' }>); + export type Variables = UpdateChannelMutationVariables; + export type Mutation = UpdateChannelMutation; + export type UpdateChannel = NonNullable; + export type LanguageNotAvailableErrorInlineFragment = DiscriminateUnion< + NonNullable, + { __typename?: 'LanguageNotAvailableError' } + >; } export namespace GetCustomerHistory { - export type Variables = GetCustomerHistoryQueryVariables; - export type Query = GetCustomerHistoryQuery; - export type Customer = (NonNullable); - export type History = (NonNullable<(NonNullable)['history']>); - export type Items = NonNullable<(NonNullable<(NonNullable<(NonNullable)['history']>)['items']>)[number]>; - export type Administrator = (NonNullable)['history']>)['items']>)[number]>['administrator']>); + export type Variables = GetCustomerHistoryQueryVariables; + export type Query = GetCustomerHistoryQuery; + export type Customer = NonNullable; + export type History = NonNullable['history']>; + export type Items = NonNullable< + NonNullable['history']>['items']>[number] + >; + export type Administrator = NonNullable< + NonNullable< + NonNullable< + NonNullable['history']>['items'] + >[number] + >['administrator'] + >; } export namespace GetOrder { - export type Variables = GetOrderQueryVariables; - export type Query = GetOrderQuery; - export type Order = (NonNullable); + export type Variables = GetOrderQueryVariables; + export type Query = GetOrderQuery; + export type Order = NonNullable; } export namespace CustomerGroup { - export type Fragment = CustomerGroupFragment; - export type Customers = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; + export type Fragment = CustomerGroupFragment; + export type Customers = NonNullable; + export type Items = NonNullable< + NonNullable['items']>[number] + >; } export namespace CreateCustomerGroup { - export type Variables = CreateCustomerGroupMutationVariables; - export type Mutation = CreateCustomerGroupMutation; - export type CreateCustomerGroup = (NonNullable); + export type Variables = CreateCustomerGroupMutationVariables; + export type Mutation = CreateCustomerGroupMutation; + export type CreateCustomerGroup = NonNullable; } export namespace RemoveCustomersFromGroup { - export type Variables = RemoveCustomersFromGroupMutationVariables; - export type Mutation = RemoveCustomersFromGroupMutation; - export type RemoveCustomersFromGroup = (NonNullable); + export type Variables = RemoveCustomersFromGroupMutationVariables; + export type Mutation = RemoveCustomersFromGroupMutation; + export type RemoveCustomersFromGroup = NonNullable< + RemoveCustomersFromGroupMutation['removeCustomersFromGroup'] + >; } export namespace CreateFulfillment { - export type Variables = CreateFulfillmentMutationVariables; - export type Mutation = CreateFulfillmentMutation; - export type AddFulfillmentToOrder = (NonNullable); - export type ErrorResultInlineFragment = (DiscriminateUnion<(NonNullable), { __typename?: 'ErrorResult' }>); + export type Variables = CreateFulfillmentMutationVariables; + export type Mutation = CreateFulfillmentMutation; + export type AddFulfillmentToOrder = NonNullable; + export type ErrorResultInlineFragment = DiscriminateUnion< + NonNullable, + { __typename?: 'ErrorResult' } + >; } export namespace TransitFulfillment { - export type Variables = TransitFulfillmentMutationVariables; - export type Mutation = TransitFulfillmentMutation; - export type TransitionFulfillmentToState = (NonNullable); - export type FulfillmentStateTransitionErrorInlineFragment = (DiscriminateUnion<(NonNullable), { __typename?: 'FulfillmentStateTransitionError' }>); + export type Variables = TransitFulfillmentMutationVariables; + export type Mutation = TransitFulfillmentMutation; + export type TransitionFulfillmentToState = NonNullable< + TransitFulfillmentMutation['transitionFulfillmentToState'] + >; + export type FulfillmentStateTransitionErrorInlineFragment = DiscriminateUnion< + NonNullable, + { __typename?: 'FulfillmentStateTransitionError' } + >; } export namespace GetOrderFulfillments { - export type Variables = GetOrderFulfillmentsQueryVariables; - export type Query = GetOrderFulfillmentsQuery; - export type Order = (NonNullable); - export type Fulfillments = NonNullable<(NonNullable<(NonNullable)['fulfillments']>)[number]>; + export type Variables = GetOrderFulfillmentsQueryVariables; + export type Query = GetOrderFulfillmentsQuery; + export type Order = NonNullable; + export type Fulfillments = NonNullable< + NonNullable['fulfillments']>[number] + >; } export namespace GetOrderList { - export type Variables = GetOrderListQueryVariables; - export type Query = GetOrderListQuery; - export type Orders = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; + export type Variables = GetOrderListQueryVariables; + export type Query = GetOrderListQuery; + export type Orders = NonNullable; + export type Items = NonNullable['items']>[number]>; } export namespace CreateAddress { - export type Variables = CreateAddressMutationVariables; - export type Mutation = CreateAddressMutation; - export type CreateCustomerAddress = (NonNullable); - export type Country = (NonNullable<(NonNullable)['country']>); + export type Variables = CreateAddressMutationVariables; + export type Mutation = CreateAddressMutation; + export type CreateCustomerAddress = NonNullable; + export type Country = NonNullable['country']>; } export namespace UpdateAddress { - export type Variables = UpdateAddressMutationVariables; - export type Mutation = UpdateAddressMutation; - export type UpdateCustomerAddress = (NonNullable); - export type Country = (NonNullable<(NonNullable)['country']>); + export type Variables = UpdateAddressMutationVariables; + export type Mutation = UpdateAddressMutation; + export type UpdateCustomerAddress = NonNullable; + export type Country = NonNullable['country']>; } export namespace CreateCustomer { - export type Variables = CreateCustomerMutationVariables; - export type Mutation = CreateCustomerMutation; - export type CreateCustomer = (NonNullable); - export type ErrorResultInlineFragment = (DiscriminateUnion<(NonNullable), { __typename?: 'ErrorResult' }>); + export type Variables = CreateCustomerMutationVariables; + export type Mutation = CreateCustomerMutation; + export type CreateCustomer = NonNullable; + export type ErrorResultInlineFragment = DiscriminateUnion< + NonNullable, + { __typename?: 'ErrorResult' } + >; } export namespace UpdateCustomer { - export type Variables = UpdateCustomerMutationVariables; - export type Mutation = UpdateCustomerMutation; - export type UpdateCustomer = (NonNullable); - export type ErrorResultInlineFragment = (DiscriminateUnion<(NonNullable), { __typename?: 'ErrorResult' }>); + export type Variables = UpdateCustomerMutationVariables; + export type Mutation = UpdateCustomerMutation; + export type UpdateCustomer = NonNullable; + export type ErrorResultInlineFragment = DiscriminateUnion< + NonNullable, + { __typename?: 'ErrorResult' } + >; } export namespace DeleteCustomer { - export type Variables = DeleteCustomerMutationVariables; - export type Mutation = DeleteCustomerMutation; - export type DeleteCustomer = (NonNullable); + export type Variables = DeleteCustomerMutationVariables; + export type Mutation = DeleteCustomerMutation; + export type DeleteCustomer = NonNullable; } export namespace UpdateCustomerNote { - export type Variables = UpdateCustomerNoteMutationVariables; - export type Mutation = UpdateCustomerNoteMutation; - export type UpdateCustomerNote = (NonNullable); + export type Variables = UpdateCustomerNoteMutationVariables; + export type Mutation = UpdateCustomerNoteMutation; + export type UpdateCustomerNote = NonNullable; } export namespace DeleteCustomerNote { - export type Variables = DeleteCustomerNoteMutationVariables; - export type Mutation = DeleteCustomerNoteMutation; - export type DeleteCustomerNote = (NonNullable); + export type Variables = DeleteCustomerNoteMutationVariables; + export type Mutation = DeleteCustomerNoteMutation; + export type DeleteCustomerNote = NonNullable; } export namespace UpdateCustomerGroup { - export type Variables = UpdateCustomerGroupMutationVariables; - export type Mutation = UpdateCustomerGroupMutation; - export type UpdateCustomerGroup = (NonNullable); + export type Variables = UpdateCustomerGroupMutationVariables; + export type Mutation = UpdateCustomerGroupMutation; + export type UpdateCustomerGroup = NonNullable; } export namespace DeleteCustomerGroup { - export type Variables = DeleteCustomerGroupMutationVariables; - export type Mutation = DeleteCustomerGroupMutation; - export type DeleteCustomerGroup = (NonNullable); + export type Variables = DeleteCustomerGroupMutationVariables; + export type Mutation = DeleteCustomerGroupMutation; + export type DeleteCustomerGroup = NonNullable; } export namespace GetCustomerGroups { - export type Variables = GetCustomerGroupsQueryVariables; - export type Query = GetCustomerGroupsQuery; - export type CustomerGroups = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; + export type Variables = GetCustomerGroupsQueryVariables; + export type Query = GetCustomerGroupsQuery; + export type CustomerGroups = NonNullable; + export type Items = NonNullable< + NonNullable['items']>[number] + >; } export namespace GetCustomerGroup { - export type Variables = GetCustomerGroupQueryVariables; - export type Query = GetCustomerGroupQuery; - export type CustomerGroup = (NonNullable); - export type Customers = (NonNullable<(NonNullable)['customers']>); - export type Items = NonNullable<(NonNullable<(NonNullable<(NonNullable)['customers']>)['items']>)[number]>; + export type Variables = GetCustomerGroupQueryVariables; + export type Query = GetCustomerGroupQuery; + export type CustomerGroup = NonNullable; + export type Customers = NonNullable['customers']>; + export type Items = NonNullable< + NonNullable< + NonNullable['customers']>['items'] + >[number] + >; } export namespace AddCustomersToGroup { - export type Variables = AddCustomersToGroupMutationVariables; - export type Mutation = AddCustomersToGroupMutation; - export type AddCustomersToGroup = (NonNullable); + export type Variables = AddCustomersToGroupMutationVariables; + export type Mutation = AddCustomersToGroupMutation; + export type AddCustomersToGroup = NonNullable; } export namespace GetCustomerWithGroups { - export type Variables = GetCustomerWithGroupsQueryVariables; - export type Query = GetCustomerWithGroupsQuery; - export type Customer = (NonNullable); - export type Groups = NonNullable<(NonNullable<(NonNullable)['groups']>)[number]>; + export type Variables = GetCustomerWithGroupsQueryVariables; + export type Query = GetCustomerWithGroupsQuery; + export type Customer = NonNullable; + export type Groups = NonNullable< + NonNullable['groups']>[number] + >; } export namespace AdminTransition { - export type Variables = AdminTransitionMutationVariables; - export type Mutation = AdminTransitionMutation; - export type TransitionOrderToState = (NonNullable); - export type OrderStateTransitionErrorInlineFragment = (DiscriminateUnion<(NonNullable), { __typename?: 'OrderStateTransitionError' }>); + export type Variables = AdminTransitionMutationVariables; + export type Mutation = AdminTransitionMutation; + export type TransitionOrderToState = NonNullable; + export type OrderStateTransitionErrorInlineFragment = DiscriminateUnion< + NonNullable, + { __typename?: 'OrderStateTransitionError' } + >; +} + +export namespace ProductOptionGroup { + export type Fragment = ProductOptionGroupFragment; + export type Options = NonNullable[number]>; + export type Translations = NonNullable[number]>; +} + +export namespace CreateProductOptionGroup { + export type Variables = CreateProductOptionGroupMutationVariables; + export type Mutation = CreateProductOptionGroupMutation; + export type CreateProductOptionGroup = NonNullable< + CreateProductOptionGroupMutation['createProductOptionGroup'] + >; +} + +export namespace ProductWithOptions { + export type Fragment = ProductWithOptionsFragment; + export type OptionGroups = NonNullable[number]>; + export type Options = NonNullable< + NonNullable< + NonNullable[number]>['options'] + >[number] + >; +} + +export namespace AddOptionGroupToProduct { + export type Variables = AddOptionGroupToProductMutationVariables; + export type Mutation = AddOptionGroupToProductMutation; + export type AddOptionGroupToProduct = NonNullable< + AddOptionGroupToProductMutation['addOptionGroupToProduct'] + >; } export namespace UpdateOptionGroup { - export type Variables = UpdateOptionGroupMutationVariables; - export type Mutation = UpdateOptionGroupMutation; - export type UpdateProductOptionGroup = (NonNullable); + export type Variables = UpdateOptionGroupMutationVariables; + export type Mutation = UpdateOptionGroupMutation; + export type UpdateProductOptionGroup = NonNullable; } export namespace DeletePromotionAdHoc1 { - export type Variables = DeletePromotionAdHoc1MutationVariables; - export type Mutation = DeletePromotionAdHoc1Mutation; - export type DeletePromotion = (NonNullable); + export type Variables = DeletePromotionAdHoc1MutationVariables; + export type Mutation = DeletePromotionAdHoc1Mutation; + export type DeletePromotion = NonNullable; } export namespace GetPromoProducts { - export type Variables = GetPromoProductsQueryVariables; - export type Query = GetPromoProductsQuery; - export type Products = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; - export type Variants = NonNullable<(NonNullable)['items']>)[number]>['variants']>)[number]>; - export type FacetValues = NonNullable<(NonNullable)['items']>)[number]>['variants']>)[number]>['facetValues']>)[number]>; + export type Variables = GetPromoProductsQueryVariables; + export type Query = GetPromoProductsQuery; + export type Products = NonNullable; + export type Items = NonNullable< + NonNullable['items']>[number] + >; + export type Variants = NonNullable< + NonNullable< + NonNullable< + NonNullable['items']>[number] + >['variants'] + >[number] + >; + export type FacetValues = NonNullable< + NonNullable< + NonNullable< + NonNullable< + NonNullable< + NonNullable['items']>[number] + >['variants'] + >[number] + >['facetValues'] + >[number] + >; } export namespace SettlePayment { - export type Variables = SettlePaymentMutationVariables; - export type Mutation = SettlePaymentMutation; - export type SettlePayment = (NonNullable); - export type ErrorResultInlineFragment = (DiscriminateUnion<(NonNullable), { __typename?: 'ErrorResult' }>); - export type SettlePaymentErrorInlineFragment = (DiscriminateUnion<(NonNullable), { __typename?: 'SettlePaymentError' }>); + export type Variables = SettlePaymentMutationVariables; + export type Mutation = SettlePaymentMutation; + export type SettlePayment = NonNullable; + export type ErrorResultInlineFragment = DiscriminateUnion< + NonNullable, + { __typename?: 'ErrorResult' } + >; + export type SettlePaymentErrorInlineFragment = DiscriminateUnion< + NonNullable, + { __typename?: 'SettlePaymentError' } + >; } export namespace Payment { - export type Fragment = PaymentFragment; + export type Fragment = PaymentFragment; } export namespace GetOrderListFulfillments { - export type Variables = GetOrderListFulfillmentsQueryVariables; - export type Query = GetOrderListFulfillmentsQuery; - export type Orders = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; - export type Fulfillments = NonNullable<(NonNullable)['items']>)[number]>['fulfillments']>)[number]>; + export type Variables = GetOrderListFulfillmentsQueryVariables; + export type Query = GetOrderListFulfillmentsQuery; + export type Orders = NonNullable; + export type Items = NonNullable< + NonNullable['items']>[number] + >; + export type Fulfillments = NonNullable< + NonNullable< + NonNullable< + NonNullable['items']>[number] + >['fulfillments'] + >[number] + >; } export namespace GetOrderFulfillmentItems { - export type Variables = GetOrderFulfillmentItemsQueryVariables; - export type Query = GetOrderFulfillmentItemsQuery; - export type Order = (NonNullable); - export type Fulfillments = NonNullable<(NonNullable<(NonNullable)['fulfillments']>)[number]>; + export type Variables = GetOrderFulfillmentItemsQueryVariables; + export type Query = GetOrderFulfillmentItemsQuery; + export type Order = NonNullable; + export type Fulfillments = NonNullable< + NonNullable['fulfillments']>[number] + >; } export namespace CancelOrder { - export type Variables = CancelOrderMutationVariables; - export type Mutation = CancelOrderMutation; - export type CancelOrder = (NonNullable); - export type ErrorResultInlineFragment = (DiscriminateUnion<(NonNullable), { __typename?: 'ErrorResult' }>); + export type Variables = CancelOrderMutationVariables; + export type Mutation = CancelOrderMutation; + export type CancelOrder = NonNullable; + export type ErrorResultInlineFragment = DiscriminateUnion< + NonNullable, + { __typename?: 'ErrorResult' } + >; } export namespace CanceledOrder { - export type Fragment = CanceledOrderFragment; - export type Lines = NonNullable<(NonNullable)[number]>; - export type Items = NonNullable<(NonNullable)[number]>['items']>)[number]>; + export type Fragment = CanceledOrderFragment; + export type Lines = NonNullable[number]>; + export type Items = NonNullable< + NonNullable[number]>['items']>[number] + >; } export namespace Refund { - export type Fragment = RefundFragment; + export type Fragment = RefundFragment; } export namespace RefundOrder { - export type Variables = RefundOrderMutationVariables; - export type Mutation = RefundOrderMutation; - export type RefundOrder = (NonNullable); - export type ErrorResultInlineFragment = (DiscriminateUnion<(NonNullable), { __typename?: 'ErrorResult' }>); + export type Variables = RefundOrderMutationVariables; + export type Mutation = RefundOrderMutation; + export type RefundOrder = NonNullable; + export type ErrorResultInlineFragment = DiscriminateUnion< + NonNullable, + { __typename?: 'ErrorResult' } + >; } export namespace SettleRefund { - export type Variables = SettleRefundMutationVariables; - export type Mutation = SettleRefundMutation; - export type SettleRefund = (NonNullable); - export type ErrorResultInlineFragment = (DiscriminateUnion<(NonNullable), { __typename?: 'ErrorResult' }>); + export type Variables = SettleRefundMutationVariables; + export type Mutation = SettleRefundMutation; + export type SettleRefund = NonNullable; + export type ErrorResultInlineFragment = DiscriminateUnion< + NonNullable, + { __typename?: 'ErrorResult' } + >; } export namespace GetOrderHistory { - export type Variables = GetOrderHistoryQueryVariables; - export type Query = GetOrderHistoryQuery; - export type Order = (NonNullable); - export type History = (NonNullable<(NonNullable)['history']>); - export type Items = NonNullable<(NonNullable<(NonNullable<(NonNullable)['history']>)['items']>)[number]>; - export type Administrator = (NonNullable)['history']>)['items']>)[number]>['administrator']>); + export type Variables = GetOrderHistoryQueryVariables; + export type Query = GetOrderHistoryQuery; + export type Order = NonNullable; + export type History = NonNullable['history']>; + export type Items = NonNullable< + NonNullable['history']>['items']>[number] + >; + export type Administrator = NonNullable< + NonNullable< + NonNullable['history']>['items']>[number] + >['administrator'] + >; } export namespace AddNoteToOrder { - export type Variables = AddNoteToOrderMutationVariables; - export type Mutation = AddNoteToOrderMutation; - export type AddNoteToOrder = (NonNullable); + export type Variables = AddNoteToOrderMutationVariables; + export type Mutation = AddNoteToOrderMutation; + export type AddNoteToOrder = NonNullable; } export namespace UpdateOrderNote { - export type Variables = UpdateOrderNoteMutationVariables; - export type Mutation = UpdateOrderNoteMutation; - export type UpdateOrderNote = (NonNullable); + export type Variables = UpdateOrderNoteMutationVariables; + export type Mutation = UpdateOrderNoteMutation; + export type UpdateOrderNote = NonNullable; } export namespace DeleteOrderNote { - export type Variables = DeleteOrderNoteMutationVariables; - export type Mutation = DeleteOrderNoteMutation; - export type DeleteOrderNote = (NonNullable); + export type Variables = DeleteOrderNoteMutationVariables; + export type Mutation = DeleteOrderNoteMutation; + export type DeleteOrderNote = NonNullable; } export namespace GetOrderWithPayments { - export type Variables = GetOrderWithPaymentsQueryVariables; - export type Query = GetOrderWithPaymentsQuery; - export type Order = (NonNullable); - export type Payments = NonNullable<(NonNullable<(NonNullable)['payments']>)[number]>; -} - -export namespace ProductOptionGroup { - export type Fragment = ProductOptionGroupFragment; - export type Options = NonNullable<(NonNullable)[number]>; - export type Translations = NonNullable<(NonNullable)[number]>; -} - -export namespace CreateProductOptionGroup { - export type Variables = CreateProductOptionGroupMutationVariables; - export type Mutation = CreateProductOptionGroupMutation; - export type CreateProductOptionGroup = (NonNullable); + export type Variables = GetOrderWithPaymentsQueryVariables; + export type Query = GetOrderWithPaymentsQuery; + export type Order = NonNullable; + export type Payments = NonNullable< + NonNullable['payments']>[number] + >; } export namespace UpdateProductOptionGroup { - export type Variables = UpdateProductOptionGroupMutationVariables; - export type Mutation = UpdateProductOptionGroupMutation; - export type UpdateProductOptionGroup = (NonNullable); + export type Variables = UpdateProductOptionGroupMutationVariables; + export type Mutation = UpdateProductOptionGroupMutation; + export type UpdateProductOptionGroup = NonNullable< + UpdateProductOptionGroupMutation['updateProductOptionGroup'] + >; } export namespace CreateProductOption { - export type Variables = CreateProductOptionMutationVariables; - export type Mutation = CreateProductOptionMutation; - export type CreateProductOption = (NonNullable); - export type Translations = NonNullable<(NonNullable<(NonNullable)['translations']>)[number]>; + export type Variables = CreateProductOptionMutationVariables; + export type Mutation = CreateProductOptionMutation; + export type CreateProductOption = NonNullable; + export type Translations = NonNullable< + NonNullable['translations']>[number] + >; } export namespace UpdateProductOption { - export type Variables = UpdateProductOptionMutationVariables; - export type Mutation = UpdateProductOptionMutation; - export type UpdateProductOption = (NonNullable); -} - -export namespace ProductWithOptions { - export type Fragment = ProductWithOptionsFragment; - export type OptionGroups = NonNullable<(NonNullable)[number]>; - export type Options = NonNullable<(NonNullable)[number]>['options']>)[number]>; -} - -export namespace AddOptionGroupToProduct { - export type Variables = AddOptionGroupToProductMutationVariables; - export type Mutation = AddOptionGroupToProductMutation; - export type AddOptionGroupToProduct = (NonNullable); + export type Variables = UpdateProductOptionMutationVariables; + export type Mutation = UpdateProductOptionMutation; + export type UpdateProductOption = NonNullable; } export namespace RemoveOptionGroupFromProduct { - export type Variables = RemoveOptionGroupFromProductMutationVariables; - export type Mutation = RemoveOptionGroupFromProductMutation; - export type RemoveOptionGroupFromProduct = (NonNullable); - export type ProductOptionInUseErrorInlineFragment = (DiscriminateUnion<(NonNullable), { __typename?: 'ProductOptionInUseError' }>); + export type Variables = RemoveOptionGroupFromProductMutationVariables; + export type Mutation = RemoveOptionGroupFromProductMutation; + export type RemoveOptionGroupFromProduct = NonNullable< + RemoveOptionGroupFromProductMutation['removeOptionGroupFromProduct'] + >; + export type ProductOptionInUseErrorInlineFragment = DiscriminateUnion< + NonNullable, + { __typename?: 'ProductOptionInUseError' } + >; } export namespace GetOptionGroup { - export type Variables = GetOptionGroupQueryVariables; - export type Query = GetOptionGroupQuery; - export type ProductOptionGroup = (NonNullable); - export type Options = NonNullable<(NonNullable<(NonNullable)['options']>)[number]>; + export type Variables = GetOptionGroupQueryVariables; + export type Query = GetOptionGroupQuery; + export type ProductOptionGroup = NonNullable; + export type Options = NonNullable< + NonNullable['options']>[number] + >; } export namespace GetProductVariant { - export type Variables = GetProductVariantQueryVariables; - export type Query = GetProductVariantQuery; - export type ProductVariant = (NonNullable); + export type Variables = GetProductVariantQueryVariables; + export type Query = GetProductVariantQuery; + export type ProductVariant = NonNullable; } export namespace DeletePromotion { - export type Variables = DeletePromotionMutationVariables; - export type Mutation = DeletePromotionMutation; - export type DeletePromotion = (NonNullable); + export type Variables = DeletePromotionMutationVariables; + export type Mutation = DeletePromotionMutation; + export type DeletePromotion = NonNullable; } export namespace GetPromotionList { - export type Variables = GetPromotionListQueryVariables; - export type Query = GetPromotionListQuery; - export type Promotions = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; + export type Variables = GetPromotionListQueryVariables; + export type Query = GetPromotionListQuery; + export type Promotions = NonNullable; + export type Items = NonNullable< + NonNullable['items']>[number] + >; } export namespace GetPromotion { - export type Variables = GetPromotionQueryVariables; - export type Query = GetPromotionQuery; - export type Promotion = (NonNullable); + export type Variables = GetPromotionQueryVariables; + export type Query = GetPromotionQuery; + export type Promotion = NonNullable; } export namespace UpdatePromotion { - export type Variables = UpdatePromotionMutationVariables; - export type Mutation = UpdatePromotionMutation; - export type UpdatePromotion = (NonNullable); - export type ErrorResultInlineFragment = (DiscriminateUnion<(NonNullable), { __typename?: 'ErrorResult' }>); + export type Variables = UpdatePromotionMutationVariables; + export type Mutation = UpdatePromotionMutation; + export type UpdatePromotion = NonNullable; + export type ErrorResultInlineFragment = DiscriminateUnion< + NonNullable, + { __typename?: 'ErrorResult' } + >; } export namespace ConfigurableOperationDef { - export type Fragment = ConfigurableOperationDefFragment; - export type Args = NonNullable<(NonNullable)[number]>; + export type Fragment = ConfigurableOperationDefFragment; + export type Args = NonNullable[number]>; } export namespace GetAdjustmentOperations { - export type Variables = GetAdjustmentOperationsQueryVariables; - export type Query = GetAdjustmentOperationsQuery; - export type PromotionActions = NonNullable<(NonNullable)[number]>; - export type PromotionConditions = NonNullable<(NonNullable)[number]>; + export type Variables = GetAdjustmentOperationsQueryVariables; + export type Query = GetAdjustmentOperationsQuery; + export type PromotionActions = NonNullable< + NonNullable[number] + >; + export type PromotionConditions = NonNullable< + NonNullable[number] + >; } export namespace GetRoles { - export type Variables = GetRolesQueryVariables; - export type Query = GetRolesQuery; - export type Roles = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; + export type Variables = GetRolesQueryVariables; + export type Query = GetRolesQuery; + export type Roles = NonNullable; + export type Items = NonNullable['items']>[number]>; } export namespace GetRole { - export type Variables = GetRoleQueryVariables; - export type Query = GetRoleQuery; - export type Role = (NonNullable); + export type Variables = GetRoleQueryVariables; + export type Query = GetRoleQuery; + export type Role = NonNullable; } export namespace UpdateRole { - export type Variables = UpdateRoleMutationVariables; - export type Mutation = UpdateRoleMutation; - export type UpdateRole = (NonNullable); + export type Variables = UpdateRoleMutationVariables; + export type Mutation = UpdateRoleMutation; + export type UpdateRole = NonNullable; } export namespace DeleteRole { - export type Variables = DeleteRoleMutationVariables; - export type Mutation = DeleteRoleMutation; - export type DeleteRole = (NonNullable); + export type Variables = DeleteRoleMutationVariables; + export type Mutation = DeleteRoleMutation; + export type DeleteRole = NonNullable; } export namespace Logout { - export type Variables = LogoutMutationVariables; - export type Mutation = LogoutMutation; - export type Logout = (NonNullable); + export type Variables = LogoutMutationVariables; + export type Mutation = LogoutMutation; + export type Logout = NonNullable; } export namespace ShippingMethod { - export type Fragment = ShippingMethodFragment; - export type Calculator = (NonNullable); - export type Checker = (NonNullable); + export type Fragment = ShippingMethodFragment; + export type Calculator = NonNullable; + export type Checker = NonNullable; } export namespace GetShippingMethodList { - export type Variables = GetShippingMethodListQueryVariables; - export type Query = GetShippingMethodListQuery; - export type ShippingMethods = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; + export type Variables = GetShippingMethodListQueryVariables; + export type Query = GetShippingMethodListQuery; + export type ShippingMethods = NonNullable; + export type Items = NonNullable< + NonNullable['items']>[number] + >; } export namespace GetShippingMethod { - export type Variables = GetShippingMethodQueryVariables; - export type Query = GetShippingMethodQuery; - export type ShippingMethod = (NonNullable); + export type Variables = GetShippingMethodQueryVariables; + export type Query = GetShippingMethodQuery; + export type ShippingMethod = NonNullable; } export namespace CreateShippingMethod { - export type Variables = CreateShippingMethodMutationVariables; - export type Mutation = CreateShippingMethodMutation; - export type CreateShippingMethod = (NonNullable); + export type Variables = CreateShippingMethodMutationVariables; + export type Mutation = CreateShippingMethodMutation; + export type CreateShippingMethod = NonNullable; } export namespace UpdateShippingMethod { - export type Variables = UpdateShippingMethodMutationVariables; - export type Mutation = UpdateShippingMethodMutation; - export type UpdateShippingMethod = (NonNullable); + export type Variables = UpdateShippingMethodMutationVariables; + export type Mutation = UpdateShippingMethodMutation; + export type UpdateShippingMethod = NonNullable; } export namespace DeleteShippingMethod { - export type Variables = DeleteShippingMethodMutationVariables; - export type Mutation = DeleteShippingMethodMutation; - export type DeleteShippingMethod = (NonNullable); + export type Variables = DeleteShippingMethodMutationVariables; + export type Mutation = DeleteShippingMethodMutation; + export type DeleteShippingMethod = NonNullable; } export namespace GetEligibilityCheckers { - export type Variables = GetEligibilityCheckersQueryVariables; - export type Query = GetEligibilityCheckersQuery; - export type ShippingEligibilityCheckers = NonNullable<(NonNullable)[number]>; - export type Args = NonNullable<(NonNullable)[number]>['args']>)[number]>; + export type Variables = GetEligibilityCheckersQueryVariables; + export type Query = GetEligibilityCheckersQuery; + export type ShippingEligibilityCheckers = NonNullable< + NonNullable[number] + >; + export type Args = NonNullable< + NonNullable< + NonNullable< + NonNullable[number] + >['args'] + >[number] + >; } export namespace GetCalculators { - export type Variables = GetCalculatorsQueryVariables; - export type Query = GetCalculatorsQuery; - export type ShippingCalculators = NonNullable<(NonNullable)[number]>; - export type Args = NonNullable<(NonNullable)[number]>['args']>)[number]>; + export type Variables = GetCalculatorsQueryVariables; + export type Query = GetCalculatorsQuery; + export type ShippingCalculators = NonNullable< + NonNullable[number] + >; + export type Args = NonNullable< + NonNullable< + NonNullable[number]>['args'] + >[number] + >; } export namespace TestShippingMethod { - export type Variables = TestShippingMethodQueryVariables; - export type Query = TestShippingMethodQuery; - export type TestShippingMethod = (NonNullable); - export type Quote = (NonNullable<(NonNullable)['quote']>); + export type Variables = TestShippingMethodQueryVariables; + export type Query = TestShippingMethodQuery; + export type TestShippingMethod = NonNullable; + export type Quote = NonNullable['quote']>; } export namespace TestEligibleMethods { - export type Variables = TestEligibleMethodsQueryVariables; - export type Query = TestEligibleMethodsQuery; - export type TestEligibleShippingMethods = NonNullable<(NonNullable)[number]>; + export type Variables = TestEligibleMethodsQueryVariables; + export type Query = TestEligibleMethodsQuery; + export type TestEligibleShippingMethods = NonNullable< + NonNullable[number] + >; } export namespace GetMe { - export type Variables = GetMeQueryVariables; - export type Query = GetMeQuery; - export type Me = (NonNullable); + export type Variables = GetMeQueryVariables; + export type Query = GetMeQuery; + export type Me = NonNullable; } export namespace GetProductsTake3 { - export type Variables = GetProductsTake3QueryVariables; - export type Query = GetProductsTake3Query; - export type Products = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; + export type Variables = GetProductsTake3QueryVariables; + export type Query = GetProductsTake3Query; + export type Products = NonNullable; + export type Items = NonNullable< + NonNullable['items']>[number] + >; } export namespace GetProduct1 { - export type Variables = GetProduct1QueryVariables; - export type Query = GetProduct1Query; - export type Product = (NonNullable); + export type Variables = GetProduct1QueryVariables; + export type Query = GetProduct1Query; + export type Product = NonNullable; } export namespace GetProduct2Variants { - export type Variables = GetProduct2VariantsQueryVariables; - export type Query = GetProduct2VariantsQuery; - export type Product = (NonNullable); - export type Variants = NonNullable<(NonNullable<(NonNullable)['variants']>)[number]>; + export type Variables = GetProduct2VariantsQueryVariables; + export type Query = GetProduct2VariantsQuery; + export type Product = NonNullable; + export type Variants = NonNullable< + NonNullable['variants']>[number] + >; } export namespace GetProductCollection { - export type Variables = GetProductCollectionQueryVariables; - export type Query = GetProductCollectionQuery; - export type Product = (NonNullable); - export type Collections = NonNullable<(NonNullable<(NonNullable)['collections']>)[number]>; + export type Variables = GetProductCollectionQueryVariables; + export type Query = GetProductCollectionQuery; + export type Product = NonNullable; + export type Collections = NonNullable< + NonNullable['collections']>[number] + >; } export namespace DisableProduct { - export type Variables = DisableProductMutationVariables; - export type Mutation = DisableProductMutation; - export type UpdateProduct = (NonNullable); + export type Variables = DisableProductMutationVariables; + export type Mutation = DisableProductMutation; + export type UpdateProduct = NonNullable; } export namespace GetCollectionVariants { - export type Variables = GetCollectionVariantsQueryVariables; - export type Query = GetCollectionVariantsQuery; - export type Collection = (NonNullable); - export type ProductVariants = (NonNullable<(NonNullable)['productVariants']>); - export type Items = NonNullable<(NonNullable<(NonNullable<(NonNullable)['productVariants']>)['items']>)[number]>; + export type Variables = GetCollectionVariantsQueryVariables; + export type Query = GetCollectionVariantsQuery; + export type Collection = NonNullable; + export type ProductVariants = NonNullable< + NonNullable['productVariants'] + >; + export type Items = NonNullable< + NonNullable< + NonNullable['productVariants']>['items'] + >[number] + >; } export namespace GetCollectionList { - export type Variables = GetCollectionListQueryVariables; - export type Query = GetCollectionListQuery; - export type Collections = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; + export type Variables = GetCollectionListQueryVariables; + export type Query = GetCollectionListQuery; + export type Collections = NonNullable; + export type Items = NonNullable< + NonNullable['items']>[number] + >; } export namespace GetProductFacetValues { - export type Variables = GetProductFacetValuesQueryVariables; - export type Query = GetProductFacetValuesQuery; - export type Product = (NonNullable); - export type FacetValues = NonNullable<(NonNullable<(NonNullable)['facetValues']>)[number]>; + export type Variables = GetProductFacetValuesQueryVariables; + export type Query = GetProductFacetValuesQuery; + export type Product = NonNullable; + export type FacetValues = NonNullable< + NonNullable['facetValues']>[number] + >; } export namespace GetVariantFacetValues { - export type Variables = GetVariantFacetValuesQueryVariables; - export type Query = GetVariantFacetValuesQuery; - export type Product = (NonNullable); - export type Variants = NonNullable<(NonNullable<(NonNullable)['variants']>)[number]>; - export type FacetValues = NonNullable<(NonNullable)['variants']>)[number]>['facetValues']>)[number]>; + export type Variables = GetVariantFacetValuesQueryVariables; + export type Query = GetVariantFacetValuesQuery; + export type Product = NonNullable; + export type Variants = NonNullable< + NonNullable['variants']>[number] + >; + export type FacetValues = NonNullable< + NonNullable< + NonNullable< + NonNullable['variants']>[number] + >['facetValues'] + >[number] + >; } export namespace GetCustomerIds { - export type Variables = GetCustomerIdsQueryVariables; - export type Query = GetCustomerIdsQuery; - export type Customers = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; + export type Variables = GetCustomerIdsQueryVariables; + export type Query = GetCustomerIdsQuery; + export type Customers = NonNullable; + export type Items = NonNullable< + NonNullable['items']>[number] + >; } export namespace UpdateStock { - export type Variables = UpdateStockMutationVariables; - export type Mutation = UpdateStockMutation; - export type UpdateProductVariants = NonNullable<(NonNullable)[number]>; + export type Variables = UpdateStockMutationVariables; + export type Mutation = UpdateStockMutation; + export type UpdateProductVariants = NonNullable< + NonNullable[number] + >; } export namespace GetTaxCategoryList { - export type Variables = GetTaxCategoryListQueryVariables; - export type Query = GetTaxCategoryListQuery; - export type TaxCategories = NonNullable<(NonNullable)[number]>; + export type Variables = GetTaxCategoryListQueryVariables; + export type Query = GetTaxCategoryListQuery; + export type TaxCategories = NonNullable[number]>; } export namespace GetTaxCategory { - export type Variables = GetTaxCategoryQueryVariables; - export type Query = GetTaxCategoryQuery; - export type TaxCategory = (NonNullable); + export type Variables = GetTaxCategoryQueryVariables; + export type Query = GetTaxCategoryQuery; + export type TaxCategory = NonNullable; } export namespace CreateTaxCategory { - export type Variables = CreateTaxCategoryMutationVariables; - export type Mutation = CreateTaxCategoryMutation; - export type CreateTaxCategory = (NonNullable); + export type Variables = CreateTaxCategoryMutationVariables; + export type Mutation = CreateTaxCategoryMutation; + export type CreateTaxCategory = NonNullable; } export namespace UpdateTaxCategory { - export type Variables = UpdateTaxCategoryMutationVariables; - export type Mutation = UpdateTaxCategoryMutation; - export type UpdateTaxCategory = (NonNullable); + export type Variables = UpdateTaxCategoryMutationVariables; + export type Mutation = UpdateTaxCategoryMutation; + export type UpdateTaxCategory = NonNullable; } export namespace DeleteTaxCategory { - export type Variables = DeleteTaxCategoryMutationVariables; - export type Mutation = DeleteTaxCategoryMutation; - export type DeleteTaxCategory = (NonNullable); + export type Variables = DeleteTaxCategoryMutationVariables; + export type Mutation = DeleteTaxCategoryMutation; + export type DeleteTaxCategory = NonNullable; } export namespace GetTaxRates { - export type Variables = GetTaxRatesQueryVariables; - export type Query = GetTaxRatesQuery; - export type TaxRates = (NonNullable); - export type Items = NonNullable<(NonNullable<(NonNullable)['items']>)[number]>; + export type Variables = GetTaxRatesQueryVariables; + export type Query = GetTaxRatesQuery; + export type TaxRates = NonNullable; + export type Items = NonNullable['items']>[number]>; } export namespace GetTaxRate { - export type Variables = GetTaxRateQueryVariables; - export type Query = GetTaxRateQuery; - export type TaxRate = (NonNullable); + export type Variables = GetTaxRateQueryVariables; + export type Query = GetTaxRateQuery; + export type TaxRate = NonNullable; } export namespace CreateTaxRate { - export type Variables = CreateTaxRateMutationVariables; - export type Mutation = CreateTaxRateMutation; - export type CreateTaxRate = (NonNullable); + export type Variables = CreateTaxRateMutationVariables; + export type Mutation = CreateTaxRateMutation; + export type CreateTaxRate = NonNullable; } export namespace DeleteTaxRate { - export type Variables = DeleteTaxRateMutationVariables; - export type Mutation = DeleteTaxRateMutation; - export type DeleteTaxRate = (NonNullable); + export type Variables = DeleteTaxRateMutationVariables; + export type Mutation = DeleteTaxRateMutation; + export type DeleteTaxRate = NonNullable; } export namespace DeleteZone { - export type Variables = DeleteZoneMutationVariables; - export type Mutation = DeleteZoneMutation; - export type DeleteZone = (NonNullable); + export type Variables = DeleteZoneMutationVariables; + export type Mutation = DeleteZoneMutation; + export type DeleteZone = NonNullable; } export namespace GetZones { - export type Variables = GetZonesQueryVariables; - export type Query = GetZonesQuery; - export type Zones = NonNullable<(NonNullable)[number]>; + export type Variables = GetZonesQueryVariables; + export type Query = GetZonesQuery; + export type Zones = NonNullable[number]>; } export namespace GetZone { - export type Variables = GetZoneQueryVariables; - export type Query = GetZoneQuery; - export type Zone = (NonNullable); + export type Variables = GetZoneQueryVariables; + export type Query = GetZoneQuery; + export type Zone = NonNullable; } export namespace CreateZone { - export type Variables = CreateZoneMutationVariables; - export type Mutation = CreateZoneMutation; - export type CreateZone = (NonNullable); + export type Variables = CreateZoneMutationVariables; + export type Mutation = CreateZoneMutation; + export type CreateZone = NonNullable; } export namespace UpdateZone { - export type Variables = UpdateZoneMutationVariables; - export type Mutation = UpdateZoneMutation; - export type UpdateZone = (NonNullable); + export type Variables = UpdateZoneMutationVariables; + export type Mutation = UpdateZoneMutation; + export type UpdateZone = NonNullable; } export namespace AddMembersToZone { - export type Variables = AddMembersToZoneMutationVariables; - export type Mutation = AddMembersToZoneMutation; - export type AddMembersToZone = (NonNullable); + export type Variables = AddMembersToZoneMutationVariables; + export type Mutation = AddMembersToZoneMutation; + export type AddMembersToZone = NonNullable; } export namespace RemoveMembersFromZone { - export type Variables = RemoveMembersFromZoneMutationVariables; - export type Mutation = RemoveMembersFromZoneMutation; - export type RemoveMembersFromZone = (NonNullable); + export type Variables = RemoveMembersFromZoneMutationVariables; + export type Mutation = RemoveMembersFromZoneMutation; + export type RemoveMembersFromZone = NonNullable; } diff --git a/packages/core/e2e/graphql/shared-definitions.ts b/packages/core/e2e/graphql/shared-definitions.ts index d0fc9acdcc..e78b4a5b64 100644 --- a/packages/core/e2e/graphql/shared-definitions.ts +++ b/packages/core/e2e/graphql/shared-definitions.ts @@ -669,3 +669,53 @@ export const ADMIN_TRANSITION_TO_STATE = gql` } ${ORDER_FRAGMENT} `; + +export const PRODUCT_OPTION_GROUP_FRAGMENT = gql` + fragment ProductOptionGroup on ProductOptionGroup { + id + code + name + options { + id + code + name + } + translations { + id + languageCode + name + } + } +`; + +export const CREATE_PRODUCT_OPTION_GROUP = gql` + mutation CreateProductOptionGroup($input: CreateProductOptionGroupInput!) { + createProductOptionGroup(input: $input) { + ...ProductOptionGroup + } + } + ${PRODUCT_OPTION_GROUP_FRAGMENT} +`; + +export const PRODUCT_WITH_OPTIONS_FRAGMENT = gql` + fragment ProductWithOptions on Product { + id + optionGroups { + id + code + options { + id + code + } + } + } +`; + +export const ADD_OPTION_GROUP_TO_PRODUCT = gql` + mutation AddOptionGroupToProduct($productId: ID!, $optionGroupId: ID!) { + addOptionGroupToProduct(productId: $productId, optionGroupId: $optionGroupId) { + ...ProductWithOptions + } + } + ${PRODUCT_WITH_OPTIONS_FRAGMENT} +`; diff --git a/packages/core/e2e/parallel-transactions.e2e-spec.ts b/packages/core/e2e/parallel-transactions.e2e-spec.ts new file mode 100644 index 0000000000..f4d6f8949e --- /dev/null +++ b/packages/core/e2e/parallel-transactions.e2e-spec.ts @@ -0,0 +1,143 @@ +import gql from 'graphql-tag'; +import path from 'path'; + +import { initialData } from '../../../e2e-common/e2e-initial-data'; +import { testConfig, TEST_SETUP_TIMEOUT_MS } from '../../../e2e-common/test-config'; +import { createTestEnvironment } from '../../testing/lib/create-test-environment'; + +import { SlowMutationPlugin } from './fixtures/test-plugins/slow-mutation-plugin'; +import { + AddOptionGroupToProduct, + CreateProduct, + CreateProductOptionGroup, + CreateProductVariants, + LanguageCode, +} from './graphql/generated-e2e-admin-types'; +import { + ADD_OPTION_GROUP_TO_PRODUCT, + CREATE_PRODUCT, + CREATE_PRODUCT_OPTION_GROUP, + CREATE_PRODUCT_VARIANTS, +} from './graphql/shared-definitions'; + +describe('Parallel transactions', () => { + const { server, adminClient, shopClient } = createTestEnvironment({ + ...testConfig, + plugins: [SlowMutationPlugin], + }); + + beforeAll(async () => { + await server.init({ + initialData, + productsCsvPath: path.join(__dirname, 'fixtures/e2e-products-minimal.csv'), + customerCount: 2, + }); + await adminClient.asSuperAdmin(); + }, TEST_SETUP_TIMEOUT_MS); + + afterAll(async () => { + await server.destroy(); + }); + + it('does not fail on many concurrent, slow transactions', async () => { + const CONCURRENCY_LIMIT = 20; + + const slowMutations = Array.from({ length: CONCURRENCY_LIMIT }).map(i => + adminClient.query(SLOW_MUTATION, { delay: 50 }), + ); + const result = await Promise.all(slowMutations); + + expect(result).toEqual(Array.from({ length: CONCURRENCY_LIMIT }).map(() => ({ slowMutation: true }))); + }, 100000); + + it('does not fail on attempted deadlock', async () => { + const CONCURRENCY_LIMIT = 4; + + const slowMutations = Array.from({ length: CONCURRENCY_LIMIT }).map(i => + adminClient.query(ATTEMPT_DEADLOCK), + ); + const result = await Promise.all(slowMutations); + + expect(result).toEqual( + Array.from({ length: CONCURRENCY_LIMIT }).map(() => ({ attemptDeadlock: true })), + ); + }, 100000); + + // A real-world error-case originally reported in https://github.com/vendure-ecommerce/vendure/issues/527 + it('does not deadlock on concurrent creating ProductVariants', async () => { + const CONCURRENCY_LIMIT = 4; + + const { createProduct } = await adminClient.query( + CREATE_PRODUCT, + { + input: { + translations: [ + { languageCode: LanguageCode.en, name: 'Test', slug: 'test', description: 'test' }, + ], + }, + }, + ); + + const sizes = Array.from({ length: CONCURRENCY_LIMIT }).map(i => `size-${i}`); + + const { createProductOptionGroup } = await adminClient.query< + CreateProductOptionGroup.Mutation, + CreateProductOptionGroup.Variables + >(CREATE_PRODUCT_OPTION_GROUP, { + input: { + code: 'size', + options: sizes.map(size => ({ + code: size, + translations: [{ languageCode: LanguageCode.en, name: size }], + })), + translations: [{ languageCode: LanguageCode.en, name: 'size' }], + }, + }); + + await adminClient.query( + ADD_OPTION_GROUP_TO_PRODUCT, + { + productId: createProduct.id, + optionGroupId: createProductOptionGroup.id, + }, + ); + + const createVariantMutations = createProductOptionGroup.options + .filter((_, index) => index < CONCURRENCY_LIMIT) + .map((option, i) => { + return adminClient.query( + CREATE_PRODUCT_VARIANTS, + { + input: [ + { + sku: `VARIANT-${i}`, + productId: createProduct.id, + optionIds: [option.id], + translations: [{ languageCode: LanguageCode.en, name: `Variant ${i}` }], + price: 1000, + taxCategoryId: 'T_1', + facetValueIds: ['T_1', 'T_2'], + featuredAssetId: 'T_1', + assetIds: ['T_1'], + }, + ], + }, + ); + }); + + const results = await Promise.all(createVariantMutations); + expect(results.length).toBe(CONCURRENCY_LIMIT); + }, 100000); +}); + +const SLOW_MUTATION = gql` + mutation SlowMutation($delay: Int!) { + slowMutation(delay: $delay) + } +`; + +const ATTEMPT_DEADLOCK = gql` + mutation AttemptDeadlock { + attemptDeadlock + } +`; diff --git a/packages/core/e2e/product-option.e2e-spec.ts b/packages/core/e2e/product-option.e2e-spec.ts index 2854d10b3d..9f26e2c8c9 100644 --- a/packages/core/e2e/product-option.e2e-spec.ts +++ b/packages/core/e2e/product-option.e2e-spec.ts @@ -3,7 +3,7 @@ import gql from 'graphql-tag'; import path from 'path'; import { initialData } from '../../../e2e-common/e2e-initial-data'; -import { TEST_SETUP_TIMEOUT_MS, testConfig } from '../../../e2e-common/test-config'; +import { testConfig, TEST_SETUP_TIMEOUT_MS } from '../../../e2e-common/test-config'; import { omit } from '../../common/lib/omit'; import { @@ -14,6 +14,7 @@ import { UpdateProductOption, UpdateProductOptionGroup, } from './graphql/generated-e2e-admin-types'; +import { CREATE_PRODUCT_OPTION_GROUP, PRODUCT_OPTION_GROUP_FRAGMENT } from './graphql/shared-definitions'; import { assertThrowsWithMessage } from './utils/assert-throws-with-message'; // tslint:disable:no-non-null-assertion @@ -150,33 +151,6 @@ describe('ProductOption resolver', () => { }); }); -const PRODUCT_OPTION_GROUP_FRAGMENT = gql` - fragment ProductOptionGroup on ProductOptionGroup { - id - code - name - options { - id - code - name - } - translations { - id - languageCode - name - } - } -`; - -const CREATE_PRODUCT_OPTION_GROUP = gql` - mutation CreateProductOptionGroup($input: CreateProductOptionGroupInput!) { - createProductOptionGroup(input: $input) { - ...ProductOptionGroup - } - } - ${PRODUCT_OPTION_GROUP_FRAGMENT} -`; - const UPDATE_PRODUCT_OPTION_GROUP = gql` mutation UpdateProductOptionGroup($input: UpdateProductOptionGroupInput!) { updateProductOptionGroup(input: $input) { diff --git a/packages/core/e2e/product.e2e-spec.ts b/packages/core/e2e/product.e2e-spec.ts index eab8d7f477..f652b73be9 100644 --- a/packages/core/e2e/product.e2e-spec.ts +++ b/packages/core/e2e/product.e2e-spec.ts @@ -6,7 +6,7 @@ import gql from 'graphql-tag'; import path from 'path'; import { initialData } from '../../../e2e-common/e2e-initial-data'; -import { TEST_SETUP_TIMEOUT_MS, testConfig } from '../../../e2e-common/test-config'; +import { testConfig, TEST_SETUP_TIMEOUT_MS } from '../../../e2e-common/test-config'; import { AddOptionGroupToProduct, @@ -32,6 +32,7 @@ import { UpdateProductVariants, } from './graphql/generated-e2e-admin-types'; import { + ADD_OPTION_GROUP_TO_PRODUCT, CREATE_PRODUCT, CREATE_PRODUCT_VARIANTS, DELETE_PRODUCT, @@ -40,11 +41,11 @@ import { GET_PRODUCT_LIST, GET_PRODUCT_SIMPLE, GET_PRODUCT_WITH_VARIANTS, + PRODUCT_WITH_OPTIONS_FRAGMENT, UPDATE_PRODUCT, UPDATE_PRODUCT_VARIANTS, } from './graphql/shared-definitions'; import { assertThrowsWithMessage } from './utils/assert-throws-with-message'; -import { sortById } from './utils/test-order-utils'; // tslint:disable:no-non-null-assertion @@ -1168,29 +1169,6 @@ describe('Product resolver', () => { }); }); -const PRODUCT_WITH_OPTIONS_FRAGMENT = gql` - fragment ProductWithOptions on Product { - id - optionGroups { - id - code - options { - id - code - } - } - } -`; - -export const ADD_OPTION_GROUP_TO_PRODUCT = gql` - mutation AddOptionGroupToProduct($productId: ID!, $optionGroupId: ID!) { - addOptionGroupToProduct(productId: $productId, optionGroupId: $optionGroupId) { - ...ProductWithOptions - } - } - ${PRODUCT_WITH_OPTIONS_FRAGMENT} -`; - export const REMOVE_OPTION_GROUP_FROM_PRODUCT = gql` mutation RemoveOptionGroupFromProduct($productId: ID!, $optionGroupId: ID!) { removeOptionGroupFromProduct(productId: $productId, optionGroupId: $optionGroupId) { diff --git a/packages/core/src/api/middleware/transaction-interceptor.ts b/packages/core/src/api/middleware/transaction-interceptor.ts index bcbbec8fb6..da0313447e 100644 --- a/packages/core/src/api/middleware/transaction-interceptor.ts +++ b/packages/core/src/api/middleware/transaction-interceptor.ts @@ -1,12 +1,15 @@ import { CallHandler, ExecutionContext, Injectable, NestInterceptor } from '@nestjs/common'; import { Reflector } from '@nestjs/core'; import { Observable, of } from 'rxjs'; +import { retryWhen, take, tap } from 'rxjs/operators'; +import { QueryRunner } from 'typeorm'; +import { TransactionAlreadyStartedError } from 'typeorm/error/TransactionAlreadyStartedError'; import { REQUEST_CONTEXT_KEY, TRANSACTION_MANAGER_KEY } from '../../common/constants'; import { TransactionalConnection } from '../../service/transaction/transactional-connection'; import { parseContext } from '../common/parse-context'; import { RequestContext } from '../common/request-context'; -import { TRANSACTION_MODE_METADATA_KEY, TransactionMode } from '../decorators/transaction.decorator'; +import { TransactionMode, TRANSACTION_MODE_METADATA_KEY } from '../decorators/transaction.decorator'; /** * @description @@ -24,7 +27,7 @@ export class TransactionInterceptor implements NestInterceptor { TRANSACTION_MODE_METADATA_KEY, context.getHandler(), ); - return of(this.withTransaction(ctx, () => next.handle().toPromise(), transactionMode)); + return of(this.withTransaction(ctx, () => next.handle(), transactionMode)); } else { return next.handle(); } @@ -34,22 +37,40 @@ export class TransactionInterceptor implements NestInterceptor { * @description * Executes the `work` function within the context of a transaction. */ - private async withTransaction(ctx: RequestContext, work: () => T, mode: TransactionMode): Promise { + private async withTransaction( + ctx: RequestContext, + work: () => Observable, + mode: TransactionMode, + ): Promise { const queryRunnerExists = !!(ctx as any)[TRANSACTION_MANAGER_KEY]; if (queryRunnerExists) { // If a QueryRunner already exists on the RequestContext, there must be an existing // outer transaction in progress. In that case, we just execute the work function // as usual without needing to further wrap in a transaction. - return work(); + return work().toPromise(); } const queryRunner = this.connection.rawConnection.createQueryRunner(); if (mode === 'auto') { - await queryRunner.startTransaction(); + await this.startTransaction(queryRunner); } (ctx as any)[TRANSACTION_MANAGER_KEY] = queryRunner.manager; try { - const result = await work(); + const maxRetries = 5; + const result = await work() + .pipe( + retryWhen(errors => + errors.pipe( + tap(err => { + if (!this.isRetriableError(err)) { + throw err; + } + }), + take(maxRetries), + ), + ), + ) + .toPromise(); if (queryRunner.isTransactionActive) { await queryRunner.commitTransaction(); } @@ -65,4 +86,48 @@ export class TransactionInterceptor implements NestInterceptor { } } } + + /** + * Attempts to start a DB transaction, with retry logic in the case that a transaction + * is already started for the connection (which is mainly a problem with SQLite/Sql.js) + */ + private async startTransaction(queryRunner: QueryRunner) { + const maxRetries = 25; + let attempts = 0; + let lastError: any; + // Returns false if a transaction is already in progress + async function attemptStartTransaction(): Promise { + try { + await queryRunner.startTransaction(); + return true; + } catch (err) { + lastError = err; + if (err instanceof TransactionAlreadyStartedError) { + return false; + } + throw err; + } + } + while (attempts < maxRetries) { + const result = await attemptStartTransaction(); + if (result) { + return; + } + attempts++; + // insert an increasing delay before retrying + await new Promise(resolve => setTimeout(resolve, attempts * 20)); + } + throw lastError; + } + + /** + * If the resolver function throws an error, there are certain cases in which + * we want to retry the whole thing again - notably in the case of a deadlock + * situation, which can usually be retried with success. + */ + private isRetriableError(err: any): boolean { + const mysqlDeadlock = err.code === 'ER_LOCK_DEADLOCK'; + const postgresDeadlock = err.code === 'deadlock_detected'; + return mysqlDeadlock || postgresDeadlock; + } } diff --git a/scripts/codegen/generate-graphql-types.ts b/scripts/codegen/generate-graphql-types.ts index 90390136de..5e239ecd69 100644 --- a/scripts/codegen/generate-graphql-types.ts +++ b/scripts/codegen/generate-graphql-types.ts @@ -13,7 +13,7 @@ const CLIENT_QUERY_FILES = path.join( ); const E2E_ADMIN_QUERY_FILES = path.join( __dirname, - '../../packages/core/e2e/**/!(import.e2e-spec|plugin.e2e-spec|shop-definitions|custom-fields.e2e-spec|price-calculation-strategy.e2e-spec|list-query-builder.e2e-spec|shop-order.e2e-spec|database-transactions.e2e-spec).ts', + '../../packages/core/e2e/**/!(import.e2e-spec|plugin.e2e-spec|shop-definitions|custom-fields.e2e-spec|price-calculation-strategy.e2e-spec|list-query-builder.e2e-spec|shop-order.e2e-spec|database-transactions.e2e-spec|parallel-transactions.e2e-spec).ts', ); const E2E_SHOP_QUERY_FILES = [path.join(__dirname, '../../packages/core/e2e/graphql/shop-definitions.ts')]; const E2E_ELASTICSEARCH_PLUGIN_QUERY_FILES = path.join(