From ce31d86352f57af81cede02391b83b61d9ff3767 Mon Sep 17 00:00:00 2001 From: Chloe Date: Mon, 18 Apr 2022 17:14:32 +0700 Subject: [PATCH] Finish get-all-products operators Signed-off-by: Chloe --- packages/opencommerce/.env.template | 3 +- packages/opencommerce/codegen.json | 5 +- packages/opencommerce/schema.d.ts | 2775 +++++++++-------- packages/opencommerce/src/api/index.ts | 9 +- .../src/api/mutations/authenticate.ts | 15 + .../src/api/operations/get-all-pages.ts | 19 + .../api/operations/get-all-product-paths.ts | 63 + .../src/api/operations/get-all-products.ts | 28 +- .../api/operations/get-customer-wishlist.ts | 6 + .../src/api/operations/get-page.ts | 13 + .../src/api/operations/get-product.ts | 68 + .../src/api/operations/get-site-info.ts | 43 + .../opencommerce/src/api/operations/index.ts | 7 + .../opencommerce/src/api/operations/login.ts | 53 + .../queries/get-all-product-paths-query.ts | 25 + .../{product.ts => get-all-products-query.ts} | 0 .../src/api/queries/get-product-query.ts | 181 ++ .../src/api/utils/filter-edges.ts | 5 + packages/opencommerce/src/api/utils/types.ts | 7 + packages/opencommerce/src/auth/index.ts | 3 + packages/opencommerce/src/auth/use-login.tsx | 16 + packages/opencommerce/src/auth/use-logout.tsx | 17 + packages/opencommerce/src/auth/use-signup.tsx | 19 + packages/opencommerce/src/cart/index.ts | 4 + .../opencommerce/src/cart/use-add-item.tsx | 17 + packages/opencommerce/src/cart/use-cart.tsx | 42 + .../opencommerce/src/cart/use-remove-item.tsx | 20 + .../opencommerce/src/cart/use-update-item.tsx | 20 + .../src/checkout/use-checkout.tsx | 16 + .../src/customer/address/use-add-item.tsx | 17 + .../src/customer/card/use-add-item.tsx | 17 + packages/opencommerce/src/customer/index.ts | 1 + .../src/customer/use-customer.tsx | 17 + packages/opencommerce/src/fetcher.ts | 41 + packages/opencommerce/src/index.ts | 12 + packages/opencommerce/src/product/index.ts | 2 + .../opencommerce/src/product/use-price.tsx | 2 + .../opencommerce/src/product/use-search.tsx | 17 + packages/opencommerce/src/provider.ts | 22 + packages/opencommerce/src/types/login.ts | 8 + packages/opencommerce/src/utils/normalize.ts | 2 +- .../src/wishlist/use-add-item.tsx | 13 + .../src/wishlist/use-remove-item.tsx | 17 + .../src/wishlist/use-wishlist.tsx | 43 + site/.env.template | 3 + site/tsconfig.json | 4 +- 46 files changed, 2437 insertions(+), 1300 deletions(-) create mode 100644 packages/opencommerce/src/api/mutations/authenticate.ts create mode 100644 packages/opencommerce/src/api/operations/get-all-pages.ts create mode 100644 packages/opencommerce/src/api/operations/get-all-product-paths.ts create mode 100644 packages/opencommerce/src/api/operations/get-customer-wishlist.ts create mode 100644 packages/opencommerce/src/api/operations/get-page.ts create mode 100644 packages/opencommerce/src/api/operations/get-product.ts create mode 100644 packages/opencommerce/src/api/operations/get-site-info.ts create mode 100644 packages/opencommerce/src/api/operations/index.ts create mode 100644 packages/opencommerce/src/api/operations/login.ts create mode 100644 packages/opencommerce/src/api/queries/get-all-product-paths-query.ts rename packages/opencommerce/src/api/queries/{product.ts => get-all-products-query.ts} (100%) create mode 100644 packages/opencommerce/src/api/queries/get-product-query.ts create mode 100644 packages/opencommerce/src/api/utils/filter-edges.ts create mode 100644 packages/opencommerce/src/api/utils/types.ts create mode 100644 packages/opencommerce/src/auth/index.ts create mode 100644 packages/opencommerce/src/auth/use-login.tsx create mode 100644 packages/opencommerce/src/auth/use-logout.tsx create mode 100644 packages/opencommerce/src/auth/use-signup.tsx create mode 100644 packages/opencommerce/src/cart/index.ts create mode 100644 packages/opencommerce/src/cart/use-add-item.tsx create mode 100644 packages/opencommerce/src/cart/use-cart.tsx create mode 100644 packages/opencommerce/src/cart/use-remove-item.tsx create mode 100644 packages/opencommerce/src/cart/use-update-item.tsx create mode 100644 packages/opencommerce/src/checkout/use-checkout.tsx create mode 100644 packages/opencommerce/src/customer/address/use-add-item.tsx create mode 100644 packages/opencommerce/src/customer/card/use-add-item.tsx create mode 100644 packages/opencommerce/src/customer/index.ts create mode 100644 packages/opencommerce/src/customer/use-customer.tsx create mode 100644 packages/opencommerce/src/fetcher.ts create mode 100644 packages/opencommerce/src/product/index.ts create mode 100644 packages/opencommerce/src/product/use-price.tsx create mode 100644 packages/opencommerce/src/product/use-search.tsx create mode 100644 packages/opencommerce/src/types/login.ts create mode 100644 packages/opencommerce/src/wishlist/use-add-item.tsx create mode 100644 packages/opencommerce/src/wishlist/use-remove-item.tsx create mode 100644 packages/opencommerce/src/wishlist/use-wishlist.tsx diff --git a/packages/opencommerce/.env.template b/packages/opencommerce/.env.template index 001122f4d..c64c3bd66 100644 --- a/packages/opencommerce/.env.template +++ b/packages/opencommerce/.env.template @@ -1,3 +1,4 @@ COMMERCE_PROVIDER=@vercel/commerce-opencommerce -OPENCOMMERCE_STOREFRONT_API_URL= \ No newline at end of file +OPENCOMMERCE_STOREFRONT_API_URL= +OPENCOMMERCE_PRIMARY_SHOP_ID= \ No newline at end of file diff --git a/packages/opencommerce/codegen.json b/packages/opencommerce/codegen.json index 2fd5a6c36..a7221bf2a 100644 --- a/packages/opencommerce/codegen.json +++ b/packages/opencommerce/codegen.json @@ -10,7 +10,10 @@ ], "generates": { "./schema.d.ts": { - "plugins": ["typescript", "typescript-operations"] + "plugins": ["typescript", "typescript-operations"], + "config": { + "avoidOptionals": true + } }, "./schema.graphql": { "plugins": ["schema-ast"] diff --git a/packages/opencommerce/schema.d.ts b/packages/opencommerce/schema.d.ts index 3e52e2156..a8b175848 100644 --- a/packages/opencommerce/schema.d.ts +++ b/packages/opencommerce/schema.d.ts @@ -46,61 +46,61 @@ export type Account = Node & { /** The account ID */ _id: Scalars['ID'] /** A list of physical or mailing addresses associated with this account */ - addressBook?: Maybe + addressBook: Maybe /** A list of shops this user can administer with the admin UI */ - adminUIShops?: Maybe>> + adminUIShops: Maybe>> /** Bio to display on profile */ - bio?: Maybe + bio: Maybe /** The date and time at which this account was created */ createdAt: Scalars['DateTime'] /** The preferred currency used by this account */ - currency?: Maybe + currency: Maybe /** A list of email records associated with this account */ - emailRecords?: Maybe>> + emailRecords: Maybe>> /** The first name of the person this account represents, if known */ - firstName?: Maybe + firstName: Maybe /** A paged list of the account groups in which this account is listed */ - groups?: Maybe + groups: Maybe /** The preferred language used by this account */ - language?: Maybe + language: Maybe /** The last name of the person this account represents, if known */ - lastName?: Maybe + lastName: Maybe /** Arbitrary additional metadata about this account */ - metafields?: Maybe>> + metafields: Maybe>> /** The full name of the person this account represents, if known */ - name?: Maybe + name: Maybe /** Some note about this account */ - note?: Maybe + note: Maybe /** URL of picture to display on profile */ - picture?: Maybe + picture: Maybe /** An object storing plugin-specific preferences for this account */ - preferences?: Maybe + preferences: Maybe /** The primary email address for the account. This matches the address in `emailRecords` where `provides` is `default`. */ primaryEmailAddress: Scalars['Email'] /** The date and time at which this account was last updated */ - updatedAt?: Maybe + updatedAt: Maybe /** The Identity user ID with which this account is associated */ userId: Scalars['String'] /** Username */ - username?: Maybe + username: Maybe } /** Represents a single user account */ export type AccountAddressBookArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe + after: InputMaybe + before: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe } /** Represents a single user account */ export type AccountGroupsArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe + after: InputMaybe + before: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe sortBy?: InputMaybe sortOrder?: InputMaybe } @@ -116,12 +116,12 @@ export type AccountGroupsArgs = { export type AccountConnection = { __typename?: 'AccountConnection' /** The list of nodes that match the query, wrapped in an edge to provide a cursor string for each */ - edges?: Maybe>> + edges: Maybe>> /** * You can request the `nodes` directly to avoid the extra wrapping that `NodeEdge` has, * if you know you will not need to paginate the results. */ - nodes?: Maybe>> + nodes: Maybe>> /** Information to help a client request the next or previous page */ pageInfo: PageInfo /** The total number of nodes that match your query */ @@ -134,7 +134,7 @@ export type AccountEdge = NodeEdge & { /** The cursor that represents this node in the paginated results */ cursor: Scalars['ConnectionCursor'] /** The account */ - node?: Maybe + node: Maybe } /** The fields by which you are allowed to sort any query that returns an `AccountConnection` */ @@ -154,26 +154,26 @@ export type AddAccountAddressBookEntryInput = { /** The address to add */ address: AddressInput /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe } /** The response from the `addAccountAddressBookEntry` mutation */ export type AddAccountAddressBookEntryPayload = { __typename?: 'AddAccountAddressBookEntryPayload' /** The added address */ - address?: Maybe
+ address: Maybe
/** The added address edge */ - addressEdge?: Maybe + addressEdge: Maybe /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe } /** Defines a new Email and the account to which it should be added */ export type AddAccountEmailRecordInput = { /** The account ID, which defaults to the viewer account */ - accountId?: InputMaybe + accountId: InputMaybe /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The email address to add */ email: Scalars['Email'] } @@ -182,9 +182,9 @@ export type AddAccountEmailRecordInput = { export type AddAccountEmailRecordPayload = { __typename?: 'AddAccountEmailRecordPayload' /** The account, with updated `emailRecords` */ - account?: Maybe + account: Maybe /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe } /** Defines a group and account that should be linked */ @@ -192,7 +192,7 @@ export type AddAccountToGroupInput = { /** The account ID */ accountId: Scalars['ID'] /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The group ID */ groupId: Scalars['ID'] } @@ -201,9 +201,9 @@ export type AddAccountToGroupInput = { export type AddAccountToGroupPayload = { __typename?: 'AddAccountToGroupPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The updated group */ - group?: Maybe + group: Maybe } /** Input for the `addCartItems` mutation */ @@ -211,9 +211,9 @@ export type AddCartItemsInput = { /** The cart ID */ cartId: Scalars['ID'] /** If this cart is anonymous, provide the `cartToken` that was returned in the `CreateCartPayload` */ - cartToken?: InputMaybe + cartToken: InputMaybe /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** Array of items to be added to the cart */ items: Array> } @@ -225,9 +225,9 @@ export type AddCartItemsPayload = { * The modified cart. You should check `incorrectPriceFailures` and `minOrderQuantityFailures` for * information necessary to display errors to the shopper. Some items may not have been added. */ - cart?: Maybe + cart: Maybe /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** * Clients should check to see if any items failed to be added due to the price not matching the current price. * In general, a user interface should display the correct current prices to the shopper, confirm that they still @@ -249,11 +249,11 @@ export type AddCartItemsPayload = { /** Input for the addOrderFulfillmentGroup mutation */ export type AddOrderFulfillmentGroupInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The order fulfillment group input, used to build the new group */ fulfillmentGroup: OrderFulfillmentGroupExistingOrderInput /** Optional list of order item IDs that should be moved from an existing group to the new group */ - moveItemIds?: InputMaybe>> + moveItemIds: InputMaybe>> /** ID of the order that has the item you want to add the group to */ orderId: Scalars['ID'] } @@ -262,7 +262,7 @@ export type AddOrderFulfillmentGroupInput = { export type AddOrderFulfillmentGroupPayload = { __typename?: 'AddOrderFulfillmentGroupPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** ID of the added fulfillment group */ newFulfillmentGroupId: Scalars['ID'] /** The updated order */ @@ -272,28 +272,28 @@ export type AddOrderFulfillmentGroupPayload = { /** Input for `addTag` mutation */ export type AddTagInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** Title to display to customers */ - displayTitle?: InputMaybe + displayTitle: InputMaybe /** Hero media URL */ - heroMediaUrl?: InputMaybe + heroMediaUrl: InputMaybe /** Whether the tag is visible */ isVisible: Scalars['Boolean'] /** Tag metafields */ - metafields?: InputMaybe>> + metafields: InputMaybe>> /** Unique name of the tag */ name: Scalars['String'] /** The shop that owns the tag */ shopId: Scalars['ID'] /** The tag slug. If left blank, the name will be slugified and saved as the slug */ - slug?: InputMaybe + slug: InputMaybe } /** Response payload for `addTag` mutation */ export type AddTagPayload = { __typename?: 'AddTagPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The shop that owns the tag */ shopId: Scalars['ID'] /** The newly-created tag */ @@ -304,15 +304,15 @@ export type AddTagPayload = { export type Address = { __typename?: 'Address' /** The address ID */ - _id?: Maybe + _id: Maybe /** The street address / first line */ address1: Scalars['String'] /** Optional second line */ - address2?: Maybe + address2: Maybe /** City */ city: Scalars['String'] /** Optional company name, if it's a business address */ - company?: Maybe + company: Maybe /** Country */ country: Scalars['String'] /** @@ -320,23 +320,23 @@ export type Address = { * This is an optional field to support legacy and third party platforms * We use fullName internally, and use first and last name fields to combine into a full name if needed */ - firstName?: Maybe + firstName: Maybe /** The full name of a person at this address */ fullName: Scalars['String'] /** Is this the default address for billing purposes? */ - isBillingDefault?: Maybe + isBillingDefault: Maybe /** Is this a commercial address? */ isCommercial: Scalars['Boolean'] /** Is this the default address to use when selecting a shipping address at checkout? */ - isShippingDefault?: Maybe + isShippingDefault: Maybe /** * The last name of a person at this address * This is an optional field to support legacy and third party platforms * We use fullName internally, and use first and last name fields to combine into a full name if needed */ - lastName?: Maybe + lastName: Maybe /** Arbitrary additional metadata about this address */ - metafields?: Maybe>> + metafields: Maybe>> /** A phone number for someone at this address */ phone: Scalars['String'] /** Postal code */ @@ -356,12 +356,12 @@ export type Address = { export type AddressConnection = { __typename?: 'AddressConnection' /** The list of nodes that match the query, wrapped in an edge to provide a cursor string for each */ - edges?: Maybe>> + edges: Maybe>> /** * You can request the `nodes` directly to avoid the extra wrapping that `NodeEdge` has, * if you know you will not need to paginate the results. */ - nodes?: Maybe>> + nodes: Maybe>> /** Information to help a client request the next or previous page */ pageInfo: PageInfo /** The total number of nodes that match your query */ @@ -374,7 +374,7 @@ export type AddressEdge = { /** The cursor that represents this node in the paginated results */ cursor: Scalars['ConnectionCursor'] /** The address */ - node?: Maybe
+ node: Maybe
} /** The details of an `Address` to be created or updated */ @@ -382,13 +382,13 @@ export type AddressInput = { /** The street address / first line */ address1: Scalars['String'] /** Optional second line */ - address2?: InputMaybe + address2: InputMaybe /** Optionally, a name for this address (e.g. 'Home') to easily identify it in the future */ - addressName?: InputMaybe + addressName: InputMaybe /** City */ city: Scalars['String'] /** Optional company name, if it's a business address */ - company?: InputMaybe + company: InputMaybe /** Country */ country: Scalars['String'] /** @@ -396,23 +396,23 @@ export type AddressInput = { * This is an optional field to support legacy and third party platforms * We use fullName internally, and use first and last name fields to combine into a full name if needed */ - firstName?: InputMaybe + firstName: InputMaybe /** The full name of a person at this address */ fullName: Scalars['String'] /** Is this the default address for billing purposes? */ - isBillingDefault?: InputMaybe + isBillingDefault: InputMaybe /** Is this a commercial address? */ - isCommercial?: InputMaybe + isCommercial: InputMaybe /** Is this the default address to use when selecting a shipping address at checkout? */ - isShippingDefault?: InputMaybe + isShippingDefault: InputMaybe /** * The last name of a person at this address * This is an optional field to support legacy and third party platforms * We use fullName internally, and use first and last name fields to combine into a full name if needed */ - lastName?: InputMaybe + lastName: InputMaybe /** Arbitrary additional metadata about this address */ - metafields?: InputMaybe>> + metafields: InputMaybe>> /** A phone number for someone at this address */ phone: Scalars['String'] /** Postal code */ @@ -433,9 +433,9 @@ export enum AddressType { export type AddressValidationError = { __typename?: 'AddressValidationError' /** A longer, detailed error message suitable for showing in the user interface */ - details?: Maybe + details: Maybe /** An identifier of the source of this error. These are not currently standardized. As long as your client understands it, any string is fine. */ - source?: Maybe + source: Maybe /** A short error message suitable for showing in the user interface */ summary: Scalars['String'] /** The error type. These are not currently standardized. As long as your client understands it, any string is fine. */ @@ -466,7 +466,7 @@ export type AddressValidationRule = Node & { /** The rule ID */ _id: Scalars['ID'] /** Country codes for which this service is enabled */ - countryCodes?: Maybe>> + countryCodes: Maybe>> /** The date and time at which this rule was created */ createdAt: Scalars['DateTime'] /** @@ -491,12 +491,12 @@ export type AddressValidationRule = Node & { export type AddressValidationRuleConnection = { __typename?: 'AddressValidationRuleConnection' /** The list of nodes that match the query, wrapped in an edge to provide a cursor string for each */ - edges?: Maybe>> + edges: Maybe>> /** * You can request the `nodes` directly to avoid the extra wrapping that `NodeEdge` has, * if you know you will not need to paginate the results. */ - nodes?: Maybe>> + nodes: Maybe>> /** Information to help a client request the next or previous page */ pageInfo: PageInfo /** The total number of nodes that match your query */ @@ -509,7 +509,7 @@ export type AddressValidationRuleEdge = NodeEdge & { /** The cursor that represents this node in the paginated results */ cursor: Scalars['ConnectionCursor'] /** The address validation rule */ - node?: Maybe + node: Maybe } /** The fields by which you are allowed to sort any query that returns an `AddressValidationRuleConnection` */ @@ -532,7 +532,7 @@ export type AddressValidationService = { /** Unique name to serve as a key identifying this service */ name: Scalars['String'] /** An optional list of all country codes that this address service supports. Null means all countries. */ - supportedCountryCodes?: Maybe>> + supportedCountryCodes: Maybe>> } /** Defines a surcharge that has been applied to a Cart or Order */ @@ -543,9 +543,9 @@ export type AppliedSurcharge = Node & { /** The amount of the surcharge */ amount: Money /** The fulfillmentGroupId (for reference) */ - fulfillmentGroupId?: Maybe + fulfillmentGroupId: Maybe /** The message to explain the surchage to customers, translated (if available) based on shop language */ - message?: Maybe + message: Maybe /** The surchargeId from the surchages collection (for reference) */ surchargeDefinitionId: Scalars['ID'] } @@ -564,7 +564,7 @@ export type ApplyDiscountCodeToCartInput = { /** Shop cart belongs to */ shopId: Scalars['ID'] /** Cart token, if anonymous */ - token?: InputMaybe + token: InputMaybe } /** Response from the `applyDiscountCodeToCart` mutation */ @@ -573,13 +573,13 @@ export type ApplyDiscountCodeToCartPayload = { /** The updated cart with discount code applied */ cart: Cart /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe } /** Input for the `approveOrderPayments` mutation */ export type ApproveOrderPaymentsInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The order ID */ orderId: Scalars['ID'] /** The IDs of one or more payments to approve for this order */ @@ -592,7 +592,7 @@ export type ApproveOrderPaymentsInput = { export type ApproveOrderPaymentsPayload = { __typename?: 'ApproveOrderPaymentsPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The updated order */ order: Order } @@ -600,7 +600,7 @@ export type ApproveOrderPaymentsPayload = { /** Input for the archiveMediaRecord mutation */ export type ArchiveMediaRecordInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** ID of MediaRecord to archive */ mediaRecordId: Scalars['ID'] /** ID of shop that owns this MediaRecord */ @@ -611,7 +611,7 @@ export type ArchiveMediaRecordInput = { export type ArchiveMediaRecordPayload = { __typename?: 'ArchiveMediaRecordPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The archived MediaRecord */ mediaRecord: MediaRecord } @@ -628,7 +628,7 @@ export type ArchiveProductVariantsInput = { export type ArchiveProductVariantsPayload = { __typename?: 'ArchiveProductVariantsPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** Array of newly archived variants */ variants: Array> } @@ -645,7 +645,7 @@ export type ArchiveProductsInput = { export type ArchiveProductsPayload = { __typename?: 'ArchiveProductsPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** Array of newly archived products */ products: Array> } @@ -676,13 +676,13 @@ export type AttributeRestrictionsInput = { } export type AuthenticateParamsInput = { - access_token?: InputMaybe - access_token_secret?: InputMaybe - code?: InputMaybe - password?: InputMaybe - provider?: InputMaybe - token?: InputMaybe - user?: InputMaybe + access_token: InputMaybe + access_token_secret: InputMaybe + code: InputMaybe + password: InputMaybe + provider: InputMaybe + token: InputMaybe + user: InputMaybe } /** A single calculated tax for a cart, order group, cart item, or order item */ @@ -691,7 +691,7 @@ export type CalculatedTax = { /** Calculated tax ID */ _id: Scalars['ID'] /** Jurisdiction ID. It is up to the tax service to determine if and how to use this. */ - jurisdictionId?: Maybe + jurisdictionId: Maybe /** Did this tax match due to the order origin or the order destination? */ sourcing: TaxSource /** Amount of tax due */ @@ -709,7 +709,7 @@ export type CancelOrderItemInput = { /** Quantity to cancel. Must be equal to or less than the item quantity. */ cancelQuantity: Scalars['Int'] /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** ID of the item order you want to cancel */ itemId: Scalars['ID'] /** ID of the order that has the item you want to cancel */ @@ -718,14 +718,14 @@ export type CancelOrderItemInput = { * An optional free text reason for cancellation, which may be shown to operators * or to the user who placed the order. */ - reason?: InputMaybe + reason: InputMaybe } /** Response payload for the cancelOrderItem mutation */ export type CancelOrderItemPayload = { __typename?: 'CancelOrderItemPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The updated order */ order: Order } @@ -733,7 +733,7 @@ export type CancelOrderItemPayload = { /** Input for the `captureOrderPayments` mutation */ export type CaptureOrderPaymentsInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The order ID */ orderId: Scalars['ID'] /** The IDs of one or more payments to capture for this order */ @@ -746,7 +746,7 @@ export type CaptureOrderPaymentsInput = { export type CaptureOrderPaymentsPayload = { __typename?: 'CaptureOrderPaymentsPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The updated order */ order: Order } @@ -760,17 +760,17 @@ export type Cart = Node & { * The account that owns the cart. Some carts are created for anonymous users. Anonymous carts have a null account. * Every account has exactly one cart per shop. */ - account?: Maybe + account: Maybe /** Holds all information collected for a cart during checkout */ - checkout?: Maybe + checkout: Maybe /** The date and time at which the cart was created, which is when the first item was added to it. */ createdAt: Scalars['DateTime'] /** An email address that has been associated with the cart */ - email?: Maybe + email: Maybe /** The date and time at which the cart will expire. Account carts usually do not expire, so they will have a null value here. */ - expiresAt?: Maybe + expiresAt: Maybe /** The items that have been added to the cart. A cart is not created until the first item is added. Items can be removed from a cart, and a cart is not deleted if all items are removed from it. Because all items may have been removed, this may be an empty array. */ - items?: Maybe + items: Maybe /** * If any products or variants become hidden or are deleted after they were added to this cart, they'll be * automatically moved from `items` to `missingItems`. Clients may want to use this to show an @@ -779,14 +779,14 @@ export type Cart = Node & { * If a product becomes visible again, the item will never be automatically moved from `missingItems` * back to `items`, but clients may want to provide a way for users to manually do this. */ - missingItems?: Maybe>> + missingItems: Maybe>> /** * If you integrate with third-party systems that require you to send the same ID for order * calculations as for cart calculations, you may use this ID, which is the same on a `cart` as on * the `order` placed from that cart. This ID can also be customized by plugins and is the best * ID to use if it is necessary to show a cart ID in the user interface. */ - referenceId?: Maybe + referenceId: Maybe /** The shop that owns the cart. */ shop: Shop /** Surcharges applied to this cart */ @@ -795,7 +795,7 @@ export type Cart = Node & { * A summary of calculated taxes for this cart. Null means "not able to calculate", * such as when no fulfillment method has been selected for some fulfillment groups. */ - taxSummary?: Maybe + taxSummary: Maybe /** Total quantity of all items in the cart */ totalItemQuantity: Scalars['Int'] /** The date and time at which this cart was last updated. */ @@ -804,11 +804,11 @@ export type Cart = Node & { /** The cart holds selected items until order is placed. */ export type CartItemsArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe + after: InputMaybe + before: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe sortBy?: InputMaybe sortOrder?: InputMaybe } @@ -830,23 +830,23 @@ export type CartItem = Node & { * FUTURE. Additional attributes of the chosen item. For example, if this item is for a product, socks, where `blue` and `small` * options were chosen for some configurable attributes, then `color:blue` and `size:small` will be indicated here. */ - attributes?: Maybe>> + attributes: Maybe>> /** The current comparison (e.g., MSRP) price of the item */ - compareAtPrice?: Maybe + compareAtPrice: Maybe /** * The date and time at which the cart item was created. If an item is added, removed, and then added again, * the original item is destroyed and this field will reflect the time it was created for the most recent addition. */ createdAt: Scalars['DateTime'] /** The URLs for a picture of the item in various sizes */ - imageURLs?: Maybe + imageURLs: Maybe /** * The quantity of this item currently available to sell. * This number is updated when an order is placed by the customer. * This number does not include reserved inventory (i.e. inventory that has been ordered, but not yet processed by the operator). * This is most likely the quantity to display in the storefront UI. */ - inventoryAvailableToSell?: Maybe + inventoryAvailableToSell: Maybe /** * True if this item is currently sold out but allows backorders. A storefront UI may use this * to decide to show a "Backordered" indicator. @@ -865,11 +865,11 @@ export type CartItem = Node & { /** Is this a taxable item? */ isTaxable: Scalars['Boolean'] /** Arbitrary additional metadata about this cart item. */ - metafields?: Maybe>> + metafields: Maybe>> /** The selected variant optionTitle */ - optionTitle?: Maybe + optionTitle: Maybe /** Packing information such as item weight, height, length, and depth. Used for calculating shipping rates. */ - parcel?: Maybe + parcel: Maybe /** The current price of the item */ price: Money /** The price at which this item was listed when it was added to the cart */ @@ -877,13 +877,13 @@ export type CartItem = Node & { /** The product and chosen options */ productConfiguration: ProductConfiguration /** The product's slug */ - productSlug?: Maybe + productSlug: Maybe /** The list of tags that have been applied to this product */ - productTags?: Maybe + productTags: Maybe /** The type of product, used to display cart items differently */ - productType?: Maybe + productType: Maybe /** The product vendor */ - productVendor?: Maybe + productVendor: Maybe /** The quantity of this item that has been added to the cart. This must be a positive integer. Remove this `CartItem` from it's associated cart if you want `0` of this item. */ quantity: Scalars['Int'] /** The shop associated with this cart item. */ @@ -891,28 +891,28 @@ export type CartItem = Node & { /** The current price of the item multiplied by the quantity */ subtotal: Money /** Total tax calculated for this item */ - tax?: Maybe + tax: Maybe /** The tax code for this item */ - taxCode?: Maybe + taxCode: Maybe /** Amount of subtotal that is taxable */ - taxableAmount?: Maybe + taxableAmount: Maybe /** List of calculated taxes due for this item */ - taxes?: Maybe>> + taxes: Maybe>> /** A title for use in cart/orders that conveys the selected product's title + chosen options */ title: Scalars['String'] /** The date and time at which this item was last updated */ updatedAt: Scalars['DateTime'] /** The selected variant title */ - variantTitle?: Maybe + variantTitle: Maybe } /** A single item in a cart. The item contains information about an intended purchase. */ export type CartItemProductTagsArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe + after: InputMaybe + before: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe sortBy?: InputMaybe sortOrder?: InputMaybe } @@ -921,9 +921,9 @@ export type CartItemProductTagsArgs = { export type CartItemAttribute = { __typename?: 'CartItemAttribute' /** The attribute label, e.g., Color */ - label?: Maybe + label: Maybe /** The attribute value, e.g., Blue */ - value?: Maybe + value: Maybe } /** @@ -937,12 +937,12 @@ export type CartItemAttribute = { export type CartItemConnection = { __typename?: 'CartItemConnection' /** The list of nodes that match the query, wrapped in an edge to provide a cursor string for each */ - edges?: Maybe>> + edges: Maybe>> /** * You can request the `nodes` directly to avoid the extra wrapping that `NodeEdge` has, * if you know you will not need to paginate the results. */ - nodes?: Maybe>> + nodes: Maybe>> /** Information to help a client request the next or previous page */ pageInfo: PageInfo /** The total number of nodes that match your query */ @@ -955,13 +955,13 @@ export type CartItemEdge = NodeEdge & { /** The cursor that represents this node in the paginated results */ cursor: Scalars['ConnectionCursor'] /** The cart item */ - node?: Maybe + node: Maybe } /** Information about an item to add to a cart */ export type CartItemInput = { /** Arbitrary additional metadata about this cart item. */ - metafields?: InputMaybe>> + metafields: InputMaybe>> /** * The price of this item, for validating that this matches the actual price in the system, * in case the client has stale data. @@ -1004,13 +1004,13 @@ export type CartSummary = { * This may be null, and there is a difference between null and 0. Null means `not able to calculate`, * such as when no fulfillment method has been selected for some fulfillment groups. */ - effectiveTaxRate?: Maybe + effectiveTaxRate: Maybe /** * The total price of all chosen fulfillment methods. This may be null, and there is a difference * between null and 0. Null means `not able to calculate`, such as when no fulfillment method has * been selected for some fulfillment groups. */ - fulfillmentTotal?: Maybe + fulfillmentTotal: Maybe /** The combined prices of all cart items */ itemTotal: Money /** @@ -1018,13 +1018,13 @@ export type CartSummary = { * between null and 0. Null means `not able to calculate`, such as when no fulfillment method has * been selected for some fulfillment groups. */ - surchargeTotal?: Maybe + surchargeTotal: Maybe /** * The total estimated tax that has not already been included in the item prices. This may be null, * and there is a difference between null and 0. Null means `not able to calculate`, such as when no * fulfillment methods have been selected or there is some other issue with the tax service. */ - taxTotal?: Maybe + taxTotal: Maybe /** The total amount that was deemed taxable by the tax service */ taxableAmount: Money /** The sum of `itemTotal`, `fulfillmentTotal`, and `taxTotal`, minus `discountTotal` */ @@ -1071,11 +1071,11 @@ export type CatalogItem = { /** Item ID */ _id: Scalars['ID'] /** Date and time at which the item was created */ - createdAt?: Maybe + createdAt: Maybe /** Shop that owns the item */ shop: Shop /** Date and time at which the item was last updated */ - updatedAt?: Maybe + updatedAt: Maybe } /** @@ -1089,12 +1089,12 @@ export type CatalogItem = { export type CatalogItemConnection = { __typename?: 'CatalogItemConnection' /** The list of nodes that match the query, wrapped in an edge to provide a cursor string for each */ - edges?: Maybe>> + edges: Maybe>> /** * You can request the `nodes` directly to avoid the extra wrapping that `NodeEdge` has, * if you know you will not need to paginate the results. */ - nodes?: Maybe>> + nodes: Maybe>> /** Information to help a client request the next or previous page */ pageInfo: PageInfo /** The total number of nodes that match your query */ @@ -1121,7 +1121,7 @@ export type CatalogItemEdge = { /** The cursor that represents this node in the paginated results */ cursor: Scalars['ConnectionCursor'] /** The catalog item */ - node?: Maybe + node: Maybe } /** Represents a catalog item that displays a product */ @@ -1133,7 +1133,7 @@ export type CatalogItemProduct = CatalogItem & /** The date and time at which this CatalogItem was first created, which is when the related product was first published */ createdAt: Scalars['DateTime'] /** The catalog product */ - product?: Maybe + product: Maybe /** The shop to which this catalog belongs */ shop: Shop /** The date and time at which this CatalogItem was last updated, which is when the related product was most recently published */ @@ -1165,13 +1165,13 @@ export type CatalogProduct = CatalogProductOrVariant & /** The CatalogProduct ID. Do not assume that this is the same as the related product ID. See `productId` for that. */ _id: Scalars['ID'] /** The product barcode value, if it has one */ - barcode?: Maybe + barcode: Maybe /** The date and time at which this CatalogProduct was created, which is when the related product was first published */ createdAt: Scalars['DateTime'] /** The full product description, which may have newline characters in it */ - description?: Maybe + description: Maybe /** The height of the product, if it has physical dimensions */ - height?: Maybe + height: Maybe /** * True if every purchasable variant of this product is sold out but allows backorders. A storefront UI may use this * to decide to show a "Backordered" indicator. @@ -1192,55 +1192,55 @@ export type CatalogProduct = CatalogProductOrVariant & /** True if this product should be shown to shoppers. Typically, non-visible products are not returned in queries. */ isVisible: Scalars['Boolean'] /** The length of the product, if it has physical dimensions */ - length?: Maybe + length: Maybe /** All media for this product and its variants */ - media?: Maybe>> + media: Maybe>> /** The product description to use for page `description` meta element in HTML */ - metaDescription?: Maybe + metaDescription: Maybe /** Arbitrary additional metadata about this product */ - metafields?: Maybe>> + metafields: Maybe>> /** The minimum quantity that must be added to a cart */ - minOrderQuantity?: Maybe + minOrderQuantity: Maybe /** The country of origin */ - originCountry?: Maybe + originCountry: Maybe /** Subtitle */ - pageTitle?: Maybe + pageTitle: Maybe /** Dimensions and other information about the containers in which this product will be shipped */ - parcel?: Maybe + parcel: Maybe /** Price and related information, per currency */ pricing: Array> /** The primary image */ - primaryImage?: Maybe + primaryImage: Maybe /** The related Product ID */ productId: Scalars['ID'] /** An arbitrary product type value, such as from an external system */ - productType?: Maybe + productType: Maybe /** The shop to which this product belongs */ shop: Shop /** A stock keeping unit (SKU) identifier for this product */ - sku?: Maybe + sku: Maybe /** A URL-safe and human-readable string that uniquely identifies this product */ - slug?: Maybe + slug: Maybe /** Holds metadata specific to a specific social network service */ - socialMetadata?: Maybe>> + socialMetadata: Maybe>> /** When a shopper purchases this product, what types of fulfillment can they choose from? */ supportedFulfillmentTypes: Array> /** The list of tag IDs that have been applied to this product */ - tagIds?: Maybe>> + tagIds: Maybe>> /** The list of tags that have been applied to this product */ - tags?: Maybe + tags: Maybe /** Product title */ - title?: Maybe + title: Maybe /** The date and time at which this CatalogProduct was last updated, which is when the related product was most recently published */ updatedAt: Scalars['DateTime'] /** A flat list of all variants for this product */ - variants?: Maybe>> + variants: Maybe>> /** The product vendor or manufacturer, for display */ - vendor?: Maybe + vendor: Maybe /** The weight of the product on Earth, if it has physical dimensions */ - weight?: Maybe + weight: Maybe /** The width of the product, if it has physical dimensions */ - width?: Maybe + width: Maybe } /** @@ -1249,11 +1249,11 @@ export type CatalogProduct = CatalogProductOrVariant & * be displayed to shoppers who browse that catalog. */ export type CatalogProductTagsArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe + after: InputMaybe + before: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe sortBy?: InputMaybe sortOrder?: InputMaybe } @@ -1261,31 +1261,31 @@ export type CatalogProductTagsArgs = { /** This interface represents the fields that are identical for both Products and Variants */ export type CatalogProductOrVariant = { /** The product barcode value, if it has one */ - barcode?: Maybe + barcode: Maybe /** The date and time at which this CatalogProduct was created, which is when the related product was first published */ - createdAt?: Maybe + createdAt: Maybe /** The height of the product, if it has physical dimensions */ - height?: Maybe + height: Maybe /** The length of the product, if it has physical dimensions */ - length?: Maybe + length: Maybe /** Arbitrary additional metadata about this product */ - metafields?: Maybe>> + metafields: Maybe>> /** The minimum quantity that must be added to a cart */ - minOrderQuantity?: Maybe + minOrderQuantity: Maybe /** The country of origin */ - originCountry?: Maybe + originCountry: Maybe /** The shop to which this product belongs */ shop: Shop /** A stock keeping unit (SKU) identifier for this product */ - sku?: Maybe + sku: Maybe /** Product or variant title */ - title?: Maybe + title: Maybe /** The date and time at which this CatalogProduct was last updated, which is when the related product was most recently published */ - updatedAt?: Maybe + updatedAt: Maybe /** The weight of the product on Earth, if it has physical dimensions */ - weight?: Maybe + weight: Maybe /** The width of the product, if it has physical dimensions */ - width?: Maybe + width: Maybe } /** A variant of a catalog product */ @@ -1300,7 +1300,7 @@ export type CatalogProductVariant = CatalogProductOrVariant & */ attributeLabel: Scalars['String'] /** The product variant barcode value, if it has one */ - barcode?: Maybe + barcode: Maybe /** * True for a purchasable variant if an order containing this variant will be accepted even when there is insufficient * available inventory (`inventoryAvailableToSell`) to fulfill it immediately. For non-purchasable variants, this is true if at least one purchasable @@ -1309,9 +1309,9 @@ export type CatalogProductVariant = CatalogProductOrVariant & */ canBackorder: Scalars['Boolean'] /** The date and time at which this CatalogProductVariant was created, which is when the related product was first published */ - createdAt?: Maybe + createdAt: Maybe /** The height of the product variant, if it has physical dimensions */ - height?: Maybe + height: Maybe /** The position of this variant among other variants at the same level of the product-variant-option hierarchy */ index: Scalars['Int'] /** @@ -1321,7 +1321,7 @@ export type CatalogProductVariant = CatalogProductOrVariant & * If this is a variant, this number is created by summing all child option inventory numbers. * This is most likely the quantity to display in the storefront UI. */ - inventoryAvailableToSell?: Maybe + inventoryAvailableToSell: Maybe /** * The quantity of this item currently in stock. * This number is updated when an order is processed by the operator. @@ -1329,7 +1329,7 @@ export type CatalogProductVariant = CatalogProductOrVariant & * If this is a variant, this number is created by summing all child option inventory numbers. * This is most likely just used as a reference in the operator UI, and not displayed in the storefront UI. */ - inventoryInStock?: Maybe + inventoryInStock: Maybe /** * True for a purchasable variant if it is sold out but allows backorders. For non-purchasable variants, this is * true if every purchasable child variant is sold out but allows backorders. A storefront UI may use this @@ -1351,46 +1351,46 @@ export type CatalogProductVariant = CatalogProductOrVariant & /** Is sales tax charged on this item? */ isTaxable: Scalars['Boolean'] /** The length of the product, if it has physical dimensions */ - length?: Maybe + length: Maybe /** All media for this variant / option */ - media?: Maybe>> + media: Maybe>> /** Arbitrary additional metadata about this product */ - metafields?: Maybe>> + metafields: Maybe>> /** The minimum quantity that must be added to a cart */ - minOrderQuantity?: Maybe + minOrderQuantity: Maybe /** A short title to use for product detail select lists */ - optionTitle?: Maybe + optionTitle: Maybe /** Child variants, if any */ - options?: Maybe>> + options: Maybe>> /** The country of origin */ - originCountry?: Maybe + originCountry: Maybe /** Price and related information, per currency */ pricing: Array> /** The primary image of this variant / option */ - primaryImage?: Maybe + primaryImage: Maybe /** The shop to which this product variant belongs */ shop: Shop /** A stock keeping unit (SKU) identifier for this product */ - sku?: Maybe + sku: Maybe /** An optional code which, if understood by the active tax service for the shop, determines how this product should be taxed */ - taxCode?: Maybe + taxCode: Maybe /** A description to use for the tax line item on an invoice */ - taxDescription?: Maybe + taxDescription: Maybe /** * The full variant title for use on cart, checkout, and order summaries and on invoices. * This fully describes the configured variant. For example, if this is an option with * `optionTitle` `Large`, its parent variant has `optionTitle` `Red`, and the product * `title` is `Fancy T-Shirt`, then this `title` will be something like `Fancy T-Shirt - Red - Large`. */ - title?: Maybe + title: Maybe /** The date and time at which this CatalogProduct was last updated, which is when the related product was most recently published */ - updatedAt?: Maybe + updatedAt: Maybe /** The related Variant ID */ variantId: Scalars['ID'] /** The weight of the product on Earth, if it has physical dimensions */ - weight?: Maybe + weight: Maybe /** The width of the product, if it has physical dimensions */ - width?: Maybe + width: Maybe } /** Holds all information collected for a cart during checkout */ @@ -1414,7 +1414,7 @@ export type CloneProductVariantsInput = { export type CloneProductVariantsPayload = { __typename?: 'CloneProductVariantsPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** Array of newly cloned product variants */ variants: Array> } @@ -1431,7 +1431,7 @@ export type CloneProductsInput = { export type CloneProductsPayload = { __typename?: 'CloneProductsPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** Array of newly cloned products */ products: Array> } @@ -1439,55 +1439,55 @@ export type CloneProductsPayload = { /** The details for creating a group */ export type CreateAccountGroupInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The group to create */ group: GroupInput /** The ID of the shop this group belongs to */ - shopId?: InputMaybe + shopId: InputMaybe } /** The response from the `createAccountGroup` mutation */ export type CreateAccountGroupPayload = { __typename?: 'CreateAccountGroupPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The new group */ - group?: Maybe + group: Maybe } /** Defines the account which should be created */ export type CreateAccountInput = { /** Bio to display on profile */ - bio?: InputMaybe + bio: InputMaybe /** Email record to create account with */ emails: Array> /** Name to display on profile */ - name?: InputMaybe + name: InputMaybe /** URL of picture to display on profile */ - picture?: InputMaybe + picture: InputMaybe /** The ID of the shop this account will belong to */ shopId: Scalars['ID'] /** The userID account was created from create a new account from */ userId: Scalars['ID'] /** Username */ - username?: InputMaybe + username: InputMaybe } /** The response from the `createAccount` mutation */ export type CreateAccountPayload = { __typename?: 'CreateAccountPayload' /** The added account */ - account?: Maybe + account: Maybe /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe } /** Input for the `createAddressValidationRule` mutation */ export type CreateAddressValidationRuleInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** Country codes for which this service is enabled. `null` means all, while an empty array means none. */ - countryCodes?: InputMaybe>> + countryCodes: InputMaybe>> /** * The name of one of the installed validation services. Use `addressValidationServices` * query to get a list, and then use the `name` field value from one of them. @@ -1503,13 +1503,13 @@ export type CreateAddressValidationRulePayload = { /** Created address validation rule */ addressValidationRule: AddressValidationRule /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe } /** The input necessary to create a cart */ export type CreateCartInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** Array of items to add to new cart. */ items: Array> /** ShopId association for the cart. */ @@ -1524,9 +1524,9 @@ export type CreateCartPayload = { * `incorrectPriceFailures` and `minOrderQuantityFailures` for information necessary to display * errors to the shopper. */ - cart?: Maybe + cart: Maybe /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** * Clients should check to see if any items failed to be added due to the price not matching the current price. * In general, a user interface should display the correct current prices to the shopper, confirm that they still @@ -1550,15 +1550,15 @@ export type CreateCartPayload = { * in some type of local storage solution, and then send it along with all future anonymous cart queries and * mutations. */ - token?: Maybe + token: Maybe } /** Describes the input for creating a discount code */ export type CreateDiscountCodeInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The discount code to update */ - discountCode?: InputMaybe + discountCode: InputMaybe /** The shop ID of the discount code to update */ shopId: Scalars['ID'] } @@ -1567,15 +1567,15 @@ export type CreateDiscountCodeInput = { export type CreateDiscountCodePayload = { __typename?: 'CreateDiscountCodePayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The created discount code */ - discountCode?: Maybe + discountCode: Maybe } /** Input for the `createFlatRateFulfillmentMethod` mutation */ export type CreateFlatRateFulfillmentMethodInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** This defines the flat rate fulfillment method that you want to create */ method: FlatRateFulfillmentMethodInput /** The shop to create this flat rate fulfillment method for */ @@ -1586,7 +1586,7 @@ export type CreateFlatRateFulfillmentMethodInput = { export type CreateFlatRateFulfillmentMethodPayload = { __typename?: 'CreateFlatRateFulfillmentMethodPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The created fulfillment method */ method: FlatRateFulfillmentMethod } @@ -1594,7 +1594,7 @@ export type CreateFlatRateFulfillmentMethodPayload = { /** Input for the `CreateFlatRateFulfillmentRestriction` mutation */ export type CreateFlatRateFulfillmentRestrictionInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** This defines the flat rate fulfillment method restriction that you want to create */ restriction: FlatRateFulfillmentRestrictionInput /** The shop to create this flat rate fulfillment method restriction for */ @@ -1605,7 +1605,7 @@ export type CreateFlatRateFulfillmentRestrictionInput = { export type CreateFlatRateFulfillmentRestrictionPayload = { __typename?: 'CreateFlatRateFulfillmentRestrictionPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The created flat rate fulfillment method restriction */ restriction: FlatRateFulfillmentRestriction } @@ -1613,7 +1613,7 @@ export type CreateFlatRateFulfillmentRestrictionPayload = { /** Input for the createMediaRecord mutation */ export type CreateMediaRecordInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The media record to insert, with related file data already fully uploaded to temporary storage */ mediaRecord: MediaRecordInput /** ID of shop that owns this MediaRecord */ @@ -1624,7 +1624,7 @@ export type CreateMediaRecordInput = { export type CreateMediaRecordPayload = { __typename?: 'CreateMediaRecordPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The created MediaRecord */ mediaRecord: MediaRecord } @@ -1632,7 +1632,7 @@ export type CreateMediaRecordPayload = { /** Input for the `createNavigationItem` mutation */ export type CreateNavigationItemInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The navigation item to create */ navigationItem: NavigationItemInput } @@ -1641,17 +1641,17 @@ export type CreateNavigationItemInput = { export type CreateNavigationItemPayload = { __typename?: 'CreateNavigationItemPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The created navigation item */ - navigationItem?: Maybe + navigationItem: Maybe } /** Input for the `createNavigationTree` mutation */ export type CreateNavigationTreeInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The draft navigation items that make up this tree */ - draftItems?: InputMaybe>> + draftItems: InputMaybe>> /** The name of the tree, for operator display purposes */ name: Scalars['String'] /** The ID of the shop this navigation tree belongs to */ @@ -1662,7 +1662,7 @@ export type CreateNavigationTreeInput = { export type CreateNavigationTreePayload = { __typename?: 'CreateNavigationTreePayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The created navigation tree */ navigationTree: NavigationTree } @@ -1670,18 +1670,18 @@ export type CreateNavigationTreePayload = { /** Input for the `createProduct` mutation */ export type CreateProductInput = { /** Product input */ - product?: InputMaybe + product: InputMaybe /** ID of shop product will belong to */ shopId: Scalars['ID'] /** Set to false if you do not want to auto-create the first variant of the product */ - shouldCreateFirstVariant?: InputMaybe + shouldCreateFirstVariant: InputMaybe } /** Response payload of `createProduct` mutation */ export type CreateProductPayload = { __typename?: 'CreateProductPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The created product */ product: Product } @@ -1693,14 +1693,14 @@ export type CreateProductVariantInput = { /** ID of shop product variant will belong to */ shopId: Scalars['ID'] /** Variant input */ - variant?: InputMaybe + variant: InputMaybe } /** Response payload of `createProductVariant` mutation */ export type CreateProductVariantPayload = { __typename?: 'CreateProductVariantPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The created product variant */ variant: ProductVariant } @@ -1717,14 +1717,14 @@ export type CreateRefundInput = { * An optional free text reason for refund, which may be shown to operators * or to the user who requested the refund. */ - reason?: InputMaybe + reason: InputMaybe } /** Response payload for the createRefund mutation */ export type CreateRefundPayload = { __typename?: 'CreateRefundPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The updated order */ order: Order } @@ -1732,26 +1732,26 @@ export type CreateRefundPayload = { /** Input parameters for the `createShop` mutation */ export type CreateShopInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** Currency in which all money values should be assumed to be. Default is `USD`. */ - currencyCode?: InputMaybe + currencyCode: InputMaybe /** Default language for translation and localization. Default is `en`. */ - defaultLanguage?: InputMaybe + defaultLanguage: InputMaybe /** Primary timezone. Default is `US/Pacific` */ - defaultTimezone?: InputMaybe + defaultTimezone: InputMaybe /** An optional description of the shop, intended for only admins to see */ - description?: InputMaybe + description: InputMaybe /** A unique name for the shop */ name: Scalars['String'] /** The shop type. Default is `primary`, but there may be only one primary shop. */ - type?: InputMaybe + type: InputMaybe } /** The response from the `createShop` mutation */ export type CreateShopPayload = { __typename?: 'CreateShopPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The shop which was created */ shop: Shop } @@ -1760,9 +1760,9 @@ export type CreateShopPayload = { export type CreateStripePaymentIntentInput = { cartId: Scalars['String'] /** If this cart is anonymous, provide the `token` that was returned in the `CreateCartPayload` */ - cartToken?: InputMaybe + cartToken: InputMaybe /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe shopId: Scalars['String'] } @@ -1770,14 +1770,14 @@ export type CreateStripePaymentIntentInput = { export type CreateStripePaymentIntentPayload = { __typename?: 'CreateStripePaymentIntentPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe - paymentIntentClientSecret?: Maybe + clientMutationId: Maybe + paymentIntentClientSecret: Maybe } /** Input for the `CreateSurcharge` mutation */ export type CreateSurchargeInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The shop to create this surcharge for */ shopId: Scalars['ID'] /** This defines the surcharge that you want to create */ @@ -1788,7 +1788,7 @@ export type CreateSurchargeInput = { export type CreateSurchargePayload = { __typename?: 'CreateSurchargePayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The created surcharge */ surcharge: Surcharge } @@ -1796,50 +1796,50 @@ export type CreateSurchargePayload = { /** The input for creating a tax rate */ export type CreateTaxRateInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** An optional country code to limit where this tax is applied based on destination address */ - country?: InputMaybe + country: InputMaybe /** An optional postal code to limit where this tax is applied based on destination address */ - postal?: InputMaybe + postal: InputMaybe /** The tax rate. For example, 0.05 for a 5% sales tax. */ rate: Scalars['Float'] /** An optional region (e.g., state) to limit where this tax is applied based on destination address */ - region?: InputMaybe + region: InputMaybe /** Shop ID */ shopId: Scalars['ID'] /** Whether the `country`, `postal`, and `region` filters apply to the origin address or the destination address */ - sourcing?: InputMaybe + sourcing: InputMaybe /** An optional tax code, to apply this tax rate to only products that have this tax code */ - taxCode?: InputMaybe + taxCode: InputMaybe } /** The response from the `createTaxRate` mutation */ export type CreateTaxRatePayload = { __typename?: 'CreateTaxRatePayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The created tax rate */ taxRate: TaxRate } export type CreateUserInput = { - email?: InputMaybe - password?: InputMaybe - username?: InputMaybe + email: InputMaybe + password: InputMaybe + username: InputMaybe } export type CreateUserResult = { __typename?: 'CreateUserResult' - loginResult?: Maybe - userId?: Maybe + loginResult: Maybe + userId: Maybe } /** Input for the createdAt database field */ export type CreatedAtInput = { /** Start date, inclusive */ - gte?: InputMaybe + gte: InputMaybe /** End date, inclusive */ - lte?: InputMaybe + lte: InputMaybe } /** Represents one type of currency */ @@ -1850,17 +1850,17 @@ export type Currency = Node & { /** Currency code */ code: Scalars['String'] /** Decimal symbol */ - decimal?: Maybe + decimal: Maybe /** Format string */ format: Scalars['String'] /** Exchange rate from shop default currency, if known */ - rate?: Maybe + rate: Maybe /** The decimal scale used by this currency */ - scale?: Maybe + scale: Maybe /** Currency symbol */ symbol: Scalars['String'] /** Thousands separator symbol */ - thousand?: Maybe + thousand: Maybe } /** The product price or price range for a specific currency */ @@ -1870,7 +1870,7 @@ export type CurrencyExchangeProductPricingInfo = { * A comparison price value, usually MSRP. If `price` is null, this will also be null. That is, * only purchasable variants will have a `compareAtPrice`. */ - compareAtPrice?: Maybe + compareAtPrice: Maybe /** The code for the currency these pricing details applies to */ currency: Currency /** @@ -1888,7 +1888,7 @@ export type CurrencyExchangeProductPricingInfo = { * with options and products, this will be `null`. There must be a price for a variant to be * added to a cart or purchased. Otherwise you would instead add one of its child options to a cart. */ - price?: Maybe + price: Maybe } /** Represents Mongo Database information */ @@ -1910,7 +1910,7 @@ export type Deletable = { /** Input for the `deleteAddressValidationRule` mutation */ export type DeleteAddressValidationRuleInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** ID of the rule you want to delete */ ruleId: Scalars['ID'] /** Shop ID of the rule you want to delete */ @@ -1923,13 +1923,13 @@ export type DeleteAddressValidationRulePayload = { /** Deleted address validation rule */ addressValidationRule: AddressValidationRule /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe } /** Describes the input for removing a discount code */ export type DeleteDiscountCodeInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The discount code ID */ discountCodeId: Scalars['ID'] /** Shop ID */ @@ -1940,15 +1940,15 @@ export type DeleteDiscountCodeInput = { export type DeleteDiscountCodePayload = { __typename?: 'DeleteDiscountCodePayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The deleted discount code */ - discountCode?: Maybe + discountCode: Maybe } /** Input for the `deleteFlatRateFulfillmentMethod` mutation */ export type DeleteFlatRateFulfillmentMethodInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The ID of the flat rate fulfillment method you want to delete */ methodId: Scalars['ID'] /** The shop that owns the method */ @@ -1959,7 +1959,7 @@ export type DeleteFlatRateFulfillmentMethodInput = { export type DeleteFlatRateFulfillmentMethodPayload = { __typename?: 'DeleteFlatRateFulfillmentMethodPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The removed fulfillment method */ method: FlatRateFulfillmentMethod } @@ -1967,7 +1967,7 @@ export type DeleteFlatRateFulfillmentMethodPayload = { /** Input for the `deleteFlatRateFulfillmentRestriction` mutation */ export type DeleteFlatRateFulfillmentRestrictionInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The ID of the flat rate fulfillment method restriction you want to delete */ restrictionId: Scalars['ID'] /** The shop that owns the flat rate fulfillment method restriction */ @@ -1978,7 +1978,7 @@ export type DeleteFlatRateFulfillmentRestrictionInput = { export type DeleteFlatRateFulfillmentRestrictionPayload = { __typename?: 'DeleteFlatRateFulfillmentRestrictionPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The removed flat rate fulfillment method restriction */ restriction: FlatRateFulfillmentRestriction } @@ -1986,7 +1986,7 @@ export type DeleteFlatRateFulfillmentRestrictionPayload = { /** Input for the deleteMediaRecord mutation */ export type DeleteMediaRecordInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** ID of MediaRecord to delete */ mediaRecordId: Scalars['ID'] /** ID of shop that owns this MediaRecord */ @@ -1997,7 +1997,7 @@ export type DeleteMediaRecordInput = { export type DeleteMediaRecordPayload = { __typename?: 'DeleteMediaRecordPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The deleted MediaRecord */ mediaRecord: MediaRecord } @@ -2005,7 +2005,7 @@ export type DeleteMediaRecordPayload = { /** Input for the `deleteNavigationItem` mutation */ export type DeleteNavigationItemInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The ID of the navigation item to delete */ id: Scalars['ID'] /** The ID of the shop navigation item belongs to */ @@ -2016,15 +2016,15 @@ export type DeleteNavigationItemInput = { export type DeleteNavigationItemPayload = { __typename?: 'DeleteNavigationItemPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The deleted navigation item */ - navigationItem?: Maybe + navigationItem: Maybe } /** Input for the `deleteSurcharge` mutation */ export type DeleteSurchargeInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The shop that owns the method */ shopId: Scalars['ID'] /** The ID of the flat rate fulfillment method you want to delete */ @@ -2035,7 +2035,7 @@ export type DeleteSurchargeInput = { export type DeleteSurchargePayload = { __typename?: 'DeleteSurchargePayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The removed fulfillment method */ surcharge: Surcharge } @@ -2043,7 +2043,7 @@ export type DeleteSurchargePayload = { /** Describes the input for removing a tax rate */ export type DeleteTaxRateInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** Shop ID */ shopId: Scalars['ID'] /** The tax rate ID */ @@ -2054,7 +2054,7 @@ export type DeleteTaxRateInput = { export type DeleteTaxRatePayload = { __typename?: 'DeleteTaxRatePayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The deleted tax rate */ taxRate: TaxRate } @@ -2066,34 +2066,34 @@ export type DeleteTaxRatePayload = { export type DestinationRestrictions = { __typename?: 'DestinationRestrictions' /** Restrict for any of these destination countries */ - country?: Maybe>> + country: Maybe>> /** Restrict for any of these destination postal codes */ - postal?: Maybe>> + postal: Maybe>> /** Restrict for any of these destination regions */ - region?: Maybe>> + region: Maybe>> } /** Input for a destination restriction condition */ export type DestinationRestrictionsInput = { /** Restrict for any of these destination countries */ - country?: InputMaybe>> + country: InputMaybe>> /** Restrict for any of these destination postal codes */ - postal?: InputMaybe>> + postal: InputMaybe>> /** Restrict for any of these destination regions */ - region?: InputMaybe>> + region: InputMaybe>> } /** Discount code calculation */ export type DiscountCalculation = { __typename?: 'DiscountCalculation' /** Discount code calculation method */ - method?: Maybe + method: Maybe } /** Input type for discount calculation */ export type DiscountCalculationInput = { /** Discount code calculation method */ - method?: InputMaybe + method: InputMaybe } /** Discount calculation types */ @@ -2114,26 +2114,26 @@ export type DiscountCode = { /** Discount code ID */ _id: Scalars['ID'] /** How the discount should be applied */ - calculation?: Maybe + calculation: Maybe /** Discount Code */ code: Scalars['String'] /** Discount code conditions */ - conditions?: Maybe + conditions: Maybe /** Description to describe the discount code */ - description?: Maybe + description: Maybe /** * Discount is allowed to be string or number. * it's a formula value (could be shipping code) */ - discount?: Maybe + discount: Maybe /** Discount method type */ - discountMethod?: Maybe + discountMethod: Maybe /** Label to describe the code */ - label?: Maybe + label: Maybe /** The shop to which this DiscountCode belongs to */ shop: Shop /** History of transactions */ - transactions?: Maybe>> + transactions: Maybe>> } /** @@ -2147,12 +2147,12 @@ export type DiscountCode = { export type DiscountCodeConnection = { __typename?: 'DiscountCodeConnection' /** The list of nodes that match the query, wrapped in an edge to provide a cursor string for each */ - edges?: Maybe>> + edges: Maybe>> /** * You can request the `nodes` directly to avoid the extra wrapping that `NodeEdge` has, * if you know you will not need to paginate the results. */ - nodes?: Maybe>> + nodes: Maybe>> /** Information to help a client request the next or previous page */ pageInfo: PageInfo /** The total number of nodes that match your query */ @@ -2165,110 +2165,110 @@ export type DiscountCodeEdge = { /** The cursor that represents this node in the paginated results */ cursor: Scalars['ConnectionCursor'] /** The discount code */ - node?: Maybe + node: Maybe } /** Input type for filters to be applied to an discount codes list */ export type DiscountCodeFilterInput = { /** Keywords typed by the user in the search input field */ - searchField?: InputMaybe + searchField: InputMaybe } /** Input type for a discount code */ export type DiscountCodeInput = { /** How the discount should be applied */ - calculation?: InputMaybe + calculation: InputMaybe /** Discount Code */ code: Scalars['String'] /** Discount code conditions */ - conditions?: InputMaybe + conditions: InputMaybe /** Description to describe the discount code */ - description?: InputMaybe + description: InputMaybe /** * Discount is allowed to be string or number. * it's a formula value (could be shipping code) */ - discount?: InputMaybe + discount: InputMaybe /** Discount method type */ - discountMethod?: InputMaybe + discountMethod: InputMaybe /** Label to describe the code */ - label?: InputMaybe + label: InputMaybe /** History of transactions */ - transactions?: InputMaybe>> + transactions: InputMaybe>> } /** The conditions an order must meet for a discount code to be applied */ export type DiscountConditionOrder = { __typename?: 'DiscountConditionOrder' /** Order date range end */ - endDate?: Maybe + endDate: Maybe /** Maximum order value */ - max?: Maybe + max: Maybe /** Minimum order value */ min: Scalars['Float'] /** Order date range start */ - startDate?: Maybe + startDate: Maybe } /** Discount order conditions input type */ export type DiscountConditionOrderInput = { /** Order date range end */ - endDate?: InputMaybe + endDate: InputMaybe /** Maximum order value */ - max?: InputMaybe + max: InputMaybe /** Minimum order value */ min: Scalars['Float'] /** Order date range start */ - startDate?: InputMaybe + startDate: InputMaybe } /** Conditions for a discount code to be applied */ export type DiscountConditions = { __typename?: 'DiscountConditions' /** Account Limit */ - accountLimit?: Maybe + accountLimit: Maybe /** Audience that may apply this discount code */ - audience?: Maybe>> + audience: Maybe>> /** Is this discount code enabled */ enabled: Scalars['Boolean'] /** Order conditions */ - order?: Maybe + order: Maybe /** Permissions that may apply this discount code */ - permissions?: Maybe>> + permissions: Maybe>> /** Products that may apply this discount code */ - products?: Maybe>> + products: Maybe>> /** * Number of times this code may be redeemed. * Setting to 100 means the first 100 customers may apply this code. * Setting this value to 0 will allow this code to be applied an infinite number of times. */ - redemptionLimit?: Maybe + redemptionLimit: Maybe /** Tags that may be apply this discount code */ - tags?: Maybe>> + tags: Maybe>> } /** Discount conditions input type */ export type DiscountConditionsInput = { /** Account Limit */ - accountLimit?: InputMaybe + accountLimit: InputMaybe /** Audience that may apply this discount code */ - audience?: InputMaybe>> + audience: InputMaybe>> /** Is this discount code enabled */ enabled: Scalars['Boolean'] /** Order conditions */ - order?: InputMaybe + order: InputMaybe /** Permissions that may apply this discount code */ - permissions?: InputMaybe>> + permissions: InputMaybe>> /** Products that may apply this discount code */ - products?: InputMaybe>> + products: InputMaybe>> /** * Number of times this code may be redeemed. * Setting to 100 means the first 100 customers may apply this code. * Setting this value to 0 will allow this code to be applied an infinite number of times. */ - redemptionLimit?: InputMaybe + redemptionLimit: InputMaybe /** Tags that may be apply this discount code */ - tags?: InputMaybe>> + tags: InputMaybe>> } /** Discount method types */ @@ -2283,7 +2283,7 @@ export enum DiscountMethod { export type DiscountTransaction = { __typename?: 'DiscountTransaction' /** Date the code was applied */ - appliedAt?: Maybe + appliedAt: Maybe /** Cart id */ cartId: Scalars['String'] /** User id */ @@ -2293,7 +2293,7 @@ export type DiscountTransaction = { /** Discount transation input type */ export type DiscountTransactionInput = { /** Date the code was applied */ - appliedAt?: InputMaybe + appliedAt: InputMaybe /** Cart id */ cartId: Scalars['String'] /** User id */ @@ -2334,12 +2334,12 @@ export type EmailJob = { export type EmailJobConnection = { __typename?: 'EmailJobConnection' /** The list of nodes that match the query, wrapped in an edge to provide a cursor string for each */ - edges?: Maybe>> + edges: Maybe>> /** * You can request the `nodes` directly to avoid the extra wrapping that `NodeEdge` has, * if you know you will not need to paginate the results. */ - nodes?: Maybe>> + nodes: Maybe>> /** Information to help a client request the next or previous page */ pageInfo: PageInfo /** The total number of nodes that match your query */ @@ -2361,34 +2361,34 @@ export type EmailJobEdge = { /** The cursor that represents this node in the paginated results */ cursor: Scalars['ConnectionCursor'] /** The product */ - node?: Maybe + node: Maybe } /** A confirmable email record */ export type EmailRecord = { __typename?: 'EmailRecord' /** The actual email address */ - address?: Maybe + address: Maybe /** The services provided by this address */ - provides?: Maybe + provides: Maybe /** Has this address been verified? */ - verified?: Maybe + verified: Maybe } /** A confirmable email record */ export type EmailRecordInput = { /** The actual email address */ - address?: InputMaybe + address: InputMaybe /** The services provided by this address */ - provides?: InputMaybe + provides: InputMaybe /** Has this address been verified? */ - verified?: InputMaybe + verified: InputMaybe } /** Input for the `enablePaymentMethodForShop` mutation */ export type EnablePaymentMethodForShopInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** True to enable it or false to disable it */ isEnabled: Scalars['Boolean'] /** The name of the payment method to enable or disable */ @@ -2401,7 +2401,7 @@ export type EnablePaymentMethodForShopInput = { export type EnablePaymentMethodForShopPayload = { __typename?: 'EnablePaymentMethodForShopPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The full list of payment methods for the shop */ paymentMethods: Array> } @@ -2424,7 +2424,7 @@ export type ExampleIouPaymentMethodData = { export type FakeData = { __typename?: 'FakeData' /** Do not use this */ - doNotUse?: Maybe + doNotUse: Maybe } /** Defines a fulfillment method that has a fixed price. This type is provided by the `flat-rate` fulfillment plugin. */ @@ -2433,7 +2433,7 @@ export type FlatRateFulfillmentMethod = Node & { /** The flat rate fulfillment method ID */ _id: Scalars['ID'] /** The cost of this fulfillment method to the shop, if you track this */ - cost?: Maybe + cost: Maybe /** The fulfillment types for which this method may be used. For example, `shipping` or `digital`. */ fulfillmentTypes: Array> /** The group to which this method belongs */ @@ -2463,12 +2463,12 @@ export type FlatRateFulfillmentMethod = Node & { export type FlatRateFulfillmentMethodConnection = { __typename?: 'FlatRateFulfillmentMethodConnection' /** The list of nodes that match the query, wrapped in an edge to provide a cursor string for each */ - edges?: Maybe>> + edges: Maybe>> /** * You can request the `nodes` directly to avoid the extra wrapping that `NodeEdge` has, * if you know you will not need to paginate the results. */ - nodes?: Maybe>> + nodes: Maybe>> /** Information to help a client request the next or previous page */ pageInfo: PageInfo /** The total number of nodes that match your query */ @@ -2481,13 +2481,13 @@ export type FlatRateFulfillmentMethodEdge = { /** The cursor that represents this node in the paginated results */ cursor: Scalars['ConnectionCursor'] /** The fulfillment method */ - node?: Maybe + node: Maybe } /** Defines a fulfillment method that has a fixed price. This type is provided by the `flat-rate` fulfillment plugin. */ export type FlatRateFulfillmentMethodInput = { /** The cost of this fulfillment method to the shop, if you track this */ - cost?: InputMaybe + cost: InputMaybe /** The fulfillment types for which this method may be used. For example, `shipping` or `digital`. */ fulfillmentTypes: Array> /** The group to which this method belongs */ @@ -2510,11 +2510,11 @@ export type FlatRateFulfillmentRestriction = Node & { /** The restriction ID. */ _id: Scalars['ID'] /** Attribute restrictions. Multiple attribute restrictions are evaluated with AND. If both destination and attribute restrictions are present, they evaluate with AND. */ - attributes?: Maybe>> + attributes: Maybe>> /** Destination restrictions. If multiple destination restrictions are present, the most localized is the only one evaluated (i.e. evaluate postal if present, then region if present, then country). If both destination and attribute restrictions are present, they evaluate with AND. */ - destination?: Maybe + destination: Maybe /** Method IDs to apply this restriction to. If none, applies to all methods as a universal restriction. */ - methodIds?: Maybe>> + methodIds: Maybe>> /** The shop ID */ shopId: Scalars['ID'] /** The type of this restriction. Allowed types are `allow` or `deny`. */ @@ -2532,12 +2532,12 @@ export type FlatRateFulfillmentRestriction = Node & { export type FlatRateFulfillmentRestrictionConnection = { __typename?: 'FlatRateFulfillmentRestrictionConnection' /** The list of nodes that match the query, wrapped in an edge to provide a cursor string for each */ - edges?: Maybe>> + edges: Maybe>> /** * You can request the `nodes` directly to avoid the extra wrapping that `NodeEdge` has, * if you know you will not need to paginate the results. */ - nodes?: Maybe>> + nodes: Maybe>> /** Information to help a client request the next or previous page */ pageInfo: PageInfo /** The total number of nodes that match your query */ @@ -2550,17 +2550,17 @@ export type FlatRateFulfillmentRestrictionEdge = { /** The cursor that represents this node in the paginated results */ cursor: Scalars['ConnectionCursor'] /** The flat rate fulfillment restriction */ - node?: Maybe + node: Maybe } /** Defines the input for a flat rate fulfillment method restriction. */ export type FlatRateFulfillmentRestrictionInput = { /** Attribute restrictions. Multiple attribute restrictions are evaluated with AND. If both destination and attribute restrictions are present, they evaluate with AND. */ - attributes?: InputMaybe>> + attributes: InputMaybe>> /** Destination restrictions. If multiple destination restrictions are present, the most localized is the only one evaluated (i.e. evaluate postal if present, then region if present, then country). If both destination and attribute restrictions are present, they evaluate with AND. */ - destination?: InputMaybe + destination: InputMaybe /** Method IDs to apply this restriction to. If none, applies to all methods as a universal restriction. */ - methodIds?: InputMaybe>> + methodIds: InputMaybe>> /** The type of this restriction. Allowed types are `allow` or `deny`. */ type: RestrictionTypeEnum } @@ -2575,7 +2575,7 @@ export enum FlatRateFulfillmentRestrictionSortByField { export type FulfillmentData = { __typename?: 'FulfillmentData' /** The mailing address to which this fulfillment group should be shipped */ - shippingAddress?: Maybe
+ shippingAddress: Maybe
} /** @@ -2593,13 +2593,13 @@ export type FulfillmentGroup = Node & { */ availableFulfillmentOptions: Array> /** Information needed by the fulfillment type to properly fulfill the order */ - data?: Maybe + data: Maybe /** The items that are included in this fulfillment group */ items: Array> /** The fulfillment method selected by a shopper for this group, with its associated price */ - selectedFulfillmentOption?: Maybe + selectedFulfillmentOption: Maybe /** The shipping address collected for this group, if relevant */ - shippingAddress?: Maybe
+ shippingAddress: Maybe
/** The shop that owns the items in this group and is responsible for fulfillment */ shop: Shop /** The fulfillment type. Any valid type that has been registered by a fulfillment plugin. Examples: `shipping`, `digital` */ @@ -2615,13 +2615,13 @@ export type FulfillmentMethod = Node & { /** The fulfillment method ID */ _id: Scalars['ID'] /** A carrier name */ - carrier?: Maybe + carrier: Maybe /** The name of this method, for display in the user interface */ displayName: Scalars['String'] /** The fulfillment types for which this method may be used. For example, `shipping` or `digital`. */ fulfillmentTypes: Array> /** The group to which this method belongs */ - group?: Maybe + group: Maybe /** The name of this method, a unique identifier */ name: Scalars['String'] } @@ -2630,7 +2630,7 @@ export type FulfillmentMethod = Node & { export type FulfillmentOption = { __typename?: 'FulfillmentOption' /** The fulfillment method this pricing is for */ - fulfillmentMethod?: Maybe + fulfillmentMethod: Maybe /** The additional amount charged for handling */ handlingPrice: Money /** The base price charged */ @@ -2650,7 +2650,7 @@ export enum FulfillmentType { /** Input for the `generateSitemaps` mutation */ export type GenerateSitemapsInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The ID of the shop to generate sitemap for */ shopId: Scalars['ID'] } @@ -2659,7 +2659,7 @@ export type GenerateSitemapsInput = { export type GenerateSitemapsPayload = { __typename?: 'GenerateSitemapsPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** Whether the sitemap generation job was successfully scheduled */ wasJobScheduled: Scalars['Boolean'] } @@ -2671,7 +2671,7 @@ export type GenerateSitemapsPayload = { export type GlobalSettings = { __typename?: 'GlobalSettings' /** A fake setting necessary until some plugin extends this with a real setting */ - doNotUse?: Maybe + doNotUse: Maybe } /** @@ -2681,14 +2681,14 @@ export type GlobalSettings = { */ export type GlobalSettingsUpdates = { /** Do not use this field */ - doNotUse?: InputMaybe + doNotUse: InputMaybe } export type GrantOrRevokeAdminUiAccessInput = { /** The account ID to update */ accountId: Scalars['String'] /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The shop IDs to unassign or assign to the accounts */ shopId: Scalars['String'] } @@ -2696,9 +2696,9 @@ export type GrantOrRevokeAdminUiAccessInput = { export type GrantOrRevokeAdminUiAccessPayload = { __typename?: 'GrantOrRevokeAdminUIAccessPayload' /** The up to date account object */ - account?: Maybe + account: Maybe /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: Maybe + clientMutationId: Maybe } /** Represents an account group */ @@ -2709,15 +2709,15 @@ export type Group = Node & { /** The date and time at which this group was created */ createdAt: Scalars['DateTime'] /** The account that created this group */ - createdBy?: Maybe + createdBy: Maybe /** A free text description of this group */ - description?: Maybe + description: Maybe /** A unique name for the group */ name: Scalars['String'] /** A list of the account permissions implied by membership in this group */ - permissions?: Maybe>> + permissions: Maybe>> /** The shop to which this group belongs */ - shop?: Maybe + shop: Maybe /** A unique URL-safe string representing this group */ slug: Scalars['String'] /** The date and time at which this group was last updated */ @@ -2735,12 +2735,12 @@ export type Group = Node & { export type GroupConnection = { __typename?: 'GroupConnection' /** The list of nodes that match the query, wrapped in an edge to provide a cursor string for each */ - edges?: Maybe>> + edges: Maybe>> /** * You can request the `nodes` directly to avoid the extra wrapping that `NodeEdge` has, * if you know you will not need to paginate the results. */ - nodes?: Maybe>> + nodes: Maybe>> /** Information to help a client request the next or previous page */ pageInfo: PageInfo /** The total number of nodes that match your query */ @@ -2753,19 +2753,19 @@ export type GroupEdge = NodeEdge & { /** The cursor that represents this node in the paginated results */ cursor: Scalars['ConnectionCursor'] /** The group */ - node?: Maybe + node: Maybe } /** A group definition */ export type GroupInput = { /** A free text description of this group */ - description?: InputMaybe + description: InputMaybe /** A unique name for the group */ name: Scalars['String'] /** A list of the account permissions implied by membership in this group */ - permissions?: InputMaybe>> + permissions: InputMaybe>> /** A unique URL-safe string representing this group */ - slug?: InputMaybe + slug: InputMaybe } /** The fields by which you are allowed to sort any query that returns an `GroupConnection` */ @@ -2784,49 +2784,49 @@ export enum GroupSortByField { export type ImageInfo = { __typename?: 'ImageInfo' /** A list of URLs for various size files of this image */ - URLs?: Maybe + URLs: Maybe /** ID */ - _id?: Maybe + _id: Maybe /** * Sort by priority ascending when displaying more than one image for a product in a user interface. * This is an integer with 1 being the first / highest priority image. */ - priority?: Maybe + priority: Maybe /** The related product ID */ - productId?: Maybe + productId: Maybe /** The related variant ID, if linked with a particular variant */ - variantId?: Maybe + variantId: Maybe } /** A list of URLs for various sizes of an image */ export type ImageSizes = { __typename?: 'ImageSizes' /** Use this URL to get a large resolution file for this image */ - large?: Maybe + large: Maybe /** Use this URL to get a medium resolution file for this image */ - medium?: Maybe + medium: Maybe /** * Use this URL to get this image with its original resolution as uploaded. This may not be * the true original size if there is a hard cap on how big image files can be. */ - original?: Maybe + original: Maybe /** Use this URL to get a small resolution file for this image */ - small?: Maybe + small: Maybe /** Use this URL to get a thumbnail resolution file for this image */ - thumbnail?: Maybe + thumbnail: Maybe } export type ImpersonateReturn = { __typename?: 'ImpersonateReturn' - authorized?: Maybe - tokens?: Maybe - user?: Maybe + authorized: Maybe + tokens: Maybe + user: Maybe } export type ImpersonationUserIdentityInput = { - email?: InputMaybe - userId?: InputMaybe - username?: InputMaybe + email: InputMaybe + userId: InputMaybe + username: InputMaybe } /** Details about a CartItemInput that failed to be added to a cart due to a price mismatch */ @@ -2850,9 +2850,9 @@ export type Invitation = Node & { /** The groups this person was invited to */ groups: Array> /** The admin who invited this person */ - invitedBy?: Maybe + invitedBy: Maybe /** The shop this person was invited to. Optional because we can also invite merchants to create their own shops. */ - shop?: Maybe + shop: Maybe } /** @@ -2866,12 +2866,12 @@ export type Invitation = Node & { export type InvitationConnection = { __typename?: 'InvitationConnection' /** The list of nodes that match the query, wrapped in an edge to provide a cursor string for each */ - edges?: Maybe>> + edges: Maybe>> /** * You can request the `nodes` directly to avoid the extra wrapping that `NodeEdge` has, * if you know you will not need to paginate the results. */ - nodes?: Maybe>> + nodes: Maybe>> /** Information to help a client request the next or previous page */ pageInfo: PageInfo /** The total number of nodes that match your query */ @@ -2884,41 +2884,41 @@ export type InvitationEdge = NodeEdge & { /** The cursor that represents this node in the paginated results */ cursor: Scalars['ConnectionCursor'] /** The account */ - node?: Maybe + node: Maybe } /** Input parameters for the inviteShopMember mutation */ export type InviteShopMemberInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The email address of the person to invite */ email: Scalars['String'] /** The permission group for this person's new account. DEPRECATED. Use `groupIds` field instead. */ - groupId?: InputMaybe + groupId: InputMaybe /** The permission groups for this person's new account */ - groupIds?: InputMaybe>> + groupIds: InputMaybe>> /** The invitee's full name */ name: Scalars['String'] /** The ID of the shop to which you want to invite this person */ shopId: Scalars['ID'] /** Whether the newly invited user should get admin UI access to the shop upon sign-up */ - shouldGetAdminUIAccess?: InputMaybe + shouldGetAdminUIAccess: InputMaybe } /** The response from the `inviteShopMember` mutation */ export type InviteShopMemberPayload = { __typename?: 'InviteShopMemberPayload' /** The account that was successfully created or found and updated by inviting this shop member */ - account?: Maybe + account: Maybe /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe } export type LoginResult = { __typename?: 'LoginResult' - sessionId?: Maybe - tokens?: Maybe - user?: Maybe + sessionId: Maybe + tokens: Maybe + user: Maybe } /** Mass units */ @@ -2989,29 +2989,29 @@ export type MediaRecordMetadata = { /** True if the MediaRecord is archived. This typically means that the media will not show in a storefront but the image file data still exists. */ isArchived: Scalars['Boolean'] /** ID of the account that uploaded the file */ - ownerId?: Maybe + ownerId: Maybe /** Priority among media files with similar metadata */ - priority?: Maybe + priority: Maybe /** ID of the related product, if the media is for a product */ - productId?: Maybe + productId: Maybe /** ID of the shop that owns the media */ shopId: Scalars['String'] /** A string that identifies where this media will be used, for filtering */ - type?: Maybe + type: Maybe /** ID of the related product variant, if the media is for a product variant */ - variantId?: Maybe + variantId: Maybe } /** Custom metadata for the media record */ export type MediaRecordMetadataInput = { /** Priority among media files with similar metadata */ - priority?: InputMaybe + priority: InputMaybe /** ID of the related product, if the media is for a product */ - productId?: InputMaybe + productId: InputMaybe /** A string that identifies where this media will be used, for filtering */ - type?: InputMaybe + type: InputMaybe /** ID of the related product variant, if the media is for a product variant */ - variantId?: InputMaybe + variantId: InputMaybe } /** Input to add a surcharge message with language */ @@ -3026,33 +3026,33 @@ export type MessagesByLanguageInput = { export type Metafield = { __typename?: 'Metafield' /** Field description */ - description?: Maybe + description: Maybe /** Field key */ - key?: Maybe + key: Maybe /** Field namespace */ - namespace?: Maybe + namespace: Maybe /** Field scope */ - scope?: Maybe + scope: Maybe /** Field value */ - value?: Maybe + value: Maybe /** Field value type */ - valueType?: Maybe + valueType: Maybe } /** User defined attributes. You can include only `key` and use these like tags, or also include a `value`. */ export type MetafieldInput = { /** Field description */ - description?: InputMaybe + description: InputMaybe /** Field key */ key: Scalars['String'] /** Field namespace */ - namespace?: InputMaybe + namespace: InputMaybe /** Field scope */ - scope?: InputMaybe + scope: InputMaybe /** Field value */ - value?: InputMaybe + value: InputMaybe /** Field value type */ - valueType?: InputMaybe + valueType: InputMaybe } /** Details about a CartItemInput that failed to be added to a cart due to a quantity error */ @@ -3088,7 +3088,7 @@ export type MoneyInput = { /** Input for the moveOrderItems mutation */ export type MoveOrderItemsInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The ID of the order fulfillment group from which all the items are to be moved. */ fromFulfillmentGroupId: Scalars['ID'] /** The list of item IDs to move. The full quantity must be moved. */ @@ -3103,7 +3103,7 @@ export type MoveOrderItemsInput = { export type MoveOrderItemsPayload = { __typename?: 'MoveOrderItemsPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The updated order */ order: Order } @@ -3112,14 +3112,14 @@ export type MoveOrderItemsPayload = { export type Mutation = { __typename?: 'Mutation' /** Add a new address to the `addressBook` field for an account */ - addAccountAddressBookEntry?: Maybe + addAccountAddressBookEntry: Maybe /** Add an email address to an account */ - addAccountEmailRecord?: Maybe + addAccountEmailRecord: Maybe /** Add an account to a group */ - addAccountToGroup?: Maybe + addAccountToGroup: Maybe /** Add item(s) to a cart */ addCartItems: AddCartItemsPayload - addEmail?: Maybe + addEmail: Maybe /** * Use this mutation to add a new order fulfillment group to an order. It must have at least one * item. Items may be provided or moved from another existing group or both. @@ -3139,7 +3139,7 @@ export type Mutation = { archiveProductVariants: ArchiveProductVariantsPayload /** Archive products */ archiveProducts: ArchiveProductsPayload - authenticate?: Maybe + authenticate: Maybe /** * Use this mutation to cancel one item of an order, either for the full ordered quantity * or for a partial quantity. If partial, the item will be split into two items and the @@ -3152,21 +3152,21 @@ export type Mutation = { cancelOrderItem: CancelOrderItemPayload /** Capture one or more payments for an order */ captureOrderPayments: CaptureOrderPaymentsPayload - changePassword?: Maybe + changePassword: Maybe /** Clone an existing product variant */ cloneProductVariants: CloneProductVariantsPayload /** Clone an existing product */ cloneProducts: CloneProductsPayload /** Create an account based off a user */ - createAccount?: Maybe + createAccount: Maybe /** Create a new account group. These are usually used for account permissions */ - createAccountGroup?: Maybe + createAccountGroup: Maybe /** Create an address validation rule */ createAddressValidationRule: CreateAddressValidationRulePayload /** Create a new cart */ createCart: CreateCartPayload /** Create a new discount code */ - createDiscountCode?: Maybe + createDiscountCode: Maybe /** Create a flat rate fulfillment method */ createFlatRateFulfillmentMethod: CreateFlatRateFulfillmentMethodPayload /** Create a flat rate fulfillment method restriction. */ @@ -3174,7 +3174,7 @@ export type Mutation = { /** Create the MediaRecord for file data after you upload it */ createMediaRecord: CreateMediaRecordPayload /** Create a new navigation item */ - createNavigationItem?: Maybe + createNavigationItem: Maybe /** Create a new navigation tree */ createNavigationTree: CreateNavigationTreePayload /** Create a new product */ @@ -3190,12 +3190,12 @@ export type Mutation = { /** Create a surcharge */ createSurcharge: CreateSurchargePayload /** Create a new tax rate */ - createTaxRate?: Maybe - createUser?: Maybe + createTaxRate: Maybe + createUser: Maybe /** Delete an address validation rule */ deleteAddressValidationRule: DeleteAddressValidationRulePayload /** Delete a discount code */ - deleteDiscountCode?: Maybe + deleteDiscountCode: Maybe /** Delete a flat rate fulfillment method */ deleteFlatRateFulfillmentMethod: DeleteFlatRateFulfillmentMethodPayload /** Delete a flat rate fulfillment method restriction */ @@ -3203,26 +3203,26 @@ export type Mutation = { /** Delete a MediaRecord to delete both the record and the backing file data */ deleteMediaRecord: DeleteMediaRecordPayload /** Delete a navigation item */ - deleteNavigationItem?: Maybe + deleteNavigationItem: Maybe /** Delete a flat rate fulfillment restriction */ deleteSurcharge: DeleteSurchargePayload /** Delete a tax rate */ - deleteTaxRate?: Maybe + deleteTaxRate: Maybe /** A test mutation that returns whatever string you send it */ - echo?: Maybe + echo: Maybe /** Enable a payment method for a shop */ enablePaymentMethodForShop: EnablePaymentMethodForShopPayload /** Generate sitemap documents */ generateSitemaps: GenerateSitemapsPayload /** Grant admin UI access for shops to a specific users */ grantAdminUIAccess: GrantOrRevokeAdminUiAccessPayload - impersonate?: Maybe + impersonate: Maybe /** * Given a person's email address and name, invite them to create an account for a certain shop, * and put them in the provided permission group */ - inviteShopMember?: Maybe - logout?: Maybe + inviteShopMember: Maybe + logout: Maybe /** Use this mutation to move one or more items between existing order fulfillment groups. */ moveOrderItems: MoveOrderItemsPayload /** @@ -3231,22 +3231,22 @@ export type Mutation = { */ placeOrder: PlaceOrderPayload /** Publish the draft structure for a navigation tree and the draft changes for all of its navigation items. Sets hasUnpublishedChanges to false on tree and its items */ - publishNavigationChanges?: Maybe + publishNavigationChanges: Maybe /** Publish products to the Catalog collection by product ID */ - publishProductsToCatalog?: Maybe>> + publishProductsToCatalog: Maybe>> /** Force recalculation of the system-managed `inventoryReserved` field based on current order statuses */ recalculateReservedSimpleInventory: RecalculateReservedSimpleInventoryPayload /** Reconcile an anonymous cart with the current account cart for the same shop */ reconcileCarts: ReconcileCartsPayload - refreshTokens?: Maybe + refreshTokens: Maybe /** Remove an address from the `addressBook` field for an account */ - removeAccountAddressBookEntry?: Maybe + removeAccountAddressBookEntry: Maybe /** Remove an email address from an account */ - removeAccountEmailRecord?: Maybe + removeAccountEmailRecord: Maybe /** Remove an account from a group */ - removeAccountFromGroup?: Maybe + removeAccountFromGroup: Maybe /** Remove an existing account group */ - removeAccountGroup?: Maybe + removeAccountGroup: Maybe /** Remove item(s) from a cart */ removeCartItems: RemoveCartItemsPayload /** Remove a discount code from a cart */ @@ -3255,7 +3255,7 @@ export type Mutation = { removeTag: RemoveTagPayload /** Bulk operation for removing an array of tags from an array of products */ removeTagsFromProducts: ProductTagsOperationPayload - resetPassword?: Maybe + resetPassword: Maybe /** Retry a failed or cancelled email job */ retryFailedEmail: RetryFailedEmailPayload /** Revoke admin UI access to shops for specific users */ @@ -3263,11 +3263,11 @@ export type Mutation = { /** Select a fulfillment option from the `availableFulfillmentOptions` list for a fulfillment group */ selectFulfillmentOptionForGroup: SelectFulfillmentOptionForGroupPayload /** Send a reset password email to an email address from an account */ - sendResetAccountPasswordEmail?: Maybe - sendResetPasswordEmail?: Maybe - sendVerificationEmail?: Maybe + sendResetAccountPasswordEmail: Maybe + sendResetPasswordEmail: Maybe + sendVerificationEmail: Maybe /** Set default email address for an account */ - setAccountDefaultEmail?: Maybe + setAccountDefaultEmail: Maybe /** Set the email address for an anonymous cart */ setEmailOnAnonymousCart: SetEmailOnAnonymousCartPayload /** Set the shipping address for all fulfillment groups */ @@ -3281,14 +3281,14 @@ export type Mutation = { * the item order right now. */ splitOrderItem: SplitOrderItemPayload - twoFactorSet?: Maybe - twoFactorUnset?: Maybe + twoFactorSet: Maybe + twoFactorUnset: Maybe /** Update account fields */ - updateAccount?: Maybe + updateAccount: Maybe /** Remove an address that exists in the `addressBook` field for an account */ - updateAccountAddressBookEntry?: Maybe + updateAccountAddressBookEntry: Maybe /** Update an existing account group */ - updateAccountGroup?: Maybe + updateAccountGroup: Maybe /** Update an address validation rule */ updateAddressValidationRule: UpdateAddressValidationRulePayload /** Update admin UI access to shops for specific users */ @@ -3296,7 +3296,7 @@ export type Mutation = { /** Update cart item(s) quantity. Use absolute quantity. If updating to 0, the item will be removed. */ updateCartItemsQuantity: UpdateCartItemsQuantityPayload /** Update a discount code */ - updateDiscountCode?: Maybe + updateDiscountCode: Maybe /** Update a flat rate fulfillment method */ updateFlatRateFulfillmentMethod: UpdateFlatRateFulfillmentMethodPayload /** Update a flat rate fulfillment method restriction */ @@ -3315,13 +3315,13 @@ export type Mutation = { */ updateGlobalSettings: UpdateGlobalSettingsPayload /** Bulk-update groups for accounts */ - updateGroupsForAccounts?: Maybe + updateGroupsForAccounts: Maybe /** Update the priority metadata for a MediaRecord. Used for sorting product and variant media in the catalog. */ updateMediaRecordPriority: UpdateMediaRecordPriorityPayload /** Update an existing navigation item's draft data. Sets hasUnpublishedChanges to true */ - updateNavigationItem?: Maybe + updateNavigationItem: Maybe /** Update an existing navigation tree's draft items. Sets hasUnpublishedChanges to true */ - updateNavigationTree?: Maybe + updateNavigationTree: Maybe /** Use this mutation to update order details after the order has been placed. */ updateOrder: UpdateOrderPayload /** Use this mutation to update an order fulfillment group status and tracking information. */ @@ -3348,11 +3348,11 @@ export type Mutation = { /** Updates an existing tag */ updateTag: UpdateTagPayload /** Update a tax rate */ - updateTaxRate?: Maybe + updateTaxRate: Maybe /** Updates an existing template */ updateTemplate: UpdateTemplatePayload - verifyAuthentication?: Maybe - verifyEmail?: Maybe + verifyAuthentication: Maybe + verifyEmail: Maybe /** Use this mutation to verify the SMTP email settings */ verifySMTPEmailSettings: VerifySmtpEmailSettingsInputPayload } @@ -3586,7 +3586,7 @@ export type MutationDeleteTaxRateArgs = { /** Mutations have side effects, such as mutating data or triggering a task */ export type MutationEchoArgs = { - str?: InputMaybe + str: InputMaybe } /** Mutations have side effects, such as mutating data or triggering a task */ @@ -3596,7 +3596,7 @@ export type MutationEnablePaymentMethodForShopArgs = { /** Mutations have side effects, such as mutating data or triggering a task */ export type MutationGenerateSitemapsArgs = { - input?: InputMaybe + input: InputMaybe } /** Mutations have side effects, such as mutating data or triggering a task */ @@ -3927,13 +3927,13 @@ export type NavigationItem = Node & { /** The date and time at which this navigation item was created */ createdAt: Scalars['DateTime'] /** The published data for this navigation item */ - data?: Maybe + data: Maybe /** The draft/unpublished data for this navigation item */ - draftData?: Maybe + draftData: Maybe /** Whether the navigation item has unpublished changes */ - hasUnpublishedChanges?: Maybe + hasUnpublishedChanges: Maybe /** An object storing additional metadata about the navigation item (such as its related tag) */ - metadata?: Maybe + metadata: Maybe /** The ID of the shop the navigation item belongs to */ shopId: Scalars['ID'] } @@ -3949,12 +3949,12 @@ export type NavigationItem = Node & { export type NavigationItemConnection = { __typename?: 'NavigationItemConnection' /** The list of nodes that match the query, wrapped in an edge to provide a cursor string for each */ - edges?: Maybe>> + edges: Maybe>> /** * You can request the `nodes` directly to avoid the extra wrapping that `NodeEdge` has, * if you know you will not need to paginate the results. */ - nodes?: Maybe>> + nodes: Maybe>> /** Information to help a client request the next or previous page */ pageInfo: PageInfo /** The total number of nodes that match your query */ @@ -3967,7 +3967,7 @@ export type NavigationItemContent = { /** The language of the piece of navigation content */ language: Scalars['String'] /** The translated value, in plain text or markdown */ - value?: Maybe + value: Maybe } /** NavigationItem content input */ @@ -3975,38 +3975,38 @@ export type NavigationItemContentInput = { /** The language of the piece of navigation content */ language: Scalars['String'] /** The translated value, in plain text or markdown */ - value?: InputMaybe + value: InputMaybe } /** Represents the data for a navigation item */ export type NavigationItemData = { __typename?: 'NavigationItemData' /** CSS class names to add to the menu item for display */ - classNames?: Maybe + classNames: Maybe /** The content for the navigation item, in one or more languages */ - content?: Maybe>> + content: Maybe>> /** The translated content for a navigation item */ - contentForLanguage?: Maybe + contentForLanguage: Maybe /** Whether the provided URL is relative or external */ - isUrlRelative?: Maybe + isUrlRelative: Maybe /** Whether the navigation item should trigger a new tab/window to open when clicked */ - shouldOpenInNewWindow?: Maybe + shouldOpenInNewWindow: Maybe /** The URL for the navigation item to link to */ - url?: Maybe + url: Maybe } /** NavigationItemData input */ export type NavigationItemDataInput = { /** CSS class names to add to the menu item for display */ - classNames?: InputMaybe + classNames: InputMaybe /** The content for the navigation item, in one or more languages */ - content?: InputMaybe>> + content: InputMaybe>> /** Whether the provided URL is relative or external */ - isUrlRelative?: InputMaybe + isUrlRelative: InputMaybe /** Whether the navigation item should trigger a new tab/window to open when clicked */ - shouldOpenInNewWindow?: InputMaybe + shouldOpenInNewWindow: InputMaybe /** The URL for the navigation item to link to */ - url?: InputMaybe + url: InputMaybe } /** A connection edge in which each node is a `NavigationItem` object */ @@ -4015,15 +4015,15 @@ export type NavigationItemEdge = NodeEdge & { /** The cursor that represents this node in the paginated results */ cursor: Scalars['ConnectionCursor'] /** The navigation item */ - node?: Maybe + node: Maybe } /** NavigationItem input */ export type NavigationItemInput = { /** The draft/unpublished data for this navigation item */ - draftData?: InputMaybe + draftData: InputMaybe /** An object storing additional metadata about the navigation item (such as its related tag) */ - metadata?: InputMaybe + metadata: InputMaybe /** Shop ID of the navigation item */ shopId: Scalars['ID'] } @@ -4042,11 +4042,11 @@ export type NavigationTree = Node & { /** The navigation tree ID */ _id: Scalars['ID'] /** The draft navigation items that make up this tree */ - draftItems?: Maybe>> + draftItems: Maybe>> /** Whether the navigation item has unpublished changes */ - hasUnpublishedChanges?: Maybe + hasUnpublishedChanges: Maybe /** The published navigation items that make up this tree */ - items?: Maybe>> + items: Maybe>> /** The name of the tree, for operator display purposes. Assumed to be in the primary shop's language */ name: Scalars['String'] /** The ID of the shop this navigation tree belongs to */ @@ -4056,24 +4056,24 @@ export type NavigationTree = Node & { /** NavigationTree input */ export type NavigationTreeInput = { /** The draft navigation items that make up this tree */ - draftItems?: InputMaybe>> + draftItems: InputMaybe>> /** The name of the tree, for operator display purposes */ - name?: InputMaybe + name: InputMaybe } /** Represents a navigation item and its children in a tree */ export type NavigationTreeItem = { __typename?: 'NavigationTreeItem' /** Whether the navigation item should display its children */ - expanded?: Maybe + expanded: Maybe /** Whether the navigation item should be hidden from customers */ - isPrivate?: Maybe + isPrivate: Maybe /** Whether the navigaton item is a secondary navigation item */ - isSecondary?: Maybe + isSecondary: Maybe /** Whether the navigation ttem should shown in query results for customers and admins */ - isVisible?: Maybe + isVisible: Maybe /** The child navigation items */ - items?: Maybe>> + items: Maybe>> /** The navigation item */ navigationItem: NavigationItem } @@ -4081,15 +4081,15 @@ export type NavigationTreeItem = { /** NavigationTree item input */ export type NavigationTreeItemInput = { /** Whether the navigation item should display its children */ - expanded?: InputMaybe + expanded: InputMaybe /** Whether the navigation item should be hidden from customers */ - isPrivate?: InputMaybe + isPrivate: InputMaybe /** Whether the navigaton item is a secondary navigation item */ - isSecondary?: InputMaybe + isSecondary: InputMaybe /** Whether the navigation ttem should shown in query results for customers and admins */ - isVisible?: InputMaybe + isVisible: InputMaybe /** The child navigation items */ - items?: InputMaybe>> + items: InputMaybe>> /** The ID of the navigation item */ navigationItemId: Scalars['ID'] } @@ -4108,7 +4108,7 @@ export type NodeEdge = { /** The cursor that represents this node in the paginated results */ cursor: Scalars['ConnectionCursor'] /** The node itself */ - node?: Maybe + node: Maybe } /** An order */ @@ -4117,17 +4117,17 @@ export type Order = Node & { /** The Order ID */ _id: Scalars['ID'] /** The account that placed the order. Some orders are created for anonymous users. Anonymous orders have a null account. */ - account?: Maybe + account: Maybe /** Full name(s) involved with payment. Payment can be made by one or more than one person */ - billingName?: Maybe + billingName: Maybe /** The ID of the cart that created this order. Carts are deleted after becoming orders, so this is just a reference. */ - cartId?: Maybe + cartId: Maybe /** The date and time at which the cart was created, which is when the first item was added to it. */ createdAt: Scalars['DateTime'] /** The order status for display in UI */ displayStatus: Scalars['String'] /** An email address that has been associated with the cart */ - email?: Maybe + email: Maybe /** One or more fulfillment groups. Each of these are fulfilled and charged as separate orders. */ fulfillmentGroups: Array> /** Notes about the order. This will always return an array but it may be empty */ @@ -4136,14 +4136,14 @@ export type Order = Node & { * Payments that collectively have paid or will pay for the total amount due for this order. * May be null if no payment is needed. */ - payments?: Maybe>> + payments: Maybe>> /** * An ID by which the customer can reference this order when enquiring about it. A storefront user * interface may show this to customers. Do not display other IDs (`_id`) to customers. */ referenceId: Scalars['String'] /** Refunds that have been applied to the payments on this order. */ - refunds?: Maybe>> + refunds: Maybe>> /** The shop through which the order was placed */ shop: Shop /** The machine-readable order status. */ @@ -4174,12 +4174,12 @@ export type OrderDisplayStatusArgs = { export type OrderConnection = { __typename?: 'OrderConnection' /** The list of nodes that match the query, wrapped in an edge to provide a cursor string for each */ - edges?: Maybe>> + edges: Maybe>> /** * You can request the `nodes` directly to avoid the extra wrapping that `NodeEdge` has, * if you know you will not need to paginate the results. */ - nodes?: Maybe>> + nodes: Maybe>> /** Information to help a client request the next or previous page */ pageInfo: PageInfo /** The total number of nodes that match your query */ @@ -4192,21 +4192,21 @@ export type OrderEdge = NodeEdge & { /** The cursor that represents this node in the paginated results */ cursor: Scalars['ConnectionCursor'] /** The order */ - node?: Maybe + node: Maybe } /** Input type for filters to by applied to an Orders list */ export type OrderFilterInput = { /** A createdAt date range to filter by */ - createdAt?: InputMaybe + createdAt: InputMaybe /** An order's fulfillment status */ - fulfillmentStatus?: InputMaybe>> + fulfillmentStatus: InputMaybe>> /** An order's payment status */ - paymentStatus?: InputMaybe>> + paymentStatus: InputMaybe>> /** Keywords typed by the user in the search input field */ - searchField?: InputMaybe + searchField: InputMaybe /** The order's status to filter by */ - status?: InputMaybe + status: InputMaybe } /** An order fulfillment group */ @@ -4215,15 +4215,15 @@ export type OrderFulfillmentGroup = Node & { /** The order fulfillment group ID */ _id: Scalars['ID'] /** Information needed by the selected fulfillment method to properly fulfill the order */ - data?: Maybe + data: Maybe /** The order status for display in UI */ displayStatus: Scalars['String'] /** The items that are part of this fulfillment group */ - items?: Maybe + items: Maybe /** The fulfillment method that was selected, with its price quote */ selectedFulfillmentOption: FulfillmentOption /** The shipping label URL */ - shippingLabelUrl?: Maybe + shippingLabelUrl: Maybe /** The shop responsible for fulfilling this order */ shop: Shop /** The machine-readable fulfillment group status. */ @@ -4231,13 +4231,13 @@ export type OrderFulfillmentGroup = Node & { /** A summary of the totals for this group */ summary: OrderSummary /** A summary of calculated taxes for this group. */ - taxSummary?: Maybe + taxSummary: Maybe /** Total quantity of all items in the group */ totalItemQuantity: Scalars['Int'] /** The order fulfillment group shipment tracking number */ - tracking?: Maybe + tracking: Maybe /** The order fulfillment group shipment tracking URL */ - trackingUrl?: Maybe + trackingUrl: Maybe /** The fulfillment type. Any valid type that has been registered by a fulfillment plugin. Examples: `shipping`, `digital` */ type: FulfillmentType } @@ -4249,11 +4249,11 @@ export type OrderFulfillmentGroupDisplayStatusArgs = { /** An order fulfillment group */ export type OrderFulfillmentGroupItemsArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe + after: InputMaybe + before: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe sortBy?: InputMaybe sortOrder?: InputMaybe } @@ -4264,15 +4264,15 @@ export type OrderFulfillmentGroupData = ShippingOrderFulfillmentGroupData /** Information needed by the selected fulfillment method to properly fulfill the order */ export type OrderFulfillmentGroupDataInput = { /** The mailing address to which this fulfillment group should be shipped */ - shippingAddress?: InputMaybe + shippingAddress: InputMaybe } /** Similar to `OrderFulfillmentGroupInput` but `items` can be omitted if moving existing items to the new group */ export type OrderFulfillmentGroupExistingOrderInput = { /** Information needed by the selected fulfillment method to properly fulfill the order */ - data?: InputMaybe + data: InputMaybe /** The list of items to be ordered */ - items?: InputMaybe>> + items: InputMaybe>> /** The ID of the fulfillment method to be used for this order group */ selectedFulfillmentMethodId: Scalars['ID'] /** The shop that owns these items and needs to fulfill this part of the order */ @@ -4283,7 +4283,7 @@ export type OrderFulfillmentGroupExistingOrderInput = { * Order service. However, providing this value prevents an order being created for an amount that * does not match what was shown to the shopper in order preview. */ - totalPrice?: InputMaybe + totalPrice: InputMaybe /** The fulfillment type. Any valid type that has been registered by a fulfillment plugin. Examples: `shipping`, `digital` */ type: FulfillmentType } @@ -4291,7 +4291,7 @@ export type OrderFulfillmentGroupExistingOrderInput = { /** Input for an `OrderFulfillmentGroup` */ export type OrderFulfillmentGroupInput = { /** Information needed by the selected fulfillment method to properly fulfill the order */ - data?: InputMaybe + data: InputMaybe /** The list of items to be ordered */ items: Array> /** The ID of the fulfillment method to be used for this order group */ @@ -4304,7 +4304,7 @@ export type OrderFulfillmentGroupInput = { * Order service. However, providing this value prevents an order being created for an amount that * does not match what was shown to the shopper in order preview. */ - totalPrice?: InputMaybe + totalPrice: InputMaybe /** The fulfillment type. Any valid type that has been registered by a fulfillment plugin. Examples: `shipping`, `digital` */ type: FulfillmentType } @@ -4312,7 +4312,7 @@ export type OrderFulfillmentGroupInput = { /** Input for an `OrderFulfillmentGroupItem` */ export type OrderFulfillmentGroupItemInput = { /** The date and time at which this item was first added to the source cart, if this is something you want to track */ - addedAt?: InputMaybe + addedAt: InputMaybe /** * The price of the item, in the `order.currencyCode` currency. This value is not trusted; the actual price * is confirmed by the Order service. However, providing this value prevents an order being created for an @@ -4351,7 +4351,7 @@ export type OrderInput = { * reference. Second, it allows the Cart service to automatically delete the related cart after the order is * created. */ - cartId?: InputMaybe + cartId: InputMaybe /** The code for the currency in which all values are being provided */ currencyCode: Scalars['String'] /** @@ -4385,38 +4385,38 @@ export type OrderItem = Node & { * However, if an item is added twice, the quantity will increase but this date will remain * the initial added date. */ - addedAt?: Maybe + addedAt: Maybe /** * FUTURE. Additional attributes of the chosen item. For example, if this item is for a product, socks, where `blue` and `small` * options were chosen for some configurable attributes, then `color:blue` and `size:small` will be indicated here. */ - attributes?: Maybe>> + attributes: Maybe>> /** If this order item is canceled, the reason for cancelation, if provided */ - cancelReason?: Maybe + cancelReason: Maybe /** The date and time at which the order item was created */ createdAt: Scalars['DateTime'] /** The URLs for a picture of the item in various sizes */ - imageURLs?: Maybe + imageURLs: Maybe /** Is this a taxable item? */ isTaxable: Scalars['Boolean'] /** Arbitrary additional metadata about this cart item. */ - metafields?: Maybe>> + metafields: Maybe>> /** The short title of the associated option, if this is an option item */ - optionTitle?: Maybe + optionTitle: Maybe /** Packing information such as item weight, height, length, and depth. Used for calculating shipping rates. */ - parcel?: Maybe + parcel: Maybe /** The price of the item at the time of purchase */ price: Money /** The product and chosen options */ productConfiguration: ProductConfiguration /** The product's slug */ - productSlug?: Maybe + productSlug: Maybe /** The list of tags that have been applied to this product */ - productTags?: Maybe + productTags: Maybe /** The type of product, used to display cart items differently */ - productType?: Maybe + productType: Maybe /** The product vendor */ - productVendor?: Maybe + productVendor: Maybe /** The quantity of this item that has been added to the cart. This must be a positive integer. Remove this `CartItem` from it's associated cart if you want `0` of this item. */ quantity: Scalars['Int'] /** The shop associated with this cart item. */ @@ -4428,7 +4428,7 @@ export type OrderItem = Node & { /** Total tax calculated for this item */ tax: Money /** The tax code for this item */ - taxCode?: Maybe + taxCode: Maybe /** Amount of subtotal that is taxable */ taxableAmount: Money /** List of calculated taxes due for this item */ @@ -4438,16 +4438,16 @@ export type OrderItem = Node & { /** The date and time at which this item was last updated */ updatedAt: Scalars['DateTime'] /** The selected variant title */ - variantTitle?: Maybe + variantTitle: Maybe } /** A single item in an order. The item contains information about a purchase. */ export type OrderItemProductTagsArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe + after: InputMaybe + before: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe sortBy?: InputMaybe sortOrder?: InputMaybe } @@ -4456,9 +4456,9 @@ export type OrderItemProductTagsArgs = { export type OrderItemAttribute = { __typename?: 'OrderItemAttribute' /** The attribute label, e.g., Color */ - label?: Maybe + label: Maybe /** The attribute value, e.g., Blue */ - value?: Maybe + value: Maybe } /** @@ -4472,12 +4472,12 @@ export type OrderItemAttribute = { export type OrderItemConnection = { __typename?: 'OrderItemConnection' /** The list of nodes that match the query, wrapped in an edge to provide a cursor string for each */ - edges?: Maybe>> + edges: Maybe>> /** * You can request the `nodes` directly to avoid the extra wrapping that `NodeEdge` has, * if you know you will not need to paginate the results. */ - nodes?: Maybe>> + nodes: Maybe>> /** Information to help a client request the next or previous page */ pageInfo: PageInfo /** The total number of nodes that match your query */ @@ -4490,7 +4490,7 @@ export type OrderItemEdge = NodeEdge & { /** The cursor that represents this node in the paginated results */ cursor: Scalars['ConnectionCursor'] /** The order item */ - node?: Maybe + node: Maybe } /** A note about an order */ @@ -4538,7 +4538,7 @@ export type OrderSummary = { /** The combined prices of all cart items */ itemTotal: Money /** The total of all suurcharges applied */ - surchargeTotal?: Maybe + surchargeTotal: Maybe /** The total estimated tax that has not already been included in the item prices */ taxTotal: Money /** The total amount that was deemed taxable by the tax service */ @@ -4558,12 +4558,12 @@ export type OrderSummary = { export type OrdersByAccountIdConnection = { __typename?: 'OrdersByAccountIdConnection' /** The list of nodes that match the query, wrapped in an edge to provide a cursor string for each */ - edges?: Maybe>> + edges: Maybe>> /** * You can request the `nodes` directly to avoid the extra wrapping that `NodeEdge` has, * if you know you will not need to paginate the results. */ - nodes?: Maybe>> + nodes: Maybe>> /** Information to help a client request the next or previous page */ pageInfo: PageInfo /** The total number of nodes that match your query */ @@ -4576,7 +4576,7 @@ export type OrdersByAccountIdEdge = NodeEdge & { /** The cursor that represents this node in the paginated results */ cursor: Scalars['ConnectionCursor'] /** The order */ - node?: Maybe + node: Maybe } /** The fields by which you are allowed to sort any query that returns a `OrdersByAccountIdConnection` */ @@ -4602,13 +4602,13 @@ export enum OrdersSortByField { export type PageInfo = { __typename?: 'PageInfo' /** When paginating forwards, the cursor to continue. */ - endCursor?: Maybe + endCursor: Maybe /** When paginating forwards, are there more items? */ hasNextPage: Scalars['Boolean'] /** When paginating backwards, are there more items? */ hasPreviousPage: Scalars['Boolean'] /** When paginating backwards, the cursor to continue. */ - startCursor?: Maybe + startCursor: Maybe } /** Information about a payment made */ @@ -4622,20 +4622,20 @@ export type Payment = Node & { */ amount: Money /** The billing address for this payment, if one was collected */ - billingAddress?: Maybe
+ billingAddress: Maybe
/** If status is `error` due to a capture error, this code describes the error in a machine-readable way. */ - captureErrorCode?: Maybe + captureErrorCode: Maybe /** If status is `error` due to a capture error, this code describes the error in a human-readable way. */ - captureErrorMessage?: Maybe + captureErrorMessage: Maybe /** For card payments, the brand of the card. Useful for showing card icons for common brands. */ - cardBrand?: Maybe + cardBrand: Maybe /** The date and time at which this payment was created */ createdAt: Scalars['DateTime'] /** * The shopper-provided data needed to complete the payment using this method. * For example, a billing address, store credit code, stored credit card ID, etc. */ - data?: Maybe + data: Maybe /** Use this identifier when showing this payment in a user interface */ displayName: Scalars['String'] /** Has the payment authorization been canceled? */ @@ -4645,17 +4645,17 @@ export type Payment = Node & { /** The payment method */ method: PaymentMethod /** The payment mode */ - mode?: Maybe + mode: Maybe /** The payment processor */ - processor?: Maybe + processor: Maybe /** Refunds that have been applied to this payment. */ - refunds?: Maybe>> + refunds: Maybe>> /** Risk level of payment */ - riskLevel?: Maybe + riskLevel: Maybe /** The current status of this payment */ status: PaymentStatus /** The payment transaction ID */ - transactionId?: Maybe + transactionId: Maybe } /** Data identifying a payment for an order */ @@ -4678,9 +4678,9 @@ export type PaymentInput = { * authorization without one, so be sure that client UI code is aware of which payment methods * require collecting one. */ - billingAddress?: InputMaybe + billingAddress: InputMaybe /** Any additional user-provided input necessary to authorize and capture the payment */ - data?: InputMaybe + data: InputMaybe /** The name of the payment method to use for this payment */ method: PaymentMethodName } @@ -4691,7 +4691,7 @@ export type PaymentMethod = { /** If this is `false`, the payment method does not support refunding. Use this to hide refund UI. */ canRefund: Scalars['Boolean'] /** Data for this method. The data format differs for each method */ - data?: Maybe + data: Maybe /** Human-readable display name */ displayName: Scalars['String'] /** Whether the payment method is enabled on a given shop */ @@ -4738,7 +4738,7 @@ export enum PaymentStatus { /** Input for the placeOrder mutation */ export type PlaceOrderInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The order to be placed, if payment is accepted */ order: OrderInput /** @@ -4747,18 +4747,18 @@ export type PlaceOrderInput = { * The total of all payment input `amount` fields must add up to the order total. The first payment * method where the `amount` field is `null` will be charged the remainder due. */ - payments?: InputMaybe>> + payments: InputMaybe>> } /** Response payload for the placeOrder mutation */ export type PlaceOrderPayload = { __typename?: 'PlaceOrderPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** Orders that were created */ orders: Array> /** If you are not logged in, this will be a token that can be used for future requests */ - token?: Maybe + token: Maybe } /** Represents Reaction Plugin */ @@ -4767,7 +4767,7 @@ export type Plugin = { /** Name of plugin */ name: Scalars['String'] /** Version of plugin */ - version?: Maybe + version: Maybe } /** A Reaction product */ @@ -4778,58 +4778,58 @@ export type Product = { /** The date and time at which this product was created */ createdAt: Scalars['DateTime'] /** Hash to compare with publishedProductHash, to see if this product has changed since it was last published */ - currentProductHash?: Maybe + currentProductHash: Maybe /** The full product description, which may have newline characters in it */ - description?: Maybe + description: Maybe /** True if this product has been deleted. Typically, deleted products are not returned in queries. */ isDeleted: Scalars['Boolean'] /** True if this product should be shown to shoppers. Typically, non-visible products are not returned in queries. */ isVisible: Scalars['Boolean'] /** All media for a product */ - media?: Maybe>> + media: Maybe>> /** The product description to use for page `description` meta element in HTML */ - metaDescription?: Maybe + metaDescription: Maybe /** Arbitrary additional metadata about this product */ metafields: Array> /** The country of origin */ - originCountry?: Maybe + originCountry: Maybe /** Subtitle */ - pageTitle?: Maybe + pageTitle: Maybe /** * Price range * @deprecated Use `pricing` */ - price?: Maybe + price: Maybe /** Pricing information */ pricing: ProductPricingInfo /** An arbitrary product type value, such as from an external system */ - productType?: Maybe + productType: Maybe /** The date and time at which this product was last published. If `null`, it has never been published. */ - publishedAt?: Maybe + publishedAt: Maybe /** Hash to compare with currentProductHash, to see if this product has changed since it was last published */ - publishedProductHash?: Maybe + publishedProductHash: Maybe /** The shop to which this product belongs */ shop: Shop /** Whether this product will be shown in the generated sitemap */ - shouldAppearInSitemap?: Maybe + shouldAppearInSitemap: Maybe /** A URL-safe and human-readable string that uniquely identifies this product */ - slug?: Maybe + slug: Maybe /** Holds metadata specific to a specific social network service */ - socialMetadata?: Maybe>> + socialMetadata: Maybe>> /** When a shopper purchases this product, what types of fulfillment can they choose from? */ supportedFulfillmentTypes: Array> /** The list of tag IDs that have been applied to this product */ - tagIds?: Maybe>> + tagIds: Maybe>> /** The list of tags that have been applied to this product */ - tags?: Maybe + tags: Maybe /** Product title */ - title?: Maybe + title: Maybe /** The date and time at which this product was last updated */ - updatedAt?: Maybe + updatedAt: Maybe /** A list of all variants for this product */ variants: Array> /** The product vendor or manufacturer, for display */ - vendor?: Maybe + vendor: Maybe } /** A Reaction product */ @@ -4839,11 +4839,11 @@ export type ProductMediaArgs = { /** A Reaction product */ export type ProductTagsArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe + after: InputMaybe + before: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe sortBy?: InputMaybe sortOrder?: InputMaybe } @@ -4882,12 +4882,12 @@ export type ProductConfigurationInput = { export type ProductConnection = { __typename?: 'ProductConnection' /** The list of nodes that match the query, wrapped in an edge to provide a cursor string for each */ - edges?: Maybe>> + edges: Maybe>> /** * You can request the `nodes` directly to avoid the extra wrapping that `NodeEdge` has, * if you know you will not need to paginate the results. */ - nodes?: Maybe>> + nodes: Maybe>> /** Information to help a client request the next or previous page */ pageInfo: PageInfo /** The total number of nodes that match your query */ @@ -4900,7 +4900,7 @@ export type ProductEdge = { /** The cursor that represents this node in the paginated results */ cursor: Scalars['ConnectionCursor'] /** The product */ - node?: Maybe + node: Maybe } /** Mutation input for a product */ @@ -4912,54 +4912,54 @@ export type ProductInput = { * option internal ID or you will get a duplicate ID error. If you do not include this when creating * a product, a random unique string is generated for you. */ - _id?: InputMaybe + _id: InputMaybe /** The full product description, which may have newline characters in it */ - description?: InputMaybe + description: InputMaybe /** Facebook message */ - facebookMsg?: InputMaybe + facebookMsg: InputMaybe /** Google message */ - googleplusMsg?: InputMaybe + googleplusMsg: InputMaybe /** True if this product has been deleted. Typically, deleted products are not returned in queries. */ - isDeleted?: InputMaybe + isDeleted: InputMaybe /** True if this product should be shown to shoppers. Typically, non-visible products are not returned in queries. */ - isVisible?: InputMaybe + isVisible: InputMaybe /** The product description to use for page `description` meta element in HTML */ - metaDescription?: InputMaybe + metaDescription: InputMaybe /** Arbitrary additional metadata about this product */ - metafields?: InputMaybe>> + metafields: InputMaybe>> /** The country of origin */ - originCountry?: InputMaybe + originCountry: InputMaybe /** Subtitle */ - pageTitle?: InputMaybe + pageTitle: InputMaybe /** Pinterest message */ - pinterestMsg?: InputMaybe + pinterestMsg: InputMaybe /** An arbitrary product type value, such as from an external system */ - productType?: InputMaybe + productType: InputMaybe /** Whether this product will be shown in the generated sitemap */ - shouldAppearInSitemap?: InputMaybe + shouldAppearInSitemap: InputMaybe /** A URL-safe and human-readable string that uniquely identifies this product */ - slug?: InputMaybe + slug: InputMaybe /** When a shopper purchases this product, what types of fulfillment can they choose from? */ - supportedFulfillmentTypes?: InputMaybe>> + supportedFulfillmentTypes: InputMaybe>> /** The list of tag IDs that have been applied to this product */ - tagIds?: InputMaybe>> + tagIds: InputMaybe>> /** Product title */ - title?: InputMaybe + title: InputMaybe /** Twitter message */ - twitterMsg?: InputMaybe + twitterMsg: InputMaybe /** The product vendor or manufacturer, for display */ - vendor?: InputMaybe + vendor: InputMaybe } /** Product price range */ export type ProductPriceRange = { __typename?: 'ProductPriceRange' /** Maximum price in range */ - max?: Maybe + max: Maybe /** Minimum price in range */ - min?: Maybe + min: Maybe /** Price range display */ - range?: Maybe + range: Maybe } /** The product price or price range for a specific currency */ @@ -4969,11 +4969,11 @@ export type ProductPricingInfo = { * A comparison price value, usually MSRP. If `price` is null, this will also be null. That is, * only purchasable variants will have a `compareAtPrice`. */ - compareAtPrice?: Maybe + compareAtPrice: Maybe /** The code for the currency these pricing details applies to */ currency: Currency /** Pricing converted to specified currency */ - currencyExchangePricing?: Maybe + currencyExchangePricing: Maybe /** * UI should display this price. If a product has multiple potential prices depending on selected * variants and options, then this is a price range string such as "$3.95 - $6.99". It includes the currency @@ -4989,7 +4989,7 @@ export type ProductPricingInfo = { * with options and products, this will be `null`. There must be a price for a variant to be * added to a cart or purchased. Otherwise you would instead add one of its child options to a cart. */ - price?: Maybe + price: Maybe } /** The product price or price range for a specific currency */ @@ -5012,28 +5012,28 @@ export enum ProductSortByField { /** Input for adding tags to products in bulk */ export type ProductTagsOperationInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** An array of product productIds to which an array of tags will be added */ - productIds?: InputMaybe>> + productIds: InputMaybe>> /** The shop id */ shopId: Scalars['ID'] /** An array of tag ids to add to an array of products */ - tagIds?: InputMaybe>> + tagIds: InputMaybe>> } /** Response payload managing tags on products */ export type ProductTagsOperationPayload = { __typename?: 'ProductTagsOperationPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The number of products found */ - foundCount?: Maybe + foundCount: Maybe /** The number of products for which a match was not found */ - notFoundCount?: Maybe + notFoundCount: Maybe /** The number of products successfully updated */ - updatedCount?: Maybe + updatedCount: Maybe /** An array of write errors if any were generated */ - writeErrors?: Maybe>> + writeErrors: Maybe>> } /** A Reaction product variant or option */ @@ -5045,68 +5045,68 @@ export type ProductVariant = { * The attribute label describes the category of variant, for example, `Color` or `Size`. * In most cases this will be the same for all variants at the same level. */ - attributeLabel?: Maybe + attributeLabel: Maybe /** The product variant barcode value, if it has one */ - barcode?: Maybe + barcode: Maybe /** * Compare at price of the variant * @deprecated Use `pricing` */ - compareAtPrice?: Maybe + compareAtPrice: Maybe /** The date and time at which this variant was created */ - createdAt?: Maybe + createdAt: Maybe /** The height of the product variant, if it has physical dimensions */ - height?: Maybe + height: Maybe /** The position of this variant among other variants at the same level of the product-variant-option hierarchy */ - index?: Maybe + index: Maybe /** True if this variant was deleted. Deleted variants are not published to the catalog. */ isDeleted: Scalars['Boolean'] /** Whether this variant is taxable */ - isTaxable?: Maybe + isTaxable: Maybe /** True if this variant is visible. Hidden variants are not published to the catalog. */ isVisible: Scalars['Boolean'] /** The length of the product, if it has physical dimensions */ - length?: Maybe + length: Maybe /** All media for a variant */ - media?: Maybe>> + media: Maybe>> /** Arbitrary additional metadata about this product */ metafields: Array> /** The minimum quantity that must be added to a cart */ - minOrderQuantity?: Maybe + minOrderQuantity: Maybe /** A short title to use for product detail select lists */ - optionTitle?: Maybe + optionTitle: Maybe /** Child variants, if any */ options: Array> /** The country of origin */ - originCountry?: Maybe + originCountry: Maybe /** * Price of the variant * @deprecated Use `pricing` */ - price?: Maybe + price: Maybe /** Pricing information */ pricing: ProductPricingInfo /** The shop to which this product variant belongs */ shop: Shop /** SKU of variant */ - sku?: Maybe + sku: Maybe /** Tax code */ - taxCode?: Maybe + taxCode: Maybe /** Tax description */ - taxDescription?: Maybe + taxDescription: Maybe /** * The full variant title for use on cart, checkout, and order summaries and on invoices. * This fully describes the configured variant. For example, if this is an option with * `optionTitle` "Large", its parent variant has `optionTitle` `Red`, and the product * `title` is "Fancy T-Shirt", then this `title` will be something like `Fancy T-Shirt - Red - Large`. */ - title?: Maybe + title: Maybe /** The date and time at which this product was last updated */ - updatedAt?: Maybe + updatedAt: Maybe /** The weight of the product on Earth, if it has physical dimensions */ - weight?: Maybe + weight: Maybe /** The width of the product, if it has physical dimensions */ - width?: Maybe + width: Maybe } /** A Reaction product variant or option */ @@ -5124,69 +5124,69 @@ export type ProductVariantInput = { * option internal ID or you will get a duplicate ID error. If you do not include this when creating * a variant, a random unique string is generated for you. */ - _id?: InputMaybe + _id: InputMaybe /** * The attribute label describes the category of variant, for example, `Color` or `Size`. * In most cases this will be the same for all variants at the same level. */ - attributeLabel?: InputMaybe + attributeLabel: InputMaybe /** The product variant barcode value, if it has one */ - barcode?: InputMaybe + barcode: InputMaybe /** Variant compareAtPrice. DEPRECATED. Use the `updateProductVariantPrices` mutation to set product variant prices. */ - compareAtPrice?: InputMaybe + compareAtPrice: InputMaybe /** The height of the product variant, if it has physical dimensions */ - height?: InputMaybe + height: InputMaybe /** The position of this variant among other variants at the same level of the product-variant-option hierarchy */ - index?: InputMaybe + index: InputMaybe /** True if this variant was deleted. Deleted variants are not published to the catalog. */ - isDeleted?: InputMaybe + isDeleted: InputMaybe /** Whether this variant is taxable */ - isTaxable?: InputMaybe + isTaxable: InputMaybe /** True if this variant is visible. Hidden variants are not published to the catalog. */ - isVisible?: InputMaybe + isVisible: InputMaybe /** The length of the product, if it has physical dimensions */ - length?: InputMaybe + length: InputMaybe /** Arbitrary additional metadata about this product */ - metafields?: InputMaybe>> + metafields: InputMaybe>> /** The minimum quantity that must be added to a cart */ - minOrderQuantity?: InputMaybe + minOrderQuantity: InputMaybe /** A short title to use for product detail select lists */ - optionTitle?: InputMaybe + optionTitle: InputMaybe /** The country of origin */ - originCountry?: InputMaybe + originCountry: InputMaybe /** Variant price. DEPRECATED. Use the `updateProductVariantPrices` mutation to set product variant prices. */ - price?: InputMaybe + price: InputMaybe /** SKU of variant */ - sku?: InputMaybe + sku: InputMaybe /** Tax code */ - taxCode?: InputMaybe + taxCode: InputMaybe /** Tax description */ - taxDescription?: InputMaybe + taxDescription: InputMaybe /** * The full variant title for use on cart, checkout, and order summaries and on invoices. * This fully describes the configured variant. For example, if this is an option with * `optionTitle` `Large`, its parent variant has `optionTitle` `Red`, and the product * `title` is `Fancy T-Shirt`, then this `title` will be something like `Fancy T-Shirt - Red - Large`. */ - title?: InputMaybe + title: InputMaybe /** The weight of the product on Earth, if it has physical dimensions */ - weight?: InputMaybe + weight: InputMaybe /** The width of the product, if it has physical dimensions */ - width?: InputMaybe + width: InputMaybe } /** Mutation input for a product variant or option */ export type ProductVariantPricesInput = { /** Variant compareAtPrice */ - compareAtPrice?: InputMaybe + compareAtPrice: InputMaybe /** Variant price */ - price?: InputMaybe + price: InputMaybe } /** Input for the `publishNavigationChanges` mutation */ export type PublishNavigationChangesInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The ID of the navigation tree */ id: Scalars['ID'] /** Shop ID of the navigation tree */ @@ -5197,18 +5197,18 @@ export type PublishNavigationChangesInput = { export type PublishNavigationChangesPayload = { __typename?: 'PublishNavigationChangesPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The navigation tree with updated items */ - navigationTree?: Maybe + navigationTree: Maybe } /** Queries return all requested data, without any side effects */ export type Query = { __typename?: 'Query' /** Returns the account with the provided ID */ - account?: Maybe + account: Maybe /** Find a cart for a given account ID. */ - accountCartByAccountId?: Maybe + accountCartByAccountId: Maybe /** Returns accounts optionally filtered by account groups */ accounts: AccountConnection /** @@ -5222,7 +5222,7 @@ export type Query = { /** Get a full list of all registered address validation services */ addressValidationServices: Array> /** Finds a cart by the cart ID and anonymous cart token. */ - anonymousCartByCartId?: Maybe + anonymousCartByCartId: Maybe /** * Get a list of all payment methods available during a checkout. This may filter by auth, * active/inactive, IP/region, shop, etc. To get the full list, use the `paymentMethods` @@ -5230,45 +5230,45 @@ export type Query = { */ availablePaymentMethods: Array> /** Gets product from catalog */ - catalogItemProduct?: Maybe + catalogItemProduct: Maybe /** Gets items from a shop catalog */ - catalogItems?: Maybe + catalogItems: Maybe /** Returns customer accounts */ customers: AccountConnection /** Gets discount codes */ - discountCodes?: Maybe + discountCodes: Maybe /** Get e-mail jobs for a given set of shops */ emailJobs: EmailJobConnection /** Retrieves a list of email templates */ - emailTemplates?: Maybe + emailTemplates: Maybe /** Get a flat rate fulfillment method */ flatRateFulfillmentMethod: FlatRateFulfillmentMethod /** Get a flat rate fulfillment methods */ flatRateFulfillmentMethods: FlatRateFulfillmentMethodConnection /** Get a single flat rate fulfillment method restriction. */ - getFlatRateFulfillmentRestriction?: Maybe + getFlatRateFulfillmentRestriction: Maybe /** Get the full list of flat rate fulfillment method restrictions. */ getFlatRateFulfillmentRestrictions: FlatRateFulfillmentRestrictionConnection - getUser?: Maybe + getUser: Maybe /** * Returns app settings that are not shop specific. Plugins extend the GlobalSettings type to support * whatever settings they need. */ globalSettings: GlobalSettings /** Returns a single group by ID. */ - group?: Maybe + group: Maybe /** Returns a list of groups for the shop with ID `shopId`, as a Relay-compatible connection. */ - groups?: Maybe + groups: Maybe /** Returns all pending staff member invitations */ invitations: InvitationConnection /** Returns the navigation items for a shop */ - navigationItemsByShopId?: Maybe + navigationItemsByShopId: Maybe /** Returns a navigation tree by its ID in the specified language */ - navigationTreeById?: Maybe + navigationTreeById: Maybe /** Get an order by its ID */ - orderById?: Maybe + orderById: Maybe /** Get an order by its reference ID (the ID shown to customers) */ - orderByReferenceId?: Maybe + orderByReferenceId: Maybe /** Get all orders for a single account, optionally limited to certain shop IDs and certain orderStatus */ orders: OrderConnection /** Get all orders for a single account, optionally limited to certain shop IDs and certain orderStatus */ @@ -5278,59 +5278,59 @@ export type Query = { /** A test query */ ping: Scalars['String'] /** Returns the primary shop for the domain */ - primaryShop?: Maybe + primaryShop: Maybe /** Returns the ID of the primary shop for the domain */ - primaryShopId?: Maybe + primaryShopId: Maybe /** Query for a single Product */ - product?: Maybe + product: Maybe /** Query for a list of Products */ - products?: Maybe + products: Maybe /** Returns a list of product in a tag */ productsByTagId: TagProductConnection /** Get refunds applied to an order by order ID */ - refunds?: Maybe>> + refunds: Maybe>> /** Get refunds applied to a specific payment by payment ID */ - refundsByPaymentId?: Maybe>> + refundsByPaymentId: Maybe>> /** Returns a paged list of all roles associated with a shop */ - roles?: Maybe + roles: Maybe /** Returns a shop by ID */ - shop?: Maybe + shop: Maybe /** Returns a shop by slug */ - shopBySlug?: Maybe + shopBySlug: Maybe /** * Returns app settings for a specific shop. Plugins extend the ShopSettings type to support * whatever settings they need. */ shopSettings: ShopSettings - shops?: Maybe + shops: Maybe /** * Get the SimpleInventory info for a product configuration. Returns `null` if `updateSimpleInventory` * has never been called for this product configuration. */ - simpleInventory?: Maybe + simpleInventory: Maybe /** Returns Sitemap object for a shop based on the handle param */ - sitemap?: Maybe + sitemap: Maybe /** Get a single surcharge definition by its ID */ - surchargeById?: Maybe + surchargeById: Maybe /** Get the full list of surcharges. */ surcharges: SurchargeConnection /** SystemInformation object */ systemInformation: SystemInformation /** Returns a tag from a provided tag ID or slug. Tags with isVisible set to false are excluded by default. */ - tag?: Maybe + tag: Maybe /** Returns a paged list of tags for a shop. You must include a shopId when querying. */ - tags?: Maybe + tags: Maybe /** List all tax codes supported by the current active tax service for the shop */ taxCodes: Array> /** Gets tax rates */ - taxRates?: Maybe + taxRates: Maybe /** Get a full list of all tax services for the shop */ taxServices: Array> - twoFactorSecret?: Maybe + twoFactorSecret: Maybe /** Gets an array of all vendors */ - vendors?: Maybe + vendors: Maybe /** Returns the account for the authenticated user */ - viewer?: Maybe + viewer: Maybe } /** Queries return all requested data, without any side effects */ @@ -5346,13 +5346,13 @@ export type QueryAccountCartByAccountIdArgs = { /** Queries return all requested data, without any side effects */ export type QueryAccountsArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - groupIds?: InputMaybe>> - last?: InputMaybe - notInAnyGroups?: InputMaybe - offset?: InputMaybe + after: InputMaybe + before: InputMaybe + first: InputMaybe + groupIds: InputMaybe>> + last: InputMaybe + notInAnyGroups: InputMaybe + offset: InputMaybe sortBy?: InputMaybe sortOrder?: InputMaybe } @@ -5365,12 +5365,12 @@ export type QueryAddressValidationArgs = { /** Queries return all requested data, without any side effects */ export type QueryAddressValidationRulesArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe - serviceNames?: InputMaybe>> + after: InputMaybe + before: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe + serviceNames: InputMaybe>> shopId: Scalars['ID'] sortBy?: InputMaybe sortOrder?: InputMaybe @@ -5389,65 +5389,65 @@ export type QueryAvailablePaymentMethodsArgs = { /** Queries return all requested data, without any side effects */ export type QueryCatalogItemProductArgs = { - shopId?: InputMaybe - slugOrId?: InputMaybe + shopId: InputMaybe + slugOrId: InputMaybe } /** Queries return all requested data, without any side effects */ export type QueryCatalogItemsArgs = { - after?: InputMaybe - before?: InputMaybe - booleanFilters?: InputMaybe>> - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe - searchQuery?: InputMaybe + after: InputMaybe + before: InputMaybe + booleanFilters: InputMaybe>> + first: InputMaybe + last: InputMaybe + offset: InputMaybe + searchQuery: InputMaybe shopIds: Array> sortBy?: InputMaybe - sortByPriceCurrencyCode?: InputMaybe + sortByPriceCurrencyCode: InputMaybe sortOrder?: InputMaybe - tagIds?: InputMaybe>> + tagIds: InputMaybe>> } /** Queries return all requested data, without any side effects */ export type QueryCustomersArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe + after: InputMaybe + before: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe sortBy?: InputMaybe sortOrder?: InputMaybe } /** Queries return all requested data, without any side effects */ export type QueryDiscountCodesArgs = { - after?: InputMaybe - before?: InputMaybe - filters?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe + after: InputMaybe + before: InputMaybe + filters: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe shopId: Scalars['ID'] } /** Queries return all requested data, without any side effects */ export type QueryEmailJobsArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe + after: InputMaybe + before: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe shopIds: Array> } /** Queries return all requested data, without any side effects */ export type QueryEmailTemplatesArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe + after: InputMaybe + before: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe shopId: Scalars['ID'] } @@ -5459,11 +5459,11 @@ export type QueryFlatRateFulfillmentMethodArgs = { /** Queries return all requested data, without any side effects */ export type QueryFlatRateFulfillmentMethodsArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe + after: InputMaybe + before: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe shopId: Scalars['ID'] } @@ -5475,11 +5475,11 @@ export type QueryGetFlatRateFulfillmentRestrictionArgs = { /** Queries return all requested data, without any side effects */ export type QueryGetFlatRateFulfillmentRestrictionsArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe + after: InputMaybe + before: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe shopId: Scalars['ID'] sortBy?: InputMaybe sortOrder?: InputMaybe @@ -5492,11 +5492,11 @@ export type QueryGroupArgs = { /** Queries return all requested data, without any side effects */ export type QueryGroupsArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe + after: InputMaybe + before: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe shopId: Scalars['ID'] sortBy?: InputMaybe sortOrder?: InputMaybe @@ -5504,23 +5504,23 @@ export type QueryGroupsArgs = { /** Queries return all requested data, without any side effects */ export type QueryInvitationsArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe - shopIds?: InputMaybe>> + after: InputMaybe + before: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe + shopIds: InputMaybe>> sortBy?: InputMaybe sortOrder?: InputMaybe } /** Queries return all requested data, without any side effects */ export type QueryNavigationItemsByShopIdArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe + after: InputMaybe + before: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe shopId: Scalars['ID'] sortBy?: InputMaybe sortOrder?: InputMaybe @@ -5538,25 +5538,25 @@ export type QueryNavigationTreeByIdArgs = { export type QueryOrderByIdArgs = { id: Scalars['ID'] shopId: Scalars['ID'] - token?: InputMaybe + token: InputMaybe } /** Queries return all requested data, without any side effects */ export type QueryOrderByReferenceIdArgs = { id: Scalars['ID'] shopId: Scalars['ID'] - token?: InputMaybe + token: InputMaybe } /** Queries return all requested data, without any side effects */ export type QueryOrdersArgs = { - after?: InputMaybe - before?: InputMaybe - filters?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe - shopIds?: InputMaybe>> + after: InputMaybe + before: InputMaybe + filters: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe + shopIds: InputMaybe>> sortBy?: InputMaybe sortOrder?: InputMaybe } @@ -5564,12 +5564,12 @@ export type QueryOrdersArgs = { /** Queries return all requested data, without any side effects */ export type QueryOrdersByAccountIdArgs = { accountId: Scalars['ID'] - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe - orderStatus?: InputMaybe>> + after: InputMaybe + before: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe + orderStatus: InputMaybe>> shopIds: Array> sortBy?: InputMaybe sortOrder?: InputMaybe @@ -5588,33 +5588,33 @@ export type QueryProductArgs = { /** Queries return all requested data, without any side effects */ export type QueryProductsArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - isArchived?: InputMaybe - isVisible?: InputMaybe - last?: InputMaybe - metafieldKey?: InputMaybe - metafieldValue?: InputMaybe - offset?: InputMaybe - priceMax?: InputMaybe - priceMin?: InputMaybe - productIds?: InputMaybe>> - query?: InputMaybe + after: InputMaybe + before: InputMaybe + first: InputMaybe + isArchived: InputMaybe + isVisible: InputMaybe + last: InputMaybe + metafieldKey: InputMaybe + metafieldValue: InputMaybe + offset: InputMaybe + priceMax: InputMaybe + priceMin: InputMaybe + productIds: InputMaybe>> + query: InputMaybe shopIds: Array> sortBy?: InputMaybe sortOrder?: InputMaybe - tagIds?: InputMaybe>> + tagIds: InputMaybe>> } /** Queries return all requested data, without any side effects */ export type QueryProductsByTagIdArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe - query?: InputMaybe + after: InputMaybe + before: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe + query: InputMaybe shopId: Scalars['ID'] tagId: Scalars['ID'] } @@ -5623,7 +5623,7 @@ export type QueryProductsByTagIdArgs = { export type QueryRefundsArgs = { orderId: Scalars['ID'] shopId: Scalars['ID'] - token?: InputMaybe + token: InputMaybe } /** Queries return all requested data, without any side effects */ @@ -5631,16 +5631,16 @@ export type QueryRefundsByPaymentIdArgs = { orderId: Scalars['ID'] paymentId: Scalars['ID'] shopId: Scalars['ID'] - token?: InputMaybe + token: InputMaybe } /** Queries return all requested data, without any side effects */ export type QueryRolesArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe + after: InputMaybe + before: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe shopId: Scalars['ID'] sortBy?: InputMaybe sortOrder?: InputMaybe @@ -5663,12 +5663,12 @@ export type QueryShopSettingsArgs = { /** Queries return all requested data, without any side effects */ export type QueryShopsArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe - shopIds?: InputMaybe>> + after: InputMaybe + before: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe + shopIds: InputMaybe>> sortBy?: InputMaybe sortOrder?: InputMaybe } @@ -5693,11 +5693,11 @@ export type QuerySurchargeByIdArgs = { /** Queries return all requested data, without any side effects */ export type QuerySurchargesArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe + after: InputMaybe + before: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe shopId: Scalars['ID'] sortBy?: InputMaybe sortOrder?: InputMaybe @@ -5717,14 +5717,14 @@ export type QueryTagArgs = { /** Queries return all requested data, without any side effects */ export type QueryTagsArgs = { - after?: InputMaybe - before?: InputMaybe - excludedTagIds?: InputMaybe>> - filter?: InputMaybe - first?: InputMaybe - isTopLevel?: InputMaybe - last?: InputMaybe - offset?: InputMaybe + after: InputMaybe + before: InputMaybe + excludedTagIds: InputMaybe>> + filter: InputMaybe + first: InputMaybe + isTopLevel: InputMaybe + last: InputMaybe + offset: InputMaybe shopId: Scalars['ID'] shouldIncludeDeleted?: InputMaybe shouldIncludeInvisible?: InputMaybe @@ -5739,11 +5739,11 @@ export type QueryTaxCodesArgs = { /** Queries return all requested data, without any side effects */ export type QueryTaxRatesArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe + after: InputMaybe + before: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe shopId: Scalars['ID'] } @@ -5754,14 +5754,14 @@ export type QueryTaxServicesArgs = { /** Queries return all requested data, without any side effects */ export type QueryVendorsArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe - shopIds?: InputMaybe>> + after: InputMaybe + before: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe + shopIds: InputMaybe>> sortOrder?: InputMaybe - tagIds?: InputMaybe>> + tagIds: InputMaybe>> } /** A numeric rate, with its corresponding percent values */ @@ -5787,7 +5787,7 @@ export type RecalculateReservedSimpleInventoryInput = { export type RecalculateReservedSimpleInventoryPayload = { __typename?: 'RecalculateReservedSimpleInventoryPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The updated inventory info */ inventoryInfo: SimpleInventoryInfo } @@ -5799,13 +5799,13 @@ export type ReconcileCartsInput = { /** An anonymous cart token */ cartToken: Scalars['String'] /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** * If both an anonymous cart and a cart for the authenticated account are found, how do we combine them? * Default mode is `merge`, where all anonymous items are moved into the account cart along with existing * account cart items, and quantities are combined. */ - mode?: InputMaybe + mode: InputMaybe /** The ID of the shop that owns both carts */ shopId: Scalars['ID'] } @@ -5816,7 +5816,7 @@ export type ReconcileCartsPayload = { /** The account cart, potentially modified */ cart: Cart /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe } /** A refund of a payment on an order */ @@ -5833,7 +5833,7 @@ export type Refund = Node & { /** The ID of the payment this refund is applied to */ paymentId: Scalars['ID'] /** The reason for the refund */ - reason?: Maybe + reason: Maybe } /** Describes which address should be removed from which account */ @@ -5843,24 +5843,24 @@ export type RemoveAccountAddressBookEntryInput = { /** The address ID */ addressId: Scalars['ID'] /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe } /** The response from the `removeAccountAddressBookEntry` mutation */ export type RemoveAccountAddressBookEntryPayload = { __typename?: 'RemoveAccountAddressBookEntryPayload' /** The removed address */ - address?: Maybe
+ address: Maybe
/** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe } /** Defines which email address should be removed from which account */ export type RemoveAccountEmailRecordInput = { /** The account ID, which defaults to the viewer account */ - accountId?: InputMaybe + accountId: InputMaybe /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The email address to remove */ email: Scalars['Email'] } @@ -5869,9 +5869,9 @@ export type RemoveAccountEmailRecordInput = { export type RemoveAccountEmailRecordPayload = { __typename?: 'RemoveAccountEmailRecordPayload' /** The account, with updated `emailRecords` */ - account?: Maybe + account: Maybe /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe } /** Defines a group and account that should be unlinked */ @@ -5879,7 +5879,7 @@ export type RemoveAccountFromGroupInput = { /** The account ID */ accountId: Scalars['ID'] /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The group ID */ groupId: Scalars['ID'] } @@ -5888,7 +5888,7 @@ export type RemoveAccountFromGroupInput = { export type RemoveAccountFromGroupPayload = { __typename?: 'RemoveAccountFromGroupPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The removed group */ group: Group } @@ -5896,20 +5896,20 @@ export type RemoveAccountFromGroupPayload = { /** The details for removing a group */ export type RemoveAccountGroupInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The group ID */ groupId: Scalars['ID'] /** The ID of the shop this group belongs to */ - shopId?: InputMaybe + shopId: InputMaybe } /** The response from the `removeGroup` mutation */ export type RemoveAccountGroupPayload = { __typename?: 'RemoveAccountGroupPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The removed group */ - group?: Maybe + group: Maybe } /** Input for the `removeCartItems` mutation */ @@ -5919,9 +5919,9 @@ export type RemoveCartItemsInput = { /** Array of items to remove from the cart. */ cartItemIds: Array> /** If this cart is anonymous, provide the `cartToken` that was returned in the `CreateCartPayload` */ - cartToken?: InputMaybe + cartToken: InputMaybe /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe } /** The payload returned from the `removeCartItems` mutation call */ @@ -5930,7 +5930,7 @@ export type RemoveCartItemsPayload = { /** The modified cart */ cart: Cart /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe } /** Input for an `RemoveDiscountCodeFromCartInput` */ @@ -5942,7 +5942,7 @@ export type RemoveDiscountCodeFromCartInput = { /** Shop cart belongs to */ shopId: Scalars['ID'] /** Cart token, if anonymous */ - token?: InputMaybe + token: InputMaybe } /** Response from the `removeDiscountCodeFromCart` mutation */ @@ -5951,13 +5951,13 @@ export type RemoveDiscountCodeFromCartPayload = { /** The updated cart with discount code removed */ cart: Cart /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe } /** Input for `removeTag` mutation */ export type RemoveTagInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** ID of tag to delete */ id: Scalars['ID'] /** The shop that owns the tag */ @@ -5968,7 +5968,7 @@ export type RemoveTagInput = { export type RemoveTagPayload = { __typename?: 'RemoveTagPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The deleted tag */ tag: Tag } @@ -5984,7 +5984,7 @@ export enum RestrictionTypeEnum { /** Input for `retryFailedEmail` mutation */ export type RetryFailedEmailInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** ID of Email Job to retry */ jobId: Scalars['ID'] /** Shop ID of Email Job */ @@ -5995,7 +5995,7 @@ export type RetryFailedEmailInput = { export type RetryFailedEmailPayload = { __typename?: 'RetryFailedEmailPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** Email retry status */ emailSent: Scalars['Boolean'] } @@ -6030,12 +6030,12 @@ export type Role = Node & { export type RoleConnection = { __typename?: 'RoleConnection' /** The list of nodes that match the query, wrapped in an edge to provide a cursor string for each */ - edges?: Maybe>> + edges: Maybe>> /** * You can request the `nodes` directly to avoid the extra wrapping that `NodeEdge` has, * if you know you will not need to paginate the results. */ - nodes?: Maybe>> + nodes: Maybe>> /** Information to help a client request the next or previous page */ pageInfo: PageInfo /** The total number of nodes that match your query */ @@ -6048,7 +6048,7 @@ export type RoleEdge = NodeEdge & { /** The cursor that represents this node in the paginated results */ cursor: Scalars['ConnectionCursor'] /** The role */ - node?: Maybe + node: Maybe } /** The fields by which you are allowed to sort any query that returns an `RoleConnection` */ @@ -6064,9 +6064,9 @@ export type SelectFulfillmentOptionForGroupInput = { /** The cart to select this option for */ cartId: Scalars['ID'] /** The token for the cart, required if it is an anonymous cart */ - cartToken?: InputMaybe + cartToken: InputMaybe /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The group to select this option for */ fulfillmentGroupId: Scalars['ID'] /** The fulfillment method ID from the option the shopper selected */ @@ -6079,13 +6079,13 @@ export type SelectFulfillmentOptionForGroupPayload = { /** The updated Cart */ cart: Cart /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe } /** Describes which email should be sent a password reset link */ export type SendResetAccountPasswordEmailInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The email address of the account to send reset email to */ email: Scalars['String'] } @@ -6094,7 +6094,7 @@ export type SendResetAccountPasswordEmailInput = { export type SendResetAccountPasswordEmailPayload = { __typename?: 'SendResetAccountPasswordEmailPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The email address of the account to send reset email to */ email: Scalars['String'] } @@ -6102,9 +6102,9 @@ export type SendResetAccountPasswordEmailPayload = { /** Defines which email address should be set as the default for which account */ export type SetAccountDefaultEmailInput = { /** The account ID, which defaults to the viewer account */ - accountId?: InputMaybe + accountId: InputMaybe /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** The email address to set as default */ email: Scalars['Email'] } @@ -6113,9 +6113,9 @@ export type SetAccountDefaultEmailInput = { export type SetAccountDefaultEmailPayload = { __typename?: 'SetAccountDefaultEmailPayload' /** The account, with updated `emailRecords` */ - account?: Maybe + account: Maybe /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe } /** Input for the `setEmailOnAnonymousCart` mutation call */ @@ -6125,7 +6125,7 @@ export type SetEmailOnAnonymousCartInput = { /** Provide the `cartToken` that was returned in the `CreateCartPayload` */ cartToken: Scalars['String'] /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** * The email address to associate with this cart. This address is used for order communication and * other fulfillment purposes. @@ -6139,7 +6139,7 @@ export type SetEmailOnAnonymousCartPayload = { /** The modified cart */ cart: Cart /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe } /** Input needed when setting the shipping address on a cart */ @@ -6147,13 +6147,13 @@ export type SetShippingAddressOnCartInput = { /** The shipping address */ address: AddressInput /** If set, this will be saved as the Address._id. Otherwise an ID will be generated. */ - addressId?: InputMaybe + addressId: InputMaybe /** The cart to set shipping address on */ cartId: Scalars['ID'] /** The token for the cart, required if it is an anonymous cart */ - cartToken?: InputMaybe + cartToken: InputMaybe /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe } /** The response from the `setShippingAddressOnCart` mutation */ @@ -6162,15 +6162,15 @@ export type SetShippingAddressOnCartPayload = { /** The updated Cart */ cart: Cart /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe } /** Input for `setTagHeroMedia` mutation */ export type SetTagHeroMediaInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** File record document */ - fileRecord?: InputMaybe + fileRecord: InputMaybe /** ID of tag to add the hero image record to */ id: Scalars['ID'] /** The shop that owns the tag */ @@ -6181,7 +6181,7 @@ export type SetTagHeroMediaInput = { export type SetTagHeroMediaPayload = { __typename?: 'SetTagHeroMediaPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** Tag the hero image was added to */ tag: Tag } @@ -6197,19 +6197,19 @@ export type ShippingOrderFulfillmentGroupData = { export type ShippingParcel = { __typename?: 'ShippingParcel' /** Containers */ - containers?: Maybe + containers: Maybe /** Distance unit */ - distanceUnit?: Maybe + distanceUnit: Maybe /** Height */ - height?: Maybe + height: Maybe /** Length */ - length?: Maybe + length: Maybe /** Mass unit */ - massUnit?: Maybe + massUnit: Maybe /** Weight */ - weight?: Maybe + weight: Maybe /** Width */ - width?: Maybe + width: Maybe } /** Represents a Reaction shop */ @@ -6218,53 +6218,53 @@ export type Shop = Node & { /** The shop ID */ _id: Scalars['ID'] /** An the shop's default address */ - addressBook?: Maybe>> + addressBook: Maybe>> /** Whether to allow user to checkout without creating an account */ - allowGuestCheckout?: Maybe + allowGuestCheckout: Maybe /** The base unit of length */ - baseUOL?: Maybe + baseUOL: Maybe /** The base unit of Measure */ - baseUOM?: Maybe + baseUOM: Maybe /** URLs for various shop assets in various sizes */ - brandAssets?: Maybe + brandAssets: Maybe /** The default shop currency */ currency: Currency /** The default navigation tree for this shop */ - defaultNavigationTree?: Maybe + defaultNavigationTree: Maybe /** The ID of the shop's default navigation tree */ - defaultNavigationTreeId?: Maybe + defaultNavigationTreeId: Maybe /** Default parcel size for this shop */ - defaultParcelSize?: Maybe + defaultParcelSize: Maybe /** Shop description */ - description?: Maybe + description: Maybe /** The shop's default email record */ - emails?: Maybe>> + emails: Maybe>> /** Returns a list of groups for this shop, as a Relay-compatible connection. */ - groups?: Maybe + groups: Maybe /** Shop's keywords */ - keywords?: Maybe + keywords: Maybe /** Shop default language */ language: Scalars['String'] /** Shop name */ name: Scalars['String'] /** Returns a list of roles for this shop, as a Relay-compatible connection. */ - roles?: Maybe + roles: Maybe /** Returns URLs for shop logos */ - shopLogoUrls?: Maybe + shopLogoUrls: Maybe /** Shop's type */ - shopType?: Maybe + shopType: Maybe /** Shop's slug */ - slug?: Maybe + slug: Maybe /** Returns URLs for various storefront routes */ - storefrontUrls?: Maybe + storefrontUrls: Maybe /** Returns a paged list of tags for this shop */ - tags?: Maybe + tags: Maybe /** Shop default timezone */ - timezone?: Maybe + timezone: Maybe /** The shop's units of length */ - unitsOfLength?: Maybe>> + unitsOfLength: Maybe>> /** The shop's units of measure */ - unitsOfMeasure?: Maybe>> + unitsOfMeasure: Maybe>> } /** Represents a Reaction shop */ @@ -6275,34 +6275,34 @@ export type ShopDefaultNavigationTreeArgs = { /** Represents a Reaction shop */ export type ShopGroupsArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe + after: InputMaybe + before: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe sortBy?: InputMaybe sortOrder?: InputMaybe } /** Represents a Reaction shop */ export type ShopRolesArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe + after: InputMaybe + before: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe sortBy?: InputMaybe sortOrder?: InputMaybe } /** Represents a Reaction shop */ export type ShopTagsArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - isTopLevel?: InputMaybe - last?: InputMaybe - offset?: InputMaybe + after: InputMaybe + before: InputMaybe + first: InputMaybe + isTopLevel: InputMaybe + last: InputMaybe + offset: InputMaybe shouldIncludeDeleted?: InputMaybe sortBy?: InputMaybe sortOrder?: InputMaybe @@ -6312,9 +6312,9 @@ export type ShopTagsArgs = { export type ShopBrandAssets = { __typename?: 'ShopBrandAssets' /** URLs for the navigation bar brand logo image */ - navbarBrandImage?: Maybe + navbarBrandImage: Maybe /** Internal navigation bar brand logo image ID */ - navbarBrandImageId?: Maybe + navbarBrandImageId: Maybe } /** @@ -6328,12 +6328,12 @@ export type ShopBrandAssets = { export type ShopConnection = { __typename?: 'ShopConnection' /** The list of nodes that match the query, wrapped in an edge to provide a cursor string for each */ - edges?: Maybe>> + edges: Maybe>> /** * You can request the `nodes` directly to avoid the extra wrapping that `NodeEdge` has, * if you know you will not need to paginate the results. */ - nodes?: Maybe>> + nodes: Maybe>> /** Information to help a client request the next or previous page */ pageInfo: PageInfo /** The total number of nodes that match your query */ @@ -6346,45 +6346,45 @@ export type ShopEdge = NodeEdge & { /** The cursor that represents this node in the paginated results */ cursor: Scalars['ConnectionCursor'] /** The Shop */ - node?: Maybe + node: Maybe } /** Shop logo URLs */ export type ShopLogoUrls = { __typename?: 'ShopLogoUrls' /** The primary logo URL for this shop. Setting this overrides any uploaded logo. */ - primaryShopLogoUrl?: Maybe + primaryShopLogoUrl: Maybe } /** Shop Logo URLs to provide for the updateShop mutation */ export type ShopLogoUrlsInput = { /** The primary logo URL for this shop. Setting this overrides any uploaded logo. */ - primaryShopLogoUrl?: InputMaybe + primaryShopLogoUrl: InputMaybe } /** Parcel size */ export type ShopParcelSize = { __typename?: 'ShopParcelSize' /** Parcel height */ - height?: Maybe + height: Maybe /** Parcel length */ - length?: Maybe + length: Maybe /** Parcel weight */ - weight?: Maybe + weight: Maybe /** Parcel width */ - width?: Maybe + width: Maybe } /** Parcel size input */ export type ShopParcelSizeInput = { /** Parcel height */ - height?: InputMaybe + height: InputMaybe /** Parcel length */ - length?: InputMaybe + length: InputMaybe /** Parcel weight */ - weight?: InputMaybe + weight: InputMaybe /** Parcel width */ - width?: InputMaybe + width: InputMaybe } /** @@ -6399,27 +6399,27 @@ export type ShopSettings = { */ canSellVariantWithoutInventory: Scalars['Boolean'] /** The default value to use for `taxCode` property of a product */ - defaultTaxCode?: Maybe + defaultTaxCode: Maybe /** A fake setting necessary until some plugin extends this with a real setting */ - doNotUse?: Maybe + doNotUse: Maybe /** * The name of the tax service to fall back to if the primary tax service is down. * This will match the `name` field of one of the services returned by the `taxServices` * query. */ - fallbackTaxServiceName?: Maybe + fallbackTaxServiceName: Maybe /** * If `false` no defined shipping rates will be used when fulfillment * quotes are requested for a cart or order. A quick way to disable the entire * `reaction-shipping-rates` plugin temporarily. */ - isShippingRatesFulfillmentEnabled?: Maybe + isShippingRatesFulfillmentEnabled: Maybe /** * The name of the tax service to use for calculating taxes on carts and orders. * This will match the `name` field of one of the services returned by the `taxServices` * query. */ - primaryTaxServiceName?: Maybe + primaryTaxServiceName: Maybe /** * Whether a navigation item added to the navigation tree should be visible only to * admins by default. @@ -6449,66 +6449,66 @@ export type ShopSettingsUpdates = { * If there is no known inventory for a product configuration, this setting determines * whether that product configuration can be sold and should appear to be available. */ - canSellVariantWithoutInventory?: InputMaybe + canSellVariantWithoutInventory: InputMaybe /** The default value to use for `taxCode` property of a product */ - defaultTaxCode?: InputMaybe + defaultTaxCode: InputMaybe /** Do not use this field */ - doNotUse?: InputMaybe + doNotUse: InputMaybe /** * Optionally, set the name of the tax service to fall back to if the primary tax service is down. * This must match the `name` field of one of the services returned by the `taxServices` query. */ - fallbackTaxServiceName?: InputMaybe + fallbackTaxServiceName: InputMaybe /** * Set to `false` to prevent any defined shipping rates from being used when fulfillment * quotes are requested for a cart or order. A quick way to disable the entire * `reaction-shipping-rates` plugin temporarily. */ - isShippingRatesFulfillmentEnabled?: InputMaybe + isShippingRatesFulfillmentEnabled: InputMaybe /** * Set the name of the tax service to use for calculating taxes on carts and orders. * This will match the `name` field of one of the services returned by the `taxServices` * query. There will be no taxes charged for any carts or orders if this is not set. */ - primaryTaxServiceName?: InputMaybe + primaryTaxServiceName: InputMaybe /** * Whether a navigation item added to the navigation tree should be visible only to * admins by default. */ - shouldNavigationTreeItemsBeAdminOnly?: InputMaybe + shouldNavigationTreeItemsBeAdminOnly: InputMaybe /** * Whether a navigation item added to the navigation tree should be * public API/Storefront visible by default. */ - shouldNavigationTreeItemsBePubliclyVisible?: InputMaybe + shouldNavigationTreeItemsBePubliclyVisible: InputMaybe /** * Whether a navigation item added to the navigation tree should be a secondary * navigation item by default. */ - shouldNavigationTreeItemsBeSecondaryNavOnly?: InputMaybe + shouldNavigationTreeItemsBeSecondaryNavOnly: InputMaybe /** This setting controls how often the sitemaps for the shop will be rebuilt */ - sitemapRefreshPeriod?: InputMaybe + sitemapRefreshPeriod: InputMaybe } /** Inventory info for a specific product configuration. For inventory managed by the SimpleInventory plugin. */ export type SimpleInventoryInfo = { __typename?: 'SimpleInventoryInfo' /** Whether to allow ordering this product configuration when there is insufficient quantity available */ - canBackorder?: Maybe + canBackorder: Maybe /** Current quantity of this product configuration in stock */ - inventoryInStock?: Maybe + inventoryInStock: Maybe /** * Current quantity of this product configuration unavailable for ordering. This value is calculated * by the system based on this product variant being in not-yet-approved orders. */ - inventoryReserved?: Maybe + inventoryReserved: Maybe /** Whether the SimpleInventory plugin should manage inventory for this product configuration */ - isEnabled?: Maybe + isEnabled: Maybe /** * The "low quantity" flag will be applied to this product configuration when the available quantity * is at or below this threshold */ - lowInventoryWarningThreshold?: Maybe + lowInventoryWarningThreshold: Maybe /** The product and chosen options this info applies to */ productConfiguration: ProductConfiguration } @@ -6530,9 +6530,9 @@ export type Sitemap = { export type SocialMetadata = { __typename?: 'SocialMetadata' /** Default share message to use when sharing this product on this social network */ - message?: Maybe + message: Maybe /** Which social network is this metadata for */ - service?: Maybe + service: Maybe } /** The list of currently supported social network identifiers */ @@ -6558,7 +6558,7 @@ export enum SortOrder { /** Input for the splitOrderItem mutation */ export type SplitOrderItemInput = { /** An optional string identifying the mutation call, which will be returned in the response payload */ - clientMutationId?: InputMaybe + clientMutationId: InputMaybe /** ID of the item order you want to split */ itemId: Scalars['ID'] /** The quantity that will be transferred to a new order item on the same fulfillment group. */ @@ -6571,7 +6571,7 @@ export type SplitOrderItemInput = { export type SplitOrderItemPayload = { __typename?: 'SplitOrderItemPayload' /** The same string you sent with the mutation params, for matching mutation calls with their responses */ - clientMutationId?: Maybe + clientMutationId: Maybe /** The ID of the new order item that was created */ newItemId: Scalars['ID'] /** The updated order */ @@ -6582,29 +6582,29 @@ export type SplitOrderItemPayload = { export type StorefrontUrls = { __typename?: 'StorefrontUrls' /** Storefront Account Profile URL (can include `:accountId` in string) */ - storefrontAccountProfileUrl?: Maybe + storefrontAccountProfileUrl: Maybe /** Storefront Home URL */ - storefrontHomeUrl?: Maybe + storefrontHomeUrl: Maybe /** Storefront login URL */ - storefrontLoginUrl?: Maybe + storefrontLoginUrl: Maybe /** Storefront single order URL (can include `:orderReferenceId` and `:orderToken` in string) */ - storefrontOrderUrl?: Maybe + storefrontOrderUrl: Maybe /** Storefront orders URL (can include `:accountId` in string) */ - storefrontOrdersUrl?: Maybe + storefrontOrdersUrl: Maybe } /** Storefront route URLs to provide for the updateShop mutation */ export type StorefrontUrlsInput = { /** Storefront Account Profile URL (can include `:accountId` in string) */ - storefrontAccountProfileUrl?: InputMaybe + storefrontAccountProfileUrl: InputMaybe /** Storefront Home URL */ - storefrontHomeUrl?: InputMaybe + storefrontHomeUrl: InputMaybe /** Storefront login URL */ - storefrontLoginUrl?: InputMaybe + storefrontLoginUrl: InputMaybe /** Storefront single order URL (can include `:orderReferenceId` and `:orderToken` in string) */ - storefrontOrderUrl?: InputMaybe + storefrontOrderUrl: InputMaybe /** Storefront orders URL (can include `:accountId` in string) */ - storefrontOrdersUrl?: InputMaybe + storefrontOrdersUrl: InputMaybe } /** Data for a Stripe payment intent */ @@ -6613,7 +6613,7 @@ export type StripePaymentIntentData = { /** The Stripe charge ID */ chargeId: Scalars['String'] /** The Stripe customer ID, if a Stripe customer exists for this charge */ - customerId?: Maybe + customerId: Maybe } /** Subscriptions allow you to request to get updated data whenever it changes */ @@ -6629,7 +6629,7 @@ export type SuggestedAddress = { /** The street address / first line */ address1: Scalars['String'] /** Optional second line */ - address2?: Maybe + address2: Maybe /** City */ city: Scalars['String'] /** Country */ @@ -6648,23 +6648,23 @@ export type Surcharge = Node & { /** Amount. */ amount: Money /** Attribute restrictions. */ - attributes?: Maybe>> + attributes: Maybe>> /** The date and time at which this surcharge was created */ createdAt: Scalars['DateTime'] /** Destination restrictions. */ - destination?: Maybe + destination: Maybe /** Message translated into provided / default language. */ message: Scalars['String'] /** Messages provided with content and all languages */ - messagesByLanguage?: Maybe>> + messagesByLanguage: Maybe>> /** Method IDs to apply this surcharge to. */ - methodIds?: Maybe>> + methodIds: Maybe>> /** The shop ID */ shopId: Scalars['ID'] /** The type of this surcharge. Allowed types `surcharge`. */ type: SurchargeTypeEnum /** The date and time at which this surcharge was last updated */ - updatedAt?: Maybe + updatedAt: Maybe } /** Defines a surcharge for surchargeById and surcharges query. */ @@ -6676,25 +6676,25 @@ export type SurchargeMessageArgs = { export type SurchargeAttributeRestrictions = { __typename?: 'SurchargeAttributeRestrictions' /** The operator to use for value comparison */ - operator?: Maybe + operator: Maybe /** The property to check */ - property?: Maybe + property: Maybe /** The type of this property */ - propertyType?: Maybe + propertyType: Maybe /** The value to check for */ - value?: Maybe + value: Maybe } /** Input to add a surcharge attribute restriction */ export type SurchargeAttributeRestrictionsInput = { /** The operator to use for value comparison */ - operator?: InputMaybe + operator: InputMaybe /** The property to check */ - property?: InputMaybe + property: InputMaybe /** The type of this property */ - propertyType?: InputMaybe + propertyType: InputMaybe /** The value to check for */ - value?: InputMaybe + value: InputMaybe } /** @@ -6708,12 +6708,12 @@ export type SurchargeAttributeRestrictionsInput = { export type SurchargeConnection = { __typename?: 'SurchargeConnection' /** The list of nodes that match the query, wrapped in an edge to provide a cursor string for each */ - edges?: Maybe>> + edges: Maybe>> /** * You can request the `nodes` directly to avoid the extra wrapping that `NodeEdge` has, * if you know you will not need to paginate the results. */ - nodes?: Maybe>> + nodes: Maybe>> /** Information to help a client request the next or previous page */ pageInfo: PageInfo /** Total count for all pages */ @@ -6727,21 +6727,21 @@ export type SurchargeConnection = { export type SurchargeDestinationRestrictions = { __typename?: 'SurchargeDestinationRestrictions' /** Restrict for any of these destination countries */ - country?: Maybe>> + country: Maybe>> /** Restrict for any of these destination postal codes */ - postal?: Maybe>> + postal: Maybe>> /** Restrict for any of these destination regions */ - region?: Maybe>> + region: Maybe>> } /** Input to add a surcharge destination restriction */ export type SurchargeDestinationRestrictionsInput = { /** Restrict for any of these destination countries */ - country?: InputMaybe>> + country: InputMaybe>> /** Restrict for any of these destination postal codes */ - postal?: InputMaybe>> + postal: InputMaybe>> /** Restrict for any of these destination regions */ - region?: InputMaybe>> + region: InputMaybe>> } /** A connection edge in which each node is a `Surcharge` object */ @@ -6750,7 +6750,7 @@ export type SurchargeEdge = { /** The cursor that represents this node in the paginated results */ cursor: Scalars['ConnectionCursor'] /** The surcharge */ - node?: Maybe + node: Maybe } /** Defines a surcharge. */ @@ -6758,15 +6758,13 @@ export type SurchargeInput = { /** Amount. */ amount: Scalars['Float'] /** Attribute restrictions. */ - attributes?: InputMaybe< - Array> - > + attributes: InputMaybe>> /** Destination restrictions. */ - destination?: InputMaybe + destination: InputMaybe /** Messages by language. */ messagesByLanguage: Array> /** Method IDs to apply this surcharge to. */ - methodIds?: InputMaybe>> + methodIds: InputMaybe>> /** The type of this surcharge. Allowed types are `surcharge`. */ type: SurchargeTypeEnum } @@ -6812,7 +6810,7 @@ export type SystemInformation = { /** Mongo version */ mongoVersion: DatabaseInformation /** Plugins installed with name, version information */ - plugins?: Maybe>> + plugins: Maybe>> } /** Represents a single tag */ @@ -6824,11 +6822,11 @@ export type Tag = Deletable & /** The date and time at which this tag was created */ createdAt: Scalars['DateTime'] /** A string of the title to be displayed on a Tag Listing Page */ - displayTitle?: Maybe + displayTitle: Maybe /** A list of the IDs of top products in this tag */ - featuredProductIds?: Maybe>> + featuredProductIds: Maybe>> /** A string containing the hero image url for a Tag Listing Page */ - heroMediaUrl?: Maybe + heroMediaUrl: Maybe /** * If `true`, this object should be considered deleted. Soft deleted objects are not * returned in query results unless you explicitly ask for them. @@ -6839,30 +6837,30 @@ export type Tag = Deletable & /** If `true`, this tag's Tag Listing Page should be visible to the public */ isVisible: Scalars['Boolean'] /** Arbitrary additional metadata about this tag */ - metafields?: Maybe>> + metafields: Maybe>> /** The display name for the tag. This is unique within a given shop. */ name: Scalars['String'] /** The tag's position relative to other tags at the same level of the tag hierarchy */ - position?: Maybe + position: Maybe /** The shop to which this tag belongs */ shop: Shop /** A unique URL-safe string representing this tag for links */ - slug?: Maybe + slug: Maybe /** A list of the IDs of tags that have this tag as their parent in the tag hierarchy, in the user-defined order */ subTagIds: Array> /** A paged list of tags that have this tag as their parent in the tag hierarchy. Currently only three levels are supported. */ - subTags?: Maybe + subTags: Maybe /** The date and time at which this tag was last updated */ updatedAt: Scalars['DateTime'] } /** Represents a single tag */ export type TagSubTagsArgs = { - after?: InputMaybe - before?: InputMaybe - first?: InputMaybe - last?: InputMaybe - offset?: InputMaybe + after: InputMaybe + before: InputMaybe + first: InputMaybe + last: InputMaybe + offset: InputMaybe sortBy?: InputMaybe sortOrder?: InputMaybe } @@ -6878,12 +6876,12 @@ export type TagSubTagsArgs = { export type TagConnection = { __typename?: 'TagConnection' /** The list of nodes that match the query, wrapped in an edge to provide a cursor string for each */ - edges?: Maybe>> + edges: Maybe>> /** * You can request the `nodes` directly to avoid the extra wrapping that `NodeEdge` has, * if you know you will not need to paginate the results. */ - nodes?: Maybe>> + nodes: Maybe>> /** Information to help a client request the next or previous page */ pageInfo: PageInfo /** The total number of nodes that match your query */ @@ -6896,7 +6894,7 @@ export type TagEdge = NodeEdge & { /** The cursor that represents this node in the paginated results */ cursor: Scalars['ConnectionCursor'] /** The tag */ - node?: Maybe + node: Maybe } /** A tag product */ @@ -6907,9 +6905,9 @@ export type TagProduct = { /** The date and time at which this CatalogProduct was created, which is when the related product was first published */ createdAt: Scalars['DateTime'] /** Position of the product */ - position?: Maybe + position: Maybe /** The title of the product */ - title?: Maybe + title: Maybe } /** @@ -6923,12 +6921,12 @@ export type TagProduct = { export type TagProductConnection = { __typename?: 'TagProductConnection' /** The list of nodes that match the query, wrapped in an edge to provide a cursor string for each */ - edges?: Maybe>> + edges: Maybe>> /** * You can request the `nodes` directly to avoid the extra wrapping that `NodeEdge` has, * if you know you will not need to paginate the results. */ - nodes?: Maybe>> + nodes: Maybe>> /** Information to help a client request the next or previous page */ pageInfo: PageInfo /** The total number of nodes that match your query */ @@ -6941,7 +6939,7 @@ export type TagProductEdge = { /** The cursor that represents this node in the paginated results */ cursor: Scalars['ConnectionCursor'] /** The tag product */ - node?: Maybe + node: Maybe } /** The fields by which you are allowed to sort any query that returns a `TagConnection` */ @@ -6973,19 +6971,19 @@ export type TaxRate = { /** Tax rate ID */ _id: Scalars['ID'] /** An optional country code to limit where this tax is applied, in conjunction with `sourcing` field */ - country?: Maybe + country: Maybe /** An optional postal code to limit where this tax is applied, in conjunction with `sourcing` field */ - postal?: Maybe + postal: Maybe /** The tax rate. For example, 0.05 for a 5% sales tax. */ rate: Scalars['Float'] /** An optional region (e.g., state) to limit where this tax is applied, in conjunction with `sourcing` field */ - region?: Maybe + region: Maybe /** The shop to which this TaxRate belongs */ shop: Shop /** Whether the `country`, `postal`, and `region` filters apply to the origin address or the destination address */ sourcing: TaxSource /** An optional tax code, to apply this tax rate to only products that have this tax code */ - taxCode?: Maybe + taxCode: Maybe } /** @@ -6999,12 +6997,12 @@ export type TaxRate = { export type TaxRateConnection = { __typename?: 'TaxRateConnection' /** The list of nodes that match the query, wrapped in an edge to provide a cursor string for each */ - edges?: Maybe>> + edges: Maybe>> /** * You can request the `nodes` directly to avoid the extra wrapping that `NodeEdge` has, * if you know you will not need to paginate the results. */ - nodes?: Maybe>> + nodes: Maybe>> /** Information to help a client request the next or previous page */ pageInfo: PageInfo /** The total number of nodes that match your query */ @@ -7017,7 +7015,7 @@ export type TaxRateEdge = { /** The cursor that represents this node in the paginated results */ cursor: Scalars['ConnectionCursor'] /** The tax rate */ - node?: Maybe + node: Maybe } /** A service registered by a tax plugin, that provides tax codes and calculations */ @@ -7045,9 +7043,9 @@ export type TaxSummary = { /** The time at which taxes were last calculated for the cart or order group */ calculatedAt: Scalars['DateTime'] /** The name of the tax service that last calculated taxes for the cart or order group */ - calculatedByTaxServiceName?: Maybe + calculatedByTaxServiceName: Maybe /** A reference ID for the external system that calculated the taxes */ - referenceId?: Maybe + referenceId: Maybe /** Total tax calculated by the active tax service */ tax: Money /** Amount that was deemed subject to any taxes by the active tax service */ @@ -7062,17 +7060,17 @@ export type Template = Node & { /** The shop ID */ _id: Scalars['ID'] /** Email template language */ - language?: Maybe + language: Maybe /** Email template name */ - name?: Maybe + name: Maybe /** The shop that owns the template */ shopId: Scalars['ID'] /** Email template string */ - subject?: Maybe + subject: Maybe /** Email template body or html text */ - template?: Maybe + template: Maybe /** Email template title */ - title?: Maybe + title: Maybe } /** @@ -7086,12 +7084,12 @@ export type Template = Node & { export type TemplateConnection = { __typename?: 'TemplateConnection' /** The list of nodes that match the query, wrapped in an edge to provide a cursor string for each */ - edges?: Maybe>> + edges: Maybe>> /** * You can request the `nodes` directly to avoid the extra wrapping that `NodeEdge` has, * if you know you will not need to paginate the results. */ - nodes?: Maybe>> + nodes: Maybe>> /** Information to help a client request the next or previous page */ pageInfo: PageInfo /** The total number of nodes that match your query */ @@ -7104,58 +7102,58 @@ export type TemplateEdge = { /** The cursor that represents this node in the paginated results */ cursor: Scalars['ConnectionCursor'] /** The email template */ - node?: Maybe