diff --git a/examples/nextjs-localstorage/CHANGELOG.md b/examples/nextjs-localstorage/CHANGELOG.md new file mode 100644 index 0000000..d1e35f6 --- /dev/null +++ b/examples/nextjs-localstorage/CHANGELOG.md @@ -0,0 +1,15 @@ +# nextjs-localstorage + +## 0.1.1 + +### Patch Changes + +- Updated dependencies [7be03f0] + - @bsmnt/storefront-hooks@2.0.2 + +## 0.1.1-next.0 + +### Patch Changes + +- Updated dependencies [7be03f0] + - @bsmnt/storefront-hooks@1.3.1-next.0 diff --git a/examples/nextjs-localstorage/package.json b/examples/nextjs-localstorage/package.json index 1d705a0..e72005b 100644 --- a/examples/nextjs-localstorage/package.json +++ b/examples/nextjs-localstorage/package.json @@ -1,6 +1,6 @@ { "name": "nextjs-localstorage", - "version": "0.1.0", + "version": "0.1.1", "private": true, "scripts": { "dev": "next dev", @@ -17,6 +17,6 @@ }, "devDependencies": { "tsconfig": "*", - "typescript": "^4.8.4" + "typescript": "^4.9.5" } } diff --git a/examples/nextjs-shopify/CHANGELOG.md b/examples/nextjs-shopify/CHANGELOG.md new file mode 100644 index 0000000..d281441 --- /dev/null +++ b/examples/nextjs-shopify/CHANGELOG.md @@ -0,0 +1,17 @@ +# nextjs-shopify + +## 0.1.1 + +### Patch Changes + +- Updated dependencies [7be03f0] + - @bsmnt/drop@1.2.1 + - @bsmnt/storefront-hooks@2.0.2 + +## 0.1.1-next.0 + +### Patch Changes + +- Updated dependencies [7be03f0] + - @bsmnt/drop@1.2.1-next.0 + - @bsmnt/storefront-hooks@1.3.1-next.0 diff --git a/examples/nextjs-shopify/package.json b/examples/nextjs-shopify/package.json index b305d46..65e6153 100644 --- a/examples/nextjs-shopify/package.json +++ b/examples/nextjs-shopify/package.json @@ -1,7 +1,7 @@ { "name": "nextjs-shopify", "private": true, - "version": "0.1.0", + "version": "0.1.1", "scripts": { "dev": "next dev", "build": "next build", diff --git a/examples/nextjs-shopify/src/pages/index.tsx b/examples/nextjs-shopify/src/pages/index.tsx index c49568e..bad5793 100644 --- a/examples/nextjs-shopify/src/pages/index.tsx +++ b/examples/nextjs-shopify/src/pages/index.tsx @@ -5,7 +5,10 @@ import styles from '../styles/Home.module.css' import { useCartQuery } from '../storefront/hooks' import { GetStaticProps } from 'next' import { storefront } from '../storefront/sdk-gen/sdk' -import { CollectionFragment } from '../storefront/sdk-gen/generated' +import { + CollectionFragment, + collectionFragment +} from '../storefront/sdk-gen/fragments' type PageProps = { collections: Array @@ -75,7 +78,13 @@ export default function Home({ collections }: PageProps) { } export const getStaticProps: GetStaticProps = async (context) => { - const { collections } = await storefront.FetchCollections() + const { collections } = await storefront.query({ + collections: { + __args: { first: 250 }, + nodes: collectionFragment + } + }) + return { props: { collections: collections.nodes diff --git a/examples/nextjs-shopify/src/storefront/hooks/index.tsx b/examples/nextjs-shopify/src/storefront/hooks/index.tsx index 45d6b42..e054e85 100644 --- a/examples/nextjs-shopify/src/storefront/hooks/index.tsx +++ b/examples/nextjs-shopify/src/storefront/hooks/index.tsx @@ -1,5 +1,26 @@ import { createStorefrontHooks } from '@bsmnt/storefront-hooks' import { storefront } from '../sdk-gen/sdk' +import type { + CartGenqlSelection, + CartUserErrorGenqlSelection, + FieldsSelection, + Cart as GenqlCart +} from '../sdk-gen/generated' + +const cartFragment = { + id: true, + checkoutUrl: true, + createdAt: true, + cost: { subtotalAmount: { amount: true, currencyCode: true } } +} satisfies CartGenqlSelection + +export type Cart = FieldsSelection + +const userErrorFragment = { + message: true, + code: true, + field: true +} satisfies CartUserErrorGenqlSelection export const { QueryClientProvider, @@ -12,40 +33,68 @@ export const { cartCookieKey: 'example-nextjs-shopify', fetchers: { fetchCart: async (cartId) => { - const { cart } = await storefront.FetchCart({ id: cartId }) + const { cart } = await storefront.query({ + cart: { + __args: { id: cartId }, + ...cartFragment + } + }) + if (cart === undefined) throw new Error('Request failed') return cart } }, mutators: { addLineItemsToCart: async (cartId, lines) => { - const { cartLinesAdd } = await storefront.AddLineItem({ - cartId, - lines + const { cartLinesAdd } = await storefront.mutation({ + cartLinesAdd: { + __args: { + cartId, + lines + }, + cart: cartFragment, + userErrors: userErrorFragment + } }) + return { data: cartLinesAdd?.cart, userErrors: cartLinesAdd?.userErrors } }, createCart: async () => { - const { cartCreate } = await storefront.CreateCart() + const { cartCreate } = await storefront.mutation({ + cartCreate: { + cart: cartFragment, + userErrors: userErrorFragment + } + }) return { data: cartCreate?.cart, userErrors: cartCreate?.userErrors } }, + // TODO we could use the same mutation as createCart? createCartWithLines: async (lines) => { - const { cartCreate } = await storefront.CreateCartWithLines({ lines }) + const { cartCreate } = await storefront.mutation({ + cartCreate: { + __args: { input: { lines } }, + cart: cartFragment, + userErrors: userErrorFragment + } + }) return { data: cartCreate?.cart, userErrors: cartCreate?.userErrors } }, removeLineItemsFromCart: async (cartId, lineIds) => { - const { cartLinesRemove } = await storefront.RemoveLineItem({ - cartId, - lineIds + const { cartLinesRemove } = await storefront.mutation({ + cartLinesRemove: { + __args: { cartId, lineIds }, + cart: cartFragment, + userErrors: userErrorFragment + } }) return { data: cartLinesRemove?.cart, @@ -53,13 +102,19 @@ export const { } }, updateLineItemsInCart: async (cartId, lines) => { - const { cartLinesUpdate } = await storefront.UpdateLineItem({ - cartId, - lines: lines.map((l) => ({ - id: l.merchandiseId, - quantity: l.quantity, - attributes: l.attributes - })) + const { cartLinesUpdate } = await storefront.mutation({ + cartLinesUpdate: { + __args: { + cartId, + lines: lines.map((l) => ({ + id: l.merchandiseId, + quantity: l.quantity, + attributes: l.attributes + })) + }, + cart: cartFragment, + userErrors: userErrorFragment + } }) return { data: cartLinesUpdate?.cart, @@ -70,4 +125,4 @@ export const { createCartIfNotFound: true }) -export { useProductFormHelper } from './use-product-form-helper' +// export { useProductFormHelper } from './use-product-form-helper' diff --git a/examples/nextjs-shopify/src/storefront/hooks/use-product-form-helper.tsx b/examples/nextjs-shopify/src/storefront/hooks/use-product-form-helper.tsx index c0b66bb..f49fde6 100644 --- a/examples/nextjs-shopify/src/storefront/hooks/use-product-form-helper.tsx +++ b/examples/nextjs-shopify/src/storefront/hooks/use-product-form-helper.tsx @@ -1,16 +1,12 @@ import { useCallback, useMemo, useState } from 'react' - -import type { ProductFragment, ProductVariant } from '../sdk-gen/generated' +import { Product, ProductVariant } from '../sdk-gen/generated' type BareBonesVariant = Pick< ProductVariant, 'availableForSale' | 'compareAtPriceV2' | 'priceV2' | 'selectedOptions' | 'id' > -type BareBonesProduct = Pick< - ProductFragment, - 'options' | 'availableForSale' -> & { +type BareBonesProduct = Pick & { variants: { nodes: Array } } & { [key: string]: unknown } diff --git a/examples/nextjs-shopify/src/storefront/sdk-gen/fragments.ts b/examples/nextjs-shopify/src/storefront/sdk-gen/fragments.ts new file mode 100644 index 0000000..6415ef3 --- /dev/null +++ b/examples/nextjs-shopify/src/storefront/sdk-gen/fragments.ts @@ -0,0 +1,79 @@ +import type { + Collection, + Product, + CollectionGenqlSelection, + FieldsSelection, + ProductGenqlSelection, + ImageGenqlSelection, + ProductVariantGenqlSelection, + ProductVariant, + Image, + } from './generated' + + const imageFragment = { + url: true, + width: true, + height: true, + altText: true, + } satisfies ImageGenqlSelection + + export type ImageFragment = FieldsSelection + + export const productVariantFragment = { + id: true, + title: true, + availableForSale: true, + quantityAvailable: true, + compareAtPriceV2: { + amount: true, + currencyCode: true, + }, + priceV2: { + amount: true, + currencyCode: true, + }, + image: imageFragment, + selectedOptions: { + name: true, + value: true, + }, + } satisfies ProductVariantGenqlSelection + + export type ProductVariantFragment = FieldsSelection< + ProductVariant, + typeof productVariantFragment + > + + export const productFragment = { + id: true, + title: true, + options: { + __args: { first: 25 }, + id: true, + name: true, + values: true, + }, + availableForSale: true, + variants: { + __args: { first: 100 }, + nodes: productVariantFragment + }, + } satisfies ProductGenqlSelection + + export type ProductFragment = FieldsSelection + + export const collectionFragment = { + id: true, + title: true, + description: true, + products: { + __args: { first: 100 }, + nodes: productFragment, + }, + } satisfies CollectionGenqlSelection + + export type CollectionFragment = FieldsSelection< + Collection, + typeof collectionFragment + > + \ No newline at end of file diff --git a/examples/nextjs-shopify/src/storefront/sdk-gen/generated/graphql.schema.json b/examples/nextjs-shopify/src/storefront/sdk-gen/generated/graphql.schema.json deleted file mode 100644 index c85b710..0000000 --- a/examples/nextjs-shopify/src/storefront/sdk-gen/generated/graphql.schema.json +++ /dev/null @@ -1,31465 +0,0 @@ -{ - "__schema": { - "queryType": { - "name": "QueryRoot" - }, - "mutationType": { - "name": "Mutation" - }, - "subscriptionType": null, - "types": [ - { - "kind": "OBJECT", - "name": "ApiVersion", - "description": "A version of the API, as defined by [Shopify API versioning](https://shopify.dev/api/usage/versioning).\nVersions are commonly referred to by their handle (for example, `2021-10`).\n", - "fields": [ - { - "name": "displayName", - "description": "The human-readable name of the version.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "handle", - "description": "The unique identifier of an ApiVersion. All supported API versions have a date-based (YYYY-MM) or `unstable` handle.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "supported", - "description": "Whether the version is actively supported by Shopify. Supported API versions are guaranteed to be stable. Unsupported API versions include unstable, release candidate, and end-of-life versions that are marked as unsupported. For more information, refer to [Versioning](https://shopify.dev/api/usage/versioning).", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "AppliedGiftCard", - "description": "Details about the gift card used on the checkout.", - "fields": [ - { - "name": "amountUsed", - "description": "The amount that was taken from the gift card by applying it.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "amountUsedV2", - "description": "The amount that was taken from the gift card by applying it.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": true, - "deprecationReason": "Use `amountUsed` instead." - }, - { - "name": "balance", - "description": "The amount left on the gift card.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "balanceV2", - "description": "The amount left on the gift card.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": true, - "deprecationReason": "Use `balance` instead." - }, - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "lastCharacters", - "description": "The last characters of the gift card.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "presentmentAmountUsed", - "description": "The amount that was applied to the checkout in its currency.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Article", - "description": "An article in an online store blog.", - "fields": [ - { - "name": "author", - "description": "The article's author.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "ArticleAuthor", - "ofType": null - } - }, - "isDeprecated": true, - "deprecationReason": "Use `authorV2` instead." - }, - { - "name": "authorV2", - "description": "The article's author.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "ArticleAuthor", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "blog", - "description": "The blog that the article belongs to.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Blog", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "comments", - "description": "List of comments posted on the article.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CommentConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "content", - "description": "Stripped content of the article, single line with HTML tags removed.", - "args": [ - { - "name": "truncateAt", - "description": "Truncates string after the given length.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "contentHtml", - "description": "The content of the article, complete with HTML formatting.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "HTML", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "excerpt", - "description": "Stripped excerpt of the article, single line with HTML tags removed.", - "args": [ - { - "name": "truncateAt", - "description": "Truncates string after the given length.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "excerptHtml", - "description": "The excerpt of the article, complete with HTML formatting.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "HTML", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "handle", - "description": "A human-friendly unique string for the Article automatically generated from its title.\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "image", - "description": "The image associated with the article.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Image", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "metafield", - "description": "Returns a metafield found by namespace and key.", - "args": [ - { - "name": "key", - "description": "The identifier for the metafield.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "namespace", - "description": "A container for a set of metafields.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "metafields", - "description": "The metafields associated with the resource matching the supplied list of namespaces and keys.\n", - "args": [ - { - "name": "identifiers", - "description": "The list of metafields to retrieve by namespace and key.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "HasMetafieldsIdentifier", - "ofType": null - } - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "onlineStoreUrl", - "description": "The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "publishedAt", - "description": "The date and time when the article was published.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "seo", - "description": "The article’s SEO information.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "SEO", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "tags", - "description": "A categorization that a article can be tagged with.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "title", - "description": "The article’s name.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "HasMetafields", - "ofType": null - }, - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - }, - { - "kind": "INTERFACE", - "name": "OnlineStorePublishable", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "ArticleAuthor", - "description": "The author of an article.", - "fields": [ - { - "name": "bio", - "description": "The author's bio.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "email", - "description": "The author’s email.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "firstName", - "description": "The author's first name.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "lastName", - "description": "The author's last name.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "name", - "description": "The author's full name.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "ArticleConnection", - "description": "An auto-generated type for paginating through multiple Articles.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "ArticleEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of the nodes contained in ArticleEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Article", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "ArticleEdge", - "description": "An auto-generated type which holds one Article and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "The item at the end of ArticleEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Article", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "ArticleSortKeys", - "description": "The set of valid sort keys for the Article query.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "AUTHOR", - "description": "Sort by the `author` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BLOG_TITLE", - "description": "Sort by the `blog_title` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ID", - "description": "Sort by the `id` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PUBLISHED_AT", - "description": "Sort by the `published_at` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RELEVANCE", - "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TITLE", - "description": "Sort by the `title` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "UPDATED_AT", - "description": "Sort by the `updated_at` value.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Attribute", - "description": "Represents a generic custom attribute.", - "fields": [ - { - "name": "key", - "description": "Key or name of the attribute.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "value", - "description": "Value of the attribute.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "AttributeInput", - "description": "Specifies the input fields required for an attribute.", - "fields": null, - "inputFields": [ - { - "name": "key", - "description": "Key or name of the attribute.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "value", - "description": "Value of the attribute.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "AutomaticDiscountApplication", - "description": "Automatic discount applications capture the intentions of a discount that was automatically applied.\n", - "fields": [ - { - "name": "allocationMethod", - "description": "The method by which the discount's value is allocated to its entitled items.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "DiscountApplicationAllocationMethod", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "targetSelection", - "description": "Which lines of targetType that the discount is allocated over.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "DiscountApplicationTargetSelection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "targetType", - "description": "The type of line that the discount is applicable towards.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "DiscountApplicationTargetType", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "title", - "description": "The title of the application.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "value", - "description": "The value of the discount application.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "UNION", - "name": "PricingValue", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "DiscountApplication", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "AvailableShippingRates", - "description": "A collection of available shipping rates for a checkout.", - "fields": [ - { - "name": "ready", - "description": "Whether or not the shipping rates are ready.\nThe `shippingRates` field is `null` when this value is `false`.\nThis field should be polled until its value becomes `true`.\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "shippingRates", - "description": "The fetched shipping rates. `null` until the `ready` field is `true`.", - "args": [], - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "ShippingRate", - "ofType": null - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Blog", - "description": "An online store blog.", - "fields": [ - { - "name": "articleByHandle", - "description": "Find an article by its handle.", - "args": [ - { - "name": "handle", - "description": "The handle of the article.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Article", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "articles", - "description": "List of the blog's articles.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "query", - "description": "Supported filter parameters:\n - `author`\n - `blog_title`\n - `created_at`\n - `tag`\n - `tag_not`\n - `updated_at`\n\nSee the detailed [search syntax](https://shopify.dev/api/usage/search-syntax)\nfor more information about using filters.\n", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "sortKey", - "description": "Sort the underlying list by the given key.", - "type": { - "kind": "ENUM", - "name": "ArticleSortKeys", - "ofType": null - }, - "defaultValue": "ID", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "ArticleConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "authors", - "description": "The authors who have contributed to the blog.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "ArticleAuthor", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "handle", - "description": "A human-friendly unique string for the Blog automatically generated from its title.\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "metafield", - "description": "Returns a metafield found by namespace and key.", - "args": [ - { - "name": "key", - "description": "The identifier for the metafield.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "namespace", - "description": "A container for a set of metafields.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "metafields", - "description": "The metafields associated with the resource matching the supplied list of namespaces and keys.\n", - "args": [ - { - "name": "identifiers", - "description": "The list of metafields to retrieve by namespace and key.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "HasMetafieldsIdentifier", - "ofType": null - } - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "onlineStoreUrl", - "description": "The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "seo", - "description": "The blog's SEO information.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "SEO", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "title", - "description": "The blogs’s title.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "HasMetafields", - "ofType": null - }, - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - }, - { - "kind": "INTERFACE", - "name": "OnlineStorePublishable", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "BlogConnection", - "description": "An auto-generated type for paginating through multiple Blogs.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "BlogEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of the nodes contained in BlogEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Blog", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "BlogEdge", - "description": "An auto-generated type which holds one Blog and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "The item at the end of BlogEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Blog", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "BlogSortKeys", - "description": "The set of valid sort keys for the Blog query.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "HANDLE", - "description": "Sort by the `handle` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ID", - "description": "Sort by the `id` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RELEVANCE", - "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TITLE", - "description": "Sort by the `title` value.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "SCALAR", - "name": "Boolean", - "description": "The `Boolean` scalar type represents `true` or `false`.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Brand", - "description": "The store's branding configuration.\n", - "fields": [ - { - "name": "colors", - "description": "The colors of the store's brand.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "BrandColors", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "coverImage", - "description": "The store's cover image.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MediaImage", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "logo", - "description": "The store's default logo.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MediaImage", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "shortDescription", - "description": "The store's short description.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "slogan", - "description": "The store's slogan.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "squareLogo", - "description": "The store's preferred logo for square UI elements.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MediaImage", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "BrandColorGroup", - "description": "A group of related colors for the shop's brand.\n", - "fields": [ - { - "name": "background", - "description": "The background color.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "Color", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "foreground", - "description": "The foreground color.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "Color", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "BrandColors", - "description": "The colors of the shop's brand.\n", - "fields": [ - { - "name": "primary", - "description": "The shop's primary brand colors.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "BrandColorGroup", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "secondary", - "description": "The shop's secondary brand colors.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "BrandColorGroup", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "CardBrand", - "description": "Card brand, such as Visa or Mastercard, which can be used for payments.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "AMERICAN_EXPRESS", - "description": "American Express.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DINERS_CLUB", - "description": "Diners Club.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DISCOVER", - "description": "Discover.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "JCB", - "description": "JCB.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MASTERCARD", - "description": "Mastercard.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "VISA", - "description": "Visa.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Cart", - "description": "A cart represents the merchandise that a buyer intends to purchase,\nand the estimated cost associated with the cart. Learn how to\n[interact with a cart](https://shopify.dev/custom-storefronts/internationalization/international-pricing)\nduring a customer's session.\n", - "fields": [ - { - "name": "attribute", - "description": "An attribute associated with the cart.", - "args": [ - { - "name": "key", - "description": "The key of the attribute.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Attribute", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "attributes", - "description": "The attributes associated with the cart. Attributes are represented as key-value pairs.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Attribute", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "buyerIdentity", - "description": "Information about the buyer that is interacting with the cart.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartBuyerIdentity", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutUrl", - "description": "The URL of the checkout for the cart.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "cost", - "description": "The estimated costs that the buyer will pay at checkout. The costs are subject to change and changes will be reflected at checkout. The `cost` field uses the `buyerIdentity` field to determine [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing).", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartCost", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "createdAt", - "description": "The date and time when the cart was created.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "deliveryGroups", - "description": "The delivery groups available for the cart, based on the buyer identity default\ndelivery address preference or the default address of the logged-in customer.\n", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartDeliveryGroupConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "discountAllocations", - "description": "The discounts that have been applied to the entire cart.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INTERFACE", - "name": "CartDiscountAllocation", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "discountCodes", - "description": "The case-insensitive discount codes that the customer added at checkout.\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartDiscountCode", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "estimatedCost", - "description": "The estimated costs that the buyer will pay at checkout.\nThe estimated costs are subject to change and changes will be reflected at checkout.\nThe `estimatedCost` field uses the `buyerIdentity` field to determine\n[international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing).\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartEstimatedCost", - "ofType": null - } - }, - "isDeprecated": true, - "deprecationReason": "Use `cost` instead." - }, - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "lines", - "description": "A list of lines containing information about the items the customer intends to purchase.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartLineConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "note", - "description": "A note that is associated with the cart. For example, the note can be a personalized message to the buyer.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "totalQuantity", - "description": "The total number of items in the cart.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "updatedAt", - "description": "The date and time when the cart was updated.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CartAttributesUpdatePayload", - "description": "Return type for `cartAttributesUpdate` mutation.", - "fields": [ - { - "name": "cart", - "description": "The updated cart.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Cart", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CartAutomaticDiscountAllocation", - "description": "The discounts automatically applied to the cart line based on prerequisites that have been met.", - "fields": [ - { - "name": "discountedAmount", - "description": "The discounted amount that has been applied to the cart line.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "title", - "description": "The title of the allocated discount.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "CartDiscountAllocation", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CartBuyerIdentity", - "description": "Represents information about the buyer that is interacting with the cart.", - "fields": [ - { - "name": "countryCode", - "description": "The country where the buyer is located.", - "args": [], - "type": { - "kind": "ENUM", - "name": "CountryCode", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customer", - "description": "The customer account associated with the cart.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Customer", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "deliveryAddressPreferences", - "description": "An ordered set of delivery addresses tied to the buyer that is interacting with the cart.\nThe rank of the preferences is determined by the order of the addresses in the array. Preferences\ncan be used to populate relevant fields in the checkout flow.\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "UNION", - "name": "DeliveryAddress", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "email", - "description": "The email address of the buyer that is interacting with the cart.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "phone", - "description": "The phone number of the buyer that is interacting with the cart.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "CartBuyerIdentityInput", - "description": "Specifies the input fields to update the buyer information associated with a cart.\nBuyer identity is used to determine\n[international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing)\nand should match the customer's shipping address.\n", - "fields": null, - "inputFields": [ - { - "name": "countryCode", - "description": "The country where the buyer is located.", - "type": { - "kind": "ENUM", - "name": "CountryCode", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerAccessToken", - "description": "The access token used to identify the customer associated with the cart.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "deliveryAddressPreferences", - "description": "An ordered set of delivery addresses tied to the buyer that is interacting with the cart.\nThe rank of the preferences is determined by the order of the addresses in the array. Preferences\ncan be used to populate relevant fields in the checkout flow.\n", - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "DeliveryAddressInput", - "ofType": null - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "email", - "description": "The email address of the buyer that is interacting with the cart.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "phone", - "description": "The phone number of the buyer that is interacting with the cart.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CartBuyerIdentityUpdatePayload", - "description": "Return type for `cartBuyerIdentityUpdate` mutation.", - "fields": [ - { - "name": "cart", - "description": "The updated cart.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Cart", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CartCodeDiscountAllocation", - "description": "The discount that has been applied to the cart line using a discount code.", - "fields": [ - { - "name": "code", - "description": "The code used to apply the discount.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "discountedAmount", - "description": "The discounted amount that has been applied to the cart line.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "CartDiscountAllocation", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CartCost", - "description": "The costs that the buyer will pay at checkout.\nThe cart cost uses [`CartBuyerIdentity`](https://shopify.dev/api/storefront/reference/cart/cartbuyeridentity) to determine\n[international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing).\n", - "fields": [ - { - "name": "checkoutChargeAmount", - "description": "The estimated amount, before taxes and discounts, for the customer to pay at checkout. The checkout charge amount doesn't include any deferred payments that'll be paid at a later date. If the cart has no deferred payments, then the checkout charge amount is equivalent to `subtotalAmount`.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "subtotalAmount", - "description": "The amount, before taxes and cart-level discounts, for the customer to pay.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "subtotalAmountEstimated", - "description": "Whether the subtotal amount is estimated.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "totalAmount", - "description": "The total amount for the customer to pay.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "totalAmountEstimated", - "description": "Whether the total amount is estimated.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "totalDutyAmount", - "description": "The duty amount for the customer to pay at checkout.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "totalDutyAmountEstimated", - "description": "Whether the total duty amount is estimated.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "totalTaxAmount", - "description": "The tax amount for the customer to pay at checkout.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "totalTaxAmountEstimated", - "description": "Whether the total tax amount is estimated.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CartCreatePayload", - "description": "Return type for `cartCreate` mutation.", - "fields": [ - { - "name": "cart", - "description": "The new cart.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Cart", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CartCustomDiscountAllocation", - "description": "The discounts automatically applied to the cart line based on prerequisites that have been met.", - "fields": [ - { - "name": "discountedAmount", - "description": "The discounted amount that has been applied to the cart line.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "title", - "description": "The title of the allocated discount.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "CartDiscountAllocation", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CartDeliveryGroup", - "description": "Information about the options available for one or more line items to be delivered to a specific address.", - "fields": [ - { - "name": "cartLines", - "description": "A list of cart lines for the delivery group.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartLineConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "deliveryAddress", - "description": "The destination address for the delivery group.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MailingAddress", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "deliveryOptions", - "description": "The delivery options available for the delivery group.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartDeliveryOption", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "The ID for the delivery group.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "selectedDeliveryOption", - "description": "The selected delivery option for the delivery group.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "CartDeliveryOption", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CartDeliveryGroupConnection", - "description": "An auto-generated type for paginating through multiple CartDeliveryGroups.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartDeliveryGroupEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of the nodes contained in CartDeliveryGroupEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartDeliveryGroup", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CartDeliveryGroupEdge", - "description": "An auto-generated type which holds one CartDeliveryGroup and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "The item at the end of CartDeliveryGroupEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartDeliveryGroup", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CartDeliveryOption", - "description": "Information about a delivery option.", - "fields": [ - { - "name": "code", - "description": "The code of the delivery option.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "deliveryMethodType", - "description": "The method for the delivery option.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "DeliveryMethodType", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "description", - "description": "The description of the delivery option.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "estimatedCost", - "description": "The estimated cost for the delivery option.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "handle", - "description": "The unique identifier of the delivery option.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "title", - "description": "The title of the delivery option.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INTERFACE", - "name": "CartDiscountAllocation", - "description": "The discounts that have been applied to the cart line.", - "fields": [ - { - "name": "discountedAmount", - "description": "The discounted amount that has been applied to the cart line.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": [ - { - "kind": "OBJECT", - "name": "CartAutomaticDiscountAllocation", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "CartCodeDiscountAllocation", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "CartCustomDiscountAllocation", - "ofType": null - } - ] - }, - { - "kind": "OBJECT", - "name": "CartDiscountCode", - "description": "The discount codes applied to the cart.", - "fields": [ - { - "name": "applicable", - "description": "Whether the discount code is applicable to the cart's current contents.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "code", - "description": "The code for the discount.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CartDiscountCodesUpdatePayload", - "description": "Return type for `cartDiscountCodesUpdate` mutation.", - "fields": [ - { - "name": "cart", - "description": "The updated cart.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Cart", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "CartErrorCode", - "description": "Possible error codes that can be returned by `CartUserError`.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "INVALID", - "description": "The input value is invalid.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "INVALID_MERCHANDISE_LINE", - "description": "Merchandise line was not found in cart.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LESS_THAN", - "description": "The input value should be less than the maximum value allowed.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MISSING_DISCOUNT_CODE", - "description": "Missing discount code.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MISSING_NOTE", - "description": "Missing note.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CartEstimatedCost", - "description": "The estimated costs that the buyer will pay at checkout.\nThe estimated cost uses\n[`CartBuyerIdentity`](https://shopify.dev/api/storefront/reference/cart/cartbuyeridentity)\nto determine\n[international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing).\n", - "fields": [ - { - "name": "checkoutChargeAmount", - "description": "The estimated amount, before taxes and discounts, for the customer to pay at checkout. The checkout charge amount doesn't include any deferred payments that'll be paid at a later date. If the cart has no deferred payments, then the checkout charge amount is equivalent to`subtotal_amount`.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "subtotalAmount", - "description": "The estimated amount, before taxes and discounts, for the customer to pay.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "totalAmount", - "description": "The estimated total amount for the customer to pay.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "totalDutyAmount", - "description": "The estimated duty amount for the customer to pay at checkout.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "totalTaxAmount", - "description": "The estimated tax amount for the customer to pay at checkout.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "CartInput", - "description": "Specifies the input fields to create a cart.", - "fields": null, - "inputFields": [ - { - "name": "attributes", - "description": "An array of key-value pairs that contains additional information about the cart.", - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "AttributeInput", - "ofType": null - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "buyerIdentity", - "description": "The customer associated with the cart. Used to determine [international pricing]\n(https://shopify.dev/custom-storefronts/internationalization/international-pricing).\nBuyer identity should match the customer's shipping address.\n", - "type": { - "kind": "INPUT_OBJECT", - "name": "CartBuyerIdentityInput", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "discountCodes", - "description": "The case-insensitive discount codes that the customer added at checkout.\n", - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "lines", - "description": "A list of merchandise lines to add to the cart.", - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CartLineInput", - "ofType": null - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "note", - "description": "A note that is associated with the cart. For example, the note can be a personalized message to the buyer.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CartLine", - "description": "Represents information about the merchandise in the cart.", - "fields": [ - { - "name": "attribute", - "description": "An attribute associated with the cart line.", - "args": [ - { - "name": "key", - "description": "The key of the attribute.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Attribute", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "attributes", - "description": "The attributes associated with the cart line. Attributes are represented as key-value pairs.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Attribute", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "cost", - "description": "The cost of the merchandise that the buyer will pay for at checkout. The costs are subject to change and changes will be reflected at checkout.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartLineCost", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "discountAllocations", - "description": "The discounts that have been applied to the cart line.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INTERFACE", - "name": "CartDiscountAllocation", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "estimatedCost", - "description": "The estimated cost of the merchandise that the buyer will pay for at checkout. The estimated costs are subject to change and changes will be reflected at checkout.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartLineEstimatedCost", - "ofType": null - } - }, - "isDeprecated": true, - "deprecationReason": "Use `cost` instead." - }, - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "merchandise", - "description": "The merchandise that the buyer intends to purchase.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "UNION", - "name": "Merchandise", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "quantity", - "description": "The quantity of the merchandise that the customer intends to purchase.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "sellingPlanAllocation", - "description": "The selling plan associated with the cart line and the effect that each selling plan has on variants when they're purchased.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "SellingPlanAllocation", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CartLineConnection", - "description": "An auto-generated type for paginating through multiple CartLines.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartLineEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of the nodes contained in CartLineEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartLine", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CartLineCost", - "description": "The cost of the merchandise line that the buyer will pay at checkout.", - "fields": [ - { - "name": "amountPerQuantity", - "description": "The amount of the merchandise line.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "compareAtAmountPerQuantity", - "description": "The compare at amount of the merchandise line.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "subtotalAmount", - "description": "The cost of the merchandise line before line-level discounts.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "totalAmount", - "description": "The total cost of the merchandise line.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CartLineEdge", - "description": "An auto-generated type which holds one CartLine and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "The item at the end of CartLineEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartLine", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CartLineEstimatedCost", - "description": "The estimated cost of the merchandise line that the buyer will pay at checkout.", - "fields": [ - { - "name": "amount", - "description": "The amount of the merchandise line.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "compareAtAmount", - "description": "The compare at amount of the merchandise line.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "subtotalAmount", - "description": "The estimated cost of the merchandise line before discounts.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "totalAmount", - "description": "The estimated total cost of the merchandise line.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "CartLineInput", - "description": "Specifies the input fields to create a merchandise line on a cart.", - "fields": null, - "inputFields": [ - { - "name": "attributes", - "description": "An array of key-value pairs that contains additional information about the merchandise line.", - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "AttributeInput", - "ofType": null - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "merchandiseId", - "description": "The identifier of the merchandise that the buyer intends to purchase.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "quantity", - "description": "The quantity of the merchandise.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": "1", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "sellingPlanId", - "description": "The identifier of the selling plan that the merchandise is being purchased with.", - "type": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "CartLineUpdateInput", - "description": "Specifies the input fields to update a line item on a cart.", - "fields": null, - "inputFields": [ - { - "name": "attributes", - "description": "An array of key-value pairs that contains additional information about the merchandise line.", - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "AttributeInput", - "ofType": null - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "The identifier of the merchandise line.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "merchandiseId", - "description": "The identifier of the merchandise for the line item.", - "type": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "quantity", - "description": "The quantity of the line item.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "sellingPlanId", - "description": "The identifier of the selling plan that the merchandise is being purchased with.", - "type": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CartLinesAddPayload", - "description": "Return type for `cartLinesAdd` mutation.", - "fields": [ - { - "name": "cart", - "description": "The updated cart.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Cart", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CartLinesRemovePayload", - "description": "Return type for `cartLinesRemove` mutation.", - "fields": [ - { - "name": "cart", - "description": "The updated cart.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Cart", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CartLinesUpdatePayload", - "description": "Return type for `cartLinesUpdate` mutation.", - "fields": [ - { - "name": "cart", - "description": "The updated cart.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Cart", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CartNoteUpdatePayload", - "description": "Return type for `cartNoteUpdate` mutation.", - "fields": [ - { - "name": "cart", - "description": "The updated cart.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Cart", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "CartSelectedDeliveryOptionInput", - "description": "The input fields for updating the selected delivery options for a delivery group.\n", - "fields": null, - "inputFields": [ - { - "name": "deliveryGroupId", - "description": "The ID of the cart delivery group.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "deliveryOptionHandle", - "description": "The handle of the selected delivery option.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CartSelectedDeliveryOptionsUpdatePayload", - "description": "Return type for `cartSelectedDeliveryOptionsUpdate` mutation.", - "fields": [ - { - "name": "cart", - "description": "The updated cart.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Cart", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CartUserError", - "description": "Represents an error that happens during execution of a cart mutation.", - "fields": [ - { - "name": "code", - "description": "The error code.", - "args": [], - "type": { - "kind": "ENUM", - "name": "CartErrorCode", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "field", - "description": "The path to the input field that caused the error.", - "args": [], - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "message", - "description": "The error message.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "DisplayableError", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Checkout", - "description": "A container for all the information required to checkout items and pay.", - "fields": [ - { - "name": "appliedGiftCards", - "description": "The gift cards used on the checkout.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "AppliedGiftCard", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "availableShippingRates", - "description": "The available shipping rates for this Checkout.\nShould only be used when checkout `requiresShipping` is `true` and\nthe shipping address is valid.\n", - "args": [], - "type": { - "kind": "OBJECT", - "name": "AvailableShippingRates", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "buyerIdentity", - "description": "The identity of the customer associated with the checkout.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutBuyerIdentity", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "completedAt", - "description": "The date and time when the checkout was completed.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "createdAt", - "description": "The date and time when the checkout was created.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "currencyCode", - "description": "The currency code for the checkout.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "CurrencyCode", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customAttributes", - "description": "A list of extra information that is added to the checkout.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Attribute", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "discountApplications", - "description": "Discounts that have been applied on the checkout.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "DiscountApplicationConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "email", - "description": "The email attached to this checkout.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "lineItems", - "description": "A list of line item objects, each one containing information about an item in the checkout.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutLineItemConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "lineItemsSubtotalPrice", - "description": "The sum of all the prices of all the items in the checkout. Duties, taxes, shipping and discounts excluded.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "note", - "description": "The note associated with the checkout.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "order", - "description": "The resulting order from a paid checkout.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Order", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "orderStatusUrl", - "description": "The Order Status Page for this Checkout, null when checkout is not completed.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "paymentDue", - "description": "The amount left to be paid. This is equal to the cost of the line items, taxes, and shipping, minus discounts and gift cards.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "paymentDueV2", - "description": "The amount left to be paid. This is equal to the cost of the line items, duties, taxes, and shipping, minus discounts and gift cards.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": true, - "deprecationReason": "Use `paymentDue` instead." - }, - { - "name": "ready", - "description": "Whether or not the Checkout is ready and can be completed. Checkouts may\nhave asynchronous operations that can take time to finish. If you want\nto complete a checkout or ensure all the fields are populated and up to\ndate, polling is required until the value is true.\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "requiresShipping", - "description": "States whether or not the fulfillment requires shipping.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "shippingAddress", - "description": "The shipping address to where the line items will be shipped.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MailingAddress", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "shippingDiscountAllocations", - "description": "The discounts that have been allocated onto the shipping line by discount applications.\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "DiscountAllocation", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "shippingLine", - "description": "Once a shipping rate is selected by the customer it is transitioned to a `shipping_line` object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "ShippingRate", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "subtotalPrice", - "description": "The price at checkout before shipping and taxes.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "subtotalPriceV2", - "description": "The price at checkout before duties, shipping, and taxes.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": true, - "deprecationReason": "Use `subtotalPrice` instead." - }, - { - "name": "taxExempt", - "description": "Whether the checkout is tax exempt.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "taxesIncluded", - "description": "Whether taxes are included in the line item and shipping line prices.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "totalDuties", - "description": "The sum of all the duties applied to the line items in the checkout.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "totalPrice", - "description": "The sum of all the prices of all the items in the checkout, including taxes and duties.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "totalPriceV2", - "description": "The sum of all the prices of all the items in the checkout, including taxes and duties.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": true, - "deprecationReason": "Use `totalPrice` instead." - }, - { - "name": "totalTax", - "description": "The sum of all the taxes applied to the line items and shipping lines in the checkout.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "totalTaxV2", - "description": "The sum of all the taxes applied to the line items and shipping lines in the checkout.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": true, - "deprecationReason": "Use `totalTax` instead." - }, - { - "name": "updatedAt", - "description": "The date and time when the checkout was last updated.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "webUrl", - "description": "The url pointing to the checkout accessible from the web.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "CheckoutAttributesUpdateV2Input", - "description": "Specifies the fields required to update a checkout's attributes.", - "fields": null, - "inputFields": [ - { - "name": "allowPartialAddresses", - "description": "Allows setting partial addresses on a Checkout, skipping the full validation of attributes.\nThe required attributes are city, province, and country.\nFull validation of the addresses is still done at completion time. Defaults to `false` with \neach operation.\n", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customAttributes", - "description": "A list of extra information that is added to the checkout.", - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "AttributeInput", - "ofType": null - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "note", - "description": "The text of an optional note that a shop owner can attach to the checkout.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutAttributesUpdateV2Payload", - "description": "Return type for `checkoutAttributesUpdateV2` mutation.", - "fields": [ - { - "name": "checkout", - "description": "The updated checkout object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutBuyerIdentity", - "description": "The identity of the customer associated with the checkout.", - "fields": [ - { - "name": "countryCode", - "description": "The country code for the checkout. For example, `CA`.", - "args": [], - "type": { - "kind": "ENUM", - "name": "CountryCode", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "CheckoutBuyerIdentityInput", - "description": "Specifies the identity of the customer associated with the checkout.", - "fields": null, - "inputFields": [ - { - "name": "countryCode", - "description": "The country code of one of the shop's\n[enabled countries](https://help.shopify.com/en/manual/payments/shopify-payments/multi-currency/setup).\nFor example, `CA`. Including this field creates a checkout in the specified country's currency.\n", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "CountryCode", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutCompleteFreePayload", - "description": "Return type for `checkoutCompleteFree` mutation.", - "fields": [ - { - "name": "checkout", - "description": "The updated checkout object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutCompleteWithCreditCardV2Payload", - "description": "Return type for `checkoutCompleteWithCreditCardV2` mutation.", - "fields": [ - { - "name": "checkout", - "description": "The checkout on which the payment was applied.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "payment", - "description": "A representation of the attempted payment.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Payment", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutCompleteWithTokenizedPaymentV3Payload", - "description": "Return type for `checkoutCompleteWithTokenizedPaymentV3` mutation.", - "fields": [ - { - "name": "checkout", - "description": "The checkout on which the payment was applied.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "payment", - "description": "A representation of the attempted payment.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Payment", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "CheckoutCreateInput", - "description": "Specifies the fields required to create a checkout.", - "fields": null, - "inputFields": [ - { - "name": "allowPartialAddresses", - "description": "Allows setting partial addresses on a Checkout, skipping the full validation of attributes.\nThe required attributes are city, province, and country.\nFull validation of addresses is still done at completion time. Defaults to `null`.\n", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "buyerIdentity", - "description": "The identity of the customer associated with the checkout.", - "type": { - "kind": "INPUT_OBJECT", - "name": "CheckoutBuyerIdentityInput", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customAttributes", - "description": "A list of extra information that is added to the checkout.", - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "AttributeInput", - "ofType": null - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "email", - "description": "The email with which the customer wants to checkout.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "lineItems", - "description": "A list of line item objects, each one containing information about an item in the checkout.", - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CheckoutLineItemInput", - "ofType": null - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "note", - "description": "The text of an optional note that a shop owner can attach to the checkout.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "shippingAddress", - "description": "The shipping address to where the line items will be shipped.", - "type": { - "kind": "INPUT_OBJECT", - "name": "MailingAddressInput", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutCreatePayload", - "description": "Return type for `checkoutCreate` mutation.", - "fields": [ - { - "name": "checkout", - "description": "The new checkout object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "queueToken", - "description": "The checkout queue token. Available only to selected stores.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutCustomerAssociateV2Payload", - "description": "Return type for `checkoutCustomerAssociateV2` mutation.", - "fields": [ - { - "name": "checkout", - "description": "The updated checkout object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customer", - "description": "The associated customer object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Customer", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutCustomerDisassociateV2Payload", - "description": "Return type for `checkoutCustomerDisassociateV2` mutation.", - "fields": [ - { - "name": "checkout", - "description": "The updated checkout object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutDiscountCodeApplyV2Payload", - "description": "Return type for `checkoutDiscountCodeApplyV2` mutation.", - "fields": [ - { - "name": "checkout", - "description": "The updated checkout object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutDiscountCodeRemovePayload", - "description": "Return type for `checkoutDiscountCodeRemove` mutation.", - "fields": [ - { - "name": "checkout", - "description": "The updated checkout object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutEmailUpdateV2Payload", - "description": "Return type for `checkoutEmailUpdateV2` mutation.", - "fields": [ - { - "name": "checkout", - "description": "The checkout object with the updated email.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "CheckoutErrorCode", - "description": "Possible error codes that can be returned by `CheckoutUserError`.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "ALREADY_COMPLETED", - "description": "Checkout is already completed.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BAD_DOMAIN", - "description": "Input email contains an invalid domain name.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BLANK", - "description": "The input value is blank.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CART_DOES_NOT_MEET_DISCOUNT_REQUIREMENTS_NOTICE", - "description": "Cart does not meet discount requirements notice.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CUSTOMER_ALREADY_USED_ONCE_PER_CUSTOMER_DISCOUNT_NOTICE", - "description": "Customer already used once per customer discount notice.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DISCOUNT_ALREADY_APPLIED", - "description": "Discount already applied.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DISCOUNT_CODE_APPLICATION_FAILED", - "description": "Discount code isn't working right now. Please contact us for help.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DISCOUNT_DISABLED", - "description": "Discount disabled.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DISCOUNT_EXPIRED", - "description": "Discount expired.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DISCOUNT_LIMIT_REACHED", - "description": "Discount limit reached.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DISCOUNT_NOT_FOUND", - "description": "Discount not found.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "EMPTY", - "description": "Checkout is already completed.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "EXPIRED_QUEUE_TOKEN", - "description": "Queue token has expired.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GIFT_CARD_ALREADY_APPLIED", - "description": "Gift card has already been applied.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GIFT_CARD_CODE_INVALID", - "description": "Gift card code is invalid.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GIFT_CARD_CURRENCY_MISMATCH", - "description": "Gift card currency does not match checkout currency.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GIFT_CARD_DEPLETED", - "description": "Gift card has no funds left.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GIFT_CARD_DISABLED", - "description": "Gift card is disabled.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GIFT_CARD_EXPIRED", - "description": "Gift card is expired.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GIFT_CARD_NOT_FOUND", - "description": "Gift card was not found.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GIFT_CARD_UNUSABLE", - "description": "Gift card cannot be applied to a checkout that contains a gift card.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GREATER_THAN_OR_EQUAL_TO", - "description": "The input value should be greater than or equal to the minimum value allowed.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "HIGHER_VALUE_DISCOUNT_APPLIED", - "description": "Higher value discount applied.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "INVALID", - "description": "The input value is invalid.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "INVALID_COUNTRY_AND_CURRENCY", - "description": "Cannot specify country and presentment currency code.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "INVALID_FOR_COUNTRY", - "description": "Input Zip is invalid for country provided.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "INVALID_FOR_COUNTRY_AND_PROVINCE", - "description": "Input Zip is invalid for country and province provided.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "INVALID_PROVINCE_IN_COUNTRY", - "description": "Invalid province in country.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "INVALID_QUEUE_TOKEN", - "description": "Queue token is invalid.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "INVALID_REGION_IN_COUNTRY", - "description": "Invalid region in country.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "INVALID_STATE_IN_COUNTRY", - "description": "Invalid state in country.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LESS_THAN", - "description": "The input value should be less than the maximum value allowed.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LESS_THAN_OR_EQUAL_TO", - "description": "The input value should be less than or equal to the maximum value allowed.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LINE_ITEM_NOT_FOUND", - "description": "Line item was not found in checkout.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LOCKED", - "description": "Checkout is locked.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MAXIMUM_DISCOUNT_CODE_LIMIT_REACHED", - "description": "Maximum number of discount codes limit reached.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MISSING_PAYMENT_INPUT", - "description": "Missing payment input.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NOT_ENOUGH_IN_STOCK", - "description": "Not enough in stock.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NOT_SUPPORTED", - "description": "Input value is not supported.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PRESENT", - "description": "The input value needs to be blank.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SHIPPING_RATE_EXPIRED", - "description": "Shipping rate expired.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "THROTTLED_DURING_CHECKOUT", - "description": "Throttled during checkout.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TOO_LONG", - "description": "The input value is too long.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TOTAL_PRICE_MISMATCH", - "description": "The amount of the payment does not match the value to be paid.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "UNABLE_TO_APPLY", - "description": "Unable to apply discount.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutGiftCardRemoveV2Payload", - "description": "Return type for `checkoutGiftCardRemoveV2` mutation.", - "fields": [ - { - "name": "checkout", - "description": "The updated checkout object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutGiftCardsAppendPayload", - "description": "Return type for `checkoutGiftCardsAppend` mutation.", - "fields": [ - { - "name": "checkout", - "description": "The updated checkout object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutLineItem", - "description": "A single line item in the checkout, grouped by variant and attributes.", - "fields": [ - { - "name": "customAttributes", - "description": "Extra information in the form of an array of Key-Value pairs about the line item.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Attribute", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "discountAllocations", - "description": "The discounts that have been allocated onto the checkout line item by discount applications.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "DiscountAllocation", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "quantity", - "description": "The quantity of the line item.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "title", - "description": "Title of the line item. Defaults to the product's title.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "unitPrice", - "description": "Unit price of the line item.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "variant", - "description": "Product variant of the line item.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "ProductVariant", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutLineItemConnection", - "description": "An auto-generated type for paginating through multiple CheckoutLineItems.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutLineItemEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of the nodes contained in CheckoutLineItemEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutLineItem", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutLineItemEdge", - "description": "An auto-generated type which holds one CheckoutLineItem and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "The item at the end of CheckoutLineItemEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutLineItem", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "CheckoutLineItemInput", - "description": "Specifies the input fields to create a line item on a checkout.", - "fields": null, - "inputFields": [ - { - "name": "customAttributes", - "description": "Extra information in the form of an array of Key-Value pairs about the line item.", - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "AttributeInput", - "ofType": null - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "quantity", - "description": "The quantity of the line item.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "variantId", - "description": "The identifier of the product variant for the line item.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "CheckoutLineItemUpdateInput", - "description": "Specifies the input fields to update a line item on the checkout.", - "fields": null, - "inputFields": [ - { - "name": "customAttributes", - "description": "Extra information in the form of an array of Key-Value pairs about the line item.", - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "AttributeInput", - "ofType": null - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "The identifier of the line item.", - "type": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "quantity", - "description": "The quantity of the line item.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "variantId", - "description": "The variant identifier of the line item.", - "type": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutLineItemsAddPayload", - "description": "Return type for `checkoutLineItemsAdd` mutation.", - "fields": [ - { - "name": "checkout", - "description": "The updated checkout object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutLineItemsRemovePayload", - "description": "Return type for `checkoutLineItemsRemove` mutation.", - "fields": [ - { - "name": "checkout", - "description": "The updated checkout object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutLineItemsReplacePayload", - "description": "Return type for `checkoutLineItemsReplace` mutation.", - "fields": [ - { - "name": "checkout", - "description": "The updated checkout object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutLineItemsUpdatePayload", - "description": "Return type for `checkoutLineItemsUpdate` mutation.", - "fields": [ - { - "name": "checkout", - "description": "The updated checkout object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutShippingAddressUpdateV2Payload", - "description": "Return type for `checkoutShippingAddressUpdateV2` mutation.", - "fields": [ - { - "name": "checkout", - "description": "The updated checkout object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutShippingLineUpdatePayload", - "description": "Return type for `checkoutShippingLineUpdate` mutation.", - "fields": [ - { - "name": "checkout", - "description": "The updated checkout object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutUserError", - "description": "Represents an error that happens during execution of a checkout mutation.", - "fields": [ - { - "name": "code", - "description": "The error code.", - "args": [], - "type": { - "kind": "ENUM", - "name": "CheckoutErrorCode", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "field", - "description": "The path to the input field that caused the error.", - "args": [], - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "message", - "description": "The error message.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "DisplayableError", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Collection", - "description": "A collection represents a grouping of products that a shop owner can create to organize them or make their shops easier to browse.", - "fields": [ - { - "name": "description", - "description": "Stripped description of the collection, single line with HTML tags removed.", - "args": [ - { - "name": "truncateAt", - "description": "Truncates string after the given length.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "descriptionHtml", - "description": "The description of the collection, complete with HTML formatting.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "HTML", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "handle", - "description": "A human-friendly unique string for the collection automatically generated from its title.\nLimit of 255 characters.\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "image", - "description": "Image associated with the collection.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Image", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "metafield", - "description": "Returns a metafield found by namespace and key.", - "args": [ - { - "name": "key", - "description": "The identifier for the metafield.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "namespace", - "description": "A container for a set of metafields.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "metafields", - "description": "The metafields associated with the resource matching the supplied list of namespaces and keys.\n", - "args": [ - { - "name": "identifiers", - "description": "The list of metafields to retrieve by namespace and key.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "HasMetafieldsIdentifier", - "ofType": null - } - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "onlineStoreUrl", - "description": "The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "products", - "description": "List of products in the collection.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "filters", - "description": "Returns a subset of products matching all product filters.", - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "ProductFilter", - "ofType": null - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "sortKey", - "description": "Sort the underlying list by the given key.", - "type": { - "kind": "ENUM", - "name": "ProductCollectionSortKeys", - "ofType": null - }, - "defaultValue": "COLLECTION_DEFAULT", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "ProductConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "seo", - "description": "The collection's SEO information.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SEO", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "title", - "description": "The collection’s name. Limit of 255 characters.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "updatedAt", - "description": "The date and time when the collection was last modified.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "HasMetafields", - "ofType": null - }, - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - }, - { - "kind": "INTERFACE", - "name": "OnlineStorePublishable", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CollectionConnection", - "description": "An auto-generated type for paginating through multiple Collections.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CollectionEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of the nodes contained in CollectionEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Collection", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CollectionEdge", - "description": "An auto-generated type which holds one Collection and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "The item at the end of CollectionEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Collection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "CollectionSortKeys", - "description": "The set of valid sort keys for the Collection query.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "ID", - "description": "Sort by the `id` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RELEVANCE", - "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TITLE", - "description": "Sort by the `title` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "UPDATED_AT", - "description": "Sort by the `updated_at` value.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "SCALAR", - "name": "Color", - "description": "A string containing a hexadecimal representation of a color.\n\nFor example, \"#6A8D48\".\n", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Comment", - "description": "A comment on an article.", - "fields": [ - { - "name": "author", - "description": "The comment’s author.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CommentAuthor", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "content", - "description": "Stripped content of the comment, single line with HTML tags removed.", - "args": [ - { - "name": "truncateAt", - "description": "Truncates string after the given length.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "contentHtml", - "description": "The content of the comment, complete with HTML formatting.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "HTML", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CommentAuthor", - "description": "The author of a comment.", - "fields": [ - { - "name": "email", - "description": "The author's email.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "name", - "description": "The author’s name.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CommentConnection", - "description": "An auto-generated type for paginating through multiple Comments.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CommentEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of the nodes contained in CommentEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Comment", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CommentEdge", - "description": "An auto-generated type which holds one Comment and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "The item at the end of CommentEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Comment", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Country", - "description": "A country.", - "fields": [ - { - "name": "availableLanguages", - "description": "The languages available for the country.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Language", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "currency", - "description": "The currency of the country.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Currency", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "isoCode", - "description": "The ISO code of the country.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "CountryCode", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "name", - "description": "The name of the country.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "unitSystem", - "description": "The unit system used in the country.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "UnitSystem", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "CountryCode", - "description": "The code designating a country/region, which generally follows ISO 3166-1 alpha-2 guidelines.\nIf a territory doesn't have a country code value in the `CountryCode` enum, then it might be considered a subdivision\nof another country. For example, the territories associated with Spain are represented by the country code `ES`,\nand the territories associated with the United States of America are represented by the country code `US`.\n", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "AC", - "description": "Ascension Island.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AD", - "description": "Andorra.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AE", - "description": "United Arab Emirates.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AF", - "description": "Afghanistan.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AG", - "description": "Antigua & Barbuda.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AI", - "description": "Anguilla.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AL", - "description": "Albania.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AM", - "description": "Armenia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AN", - "description": "Netherlands Antilles.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AO", - "description": "Angola.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AR", - "description": "Argentina.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AT", - "description": "Austria.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AU", - "description": "Australia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AW", - "description": "Aruba.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AX", - "description": "Åland Islands.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AZ", - "description": "Azerbaijan.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BA", - "description": "Bosnia & Herzegovina.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BB", - "description": "Barbados.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BD", - "description": "Bangladesh.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BE", - "description": "Belgium.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BF", - "description": "Burkina Faso.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BG", - "description": "Bulgaria.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BH", - "description": "Bahrain.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BI", - "description": "Burundi.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BJ", - "description": "Benin.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BL", - "description": "St. Barthélemy.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BM", - "description": "Bermuda.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BN", - "description": "Brunei.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BO", - "description": "Bolivia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BQ", - "description": "Caribbean Netherlands.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BR", - "description": "Brazil.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BS", - "description": "Bahamas.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BT", - "description": "Bhutan.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BV", - "description": "Bouvet Island.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BW", - "description": "Botswana.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BY", - "description": "Belarus.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BZ", - "description": "Belize.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CA", - "description": "Canada.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CC", - "description": "Cocos (Keeling) Islands.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CD", - "description": "Congo - Kinshasa.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CF", - "description": "Central African Republic.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CG", - "description": "Congo - Brazzaville.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CH", - "description": "Switzerland.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CI", - "description": "Côte d’Ivoire.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CK", - "description": "Cook Islands.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CL", - "description": "Chile.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CM", - "description": "Cameroon.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CN", - "description": "China.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CO", - "description": "Colombia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CR", - "description": "Costa Rica.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CU", - "description": "Cuba.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CV", - "description": "Cape Verde.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CW", - "description": "Curaçao.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CX", - "description": "Christmas Island.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CY", - "description": "Cyprus.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CZ", - "description": "Czechia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DE", - "description": "Germany.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DJ", - "description": "Djibouti.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DK", - "description": "Denmark.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DM", - "description": "Dominica.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DO", - "description": "Dominican Republic.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DZ", - "description": "Algeria.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "EC", - "description": "Ecuador.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "EE", - "description": "Estonia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "EG", - "description": "Egypt.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "EH", - "description": "Western Sahara.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ER", - "description": "Eritrea.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ES", - "description": "Spain.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ET", - "description": "Ethiopia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "FI", - "description": "Finland.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "FJ", - "description": "Fiji.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "FK", - "description": "Falkland Islands.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "FO", - "description": "Faroe Islands.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "FR", - "description": "France.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GA", - "description": "Gabon.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GB", - "description": "United Kingdom.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GD", - "description": "Grenada.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GE", - "description": "Georgia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GF", - "description": "French Guiana.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GG", - "description": "Guernsey.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GH", - "description": "Ghana.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GI", - "description": "Gibraltar.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GL", - "description": "Greenland.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GM", - "description": "Gambia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GN", - "description": "Guinea.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GP", - "description": "Guadeloupe.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GQ", - "description": "Equatorial Guinea.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GR", - "description": "Greece.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GS", - "description": "South Georgia & South Sandwich Islands.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GT", - "description": "Guatemala.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GW", - "description": "Guinea-Bissau.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GY", - "description": "Guyana.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "HK", - "description": "Hong Kong SAR.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "HM", - "description": "Heard & McDonald Islands.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "HN", - "description": "Honduras.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "HR", - "description": "Croatia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "HT", - "description": "Haiti.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "HU", - "description": "Hungary.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ID", - "description": "Indonesia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "IE", - "description": "Ireland.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "IL", - "description": "Israel.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "IM", - "description": "Isle of Man.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "IN", - "description": "India.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "IO", - "description": "British Indian Ocean Territory.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "IQ", - "description": "Iraq.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "IR", - "description": "Iran.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "IS", - "description": "Iceland.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "IT", - "description": "Italy.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "JE", - "description": "Jersey.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "JM", - "description": "Jamaica.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "JO", - "description": "Jordan.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "JP", - "description": "Japan.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KE", - "description": "Kenya.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KG", - "description": "Kyrgyzstan.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KH", - "description": "Cambodia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KI", - "description": "Kiribati.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KM", - "description": "Comoros.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KN", - "description": "St. Kitts & Nevis.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KP", - "description": "North Korea.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KR", - "description": "South Korea.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KW", - "description": "Kuwait.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KY", - "description": "Cayman Islands.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KZ", - "description": "Kazakhstan.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LA", - "description": "Laos.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LB", - "description": "Lebanon.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LC", - "description": "St. Lucia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LI", - "description": "Liechtenstein.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LK", - "description": "Sri Lanka.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LR", - "description": "Liberia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LS", - "description": "Lesotho.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LT", - "description": "Lithuania.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LU", - "description": "Luxembourg.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LV", - "description": "Latvia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LY", - "description": "Libya.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MA", - "description": "Morocco.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MC", - "description": "Monaco.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MD", - "description": "Moldova.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ME", - "description": "Montenegro.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MF", - "description": "St. Martin.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MG", - "description": "Madagascar.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MK", - "description": "North Macedonia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ML", - "description": "Mali.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MM", - "description": "Myanmar (Burma).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MN", - "description": "Mongolia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MO", - "description": "Macao SAR.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MQ", - "description": "Martinique.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MR", - "description": "Mauritania.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MS", - "description": "Montserrat.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MT", - "description": "Malta.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MU", - "description": "Mauritius.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MV", - "description": "Maldives.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MW", - "description": "Malawi.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MX", - "description": "Mexico.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MY", - "description": "Malaysia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MZ", - "description": "Mozambique.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NA", - "description": "Namibia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NC", - "description": "New Caledonia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NE", - "description": "Niger.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NF", - "description": "Norfolk Island.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NG", - "description": "Nigeria.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NI", - "description": "Nicaragua.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NL", - "description": "Netherlands.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NO", - "description": "Norway.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NP", - "description": "Nepal.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NR", - "description": "Nauru.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NU", - "description": "Niue.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NZ", - "description": "New Zealand.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "OM", - "description": "Oman.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PA", - "description": "Panama.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PE", - "description": "Peru.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PF", - "description": "French Polynesia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PG", - "description": "Papua New Guinea.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PH", - "description": "Philippines.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PK", - "description": "Pakistan.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PL", - "description": "Poland.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PM", - "description": "St. Pierre & Miquelon.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PN", - "description": "Pitcairn Islands.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PS", - "description": "Palestinian Territories.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PT", - "description": "Portugal.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PY", - "description": "Paraguay.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "QA", - "description": "Qatar.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RE", - "description": "Réunion.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RO", - "description": "Romania.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RS", - "description": "Serbia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RU", - "description": "Russia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RW", - "description": "Rwanda.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SA", - "description": "Saudi Arabia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SB", - "description": "Solomon Islands.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SC", - "description": "Seychelles.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SD", - "description": "Sudan.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SE", - "description": "Sweden.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SG", - "description": "Singapore.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SH", - "description": "St. Helena.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SI", - "description": "Slovenia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SJ", - "description": "Svalbard & Jan Mayen.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SK", - "description": "Slovakia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SL", - "description": "Sierra Leone.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SM", - "description": "San Marino.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SN", - "description": "Senegal.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SO", - "description": "Somalia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SR", - "description": "Suriname.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SS", - "description": "South Sudan.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ST", - "description": "São Tomé & Príncipe.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SV", - "description": "El Salvador.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SX", - "description": "Sint Maarten.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SY", - "description": "Syria.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SZ", - "description": "Eswatini.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TA", - "description": "Tristan da Cunha.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TC", - "description": "Turks & Caicos Islands.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TD", - "description": "Chad.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TF", - "description": "French Southern Territories.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TG", - "description": "Togo.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TH", - "description": "Thailand.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TJ", - "description": "Tajikistan.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TK", - "description": "Tokelau.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TL", - "description": "Timor-Leste.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TM", - "description": "Turkmenistan.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TN", - "description": "Tunisia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TO", - "description": "Tonga.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TR", - "description": "Turkey.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TT", - "description": "Trinidad & Tobago.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TV", - "description": "Tuvalu.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TW", - "description": "Taiwan.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TZ", - "description": "Tanzania.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "UA", - "description": "Ukraine.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "UG", - "description": "Uganda.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "UM", - "description": "U.S. Outlying Islands.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "US", - "description": "United States.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "UY", - "description": "Uruguay.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "UZ", - "description": "Uzbekistan.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "VA", - "description": "Vatican City.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "VC", - "description": "St. Vincent & Grenadines.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "VE", - "description": "Venezuela.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "VG", - "description": "British Virgin Islands.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "VN", - "description": "Vietnam.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "VU", - "description": "Vanuatu.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "WF", - "description": "Wallis & Futuna.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "WS", - "description": "Samoa.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "XK", - "description": "Kosovo.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "YE", - "description": "Yemen.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "YT", - "description": "Mayotte.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ZA", - "description": "South Africa.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ZM", - "description": "Zambia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ZW", - "description": "Zimbabwe.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ZZ", - "description": "Unknown Region.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CreditCard", - "description": "Credit card information used for a payment.", - "fields": [ - { - "name": "brand", - "description": "The brand of the credit card.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "expiryMonth", - "description": "The expiry month of the credit card.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "expiryYear", - "description": "The expiry year of the credit card.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "firstDigits", - "description": "The credit card's BIN number.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "firstName", - "description": "The first name of the card holder.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "lastDigits", - "description": "The last 4 digits of the credit card.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "lastName", - "description": "The last name of the card holder.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "maskedNumber", - "description": "The masked credit card number with only the last 4 digits displayed.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "CreditCardPaymentInputV2", - "description": "Specifies the fields required to complete a checkout with\na Shopify vaulted credit card payment.\n", - "fields": null, - "inputFields": [ - { - "name": "billingAddress", - "description": "The billing address for the payment.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "MailingAddressInput", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "idempotencyKey", - "description": "A unique client generated key used to avoid duplicate charges. When a duplicate payment is found, the original is returned instead of creating a new one. For more information, refer to [Idempotent requests](https://shopify.dev/api/usage/idempotent-requests).", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "paymentAmount", - "description": "The amount and currency of the payment.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "MoneyInput", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "test", - "description": "Executes the payment in test mode if possible. Defaults to `false`.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "vaultId", - "description": "The ID returned by Shopify's Card Vault.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "CropRegion", - "description": "The part of the image that should remain after cropping.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "BOTTOM", - "description": "Keep the bottom of the image.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CENTER", - "description": "Keep the center of the image.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LEFT", - "description": "Keep the left of the image.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RIGHT", - "description": "Keep the right of the image.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TOP", - "description": "Keep the top of the image.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Currency", - "description": "A currency.", - "fields": [ - { - "name": "isoCode", - "description": "The ISO code of the currency.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "CurrencyCode", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "name", - "description": "The name of the currency.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "symbol", - "description": "The symbol of the currency.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "CurrencyCode", - "description": "The three-letter currency codes that represent the world currencies used in stores. These include standard ISO 4217 codes, legacy codes,\nand non-standard codes.\n", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "AED", - "description": "United Arab Emirates Dirham (AED).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AFN", - "description": "Afghan Afghani (AFN).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ALL", - "description": "Albanian Lek (ALL).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AMD", - "description": "Armenian Dram (AMD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ANG", - "description": "Netherlands Antillean Guilder.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AOA", - "description": "Angolan Kwanza (AOA).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ARS", - "description": "Argentine Pesos (ARS).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AUD", - "description": "Australian Dollars (AUD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AWG", - "description": "Aruban Florin (AWG).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AZN", - "description": "Azerbaijani Manat (AZN).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BAM", - "description": "Bosnia and Herzegovina Convertible Mark (BAM).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BBD", - "description": "Barbadian Dollar (BBD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BDT", - "description": "Bangladesh Taka (BDT).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BGN", - "description": "Bulgarian Lev (BGN).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BHD", - "description": "Bahraini Dinar (BHD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BIF", - "description": "Burundian Franc (BIF).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BMD", - "description": "Bermudian Dollar (BMD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BND", - "description": "Brunei Dollar (BND).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BOB", - "description": "Bolivian Boliviano (BOB).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BRL", - "description": "Brazilian Real (BRL).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BSD", - "description": "Bahamian Dollar (BSD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BTN", - "description": "Bhutanese Ngultrum (BTN).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BWP", - "description": "Botswana Pula (BWP).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BYN", - "description": "Belarusian Ruble (BYN).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BYR", - "description": "Belarusian Ruble (BYR).", - "isDeprecated": true, - "deprecationReason": "`BYR` is deprecated. Use `BYN` available from version `2021-01` onwards instead." - }, - { - "name": "BZD", - "description": "Belize Dollar (BZD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CAD", - "description": "Canadian Dollars (CAD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CDF", - "description": "Congolese franc (CDF).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CHF", - "description": "Swiss Francs (CHF).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CLP", - "description": "Chilean Peso (CLP).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CNY", - "description": "Chinese Yuan Renminbi (CNY).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "COP", - "description": "Colombian Peso (COP).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CRC", - "description": "Costa Rican Colones (CRC).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CVE", - "description": "Cape Verdean escudo (CVE).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CZK", - "description": "Czech Koruny (CZK).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DJF", - "description": "Djiboutian Franc (DJF).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DKK", - "description": "Danish Kroner (DKK).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DOP", - "description": "Dominican Peso (DOP).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DZD", - "description": "Algerian Dinar (DZD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "EGP", - "description": "Egyptian Pound (EGP).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ERN", - "description": "Eritrean Nakfa (ERN).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ETB", - "description": "Ethiopian Birr (ETB).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "EUR", - "description": "Euro (EUR).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "FJD", - "description": "Fijian Dollars (FJD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "FKP", - "description": "Falkland Islands Pounds (FKP).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GBP", - "description": "United Kingdom Pounds (GBP).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GEL", - "description": "Georgian Lari (GEL).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GHS", - "description": "Ghanaian Cedi (GHS).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GIP", - "description": "Gibraltar Pounds (GIP).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GMD", - "description": "Gambian Dalasi (GMD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GNF", - "description": "Guinean Franc (GNF).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GTQ", - "description": "Guatemalan Quetzal (GTQ).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GYD", - "description": "Guyanese Dollar (GYD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "HKD", - "description": "Hong Kong Dollars (HKD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "HNL", - "description": "Honduran Lempira (HNL).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "HRK", - "description": "Croatian Kuna (HRK).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "HTG", - "description": "Haitian Gourde (HTG).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "HUF", - "description": "Hungarian Forint (HUF).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "IDR", - "description": "Indonesian Rupiah (IDR).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ILS", - "description": "Israeli New Shekel (NIS).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "INR", - "description": "Indian Rupees (INR).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "IQD", - "description": "Iraqi Dinar (IQD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "IRR", - "description": "Iranian Rial (IRR).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ISK", - "description": "Icelandic Kronur (ISK).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "JEP", - "description": "Jersey Pound.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "JMD", - "description": "Jamaican Dollars (JMD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "JOD", - "description": "Jordanian Dinar (JOD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "JPY", - "description": "Japanese Yen (JPY).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KES", - "description": "Kenyan Shilling (KES).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KGS", - "description": "Kyrgyzstani Som (KGS).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KHR", - "description": "Cambodian Riel.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KID", - "description": "Kiribati Dollar (KID).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KMF", - "description": "Comorian Franc (KMF).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KRW", - "description": "South Korean Won (KRW).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KWD", - "description": "Kuwaiti Dinar (KWD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KYD", - "description": "Cayman Dollars (KYD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KZT", - "description": "Kazakhstani Tenge (KZT).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LAK", - "description": "Laotian Kip (LAK).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LBP", - "description": "Lebanese Pounds (LBP).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LKR", - "description": "Sri Lankan Rupees (LKR).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LRD", - "description": "Liberian Dollar (LRD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LSL", - "description": "Lesotho Loti (LSL).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LTL", - "description": "Lithuanian Litai (LTL).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LVL", - "description": "Latvian Lati (LVL).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LYD", - "description": "Libyan Dinar (LYD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MAD", - "description": "Moroccan Dirham.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MDL", - "description": "Moldovan Leu (MDL).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MGA", - "description": "Malagasy Ariary (MGA).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MKD", - "description": "Macedonia Denar (MKD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MMK", - "description": "Burmese Kyat (MMK).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MNT", - "description": "Mongolian Tugrik.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MOP", - "description": "Macanese Pataca (MOP).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MRU", - "description": "Mauritanian Ouguiya (MRU).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MUR", - "description": "Mauritian Rupee (MUR).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MVR", - "description": "Maldivian Rufiyaa (MVR).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MWK", - "description": "Malawian Kwacha (MWK).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MXN", - "description": "Mexican Pesos (MXN).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MYR", - "description": "Malaysian Ringgits (MYR).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MZN", - "description": "Mozambican Metical.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NAD", - "description": "Namibian Dollar.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NGN", - "description": "Nigerian Naira (NGN).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NIO", - "description": "Nicaraguan Córdoba (NIO).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NOK", - "description": "Norwegian Kroner (NOK).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NPR", - "description": "Nepalese Rupee (NPR).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NZD", - "description": "New Zealand Dollars (NZD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "OMR", - "description": "Omani Rial (OMR).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PAB", - "description": "Panamian Balboa (PAB).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PEN", - "description": "Peruvian Nuevo Sol (PEN).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PGK", - "description": "Papua New Guinean Kina (PGK).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PHP", - "description": "Philippine Peso (PHP).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PKR", - "description": "Pakistani Rupee (PKR).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PLN", - "description": "Polish Zlotych (PLN).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PYG", - "description": "Paraguayan Guarani (PYG).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "QAR", - "description": "Qatari Rial (QAR).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RON", - "description": "Romanian Lei (RON).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RSD", - "description": "Serbian dinar (RSD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RUB", - "description": "Russian Rubles (RUB).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RWF", - "description": "Rwandan Franc (RWF).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SAR", - "description": "Saudi Riyal (SAR).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SBD", - "description": "Solomon Islands Dollar (SBD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SCR", - "description": "Seychellois Rupee (SCR).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SDG", - "description": "Sudanese Pound (SDG).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SEK", - "description": "Swedish Kronor (SEK).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SGD", - "description": "Singapore Dollars (SGD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SHP", - "description": "Saint Helena Pounds (SHP).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SLL", - "description": "Sierra Leonean Leone (SLL).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SOS", - "description": "Somali Shilling (SOS).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SRD", - "description": "Surinamese Dollar (SRD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SSP", - "description": "South Sudanese Pound (SSP).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "STD", - "description": "Sao Tome And Principe Dobra (STD).", - "isDeprecated": true, - "deprecationReason": "`STD` is deprecated. Use `STN` available from version `2022-07` onwards instead." - }, - { - "name": "STN", - "description": "Sao Tome And Principe Dobra (STN).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SYP", - "description": "Syrian Pound (SYP).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SZL", - "description": "Swazi Lilangeni (SZL).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "THB", - "description": "Thai baht (THB).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TJS", - "description": "Tajikistani Somoni (TJS).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TMT", - "description": "Turkmenistani Manat (TMT).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TND", - "description": "Tunisian Dinar (TND).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TOP", - "description": "Tongan Pa'anga (TOP).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TRY", - "description": "Turkish Lira (TRY).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TTD", - "description": "Trinidad and Tobago Dollars (TTD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TWD", - "description": "Taiwan Dollars (TWD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TZS", - "description": "Tanzanian Shilling (TZS).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "UAH", - "description": "Ukrainian Hryvnia (UAH).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "UGX", - "description": "Ugandan Shilling (UGX).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "USD", - "description": "United States Dollars (USD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "UYU", - "description": "Uruguayan Pesos (UYU).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "UZS", - "description": "Uzbekistan som (UZS).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "VED", - "description": "Venezuelan Bolivares (VED).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "VEF", - "description": "Venezuelan Bolivares (VEF).", - "isDeprecated": true, - "deprecationReason": "`VEF` is deprecated. Use `VES` available from version `2020-10` onwards instead." - }, - { - "name": "VES", - "description": "Venezuelan Bolivares (VES).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "VND", - "description": "Vietnamese đồng (VND).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "VUV", - "description": "Vanuatu Vatu (VUV).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "WST", - "description": "Samoan Tala (WST).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "XAF", - "description": "Central African CFA Franc (XAF).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "XCD", - "description": "East Caribbean Dollar (XCD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "XOF", - "description": "West African CFA franc (XOF).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "XPF", - "description": "CFP Franc (XPF).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "XXX", - "description": "Unrecognized currency.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "YER", - "description": "Yemeni Rial (YER).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ZAR", - "description": "South African Rand (ZAR).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ZMW", - "description": "Zambian Kwacha (ZMW).", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Customer", - "description": "A customer represents a customer account with the shop. Customer accounts store contact information for the customer, saving logged-in customers the trouble of having to provide it at every checkout.", - "fields": [ - { - "name": "acceptsMarketing", - "description": "Indicates whether the customer has consented to be sent marketing material via email.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "addresses", - "description": "A list of addresses for the customer.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MailingAddressConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "createdAt", - "description": "The date and time when the customer was created.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "defaultAddress", - "description": "The customer’s default address.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MailingAddress", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "displayName", - "description": "The customer’s name, email or phone number.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "email", - "description": "The customer’s email address.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "firstName", - "description": "The customer’s first name.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A unique identifier for the customer.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "lastIncompleteCheckout", - "description": "The customer's most recently updated, incomplete checkout.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "lastName", - "description": "The customer’s last name.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "metafield", - "description": "Returns a metafield found by namespace and key.", - "args": [ - { - "name": "key", - "description": "The identifier for the metafield.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "namespace", - "description": "A container for a set of metafields.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "metafields", - "description": "The metafields associated with the resource matching the supplied list of namespaces and keys.\n", - "args": [ - { - "name": "identifiers", - "description": "The list of metafields to retrieve by namespace and key.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "HasMetafieldsIdentifier", - "ofType": null - } - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "numberOfOrders", - "description": "The number of orders that the customer has made at the store in their lifetime.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "UnsignedInt64", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "orders", - "description": "The orders associated with the customer.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "query", - "description": "Supported filter parameters:\n - `processed_at`\n\nSee the detailed [search syntax](https://shopify.dev/api/usage/search-syntax)\nfor more information about using filters.\n", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "sortKey", - "description": "Sort the underlying list by the given key.", - "type": { - "kind": "ENUM", - "name": "OrderSortKeys", - "ofType": null - }, - "defaultValue": "ID", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "OrderConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "phone", - "description": "The customer’s phone number.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "tags", - "description": "A comma separated list of tags that have been added to the customer.\nAdditional access scope required: unauthenticated_read_customer_tags.\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "updatedAt", - "description": "The date and time when the customer information was updated.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "HasMetafields", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CustomerAccessToken", - "description": "A CustomerAccessToken represents the unique token required to make modifications to the customer object.", - "fields": [ - { - "name": "accessToken", - "description": "The customer’s access token.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "expiresAt", - "description": "The date and time when the customer access token expires.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "CustomerAccessTokenCreateInput", - "description": "Specifies the input fields required to create a customer access token.", - "fields": null, - "inputFields": [ - { - "name": "email", - "description": "The email associated to the customer.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "password", - "description": "The login password to be used by the customer.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CustomerAccessTokenCreatePayload", - "description": "Return type for `customerAccessTokenCreate` mutation.", - "fields": [ - { - "name": "customerAccessToken", - "description": "The newly created customer access token object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "CustomerAccessToken", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CustomerUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `customerUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CustomerAccessTokenCreateWithMultipassPayload", - "description": "Return type for `customerAccessTokenCreateWithMultipass` mutation.", - "fields": [ - { - "name": "customerAccessToken", - "description": "An access token object associated with the customer.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "CustomerAccessToken", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CustomerUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CustomerAccessTokenDeletePayload", - "description": "Return type for `customerAccessTokenDelete` mutation.", - "fields": [ - { - "name": "deletedAccessToken", - "description": "The destroyed access token.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "deletedCustomerAccessTokenId", - "description": "ID of the destroyed customer access token.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CustomerAccessTokenRenewPayload", - "description": "Return type for `customerAccessTokenRenew` mutation.", - "fields": [ - { - "name": "customerAccessToken", - "description": "The renewed customer access token object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "CustomerAccessToken", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CustomerActivateByUrlPayload", - "description": "Return type for `customerActivateByUrl` mutation.", - "fields": [ - { - "name": "customer", - "description": "The customer that was activated.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Customer", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerAccessToken", - "description": "A new customer access token for the customer.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "CustomerAccessToken", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CustomerUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "CustomerActivateInput", - "description": "Specifies the input fields required to activate a customer.", - "fields": null, - "inputFields": [ - { - "name": "activationToken", - "description": "The activation token required to activate the customer.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "password", - "description": "New password that will be set during activation.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CustomerActivatePayload", - "description": "Return type for `customerActivate` mutation.", - "fields": [ - { - "name": "customer", - "description": "The customer object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Customer", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerAccessToken", - "description": "A newly created customer access token object for the customer.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "CustomerAccessToken", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CustomerUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `customerUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CustomerAddressCreatePayload", - "description": "Return type for `customerAddressCreate` mutation.", - "fields": [ - { - "name": "customerAddress", - "description": "The new customer address object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MailingAddress", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CustomerUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `customerUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CustomerAddressDeletePayload", - "description": "Return type for `customerAddressDelete` mutation.", - "fields": [ - { - "name": "customerUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CustomerUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "deletedCustomerAddressId", - "description": "ID of the deleted customer address.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `customerUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CustomerAddressUpdatePayload", - "description": "Return type for `customerAddressUpdate` mutation.", - "fields": [ - { - "name": "customerAddress", - "description": "The customer’s updated mailing address.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MailingAddress", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CustomerUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `customerUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "CustomerCreateInput", - "description": "The fields required to create a new customer.", - "fields": null, - "inputFields": [ - { - "name": "acceptsMarketing", - "description": "Indicates whether the customer has consented to be sent marketing material via email.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "email", - "description": "The customer’s email.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "firstName", - "description": "The customer’s first name.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "lastName", - "description": "The customer’s last name.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "password", - "description": "The login password used by the customer.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "phone", - "description": "A unique phone number for the customer.\n\nFormatted using E.164 standard. For example, _+16135551111_.\n", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CustomerCreatePayload", - "description": "Return type for `customerCreate` mutation.", - "fields": [ - { - "name": "customer", - "description": "The created customer object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Customer", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CustomerUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `customerUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CustomerDefaultAddressUpdatePayload", - "description": "Return type for `customerDefaultAddressUpdate` mutation.", - "fields": [ - { - "name": "customer", - "description": "The updated customer object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Customer", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CustomerUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `customerUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "CustomerErrorCode", - "description": "Possible error codes that can be returned by `CustomerUserError`.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "ALREADY_ENABLED", - "description": "Customer already enabled.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BAD_DOMAIN", - "description": "Input email contains an invalid domain name.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BLANK", - "description": "The input value is blank.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CONTAINS_HTML_TAGS", - "description": "Input contains HTML tags.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CONTAINS_URL", - "description": "Input contains URL.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CUSTOMER_DISABLED", - "description": "Customer is disabled.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "INVALID", - "description": "The input value is invalid.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "INVALID_MULTIPASS_REQUEST", - "description": "Multipass token is not valid.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NOT_FOUND", - "description": "Address does not exist.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PASSWORD_STARTS_OR_ENDS_WITH_WHITESPACE", - "description": "Input password starts or ends with whitespace.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TAKEN", - "description": "The input value is already taken.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TOKEN_INVALID", - "description": "Invalid activation token.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TOO_LONG", - "description": "The input value is too long.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TOO_SHORT", - "description": "The input value is too short.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "UNIDENTIFIED_CUSTOMER", - "description": "Unidentified customer.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CustomerRecoverPayload", - "description": "Return type for `customerRecover` mutation.", - "fields": [ - { - "name": "customerUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CustomerUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `customerUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CustomerResetByUrlPayload", - "description": "Return type for `customerResetByUrl` mutation.", - "fields": [ - { - "name": "customer", - "description": "The customer object which was reset.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Customer", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerAccessToken", - "description": "A newly created customer access token object for the customer.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "CustomerAccessToken", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CustomerUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `customerUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "CustomerResetInput", - "description": "Specifies the fields required to reset a customer’s password.", - "fields": null, - "inputFields": [ - { - "name": "password", - "description": "New password that will be set as part of the reset password process.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "resetToken", - "description": "The reset token required to reset the customer’s password.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CustomerResetPayload", - "description": "Return type for `customerReset` mutation.", - "fields": [ - { - "name": "customer", - "description": "The customer object which was reset.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Customer", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerAccessToken", - "description": "A newly created customer access token object for the customer.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "CustomerAccessToken", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CustomerUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `customerUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "CustomerUpdateInput", - "description": "Specifies the fields required to update the Customer information.", - "fields": null, - "inputFields": [ - { - "name": "acceptsMarketing", - "description": "Indicates whether the customer has consented to be sent marketing material via email.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "email", - "description": "The customer’s email.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "firstName", - "description": "The customer’s first name.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "lastName", - "description": "The customer’s last name.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "password", - "description": "The login password used by the customer.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "phone", - "description": "A unique phone number for the customer.\n\nFormatted using E.164 standard. For example, _+16135551111_. To remove the phone number, specify `null`.\n", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CustomerUpdatePayload", - "description": "Return type for `customerUpdate` mutation.", - "fields": [ - { - "name": "customer", - "description": "The updated customer object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Customer", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerAccessToken", - "description": "The newly created customer access token. If the customer's password is updated, all previous access tokens\n(including the one used to perform this mutation) become invalid, and a new token is generated.\n", - "args": [], - "type": { - "kind": "OBJECT", - "name": "CustomerAccessToken", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CustomerUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `customerUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CustomerUserError", - "description": "Represents an error that happens during execution of a customer mutation.", - "fields": [ - { - "name": "code", - "description": "The error code.", - "args": [], - "type": { - "kind": "ENUM", - "name": "CustomerErrorCode", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "field", - "description": "The path to the input field that caused the error.", - "args": [], - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "message", - "description": "The error message.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "DisplayableError", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "SCALAR", - "name": "DateTime", - "description": "Represents an [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)-encoded date and time string.\nFor example, 3:50 pm on September 7, 2019 in the time zone of UTC (Coordinated Universal Time) is\nrepresented as `\"2019-09-07T15:50:00Z`\".\n", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "SCALAR", - "name": "Decimal", - "description": "A signed decimal number, which supports arbitrary precision and is serialized as a string.\n\nExample values: `\"29.99\"`, `\"29.999\"`.\n", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "UNION", - "name": "DeliveryAddress", - "description": "A delivery address of the buyer that is interacting with the cart.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": [ - { - "kind": "OBJECT", - "name": "MailingAddress", - "ofType": null - } - ] - }, - { - "kind": "INPUT_OBJECT", - "name": "DeliveryAddressInput", - "description": "The input fields for delivery address preferences.\n", - "fields": null, - "inputFields": [ - { - "name": "deliveryAddress", - "description": "A delivery address preference of a buyer that is interacting with the cart.", - "type": { - "kind": "INPUT_OBJECT", - "name": "MailingAddressInput", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "DeliveryMethodType", - "description": "List of different delivery method types.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "LOCAL", - "description": "Local Delivery.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NONE", - "description": "None.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PICKUP_POINT", - "description": "Shipping to a Pickup Point.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PICK_UP", - "description": "Local Pickup.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RETAIL", - "description": "Retail.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SHIPPING", - "description": "Shipping.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "DigitalWallet", - "description": "Digital wallet, such as Apple Pay, which can be used for accelerated checkouts.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "ANDROID_PAY", - "description": "Android Pay.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "APPLE_PAY", - "description": "Apple Pay.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GOOGLE_PAY", - "description": "Google Pay.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SHOPIFY_PAY", - "description": "Shopify Pay.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "DiscountAllocation", - "description": "An amount discounting the line that has been allocated by a discount.\n", - "fields": [ - { - "name": "allocatedAmount", - "description": "Amount of discount allocated.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "discountApplication", - "description": "The discount this allocated amount originated from.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INTERFACE", - "name": "DiscountApplication", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INTERFACE", - "name": "DiscountApplication", - "description": "Discount applications capture the intentions of a discount source at\nthe time of application.\n", - "fields": [ - { - "name": "allocationMethod", - "description": "The method by which the discount's value is allocated to its entitled items.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "DiscountApplicationAllocationMethod", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "targetSelection", - "description": "Which lines of targetType that the discount is allocated over.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "DiscountApplicationTargetSelection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "targetType", - "description": "The type of line that the discount is applicable towards.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "DiscountApplicationTargetType", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "value", - "description": "The value of the discount application.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "UNION", - "name": "PricingValue", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": [ - { - "kind": "OBJECT", - "name": "AutomaticDiscountApplication", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "DiscountCodeApplication", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "ManualDiscountApplication", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "ScriptDiscountApplication", - "ofType": null - } - ] - }, - { - "kind": "ENUM", - "name": "DiscountApplicationAllocationMethod", - "description": "The method by which the discount's value is allocated onto its entitled lines.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "ACROSS", - "description": "The value is spread across all entitled lines.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "EACH", - "description": "The value is applied onto every entitled line.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ONE", - "description": "The value is specifically applied onto a particular line.", - "isDeprecated": true, - "deprecationReason": "Use ACROSS instead." - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "DiscountApplicationConnection", - "description": "An auto-generated type for paginating through multiple DiscountApplications.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "DiscountApplicationEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of the nodes contained in DiscountApplicationEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INTERFACE", - "name": "DiscountApplication", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "DiscountApplicationEdge", - "description": "An auto-generated type which holds one DiscountApplication and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "The item at the end of DiscountApplicationEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INTERFACE", - "name": "DiscountApplication", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "DiscountApplicationTargetSelection", - "description": "The lines on the order to which the discount is applied, of the type defined by\nthe discount application's `targetType`. For example, the value `ENTITLED`, combined with a `targetType` of\n`LINE_ITEM`, applies the discount on all line items that are entitled to the discount.\nThe value `ALL`, combined with a `targetType` of `SHIPPING_LINE`, applies the discount on all shipping lines.\n", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "ALL", - "description": "The discount is allocated onto all the lines.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ENTITLED", - "description": "The discount is allocated onto only the lines that it's entitled for.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "EXPLICIT", - "description": "The discount is allocated onto explicitly chosen lines.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "DiscountApplicationTargetType", - "description": "The type of line (i.e. line item or shipping line) on an order that the discount is applicable towards.\n", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "LINE_ITEM", - "description": "The discount applies onto line items.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SHIPPING_LINE", - "description": "The discount applies onto shipping lines.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "DiscountCodeApplication", - "description": "Discount code applications capture the intentions of a discount code at\nthe time that it is applied.\n", - "fields": [ - { - "name": "allocationMethod", - "description": "The method by which the discount's value is allocated to its entitled items.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "DiscountApplicationAllocationMethod", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "applicable", - "description": "Specifies whether the discount code was applied successfully.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "code", - "description": "The string identifying the discount code that was used at the time of application.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "targetSelection", - "description": "Which lines of targetType that the discount is allocated over.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "DiscountApplicationTargetSelection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "targetType", - "description": "The type of line that the discount is applicable towards.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "DiscountApplicationTargetType", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "value", - "description": "The value of the discount application.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "UNION", - "name": "PricingValue", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "DiscountApplication", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INTERFACE", - "name": "DisplayableError", - "description": "Represents an error in the input of a mutation.", - "fields": [ - { - "name": "field", - "description": "The path to the input field that caused the error.", - "args": [], - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "message", - "description": "The error message.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": [ - { - "kind": "OBJECT", - "name": "CartUserError", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "CustomerUserError", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - ] - }, - { - "kind": "OBJECT", - "name": "Domain", - "description": "Represents a web address.", - "fields": [ - { - "name": "host", - "description": "The host name of the domain (eg: `example.com`).", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "sslEnabled", - "description": "Whether SSL is enabled or not.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "url", - "description": "The URL of the domain (eg: `https://example.com`).", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "ExternalVideo", - "description": "Represents a video hosted outside of Shopify.", - "fields": [ - { - "name": "alt", - "description": "A word or phrase to share the nature or contents of a media.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "embedUrl", - "description": "The embed URL of the video for the respective host.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "embeddedUrl", - "description": "The URL.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - } - }, - "isDeprecated": true, - "deprecationReason": "Use `originUrl` instead." - }, - { - "name": "host", - "description": "The host of the external video.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "MediaHost", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "mediaContentType", - "description": "The media content type.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "MediaContentType", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "originUrl", - "description": "The origin URL of the video on the respective host.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "previewImage", - "description": "The preview image for the media.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Image", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "Media", - "ofType": null - }, - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Filter", - "description": "A filter that is supported on the parent field.", - "fields": [ - { - "name": "id", - "description": "A unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "label", - "description": "A human-friendly string for this filter.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "type", - "description": "An enumeration that denotes the type of data this filter represents.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "FilterType", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "values", - "description": "The list of values for this filter.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "FilterValue", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "FilterType", - "description": "The type of data that the filter group represents.\n\nFor more information, refer to [Filter products in a collection with the Storefront API]\n(https://shopify.dev/custom-storefronts/products-collections/filter-products).\n", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "BOOLEAN", - "description": "A boolean value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LIST", - "description": "A list of selectable values.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PRICE_RANGE", - "description": "A range of prices.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "FilterValue", - "description": "A selectable value within a filter.", - "fields": [ - { - "name": "count", - "description": "The number of results that match this filter value.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "input", - "description": "An input object that can be used to filter by this value on the parent field.\n\nThe value is provided as a helper for building dynamic filtering UI. For example, if you have a list of selected `FilterValue` objects, you can combine their respective `input` values to use in a subsequent query.\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "JSON", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "label", - "description": "A human-friendly string for this filter value.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "SCALAR", - "name": "Float", - "description": "The `Float` scalar type represents signed double-precision fractional values as specified by [IEEE 754](https://en.wikipedia.org/wiki/IEEE_floating_point).", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Fulfillment", - "description": "Represents a single fulfillment in an order.", - "fields": [ - { - "name": "fulfillmentLineItems", - "description": "List of the fulfillment's line items.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "FulfillmentLineItemConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "trackingCompany", - "description": "The name of the tracking company.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "trackingInfo", - "description": "Tracking information associated with the fulfillment,\nsuch as the tracking number and tracking URL.\n", - "args": [ - { - "name": "first", - "description": "Truncate the array result to this size.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "FulfillmentTrackingInfo", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "FulfillmentLineItem", - "description": "Represents a single line item in a fulfillment. There is at most one fulfillment line item for each order line item.", - "fields": [ - { - "name": "lineItem", - "description": "The associated order's line item.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "OrderLineItem", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "quantity", - "description": "The amount fulfilled in this fulfillment.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "FulfillmentLineItemConnection", - "description": "An auto-generated type for paginating through multiple FulfillmentLineItems.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "FulfillmentLineItemEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of the nodes contained in FulfillmentLineItemEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "FulfillmentLineItem", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "FulfillmentLineItemEdge", - "description": "An auto-generated type which holds one FulfillmentLineItem and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "The item at the end of FulfillmentLineItemEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "FulfillmentLineItem", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "FulfillmentTrackingInfo", - "description": "Tracking information associated with the fulfillment.", - "fields": [ - { - "name": "number", - "description": "The tracking number of the fulfillment.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "url", - "description": "The URL to track the fulfillment.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "GenericFile", - "description": "The generic file resource lets you manage files in a merchant’s store. Generic files include any file that doesn’t fit into a designated type such as image or video. Example: PDF, JSON.", - "fields": [ - { - "name": "alt", - "description": "A word or phrase to indicate the contents of a file.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "mimeType", - "description": "The MIME type of the file.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "originalFileSize", - "description": "The size of the original file in bytes.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "previewImage", - "description": "The preview image for the file.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Image", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "url", - "description": "The URL of the file.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "GeoCoordinateInput", - "description": "Used to specify a geographical location.", - "fields": null, - "inputFields": [ - { - "name": "latitude", - "description": "The coordinate's latitude value.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Float", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "longitude", - "description": "The coordinate's longitude value.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Float", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "SCALAR", - "name": "HTML", - "description": "A string containing HTML code. Refer to the [HTML spec](https://html.spec.whatwg.org/#elements-3) for a\ncomplete list of HTML elements.\n\nExample value: `\"

Grey cotton knit sweater.

\"`\n", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INTERFACE", - "name": "HasMetafields", - "description": "Represents information about the metafields associated to the specified resource.", - "fields": [ - { - "name": "metafield", - "description": "Returns a metafield found by namespace and key.", - "args": [ - { - "name": "key", - "description": "The identifier for the metafield.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "namespace", - "description": "A container for a set of metafields.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "metafields", - "description": "The metafields associated with the resource matching the supplied list of namespaces and keys.\n", - "args": [ - { - "name": "identifiers", - "description": "The list of metafields to retrieve by namespace and key.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "HasMetafieldsIdentifier", - "ofType": null - } - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": [ - { - "kind": "OBJECT", - "name": "Article", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Blog", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Collection", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Customer", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Order", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Page", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Product", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "ProductVariant", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Shop", - "ofType": null - } - ] - }, - { - "kind": "INPUT_OBJECT", - "name": "HasMetafieldsIdentifier", - "description": "Identifies a metafield on an owner resource by namespace and key.", - "fields": null, - "inputFields": [ - { - "name": "key", - "description": "The identifier for the metafield.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "namespace", - "description": "A container for a set of metafields.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "SCALAR", - "name": "ID", - "description": "The `ID` scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as `\"4\"`) or integer (such as `4`) input value will be accepted as an ID.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Image", - "description": "Represents an image resource.", - "fields": [ - { - "name": "altText", - "description": "A word or phrase to share the nature or contents of an image.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "height", - "description": "The original height of the image in pixels. Returns `null` if the image is not hosted by Shopify.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A unique identifier for the image.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "originalSrc", - "description": "The location of the original image as a URL.\n\nIf there are any existing transformations in the original source URL, they will remain and not be stripped.\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - } - }, - "isDeprecated": true, - "deprecationReason": "Use `url` instead." - }, - { - "name": "src", - "description": "The location of the image as a URL.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - } - }, - "isDeprecated": true, - "deprecationReason": "Use `url` instead." - }, - { - "name": "transformedSrc", - "description": "The location of the transformed image as a URL.\n\nAll transformation arguments are considered \"best-effort\". If they can be applied to an image, they will be.\nOtherwise any transformations which an image type does not support will be ignored.\n", - "args": [ - { - "name": "crop", - "description": "Crops the image according to the specified region.", - "type": { - "kind": "ENUM", - "name": "CropRegion", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "maxHeight", - "description": "Image height in pixels between 1 and 5760.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "maxWidth", - "description": "Image width in pixels between 1 and 5760.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "preferredContentType", - "description": "Best effort conversion of image into content type (SVG -> PNG, Anything -> JPG, Anything -> WEBP are supported).", - "type": { - "kind": "ENUM", - "name": "ImageContentType", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "scale", - "description": "Image size multiplier for high-resolution retina displays. Must be between 1 and 3.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": "1", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - } - }, - "isDeprecated": true, - "deprecationReason": "Use `url(transform:)` instead" - }, - { - "name": "url", - "description": "The location of the image as a URL.\n\nIf no transform options are specified, then the original image will be preserved including any pre-applied transforms.\n\nAll transformation options are considered \"best-effort\". Any transformation that the original image type doesn't support will be ignored.\n\nIf you need multiple variations of the same image, then you can use [GraphQL aliases](https://graphql.org/learn/queries/#aliases).\n", - "args": [ - { - "name": "transform", - "description": "A set of options to transform the original image.", - "type": { - "kind": "INPUT_OBJECT", - "name": "ImageTransformInput", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "width", - "description": "The original width of the image in pixels. Returns `null` if the image is not hosted by Shopify.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "ImageConnection", - "description": "An auto-generated type for paginating through multiple Images.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "ImageEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of the nodes contained in ImageEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Image", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "ImageContentType", - "description": "List of supported image content types.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "JPG", - "description": "A JPG image.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PNG", - "description": "A PNG image.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "WEBP", - "description": "A WEBP image.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "ImageEdge", - "description": "An auto-generated type which holds one Image and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "The item at the end of ImageEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Image", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "ImageTransformInput", - "description": "The available options for transforming an image.\n\nAll transformation options are considered best effort. Any transformation that the original image type doesn't support will be ignored.\n", - "fields": null, - "inputFields": [ - { - "name": "crop", - "description": "The region of the image to remain after cropping.\nMust be used in conjunction with the `maxWidth` and/or `maxHeight` fields, where the `maxWidth` and `maxHeight` aren't equal.\nThe `crop` argument should coincide with the smaller value. A smaller `maxWidth` indicates a `LEFT` or `RIGHT` crop, while\na smaller `maxHeight` indicates a `TOP` or `BOTTOM` crop. For example, `{ maxWidth: 5, maxHeight: 10, crop: LEFT }` will result\nin an image with a width of 5 and height of 10, where the right side of the image is removed.\n", - "type": { - "kind": "ENUM", - "name": "CropRegion", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "maxHeight", - "description": "Image height in pixels between 1 and 5760.\n", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "maxWidth", - "description": "Image width in pixels between 1 and 5760.\n", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "preferredContentType", - "description": "Convert the source image into the preferred content type.\nSupported conversions: `.svg` to `.png`, any file type to `.jpg`, and any file type to `.webp`.\n", - "type": { - "kind": "ENUM", - "name": "ImageContentType", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "scale", - "description": "Image size multiplier for high-resolution retina displays. Must be within 1..3.\n", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": "1", - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "SCALAR", - "name": "Int", - "description": "The `Int` scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "SCALAR", - "name": "JSON", - "description": "A [JSON](https://www.json.org/json-en.html) object.\n\nExample value:\n`{\n \"product\": {\n \"id\": \"gid://shopify/Product/1346443542550\",\n \"title\": \"White T-shirt\",\n \"options\": [{\n \"name\": \"Size\",\n \"values\": [\"M\", \"L\"]\n }]\n }\n}`\n", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Language", - "description": "A language.", - "fields": [ - { - "name": "endonymName", - "description": "The name of the language in the language itself. If the language uses capitalization, it is capitalized for a mid-sentence position.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "isoCode", - "description": "The ISO code.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "LanguageCode", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "name", - "description": "The name of the language in the current language.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "LanguageCode", - "description": "ISO 639-1 language codes supported by Shopify.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "AF", - "description": "Afrikaans.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AK", - "description": "Akan.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AM", - "description": "Amharic.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AR", - "description": "Arabic.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AS", - "description": "Assamese.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AZ", - "description": "Azerbaijani.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BE", - "description": "Belarusian.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BG", - "description": "Bulgarian.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BM", - "description": "Bambara.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BN", - "description": "Bangla.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BO", - "description": "Tibetan.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BR", - "description": "Breton.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BS", - "description": "Bosnian.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CA", - "description": "Catalan.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CE", - "description": "Chechen.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CS", - "description": "Czech.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CU", - "description": "Church Slavic.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CY", - "description": "Welsh.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DA", - "description": "Danish.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DE", - "description": "German.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DZ", - "description": "Dzongkha.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "EE", - "description": "Ewe.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "EL", - "description": "Greek.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "EN", - "description": "English.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "EO", - "description": "Esperanto.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ES", - "description": "Spanish.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ET", - "description": "Estonian.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "EU", - "description": "Basque.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "FA", - "description": "Persian.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "FF", - "description": "Fulah.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "FI", - "description": "Finnish.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "FO", - "description": "Faroese.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "FR", - "description": "French.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "FY", - "description": "Western Frisian.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GA", - "description": "Irish.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GD", - "description": "Scottish Gaelic.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GL", - "description": "Galician.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GU", - "description": "Gujarati.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GV", - "description": "Manx.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "HA", - "description": "Hausa.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "HE", - "description": "Hebrew.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "HI", - "description": "Hindi.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "HR", - "description": "Croatian.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "HU", - "description": "Hungarian.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "HY", - "description": "Armenian.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "IA", - "description": "Interlingua.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ID", - "description": "Indonesian.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "IG", - "description": "Igbo.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "II", - "description": "Sichuan Yi.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "IS", - "description": "Icelandic.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "IT", - "description": "Italian.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "JA", - "description": "Japanese.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "JV", - "description": "Javanese.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KA", - "description": "Georgian.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KI", - "description": "Kikuyu.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KK", - "description": "Kazakh.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KL", - "description": "Kalaallisut.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KM", - "description": "Khmer.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KN", - "description": "Kannada.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KO", - "description": "Korean.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KS", - "description": "Kashmiri.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KU", - "description": "Kurdish.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KW", - "description": "Cornish.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KY", - "description": "Kyrgyz.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LB", - "description": "Luxembourgish.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LG", - "description": "Ganda.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LN", - "description": "Lingala.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LO", - "description": "Lao.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LT", - "description": "Lithuanian.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LU", - "description": "Luba-Katanga.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LV", - "description": "Latvian.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MG", - "description": "Malagasy.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MI", - "description": "Māori.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MK", - "description": "Macedonian.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ML", - "description": "Malayalam.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MN", - "description": "Mongolian.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MR", - "description": "Marathi.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MS", - "description": "Malay.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MT", - "description": "Maltese.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MY", - "description": "Burmese.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NB", - "description": "Norwegian (Bokmål).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ND", - "description": "North Ndebele.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NE", - "description": "Nepali.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NL", - "description": "Dutch.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NN", - "description": "Norwegian Nynorsk.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NO", - "description": "Norwegian.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "OM", - "description": "Oromo.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "OR", - "description": "Odia.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "OS", - "description": "Ossetic.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PA", - "description": "Punjabi.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PL", - "description": "Polish.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PS", - "description": "Pashto.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PT", - "description": "Portuguese.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PT_BR", - "description": "Portuguese (Brazil).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PT_PT", - "description": "Portuguese (Portugal).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "QU", - "description": "Quechua.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RM", - "description": "Romansh.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RN", - "description": "Rundi.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RO", - "description": "Romanian.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RU", - "description": "Russian.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RW", - "description": "Kinyarwanda.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SD", - "description": "Sindhi.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SE", - "description": "Northern Sami.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SG", - "description": "Sango.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SI", - "description": "Sinhala.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SK", - "description": "Slovak.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SL", - "description": "Slovenian.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SN", - "description": "Shona.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SO", - "description": "Somali.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SQ", - "description": "Albanian.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SR", - "description": "Serbian.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SU", - "description": "Sundanese.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SV", - "description": "Swedish.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SW", - "description": "Swahili.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TA", - "description": "Tamil.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TE", - "description": "Telugu.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TG", - "description": "Tajik.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TH", - "description": "Thai.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TI", - "description": "Tigrinya.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TK", - "description": "Turkmen.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TO", - "description": "Tongan.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TR", - "description": "Turkish.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TT", - "description": "Tatar.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "UG", - "description": "Uyghur.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "UK", - "description": "Ukrainian.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "UR", - "description": "Urdu.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "UZ", - "description": "Uzbek.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "VI", - "description": "Vietnamese.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "VO", - "description": "Volapük.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "WO", - "description": "Wolof.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "XH", - "description": "Xhosa.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "YI", - "description": "Yiddish.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "YO", - "description": "Yoruba.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ZH", - "description": "Chinese.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ZH_CN", - "description": "Chinese (Simplified).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ZH_TW", - "description": "Chinese (Traditional).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ZU", - "description": "Zulu.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Localization", - "description": "Information about the localized experiences configured for the shop.", - "fields": [ - { - "name": "availableCountries", - "description": "The list of countries with enabled localized experiences.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Country", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "availableLanguages", - "description": "The list of languages available for the active country.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Language", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "country", - "description": "The country of the active localized experience. Use the `@inContext` directive to change this value.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Country", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "language", - "description": "The language of the active localized experience. Use the `@inContext` directive to change this value.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Language", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Location", - "description": "Represents a location where product inventory is held.", - "fields": [ - { - "name": "address", - "description": "The address of the location.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "LocationAddress", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "name", - "description": "The name of the location.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "LocationAddress", - "description": "Represents the address of a location.\n", - "fields": [ - { - "name": "address1", - "description": "The first line of the address for the location.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "address2", - "description": "The second line of the address for the location.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "city", - "description": "The city of the location.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "country", - "description": "The country of the location.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "countryCode", - "description": "The country code of the location.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "formatted", - "description": "A formatted version of the address for the location.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "latitude", - "description": "The latitude coordinates of the location.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "Float", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "longitude", - "description": "The longitude coordinates of the location.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "Float", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "phone", - "description": "The phone number of the location.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "province", - "description": "The province of the location.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "provinceCode", - "description": "The code for the province, state, or district of the address of the location.\n", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "zip", - "description": "The ZIP code of the location.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "LocationConnection", - "description": "An auto-generated type for paginating through multiple Locations.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "LocationEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of the nodes contained in LocationEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Location", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "LocationEdge", - "description": "An auto-generated type which holds one Location and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "The item at the end of LocationEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Location", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "LocationSortKeys", - "description": "The set of valid sort keys for the Location query.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "CITY", - "description": "Sort by the `city` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DISTANCE", - "description": "Sort by the `distance` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ID", - "description": "Sort by the `id` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NAME", - "description": "Sort by the `name` value.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "MailingAddress", - "description": "Represents a mailing address for customers and shipping.", - "fields": [ - { - "name": "address1", - "description": "The first line of the address. Typically the street address or PO Box number.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "address2", - "description": "The second line of the address. Typically the number of the apartment, suite, or unit.\n", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "city", - "description": "The name of the city, district, village, or town.\n", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "company", - "description": "The name of the customer's company or organization.\n", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "country", - "description": "The name of the country.\n", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "countryCode", - "description": "The two-letter code for the country of the address.\n\nFor example, US.\n", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": true, - "deprecationReason": "Use `countryCodeV2` instead." - }, - { - "name": "countryCodeV2", - "description": "The two-letter code for the country of the address.\n\nFor example, US.\n", - "args": [], - "type": { - "kind": "ENUM", - "name": "CountryCode", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "firstName", - "description": "The first name of the customer.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "formatted", - "description": "A formatted version of the address, customized by the provided arguments.", - "args": [ - { - "name": "withCompany", - "description": "Whether to include the customer's company in the formatted address.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "true", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "withName", - "description": "Whether to include the customer's name in the formatted address.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "formattedArea", - "description": "A comma-separated list of the values for city, province, and country.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "lastName", - "description": "The last name of the customer.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "latitude", - "description": "The latitude coordinate of the customer address.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "Float", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "longitude", - "description": "The longitude coordinate of the customer address.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "Float", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "name", - "description": "The full name of the customer, based on firstName and lastName.\n", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "phone", - "description": "A unique phone number for the customer.\n\nFormatted using E.164 standard. For example, _+16135551111_.\n", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "province", - "description": "The region of the address, such as the province, state, or district.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "provinceCode", - "description": "The two-letter code for the region.\n\nFor example, ON.\n", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "zip", - "description": "The zip or postal code of the address.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "MailingAddressConnection", - "description": "An auto-generated type for paginating through multiple MailingAddresses.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MailingAddressEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of the nodes contained in MailingAddressEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MailingAddress", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "MailingAddressEdge", - "description": "An auto-generated type which holds one MailingAddress and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "The item at the end of MailingAddressEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MailingAddress", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "MailingAddressInput", - "description": "Specifies the fields accepted to create or update a mailing address.", - "fields": null, - "inputFields": [ - { - "name": "address1", - "description": "The first line of the address. Typically the street address or PO Box number.\n", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "address2", - "description": "The second line of the address. Typically the number of the apartment, suite, or unit.\n", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "city", - "description": "The name of the city, district, village, or town.\n", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "company", - "description": "The name of the customer's company or organization.\n", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "country", - "description": "The name of the country.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "firstName", - "description": "The first name of the customer.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "lastName", - "description": "The last name of the customer.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "phone", - "description": "A unique phone number for the customer.\n\nFormatted using E.164 standard. For example, _+16135551111_.\n", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "province", - "description": "The region of the address, such as the province, state, or district.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "zip", - "description": "The zip or postal code of the address.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "ManualDiscountApplication", - "description": "Manual discount applications capture the intentions of a discount that was manually created.\n", - "fields": [ - { - "name": "allocationMethod", - "description": "The method by which the discount's value is allocated to its entitled items.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "DiscountApplicationAllocationMethod", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "description", - "description": "The description of the application.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "targetSelection", - "description": "Which lines of targetType that the discount is allocated over.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "DiscountApplicationTargetSelection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "targetType", - "description": "The type of line that the discount is applicable towards.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "DiscountApplicationTargetType", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "title", - "description": "The title of the application.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "value", - "description": "The value of the discount application.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "UNION", - "name": "PricingValue", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "DiscountApplication", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INTERFACE", - "name": "Media", - "description": "Represents a media interface.", - "fields": [ - { - "name": "alt", - "description": "A word or phrase to share the nature or contents of a media.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "mediaContentType", - "description": "The media content type.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "MediaContentType", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "previewImage", - "description": "The preview image for the media.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Image", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": [ - { - "kind": "OBJECT", - "name": "ExternalVideo", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "MediaImage", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Model3d", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Video", - "ofType": null - } - ] - }, - { - "kind": "OBJECT", - "name": "MediaConnection", - "description": "An auto-generated type for paginating through multiple Media.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MediaEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of the nodes contained in MediaEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INTERFACE", - "name": "Media", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "MediaContentType", - "description": "The possible content types for a media object.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "EXTERNAL_VIDEO", - "description": "An externally hosted video.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "IMAGE", - "description": "A Shopify hosted image.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MODEL_3D", - "description": "A 3d model.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "VIDEO", - "description": "A Shopify hosted video.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "MediaEdge", - "description": "An auto-generated type which holds one Media and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "The item at the end of MediaEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INTERFACE", - "name": "Media", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "MediaHost", - "description": "Host for a Media Resource.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "VIMEO", - "description": "Host for Vimeo embedded videos.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "YOUTUBE", - "description": "Host for YouTube embedded videos.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "MediaImage", - "description": "Represents a Shopify hosted image.", - "fields": [ - { - "name": "alt", - "description": "A word or phrase to share the nature or contents of a media.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "image", - "description": "The image for the media.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Image", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "mediaContentType", - "description": "The media content type.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "MediaContentType", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "previewImage", - "description": "The preview image for the media.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Image", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "Media", - "ofType": null - }, - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Menu", - "description": "A menu used for navigation within a storefront.\n", - "fields": [ - { - "name": "handle", - "description": "The menu's handle.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "items", - "description": "The menu's child items.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MenuItem", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "itemsCount", - "description": "The count of items on the menu.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "title", - "description": "The menu's title.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "MenuItem", - "description": "A menu item within a parent menu.\n", - "fields": [ - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "items", - "description": "The menu item's child items.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MenuItem", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "resourceId", - "description": "The ID of the linked resource.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "tags", - "description": "The menu item's tags to filter a collection.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "title", - "description": "The menu item's title.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "type", - "description": "The menu item's type.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "MenuItemType", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "url", - "description": "The menu item's URL.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "MenuItemType", - "description": "A menu item type.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "ARTICLE", - "description": "An article link.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BLOG", - "description": "A blog link.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CATALOG", - "description": "A catalog link.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "COLLECTION", - "description": "A collection link.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "COLLECTIONS", - "description": "A collection link.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "FRONTPAGE", - "description": "A frontpage link.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "HTTP", - "description": "An http link.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PAGE", - "description": "A page link.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PRODUCT", - "description": "A product link.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SEARCH", - "description": "A search link.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SHOP_POLICY", - "description": "A shop policy link.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "UNION", - "name": "Merchandise", - "description": "The merchandise to be purchased at checkout.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": [ - { - "kind": "OBJECT", - "name": "ProductVariant", - "ofType": null - } - ] - }, - { - "kind": "OBJECT", - "name": "Metafield", - "description": "Metafields represent custom metadata attached to a resource. Metafields can be sorted into namespaces and are\ncomprised of keys, values, and value types.\n", - "fields": [ - { - "name": "createdAt", - "description": "The date and time when the storefront metafield was created.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "description", - "description": "The description of a metafield.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "key", - "description": "The key name for a metafield.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "namespace", - "description": "The namespace for a metafield.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "parentResource", - "description": "The parent object that the metafield belongs to.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "UNION", - "name": "MetafieldParentResource", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reference", - "description": "Returns a reference object if the metafield definition's type is a resource reference.", - "args": [], - "type": { - "kind": "UNION", - "name": "MetafieldReference", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "references", - "description": "A list of reference objects if the metafield's type is a resource reference list.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "MetafieldReferenceConnection", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "type", - "description": "The type name of the metafield.\nSee the list of [supported types](https://shopify.dev/apps/metafields/definitions/types).\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "updatedAt", - "description": "The date and time when the storefront metafield was updated.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "value", - "description": "The value of a metafield.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "MetafieldFilter", - "description": "A filter used to view a subset of products in a collection matching a specific metafield value.\n\nOnly the following metafield types are currently supported:\n- `number_integer`\n- `number_decimal`\n- `single_line_text_field`\n- `boolean` as of 2022-04.\n", - "fields": null, - "inputFields": [ - { - "name": "key", - "description": "The key of the metafield to filter on.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "namespace", - "description": "The namespace of the metafield to filter on.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "value", - "description": "The value of the metafield.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "UNION", - "name": "MetafieldParentResource", - "description": "A resource that the metafield belongs to.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": [ - { - "kind": "OBJECT", - "name": "Article", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Blog", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Collection", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Customer", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Order", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Page", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Product", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "ProductVariant", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Shop", - "ofType": null - } - ] - }, - { - "kind": "UNION", - "name": "MetafieldReference", - "description": "Returns the resource which is being referred to by a metafield.\n", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": [ - { - "kind": "OBJECT", - "name": "Collection", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "GenericFile", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "MediaImage", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Metaobject", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Page", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Product", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "ProductVariant", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Video", - "ofType": null - } - ] - }, - { - "kind": "OBJECT", - "name": "MetafieldReferenceConnection", - "description": "An auto-generated type for paginating through multiple MetafieldReferences.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MetafieldReferenceEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of the nodes contained in MetafieldReferenceEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "UNION", - "name": "MetafieldReference", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "MetafieldReferenceEdge", - "description": "An auto-generated type which holds one MetafieldReference and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "The item at the end of MetafieldReferenceEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "UNION", - "name": "MetafieldReference", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Metaobject", - "description": "An instance of a user-defined model based on a MetaobjectDefinition.", - "fields": [ - { - "name": "field", - "description": "Accesses a field of the object by key.", - "args": [ - { - "name": "key", - "description": "The key of the field.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "MetaobjectField", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "fields", - "description": "All object fields with defined values.\nOmitted object keys can be assumed null, and no guarantees are made about field order.\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MetaobjectField", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "handle", - "description": "The unique handle of the metaobject. Useful as a custom ID.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "type", - "description": "The type of the metaobject. Defines the namespace of its associated metafields.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "updatedAt", - "description": "The date and time when the metaobject was last updated.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "MetaobjectConnection", - "description": "An auto-generated type for paginating through multiple Metaobjects.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MetaobjectEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of the nodes contained in MetaobjectEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Metaobject", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "MetaobjectEdge", - "description": "An auto-generated type which holds one Metaobject and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "The item at the end of MetaobjectEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Metaobject", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "MetaobjectField", - "description": "Provides the value of a Metaobject field.", - "fields": [ - { - "name": "key", - "description": "The field key.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reference", - "description": "A referenced object if the field type is a resource reference.", - "args": [], - "type": { - "kind": "UNION", - "name": "MetafieldReference", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "references", - "description": "A list of referenced objects if the field type is a resource reference list.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "MetafieldReferenceConnection", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "type", - "description": "The type name of the field.\nSee the list of [supported types](https://shopify.dev/apps/metafields/definitions/types).\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "value", - "description": "The field value.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "MetaobjectHandleInput", - "description": "The input fields used to retrieve a metaobject by handle.", - "fields": null, - "inputFields": [ - { - "name": "handle", - "description": "The handle of the metaobject.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "type", - "description": "The type of the metaobject.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Model3d", - "description": "Represents a Shopify hosted 3D model.", - "fields": [ - { - "name": "alt", - "description": "A word or phrase to share the nature or contents of a media.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "mediaContentType", - "description": "The media content type.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "MediaContentType", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "previewImage", - "description": "The preview image for the media.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Image", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "sources", - "description": "The sources for a 3d model.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Model3dSource", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "Media", - "ofType": null - }, - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Model3dSource", - "description": "Represents a source for a Shopify hosted 3d model.", - "fields": [ - { - "name": "filesize", - "description": "The filesize of the 3d model.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "format", - "description": "The format of the 3d model.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "mimeType", - "description": "The MIME type of the 3d model.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "url", - "description": "The URL of the 3d model.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "MoneyInput", - "description": "Specifies the fields for a monetary value with currency.", - "fields": null, - "inputFields": [ - { - "name": "amount", - "description": "Decimal money amount.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Decimal", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "currencyCode", - "description": "Currency of the money.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "CurrencyCode", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "MoneyV2", - "description": "A monetary value with currency.\n", - "fields": [ - { - "name": "amount", - "description": "Decimal money amount.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Decimal", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "currencyCode", - "description": "Currency of the money.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "CurrencyCode", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Mutation", - "description": "The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start.", - "fields": [ - { - "name": "cartAttributesUpdate", - "description": "Updates the attributes on a cart.", - "args": [ - { - "name": "attributes", - "description": "An array of key-value pairs that contains additional information about the cart.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "AttributeInput", - "ofType": null - } - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "cartId", - "description": "The ID of the cart.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CartAttributesUpdatePayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "cartBuyerIdentityUpdate", - "description": "Updates customer information associated with a cart.\nBuyer identity is used to determine\n[international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing)\nand should match the customer's shipping address.\n", - "args": [ - { - "name": "buyerIdentity", - "description": "The customer associated with the cart. Used to determine\n[international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing).\nBuyer identity should match the customer's shipping address.\n", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CartBuyerIdentityInput", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "cartId", - "description": "The ID of the cart.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CartBuyerIdentityUpdatePayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "cartCreate", - "description": "Creates a new cart.", - "args": [ - { - "name": "input", - "description": "The fields used to create a cart.", - "type": { - "kind": "INPUT_OBJECT", - "name": "CartInput", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CartCreatePayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "cartDiscountCodesUpdate", - "description": "Updates the discount codes applied to the cart.", - "args": [ - { - "name": "cartId", - "description": "The ID of the cart.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "discountCodes", - "description": "The case-insensitive discount codes that the customer added at checkout.\n", - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CartDiscountCodesUpdatePayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "cartLinesAdd", - "description": "Adds a merchandise line to the cart.", - "args": [ - { - "name": "cartId", - "description": "The ID of the cart.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "lines", - "description": "A list of merchandise lines to add to the cart.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CartLineInput", - "ofType": null - } - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CartLinesAddPayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "cartLinesRemove", - "description": "Removes one or more merchandise lines from the cart.", - "args": [ - { - "name": "cartId", - "description": "The ID of the cart.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "lineIds", - "description": "The merchandise line IDs to remove.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CartLinesRemovePayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "cartLinesUpdate", - "description": "Updates one or more merchandise lines on a cart.", - "args": [ - { - "name": "cartId", - "description": "The ID of the cart.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "lines", - "description": "The merchandise lines to update.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CartLineUpdateInput", - "ofType": null - } - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CartLinesUpdatePayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "cartNoteUpdate", - "description": "Updates the note on the cart.", - "args": [ - { - "name": "cartId", - "description": "The ID of the cart.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "note", - "description": "The note on the cart.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CartNoteUpdatePayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "cartSelectedDeliveryOptionsUpdate", - "description": "Update the selected delivery options for a delivery group.", - "args": [ - { - "name": "cartId", - "description": "The ID of the cart.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "selectedDeliveryOptions", - "description": "The selected delivery options.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CartSelectedDeliveryOptionInput", - "ofType": null - } - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CartSelectedDeliveryOptionsUpdatePayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutAttributesUpdateV2", - "description": "Updates the attributes of a checkout if `allowPartialAddresses` is `true`.", - "args": [ - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "input", - "description": "The checkout attributes to update.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CheckoutAttributesUpdateV2Input", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CheckoutAttributesUpdateV2Payload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutCompleteFree", - "description": "Completes a checkout without providing payment information. You can use this mutation for free items or items whose purchase price is covered by a gift card.", - "args": [ - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CheckoutCompleteFreePayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutCompleteWithCreditCardV2", - "description": "Completes a checkout using a credit card token from Shopify's card vault. Before you can complete checkouts using CheckoutCompleteWithCreditCardV2, you need to [_request payment processing_](https://shopify.dev/apps/channels/getting-started#request-payment-processing).", - "args": [ - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "payment", - "description": "The credit card info to apply as a payment.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CreditCardPaymentInputV2", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CheckoutCompleteWithCreditCardV2Payload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutCompleteWithTokenizedPaymentV3", - "description": "Completes a checkout with a tokenized payment.", - "args": [ - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "payment", - "description": "The info to apply as a tokenized payment.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "TokenizedPaymentInputV3", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CheckoutCompleteWithTokenizedPaymentV3Payload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutCreate", - "description": "Creates a new checkout.", - "args": [ - { - "name": "input", - "description": "The fields used to create a checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CheckoutCreateInput", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "queueToken", - "description": "The checkout queue token. Available only to selected stores.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CheckoutCreatePayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutCustomerAssociateV2", - "description": "Associates a customer to the checkout.", - "args": [ - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerAccessToken", - "description": "The customer access token of the customer to associate.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CheckoutCustomerAssociateV2Payload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutCustomerDisassociateV2", - "description": "Disassociates the current checkout customer from the checkout.", - "args": [ - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CheckoutCustomerDisassociateV2Payload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutDiscountCodeApplyV2", - "description": "Applies a discount to an existing checkout using a discount code.", - "args": [ - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "discountCode", - "description": "The discount code to apply to the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CheckoutDiscountCodeApplyV2Payload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutDiscountCodeRemove", - "description": "Removes the applied discounts from an existing checkout.", - "args": [ - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CheckoutDiscountCodeRemovePayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutEmailUpdateV2", - "description": "Updates the email on an existing checkout.", - "args": [ - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "email", - "description": "The email to update the checkout with.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CheckoutEmailUpdateV2Payload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutGiftCardRemoveV2", - "description": "Removes an applied gift card from the checkout.", - "args": [ - { - "name": "appliedGiftCardId", - "description": "The ID of the Applied Gift Card to remove from the Checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CheckoutGiftCardRemoveV2Payload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutGiftCardsAppend", - "description": "Appends gift cards to an existing checkout.", - "args": [ - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "giftCardCodes", - "description": "A list of gift card codes to append to the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CheckoutGiftCardsAppendPayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutLineItemsAdd", - "description": "Adds a list of line items to a checkout.", - "args": [ - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "lineItems", - "description": "A list of line item objects to add to the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CheckoutLineItemInput", - "ofType": null - } - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CheckoutLineItemsAddPayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutLineItemsRemove", - "description": "Removes line items from an existing checkout.", - "args": [ - { - "name": "checkoutId", - "description": "The checkout on which to remove line items.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "lineItemIds", - "description": "Line item ids to remove.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CheckoutLineItemsRemovePayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutLineItemsReplace", - "description": "Sets a list of line items to a checkout.", - "args": [ - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "lineItems", - "description": "A list of line item objects to set on the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CheckoutLineItemInput", - "ofType": null - } - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CheckoutLineItemsReplacePayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutLineItemsUpdate", - "description": "Updates line items on a checkout.", - "args": [ - { - "name": "checkoutId", - "description": "The checkout on which to update line items.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "lineItems", - "description": "Line items to update.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CheckoutLineItemUpdateInput", - "ofType": null - } - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CheckoutLineItemsUpdatePayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutShippingAddressUpdateV2", - "description": "Updates the shipping address of an existing checkout.", - "args": [ - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "shippingAddress", - "description": "The shipping address to where the line items will be shipped.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "MailingAddressInput", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CheckoutShippingAddressUpdateV2Payload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutShippingLineUpdate", - "description": "Updates the shipping lines on an existing checkout.", - "args": [ - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "shippingRateHandle", - "description": "A unique identifier to a Checkout’s shipping provider, price, and title combination, enabling the customer to select the availableShippingRates.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CheckoutShippingLineUpdatePayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerAccessTokenCreate", - "description": "Creates a customer access token.\nThe customer access token is required to modify the customer object in any way.\n", - "args": [ - { - "name": "input", - "description": "The fields used to create a customer access token.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CustomerAccessTokenCreateInput", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CustomerAccessTokenCreatePayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerAccessTokenCreateWithMultipass", - "description": "Creates a customer access token using a\n[multipass token](https://shopify.dev/api/multipass) instead of email and\npassword. A customer record is created if the customer doesn't exist. If a customer\nrecord already exists but the record is disabled, then the customer record is enabled.\n", - "args": [ - { - "name": "multipassToken", - "description": "A valid [multipass token](https://shopify.dev/api/multipass) to be authenticated.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CustomerAccessTokenCreateWithMultipassPayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerAccessTokenDelete", - "description": "Permanently destroys a customer access token.", - "args": [ - { - "name": "customerAccessToken", - "description": "The access token used to identify the customer.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CustomerAccessTokenDeletePayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerAccessTokenRenew", - "description": "Renews a customer access token.\n\nAccess token renewal must happen *before* a token expires.\nIf a token has already expired, a new one should be created instead via `customerAccessTokenCreate`.\n", - "args": [ - { - "name": "customerAccessToken", - "description": "The access token used to identify the customer.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CustomerAccessTokenRenewPayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerActivate", - "description": "Activates a customer.", - "args": [ - { - "name": "id", - "description": "Specifies the customer to activate.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "input", - "description": "The fields used to activate a customer.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CustomerActivateInput", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CustomerActivatePayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerActivateByUrl", - "description": "Activates a customer with the activation url received from `customerCreate`.", - "args": [ - { - "name": "activationUrl", - "description": "The customer activation URL.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "password", - "description": "A new password set during activation.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CustomerActivateByUrlPayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerAddressCreate", - "description": "Creates a new address for a customer.", - "args": [ - { - "name": "address", - "description": "The customer mailing address to create.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "MailingAddressInput", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerAccessToken", - "description": "The access token used to identify the customer.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CustomerAddressCreatePayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerAddressDelete", - "description": "Permanently deletes the address of an existing customer.", - "args": [ - { - "name": "customerAccessToken", - "description": "The access token used to identify the customer.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "Specifies the address to delete.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CustomerAddressDeletePayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerAddressUpdate", - "description": "Updates the address of an existing customer.", - "args": [ - { - "name": "address", - "description": "The customer’s mailing address.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "MailingAddressInput", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerAccessToken", - "description": "The access token used to identify the customer.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "Specifies the customer address to update.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CustomerAddressUpdatePayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerCreate", - "description": "Creates a new customer.", - "args": [ - { - "name": "input", - "description": "The fields used to create a new customer.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CustomerCreateInput", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CustomerCreatePayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerDefaultAddressUpdate", - "description": "Updates the default address of an existing customer.", - "args": [ - { - "name": "addressId", - "description": "ID of the address to set as the new default for the customer.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerAccessToken", - "description": "The access token used to identify the customer.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CustomerDefaultAddressUpdatePayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerRecover", - "description": "Sends a reset password email to the customer. The reset password\nemail contains a reset password URL and token that you can pass to\nthe [`customerResetByUrl`](https://shopify.dev/api/storefront/latest/mutations/customerResetByUrl) or\n[`customerReset`](https://shopify.dev/api/storefront/latest/mutations/customerReset) mutation to reset the\ncustomer password.\n\nThis mutation is throttled by IP. With authenticated access,\nyou can provide a [`Shopify-Storefront-Buyer-IP`](https://shopify.dev/api/usage/authentication#optional-ip-header) instead of the request IP.\n\nMake sure that the value provided to `Shopify-Storefront-Buyer-IP` is trusted. Unthrottled access to this\nmutation presents a security risk.\n", - "args": [ - { - "name": "email", - "description": "The email address of the customer to recover.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CustomerRecoverPayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerReset", - "description": "\"Resets a customer’s password with the token received from a reset password email. You can send a reset password email with the [`customerRecover`](https://shopify.dev/api/storefront/latest/mutations/customerRecover) mutation.\"\n", - "args": [ - { - "name": "id", - "description": "Specifies the customer to reset.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "input", - "description": "The fields used to reset a customer’s password.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CustomerResetInput", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CustomerResetPayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerResetByUrl", - "description": "\"Resets a customer’s password with the reset password URL received from a reset password email. You can send a reset password email with the [`customerRecover`](https://shopify.dev/api/storefront/latest/mutations/customerRecover) mutation.\"\n", - "args": [ - { - "name": "password", - "description": "New password that will be set as part of the reset password process.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "resetUrl", - "description": "The customer's reset password url.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CustomerResetByUrlPayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerUpdate", - "description": "Updates an existing customer.", - "args": [ - { - "name": "customer", - "description": "The customer object input.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CustomerUpdateInput", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerAccessToken", - "description": "The access token used to identify the customer.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CustomerUpdatePayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INTERFACE", - "name": "Node", - "description": "An object with an ID field to support global identification, in accordance with the\n[Relay specification](https://relay.dev/graphql/objectidentification.htm#sec-Node-Interface).\nThis interface is used by the [node](https://shopify.dev/api/admin-graphql/unstable/queries/node)\nand [nodes](https://shopify.dev/api/admin-graphql/unstable/queries/nodes) queries.\n", - "fields": [ - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": [ - { - "kind": "OBJECT", - "name": "AppliedGiftCard", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Article", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Blog", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Cart", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "CartLine", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "CheckoutLineItem", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Collection", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Comment", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "ExternalVideo", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "GenericFile", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Location", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "MailingAddress", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "MediaImage", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Menu", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "MenuItem", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Metaobject", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Model3d", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Order", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Page", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Payment", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Product", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "ProductOption", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "ProductVariant", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Shop", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "ShopPolicy", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "UrlRedirect", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Video", - "ofType": null - } - ] - }, - { - "kind": "INTERFACE", - "name": "OnlineStorePublishable", - "description": "Represents a resource that can be published to the Online Store sales channel.", - "fields": [ - { - "name": "onlineStoreUrl", - "description": "The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": [ - { - "kind": "OBJECT", - "name": "Article", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Blog", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Collection", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Page", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Product", - "ofType": null - } - ] - }, - { - "kind": "OBJECT", - "name": "Order", - "description": "An order is a customer’s completed request to purchase one or more products from a shop. An order is created when a customer completes the checkout process, during which time they provides an email address, billing address and payment information.", - "fields": [ - { - "name": "cancelReason", - "description": "The reason for the order's cancellation. Returns `null` if the order wasn't canceled.", - "args": [], - "type": { - "kind": "ENUM", - "name": "OrderCancelReason", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "canceledAt", - "description": "The date and time when the order was canceled. Returns null if the order wasn't canceled.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "currencyCode", - "description": "The code of the currency used for the payment.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "CurrencyCode", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "currentSubtotalPrice", - "description": "The subtotal of line items and their discounts, excluding line items that have been removed. Does not contain order-level discounts, duties, shipping costs, or shipping discounts. Taxes are not included unless the order is a taxes-included order.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "currentTotalDuties", - "description": "The total cost of duties for the order, including refunds.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "currentTotalPrice", - "description": "The total amount of the order, including duties, taxes and discounts, minus amounts for line items that have been removed.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "currentTotalTax", - "description": "The total of all taxes applied to the order, excluding taxes for returned line items.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customAttributes", - "description": "A list of the custom attributes added to the order.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Attribute", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerLocale", - "description": "The locale code in which this specific order happened.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerUrl", - "description": "The unique URL that the customer can use to access the order.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "discountApplications", - "description": "Discounts that have been applied on the order.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "DiscountApplicationConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "edited", - "description": "Whether the order has had any edits applied or not.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "email", - "description": "The customer's email address.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "financialStatus", - "description": "The financial status of the order.", - "args": [], - "type": { - "kind": "ENUM", - "name": "OrderFinancialStatus", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "fulfillmentStatus", - "description": "The fulfillment status for the order.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "OrderFulfillmentStatus", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "lineItems", - "description": "List of the order’s line items.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "OrderLineItemConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "metafield", - "description": "Returns a metafield found by namespace and key.", - "args": [ - { - "name": "key", - "description": "The identifier for the metafield.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "namespace", - "description": "A container for a set of metafields.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "metafields", - "description": "The metafields associated with the resource matching the supplied list of namespaces and keys.\n", - "args": [ - { - "name": "identifiers", - "description": "The list of metafields to retrieve by namespace and key.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "HasMetafieldsIdentifier", - "ofType": null - } - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "name", - "description": "Unique identifier for the order that appears on the order.\nFor example, _#1000_ or _Store1001.\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "orderNumber", - "description": "A unique numeric identifier for the order for use by shop owner and customer.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "originalTotalDuties", - "description": "The total cost of duties charged at checkout.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "originalTotalPrice", - "description": "The total price of the order before any applied edits.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "phone", - "description": "The customer's phone number for receiving SMS notifications.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "processedAt", - "description": "The date and time when the order was imported.\nThis value can be set to dates in the past when importing from other systems.\nIf no value is provided, it will be auto-generated based on current date and time.\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "shippingAddress", - "description": "The address to where the order will be shipped.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MailingAddress", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "shippingDiscountAllocations", - "description": "The discounts that have been allocated onto the shipping line by discount applications.\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "DiscountAllocation", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "statusUrl", - "description": "The unique URL for the order's status page.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "subtotalPrice", - "description": "Price of the order before shipping and taxes.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "subtotalPriceV2", - "description": "Price of the order before duties, shipping and taxes.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - }, - "isDeprecated": true, - "deprecationReason": "Use `subtotalPrice` instead." - }, - { - "name": "successfulFulfillments", - "description": "List of the order’s successful fulfillments.", - "args": [ - { - "name": "first", - "description": "Truncate the array result to this size.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Fulfillment", - "ofType": null - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "totalPrice", - "description": "The sum of all the prices of all the items in the order, duties, taxes and discounts included (must be positive).", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "totalPriceV2", - "description": "The sum of all the prices of all the items in the order, duties, taxes and discounts included (must be positive).", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": true, - "deprecationReason": "Use `totalPrice` instead." - }, - { - "name": "totalRefunded", - "description": "The total amount that has been refunded.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "totalRefundedV2", - "description": "The total amount that has been refunded.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": true, - "deprecationReason": "Use `totalRefunded` instead." - }, - { - "name": "totalShippingPrice", - "description": "The total cost of shipping.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "totalShippingPriceV2", - "description": "The total cost of shipping.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": true, - "deprecationReason": "Use `totalShippingPrice` instead." - }, - { - "name": "totalTax", - "description": "The total cost of taxes.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "totalTaxV2", - "description": "The total cost of taxes.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - }, - "isDeprecated": true, - "deprecationReason": "Use `totalTax` instead." - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "HasMetafields", - "ofType": null - }, - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "OrderCancelReason", - "description": "Represents the reason for the order's cancellation.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "CUSTOMER", - "description": "The customer wanted to cancel the order.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DECLINED", - "description": "Payment was declined.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "FRAUD", - "description": "The order was fraudulent.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "INVENTORY", - "description": "There was insufficient inventory.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "OTHER", - "description": "The order was canceled for an unlisted reason.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "OrderConnection", - "description": "An auto-generated type for paginating through multiple Orders.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "OrderEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of the nodes contained in OrderEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Order", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "totalCount", - "description": "The total count of Orders.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "UnsignedInt64", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "OrderEdge", - "description": "An auto-generated type which holds one Order and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "The item at the end of OrderEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Order", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "OrderFinancialStatus", - "description": "Represents the order's current financial status.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "AUTHORIZED", - "description": "Displayed as **Authorized**.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PAID", - "description": "Displayed as **Paid**.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PARTIALLY_PAID", - "description": "Displayed as **Partially paid**.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PARTIALLY_REFUNDED", - "description": "Displayed as **Partially refunded**.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PENDING", - "description": "Displayed as **Pending**.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "REFUNDED", - "description": "Displayed as **Refunded**.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "VOIDED", - "description": "Displayed as **Voided**.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "OrderFulfillmentStatus", - "description": "Represents the order's aggregated fulfillment status for display purposes.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "FULFILLED", - "description": "Displayed as **Fulfilled**. All of the items in the order have been fulfilled.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "IN_PROGRESS", - "description": "Displayed as **In progress**. Some of the items in the order have been fulfilled, or a request for fulfillment has been sent to the fulfillment service.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ON_HOLD", - "description": "Displayed as **On hold**. All of the unfulfilled items in this order are on hold.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "OPEN", - "description": "Displayed as **Open**. None of the items in the order have been fulfilled. Replaced by \"UNFULFILLED\" status.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PARTIALLY_FULFILLED", - "description": "Displayed as **Partially fulfilled**. Some of the items in the order have been fulfilled.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PENDING_FULFILLMENT", - "description": "Displayed as **Pending fulfillment**. A request for fulfillment of some items awaits a response from the fulfillment service. Replaced by \"IN_PROGRESS\" status.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RESTOCKED", - "description": "Displayed as **Restocked**. All of the items in the order have been restocked. Replaced by \"UNFULFILLED\" status.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SCHEDULED", - "description": "Displayed as **Scheduled**. All of the unfulfilled items in this order are scheduled for fulfillment at later time.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "UNFULFILLED", - "description": "Displayed as **Unfulfilled**. None of the items in the order have been fulfilled.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "OrderLineItem", - "description": "Represents a single line in an order. There is one line item for each distinct product variant.", - "fields": [ - { - "name": "currentQuantity", - "description": "The number of entries associated to the line item minus the items that have been removed.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customAttributes", - "description": "List of custom attributes associated to the line item.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Attribute", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "discountAllocations", - "description": "The discounts that have been allocated onto the order line item by discount applications.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "DiscountAllocation", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "discountedTotalPrice", - "description": "The total price of the line item, including discounts, and displayed in the presentment currency.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "originalTotalPrice", - "description": "The total price of the line item, not including any discounts. The total price is calculated using the original unit price multiplied by the quantity, and it is displayed in the presentment currency.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "quantity", - "description": "The number of products variants associated to the line item.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "title", - "description": "The title of the product combined with title of the variant.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "variant", - "description": "The product variant object associated to the line item.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "ProductVariant", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "OrderLineItemConnection", - "description": "An auto-generated type for paginating through multiple OrderLineItems.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "OrderLineItemEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of the nodes contained in OrderLineItemEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "OrderLineItem", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "OrderLineItemEdge", - "description": "An auto-generated type which holds one OrderLineItem and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "The item at the end of OrderLineItemEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "OrderLineItem", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "OrderSortKeys", - "description": "The set of valid sort keys for the Order query.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "ID", - "description": "Sort by the `id` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PROCESSED_AT", - "description": "Sort by the `processed_at` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RELEVANCE", - "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TOTAL_PRICE", - "description": "Sort by the `total_price` value.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Page", - "description": "Shopify merchants can create pages to hold static HTML content. Each Page object represents a custom page on the online store.", - "fields": [ - { - "name": "body", - "description": "The description of the page, complete with HTML formatting.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "HTML", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "bodySummary", - "description": "Summary of the page body.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "createdAt", - "description": "The timestamp of the page creation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "handle", - "description": "A human-friendly unique string for the page automatically generated from its title.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "metafield", - "description": "Returns a metafield found by namespace and key.", - "args": [ - { - "name": "key", - "description": "The identifier for the metafield.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "namespace", - "description": "A container for a set of metafields.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "metafields", - "description": "The metafields associated with the resource matching the supplied list of namespaces and keys.\n", - "args": [ - { - "name": "identifiers", - "description": "The list of metafields to retrieve by namespace and key.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "HasMetafieldsIdentifier", - "ofType": null - } - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "onlineStoreUrl", - "description": "The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "seo", - "description": "The page's SEO information.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "SEO", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "title", - "description": "The title of the page.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "updatedAt", - "description": "The timestamp of the latest page update.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "HasMetafields", - "ofType": null - }, - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - }, - { - "kind": "INTERFACE", - "name": "OnlineStorePublishable", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "PageConnection", - "description": "An auto-generated type for paginating through multiple Pages.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of the nodes contained in PageEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Page", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "PageEdge", - "description": "An auto-generated type which holds one Page and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "The item at the end of PageEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Page", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "PageInfo", - "description": "Returns information about pagination in a connection, in accordance with the\n[Relay specification](https://relay.dev/graphql/connections.htm#sec-undefined.PageInfo).\nFor more information, please read our [GraphQL Pagination Usage Guide](https://shopify.dev/api/usage/pagination-graphql).\n", - "fields": [ - { - "name": "endCursor", - "description": "The cursor corresponding to the last node in edges.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "hasNextPage", - "description": "Whether there are more pages to fetch following the current page.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "hasPreviousPage", - "description": "Whether there are any pages prior to the current page.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "startCursor", - "description": "The cursor corresponding to the first node in edges.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "PageSortKeys", - "description": "The set of valid sort keys for the Page query.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "ID", - "description": "Sort by the `id` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RELEVANCE", - "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TITLE", - "description": "Sort by the `title` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "UPDATED_AT", - "description": "Sort by the `updated_at` value.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Payment", - "description": "A payment applied to a checkout.", - "fields": [ - { - "name": "amount", - "description": "The amount of the payment.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "amountV2", - "description": "The amount of the payment.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": true, - "deprecationReason": "Use `amount` instead." - }, - { - "name": "billingAddress", - "description": "The billing address for the payment.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MailingAddress", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkout", - "description": "The checkout to which the payment belongs.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "creditCard", - "description": "The credit card used for the payment in the case of direct payments.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "CreditCard", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "errorMessage", - "description": "A message describing a processing error during asynchronous processing.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "idempotencyKey", - "description": "A client-side generated token to identify a payment and perform idempotent operations.\nFor more information, refer to\n[Idempotent requests](https://shopify.dev/api/usage/idempotent-requests).\n", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nextActionUrl", - "description": "The URL where the customer needs to be redirected so they can complete the 3D Secure payment flow.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ready", - "description": "Whether the payment is still processing asynchronously.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "test", - "description": "A flag to indicate if the payment is to be done in test mode for gateways that support it.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "transaction", - "description": "The actual transaction recorded by Shopify after having processed the payment with the gateway.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Transaction", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "PaymentSettings", - "description": "Settings related to payments.", - "fields": [ - { - "name": "acceptedCardBrands", - "description": "List of the card brands which the shop accepts.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "CardBrand", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "cardVaultUrl", - "description": "The url pointing to the endpoint to vault credit cards.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "countryCode", - "description": "The country where the shop is located.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "CountryCode", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "currencyCode", - "description": "The three-letter code for the shop's primary currency.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "CurrencyCode", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "enabledPresentmentCurrencies", - "description": "A list of enabled currencies (ISO 4217 format) that the shop accepts. Merchants can enable currencies from their Shopify Payments settings in the Shopify admin.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "CurrencyCode", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "shopifyPaymentsAccountId", - "description": "The shop’s Shopify Payments account id.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "supportedDigitalWallets", - "description": "List of the digital wallets which the shop supports.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "DigitalWallet", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "PaymentTokenType", - "description": "The valid values for the types of payment token.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "APPLE_PAY", - "description": "Apple Pay token type.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GOOGLE_PAY", - "description": "Google Pay token type.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SHOPIFY_PAY", - "description": "Shopify Pay token type.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "STRIPE_VAULT_TOKEN", - "description": "Stripe token type.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "VAULT", - "description": "Vault payment token type.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "PriceRangeFilter", - "description": "A filter used to view a subset of products in a collection matching a specific price range.", - "fields": null, - "inputFields": [ - { - "name": "max", - "description": "The maximum price in the range. Empty indicates no max price.", - "type": { - "kind": "SCALAR", - "name": "Float", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "min", - "description": "The minimum price in the range. Defaults to zero.", - "type": { - "kind": "SCALAR", - "name": "Float", - "ofType": null - }, - "defaultValue": "0", - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "PricingPercentageValue", - "description": "The value of the percentage pricing object.", - "fields": [ - { - "name": "percentage", - "description": "The percentage value of the object.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Float", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "UNION", - "name": "PricingValue", - "description": "The price value (fixed or percentage) for a discount application.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": [ - { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "PricingPercentageValue", - "ofType": null - } - ] - }, - { - "kind": "OBJECT", - "name": "Product", - "description": "A product represents an individual item for sale in a Shopify store. Products are often physical, but they don't have to be.\nFor example, a digital download (such as a movie, music or ebook file) also qualifies as a product, as do services (such as equipment rental, work for hire, customization of another product or an extended warranty).", - "fields": [ - { - "name": "availableForSale", - "description": "Indicates if at least one product variant is available for sale.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "collections", - "description": "List of collections a product belongs to.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CollectionConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "compareAtPriceRange", - "description": "The compare at price of the product across all variants.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "ProductPriceRange", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "createdAt", - "description": "The date and time when the product was created.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "description", - "description": "Stripped description of the product, single line with HTML tags removed.", - "args": [ - { - "name": "truncateAt", - "description": "Truncates string after the given length.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "descriptionHtml", - "description": "The description of the product, complete with HTML formatting.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "HTML", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "featuredImage", - "description": "The featured image for the product.\n\nThis field is functionally equivalent to `images(first: 1)`.\n", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Image", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "handle", - "description": "A human-friendly unique string for the Product automatically generated from its title.\nThey are used by the Liquid templating language to refer to objects.\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "images", - "description": "List of images associated with the product.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "sortKey", - "description": "Sort the underlying list by the given key.", - "type": { - "kind": "ENUM", - "name": "ProductImageSortKeys", - "ofType": null - }, - "defaultValue": "POSITION", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "ImageConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "isGiftCard", - "description": "Whether the product is a gift card.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "media", - "description": "The media associated with the product.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "sortKey", - "description": "Sort the underlying list by the given key.", - "type": { - "kind": "ENUM", - "name": "ProductMediaSortKeys", - "ofType": null - }, - "defaultValue": "POSITION", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MediaConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "metafield", - "description": "Returns a metafield found by namespace and key.", - "args": [ - { - "name": "key", - "description": "The identifier for the metafield.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "namespace", - "description": "A container for a set of metafields.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "metafields", - "description": "The metafields associated with the resource matching the supplied list of namespaces and keys.\n", - "args": [ - { - "name": "identifiers", - "description": "The list of metafields to retrieve by namespace and key.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "HasMetafieldsIdentifier", - "ofType": null - } - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "onlineStoreUrl", - "description": "The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "options", - "description": "List of product options.", - "args": [ - { - "name": "first", - "description": "Truncate the array result to this size.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "ProductOption", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "priceRange", - "description": "The price range.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "ProductPriceRange", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "productType", - "description": "A categorization that a product can be tagged with, commonly used for filtering and searching.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "publishedAt", - "description": "The date and time when the product was published to the channel.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "requiresSellingPlan", - "description": "Whether the product can only be purchased with a selling plan.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "sellingPlanGroups", - "description": "A list of a product's available selling plan groups. A selling plan group represents a selling method. For example, 'Subscribe and save' is a selling method where customers pay for goods or services per delivery. A selling plan group contains individual selling plans.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlanGroupConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "seo", - "description": "The product's SEO information.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SEO", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "tags", - "description": "A comma separated list of tags that have been added to the product.\nAdditional access scope required for private apps: unauthenticated_read_product_tags.\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "title", - "description": "The product’s title.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "totalInventory", - "description": "The total quantity of inventory in stock for this Product.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "updatedAt", - "description": "The date and time when the product was last modified.\nA product's `updatedAt` value can change for different reasons. For example, if an order\nis placed for a product that has inventory tracking set up, then the inventory adjustment\nis counted as an update.\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "variantBySelectedOptions", - "description": "Find a product’s variant based on its selected options.\nThis is useful for converting a user’s selection of product options into a single matching variant.\nIf there is not a variant for the selected options, `null` will be returned.\n", - "args": [ - { - "name": "selectedOptions", - "description": "The input fields used for a selected option.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "SelectedOptionInput", - "ofType": null - } - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "ProductVariant", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "variants", - "description": "List of the product’s variants.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "sortKey", - "description": "Sort the underlying list by the given key.", - "type": { - "kind": "ENUM", - "name": "ProductVariantSortKeys", - "ofType": null - }, - "defaultValue": "POSITION", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "ProductVariantConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "vendor", - "description": "The product’s vendor name.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "HasMetafields", - "ofType": null - }, - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - }, - { - "kind": "INTERFACE", - "name": "OnlineStorePublishable", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "ProductCollectionSortKeys", - "description": "The set of valid sort keys for the ProductCollection query.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "BEST_SELLING", - "description": "Sort by the `best-selling` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "COLLECTION_DEFAULT", - "description": "Sort by the `collection-default` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CREATED", - "description": "Sort by the `created` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ID", - "description": "Sort by the `id` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MANUAL", - "description": "Sort by the `manual` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PRICE", - "description": "Sort by the `price` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RELEVANCE", - "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TITLE", - "description": "Sort by the `title` value.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "ProductConnection", - "description": "An auto-generated type for paginating through multiple Products.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "ProductEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "filters", - "description": "A list of available filters.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Filter", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of the nodes contained in ProductEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Product", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "ProductEdge", - "description": "An auto-generated type which holds one Product and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "The item at the end of ProductEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Product", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "ProductFilter", - "description": "A filter used to view a subset of products in a collection.", - "fields": null, - "inputFields": [ - { - "name": "available", - "description": "Filter on if the product is available for sale.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "price", - "description": "A range of prices to filter with-in.", - "type": { - "kind": "INPUT_OBJECT", - "name": "PriceRangeFilter", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "productMetafield", - "description": "A product metafield to filter on.", - "type": { - "kind": "INPUT_OBJECT", - "name": "MetafieldFilter", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "productType", - "description": "The product type to filter on.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "productVendor", - "description": "The product vendor to filter on.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "tag", - "description": "A product tag to filter on.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "variantMetafield", - "description": "A variant metafield to filter on.", - "type": { - "kind": "INPUT_OBJECT", - "name": "MetafieldFilter", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "variantOption", - "description": "A variant option to filter on.", - "type": { - "kind": "INPUT_OBJECT", - "name": "VariantOptionFilter", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "ProductImageSortKeys", - "description": "The set of valid sort keys for the ProductImage query.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "CREATED_AT", - "description": "Sort by the `created_at` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ID", - "description": "Sort by the `id` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "POSITION", - "description": "Sort by the `position` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RELEVANCE", - "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "ProductMediaSortKeys", - "description": "The set of valid sort keys for the ProductMedia query.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "ID", - "description": "Sort by the `id` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "POSITION", - "description": "Sort by the `position` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RELEVANCE", - "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "ProductOption", - "description": "Product property names like \"Size\", \"Color\", and \"Material\" that the customers can select.\nVariants are selected based on permutations of these options.\n255 characters limit each.\n", - "fields": [ - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "name", - "description": "The product option’s name.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "values", - "description": "The corresponding value to the product option name.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "ProductPriceRange", - "description": "The price range of the product.", - "fields": [ - { - "name": "maxVariantPrice", - "description": "The highest variant's price.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "minVariantPrice", - "description": "The lowest variant's price.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "ProductSortKeys", - "description": "The set of valid sort keys for the Product query.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "BEST_SELLING", - "description": "Sort by the `best_selling` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CREATED_AT", - "description": "Sort by the `created_at` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ID", - "description": "Sort by the `id` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PRICE", - "description": "Sort by the `price` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PRODUCT_TYPE", - "description": "Sort by the `product_type` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RELEVANCE", - "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TITLE", - "description": "Sort by the `title` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "UPDATED_AT", - "description": "Sort by the `updated_at` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "VENDOR", - "description": "Sort by the `vendor` value.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "ProductVariant", - "description": "A product variant represents a different version of a product, such as differing sizes or differing colors.", - "fields": [ - { - "name": "availableForSale", - "description": "Indicates if the product variant is available for sale.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "barcode", - "description": "The barcode (for example, ISBN, UPC, or GTIN) associated with the variant.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "compareAtPrice", - "description": "The compare at price of the variant. This can be used to mark a variant as on sale, when `compareAtPrice` is higher than `price`.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "compareAtPriceV2", - "description": "The compare at price of the variant. This can be used to mark a variant as on sale, when `compareAtPriceV2` is higher than `priceV2`.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - }, - "isDeprecated": true, - "deprecationReason": "Use `compareAtPrice` instead." - }, - { - "name": "currentlyNotInStock", - "description": "Whether a product is out of stock but still available for purchase (used for backorders).", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "image", - "description": "Image associated with the product variant. This field falls back to the product image if no image is available.\n", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Image", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "metafield", - "description": "Returns a metafield found by namespace and key.", - "args": [ - { - "name": "key", - "description": "The identifier for the metafield.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "namespace", - "description": "A container for a set of metafields.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "metafields", - "description": "The metafields associated with the resource matching the supplied list of namespaces and keys.\n", - "args": [ - { - "name": "identifiers", - "description": "The list of metafields to retrieve by namespace and key.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "HasMetafieldsIdentifier", - "ofType": null - } - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "price", - "description": "The product variant’s price.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "priceV2", - "description": "The product variant’s price.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": true, - "deprecationReason": "Use `price` instead." - }, - { - "name": "product", - "description": "The product object that the product variant belongs to.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Product", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "quantityAvailable", - "description": "The total sellable quantity of the variant for online sales channels.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "requiresShipping", - "description": "Whether a customer needs to provide a shipping address when placing an order for the product variant.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "selectedOptions", - "description": "List of product options applied to the variant.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SelectedOption", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "sellingPlanAllocations", - "description": "Represents an association between a variant and a selling plan. Selling plan allocations describe which selling plans are available for each variant, and what their impact is on pricing.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlanAllocationConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "sku", - "description": "The SKU (stock keeping unit) associated with the variant.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "storeAvailability", - "description": "The in-store pickup availability of this variant by location.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "near", - "description": "Used to sort results based on proximity to the provided location.", - "type": { - "kind": "INPUT_OBJECT", - "name": "GeoCoordinateInput", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "StoreAvailabilityConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "title", - "description": "The product variant’s title.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "unitPrice", - "description": "The unit price value for the variant based on the variant's measurement.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "unitPriceMeasurement", - "description": "The unit price measurement for the variant.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "UnitPriceMeasurement", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "weight", - "description": "The weight of the product variant in the unit system specified with `weight_unit`.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "Float", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "weightUnit", - "description": "Unit of measurement for weight.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "WeightUnit", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "HasMetafields", - "ofType": null - }, - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "ProductVariantConnection", - "description": "An auto-generated type for paginating through multiple ProductVariants.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "ProductVariantEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of the nodes contained in ProductVariantEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "ProductVariant", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "ProductVariantEdge", - "description": "An auto-generated type which holds one ProductVariant and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "The item at the end of ProductVariantEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "ProductVariant", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "ProductVariantSortKeys", - "description": "The set of valid sort keys for the ProductVariant query.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "ID", - "description": "Sort by the `id` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "POSITION", - "description": "Sort by the `position` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RELEVANCE", - "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SKU", - "description": "Sort by the `sku` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TITLE", - "description": "Sort by the `title` value.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "QueryRoot", - "description": "The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start.", - "fields": [ - { - "name": "articles", - "description": "List of the shop's articles.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "query", - "description": "Supported filter parameters:\n - `author`\n - `blog_title`\n - `created_at`\n - `tag`\n - `tag_not`\n - `updated_at`\n\nSee the detailed [search syntax](https://shopify.dev/api/usage/search-syntax)\nfor more information about using filters.\n", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "sortKey", - "description": "Sort the underlying list by the given key.", - "type": { - "kind": "ENUM", - "name": "ArticleSortKeys", - "ofType": null - }, - "defaultValue": "ID", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "ArticleConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "blog", - "description": "Fetch a specific `Blog` by one of its unique attributes.", - "args": [ - { - "name": "handle", - "description": "The handle of the `Blog`.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "The ID of the `Blog`.", - "type": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Blog", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "blogByHandle", - "description": "Find a blog by its handle.", - "args": [ - { - "name": "handle", - "description": "The handle of the blog.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Blog", - "ofType": null - }, - "isDeprecated": true, - "deprecationReason": "Use `blog` instead." - }, - { - "name": "blogs", - "description": "List of the shop's blogs.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "query", - "description": "Supported filter parameters:\n - `created_at`\n - `handle`\n - `title`\n - `updated_at`\n\nSee the detailed [search syntax](https://shopify.dev/api/usage/search-syntax)\nfor more information about using filters.\n", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "sortKey", - "description": "Sort the underlying list by the given key.", - "type": { - "kind": "ENUM", - "name": "BlogSortKeys", - "ofType": null - }, - "defaultValue": "ID", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "BlogConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "cart", - "description": "Retrieve a cart by its ID. For more information, refer to\n[Manage a cart with the Storefront API](https://shopify.dev/custom-storefronts/cart/manage).\n", - "args": [ - { - "name": "id", - "description": "The ID of the cart.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Cart", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "collection", - "description": "Fetch a specific `Collection` by one of its unique attributes.", - "args": [ - { - "name": "handle", - "description": "The handle of the `Collection`.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "The ID of the `Collection`.", - "type": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Collection", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "collectionByHandle", - "description": "Find a collection by its handle.", - "args": [ - { - "name": "handle", - "description": "The handle of the collection.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Collection", - "ofType": null - }, - "isDeprecated": true, - "deprecationReason": "Use `collection` instead." - }, - { - "name": "collections", - "description": "List of the shop’s collections.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "query", - "description": "Supported filter parameters:\n - `collection_type`\n - `title`\n - `updated_at`\n\nSee the detailed [search syntax](https://shopify.dev/api/usage/search-syntax)\nfor more information about using filters.\n", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "sortKey", - "description": "Sort the underlying list by the given key.", - "type": { - "kind": "ENUM", - "name": "CollectionSortKeys", - "ofType": null - }, - "defaultValue": "ID", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CollectionConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customer", - "description": "Find a customer by its access token.", - "args": [ - { - "name": "customerAccessToken", - "description": "The customer access token.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Customer", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "localization", - "description": "Returns the localized experiences configured for the shop.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Localization", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "locations", - "description": "List of the shop's locations that support in-store pickup.\n\nWhen sorting by distance, you must specify a location via the `near` argument.\n", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "near", - "description": "Used to sort results based on proximity to the provided location.", - "type": { - "kind": "INPUT_OBJECT", - "name": "GeoCoordinateInput", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "sortKey", - "description": "Sort the underlying list by the given key.", - "type": { - "kind": "ENUM", - "name": "LocationSortKeys", - "ofType": null - }, - "defaultValue": "ID", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "LocationConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "menu", - "description": "A storefront menu.", - "args": [ - { - "name": "handle", - "description": "Returns a storefront menu by the specified handle.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Menu", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "metaobject", - "description": "Fetch a specific Metaobject by one of its unique identifiers.", - "args": [ - { - "name": "handle", - "description": "The handle and type of the metaobject.", - "type": { - "kind": "INPUT_OBJECT", - "name": "MetaobjectHandleInput", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "The ID of the metaobject.", - "type": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Metaobject", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "metaobjects", - "description": "All active metaobjects for the shop.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "sortKey", - "description": "The key of a field to sort with. Supports \"id\" and \"updated_at\".", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "type", - "description": "The type of metaobject to retrieve.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MetaobjectConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "Returns a specific node by ID.", - "args": [ - { - "name": "id", - "description": "The ID of the Node to return.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "Returns the list of nodes with the given IDs.", - "args": [ - { - "name": "ids", - "description": "The IDs of the Nodes to return.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "page", - "description": "Fetch a specific `Page` by one of its unique attributes.", - "args": [ - { - "name": "handle", - "description": "The handle of the `Page`.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "The ID of the `Page`.", - "type": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Page", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageByHandle", - "description": "Find a page by its handle.", - "args": [ - { - "name": "handle", - "description": "The handle of the page.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Page", - "ofType": null - }, - "isDeprecated": true, - "deprecationReason": "Use `page` instead." - }, - { - "name": "pages", - "description": "List of the shop's pages.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "query", - "description": "Supported filter parameters:\n - `created_at`\n - `handle`\n - `title`\n - `updated_at`\n\nSee the detailed [search syntax](https://shopify.dev/api/usage/search-syntax)\nfor more information about using filters.\n", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "sortKey", - "description": "Sort the underlying list by the given key.", - "type": { - "kind": "ENUM", - "name": "PageSortKeys", - "ofType": null - }, - "defaultValue": "ID", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "product", - "description": "Fetch a specific `Product` by one of its unique attributes.", - "args": [ - { - "name": "handle", - "description": "The handle of the `Product`.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "The ID of the `Product`.", - "type": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Product", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "productByHandle", - "description": "Find a product by its handle.", - "args": [ - { - "name": "handle", - "description": "A unique string that identifies the product. Handles are automatically generated based on the product's title, and are always lowercase. Whitespace and special characters are replaced with a hyphen: `-`. If there are multiple consecutive whitespace or special characters, then they're replaced with a single hyphen. Whitespace or special characters at the beginning are removed. If a duplicate product title is used, then the handle is auto-incremented by one. For example, if you had two products called `Potion`, then their handles would be `potion` and `potion-1`. After a product has been created, changing the product title doesn't update the handle.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Product", - "ofType": null - }, - "isDeprecated": true, - "deprecationReason": "Use `product` instead." - }, - { - "name": "productRecommendations", - "description": "Find recommended products related to a given `product_id`.\nTo learn more about how recommendations are generated, see\n[*Showing product recommendations on product pages*](https://help.shopify.com/themes/development/recommended-products).\n", - "args": [ - { - "name": "productId", - "description": "The id of the product.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Product", - "ofType": null - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "productTags", - "description": "Tags added to products.\nAdditional access scope required: unauthenticated_read_product_tags.\n", - "args": [ - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "StringConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "productTypes", - "description": "List of product types for the shop's products that are published to your app.", - "args": [ - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "StringConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "products", - "description": "List of the shop’s products.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "query", - "description": "Supported filter parameters:\n - `available_for_sale`\n - `created_at`\n - `product_type`\n - `tag`\n - `tag_not`\n - `title`\n - `updated_at`\n - `variants.price`\n - `vendor`\n\nSee the detailed [search syntax](https://shopify.dev/api/usage/search-syntax)\nfor more information about using filters.\n", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "sortKey", - "description": "Sort the underlying list by the given key.", - "type": { - "kind": "ENUM", - "name": "ProductSortKeys", - "ofType": null - }, - "defaultValue": "ID", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "ProductConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "publicApiVersions", - "description": "The list of public Storefront API versions, including supported, release candidate and unstable versions.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "ApiVersion", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "shop", - "description": "The shop associated with the storefront access token.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Shop", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "urlRedirects", - "description": "A list of redirects for a shop.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "query", - "description": "Supported filter parameters:\n - `created_at`\n - `path`\n - `target`\n\nSee the detailed [search syntax](https://shopify.dev/api/usage/search-syntax)\nfor more information about using filters.\n", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UrlRedirectConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SEO", - "description": "SEO information.", - "fields": [ - { - "name": "description", - "description": "The meta description.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "title", - "description": "The SEO title.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "ScriptDiscountApplication", - "description": "Script discount applications capture the intentions of a discount that\nwas created by a Shopify Script.\n", - "fields": [ - { - "name": "allocationMethod", - "description": "The method by which the discount's value is allocated to its entitled items.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "DiscountApplicationAllocationMethod", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "targetSelection", - "description": "Which lines of targetType that the discount is allocated over.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "DiscountApplicationTargetSelection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "targetType", - "description": "The type of line that the discount is applicable towards.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "DiscountApplicationTargetType", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "title", - "description": "The title of the application as defined by the Script.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "value", - "description": "The value of the discount application.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "UNION", - "name": "PricingValue", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "DiscountApplication", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SelectedOption", - "description": "Properties used by customers to select a product variant.\nProducts can have multiple options, like different sizes or colors.\n", - "fields": [ - { - "name": "name", - "description": "The product option’s name.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "value", - "description": "The product option’s value.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "SelectedOptionInput", - "description": "Specifies the input fields required for a selected option.", - "fields": null, - "inputFields": [ - { - "name": "name", - "description": "The product option’s name.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "value", - "description": "The product option’s value.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SellingPlan", - "description": "Represents how products and variants can be sold and purchased.", - "fields": [ - { - "name": "checkoutCharge", - "description": "The initial payment due for the purchase.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlanCheckoutCharge", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "description", - "description": "The description of the selling plan.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "name", - "description": "The name of the selling plan. For example, '6 weeks of prepaid granola, delivered weekly'.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "options", - "description": "The selling plan options available in the drop-down list in the storefront. For example, 'Delivery every week' or 'Delivery every 2 weeks' specifies the delivery frequency options for the product. Individual selling plans contribute their options to the associated selling plan group. For example, a selling plan group might have an option called `option1: Delivery every`. One selling plan in that group could contribute `option1: 2 weeks` with the pricing for that option, and another selling plan could contribute `option1: 4 weeks`, with different pricing.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlanOption", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "priceAdjustments", - "description": "The price adjustments that a selling plan makes when a variant is purchased with a selling plan.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlanPriceAdjustment", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "recurringDeliveries", - "description": "Whether purchasing the selling plan will result in multiple deliveries.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanAllocation", - "description": "Represents an association between a variant and a selling plan. Selling plan allocations describe the options offered for each variant, and the price of the variant when purchased with a selling plan.", - "fields": [ - { - "name": "checkoutChargeAmount", - "description": "The checkout charge amount due for the purchase.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "priceAdjustments", - "description": "A list of price adjustments, with a maximum of two. When there are two, the first price adjustment goes into effect at the time of purchase, while the second one starts after a certain number of orders. A price adjustment represents how a selling plan affects pricing when a variant is purchased with a selling plan. Prices display in the customer's currency if the shop is configured for it.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlanAllocationPriceAdjustment", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "remainingBalanceChargeAmount", - "description": "The remaining balance charge amount due for the purchase.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "sellingPlan", - "description": "A representation of how products and variants can be sold and purchased. For example, an individual selling plan could be '6 weeks of prepaid granola, delivered weekly'.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlan", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanAllocationConnection", - "description": "An auto-generated type for paginating through multiple SellingPlanAllocations.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlanAllocationEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of the nodes contained in SellingPlanAllocationEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlanAllocation", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanAllocationEdge", - "description": "An auto-generated type which holds one SellingPlanAllocation and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "The item at the end of SellingPlanAllocationEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlanAllocation", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanAllocationPriceAdjustment", - "description": "The resulting prices for variants when they're purchased with a specific selling plan.", - "fields": [ - { - "name": "compareAtPrice", - "description": "The price of the variant when it's purchased without a selling plan for the same number of deliveries. For example, if a customer purchases 6 deliveries of $10.00 granola separately, then the price is 6 x $10.00 = $60.00.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "perDeliveryPrice", - "description": "The effective price for a single delivery. For example, for a prepaid subscription plan that includes 6 deliveries at the price of $48.00, the per delivery price is $8.00.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "price", - "description": "The price of the variant when it's purchased with a selling plan For example, for a prepaid subscription plan that includes 6 deliveries of $10.00 granola, where the customer gets 20% off, the price is 6 x $10.00 x 0.80 = $48.00.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "unitPrice", - "description": "The resulting price per unit for the variant associated with the selling plan. If the variant isn't sold by quantity or measurement, then this field returns `null`.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanCheckoutCharge", - "description": "The initial payment due for the purchase.", - "fields": [ - { - "name": "type", - "description": "The charge type for the checkout charge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "SellingPlanCheckoutChargeType", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "value", - "description": "The charge value for the checkout charge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "UNION", - "name": "SellingPlanCheckoutChargeValue", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanCheckoutChargePercentageValue", - "description": "The percentage value of the price used for checkout charge.", - "fields": [ - { - "name": "percentage", - "description": "The percentage value of the price used for checkout charge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Float", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "SellingPlanCheckoutChargeType", - "description": "The checkout charge when the full amount isn't charged at checkout.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "PERCENTAGE", - "description": "The checkout charge is a percentage of the product or variant price.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PRICE", - "description": "The checkout charge is a fixed price amount.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "UNION", - "name": "SellingPlanCheckoutChargeValue", - "description": "The portion of the price to be charged at checkout.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": [ - { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanCheckoutChargePercentageValue", - "ofType": null - } - ] - }, - { - "kind": "OBJECT", - "name": "SellingPlanConnection", - "description": "An auto-generated type for paginating through multiple SellingPlans.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlanEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of the nodes contained in SellingPlanEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlan", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanEdge", - "description": "An auto-generated type which holds one SellingPlan and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "The item at the end of SellingPlanEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlan", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanFixedAmountPriceAdjustment", - "description": "A fixed amount that's deducted from the original variant price. For example, $10.00 off.", - "fields": [ - { - "name": "adjustmentAmount", - "description": "The money value of the price adjustment.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanFixedPriceAdjustment", - "description": "A fixed price adjustment for a variant that's purchased with a selling plan.", - "fields": [ - { - "name": "price", - "description": "A new price of the variant when it's purchased with the selling plan.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanGroup", - "description": "Represents a selling method. For example, 'Subscribe and save' is a selling method where customers pay for goods or services per delivery. A selling plan group contains individual selling plans.", - "fields": [ - { - "name": "appName", - "description": "A display friendly name for the app that created the selling plan group.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "name", - "description": "The name of the selling plan group.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "options", - "description": "Represents the selling plan options available in the drop-down list in the storefront. For example, 'Delivery every week' or 'Delivery every 2 weeks' specifies the delivery frequency options for the product.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlanGroupOption", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "sellingPlans", - "description": "A list of selling plans in a selling plan group. A selling plan is a representation of how products and variants can be sold and purchased. For example, an individual selling plan could be '6 weeks of prepaid granola, delivered weekly'.", - "args": [ - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlanConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanGroupConnection", - "description": "An auto-generated type for paginating through multiple SellingPlanGroups.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlanGroupEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of the nodes contained in SellingPlanGroupEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlanGroup", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanGroupEdge", - "description": "An auto-generated type which holds one SellingPlanGroup and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "The item at the end of SellingPlanGroupEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlanGroup", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanGroupOption", - "description": "Represents an option on a selling plan group that's available in the drop-down list in the storefront.\n\nIndividual selling plans contribute their options to the associated selling plan group. For example, a selling plan group might have an option called `option1: Delivery every`. One selling plan in that group could contribute `option1: 2 weeks` with the pricing for that option, and another selling plan could contribute `option1: 4 weeks`, with different pricing.", - "fields": [ - { - "name": "name", - "description": "The name of the option. For example, 'Delivery every'.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "values", - "description": "The values for the options specified by the selling plans in the selling plan group. For example, '1 week', '2 weeks', '3 weeks'.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanOption", - "description": "An option provided by a Selling Plan.", - "fields": [ - { - "name": "name", - "description": "The name of the option (ie \"Delivery every\").", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "value", - "description": "The value of the option (ie \"Month\").", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanPercentagePriceAdjustment", - "description": "A percentage amount that's deducted from the original variant price. For example, 10% off.", - "fields": [ - { - "name": "adjustmentPercentage", - "description": "The percentage value of the price adjustment.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanPriceAdjustment", - "description": "Represents by how much the price of a variant associated with a selling plan is adjusted. Each variant can have up to two price adjustments. If a variant has multiple price adjustments, then the first price adjustment applies when the variant is initially purchased. The second price adjustment applies after a certain number of orders (specified by the `orderCount` field) are made. If a selling plan doesn't have any price adjustments, then the unadjusted price of the variant is the effective price.", - "fields": [ - { - "name": "adjustmentValue", - "description": "The type of price adjustment. An adjustment value can have one of three types: percentage, amount off, or a new price.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "UNION", - "name": "SellingPlanPriceAdjustmentValue", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "orderCount", - "description": "The number of orders that the price adjustment applies to. If the price adjustment always applies, then this field is `null`.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "UNION", - "name": "SellingPlanPriceAdjustmentValue", - "description": "Represents by how much the price of a variant associated with a selling plan is adjusted. Each variant can have up to two price adjustments.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": [ - { - "kind": "OBJECT", - "name": "SellingPlanFixedAmountPriceAdjustment", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanFixedPriceAdjustment", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanPercentagePriceAdjustment", - "ofType": null - } - ] - }, - { - "kind": "OBJECT", - "name": "ShippingRate", - "description": "A shipping rate to be applied to a checkout.", - "fields": [ - { - "name": "handle", - "description": "Human-readable unique identifier for this shipping rate.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "price", - "description": "Price of this shipping rate.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "priceV2", - "description": "Price of this shipping rate.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": true, - "deprecationReason": "Use `price` instead." - }, - { - "name": "title", - "description": "Title of this shipping rate.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Shop", - "description": "Shop represents a collection of the general settings and information about the shop.", - "fields": [ - { - "name": "brand", - "description": "The shop's branding configuration.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Brand", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "description", - "description": "A description of the shop.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "metafield", - "description": "Returns a metafield found by namespace and key.", - "args": [ - { - "name": "key", - "description": "The identifier for the metafield.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "namespace", - "description": "A container for a set of metafields.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "metafields", - "description": "The metafields associated with the resource matching the supplied list of namespaces and keys.\n", - "args": [ - { - "name": "identifiers", - "description": "The list of metafields to retrieve by namespace and key.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "HasMetafieldsIdentifier", - "ofType": null - } - } - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "moneyFormat", - "description": "A string representing the way currency is formatted when the currency isn’t specified.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "name", - "description": "The shop’s name.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "paymentSettings", - "description": "Settings related to payments.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PaymentSettings", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "primaryDomain", - "description": "The primary domain of the shop’s Online Store.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Domain", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "privacyPolicy", - "description": "The shop’s privacy policy.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "ShopPolicy", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "refundPolicy", - "description": "The shop’s refund policy.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "ShopPolicy", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "shippingPolicy", - "description": "The shop’s shipping policy.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "ShopPolicy", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "shipsToCountries", - "description": "Countries that the shop ships to.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "CountryCode", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "subscriptionPolicy", - "description": "The shop’s subscription policy.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "ShopPolicyWithDefault", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "termsOfService", - "description": "The shop’s terms of service.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "ShopPolicy", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "HasMetafields", - "ofType": null - }, - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "ShopPolicy", - "description": "Policy that a merchant has configured for their store, such as their refund or privacy policy.", - "fields": [ - { - "name": "body", - "description": "Policy text, maximum size of 64kb.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "handle", - "description": "Policy’s handle.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "title", - "description": "Policy’s title.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "url", - "description": "Public URL to the policy.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "ShopPolicyWithDefault", - "description": "A policy for the store that comes with a default value, such as a subscription policy.\nIf the merchant hasn't configured a policy for their store, then the policy will return the default value.\nOtherwise, the policy will return the merchant-configured value.\n", - "fields": [ - { - "name": "body", - "description": "The text of the policy. Maximum size: 64KB.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "handle", - "description": "The handle of the policy.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "The unique identifier of the policy. A default policy doesn't have an ID.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "title", - "description": "The title of the policy.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "url", - "description": "Public URL to the policy.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "StoreAvailability", - "description": "The availability of a product variant at a particular location.\nLocal pick-up must be enabled in the store's shipping settings, otherwise this will return an empty result.\n", - "fields": [ - { - "name": "available", - "description": "Whether the product variant is in-stock at this location.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "location", - "description": "The location where this product variant is stocked at.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Location", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pickUpTime", - "description": "Returns the estimated amount of time it takes for pickup to be ready (Example: Usually ready in 24 hours).", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "StoreAvailabilityConnection", - "description": "An auto-generated type for paginating through multiple StoreAvailabilities.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "StoreAvailabilityEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of the nodes contained in StoreAvailabilityEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "StoreAvailability", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "StoreAvailabilityEdge", - "description": "An auto-generated type which holds one StoreAvailability and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "The item at the end of StoreAvailabilityEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "StoreAvailability", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "SCALAR", - "name": "String", - "description": "The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "StringConnection", - "description": "An auto-generated type for paginating through a list of Strings.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "StringEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "StringEdge", - "description": "An auto-generated type which holds one String and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "The item at the end of StringEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "TokenizedPaymentInputV3", - "description": "Specifies the fields required to complete a checkout with\na tokenized payment.\n", - "fields": null, - "inputFields": [ - { - "name": "billingAddress", - "description": "The billing address for the payment.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "MailingAddressInput", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "idempotencyKey", - "description": "A unique client generated key used to avoid duplicate charges. When a duplicate payment is found, the original is returned instead of creating a new one. For more information, refer to [Idempotent requests](https://shopify.dev/api/usage/idempotent-requests).", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "identifier", - "description": "Public Hash Key used for AndroidPay payments only.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "paymentAmount", - "description": "The amount and currency of the payment.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "MoneyInput", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "paymentData", - "description": "A simple string or JSON containing the required payment data for the tokenized payment.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "test", - "description": "Whether to execute the payment in test mode, if possible. Test mode is not supported in production stores. Defaults to `false`.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "type", - "description": "The type of payment token.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "PaymentTokenType", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Transaction", - "description": "An object representing exchange of money for a product or service.", - "fields": [ - { - "name": "amount", - "description": "The amount of money that the transaction was for.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "amountV2", - "description": "The amount of money that the transaction was for.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": true, - "deprecationReason": "Use `amount` instead." - }, - { - "name": "kind", - "description": "The kind of the transaction.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "TransactionKind", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "status", - "description": "The status of the transaction.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "TransactionStatus", - "ofType": null - } - }, - "isDeprecated": true, - "deprecationReason": "Use `statusV2` instead." - }, - { - "name": "statusV2", - "description": "The status of the transaction.", - "args": [], - "type": { - "kind": "ENUM", - "name": "TransactionStatus", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "test", - "description": "Whether the transaction was done in test mode or not.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "TransactionKind", - "description": "The different kinds of order transactions.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "AUTHORIZATION", - "description": "An amount reserved against the cardholder's funding source.\nMoney does not change hands until the authorization is captured.\n", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CAPTURE", - "description": "A transfer of the money that was reserved during the authorization stage.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CHANGE", - "description": "Money returned to the customer when they have paid too much.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "EMV_AUTHORIZATION", - "description": "An authorization for a payment taken with an EMV credit card reader.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SALE", - "description": "An authorization and capture performed together in a single step.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "TransactionStatus", - "description": "Transaction statuses describe the status of a transaction.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "ERROR", - "description": "There was an error while processing the transaction.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "FAILURE", - "description": "The transaction failed.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PENDING", - "description": "The transaction is pending.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SUCCESS", - "description": "The transaction succeeded.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "SCALAR", - "name": "URL", - "description": "Represents an [RFC 3986](https://datatracker.ietf.org/doc/html/rfc3986) and\n[RFC 3987](https://datatracker.ietf.org/doc/html/rfc3987)-compliant URI string.\n\nFor example, `\"https://johns-apparel.myshopify.com\"` is a valid URL. It includes a scheme (`https`) and a host\n(`johns-apparel.myshopify.com`).\n", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "UnitPriceMeasurement", - "description": "The measurement used to calculate a unit price for a product variant (e.g. $9.99 / 100ml).\n", - "fields": [ - { - "name": "measuredType", - "description": "The type of unit of measurement for the unit price measurement.", - "args": [], - "type": { - "kind": "ENUM", - "name": "UnitPriceMeasurementMeasuredType", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "quantityUnit", - "description": "The quantity unit for the unit price measurement.", - "args": [], - "type": { - "kind": "ENUM", - "name": "UnitPriceMeasurementMeasuredUnit", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "quantityValue", - "description": "The quantity value for the unit price measurement.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Float", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "referenceUnit", - "description": "The reference unit for the unit price measurement.", - "args": [], - "type": { - "kind": "ENUM", - "name": "UnitPriceMeasurementMeasuredUnit", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "referenceValue", - "description": "The reference value for the unit price measurement.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "UnitPriceMeasurementMeasuredType", - "description": "The accepted types of unit of measurement.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "AREA", - "description": "Unit of measurements representing areas.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LENGTH", - "description": "Unit of measurements representing lengths.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "VOLUME", - "description": "Unit of measurements representing volumes.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "WEIGHT", - "description": "Unit of measurements representing weights.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "UnitPriceMeasurementMeasuredUnit", - "description": "The valid units of measurement for a unit price measurement.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "CL", - "description": "100 centiliters equals 1 liter.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CM", - "description": "100 centimeters equals 1 meter.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "G", - "description": "Metric system unit of weight.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KG", - "description": "1 kilogram equals 1000 grams.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "L", - "description": "Metric system unit of volume.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "M", - "description": "Metric system unit of length.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "M2", - "description": "Metric system unit of area.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "M3", - "description": "1 cubic meter equals 1000 liters.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MG", - "description": "1000 milligrams equals 1 gram.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ML", - "description": "1000 milliliters equals 1 liter.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MM", - "description": "1000 millimeters equals 1 meter.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "UnitSystem", - "description": "Systems of weights and measures.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "IMPERIAL_SYSTEM", - "description": "Imperial system of weights and measures.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "METRIC_SYSTEM", - "description": "Metric system of weights and measures.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "SCALAR", - "name": "UnsignedInt64", - "description": "An unsigned 64-bit integer. Represents whole numeric values between 0 and 2^64 - 1 encoded as a string of base-10 digits.\n\nExample value: `\"50\"`.\n", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "UrlRedirect", - "description": "A redirect on the online store.", - "fields": [ - { - "name": "id", - "description": "The ID of the URL redirect.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "path", - "description": "The old path to be redirected from. When the user visits this path, they'll be redirected to the target location.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "target", - "description": "The target location where the user will be redirected to.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "UrlRedirectConnection", - "description": "An auto-generated type for paginating through multiple UrlRedirects.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UrlRedirectEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of the nodes contained in UrlRedirectEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UrlRedirect", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "UrlRedirectEdge", - "description": "An auto-generated type which holds one UrlRedirect and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "The item at the end of UrlRedirectEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UrlRedirect", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "UserError", - "description": "Represents an error in the input of a mutation.", - "fields": [ - { - "name": "field", - "description": "The path to the input field that caused the error.", - "args": [], - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "message", - "description": "The error message.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "DisplayableError", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "VariantOptionFilter", - "description": "A filter used to view a subset of products in a collection matching a specific variant option.", - "fields": null, - "inputFields": [ - { - "name": "name", - "description": "The name of the variant option to filter on.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "value", - "description": "The value of the variant option to filter on.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Video", - "description": "Represents a Shopify hosted video.", - "fields": [ - { - "name": "alt", - "description": "A word or phrase to share the nature or contents of a media.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A globally-unique identifier.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "mediaContentType", - "description": "The media content type.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "MediaContentType", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "previewImage", - "description": "The preview image for the media.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Image", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "sources", - "description": "The sources for a video.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "VideoSource", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "Media", - "ofType": null - }, - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "VideoSource", - "description": "Represents a source for a Shopify hosted video.", - "fields": [ - { - "name": "format", - "description": "The format of the video source.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "height", - "description": "The height of the video.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "mimeType", - "description": "The video MIME type.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "url", - "description": "The URL of the video.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "width", - "description": "The width of the video.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "WeightUnit", - "description": "Units of measurement for weight.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "GRAMS", - "description": "Metric system unit of mass.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KILOGRAMS", - "description": "1 kilogram equals 1000 grams.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "OUNCES", - "description": "Imperial system unit of mass.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "POUNDS", - "description": "1 pound equals 16 ounces.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "__Directive", - "description": "A Directive provides a way to describe alternate runtime execution and type validation behavior in a GraphQL document.\n\nIn some cases, you need to provide options to alter GraphQL's execution behavior in ways field arguments will not suffice, such as conditionally including or skipping a field. Directives provide this by describing additional information to the executor.", - "fields": [ - { - "name": "name", - "description": null, - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "description", - "description": null, - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "isRepeatable", - "description": null, - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "locations", - "description": null, - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "__DirectiveLocation", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "args", - "description": null, - "args": [ - { - "name": "includeDeprecated", - "description": null, - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "__InputValue", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "__DirectiveLocation", - "description": "A Directive can be adjacent to many parts of the GraphQL language, a __DirectiveLocation describes one such possible adjacencies.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "QUERY", - "description": "Location adjacent to a query operation.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MUTATION", - "description": "Location adjacent to a mutation operation.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SUBSCRIPTION", - "description": "Location adjacent to a subscription operation.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "FIELD", - "description": "Location adjacent to a field.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "FRAGMENT_DEFINITION", - "description": "Location adjacent to a fragment definition.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "FRAGMENT_SPREAD", - "description": "Location adjacent to a fragment spread.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "INLINE_FRAGMENT", - "description": "Location adjacent to an inline fragment.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "VARIABLE_DEFINITION", - "description": "Location adjacent to a variable definition.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SCHEMA", - "description": "Location adjacent to a schema definition.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SCALAR", - "description": "Location adjacent to a scalar definition.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "OBJECT", - "description": "Location adjacent to an object type definition.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "FIELD_DEFINITION", - "description": "Location adjacent to a field definition.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ARGUMENT_DEFINITION", - "description": "Location adjacent to an argument definition.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "INTERFACE", - "description": "Location adjacent to an interface definition.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "UNION", - "description": "Location adjacent to a union definition.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ENUM", - "description": "Location adjacent to an enum definition.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ENUM_VALUE", - "description": "Location adjacent to an enum value definition.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "INPUT_OBJECT", - "description": "Location adjacent to an input object type definition.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "INPUT_FIELD_DEFINITION", - "description": "Location adjacent to an input object field definition.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "__EnumValue", - "description": "One possible value for a given Enum. Enum values are unique values, not a placeholder for a string or numeric value. However an Enum value is returned in a JSON response as a string.", - "fields": [ - { - "name": "name", - "description": null, - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "description", - "description": null, - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "isDeprecated", - "description": null, - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "deprecationReason", - "description": null, - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "__Field", - "description": "Object and Interface types are described by a list of Fields, each of which has a name, potentially a list of arguments, and a return type.", - "fields": [ - { - "name": "name", - "description": null, - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "description", - "description": null, - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "args", - "description": null, - "args": [ - { - "name": "includeDeprecated", - "description": null, - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "__InputValue", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "type", - "description": null, - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "__Type", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "isDeprecated", - "description": null, - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "deprecationReason", - "description": null, - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "__InputValue", - "description": "Arguments provided to Fields or Directives and the input fields of an InputObject are represented as Input Values which describe their type and optionally a default value.", - "fields": [ - { - "name": "name", - "description": null, - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "description", - "description": null, - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "type", - "description": null, - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "__Type", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "defaultValue", - "description": "A GraphQL-formatted string representing the default value for this input value.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "isDeprecated", - "description": null, - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "deprecationReason", - "description": null, - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "__Schema", - "description": "A GraphQL Schema defines the capabilities of a GraphQL server. It exposes all available types and directives on the server, as well as the entry points for query, mutation, and subscription operations.", - "fields": [ - { - "name": "description", - "description": null, - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "types", - "description": "A list of all types supported by this server.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "__Type", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "queryType", - "description": "The type that query operations will be rooted at.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "__Type", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "mutationType", - "description": "If this server supports mutation, the type that mutation operations will be rooted at.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "__Type", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "subscriptionType", - "description": "If this server support subscription, the type that subscription operations will be rooted at.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "__Type", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "directives", - "description": "A list of all directives supported by this server.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "__Directive", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "__Type", - "description": "The fundamental unit of any GraphQL Schema is the type. There are many kinds of types in GraphQL as represented by the `__TypeKind` enum.\n\nDepending on the kind of a type, certain fields describe information about that type. Scalar types provide no information beyond a name, description and optional `specifiedByURL`, while Enum types provide their values. Object and Interface types provide the fields they describe. Abstract types, Union and Interface, provide the Object types possible at runtime. List and NonNull types compose other types.", - "fields": [ - { - "name": "kind", - "description": null, - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "__TypeKind", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "name", - "description": null, - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "description", - "description": null, - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "specifiedByURL", - "description": null, - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "fields", - "description": null, - "args": [ - { - "name": "includeDeprecated", - "description": null, - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "__Field", - "ofType": null - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "interfaces", - "description": null, - "args": [], - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "__Type", - "ofType": null - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "possibleTypes", - "description": null, - "args": [], - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "__Type", - "ofType": null - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "enumValues", - "description": null, - "args": [ - { - "name": "includeDeprecated", - "description": null, - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "__EnumValue", - "ofType": null - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "inputFields", - "description": null, - "args": [ - { - "name": "includeDeprecated", - "description": null, - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false", - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "__InputValue", - "ofType": null - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ofType", - "description": null, - "args": [], - "type": { - "kind": "OBJECT", - "name": "__Type", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "__TypeKind", - "description": "An enum describing what kind of type a given `__Type` is.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "SCALAR", - "description": "Indicates this type is a scalar.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "OBJECT", - "description": "Indicates this type is an object. `fields` and `interfaces` are valid fields.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "INTERFACE", - "description": "Indicates this type is an interface. `fields`, `interfaces`, and `possibleTypes` are valid fields.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "UNION", - "description": "Indicates this type is a union. `possibleTypes` is a valid field.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ENUM", - "description": "Indicates this type is an enum. `enumValues` is a valid field.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "INPUT_OBJECT", - "description": "Indicates this type is an input object. `inputFields` is a valid field.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LIST", - "description": "Indicates this type is a list. `ofType` is a valid field.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NON_NULL", - "description": "Indicates this type is a non-null. `ofType` is a valid field.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - } - ], - "directives": [ - { - "name": "accessRestricted", - "description": "Marks an element of a GraphQL schema as having restricted access.", - "isRepeatable": false, - "locations": [ - "FIELD_DEFINITION", - "OBJECT" - ], - "args": [ - { - "name": "reason", - "description": "Explains the reason around this restriction", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": "null", - "isDeprecated": false, - "deprecationReason": null - } - ] - }, - { - "name": "deprecated", - "description": "Marks an element of a GraphQL schema as no longer supported.", - "isRepeatable": false, - "locations": [ - "ARGUMENT_DEFINITION", - "ENUM_VALUE", - "FIELD_DEFINITION", - "INPUT_FIELD_DEFINITION" - ], - "args": [ - { - "name": "reason", - "description": "Explains why this element was deprecated, usually also including a suggestion for how to access supported similar data. Formatted in [Markdown](https://daringfireball.net/projects/markdown/).", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": "\"No longer supported\"", - "isDeprecated": false, - "deprecationReason": null - } - ] - }, - { - "name": "inContext", - "description": "Contextualizes data based on the additional information provided by the directive. For example, you can use the `@inContext(country: CA)` directive to [query a product's price](https://shopify.dev/custom-storefronts/internationalization/international-pricing) in a storefront within the context of Canada.", - "isRepeatable": false, - "locations": [ - "MUTATION", - "QUERY" - ], - "args": [ - { - "name": "country", - "description": "The country code for context. For example, `CA`.", - "type": { - "kind": "ENUM", - "name": "CountryCode", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "language", - "description": "The language code for context. For example, `EN`.", - "type": { - "kind": "ENUM", - "name": "LanguageCode", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "preferredLocationId", - "description": "The identifier of the customer's preferred location.", - "type": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ] - }, - { - "name": "include", - "description": "Directs the executor to include this field or fragment only when the `if` argument is true.", - "isRepeatable": false, - "locations": [ - "FIELD", - "FRAGMENT_SPREAD", - "INLINE_FRAGMENT" - ], - "args": [ - { - "name": "if", - "description": "Included when true.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ] - }, - { - "name": "oneOf", - "description": "Requires that exactly one field must be supplied and that field must not be `null`.", - "isRepeatable": false, - "locations": [ - "INPUT_OBJECT" - ], - "args": [] - }, - { - "name": "skip", - "description": "Directs the executor to skip this field or fragment when the `if` argument is true.", - "isRepeatable": false, - "locations": [ - "FIELD", - "FRAGMENT_SPREAD", - "INLINE_FRAGMENT" - ], - "args": [ - { - "name": "if", - "description": "Skipped when true.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ] - } - ] - } -} \ No newline at end of file diff --git a/examples/nextjs-shopify/src/storefront/sdk-gen/generated/index.ts b/examples/nextjs-shopify/src/storefront/sdk-gen/generated/index.ts index 0dadec6..340786b 100644 --- a/examples/nextjs-shopify/src/storefront/sdk-gen/generated/index.ts +++ b/examples/nextjs-shopify/src/storefront/sdk-gen/generated/index.ts @@ -1,7278 +1,79 @@ -/* eslint-disable */ // @ts-nocheck -export type Maybe = T | null; -export type InputMaybe = Maybe; -export type Exact = { [K in keyof T]: T[K] }; -export type MakeOptional = Omit & { [SubKey in K]?: Maybe }; -export type MakeMaybe = Omit & { [SubKey in K]: Maybe }; -/** All built-in and custom scalars, mapped to their actual values */ -export type Scalars = { - ID: string; - String: string; - Boolean: boolean; - Int: number; - Float: number; - Color: any; - DateTime: any; - Decimal: any; - HTML: any; - JSON: any; - URL: any; - UnsignedInt64: any; -}; - -/** - * A version of the API, as defined by [Shopify API versioning](https://shopify.dev/api/usage/versioning). - * Versions are commonly referred to by their handle (for example, `2021-10`). - * - */ -export type ApiVersion = { - __typename?: 'ApiVersion'; - /** The human-readable name of the version. */ - displayName: Scalars['String']; - /** The unique identifier of an ApiVersion. All supported API versions have a date-based (YYYY-MM) or `unstable` handle. */ - handle: Scalars['String']; - /** Whether the version is actively supported by Shopify. Supported API versions are guaranteed to be stable. Unsupported API versions include unstable, release candidate, and end-of-life versions that are marked as unsupported. For more information, refer to [Versioning](https://shopify.dev/api/usage/versioning). */ - supported: Scalars['Boolean']; -}; - -/** Details about the gift card used on the checkout. */ -export type AppliedGiftCard = Node & { - __typename?: 'AppliedGiftCard'; - /** The amount that was taken from the gift card by applying it. */ - amountUsed: MoneyV2; - /** - * The amount that was taken from the gift card by applying it. - * @deprecated Use `amountUsed` instead. - */ - amountUsedV2: MoneyV2; - /** The amount left on the gift card. */ - balance: MoneyV2; - /** - * The amount left on the gift card. - * @deprecated Use `balance` instead. - */ - balanceV2: MoneyV2; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** The last characters of the gift card. */ - lastCharacters: Scalars['String']; - /** The amount that was applied to the checkout in its currency. */ - presentmentAmountUsed: MoneyV2; -}; - -/** An article in an online store blog. */ -export type Article = HasMetafields & Node & OnlineStorePublishable & { - __typename?: 'Article'; - /** - * The article's author. - * @deprecated Use `authorV2` instead. - */ - author: ArticleAuthor; - /** The article's author. */ - authorV2?: Maybe; - /** The blog that the article belongs to. */ - blog: Blog; - /** List of comments posted on the article. */ - comments: CommentConnection; - /** Stripped content of the article, single line with HTML tags removed. */ - content: Scalars['String']; - /** The content of the article, complete with HTML formatting. */ - contentHtml: Scalars['HTML']; - /** Stripped excerpt of the article, single line with HTML tags removed. */ - excerpt?: Maybe; - /** The excerpt of the article, complete with HTML formatting. */ - excerptHtml?: Maybe; - /** - * A human-friendly unique string for the Article automatically generated from its title. - * - */ - handle: Scalars['String']; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** The image associated with the article. */ - image?: Maybe; - /** Returns a metafield found by namespace and key. */ - metafield?: Maybe; - /** - * The metafields associated with the resource matching the supplied list of namespaces and keys. - * - */ - metafields: Array>; - /** The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel. */ - onlineStoreUrl?: Maybe; - /** The date and time when the article was published. */ - publishedAt: Scalars['DateTime']; - /** The article’s SEO information. */ - seo?: Maybe; - /** A categorization that a article can be tagged with. */ - tags: Array; - /** The article’s name. */ - title: Scalars['String']; -}; - - -/** An article in an online store blog. */ -export type ArticleCommentsArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - reverse?: InputMaybe; -}; - - -/** An article in an online store blog. */ -export type ArticleContentArgs = { - truncateAt?: InputMaybe; -}; - - -/** An article in an online store blog. */ -export type ArticleExcerptArgs = { - truncateAt?: InputMaybe; -}; - - -/** An article in an online store blog. */ -export type ArticleMetafieldArgs = { - key: Scalars['String']; - namespace: Scalars['String']; -}; - - -/** An article in an online store blog. */ -export type ArticleMetafieldsArgs = { - identifiers: Array; -}; - -/** The author of an article. */ -export type ArticleAuthor = { - __typename?: 'ArticleAuthor'; - /** The author's bio. */ - bio?: Maybe; - /** The author’s email. */ - email: Scalars['String']; - /** The author's first name. */ - firstName: Scalars['String']; - /** The author's last name. */ - lastName: Scalars['String']; - /** The author's full name. */ - name: Scalars['String']; -}; - -/** - * An auto-generated type for paginating through multiple Articles. - * - */ -export type ArticleConnection = { - __typename?: 'ArticleConnection'; - /** A list of edges. */ - edges: Array; - /** A list of the nodes contained in ArticleEdge. */ - nodes: Array
; - /** Information to aid in pagination. */ - pageInfo: PageInfo; -}; - -/** - * An auto-generated type which holds one Article and a cursor during pagination. - * - */ -export type ArticleEdge = { - __typename?: 'ArticleEdge'; - /** A cursor for use in pagination. */ - cursor: Scalars['String']; - /** The item at the end of ArticleEdge. */ - node: Article; -}; - -/** The set of valid sort keys for the Article query. */ -export enum ArticleSortKeys { - /** Sort by the `author` value. */ - Author = 'AUTHOR', - /** Sort by the `blog_title` value. */ - BlogTitle = 'BLOG_TITLE', - /** Sort by the `id` value. */ - Id = 'ID', - /** Sort by the `published_at` value. */ - PublishedAt = 'PUBLISHED_AT', - /** - * Sort by relevance to the search terms when the `query` parameter is specified on the connection. - * Don't use this sort key when no search query is specified. - * - */ - Relevance = 'RELEVANCE', - /** Sort by the `title` value. */ - Title = 'TITLE', - /** Sort by the `updated_at` value. */ - UpdatedAt = 'UPDATED_AT' -} - -/** Represents a generic custom attribute. */ -export type Attribute = { - __typename?: 'Attribute'; - /** Key or name of the attribute. */ - key: Scalars['String']; - /** Value of the attribute. */ - value?: Maybe; -}; - -/** Specifies the input fields required for an attribute. */ -export type AttributeInput = { - /** Key or name of the attribute. */ - key: Scalars['String']; - /** Value of the attribute. */ - value: Scalars['String']; -}; - -/** - * Automatic discount applications capture the intentions of a discount that was automatically applied. - * - */ -export type AutomaticDiscountApplication = DiscountApplication & { - __typename?: 'AutomaticDiscountApplication'; - /** The method by which the discount's value is allocated to its entitled items. */ - allocationMethod: DiscountApplicationAllocationMethod; - /** Which lines of targetType that the discount is allocated over. */ - targetSelection: DiscountApplicationTargetSelection; - /** The type of line that the discount is applicable towards. */ - targetType: DiscountApplicationTargetType; - /** The title of the application. */ - title: Scalars['String']; - /** The value of the discount application. */ - value: PricingValue; -}; - -/** A collection of available shipping rates for a checkout. */ -export type AvailableShippingRates = { - __typename?: 'AvailableShippingRates'; - /** - * Whether or not the shipping rates are ready. - * The `shippingRates` field is `null` when this value is `false`. - * This field should be polled until its value becomes `true`. - * - */ - ready: Scalars['Boolean']; - /** The fetched shipping rates. `null` until the `ready` field is `true`. */ - shippingRates?: Maybe>; -}; - -/** An online store blog. */ -export type Blog = HasMetafields & Node & OnlineStorePublishable & { - __typename?: 'Blog'; - /** Find an article by its handle. */ - articleByHandle?: Maybe
; - /** List of the blog's articles. */ - articles: ArticleConnection; - /** The authors who have contributed to the blog. */ - authors: Array; - /** - * A human-friendly unique string for the Blog automatically generated from its title. - * - */ - handle: Scalars['String']; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** Returns a metafield found by namespace and key. */ - metafield?: Maybe; - /** - * The metafields associated with the resource matching the supplied list of namespaces and keys. - * - */ - metafields: Array>; - /** The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel. */ - onlineStoreUrl?: Maybe; - /** The blog's SEO information. */ - seo?: Maybe; - /** The blogs’s title. */ - title: Scalars['String']; -}; - - -/** An online store blog. */ -export type BlogArticleByHandleArgs = { - handle: Scalars['String']; -}; - - -/** An online store blog. */ -export type BlogArticlesArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - query?: InputMaybe; - reverse?: InputMaybe; - sortKey?: InputMaybe; -}; - - -/** An online store blog. */ -export type BlogMetafieldArgs = { - key: Scalars['String']; - namespace: Scalars['String']; -}; - - -/** An online store blog. */ -export type BlogMetafieldsArgs = { - identifiers: Array; -}; - -/** - * An auto-generated type for paginating through multiple Blogs. - * - */ -export type BlogConnection = { - __typename?: 'BlogConnection'; - /** A list of edges. */ - edges: Array; - /** A list of the nodes contained in BlogEdge. */ - nodes: Array; - /** Information to aid in pagination. */ - pageInfo: PageInfo; -}; - -/** - * An auto-generated type which holds one Blog and a cursor during pagination. - * - */ -export type BlogEdge = { - __typename?: 'BlogEdge'; - /** A cursor for use in pagination. */ - cursor: Scalars['String']; - /** The item at the end of BlogEdge. */ - node: Blog; -}; - -/** The set of valid sort keys for the Blog query. */ -export enum BlogSortKeys { - /** Sort by the `handle` value. */ - Handle = 'HANDLE', - /** Sort by the `id` value. */ - Id = 'ID', - /** - * Sort by relevance to the search terms when the `query` parameter is specified on the connection. - * Don't use this sort key when no search query is specified. - * - */ - Relevance = 'RELEVANCE', - /** Sort by the `title` value. */ - Title = 'TITLE' -} - -/** - * The store's branding configuration. - * - */ -export type Brand = { - __typename?: 'Brand'; - /** The colors of the store's brand. */ - colors: BrandColors; - /** The store's cover image. */ - coverImage?: Maybe; - /** The store's default logo. */ - logo?: Maybe; - /** The store's short description. */ - shortDescription?: Maybe; - /** The store's slogan. */ - slogan?: Maybe; - /** The store's preferred logo for square UI elements. */ - squareLogo?: Maybe; -}; - -/** - * A group of related colors for the shop's brand. - * - */ -export type BrandColorGroup = { - __typename?: 'BrandColorGroup'; - /** The background color. */ - background?: Maybe; - /** The foreground color. */ - foreground?: Maybe; -}; - -/** - * The colors of the shop's brand. - * - */ -export type BrandColors = { - __typename?: 'BrandColors'; - /** The shop's primary brand colors. */ - primary: Array; - /** The shop's secondary brand colors. */ - secondary: Array; -}; - -/** Card brand, such as Visa or Mastercard, which can be used for payments. */ -export enum CardBrand { - /** American Express. */ - AmericanExpress = 'AMERICAN_EXPRESS', - /** Diners Club. */ - DinersClub = 'DINERS_CLUB', - /** Discover. */ - Discover = 'DISCOVER', - /** JCB. */ - Jcb = 'JCB', - /** Mastercard. */ - Mastercard = 'MASTERCARD', - /** Visa. */ - Visa = 'VISA' -} - -/** - * A cart represents the merchandise that a buyer intends to purchase, - * and the estimated cost associated with the cart. Learn how to - * [interact with a cart](https://shopify.dev/custom-storefronts/internationalization/international-pricing) - * during a customer's session. - * - */ -export type Cart = Node & { - __typename?: 'Cart'; - /** An attribute associated with the cart. */ - attribute?: Maybe; - /** The attributes associated with the cart. Attributes are represented as key-value pairs. */ - attributes: Array; - /** Information about the buyer that is interacting with the cart. */ - buyerIdentity: CartBuyerIdentity; - /** The URL of the checkout for the cart. */ - checkoutUrl: Scalars['URL']; - /** The estimated costs that the buyer will pay at checkout. The costs are subject to change and changes will be reflected at checkout. The `cost` field uses the `buyerIdentity` field to determine [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing). */ - cost: CartCost; - /** The date and time when the cart was created. */ - createdAt: Scalars['DateTime']; - /** - * The delivery groups available for the cart, based on the buyer identity default - * delivery address preference or the default address of the logged-in customer. - * - */ - deliveryGroups: CartDeliveryGroupConnection; - /** The discounts that have been applied to the entire cart. */ - discountAllocations: Array; - /** - * The case-insensitive discount codes that the customer added at checkout. - * - */ - discountCodes: Array; - /** - * The estimated costs that the buyer will pay at checkout. - * The estimated costs are subject to change and changes will be reflected at checkout. - * The `estimatedCost` field uses the `buyerIdentity` field to determine - * [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing). - * - * @deprecated Use `cost` instead. - */ - estimatedCost: CartEstimatedCost; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** A list of lines containing information about the items the customer intends to purchase. */ - lines: CartLineConnection; - /** A note that is associated with the cart. For example, the note can be a personalized message to the buyer. */ - note?: Maybe; - /** The total number of items in the cart. */ - totalQuantity: Scalars['Int']; - /** The date and time when the cart was updated. */ - updatedAt: Scalars['DateTime']; -}; - - -/** - * A cart represents the merchandise that a buyer intends to purchase, - * and the estimated cost associated with the cart. Learn how to - * [interact with a cart](https://shopify.dev/custom-storefronts/internationalization/international-pricing) - * during a customer's session. - * - */ -export type CartAttributeArgs = { - key: Scalars['String']; -}; - - -/** - * A cart represents the merchandise that a buyer intends to purchase, - * and the estimated cost associated with the cart. Learn how to - * [interact with a cart](https://shopify.dev/custom-storefronts/internationalization/international-pricing) - * during a customer's session. - * - */ -export type CartDeliveryGroupsArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - reverse?: InputMaybe; -}; - - -/** - * A cart represents the merchandise that a buyer intends to purchase, - * and the estimated cost associated with the cart. Learn how to - * [interact with a cart](https://shopify.dev/custom-storefronts/internationalization/international-pricing) - * during a customer's session. - * - */ -export type CartLinesArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - reverse?: InputMaybe; -}; - -/** Return type for `cartAttributesUpdate` mutation. */ -export type CartAttributesUpdatePayload = { - __typename?: 'CartAttributesUpdatePayload'; - /** The updated cart. */ - cart?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - userErrors: Array; -}; - -/** The discounts automatically applied to the cart line based on prerequisites that have been met. */ -export type CartAutomaticDiscountAllocation = CartDiscountAllocation & { - __typename?: 'CartAutomaticDiscountAllocation'; - /** The discounted amount that has been applied to the cart line. */ - discountedAmount: MoneyV2; - /** The title of the allocated discount. */ - title: Scalars['String']; -}; - -/** Represents information about the buyer that is interacting with the cart. */ -export type CartBuyerIdentity = { - __typename?: 'CartBuyerIdentity'; - /** The country where the buyer is located. */ - countryCode?: Maybe; - /** The customer account associated with the cart. */ - customer?: Maybe; - /** - * An ordered set of delivery addresses tied to the buyer that is interacting with the cart. - * The rank of the preferences is determined by the order of the addresses in the array. Preferences - * can be used to populate relevant fields in the checkout flow. - * - */ - deliveryAddressPreferences: Array; - /** The email address of the buyer that is interacting with the cart. */ - email?: Maybe; - /** The phone number of the buyer that is interacting with the cart. */ - phone?: Maybe; -}; - -/** - * Specifies the input fields to update the buyer information associated with a cart. - * Buyer identity is used to determine - * [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing) - * and should match the customer's shipping address. - * - */ -export type CartBuyerIdentityInput = { - /** The country where the buyer is located. */ - countryCode?: InputMaybe; - /** The access token used to identify the customer associated with the cart. */ - customerAccessToken?: InputMaybe; - /** - * An ordered set of delivery addresses tied to the buyer that is interacting with the cart. - * The rank of the preferences is determined by the order of the addresses in the array. Preferences - * can be used to populate relevant fields in the checkout flow. - * - */ - deliveryAddressPreferences?: InputMaybe>; - /** The email address of the buyer that is interacting with the cart. */ - email?: InputMaybe; - /** The phone number of the buyer that is interacting with the cart. */ - phone?: InputMaybe; -}; - -/** Return type for `cartBuyerIdentityUpdate` mutation. */ -export type CartBuyerIdentityUpdatePayload = { - __typename?: 'CartBuyerIdentityUpdatePayload'; - /** The updated cart. */ - cart?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - userErrors: Array; -}; - -/** The discount that has been applied to the cart line using a discount code. */ -export type CartCodeDiscountAllocation = CartDiscountAllocation & { - __typename?: 'CartCodeDiscountAllocation'; - /** The code used to apply the discount. */ - code: Scalars['String']; - /** The discounted amount that has been applied to the cart line. */ - discountedAmount: MoneyV2; -}; - -/** - * The costs that the buyer will pay at checkout. - * The cart cost uses [`CartBuyerIdentity`](https://shopify.dev/api/storefront/reference/cart/cartbuyeridentity) to determine - * [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing). - * - */ -export type CartCost = { - __typename?: 'CartCost'; - /** The estimated amount, before taxes and discounts, for the customer to pay at checkout. The checkout charge amount doesn't include any deferred payments that'll be paid at a later date. If the cart has no deferred payments, then the checkout charge amount is equivalent to `subtotalAmount`. */ - checkoutChargeAmount: MoneyV2; - /** The amount, before taxes and cart-level discounts, for the customer to pay. */ - subtotalAmount: MoneyV2; - /** Whether the subtotal amount is estimated. */ - subtotalAmountEstimated: Scalars['Boolean']; - /** The total amount for the customer to pay. */ - totalAmount: MoneyV2; - /** Whether the total amount is estimated. */ - totalAmountEstimated: Scalars['Boolean']; - /** The duty amount for the customer to pay at checkout. */ - totalDutyAmount?: Maybe; - /** Whether the total duty amount is estimated. */ - totalDutyAmountEstimated: Scalars['Boolean']; - /** The tax amount for the customer to pay at checkout. */ - totalTaxAmount?: Maybe; - /** Whether the total tax amount is estimated. */ - totalTaxAmountEstimated: Scalars['Boolean']; -}; - -/** Return type for `cartCreate` mutation. */ -export type CartCreatePayload = { - __typename?: 'CartCreatePayload'; - /** The new cart. */ - cart?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - userErrors: Array; -}; - -/** The discounts automatically applied to the cart line based on prerequisites that have been met. */ -export type CartCustomDiscountAllocation = CartDiscountAllocation & { - __typename?: 'CartCustomDiscountAllocation'; - /** The discounted amount that has been applied to the cart line. */ - discountedAmount: MoneyV2; - /** The title of the allocated discount. */ - title: Scalars['String']; -}; - -/** Information about the options available for one or more line items to be delivered to a specific address. */ -export type CartDeliveryGroup = { - __typename?: 'CartDeliveryGroup'; - /** A list of cart lines for the delivery group. */ - cartLines: CartLineConnection; - /** The destination address for the delivery group. */ - deliveryAddress: MailingAddress; - /** The delivery options available for the delivery group. */ - deliveryOptions: Array; - /** The ID for the delivery group. */ - id: Scalars['ID']; - /** The selected delivery option for the delivery group. */ - selectedDeliveryOption?: Maybe; -}; - - -/** Information about the options available for one or more line items to be delivered to a specific address. */ -export type CartDeliveryGroupCartLinesArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - reverse?: InputMaybe; -}; - -/** - * An auto-generated type for paginating through multiple CartDeliveryGroups. - * - */ -export type CartDeliveryGroupConnection = { - __typename?: 'CartDeliveryGroupConnection'; - /** A list of edges. */ - edges: Array; - /** A list of the nodes contained in CartDeliveryGroupEdge. */ - nodes: Array; - /** Information to aid in pagination. */ - pageInfo: PageInfo; -}; - -/** - * An auto-generated type which holds one CartDeliveryGroup and a cursor during pagination. - * - */ -export type CartDeliveryGroupEdge = { - __typename?: 'CartDeliveryGroupEdge'; - /** A cursor for use in pagination. */ - cursor: Scalars['String']; - /** The item at the end of CartDeliveryGroupEdge. */ - node: CartDeliveryGroup; -}; - -/** Information about a delivery option. */ -export type CartDeliveryOption = { - __typename?: 'CartDeliveryOption'; - /** The code of the delivery option. */ - code?: Maybe; - /** The method for the delivery option. */ - deliveryMethodType: DeliveryMethodType; - /** The description of the delivery option. */ - description?: Maybe; - /** The estimated cost for the delivery option. */ - estimatedCost: MoneyV2; - /** The unique identifier of the delivery option. */ - handle: Scalars['String']; - /** The title of the delivery option. */ - title?: Maybe; -}; - -/** The discounts that have been applied to the cart line. */ -export type CartDiscountAllocation = { - /** The discounted amount that has been applied to the cart line. */ - discountedAmount: MoneyV2; -}; - -/** The discount codes applied to the cart. */ -export type CartDiscountCode = { - __typename?: 'CartDiscountCode'; - /** Whether the discount code is applicable to the cart's current contents. */ - applicable: Scalars['Boolean']; - /** The code for the discount. */ - code: Scalars['String']; -}; - -/** Return type for `cartDiscountCodesUpdate` mutation. */ -export type CartDiscountCodesUpdatePayload = { - __typename?: 'CartDiscountCodesUpdatePayload'; - /** The updated cart. */ - cart?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - userErrors: Array; -}; - -/** Possible error codes that can be returned by `CartUserError`. */ -export enum CartErrorCode { - /** The input value is invalid. */ - Invalid = 'INVALID', - /** Merchandise line was not found in cart. */ - InvalidMerchandiseLine = 'INVALID_MERCHANDISE_LINE', - /** The input value should be less than the maximum value allowed. */ - LessThan = 'LESS_THAN', - /** Missing discount code. */ - MissingDiscountCode = 'MISSING_DISCOUNT_CODE', - /** Missing note. */ - MissingNote = 'MISSING_NOTE' -} - -/** - * The estimated costs that the buyer will pay at checkout. - * The estimated cost uses - * [`CartBuyerIdentity`](https://shopify.dev/api/storefront/reference/cart/cartbuyeridentity) - * to determine - * [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing). - * - */ -export type CartEstimatedCost = { - __typename?: 'CartEstimatedCost'; - /** The estimated amount, before taxes and discounts, for the customer to pay at checkout. The checkout charge amount doesn't include any deferred payments that'll be paid at a later date. If the cart has no deferred payments, then the checkout charge amount is equivalent to`subtotal_amount`. */ - checkoutChargeAmount: MoneyV2; - /** The estimated amount, before taxes and discounts, for the customer to pay. */ - subtotalAmount: MoneyV2; - /** The estimated total amount for the customer to pay. */ - totalAmount: MoneyV2; - /** The estimated duty amount for the customer to pay at checkout. */ - totalDutyAmount?: Maybe; - /** The estimated tax amount for the customer to pay at checkout. */ - totalTaxAmount?: Maybe; -}; - -/** Specifies the input fields to create a cart. */ -export type CartInput = { - /** An array of key-value pairs that contains additional information about the cart. */ - attributes?: InputMaybe>; - /** - * The customer associated with the cart. Used to determine [international pricing] - * (https://shopify.dev/custom-storefronts/internationalization/international-pricing). - * Buyer identity should match the customer's shipping address. - * - */ - buyerIdentity?: InputMaybe; - /** - * The case-insensitive discount codes that the customer added at checkout. - * - */ - discountCodes?: InputMaybe>; - /** A list of merchandise lines to add to the cart. */ - lines?: InputMaybe>; - /** A note that is associated with the cart. For example, the note can be a personalized message to the buyer. */ - note?: InputMaybe; -}; - -/** Represents information about the merchandise in the cart. */ -export type CartLine = Node & { - __typename?: 'CartLine'; - /** An attribute associated with the cart line. */ - attribute?: Maybe; - /** The attributes associated with the cart line. Attributes are represented as key-value pairs. */ - attributes: Array; - /** The cost of the merchandise that the buyer will pay for at checkout. The costs are subject to change and changes will be reflected at checkout. */ - cost: CartLineCost; - /** The discounts that have been applied to the cart line. */ - discountAllocations: Array; - /** - * The estimated cost of the merchandise that the buyer will pay for at checkout. The estimated costs are subject to change and changes will be reflected at checkout. - * @deprecated Use `cost` instead. - */ - estimatedCost: CartLineEstimatedCost; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** The merchandise that the buyer intends to purchase. */ - merchandise: Merchandise; - /** The quantity of the merchandise that the customer intends to purchase. */ - quantity: Scalars['Int']; - /** The selling plan associated with the cart line and the effect that each selling plan has on variants when they're purchased. */ - sellingPlanAllocation?: Maybe; -}; - - -/** Represents information about the merchandise in the cart. */ -export type CartLineAttributeArgs = { - key: Scalars['String']; -}; - -/** - * An auto-generated type for paginating through multiple CartLines. - * - */ -export type CartLineConnection = { - __typename?: 'CartLineConnection'; - /** A list of edges. */ - edges: Array; - /** A list of the nodes contained in CartLineEdge. */ - nodes: Array; - /** Information to aid in pagination. */ - pageInfo: PageInfo; -}; - -/** The cost of the merchandise line that the buyer will pay at checkout. */ -export type CartLineCost = { - __typename?: 'CartLineCost'; - /** The amount of the merchandise line. */ - amountPerQuantity: MoneyV2; - /** The compare at amount of the merchandise line. */ - compareAtAmountPerQuantity?: Maybe; - /** The cost of the merchandise line before line-level discounts. */ - subtotalAmount: MoneyV2; - /** The total cost of the merchandise line. */ - totalAmount: MoneyV2; -}; - -/** - * An auto-generated type which holds one CartLine and a cursor during pagination. - * - */ -export type CartLineEdge = { - __typename?: 'CartLineEdge'; - /** A cursor for use in pagination. */ - cursor: Scalars['String']; - /** The item at the end of CartLineEdge. */ - node: CartLine; -}; - -/** The estimated cost of the merchandise line that the buyer will pay at checkout. */ -export type CartLineEstimatedCost = { - __typename?: 'CartLineEstimatedCost'; - /** The amount of the merchandise line. */ - amount: MoneyV2; - /** The compare at amount of the merchandise line. */ - compareAtAmount?: Maybe; - /** The estimated cost of the merchandise line before discounts. */ - subtotalAmount: MoneyV2; - /** The estimated total cost of the merchandise line. */ - totalAmount: MoneyV2; -}; - -/** Specifies the input fields to create a merchandise line on a cart. */ -export type CartLineInput = { - /** An array of key-value pairs that contains additional information about the merchandise line. */ - attributes?: InputMaybe>; - /** The identifier of the merchandise that the buyer intends to purchase. */ - merchandiseId: Scalars['ID']; - /** The quantity of the merchandise. */ - quantity?: InputMaybe; - /** The identifier of the selling plan that the merchandise is being purchased with. */ - sellingPlanId?: InputMaybe; -}; - -/** Specifies the input fields to update a line item on a cart. */ -export type CartLineUpdateInput = { - /** An array of key-value pairs that contains additional information about the merchandise line. */ - attributes?: InputMaybe>; - /** The identifier of the merchandise line. */ - id: Scalars['ID']; - /** The identifier of the merchandise for the line item. */ - merchandiseId?: InputMaybe; - /** The quantity of the line item. */ - quantity?: InputMaybe; - /** The identifier of the selling plan that the merchandise is being purchased with. */ - sellingPlanId?: InputMaybe; -}; - -/** Return type for `cartLinesAdd` mutation. */ -export type CartLinesAddPayload = { - __typename?: 'CartLinesAddPayload'; - /** The updated cart. */ - cart?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - userErrors: Array; -}; - -/** Return type for `cartLinesRemove` mutation. */ -export type CartLinesRemovePayload = { - __typename?: 'CartLinesRemovePayload'; - /** The updated cart. */ - cart?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - userErrors: Array; -}; - -/** Return type for `cartLinesUpdate` mutation. */ -export type CartLinesUpdatePayload = { - __typename?: 'CartLinesUpdatePayload'; - /** The updated cart. */ - cart?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - userErrors: Array; -}; - -/** Return type for `cartNoteUpdate` mutation. */ -export type CartNoteUpdatePayload = { - __typename?: 'CartNoteUpdatePayload'; - /** The updated cart. */ - cart?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - userErrors: Array; -}; - -/** - * The input fields for updating the selected delivery options for a delivery group. - * - */ -export type CartSelectedDeliveryOptionInput = { - /** The ID of the cart delivery group. */ - deliveryGroupId: Scalars['ID']; - /** The handle of the selected delivery option. */ - deliveryOptionHandle: Scalars['String']; -}; - -/** Return type for `cartSelectedDeliveryOptionsUpdate` mutation. */ -export type CartSelectedDeliveryOptionsUpdatePayload = { - __typename?: 'CartSelectedDeliveryOptionsUpdatePayload'; - /** The updated cart. */ - cart?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - userErrors: Array; -}; - -/** Represents an error that happens during execution of a cart mutation. */ -export type CartUserError = DisplayableError & { - __typename?: 'CartUserError'; - /** The error code. */ - code?: Maybe; - /** The path to the input field that caused the error. */ - field?: Maybe>; - /** The error message. */ - message: Scalars['String']; -}; - -/** A container for all the information required to checkout items and pay. */ -export type Checkout = Node & { - __typename?: 'Checkout'; - /** The gift cards used on the checkout. */ - appliedGiftCards: Array; - /** - * The available shipping rates for this Checkout. - * Should only be used when checkout `requiresShipping` is `true` and - * the shipping address is valid. - * - */ - availableShippingRates?: Maybe; - /** The identity of the customer associated with the checkout. */ - buyerIdentity: CheckoutBuyerIdentity; - /** The date and time when the checkout was completed. */ - completedAt?: Maybe; - /** The date and time when the checkout was created. */ - createdAt: Scalars['DateTime']; - /** The currency code for the checkout. */ - currencyCode: CurrencyCode; - /** A list of extra information that is added to the checkout. */ - customAttributes: Array; - /** Discounts that have been applied on the checkout. */ - discountApplications: DiscountApplicationConnection; - /** The email attached to this checkout. */ - email?: Maybe; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** A list of line item objects, each one containing information about an item in the checkout. */ - lineItems: CheckoutLineItemConnection; - /** The sum of all the prices of all the items in the checkout. Duties, taxes, shipping and discounts excluded. */ - lineItemsSubtotalPrice: MoneyV2; - /** The note associated with the checkout. */ - note?: Maybe; - /** The resulting order from a paid checkout. */ - order?: Maybe; - /** The Order Status Page for this Checkout, null when checkout is not completed. */ - orderStatusUrl?: Maybe; - /** The amount left to be paid. This is equal to the cost of the line items, taxes, and shipping, minus discounts and gift cards. */ - paymentDue: MoneyV2; - /** - * The amount left to be paid. This is equal to the cost of the line items, duties, taxes, and shipping, minus discounts and gift cards. - * @deprecated Use `paymentDue` instead. - */ - paymentDueV2: MoneyV2; - /** - * Whether or not the Checkout is ready and can be completed. Checkouts may - * have asynchronous operations that can take time to finish. If you want - * to complete a checkout or ensure all the fields are populated and up to - * date, polling is required until the value is true. - * - */ - ready: Scalars['Boolean']; - /** States whether or not the fulfillment requires shipping. */ - requiresShipping: Scalars['Boolean']; - /** The shipping address to where the line items will be shipped. */ - shippingAddress?: Maybe; - /** - * The discounts that have been allocated onto the shipping line by discount applications. - * - */ - shippingDiscountAllocations: Array; - /** Once a shipping rate is selected by the customer it is transitioned to a `shipping_line` object. */ - shippingLine?: Maybe; - /** The price at checkout before shipping and taxes. */ - subtotalPrice: MoneyV2; - /** - * The price at checkout before duties, shipping, and taxes. - * @deprecated Use `subtotalPrice` instead. - */ - subtotalPriceV2: MoneyV2; - /** Whether the checkout is tax exempt. */ - taxExempt: Scalars['Boolean']; - /** Whether taxes are included in the line item and shipping line prices. */ - taxesIncluded: Scalars['Boolean']; - /** The sum of all the duties applied to the line items in the checkout. */ - totalDuties?: Maybe; - /** The sum of all the prices of all the items in the checkout, including taxes and duties. */ - totalPrice: MoneyV2; - /** - * The sum of all the prices of all the items in the checkout, including taxes and duties. - * @deprecated Use `totalPrice` instead. - */ - totalPriceV2: MoneyV2; - /** The sum of all the taxes applied to the line items and shipping lines in the checkout. */ - totalTax: MoneyV2; - /** - * The sum of all the taxes applied to the line items and shipping lines in the checkout. - * @deprecated Use `totalTax` instead. - */ - totalTaxV2: MoneyV2; - /** The date and time when the checkout was last updated. */ - updatedAt: Scalars['DateTime']; - /** The url pointing to the checkout accessible from the web. */ - webUrl: Scalars['URL']; -}; - - -/** A container for all the information required to checkout items and pay. */ -export type CheckoutDiscountApplicationsArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - reverse?: InputMaybe; -}; - - -/** A container for all the information required to checkout items and pay. */ -export type CheckoutLineItemsArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - reverse?: InputMaybe; -}; - -/** Specifies the fields required to update a checkout's attributes. */ -export type CheckoutAttributesUpdateV2Input = { - /** - * Allows setting partial addresses on a Checkout, skipping the full validation of attributes. - * The required attributes are city, province, and country. - * Full validation of the addresses is still done at completion time. Defaults to `false` with - * each operation. - * - */ - allowPartialAddresses?: InputMaybe; - /** A list of extra information that is added to the checkout. */ - customAttributes?: InputMaybe>; - /** The text of an optional note that a shop owner can attach to the checkout. */ - note?: InputMaybe; -}; - -/** Return type for `checkoutAttributesUpdateV2` mutation. */ -export type CheckoutAttributesUpdateV2Payload = { - __typename?: 'CheckoutAttributesUpdateV2Payload'; - /** The updated checkout object. */ - checkout?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - checkoutUserErrors: Array; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `checkoutUserErrors` instead. - */ - userErrors: Array; -}; - -/** The identity of the customer associated with the checkout. */ -export type CheckoutBuyerIdentity = { - __typename?: 'CheckoutBuyerIdentity'; - /** The country code for the checkout. For example, `CA`. */ - countryCode?: Maybe; -}; - -/** Specifies the identity of the customer associated with the checkout. */ -export type CheckoutBuyerIdentityInput = { - /** - * The country code of one of the shop's - * [enabled countries](https://help.shopify.com/en/manual/payments/shopify-payments/multi-currency/setup). - * For example, `CA`. Including this field creates a checkout in the specified country's currency. - * - */ - countryCode: CountryCode; -}; - -/** Return type for `checkoutCompleteFree` mutation. */ -export type CheckoutCompleteFreePayload = { - __typename?: 'CheckoutCompleteFreePayload'; - /** The updated checkout object. */ - checkout?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - checkoutUserErrors: Array; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `checkoutUserErrors` instead. - */ - userErrors: Array; -}; - -/** Return type for `checkoutCompleteWithCreditCardV2` mutation. */ -export type CheckoutCompleteWithCreditCardV2Payload = { - __typename?: 'CheckoutCompleteWithCreditCardV2Payload'; - /** The checkout on which the payment was applied. */ - checkout?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - checkoutUserErrors: Array; - /** A representation of the attempted payment. */ - payment?: Maybe; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `checkoutUserErrors` instead. - */ - userErrors: Array; -}; - -/** Return type for `checkoutCompleteWithTokenizedPaymentV3` mutation. */ -export type CheckoutCompleteWithTokenizedPaymentV3Payload = { - __typename?: 'CheckoutCompleteWithTokenizedPaymentV3Payload'; - /** The checkout on which the payment was applied. */ - checkout?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - checkoutUserErrors: Array; - /** A representation of the attempted payment. */ - payment?: Maybe; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `checkoutUserErrors` instead. - */ - userErrors: Array; -}; - -/** Specifies the fields required to create a checkout. */ -export type CheckoutCreateInput = { - /** - * Allows setting partial addresses on a Checkout, skipping the full validation of attributes. - * The required attributes are city, province, and country. - * Full validation of addresses is still done at completion time. Defaults to `null`. - * - */ - allowPartialAddresses?: InputMaybe; - /** The identity of the customer associated with the checkout. */ - buyerIdentity?: InputMaybe; - /** A list of extra information that is added to the checkout. */ - customAttributes?: InputMaybe>; - /** The email with which the customer wants to checkout. */ - email?: InputMaybe; - /** A list of line item objects, each one containing information about an item in the checkout. */ - lineItems?: InputMaybe>; - /** The text of an optional note that a shop owner can attach to the checkout. */ - note?: InputMaybe; - /** The shipping address to where the line items will be shipped. */ - shippingAddress?: InputMaybe; -}; - -/** Return type for `checkoutCreate` mutation. */ -export type CheckoutCreatePayload = { - __typename?: 'CheckoutCreatePayload'; - /** The new checkout object. */ - checkout?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - checkoutUserErrors: Array; - /** The checkout queue token. Available only to selected stores. */ - queueToken?: Maybe; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `checkoutUserErrors` instead. - */ - userErrors: Array; -}; - -/** Return type for `checkoutCustomerAssociateV2` mutation. */ -export type CheckoutCustomerAssociateV2Payload = { - __typename?: 'CheckoutCustomerAssociateV2Payload'; - /** The updated checkout object. */ - checkout?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - checkoutUserErrors: Array; - /** The associated customer object. */ - customer?: Maybe; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `checkoutUserErrors` instead. - */ - userErrors: Array; -}; - -/** Return type for `checkoutCustomerDisassociateV2` mutation. */ -export type CheckoutCustomerDisassociateV2Payload = { - __typename?: 'CheckoutCustomerDisassociateV2Payload'; - /** The updated checkout object. */ - checkout?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - checkoutUserErrors: Array; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `checkoutUserErrors` instead. - */ - userErrors: Array; -}; - -/** Return type for `checkoutDiscountCodeApplyV2` mutation. */ -export type CheckoutDiscountCodeApplyV2Payload = { - __typename?: 'CheckoutDiscountCodeApplyV2Payload'; - /** The updated checkout object. */ - checkout?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - checkoutUserErrors: Array; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `checkoutUserErrors` instead. - */ - userErrors: Array; -}; - -/** Return type for `checkoutDiscountCodeRemove` mutation. */ -export type CheckoutDiscountCodeRemovePayload = { - __typename?: 'CheckoutDiscountCodeRemovePayload'; - /** The updated checkout object. */ - checkout?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - checkoutUserErrors: Array; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `checkoutUserErrors` instead. - */ - userErrors: Array; -}; - -/** Return type for `checkoutEmailUpdateV2` mutation. */ -export type CheckoutEmailUpdateV2Payload = { - __typename?: 'CheckoutEmailUpdateV2Payload'; - /** The checkout object with the updated email. */ - checkout?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - checkoutUserErrors: Array; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `checkoutUserErrors` instead. - */ - userErrors: Array; -}; - -/** Possible error codes that can be returned by `CheckoutUserError`. */ -export enum CheckoutErrorCode { - /** Checkout is already completed. */ - AlreadyCompleted = 'ALREADY_COMPLETED', - /** Input email contains an invalid domain name. */ - BadDomain = 'BAD_DOMAIN', - /** The input value is blank. */ - Blank = 'BLANK', - /** Cart does not meet discount requirements notice. */ - CartDoesNotMeetDiscountRequirementsNotice = 'CART_DOES_NOT_MEET_DISCOUNT_REQUIREMENTS_NOTICE', - /** Customer already used once per customer discount notice. */ - CustomerAlreadyUsedOncePerCustomerDiscountNotice = 'CUSTOMER_ALREADY_USED_ONCE_PER_CUSTOMER_DISCOUNT_NOTICE', - /** Discount already applied. */ - DiscountAlreadyApplied = 'DISCOUNT_ALREADY_APPLIED', - /** Discount code isn't working right now. Please contact us for help. */ - DiscountCodeApplicationFailed = 'DISCOUNT_CODE_APPLICATION_FAILED', - /** Discount disabled. */ - DiscountDisabled = 'DISCOUNT_DISABLED', - /** Discount expired. */ - DiscountExpired = 'DISCOUNT_EXPIRED', - /** Discount limit reached. */ - DiscountLimitReached = 'DISCOUNT_LIMIT_REACHED', - /** Discount not found. */ - DiscountNotFound = 'DISCOUNT_NOT_FOUND', - /** Checkout is already completed. */ - Empty = 'EMPTY', - /** Queue token has expired. */ - ExpiredQueueToken = 'EXPIRED_QUEUE_TOKEN', - /** Gift card has already been applied. */ - GiftCardAlreadyApplied = 'GIFT_CARD_ALREADY_APPLIED', - /** Gift card code is invalid. */ - GiftCardCodeInvalid = 'GIFT_CARD_CODE_INVALID', - /** Gift card currency does not match checkout currency. */ - GiftCardCurrencyMismatch = 'GIFT_CARD_CURRENCY_MISMATCH', - /** Gift card has no funds left. */ - GiftCardDepleted = 'GIFT_CARD_DEPLETED', - /** Gift card is disabled. */ - GiftCardDisabled = 'GIFT_CARD_DISABLED', - /** Gift card is expired. */ - GiftCardExpired = 'GIFT_CARD_EXPIRED', - /** Gift card was not found. */ - GiftCardNotFound = 'GIFT_CARD_NOT_FOUND', - /** Gift card cannot be applied to a checkout that contains a gift card. */ - GiftCardUnusable = 'GIFT_CARD_UNUSABLE', - /** The input value should be greater than or equal to the minimum value allowed. */ - GreaterThanOrEqualTo = 'GREATER_THAN_OR_EQUAL_TO', - /** Higher value discount applied. */ - HigherValueDiscountApplied = 'HIGHER_VALUE_DISCOUNT_APPLIED', - /** The input value is invalid. */ - Invalid = 'INVALID', - /** Cannot specify country and presentment currency code. */ - InvalidCountryAndCurrency = 'INVALID_COUNTRY_AND_CURRENCY', - /** Input Zip is invalid for country provided. */ - InvalidForCountry = 'INVALID_FOR_COUNTRY', - /** Input Zip is invalid for country and province provided. */ - InvalidForCountryAndProvince = 'INVALID_FOR_COUNTRY_AND_PROVINCE', - /** Invalid province in country. */ - InvalidProvinceInCountry = 'INVALID_PROVINCE_IN_COUNTRY', - /** Queue token is invalid. */ - InvalidQueueToken = 'INVALID_QUEUE_TOKEN', - /** Invalid region in country. */ - InvalidRegionInCountry = 'INVALID_REGION_IN_COUNTRY', - /** Invalid state in country. */ - InvalidStateInCountry = 'INVALID_STATE_IN_COUNTRY', - /** The input value should be less than the maximum value allowed. */ - LessThan = 'LESS_THAN', - /** The input value should be less than or equal to the maximum value allowed. */ - LessThanOrEqualTo = 'LESS_THAN_OR_EQUAL_TO', - /** Line item was not found in checkout. */ - LineItemNotFound = 'LINE_ITEM_NOT_FOUND', - /** Checkout is locked. */ - Locked = 'LOCKED', - /** Maximum number of discount codes limit reached. */ - MaximumDiscountCodeLimitReached = 'MAXIMUM_DISCOUNT_CODE_LIMIT_REACHED', - /** Missing payment input. */ - MissingPaymentInput = 'MISSING_PAYMENT_INPUT', - /** Not enough in stock. */ - NotEnoughInStock = 'NOT_ENOUGH_IN_STOCK', - /** Input value is not supported. */ - NotSupported = 'NOT_SUPPORTED', - /** The input value needs to be blank. */ - Present = 'PRESENT', - /** Shipping rate expired. */ - ShippingRateExpired = 'SHIPPING_RATE_EXPIRED', - /** Throttled during checkout. */ - ThrottledDuringCheckout = 'THROTTLED_DURING_CHECKOUT', - /** The input value is too long. */ - TooLong = 'TOO_LONG', - /** The amount of the payment does not match the value to be paid. */ - TotalPriceMismatch = 'TOTAL_PRICE_MISMATCH', - /** Unable to apply discount. */ - UnableToApply = 'UNABLE_TO_APPLY' -} - -/** Return type for `checkoutGiftCardRemoveV2` mutation. */ -export type CheckoutGiftCardRemoveV2Payload = { - __typename?: 'CheckoutGiftCardRemoveV2Payload'; - /** The updated checkout object. */ - checkout?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - checkoutUserErrors: Array; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `checkoutUserErrors` instead. - */ - userErrors: Array; -}; - -/** Return type for `checkoutGiftCardsAppend` mutation. */ -export type CheckoutGiftCardsAppendPayload = { - __typename?: 'CheckoutGiftCardsAppendPayload'; - /** The updated checkout object. */ - checkout?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - checkoutUserErrors: Array; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `checkoutUserErrors` instead. - */ - userErrors: Array; -}; - -/** A single line item in the checkout, grouped by variant and attributes. */ -export type CheckoutLineItem = Node & { - __typename?: 'CheckoutLineItem'; - /** Extra information in the form of an array of Key-Value pairs about the line item. */ - customAttributes: Array; - /** The discounts that have been allocated onto the checkout line item by discount applications. */ - discountAllocations: Array; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** The quantity of the line item. */ - quantity: Scalars['Int']; - /** Title of the line item. Defaults to the product's title. */ - title: Scalars['String']; - /** Unit price of the line item. */ - unitPrice?: Maybe; - /** Product variant of the line item. */ - variant?: Maybe; -}; - -/** - * An auto-generated type for paginating through multiple CheckoutLineItems. - * - */ -export type CheckoutLineItemConnection = { - __typename?: 'CheckoutLineItemConnection'; - /** A list of edges. */ - edges: Array; - /** A list of the nodes contained in CheckoutLineItemEdge. */ - nodes: Array; - /** Information to aid in pagination. */ - pageInfo: PageInfo; -}; - -/** - * An auto-generated type which holds one CheckoutLineItem and a cursor during pagination. - * - */ -export type CheckoutLineItemEdge = { - __typename?: 'CheckoutLineItemEdge'; - /** A cursor for use in pagination. */ - cursor: Scalars['String']; - /** The item at the end of CheckoutLineItemEdge. */ - node: CheckoutLineItem; -}; - -/** Specifies the input fields to create a line item on a checkout. */ -export type CheckoutLineItemInput = { - /** Extra information in the form of an array of Key-Value pairs about the line item. */ - customAttributes?: InputMaybe>; - /** The quantity of the line item. */ - quantity: Scalars['Int']; - /** The identifier of the product variant for the line item. */ - variantId: Scalars['ID']; -}; - -/** Specifies the input fields to update a line item on the checkout. */ -export type CheckoutLineItemUpdateInput = { - /** Extra information in the form of an array of Key-Value pairs about the line item. */ - customAttributes?: InputMaybe>; - /** The identifier of the line item. */ - id?: InputMaybe; - /** The quantity of the line item. */ - quantity?: InputMaybe; - /** The variant identifier of the line item. */ - variantId?: InputMaybe; -}; - -/** Return type for `checkoutLineItemsAdd` mutation. */ -export type CheckoutLineItemsAddPayload = { - __typename?: 'CheckoutLineItemsAddPayload'; - /** The updated checkout object. */ - checkout?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - checkoutUserErrors: Array; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `checkoutUserErrors` instead. - */ - userErrors: Array; -}; - -/** Return type for `checkoutLineItemsRemove` mutation. */ -export type CheckoutLineItemsRemovePayload = { - __typename?: 'CheckoutLineItemsRemovePayload'; - /** The updated checkout object. */ - checkout?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - checkoutUserErrors: Array; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `checkoutUserErrors` instead. - */ - userErrors: Array; -}; - -/** Return type for `checkoutLineItemsReplace` mutation. */ -export type CheckoutLineItemsReplacePayload = { - __typename?: 'CheckoutLineItemsReplacePayload'; - /** The updated checkout object. */ - checkout?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - userErrors: Array; -}; - -/** Return type for `checkoutLineItemsUpdate` mutation. */ -export type CheckoutLineItemsUpdatePayload = { - __typename?: 'CheckoutLineItemsUpdatePayload'; - /** The updated checkout object. */ - checkout?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - checkoutUserErrors: Array; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `checkoutUserErrors` instead. - */ - userErrors: Array; -}; - -/** Return type for `checkoutShippingAddressUpdateV2` mutation. */ -export type CheckoutShippingAddressUpdateV2Payload = { - __typename?: 'CheckoutShippingAddressUpdateV2Payload'; - /** The updated checkout object. */ - checkout?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - checkoutUserErrors: Array; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `checkoutUserErrors` instead. - */ - userErrors: Array; -}; - -/** Return type for `checkoutShippingLineUpdate` mutation. */ -export type CheckoutShippingLineUpdatePayload = { - __typename?: 'CheckoutShippingLineUpdatePayload'; - /** The updated checkout object. */ - checkout?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - checkoutUserErrors: Array; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `checkoutUserErrors` instead. - */ - userErrors: Array; -}; - -/** Represents an error that happens during execution of a checkout mutation. */ -export type CheckoutUserError = DisplayableError & { - __typename?: 'CheckoutUserError'; - /** The error code. */ - code?: Maybe; - /** The path to the input field that caused the error. */ - field?: Maybe>; - /** The error message. */ - message: Scalars['String']; -}; - -/** A collection represents a grouping of products that a shop owner can create to organize them or make their shops easier to browse. */ -export type Collection = HasMetafields & Node & OnlineStorePublishable & { - __typename?: 'Collection'; - /** Stripped description of the collection, single line with HTML tags removed. */ - description: Scalars['String']; - /** The description of the collection, complete with HTML formatting. */ - descriptionHtml: Scalars['HTML']; - /** - * A human-friendly unique string for the collection automatically generated from its title. - * Limit of 255 characters. - * - */ - handle: Scalars['String']; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** Image associated with the collection. */ - image?: Maybe; - /** Returns a metafield found by namespace and key. */ - metafield?: Maybe; - /** - * The metafields associated with the resource matching the supplied list of namespaces and keys. - * - */ - metafields: Array>; - /** The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel. */ - onlineStoreUrl?: Maybe; - /** List of products in the collection. */ - products: ProductConnection; - /** The collection's SEO information. */ - seo: Seo; - /** The collection’s name. Limit of 255 characters. */ - title: Scalars['String']; - /** The date and time when the collection was last modified. */ - updatedAt: Scalars['DateTime']; -}; - - -/** A collection represents a grouping of products that a shop owner can create to organize them or make their shops easier to browse. */ -export type CollectionDescriptionArgs = { - truncateAt?: InputMaybe; -}; - - -/** A collection represents a grouping of products that a shop owner can create to organize them or make their shops easier to browse. */ -export type CollectionMetafieldArgs = { - key: Scalars['String']; - namespace: Scalars['String']; -}; - - -/** A collection represents a grouping of products that a shop owner can create to organize them or make their shops easier to browse. */ -export type CollectionMetafieldsArgs = { - identifiers: Array; -}; - - -/** A collection represents a grouping of products that a shop owner can create to organize them or make their shops easier to browse. */ -export type CollectionProductsArgs = { - after?: InputMaybe; - before?: InputMaybe; - filters?: InputMaybe>; - first?: InputMaybe; - last?: InputMaybe; - reverse?: InputMaybe; - sortKey?: InputMaybe; -}; - -/** - * An auto-generated type for paginating through multiple Collections. - * - */ -export type CollectionConnection = { - __typename?: 'CollectionConnection'; - /** A list of edges. */ - edges: Array; - /** A list of the nodes contained in CollectionEdge. */ - nodes: Array; - /** Information to aid in pagination. */ - pageInfo: PageInfo; -}; - -/** - * An auto-generated type which holds one Collection and a cursor during pagination. - * - */ -export type CollectionEdge = { - __typename?: 'CollectionEdge'; - /** A cursor for use in pagination. */ - cursor: Scalars['String']; - /** The item at the end of CollectionEdge. */ - node: Collection; -}; - -/** The set of valid sort keys for the Collection query. */ -export enum CollectionSortKeys { - /** Sort by the `id` value. */ - Id = 'ID', - /** - * Sort by relevance to the search terms when the `query` parameter is specified on the connection. - * Don't use this sort key when no search query is specified. - * - */ - Relevance = 'RELEVANCE', - /** Sort by the `title` value. */ - Title = 'TITLE', - /** Sort by the `updated_at` value. */ - UpdatedAt = 'UPDATED_AT' -} - -/** A comment on an article. */ -export type Comment = Node & { - __typename?: 'Comment'; - /** The comment’s author. */ - author: CommentAuthor; - /** Stripped content of the comment, single line with HTML tags removed. */ - content: Scalars['String']; - /** The content of the comment, complete with HTML formatting. */ - contentHtml: Scalars['HTML']; - /** A globally-unique identifier. */ - id: Scalars['ID']; -}; - - -/** A comment on an article. */ -export type CommentContentArgs = { - truncateAt?: InputMaybe; -}; - -/** The author of a comment. */ -export type CommentAuthor = { - __typename?: 'CommentAuthor'; - /** The author's email. */ - email: Scalars['String']; - /** The author’s name. */ - name: Scalars['String']; -}; - -/** - * An auto-generated type for paginating through multiple Comments. - * - */ -export type CommentConnection = { - __typename?: 'CommentConnection'; - /** A list of edges. */ - edges: Array; - /** A list of the nodes contained in CommentEdge. */ - nodes: Array; - /** Information to aid in pagination. */ - pageInfo: PageInfo; -}; - -/** - * An auto-generated type which holds one Comment and a cursor during pagination. - * - */ -export type CommentEdge = { - __typename?: 'CommentEdge'; - /** A cursor for use in pagination. */ - cursor: Scalars['String']; - /** The item at the end of CommentEdge. */ - node: Comment; -}; - -/** A country. */ -export type Country = { - __typename?: 'Country'; - /** The languages available for the country. */ - availableLanguages: Array; - /** The currency of the country. */ - currency: Currency; - /** The ISO code of the country. */ - isoCode: CountryCode; - /** The name of the country. */ - name: Scalars['String']; - /** The unit system used in the country. */ - unitSystem: UnitSystem; -}; - -/** - * The code designating a country/region, which generally follows ISO 3166-1 alpha-2 guidelines. - * If a territory doesn't have a country code value in the `CountryCode` enum, then it might be considered a subdivision - * of another country. For example, the territories associated with Spain are represented by the country code `ES`, - * and the territories associated with the United States of America are represented by the country code `US`. - * - */ -export enum CountryCode { - /** Ascension Island. */ - Ac = 'AC', - /** Andorra. */ - Ad = 'AD', - /** United Arab Emirates. */ - Ae = 'AE', - /** Afghanistan. */ - Af = 'AF', - /** Antigua & Barbuda. */ - Ag = 'AG', - /** Anguilla. */ - Ai = 'AI', - /** Albania. */ - Al = 'AL', - /** Armenia. */ - Am = 'AM', - /** Netherlands Antilles. */ - An = 'AN', - /** Angola. */ - Ao = 'AO', - /** Argentina. */ - Ar = 'AR', - /** Austria. */ - At = 'AT', - /** Australia. */ - Au = 'AU', - /** Aruba. */ - Aw = 'AW', - /** Åland Islands. */ - Ax = 'AX', - /** Azerbaijan. */ - Az = 'AZ', - /** Bosnia & Herzegovina. */ - Ba = 'BA', - /** Barbados. */ - Bb = 'BB', - /** Bangladesh. */ - Bd = 'BD', - /** Belgium. */ - Be = 'BE', - /** Burkina Faso. */ - Bf = 'BF', - /** Bulgaria. */ - Bg = 'BG', - /** Bahrain. */ - Bh = 'BH', - /** Burundi. */ - Bi = 'BI', - /** Benin. */ - Bj = 'BJ', - /** St. Barthélemy. */ - Bl = 'BL', - /** Bermuda. */ - Bm = 'BM', - /** Brunei. */ - Bn = 'BN', - /** Bolivia. */ - Bo = 'BO', - /** Caribbean Netherlands. */ - Bq = 'BQ', - /** Brazil. */ - Br = 'BR', - /** Bahamas. */ - Bs = 'BS', - /** Bhutan. */ - Bt = 'BT', - /** Bouvet Island. */ - Bv = 'BV', - /** Botswana. */ - Bw = 'BW', - /** Belarus. */ - By = 'BY', - /** Belize. */ - Bz = 'BZ', - /** Canada. */ - Ca = 'CA', - /** Cocos (Keeling) Islands. */ - Cc = 'CC', - /** Congo - Kinshasa. */ - Cd = 'CD', - /** Central African Republic. */ - Cf = 'CF', - /** Congo - Brazzaville. */ - Cg = 'CG', - /** Switzerland. */ - Ch = 'CH', - /** Côte d’Ivoire. */ - Ci = 'CI', - /** Cook Islands. */ - Ck = 'CK', - /** Chile. */ - Cl = 'CL', - /** Cameroon. */ - Cm = 'CM', - /** China. */ - Cn = 'CN', - /** Colombia. */ - Co = 'CO', - /** Costa Rica. */ - Cr = 'CR', - /** Cuba. */ - Cu = 'CU', - /** Cape Verde. */ - Cv = 'CV', - /** Curaçao. */ - Cw = 'CW', - /** Christmas Island. */ - Cx = 'CX', - /** Cyprus. */ - Cy = 'CY', - /** Czechia. */ - Cz = 'CZ', - /** Germany. */ - De = 'DE', - /** Djibouti. */ - Dj = 'DJ', - /** Denmark. */ - Dk = 'DK', - /** Dominica. */ - Dm = 'DM', - /** Dominican Republic. */ - Do = 'DO', - /** Algeria. */ - Dz = 'DZ', - /** Ecuador. */ - Ec = 'EC', - /** Estonia. */ - Ee = 'EE', - /** Egypt. */ - Eg = 'EG', - /** Western Sahara. */ - Eh = 'EH', - /** Eritrea. */ - Er = 'ER', - /** Spain. */ - Es = 'ES', - /** Ethiopia. */ - Et = 'ET', - /** Finland. */ - Fi = 'FI', - /** Fiji. */ - Fj = 'FJ', - /** Falkland Islands. */ - Fk = 'FK', - /** Faroe Islands. */ - Fo = 'FO', - /** France. */ - Fr = 'FR', - /** Gabon. */ - Ga = 'GA', - /** United Kingdom. */ - Gb = 'GB', - /** Grenada. */ - Gd = 'GD', - /** Georgia. */ - Ge = 'GE', - /** French Guiana. */ - Gf = 'GF', - /** Guernsey. */ - Gg = 'GG', - /** Ghana. */ - Gh = 'GH', - /** Gibraltar. */ - Gi = 'GI', - /** Greenland. */ - Gl = 'GL', - /** Gambia. */ - Gm = 'GM', - /** Guinea. */ - Gn = 'GN', - /** Guadeloupe. */ - Gp = 'GP', - /** Equatorial Guinea. */ - Gq = 'GQ', - /** Greece. */ - Gr = 'GR', - /** South Georgia & South Sandwich Islands. */ - Gs = 'GS', - /** Guatemala. */ - Gt = 'GT', - /** Guinea-Bissau. */ - Gw = 'GW', - /** Guyana. */ - Gy = 'GY', - /** Hong Kong SAR. */ - Hk = 'HK', - /** Heard & McDonald Islands. */ - Hm = 'HM', - /** Honduras. */ - Hn = 'HN', - /** Croatia. */ - Hr = 'HR', - /** Haiti. */ - Ht = 'HT', - /** Hungary. */ - Hu = 'HU', - /** Indonesia. */ - Id = 'ID', - /** Ireland. */ - Ie = 'IE', - /** Israel. */ - Il = 'IL', - /** Isle of Man. */ - Im = 'IM', - /** India. */ - In = 'IN', - /** British Indian Ocean Territory. */ - Io = 'IO', - /** Iraq. */ - Iq = 'IQ', - /** Iran. */ - Ir = 'IR', - /** Iceland. */ - Is = 'IS', - /** Italy. */ - It = 'IT', - /** Jersey. */ - Je = 'JE', - /** Jamaica. */ - Jm = 'JM', - /** Jordan. */ - Jo = 'JO', - /** Japan. */ - Jp = 'JP', - /** Kenya. */ - Ke = 'KE', - /** Kyrgyzstan. */ - Kg = 'KG', - /** Cambodia. */ - Kh = 'KH', - /** Kiribati. */ - Ki = 'KI', - /** Comoros. */ - Km = 'KM', - /** St. Kitts & Nevis. */ - Kn = 'KN', - /** North Korea. */ - Kp = 'KP', - /** South Korea. */ - Kr = 'KR', - /** Kuwait. */ - Kw = 'KW', - /** Cayman Islands. */ - Ky = 'KY', - /** Kazakhstan. */ - Kz = 'KZ', - /** Laos. */ - La = 'LA', - /** Lebanon. */ - Lb = 'LB', - /** St. Lucia. */ - Lc = 'LC', - /** Liechtenstein. */ - Li = 'LI', - /** Sri Lanka. */ - Lk = 'LK', - /** Liberia. */ - Lr = 'LR', - /** Lesotho. */ - Ls = 'LS', - /** Lithuania. */ - Lt = 'LT', - /** Luxembourg. */ - Lu = 'LU', - /** Latvia. */ - Lv = 'LV', - /** Libya. */ - Ly = 'LY', - /** Morocco. */ - Ma = 'MA', - /** Monaco. */ - Mc = 'MC', - /** Moldova. */ - Md = 'MD', - /** Montenegro. */ - Me = 'ME', - /** St. Martin. */ - Mf = 'MF', - /** Madagascar. */ - Mg = 'MG', - /** North Macedonia. */ - Mk = 'MK', - /** Mali. */ - Ml = 'ML', - /** Myanmar (Burma). */ - Mm = 'MM', - /** Mongolia. */ - Mn = 'MN', - /** Macao SAR. */ - Mo = 'MO', - /** Martinique. */ - Mq = 'MQ', - /** Mauritania. */ - Mr = 'MR', - /** Montserrat. */ - Ms = 'MS', - /** Malta. */ - Mt = 'MT', - /** Mauritius. */ - Mu = 'MU', - /** Maldives. */ - Mv = 'MV', - /** Malawi. */ - Mw = 'MW', - /** Mexico. */ - Mx = 'MX', - /** Malaysia. */ - My = 'MY', - /** Mozambique. */ - Mz = 'MZ', - /** Namibia. */ - Na = 'NA', - /** New Caledonia. */ - Nc = 'NC', - /** Niger. */ - Ne = 'NE', - /** Norfolk Island. */ - Nf = 'NF', - /** Nigeria. */ - Ng = 'NG', - /** Nicaragua. */ - Ni = 'NI', - /** Netherlands. */ - Nl = 'NL', - /** Norway. */ - No = 'NO', - /** Nepal. */ - Np = 'NP', - /** Nauru. */ - Nr = 'NR', - /** Niue. */ - Nu = 'NU', - /** New Zealand. */ - Nz = 'NZ', - /** Oman. */ - Om = 'OM', - /** Panama. */ - Pa = 'PA', - /** Peru. */ - Pe = 'PE', - /** French Polynesia. */ - Pf = 'PF', - /** Papua New Guinea. */ - Pg = 'PG', - /** Philippines. */ - Ph = 'PH', - /** Pakistan. */ - Pk = 'PK', - /** Poland. */ - Pl = 'PL', - /** St. Pierre & Miquelon. */ - Pm = 'PM', - /** Pitcairn Islands. */ - Pn = 'PN', - /** Palestinian Territories. */ - Ps = 'PS', - /** Portugal. */ - Pt = 'PT', - /** Paraguay. */ - Py = 'PY', - /** Qatar. */ - Qa = 'QA', - /** Réunion. */ - Re = 'RE', - /** Romania. */ - Ro = 'RO', - /** Serbia. */ - Rs = 'RS', - /** Russia. */ - Ru = 'RU', - /** Rwanda. */ - Rw = 'RW', - /** Saudi Arabia. */ - Sa = 'SA', - /** Solomon Islands. */ - Sb = 'SB', - /** Seychelles. */ - Sc = 'SC', - /** Sudan. */ - Sd = 'SD', - /** Sweden. */ - Se = 'SE', - /** Singapore. */ - Sg = 'SG', - /** St. Helena. */ - Sh = 'SH', - /** Slovenia. */ - Si = 'SI', - /** Svalbard & Jan Mayen. */ - Sj = 'SJ', - /** Slovakia. */ - Sk = 'SK', - /** Sierra Leone. */ - Sl = 'SL', - /** San Marino. */ - Sm = 'SM', - /** Senegal. */ - Sn = 'SN', - /** Somalia. */ - So = 'SO', - /** Suriname. */ - Sr = 'SR', - /** South Sudan. */ - Ss = 'SS', - /** São Tomé & Príncipe. */ - St = 'ST', - /** El Salvador. */ - Sv = 'SV', - /** Sint Maarten. */ - Sx = 'SX', - /** Syria. */ - Sy = 'SY', - /** Eswatini. */ - Sz = 'SZ', - /** Tristan da Cunha. */ - Ta = 'TA', - /** Turks & Caicos Islands. */ - Tc = 'TC', - /** Chad. */ - Td = 'TD', - /** French Southern Territories. */ - Tf = 'TF', - /** Togo. */ - Tg = 'TG', - /** Thailand. */ - Th = 'TH', - /** Tajikistan. */ - Tj = 'TJ', - /** Tokelau. */ - Tk = 'TK', - /** Timor-Leste. */ - Tl = 'TL', - /** Turkmenistan. */ - Tm = 'TM', - /** Tunisia. */ - Tn = 'TN', - /** Tonga. */ - To = 'TO', - /** Turkey. */ - Tr = 'TR', - /** Trinidad & Tobago. */ - Tt = 'TT', - /** Tuvalu. */ - Tv = 'TV', - /** Taiwan. */ - Tw = 'TW', - /** Tanzania. */ - Tz = 'TZ', - /** Ukraine. */ - Ua = 'UA', - /** Uganda. */ - Ug = 'UG', - /** U.S. Outlying Islands. */ - Um = 'UM', - /** United States. */ - Us = 'US', - /** Uruguay. */ - Uy = 'UY', - /** Uzbekistan. */ - Uz = 'UZ', - /** Vatican City. */ - Va = 'VA', - /** St. Vincent & Grenadines. */ - Vc = 'VC', - /** Venezuela. */ - Ve = 'VE', - /** British Virgin Islands. */ - Vg = 'VG', - /** Vietnam. */ - Vn = 'VN', - /** Vanuatu. */ - Vu = 'VU', - /** Wallis & Futuna. */ - Wf = 'WF', - /** Samoa. */ - Ws = 'WS', - /** Kosovo. */ - Xk = 'XK', - /** Yemen. */ - Ye = 'YE', - /** Mayotte. */ - Yt = 'YT', - /** South Africa. */ - Za = 'ZA', - /** Zambia. */ - Zm = 'ZM', - /** Zimbabwe. */ - Zw = 'ZW', - /** Unknown Region. */ - Zz = 'ZZ' -} - -/** Credit card information used for a payment. */ -export type CreditCard = { - __typename?: 'CreditCard'; - /** The brand of the credit card. */ - brand?: Maybe; - /** The expiry month of the credit card. */ - expiryMonth?: Maybe; - /** The expiry year of the credit card. */ - expiryYear?: Maybe; - /** The credit card's BIN number. */ - firstDigits?: Maybe; - /** The first name of the card holder. */ - firstName?: Maybe; - /** The last 4 digits of the credit card. */ - lastDigits?: Maybe; - /** The last name of the card holder. */ - lastName?: Maybe; - /** The masked credit card number with only the last 4 digits displayed. */ - maskedNumber?: Maybe; -}; - -/** - * Specifies the fields required to complete a checkout with - * a Shopify vaulted credit card payment. - * - */ -export type CreditCardPaymentInputV2 = { - /** The billing address for the payment. */ - billingAddress: MailingAddressInput; - /** A unique client generated key used to avoid duplicate charges. When a duplicate payment is found, the original is returned instead of creating a new one. For more information, refer to [Idempotent requests](https://shopify.dev/api/usage/idempotent-requests). */ - idempotencyKey: Scalars['String']; - /** The amount and currency of the payment. */ - paymentAmount: MoneyInput; - /** Executes the payment in test mode if possible. Defaults to `false`. */ - test?: InputMaybe; - /** The ID returned by Shopify's Card Vault. */ - vaultId: Scalars['String']; -}; - -/** The part of the image that should remain after cropping. */ -export enum CropRegion { - /** Keep the bottom of the image. */ - Bottom = 'BOTTOM', - /** Keep the center of the image. */ - Center = 'CENTER', - /** Keep the left of the image. */ - Left = 'LEFT', - /** Keep the right of the image. */ - Right = 'RIGHT', - /** Keep the top of the image. */ - Top = 'TOP' -} - -/** A currency. */ -export type Currency = { - __typename?: 'Currency'; - /** The ISO code of the currency. */ - isoCode: CurrencyCode; - /** The name of the currency. */ - name: Scalars['String']; - /** The symbol of the currency. */ - symbol: Scalars['String']; -}; - -/** - * The three-letter currency codes that represent the world currencies used in stores. These include standard ISO 4217 codes, legacy codes, - * and non-standard codes. - * - */ -export enum CurrencyCode { - /** United Arab Emirates Dirham (AED). */ - Aed = 'AED', - /** Afghan Afghani (AFN). */ - Afn = 'AFN', - /** Albanian Lek (ALL). */ - All = 'ALL', - /** Armenian Dram (AMD). */ - Amd = 'AMD', - /** Netherlands Antillean Guilder. */ - Ang = 'ANG', - /** Angolan Kwanza (AOA). */ - Aoa = 'AOA', - /** Argentine Pesos (ARS). */ - Ars = 'ARS', - /** Australian Dollars (AUD). */ - Aud = 'AUD', - /** Aruban Florin (AWG). */ - Awg = 'AWG', - /** Azerbaijani Manat (AZN). */ - Azn = 'AZN', - /** Bosnia and Herzegovina Convertible Mark (BAM). */ - Bam = 'BAM', - /** Barbadian Dollar (BBD). */ - Bbd = 'BBD', - /** Bangladesh Taka (BDT). */ - Bdt = 'BDT', - /** Bulgarian Lev (BGN). */ - Bgn = 'BGN', - /** Bahraini Dinar (BHD). */ - Bhd = 'BHD', - /** Burundian Franc (BIF). */ - Bif = 'BIF', - /** Bermudian Dollar (BMD). */ - Bmd = 'BMD', - /** Brunei Dollar (BND). */ - Bnd = 'BND', - /** Bolivian Boliviano (BOB). */ - Bob = 'BOB', - /** Brazilian Real (BRL). */ - Brl = 'BRL', - /** Bahamian Dollar (BSD). */ - Bsd = 'BSD', - /** Bhutanese Ngultrum (BTN). */ - Btn = 'BTN', - /** Botswana Pula (BWP). */ - Bwp = 'BWP', - /** Belarusian Ruble (BYN). */ - Byn = 'BYN', - /** - * Belarusian Ruble (BYR). - * @deprecated `BYR` is deprecated. Use `BYN` available from version `2021-01` onwards instead. - */ - Byr = 'BYR', - /** Belize Dollar (BZD). */ - Bzd = 'BZD', - /** Canadian Dollars (CAD). */ - Cad = 'CAD', - /** Congolese franc (CDF). */ - Cdf = 'CDF', - /** Swiss Francs (CHF). */ - Chf = 'CHF', - /** Chilean Peso (CLP). */ - Clp = 'CLP', - /** Chinese Yuan Renminbi (CNY). */ - Cny = 'CNY', - /** Colombian Peso (COP). */ - Cop = 'COP', - /** Costa Rican Colones (CRC). */ - Crc = 'CRC', - /** Cape Verdean escudo (CVE). */ - Cve = 'CVE', - /** Czech Koruny (CZK). */ - Czk = 'CZK', - /** Djiboutian Franc (DJF). */ - Djf = 'DJF', - /** Danish Kroner (DKK). */ - Dkk = 'DKK', - /** Dominican Peso (DOP). */ - Dop = 'DOP', - /** Algerian Dinar (DZD). */ - Dzd = 'DZD', - /** Egyptian Pound (EGP). */ - Egp = 'EGP', - /** Eritrean Nakfa (ERN). */ - Ern = 'ERN', - /** Ethiopian Birr (ETB). */ - Etb = 'ETB', - /** Euro (EUR). */ - Eur = 'EUR', - /** Fijian Dollars (FJD). */ - Fjd = 'FJD', - /** Falkland Islands Pounds (FKP). */ - Fkp = 'FKP', - /** United Kingdom Pounds (GBP). */ - Gbp = 'GBP', - /** Georgian Lari (GEL). */ - Gel = 'GEL', - /** Ghanaian Cedi (GHS). */ - Ghs = 'GHS', - /** Gibraltar Pounds (GIP). */ - Gip = 'GIP', - /** Gambian Dalasi (GMD). */ - Gmd = 'GMD', - /** Guinean Franc (GNF). */ - Gnf = 'GNF', - /** Guatemalan Quetzal (GTQ). */ - Gtq = 'GTQ', - /** Guyanese Dollar (GYD). */ - Gyd = 'GYD', - /** Hong Kong Dollars (HKD). */ - Hkd = 'HKD', - /** Honduran Lempira (HNL). */ - Hnl = 'HNL', - /** Croatian Kuna (HRK). */ - Hrk = 'HRK', - /** Haitian Gourde (HTG). */ - Htg = 'HTG', - /** Hungarian Forint (HUF). */ - Huf = 'HUF', - /** Indonesian Rupiah (IDR). */ - Idr = 'IDR', - /** Israeli New Shekel (NIS). */ - Ils = 'ILS', - /** Indian Rupees (INR). */ - Inr = 'INR', - /** Iraqi Dinar (IQD). */ - Iqd = 'IQD', - /** Iranian Rial (IRR). */ - Irr = 'IRR', - /** Icelandic Kronur (ISK). */ - Isk = 'ISK', - /** Jersey Pound. */ - Jep = 'JEP', - /** Jamaican Dollars (JMD). */ - Jmd = 'JMD', - /** Jordanian Dinar (JOD). */ - Jod = 'JOD', - /** Japanese Yen (JPY). */ - Jpy = 'JPY', - /** Kenyan Shilling (KES). */ - Kes = 'KES', - /** Kyrgyzstani Som (KGS). */ - Kgs = 'KGS', - /** Cambodian Riel. */ - Khr = 'KHR', - /** Kiribati Dollar (KID). */ - Kid = 'KID', - /** Comorian Franc (KMF). */ - Kmf = 'KMF', - /** South Korean Won (KRW). */ - Krw = 'KRW', - /** Kuwaiti Dinar (KWD). */ - Kwd = 'KWD', - /** Cayman Dollars (KYD). */ - Kyd = 'KYD', - /** Kazakhstani Tenge (KZT). */ - Kzt = 'KZT', - /** Laotian Kip (LAK). */ - Lak = 'LAK', - /** Lebanese Pounds (LBP). */ - Lbp = 'LBP', - /** Sri Lankan Rupees (LKR). */ - Lkr = 'LKR', - /** Liberian Dollar (LRD). */ - Lrd = 'LRD', - /** Lesotho Loti (LSL). */ - Lsl = 'LSL', - /** Lithuanian Litai (LTL). */ - Ltl = 'LTL', - /** Latvian Lati (LVL). */ - Lvl = 'LVL', - /** Libyan Dinar (LYD). */ - Lyd = 'LYD', - /** Moroccan Dirham. */ - Mad = 'MAD', - /** Moldovan Leu (MDL). */ - Mdl = 'MDL', - /** Malagasy Ariary (MGA). */ - Mga = 'MGA', - /** Macedonia Denar (MKD). */ - Mkd = 'MKD', - /** Burmese Kyat (MMK). */ - Mmk = 'MMK', - /** Mongolian Tugrik. */ - Mnt = 'MNT', - /** Macanese Pataca (MOP). */ - Mop = 'MOP', - /** Mauritanian Ouguiya (MRU). */ - Mru = 'MRU', - /** Mauritian Rupee (MUR). */ - Mur = 'MUR', - /** Maldivian Rufiyaa (MVR). */ - Mvr = 'MVR', - /** Malawian Kwacha (MWK). */ - Mwk = 'MWK', - /** Mexican Pesos (MXN). */ - Mxn = 'MXN', - /** Malaysian Ringgits (MYR). */ - Myr = 'MYR', - /** Mozambican Metical. */ - Mzn = 'MZN', - /** Namibian Dollar. */ - Nad = 'NAD', - /** Nigerian Naira (NGN). */ - Ngn = 'NGN', - /** Nicaraguan Córdoba (NIO). */ - Nio = 'NIO', - /** Norwegian Kroner (NOK). */ - Nok = 'NOK', - /** Nepalese Rupee (NPR). */ - Npr = 'NPR', - /** New Zealand Dollars (NZD). */ - Nzd = 'NZD', - /** Omani Rial (OMR). */ - Omr = 'OMR', - /** Panamian Balboa (PAB). */ - Pab = 'PAB', - /** Peruvian Nuevo Sol (PEN). */ - Pen = 'PEN', - /** Papua New Guinean Kina (PGK). */ - Pgk = 'PGK', - /** Philippine Peso (PHP). */ - Php = 'PHP', - /** Pakistani Rupee (PKR). */ - Pkr = 'PKR', - /** Polish Zlotych (PLN). */ - Pln = 'PLN', - /** Paraguayan Guarani (PYG). */ - Pyg = 'PYG', - /** Qatari Rial (QAR). */ - Qar = 'QAR', - /** Romanian Lei (RON). */ - Ron = 'RON', - /** Serbian dinar (RSD). */ - Rsd = 'RSD', - /** Russian Rubles (RUB). */ - Rub = 'RUB', - /** Rwandan Franc (RWF). */ - Rwf = 'RWF', - /** Saudi Riyal (SAR). */ - Sar = 'SAR', - /** Solomon Islands Dollar (SBD). */ - Sbd = 'SBD', - /** Seychellois Rupee (SCR). */ - Scr = 'SCR', - /** Sudanese Pound (SDG). */ - Sdg = 'SDG', - /** Swedish Kronor (SEK). */ - Sek = 'SEK', - /** Singapore Dollars (SGD). */ - Sgd = 'SGD', - /** Saint Helena Pounds (SHP). */ - Shp = 'SHP', - /** Sierra Leonean Leone (SLL). */ - Sll = 'SLL', - /** Somali Shilling (SOS). */ - Sos = 'SOS', - /** Surinamese Dollar (SRD). */ - Srd = 'SRD', - /** South Sudanese Pound (SSP). */ - Ssp = 'SSP', - /** - * Sao Tome And Principe Dobra (STD). - * @deprecated `STD` is deprecated. Use `STN` available from version `2022-07` onwards instead. - */ - Std = 'STD', - /** Sao Tome And Principe Dobra (STN). */ - Stn = 'STN', - /** Syrian Pound (SYP). */ - Syp = 'SYP', - /** Swazi Lilangeni (SZL). */ - Szl = 'SZL', - /** Thai baht (THB). */ - Thb = 'THB', - /** Tajikistani Somoni (TJS). */ - Tjs = 'TJS', - /** Turkmenistani Manat (TMT). */ - Tmt = 'TMT', - /** Tunisian Dinar (TND). */ - Tnd = 'TND', - /** Tongan Pa'anga (TOP). */ - Top = 'TOP', - /** Turkish Lira (TRY). */ - Try = 'TRY', - /** Trinidad and Tobago Dollars (TTD). */ - Ttd = 'TTD', - /** Taiwan Dollars (TWD). */ - Twd = 'TWD', - /** Tanzanian Shilling (TZS). */ - Tzs = 'TZS', - /** Ukrainian Hryvnia (UAH). */ - Uah = 'UAH', - /** Ugandan Shilling (UGX). */ - Ugx = 'UGX', - /** United States Dollars (USD). */ - Usd = 'USD', - /** Uruguayan Pesos (UYU). */ - Uyu = 'UYU', - /** Uzbekistan som (UZS). */ - Uzs = 'UZS', - /** Venezuelan Bolivares (VED). */ - Ved = 'VED', - /** - * Venezuelan Bolivares (VEF). - * @deprecated `VEF` is deprecated. Use `VES` available from version `2020-10` onwards instead. - */ - Vef = 'VEF', - /** Venezuelan Bolivares (VES). */ - Ves = 'VES', - /** Vietnamese đồng (VND). */ - Vnd = 'VND', - /** Vanuatu Vatu (VUV). */ - Vuv = 'VUV', - /** Samoan Tala (WST). */ - Wst = 'WST', - /** Central African CFA Franc (XAF). */ - Xaf = 'XAF', - /** East Caribbean Dollar (XCD). */ - Xcd = 'XCD', - /** West African CFA franc (XOF). */ - Xof = 'XOF', - /** CFP Franc (XPF). */ - Xpf = 'XPF', - /** Unrecognized currency. */ - Xxx = 'XXX', - /** Yemeni Rial (YER). */ - Yer = 'YER', - /** South African Rand (ZAR). */ - Zar = 'ZAR', - /** Zambian Kwacha (ZMW). */ - Zmw = 'ZMW' -} - -/** A customer represents a customer account with the shop. Customer accounts store contact information for the customer, saving logged-in customers the trouble of having to provide it at every checkout. */ -export type Customer = HasMetafields & { - __typename?: 'Customer'; - /** Indicates whether the customer has consented to be sent marketing material via email. */ - acceptsMarketing: Scalars['Boolean']; - /** A list of addresses for the customer. */ - addresses: MailingAddressConnection; - /** The date and time when the customer was created. */ - createdAt: Scalars['DateTime']; - /** The customer’s default address. */ - defaultAddress?: Maybe; - /** The customer’s name, email or phone number. */ - displayName: Scalars['String']; - /** The customer’s email address. */ - email?: Maybe; - /** The customer’s first name. */ - firstName?: Maybe; - /** A unique identifier for the customer. */ - id: Scalars['ID']; - /** The customer's most recently updated, incomplete checkout. */ - lastIncompleteCheckout?: Maybe; - /** The customer’s last name. */ - lastName?: Maybe; - /** Returns a metafield found by namespace and key. */ - metafield?: Maybe; - /** - * The metafields associated with the resource matching the supplied list of namespaces and keys. - * - */ - metafields: Array>; - /** The number of orders that the customer has made at the store in their lifetime. */ - numberOfOrders: Scalars['UnsignedInt64']; - /** The orders associated with the customer. */ - orders: OrderConnection; - /** The customer’s phone number. */ - phone?: Maybe; - /** - * A comma separated list of tags that have been added to the customer. - * Additional access scope required: unauthenticated_read_customer_tags. - * - */ - tags: Array; - /** The date and time when the customer information was updated. */ - updatedAt: Scalars['DateTime']; -}; - - -/** A customer represents a customer account with the shop. Customer accounts store contact information for the customer, saving logged-in customers the trouble of having to provide it at every checkout. */ -export type CustomerAddressesArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - reverse?: InputMaybe; -}; - - -/** A customer represents a customer account with the shop. Customer accounts store contact information for the customer, saving logged-in customers the trouble of having to provide it at every checkout. */ -export type CustomerMetafieldArgs = { - key: Scalars['String']; - namespace: Scalars['String']; -}; - - -/** A customer represents a customer account with the shop. Customer accounts store contact information for the customer, saving logged-in customers the trouble of having to provide it at every checkout. */ -export type CustomerMetafieldsArgs = { - identifiers: Array; -}; - - -/** A customer represents a customer account with the shop. Customer accounts store contact information for the customer, saving logged-in customers the trouble of having to provide it at every checkout. */ -export type CustomerOrdersArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - query?: InputMaybe; - reverse?: InputMaybe; - sortKey?: InputMaybe; -}; - -/** A CustomerAccessToken represents the unique token required to make modifications to the customer object. */ -export type CustomerAccessToken = { - __typename?: 'CustomerAccessToken'; - /** The customer’s access token. */ - accessToken: Scalars['String']; - /** The date and time when the customer access token expires. */ - expiresAt: Scalars['DateTime']; -}; - -/** Specifies the input fields required to create a customer access token. */ -export type CustomerAccessTokenCreateInput = { - /** The email associated to the customer. */ - email: Scalars['String']; - /** The login password to be used by the customer. */ - password: Scalars['String']; -}; - -/** Return type for `customerAccessTokenCreate` mutation. */ -export type CustomerAccessTokenCreatePayload = { - __typename?: 'CustomerAccessTokenCreatePayload'; - /** The newly created customer access token object. */ - customerAccessToken?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - customerUserErrors: Array; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `customerUserErrors` instead. - */ - userErrors: Array; -}; - -/** Return type for `customerAccessTokenCreateWithMultipass` mutation. */ -export type CustomerAccessTokenCreateWithMultipassPayload = { - __typename?: 'CustomerAccessTokenCreateWithMultipassPayload'; - /** An access token object associated with the customer. */ - customerAccessToken?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - customerUserErrors: Array; -}; - -/** Return type for `customerAccessTokenDelete` mutation. */ -export type CustomerAccessTokenDeletePayload = { - __typename?: 'CustomerAccessTokenDeletePayload'; - /** The destroyed access token. */ - deletedAccessToken?: Maybe; - /** ID of the destroyed customer access token. */ - deletedCustomerAccessTokenId?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - userErrors: Array; -}; - -/** Return type for `customerAccessTokenRenew` mutation. */ -export type CustomerAccessTokenRenewPayload = { - __typename?: 'CustomerAccessTokenRenewPayload'; - /** The renewed customer access token object. */ - customerAccessToken?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - userErrors: Array; -}; - -/** Return type for `customerActivateByUrl` mutation. */ -export type CustomerActivateByUrlPayload = { - __typename?: 'CustomerActivateByUrlPayload'; - /** The customer that was activated. */ - customer?: Maybe; - /** A new customer access token for the customer. */ - customerAccessToken?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - customerUserErrors: Array; -}; - -/** Specifies the input fields required to activate a customer. */ -export type CustomerActivateInput = { - /** The activation token required to activate the customer. */ - activationToken: Scalars['String']; - /** New password that will be set during activation. */ - password: Scalars['String']; -}; - -/** Return type for `customerActivate` mutation. */ -export type CustomerActivatePayload = { - __typename?: 'CustomerActivatePayload'; - /** The customer object. */ - customer?: Maybe; - /** A newly created customer access token object for the customer. */ - customerAccessToken?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - customerUserErrors: Array; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `customerUserErrors` instead. - */ - userErrors: Array; -}; - -/** Return type for `customerAddressCreate` mutation. */ -export type CustomerAddressCreatePayload = { - __typename?: 'CustomerAddressCreatePayload'; - /** The new customer address object. */ - customerAddress?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - customerUserErrors: Array; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `customerUserErrors` instead. - */ - userErrors: Array; -}; - -/** Return type for `customerAddressDelete` mutation. */ -export type CustomerAddressDeletePayload = { - __typename?: 'CustomerAddressDeletePayload'; - /** The list of errors that occurred from executing the mutation. */ - customerUserErrors: Array; - /** ID of the deleted customer address. */ - deletedCustomerAddressId?: Maybe; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `customerUserErrors` instead. - */ - userErrors: Array; -}; - -/** Return type for `customerAddressUpdate` mutation. */ -export type CustomerAddressUpdatePayload = { - __typename?: 'CustomerAddressUpdatePayload'; - /** The customer’s updated mailing address. */ - customerAddress?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - customerUserErrors: Array; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `customerUserErrors` instead. - */ - userErrors: Array; -}; - -/** The fields required to create a new customer. */ -export type CustomerCreateInput = { - /** Indicates whether the customer has consented to be sent marketing material via email. */ - acceptsMarketing?: InputMaybe; - /** The customer’s email. */ - email: Scalars['String']; - /** The customer’s first name. */ - firstName?: InputMaybe; - /** The customer’s last name. */ - lastName?: InputMaybe; - /** The login password used by the customer. */ - password: Scalars['String']; - /** - * A unique phone number for the customer. - * - * Formatted using E.164 standard. For example, _+16135551111_. - * - */ - phone?: InputMaybe; -}; - -/** Return type for `customerCreate` mutation. */ -export type CustomerCreatePayload = { - __typename?: 'CustomerCreatePayload'; - /** The created customer object. */ - customer?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - customerUserErrors: Array; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `customerUserErrors` instead. - */ - userErrors: Array; -}; - -/** Return type for `customerDefaultAddressUpdate` mutation. */ -export type CustomerDefaultAddressUpdatePayload = { - __typename?: 'CustomerDefaultAddressUpdatePayload'; - /** The updated customer object. */ - customer?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - customerUserErrors: Array; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `customerUserErrors` instead. - */ - userErrors: Array; -}; - -/** Possible error codes that can be returned by `CustomerUserError`. */ -export enum CustomerErrorCode { - /** Customer already enabled. */ - AlreadyEnabled = 'ALREADY_ENABLED', - /** Input email contains an invalid domain name. */ - BadDomain = 'BAD_DOMAIN', - /** The input value is blank. */ - Blank = 'BLANK', - /** Input contains HTML tags. */ - ContainsHtmlTags = 'CONTAINS_HTML_TAGS', - /** Input contains URL. */ - ContainsUrl = 'CONTAINS_URL', - /** Customer is disabled. */ - CustomerDisabled = 'CUSTOMER_DISABLED', - /** The input value is invalid. */ - Invalid = 'INVALID', - /** Multipass token is not valid. */ - InvalidMultipassRequest = 'INVALID_MULTIPASS_REQUEST', - /** Address does not exist. */ - NotFound = 'NOT_FOUND', - /** Input password starts or ends with whitespace. */ - PasswordStartsOrEndsWithWhitespace = 'PASSWORD_STARTS_OR_ENDS_WITH_WHITESPACE', - /** The input value is already taken. */ - Taken = 'TAKEN', - /** Invalid activation token. */ - TokenInvalid = 'TOKEN_INVALID', - /** The input value is too long. */ - TooLong = 'TOO_LONG', - /** The input value is too short. */ - TooShort = 'TOO_SHORT', - /** Unidentified customer. */ - UnidentifiedCustomer = 'UNIDENTIFIED_CUSTOMER' -} - -/** Return type for `customerRecover` mutation. */ -export type CustomerRecoverPayload = { - __typename?: 'CustomerRecoverPayload'; - /** The list of errors that occurred from executing the mutation. */ - customerUserErrors: Array; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `customerUserErrors` instead. - */ - userErrors: Array; -}; - -/** Return type for `customerResetByUrl` mutation. */ -export type CustomerResetByUrlPayload = { - __typename?: 'CustomerResetByUrlPayload'; - /** The customer object which was reset. */ - customer?: Maybe; - /** A newly created customer access token object for the customer. */ - customerAccessToken?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - customerUserErrors: Array; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `customerUserErrors` instead. - */ - userErrors: Array; -}; - -/** Specifies the fields required to reset a customer’s password. */ -export type CustomerResetInput = { - /** New password that will be set as part of the reset password process. */ - password: Scalars['String']; - /** The reset token required to reset the customer’s password. */ - resetToken: Scalars['String']; -}; - -/** Return type for `customerReset` mutation. */ -export type CustomerResetPayload = { - __typename?: 'CustomerResetPayload'; - /** The customer object which was reset. */ - customer?: Maybe; - /** A newly created customer access token object for the customer. */ - customerAccessToken?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - customerUserErrors: Array; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `customerUserErrors` instead. - */ - userErrors: Array; -}; - -/** Specifies the fields required to update the Customer information. */ -export type CustomerUpdateInput = { - /** Indicates whether the customer has consented to be sent marketing material via email. */ - acceptsMarketing?: InputMaybe; - /** The customer’s email. */ - email?: InputMaybe; - /** The customer’s first name. */ - firstName?: InputMaybe; - /** The customer’s last name. */ - lastName?: InputMaybe; - /** The login password used by the customer. */ - password?: InputMaybe; - /** - * A unique phone number for the customer. - * - * Formatted using E.164 standard. For example, _+16135551111_. To remove the phone number, specify `null`. - * - */ - phone?: InputMaybe; -}; - -/** Return type for `customerUpdate` mutation. */ -export type CustomerUpdatePayload = { - __typename?: 'CustomerUpdatePayload'; - /** The updated customer object. */ - customer?: Maybe; - /** - * The newly created customer access token. If the customer's password is updated, all previous access tokens - * (including the one used to perform this mutation) become invalid, and a new token is generated. - * - */ - customerAccessToken?: Maybe; - /** The list of errors that occurred from executing the mutation. */ - customerUserErrors: Array; - /** - * The list of errors that occurred from executing the mutation. - * @deprecated Use `customerUserErrors` instead. - */ - userErrors: Array; -}; - -/** Represents an error that happens during execution of a customer mutation. */ -export type CustomerUserError = DisplayableError & { - __typename?: 'CustomerUserError'; - /** The error code. */ - code?: Maybe; - /** The path to the input field that caused the error. */ - field?: Maybe>; - /** The error message. */ - message: Scalars['String']; -}; - -/** A delivery address of the buyer that is interacting with the cart. */ -export type DeliveryAddress = MailingAddress; - -/** - * The input fields for delivery address preferences. - * - */ -export type DeliveryAddressInput = { - /** A delivery address preference of a buyer that is interacting with the cart. */ - deliveryAddress?: InputMaybe; -}; - -/** List of different delivery method types. */ -export enum DeliveryMethodType { - /** Local Delivery. */ - Local = 'LOCAL', - /** None. */ - None = 'NONE', - /** Shipping to a Pickup Point. */ - PickupPoint = 'PICKUP_POINT', - /** Local Pickup. */ - PickUp = 'PICK_UP', - /** Retail. */ - Retail = 'RETAIL', - /** Shipping. */ - Shipping = 'SHIPPING' -} - -/** Digital wallet, such as Apple Pay, which can be used for accelerated checkouts. */ -export enum DigitalWallet { - /** Android Pay. */ - AndroidPay = 'ANDROID_PAY', - /** Apple Pay. */ - ApplePay = 'APPLE_PAY', - /** Google Pay. */ - GooglePay = 'GOOGLE_PAY', - /** Shopify Pay. */ - ShopifyPay = 'SHOPIFY_PAY' -} - -/** - * An amount discounting the line that has been allocated by a discount. - * - */ -export type DiscountAllocation = { - __typename?: 'DiscountAllocation'; - /** Amount of discount allocated. */ - allocatedAmount: MoneyV2; - /** The discount this allocated amount originated from. */ - discountApplication: DiscountApplication; -}; - -/** - * Discount applications capture the intentions of a discount source at - * the time of application. - * - */ -export type DiscountApplication = { - /** The method by which the discount's value is allocated to its entitled items. */ - allocationMethod: DiscountApplicationAllocationMethod; - /** Which lines of targetType that the discount is allocated over. */ - targetSelection: DiscountApplicationTargetSelection; - /** The type of line that the discount is applicable towards. */ - targetType: DiscountApplicationTargetType; - /** The value of the discount application. */ - value: PricingValue; -}; - -/** The method by which the discount's value is allocated onto its entitled lines. */ -export enum DiscountApplicationAllocationMethod { - /** The value is spread across all entitled lines. */ - Across = 'ACROSS', - /** The value is applied onto every entitled line. */ - Each = 'EACH', - /** - * The value is specifically applied onto a particular line. - * @deprecated Use ACROSS instead. - */ - One = 'ONE' -} - -/** - * An auto-generated type for paginating through multiple DiscountApplications. - * - */ -export type DiscountApplicationConnection = { - __typename?: 'DiscountApplicationConnection'; - /** A list of edges. */ - edges: Array; - /** A list of the nodes contained in DiscountApplicationEdge. */ - nodes: Array; - /** Information to aid in pagination. */ - pageInfo: PageInfo; -}; - -/** - * An auto-generated type which holds one DiscountApplication and a cursor during pagination. - * - */ -export type DiscountApplicationEdge = { - __typename?: 'DiscountApplicationEdge'; - /** A cursor for use in pagination. */ - cursor: Scalars['String']; - /** The item at the end of DiscountApplicationEdge. */ - node: DiscountApplication; -}; - -/** - * The lines on the order to which the discount is applied, of the type defined by - * the discount application's `targetType`. For example, the value `ENTITLED`, combined with a `targetType` of - * `LINE_ITEM`, applies the discount on all line items that are entitled to the discount. - * The value `ALL`, combined with a `targetType` of `SHIPPING_LINE`, applies the discount on all shipping lines. - * - */ -export enum DiscountApplicationTargetSelection { - /** The discount is allocated onto all the lines. */ - All = 'ALL', - /** The discount is allocated onto only the lines that it's entitled for. */ - Entitled = 'ENTITLED', - /** The discount is allocated onto explicitly chosen lines. */ - Explicit = 'EXPLICIT' -} - -/** - * The type of line (i.e. line item or shipping line) on an order that the discount is applicable towards. - * - */ -export enum DiscountApplicationTargetType { - /** The discount applies onto line items. */ - LineItem = 'LINE_ITEM', - /** The discount applies onto shipping lines. */ - ShippingLine = 'SHIPPING_LINE' -} - -/** - * Discount code applications capture the intentions of a discount code at - * the time that it is applied. - * - */ -export type DiscountCodeApplication = DiscountApplication & { - __typename?: 'DiscountCodeApplication'; - /** The method by which the discount's value is allocated to its entitled items. */ - allocationMethod: DiscountApplicationAllocationMethod; - /** Specifies whether the discount code was applied successfully. */ - applicable: Scalars['Boolean']; - /** The string identifying the discount code that was used at the time of application. */ - code: Scalars['String']; - /** Which lines of targetType that the discount is allocated over. */ - targetSelection: DiscountApplicationTargetSelection; - /** The type of line that the discount is applicable towards. */ - targetType: DiscountApplicationTargetType; - /** The value of the discount application. */ - value: PricingValue; -}; - -/** Represents an error in the input of a mutation. */ -export type DisplayableError = { - /** The path to the input field that caused the error. */ - field?: Maybe>; - /** The error message. */ - message: Scalars['String']; -}; - -/** Represents a web address. */ -export type Domain = { - __typename?: 'Domain'; - /** The host name of the domain (eg: `example.com`). */ - host: Scalars['String']; - /** Whether SSL is enabled or not. */ - sslEnabled: Scalars['Boolean']; - /** The URL of the domain (eg: `https://example.com`). */ - url: Scalars['URL']; -}; - -/** Represents a video hosted outside of Shopify. */ -export type ExternalVideo = Media & Node & { - __typename?: 'ExternalVideo'; - /** A word or phrase to share the nature or contents of a media. */ - alt?: Maybe; - /** The embed URL of the video for the respective host. */ - embedUrl: Scalars['URL']; - /** - * The URL. - * @deprecated Use `originUrl` instead. - */ - embeddedUrl: Scalars['URL']; - /** The host of the external video. */ - host: MediaHost; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** The media content type. */ - mediaContentType: MediaContentType; - /** The origin URL of the video on the respective host. */ - originUrl: Scalars['URL']; - /** The preview image for the media. */ - previewImage?: Maybe; -}; - -/** A filter that is supported on the parent field. */ -export type Filter = { - __typename?: 'Filter'; - /** A unique identifier. */ - id: Scalars['String']; - /** A human-friendly string for this filter. */ - label: Scalars['String']; - /** An enumeration that denotes the type of data this filter represents. */ - type: FilterType; - /** The list of values for this filter. */ - values: Array; -}; - -/** - * The type of data that the filter group represents. - * - * For more information, refer to [Filter products in a collection with the Storefront API] - * (https://shopify.dev/custom-storefronts/products-collections/filter-products). - * - */ -export enum FilterType { - /** A boolean value. */ - Boolean = 'BOOLEAN', - /** A list of selectable values. */ - List = 'LIST', - /** A range of prices. */ - PriceRange = 'PRICE_RANGE' -} - -/** A selectable value within a filter. */ -export type FilterValue = { - __typename?: 'FilterValue'; - /** The number of results that match this filter value. */ - count: Scalars['Int']; - /** A unique identifier. */ - id: Scalars['String']; - /** - * An input object that can be used to filter by this value on the parent field. - * - * The value is provided as a helper for building dynamic filtering UI. For example, if you have a list of selected `FilterValue` objects, you can combine their respective `input` values to use in a subsequent query. - * - */ - input: Scalars['JSON']; - /** A human-friendly string for this filter value. */ - label: Scalars['String']; -}; - -/** Represents a single fulfillment in an order. */ -export type Fulfillment = { - __typename?: 'Fulfillment'; - /** List of the fulfillment's line items. */ - fulfillmentLineItems: FulfillmentLineItemConnection; - /** The name of the tracking company. */ - trackingCompany?: Maybe; - /** - * Tracking information associated with the fulfillment, - * such as the tracking number and tracking URL. - * - */ - trackingInfo: Array; -}; - - -/** Represents a single fulfillment in an order. */ -export type FulfillmentFulfillmentLineItemsArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - reverse?: InputMaybe; -}; - - -/** Represents a single fulfillment in an order. */ -export type FulfillmentTrackingInfoArgs = { - first?: InputMaybe; -}; - -/** Represents a single line item in a fulfillment. There is at most one fulfillment line item for each order line item. */ -export type FulfillmentLineItem = { - __typename?: 'FulfillmentLineItem'; - /** The associated order's line item. */ - lineItem: OrderLineItem; - /** The amount fulfilled in this fulfillment. */ - quantity: Scalars['Int']; -}; - -/** - * An auto-generated type for paginating through multiple FulfillmentLineItems. - * - */ -export type FulfillmentLineItemConnection = { - __typename?: 'FulfillmentLineItemConnection'; - /** A list of edges. */ - edges: Array; - /** A list of the nodes contained in FulfillmentLineItemEdge. */ - nodes: Array; - /** Information to aid in pagination. */ - pageInfo: PageInfo; -}; - -/** - * An auto-generated type which holds one FulfillmentLineItem and a cursor during pagination. - * - */ -export type FulfillmentLineItemEdge = { - __typename?: 'FulfillmentLineItemEdge'; - /** A cursor for use in pagination. */ - cursor: Scalars['String']; - /** The item at the end of FulfillmentLineItemEdge. */ - node: FulfillmentLineItem; -}; - -/** Tracking information associated with the fulfillment. */ -export type FulfillmentTrackingInfo = { - __typename?: 'FulfillmentTrackingInfo'; - /** The tracking number of the fulfillment. */ - number?: Maybe; - /** The URL to track the fulfillment. */ - url?: Maybe; -}; - -/** The generic file resource lets you manage files in a merchant’s store. Generic files include any file that doesn’t fit into a designated type such as image or video. Example: PDF, JSON. */ -export type GenericFile = Node & { - __typename?: 'GenericFile'; - /** A word or phrase to indicate the contents of a file. */ - alt?: Maybe; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** The MIME type of the file. */ - mimeType?: Maybe; - /** The size of the original file in bytes. */ - originalFileSize?: Maybe; - /** The preview image for the file. */ - previewImage?: Maybe; - /** The URL of the file. */ - url?: Maybe; -}; - -/** Used to specify a geographical location. */ -export type GeoCoordinateInput = { - /** The coordinate's latitude value. */ - latitude: Scalars['Float']; - /** The coordinate's longitude value. */ - longitude: Scalars['Float']; -}; - -/** Represents information about the metafields associated to the specified resource. */ -export type HasMetafields = { - /** Returns a metafield found by namespace and key. */ - metafield?: Maybe; - /** - * The metafields associated with the resource matching the supplied list of namespaces and keys. - * - */ - metafields: Array>; -}; - - -/** Represents information about the metafields associated to the specified resource. */ -export type HasMetafieldsMetafieldArgs = { - key: Scalars['String']; - namespace: Scalars['String']; -}; - - -/** Represents information about the metafields associated to the specified resource. */ -export type HasMetafieldsMetafieldsArgs = { - identifiers: Array; -}; - -/** Identifies a metafield on an owner resource by namespace and key. */ -export type HasMetafieldsIdentifier = { - /** The identifier for the metafield. */ - key: Scalars['String']; - /** A container for a set of metafields. */ - namespace: Scalars['String']; -}; - -/** Represents an image resource. */ -export type Image = { - __typename?: 'Image'; - /** A word or phrase to share the nature or contents of an image. */ - altText?: Maybe; - /** The original height of the image in pixels. Returns `null` if the image is not hosted by Shopify. */ - height?: Maybe; - /** A unique identifier for the image. */ - id?: Maybe; - /** - * The location of the original image as a URL. - * - * If there are any existing transformations in the original source URL, they will remain and not be stripped. - * - * @deprecated Use `url` instead. - */ - originalSrc: Scalars['URL']; - /** - * The location of the image as a URL. - * @deprecated Use `url` instead. - */ - src: Scalars['URL']; - /** - * The location of the transformed image as a URL. - * - * All transformation arguments are considered "best-effort". If they can be applied to an image, they will be. - * Otherwise any transformations which an image type does not support will be ignored. - * - * @deprecated Use `url(transform:)` instead - */ - transformedSrc: Scalars['URL']; - /** - * The location of the image as a URL. - * - * If no transform options are specified, then the original image will be preserved including any pre-applied transforms. - * - * All transformation options are considered "best-effort". Any transformation that the original image type doesn't support will be ignored. - * - * If you need multiple variations of the same image, then you can use [GraphQL aliases](https://graphql.org/learn/queries/#aliases). - * - */ - url: Scalars['URL']; - /** The original width of the image in pixels. Returns `null` if the image is not hosted by Shopify. */ - width?: Maybe; -}; - - -/** Represents an image resource. */ -export type ImageTransformedSrcArgs = { - crop?: InputMaybe; - maxHeight?: InputMaybe; - maxWidth?: InputMaybe; - preferredContentType?: InputMaybe; - scale?: InputMaybe; -}; - - -/** Represents an image resource. */ -export type ImageUrlArgs = { - transform?: InputMaybe; -}; - -/** - * An auto-generated type for paginating through multiple Images. - * - */ -export type ImageConnection = { - __typename?: 'ImageConnection'; - /** A list of edges. */ - edges: Array; - /** A list of the nodes contained in ImageEdge. */ - nodes: Array; - /** Information to aid in pagination. */ - pageInfo: PageInfo; -}; - -/** List of supported image content types. */ -export enum ImageContentType { - /** A JPG image. */ - Jpg = 'JPG', - /** A PNG image. */ - Png = 'PNG', - /** A WEBP image. */ - Webp = 'WEBP' -} - -/** - * An auto-generated type which holds one Image and a cursor during pagination. - * - */ -export type ImageEdge = { - __typename?: 'ImageEdge'; - /** A cursor for use in pagination. */ - cursor: Scalars['String']; - /** The item at the end of ImageEdge. */ - node: Image; -}; - -/** - * The available options for transforming an image. - * - * All transformation options are considered best effort. Any transformation that the original image type doesn't support will be ignored. - * - */ -export type ImageTransformInput = { - /** - * The region of the image to remain after cropping. - * Must be used in conjunction with the `maxWidth` and/or `maxHeight` fields, where the `maxWidth` and `maxHeight` aren't equal. - * The `crop` argument should coincide with the smaller value. A smaller `maxWidth` indicates a `LEFT` or `RIGHT` crop, while - * a smaller `maxHeight` indicates a `TOP` or `BOTTOM` crop. For example, `{ maxWidth: 5, maxHeight: 10, crop: LEFT }` will result - * in an image with a width of 5 and height of 10, where the right side of the image is removed. - * - */ - crop?: InputMaybe; - /** - * Image height in pixels between 1 and 5760. - * - */ - maxHeight?: InputMaybe; - /** - * Image width in pixels between 1 and 5760. - * - */ - maxWidth?: InputMaybe; - /** - * Convert the source image into the preferred content type. - * Supported conversions: `.svg` to `.png`, any file type to `.jpg`, and any file type to `.webp`. - * - */ - preferredContentType?: InputMaybe; - /** - * Image size multiplier for high-resolution retina displays. Must be within 1..3. - * - */ - scale?: InputMaybe; -}; - -/** A language. */ -export type Language = { - __typename?: 'Language'; - /** The name of the language in the language itself. If the language uses capitalization, it is capitalized for a mid-sentence position. */ - endonymName: Scalars['String']; - /** The ISO code. */ - isoCode: LanguageCode; - /** The name of the language in the current language. */ - name: Scalars['String']; -}; - -/** ISO 639-1 language codes supported by Shopify. */ -export enum LanguageCode { - /** Afrikaans. */ - Af = 'AF', - /** Akan. */ - Ak = 'AK', - /** Amharic. */ - Am = 'AM', - /** Arabic. */ - Ar = 'AR', - /** Assamese. */ - As = 'AS', - /** Azerbaijani. */ - Az = 'AZ', - /** Belarusian. */ - Be = 'BE', - /** Bulgarian. */ - Bg = 'BG', - /** Bambara. */ - Bm = 'BM', - /** Bangla. */ - Bn = 'BN', - /** Tibetan. */ - Bo = 'BO', - /** Breton. */ - Br = 'BR', - /** Bosnian. */ - Bs = 'BS', - /** Catalan. */ - Ca = 'CA', - /** Chechen. */ - Ce = 'CE', - /** Czech. */ - Cs = 'CS', - /** Church Slavic. */ - Cu = 'CU', - /** Welsh. */ - Cy = 'CY', - /** Danish. */ - Da = 'DA', - /** German. */ - De = 'DE', - /** Dzongkha. */ - Dz = 'DZ', - /** Ewe. */ - Ee = 'EE', - /** Greek. */ - El = 'EL', - /** English. */ - En = 'EN', - /** Esperanto. */ - Eo = 'EO', - /** Spanish. */ - Es = 'ES', - /** Estonian. */ - Et = 'ET', - /** Basque. */ - Eu = 'EU', - /** Persian. */ - Fa = 'FA', - /** Fulah. */ - Ff = 'FF', - /** Finnish. */ - Fi = 'FI', - /** Faroese. */ - Fo = 'FO', - /** French. */ - Fr = 'FR', - /** Western Frisian. */ - Fy = 'FY', - /** Irish. */ - Ga = 'GA', - /** Scottish Gaelic. */ - Gd = 'GD', - /** Galician. */ - Gl = 'GL', - /** Gujarati. */ - Gu = 'GU', - /** Manx. */ - Gv = 'GV', - /** Hausa. */ - Ha = 'HA', - /** Hebrew. */ - He = 'HE', - /** Hindi. */ - Hi = 'HI', - /** Croatian. */ - Hr = 'HR', - /** Hungarian. */ - Hu = 'HU', - /** Armenian. */ - Hy = 'HY', - /** Interlingua. */ - Ia = 'IA', - /** Indonesian. */ - Id = 'ID', - /** Igbo. */ - Ig = 'IG', - /** Sichuan Yi. */ - Ii = 'II', - /** Icelandic. */ - Is = 'IS', - /** Italian. */ - It = 'IT', - /** Japanese. */ - Ja = 'JA', - /** Javanese. */ - Jv = 'JV', - /** Georgian. */ - Ka = 'KA', - /** Kikuyu. */ - Ki = 'KI', - /** Kazakh. */ - Kk = 'KK', - /** Kalaallisut. */ - Kl = 'KL', - /** Khmer. */ - Km = 'KM', - /** Kannada. */ - Kn = 'KN', - /** Korean. */ - Ko = 'KO', - /** Kashmiri. */ - Ks = 'KS', - /** Kurdish. */ - Ku = 'KU', - /** Cornish. */ - Kw = 'KW', - /** Kyrgyz. */ - Ky = 'KY', - /** Luxembourgish. */ - Lb = 'LB', - /** Ganda. */ - Lg = 'LG', - /** Lingala. */ - Ln = 'LN', - /** Lao. */ - Lo = 'LO', - /** Lithuanian. */ - Lt = 'LT', - /** Luba-Katanga. */ - Lu = 'LU', - /** Latvian. */ - Lv = 'LV', - /** Malagasy. */ - Mg = 'MG', - /** Māori. */ - Mi = 'MI', - /** Macedonian. */ - Mk = 'MK', - /** Malayalam. */ - Ml = 'ML', - /** Mongolian. */ - Mn = 'MN', - /** Marathi. */ - Mr = 'MR', - /** Malay. */ - Ms = 'MS', - /** Maltese. */ - Mt = 'MT', - /** Burmese. */ - My = 'MY', - /** Norwegian (Bokmål). */ - Nb = 'NB', - /** North Ndebele. */ - Nd = 'ND', - /** Nepali. */ - Ne = 'NE', - /** Dutch. */ - Nl = 'NL', - /** Norwegian Nynorsk. */ - Nn = 'NN', - /** Norwegian. */ - No = 'NO', - /** Oromo. */ - Om = 'OM', - /** Odia. */ - Or = 'OR', - /** Ossetic. */ - Os = 'OS', - /** Punjabi. */ - Pa = 'PA', - /** Polish. */ - Pl = 'PL', - /** Pashto. */ - Ps = 'PS', - /** Portuguese. */ - Pt = 'PT', - /** Portuguese (Brazil). */ - PtBr = 'PT_BR', - /** Portuguese (Portugal). */ - PtPt = 'PT_PT', - /** Quechua. */ - Qu = 'QU', - /** Romansh. */ - Rm = 'RM', - /** Rundi. */ - Rn = 'RN', - /** Romanian. */ - Ro = 'RO', - /** Russian. */ - Ru = 'RU', - /** Kinyarwanda. */ - Rw = 'RW', - /** Sindhi. */ - Sd = 'SD', - /** Northern Sami. */ - Se = 'SE', - /** Sango. */ - Sg = 'SG', - /** Sinhala. */ - Si = 'SI', - /** Slovak. */ - Sk = 'SK', - /** Slovenian. */ - Sl = 'SL', - /** Shona. */ - Sn = 'SN', - /** Somali. */ - So = 'SO', - /** Albanian. */ - Sq = 'SQ', - /** Serbian. */ - Sr = 'SR', - /** Sundanese. */ - Su = 'SU', - /** Swedish. */ - Sv = 'SV', - /** Swahili. */ - Sw = 'SW', - /** Tamil. */ - Ta = 'TA', - /** Telugu. */ - Te = 'TE', - /** Tajik. */ - Tg = 'TG', - /** Thai. */ - Th = 'TH', - /** Tigrinya. */ - Ti = 'TI', - /** Turkmen. */ - Tk = 'TK', - /** Tongan. */ - To = 'TO', - /** Turkish. */ - Tr = 'TR', - /** Tatar. */ - Tt = 'TT', - /** Uyghur. */ - Ug = 'UG', - /** Ukrainian. */ - Uk = 'UK', - /** Urdu. */ - Ur = 'UR', - /** Uzbek. */ - Uz = 'UZ', - /** Vietnamese. */ - Vi = 'VI', - /** Volapük. */ - Vo = 'VO', - /** Wolof. */ - Wo = 'WO', - /** Xhosa. */ - Xh = 'XH', - /** Yiddish. */ - Yi = 'YI', - /** Yoruba. */ - Yo = 'YO', - /** Chinese. */ - Zh = 'ZH', - /** Chinese (Simplified). */ - ZhCn = 'ZH_CN', - /** Chinese (Traditional). */ - ZhTw = 'ZH_TW', - /** Zulu. */ - Zu = 'ZU' -} - -/** Information about the localized experiences configured for the shop. */ -export type Localization = { - __typename?: 'Localization'; - /** The list of countries with enabled localized experiences. */ - availableCountries: Array; - /** The list of languages available for the active country. */ - availableLanguages: Array; - /** The country of the active localized experience. Use the `@inContext` directive to change this value. */ - country: Country; - /** The language of the active localized experience. Use the `@inContext` directive to change this value. */ - language: Language; -}; - -/** Represents a location where product inventory is held. */ -export type Location = Node & { - __typename?: 'Location'; - /** The address of the location. */ - address: LocationAddress; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** The name of the location. */ - name: Scalars['String']; -}; - -/** - * Represents the address of a location. - * - */ -export type LocationAddress = { - __typename?: 'LocationAddress'; - /** The first line of the address for the location. */ - address1?: Maybe; - /** The second line of the address for the location. */ - address2?: Maybe; - /** The city of the location. */ - city?: Maybe; - /** The country of the location. */ - country?: Maybe; - /** The country code of the location. */ - countryCode?: Maybe; - /** A formatted version of the address for the location. */ - formatted: Array; - /** The latitude coordinates of the location. */ - latitude?: Maybe; - /** The longitude coordinates of the location. */ - longitude?: Maybe; - /** The phone number of the location. */ - phone?: Maybe; - /** The province of the location. */ - province?: Maybe; - /** - * The code for the province, state, or district of the address of the location. - * - */ - provinceCode?: Maybe; - /** The ZIP code of the location. */ - zip?: Maybe; -}; - -/** - * An auto-generated type for paginating through multiple Locations. - * - */ -export type LocationConnection = { - __typename?: 'LocationConnection'; - /** A list of edges. */ - edges: Array; - /** A list of the nodes contained in LocationEdge. */ - nodes: Array; - /** Information to aid in pagination. */ - pageInfo: PageInfo; -}; - -/** - * An auto-generated type which holds one Location and a cursor during pagination. - * - */ -export type LocationEdge = { - __typename?: 'LocationEdge'; - /** A cursor for use in pagination. */ - cursor: Scalars['String']; - /** The item at the end of LocationEdge. */ - node: Location; -}; - -/** The set of valid sort keys for the Location query. */ -export enum LocationSortKeys { - /** Sort by the `city` value. */ - City = 'CITY', - /** Sort by the `distance` value. */ - Distance = 'DISTANCE', - /** Sort by the `id` value. */ - Id = 'ID', - /** Sort by the `name` value. */ - Name = 'NAME' -} - -/** Represents a mailing address for customers and shipping. */ -export type MailingAddress = Node & { - __typename?: 'MailingAddress'; - /** The first line of the address. Typically the street address or PO Box number. */ - address1?: Maybe; - /** - * The second line of the address. Typically the number of the apartment, suite, or unit. - * - */ - address2?: Maybe; - /** - * The name of the city, district, village, or town. - * - */ - city?: Maybe; - /** - * The name of the customer's company or organization. - * - */ - company?: Maybe; - /** - * The name of the country. - * - */ - country?: Maybe; - /** - * The two-letter code for the country of the address. - * - * For example, US. - * - * @deprecated Use `countryCodeV2` instead. - */ - countryCode?: Maybe; - /** - * The two-letter code for the country of the address. - * - * For example, US. - * - */ - countryCodeV2?: Maybe; - /** The first name of the customer. */ - firstName?: Maybe; - /** A formatted version of the address, customized by the provided arguments. */ - formatted: Array; - /** A comma-separated list of the values for city, province, and country. */ - formattedArea?: Maybe; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** The last name of the customer. */ - lastName?: Maybe; - /** The latitude coordinate of the customer address. */ - latitude?: Maybe; - /** The longitude coordinate of the customer address. */ - longitude?: Maybe; - /** - * The full name of the customer, based on firstName and lastName. - * - */ - name?: Maybe; - /** - * A unique phone number for the customer. - * - * Formatted using E.164 standard. For example, _+16135551111_. - * - */ - phone?: Maybe; - /** The region of the address, such as the province, state, or district. */ - province?: Maybe; - /** - * The two-letter code for the region. - * - * For example, ON. - * - */ - provinceCode?: Maybe; - /** The zip or postal code of the address. */ - zip?: Maybe; -}; - - -/** Represents a mailing address for customers and shipping. */ -export type MailingAddressFormattedArgs = { - withCompany?: InputMaybe; - withName?: InputMaybe; -}; - -/** - * An auto-generated type for paginating through multiple MailingAddresses. - * - */ -export type MailingAddressConnection = { - __typename?: 'MailingAddressConnection'; - /** A list of edges. */ - edges: Array; - /** A list of the nodes contained in MailingAddressEdge. */ - nodes: Array; - /** Information to aid in pagination. */ - pageInfo: PageInfo; -}; - -/** - * An auto-generated type which holds one MailingAddress and a cursor during pagination. - * - */ -export type MailingAddressEdge = { - __typename?: 'MailingAddressEdge'; - /** A cursor for use in pagination. */ - cursor: Scalars['String']; - /** The item at the end of MailingAddressEdge. */ - node: MailingAddress; -}; - -/** Specifies the fields accepted to create or update a mailing address. */ -export type MailingAddressInput = { - /** - * The first line of the address. Typically the street address or PO Box number. - * - */ - address1?: InputMaybe; - /** - * The second line of the address. Typically the number of the apartment, suite, or unit. - * - */ - address2?: InputMaybe; - /** - * The name of the city, district, village, or town. - * - */ - city?: InputMaybe; - /** - * The name of the customer's company or organization. - * - */ - company?: InputMaybe; - /** The name of the country. */ - country?: InputMaybe; - /** The first name of the customer. */ - firstName?: InputMaybe; - /** The last name of the customer. */ - lastName?: InputMaybe; - /** - * A unique phone number for the customer. - * - * Formatted using E.164 standard. For example, _+16135551111_. - * - */ - phone?: InputMaybe; - /** The region of the address, such as the province, state, or district. */ - province?: InputMaybe; - /** The zip or postal code of the address. */ - zip?: InputMaybe; -}; - -/** - * Manual discount applications capture the intentions of a discount that was manually created. - * - */ -export type ManualDiscountApplication = DiscountApplication & { - __typename?: 'ManualDiscountApplication'; - /** The method by which the discount's value is allocated to its entitled items. */ - allocationMethod: DiscountApplicationAllocationMethod; - /** The description of the application. */ - description?: Maybe; - /** Which lines of targetType that the discount is allocated over. */ - targetSelection: DiscountApplicationTargetSelection; - /** The type of line that the discount is applicable towards. */ - targetType: DiscountApplicationTargetType; - /** The title of the application. */ - title: Scalars['String']; - /** The value of the discount application. */ - value: PricingValue; -}; - -/** Represents a media interface. */ -export type Media = { - /** A word or phrase to share the nature or contents of a media. */ - alt?: Maybe; - /** The media content type. */ - mediaContentType: MediaContentType; - /** The preview image for the media. */ - previewImage?: Maybe; -}; - -/** - * An auto-generated type for paginating through multiple Media. - * - */ -export type MediaConnection = { - __typename?: 'MediaConnection'; - /** A list of edges. */ - edges: Array; - /** A list of the nodes contained in MediaEdge. */ - nodes: Array; - /** Information to aid in pagination. */ - pageInfo: PageInfo; -}; - -/** The possible content types for a media object. */ -export enum MediaContentType { - /** An externally hosted video. */ - ExternalVideo = 'EXTERNAL_VIDEO', - /** A Shopify hosted image. */ - Image = 'IMAGE', - /** A 3d model. */ - Model_3D = 'MODEL_3D', - /** A Shopify hosted video. */ - Video = 'VIDEO' -} - -/** - * An auto-generated type which holds one Media and a cursor during pagination. - * - */ -export type MediaEdge = { - __typename?: 'MediaEdge'; - /** A cursor for use in pagination. */ - cursor: Scalars['String']; - /** The item at the end of MediaEdge. */ - node: Media; -}; - -/** Host for a Media Resource. */ -export enum MediaHost { - /** Host for Vimeo embedded videos. */ - Vimeo = 'VIMEO', - /** Host for YouTube embedded videos. */ - Youtube = 'YOUTUBE' -} - -/** Represents a Shopify hosted image. */ -export type MediaImage = Media & Node & { - __typename?: 'MediaImage'; - /** A word or phrase to share the nature or contents of a media. */ - alt?: Maybe; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** The image for the media. */ - image?: Maybe; - /** The media content type. */ - mediaContentType: MediaContentType; - /** The preview image for the media. */ - previewImage?: Maybe; -}; - -/** - * A menu used for navigation within a storefront. - * - */ -export type Menu = Node & { - __typename?: 'Menu'; - /** The menu's handle. */ - handle: Scalars['String']; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** The menu's child items. */ - items: Array; - /** The count of items on the menu. */ - itemsCount: Scalars['Int']; - /** The menu's title. */ - title: Scalars['String']; -}; - -/** - * A menu item within a parent menu. - * - */ -export type MenuItem = Node & { - __typename?: 'MenuItem'; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** The menu item's child items. */ - items: Array; - /** The ID of the linked resource. */ - resourceId?: Maybe; - /** The menu item's tags to filter a collection. */ - tags: Array; - /** The menu item's title. */ - title: Scalars['String']; - /** The menu item's type. */ - type: MenuItemType; - /** The menu item's URL. */ - url?: Maybe; -}; - -/** A menu item type. */ -export enum MenuItemType { - /** An article link. */ - Article = 'ARTICLE', - /** A blog link. */ - Blog = 'BLOG', - /** A catalog link. */ - Catalog = 'CATALOG', - /** A collection link. */ - Collection = 'COLLECTION', - /** A collection link. */ - Collections = 'COLLECTIONS', - /** A frontpage link. */ - Frontpage = 'FRONTPAGE', - /** An http link. */ - Http = 'HTTP', - /** A page link. */ - Page = 'PAGE', - /** A product link. */ - Product = 'PRODUCT', - /** A search link. */ - Search = 'SEARCH', - /** A shop policy link. */ - ShopPolicy = 'SHOP_POLICY' -} - -/** The merchandise to be purchased at checkout. */ -export type Merchandise = ProductVariant; - -/** - * Metafields represent custom metadata attached to a resource. Metafields can be sorted into namespaces and are - * comprised of keys, values, and value types. - * - */ -export type Metafield = Node & { - __typename?: 'Metafield'; - /** The date and time when the storefront metafield was created. */ - createdAt: Scalars['DateTime']; - /** The description of a metafield. */ - description?: Maybe; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** The key name for a metafield. */ - key: Scalars['String']; - /** The namespace for a metafield. */ - namespace: Scalars['String']; - /** The parent object that the metafield belongs to. */ - parentResource: MetafieldParentResource; - /** Returns a reference object if the metafield definition's type is a resource reference. */ - reference?: Maybe; - /** A list of reference objects if the metafield's type is a resource reference list. */ - references?: Maybe; - /** - * The type name of the metafield. - * See the list of [supported types](https://shopify.dev/apps/metafields/definitions/types). - * - */ - type: Scalars['String']; - /** The date and time when the storefront metafield was updated. */ - updatedAt: Scalars['DateTime']; - /** The value of a metafield. */ - value: Scalars['String']; -}; - - -/** - * Metafields represent custom metadata attached to a resource. Metafields can be sorted into namespaces and are - * comprised of keys, values, and value types. - * - */ -export type MetafieldReferencesArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; -}; - -/** - * A filter used to view a subset of products in a collection matching a specific metafield value. - * - * Only the following metafield types are currently supported: - * - `number_integer` - * - `number_decimal` - * - `single_line_text_field` - * - `boolean` as of 2022-04. - * - */ -export type MetafieldFilter = { - /** The key of the metafield to filter on. */ - key: Scalars['String']; - /** The namespace of the metafield to filter on. */ - namespace: Scalars['String']; - /** The value of the metafield. */ - value: Scalars['String']; -}; - -/** A resource that the metafield belongs to. */ -export type MetafieldParentResource = Article | Blog | Collection | Customer | Order | Page | Product | ProductVariant | Shop; - -/** - * Returns the resource which is being referred to by a metafield. - * - */ -export type MetafieldReference = Collection | GenericFile | MediaImage | Metaobject | Page | Product | ProductVariant | Video; - -/** - * An auto-generated type for paginating through multiple MetafieldReferences. - * - */ -export type MetafieldReferenceConnection = { - __typename?: 'MetafieldReferenceConnection'; - /** A list of edges. */ - edges: Array; - /** A list of the nodes contained in MetafieldReferenceEdge. */ - nodes: Array; - /** Information to aid in pagination. */ - pageInfo: PageInfo; -}; - -/** - * An auto-generated type which holds one MetafieldReference and a cursor during pagination. - * - */ -export type MetafieldReferenceEdge = { - __typename?: 'MetafieldReferenceEdge'; - /** A cursor for use in pagination. */ - cursor: Scalars['String']; - /** The item at the end of MetafieldReferenceEdge. */ - node: MetafieldReference; -}; - -/** An instance of a user-defined model based on a MetaobjectDefinition. */ -export type Metaobject = Node & { - __typename?: 'Metaobject'; - /** Accesses a field of the object by key. */ - field?: Maybe; - /** - * All object fields with defined values. - * Omitted object keys can be assumed null, and no guarantees are made about field order. - * - */ - fields: Array; - /** The unique handle of the metaobject. Useful as a custom ID. */ - handle: Scalars['String']; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** The type of the metaobject. Defines the namespace of its associated metafields. */ - type: Scalars['String']; - /** The date and time when the metaobject was last updated. */ - updatedAt: Scalars['DateTime']; -}; - - -/** An instance of a user-defined model based on a MetaobjectDefinition. */ -export type MetaobjectFieldArgs = { - key: Scalars['String']; -}; - -/** - * An auto-generated type for paginating through multiple Metaobjects. - * - */ -export type MetaobjectConnection = { - __typename?: 'MetaobjectConnection'; - /** A list of edges. */ - edges: Array; - /** A list of the nodes contained in MetaobjectEdge. */ - nodes: Array; - /** Information to aid in pagination. */ - pageInfo: PageInfo; -}; - -/** - * An auto-generated type which holds one Metaobject and a cursor during pagination. - * - */ -export type MetaobjectEdge = { - __typename?: 'MetaobjectEdge'; - /** A cursor for use in pagination. */ - cursor: Scalars['String']; - /** The item at the end of MetaobjectEdge. */ - node: Metaobject; -}; - -/** Provides the value of a Metaobject field. */ -export type MetaobjectField = { - __typename?: 'MetaobjectField'; - /** The field key. */ - key: Scalars['String']; - /** A referenced object if the field type is a resource reference. */ - reference?: Maybe; - /** A list of referenced objects if the field type is a resource reference list. */ - references?: Maybe; - /** - * The type name of the field. - * See the list of [supported types](https://shopify.dev/apps/metafields/definitions/types). - * - */ - type: Scalars['String']; - /** The field value. */ - value?: Maybe; -}; - - -/** Provides the value of a Metaobject field. */ -export type MetaobjectFieldReferencesArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; -}; - -/** The input fields used to retrieve a metaobject by handle. */ -export type MetaobjectHandleInput = { - /** The handle of the metaobject. */ - handle: Scalars['String']; - /** The type of the metaobject. */ - type: Scalars['String']; -}; - -/** Represents a Shopify hosted 3D model. */ -export type Model3d = Media & Node & { - __typename?: 'Model3d'; - /** A word or phrase to share the nature or contents of a media. */ - alt?: Maybe; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** The media content type. */ - mediaContentType: MediaContentType; - /** The preview image for the media. */ - previewImage?: Maybe; - /** The sources for a 3d model. */ - sources: Array; -}; - -/** Represents a source for a Shopify hosted 3d model. */ -export type Model3dSource = { - __typename?: 'Model3dSource'; - /** The filesize of the 3d model. */ - filesize: Scalars['Int']; - /** The format of the 3d model. */ - format: Scalars['String']; - /** The MIME type of the 3d model. */ - mimeType: Scalars['String']; - /** The URL of the 3d model. */ - url: Scalars['String']; -}; - -/** Specifies the fields for a monetary value with currency. */ -export type MoneyInput = { - /** Decimal money amount. */ - amount: Scalars['Decimal']; - /** Currency of the money. */ - currencyCode: CurrencyCode; -}; - -/** - * A monetary value with currency. - * - */ -export type MoneyV2 = { - __typename?: 'MoneyV2'; - /** Decimal money amount. */ - amount: Scalars['Decimal']; - /** Currency of the money. */ - currencyCode: CurrencyCode; -}; - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type Mutation = { - __typename?: 'Mutation'; - /** Updates the attributes on a cart. */ - cartAttributesUpdate?: Maybe; - /** - * Updates customer information associated with a cart. - * Buyer identity is used to determine - * [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing) - * and should match the customer's shipping address. - * - */ - cartBuyerIdentityUpdate?: Maybe; - /** Creates a new cart. */ - cartCreate?: Maybe; - /** Updates the discount codes applied to the cart. */ - cartDiscountCodesUpdate?: Maybe; - /** Adds a merchandise line to the cart. */ - cartLinesAdd?: Maybe; - /** Removes one or more merchandise lines from the cart. */ - cartLinesRemove?: Maybe; - /** Updates one or more merchandise lines on a cart. */ - cartLinesUpdate?: Maybe; - /** Updates the note on the cart. */ - cartNoteUpdate?: Maybe; - /** Update the selected delivery options for a delivery group. */ - cartSelectedDeliveryOptionsUpdate?: Maybe; - /** Updates the attributes of a checkout if `allowPartialAddresses` is `true`. */ - checkoutAttributesUpdateV2?: Maybe; - /** Completes a checkout without providing payment information. You can use this mutation for free items or items whose purchase price is covered by a gift card. */ - checkoutCompleteFree?: Maybe; - /** Completes a checkout using a credit card token from Shopify's card vault. Before you can complete checkouts using CheckoutCompleteWithCreditCardV2, you need to [_request payment processing_](https://shopify.dev/apps/channels/getting-started#request-payment-processing). */ - checkoutCompleteWithCreditCardV2?: Maybe; - /** Completes a checkout with a tokenized payment. */ - checkoutCompleteWithTokenizedPaymentV3?: Maybe; - /** Creates a new checkout. */ - checkoutCreate?: Maybe; - /** Associates a customer to the checkout. */ - checkoutCustomerAssociateV2?: Maybe; - /** Disassociates the current checkout customer from the checkout. */ - checkoutCustomerDisassociateV2?: Maybe; - /** Applies a discount to an existing checkout using a discount code. */ - checkoutDiscountCodeApplyV2?: Maybe; - /** Removes the applied discounts from an existing checkout. */ - checkoutDiscountCodeRemove?: Maybe; - /** Updates the email on an existing checkout. */ - checkoutEmailUpdateV2?: Maybe; - /** Removes an applied gift card from the checkout. */ - checkoutGiftCardRemoveV2?: Maybe; - /** Appends gift cards to an existing checkout. */ - checkoutGiftCardsAppend?: Maybe; - /** Adds a list of line items to a checkout. */ - checkoutLineItemsAdd?: Maybe; - /** Removes line items from an existing checkout. */ - checkoutLineItemsRemove?: Maybe; - /** Sets a list of line items to a checkout. */ - checkoutLineItemsReplace?: Maybe; - /** Updates line items on a checkout. */ - checkoutLineItemsUpdate?: Maybe; - /** Updates the shipping address of an existing checkout. */ - checkoutShippingAddressUpdateV2?: Maybe; - /** Updates the shipping lines on an existing checkout. */ - checkoutShippingLineUpdate?: Maybe; - /** - * Creates a customer access token. - * The customer access token is required to modify the customer object in any way. - * - */ - customerAccessTokenCreate?: Maybe; - /** - * Creates a customer access token using a - * [multipass token](https://shopify.dev/api/multipass) instead of email and - * password. A customer record is created if the customer doesn't exist. If a customer - * record already exists but the record is disabled, then the customer record is enabled. - * - */ - customerAccessTokenCreateWithMultipass?: Maybe; - /** Permanently destroys a customer access token. */ - customerAccessTokenDelete?: Maybe; - /** - * Renews a customer access token. - * - * Access token renewal must happen *before* a token expires. - * If a token has already expired, a new one should be created instead via `customerAccessTokenCreate`. - * - */ - customerAccessTokenRenew?: Maybe; - /** Activates a customer. */ - customerActivate?: Maybe; - /** Activates a customer with the activation url received from `customerCreate`. */ - customerActivateByUrl?: Maybe; - /** Creates a new address for a customer. */ - customerAddressCreate?: Maybe; - /** Permanently deletes the address of an existing customer. */ - customerAddressDelete?: Maybe; - /** Updates the address of an existing customer. */ - customerAddressUpdate?: Maybe; - /** Creates a new customer. */ - customerCreate?: Maybe; - /** Updates the default address of an existing customer. */ - customerDefaultAddressUpdate?: Maybe; - /** - * Sends a reset password email to the customer. The reset password - * email contains a reset password URL and token that you can pass to - * the [`customerResetByUrl`](https://shopify.dev/api/storefront/latest/mutations/customerResetByUrl) or - * [`customerReset`](https://shopify.dev/api/storefront/latest/mutations/customerReset) mutation to reset the - * customer password. - * - * This mutation is throttled by IP. With authenticated access, - * you can provide a [`Shopify-Storefront-Buyer-IP`](https://shopify.dev/api/usage/authentication#optional-ip-header) instead of the request IP. - * - * Make sure that the value provided to `Shopify-Storefront-Buyer-IP` is trusted. Unthrottled access to this - * mutation presents a security risk. - * - */ - customerRecover?: Maybe; - /** - * "Resets a customer’s password with the token received from a reset password email. You can send a reset password email with the [`customerRecover`](https://shopify.dev/api/storefront/latest/mutations/customerRecover) mutation." - * - */ - customerReset?: Maybe; - /** - * "Resets a customer’s password with the reset password URL received from a reset password email. You can send a reset password email with the [`customerRecover`](https://shopify.dev/api/storefront/latest/mutations/customerRecover) mutation." - * - */ - customerResetByUrl?: Maybe; - /** Updates an existing customer. */ - customerUpdate?: Maybe; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCartAttributesUpdateArgs = { - attributes: Array; - cartId: Scalars['ID']; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCartBuyerIdentityUpdateArgs = { - buyerIdentity: CartBuyerIdentityInput; - cartId: Scalars['ID']; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCartCreateArgs = { - input?: InputMaybe; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCartDiscountCodesUpdateArgs = { - cartId: Scalars['ID']; - discountCodes?: InputMaybe>; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCartLinesAddArgs = { - cartId: Scalars['ID']; - lines: Array; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCartLinesRemoveArgs = { - cartId: Scalars['ID']; - lineIds: Array; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCartLinesUpdateArgs = { - cartId: Scalars['ID']; - lines: Array; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCartNoteUpdateArgs = { - cartId: Scalars['ID']; - note?: InputMaybe; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCartSelectedDeliveryOptionsUpdateArgs = { - cartId: Scalars['ID']; - selectedDeliveryOptions: Array; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCheckoutAttributesUpdateV2Args = { - checkoutId: Scalars['ID']; - input: CheckoutAttributesUpdateV2Input; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCheckoutCompleteFreeArgs = { - checkoutId: Scalars['ID']; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCheckoutCompleteWithCreditCardV2Args = { - checkoutId: Scalars['ID']; - payment: CreditCardPaymentInputV2; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCheckoutCompleteWithTokenizedPaymentV3Args = { - checkoutId: Scalars['ID']; - payment: TokenizedPaymentInputV3; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCheckoutCreateArgs = { - input: CheckoutCreateInput; - queueToken?: InputMaybe; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCheckoutCustomerAssociateV2Args = { - checkoutId: Scalars['ID']; - customerAccessToken: Scalars['String']; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCheckoutCustomerDisassociateV2Args = { - checkoutId: Scalars['ID']; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCheckoutDiscountCodeApplyV2Args = { - checkoutId: Scalars['ID']; - discountCode: Scalars['String']; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCheckoutDiscountCodeRemoveArgs = { - checkoutId: Scalars['ID']; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCheckoutEmailUpdateV2Args = { - checkoutId: Scalars['ID']; - email: Scalars['String']; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCheckoutGiftCardRemoveV2Args = { - appliedGiftCardId: Scalars['ID']; - checkoutId: Scalars['ID']; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCheckoutGiftCardsAppendArgs = { - checkoutId: Scalars['ID']; - giftCardCodes: Array; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCheckoutLineItemsAddArgs = { - checkoutId: Scalars['ID']; - lineItems: Array; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCheckoutLineItemsRemoveArgs = { - checkoutId: Scalars['ID']; - lineItemIds: Array; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCheckoutLineItemsReplaceArgs = { - checkoutId: Scalars['ID']; - lineItems: Array; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCheckoutLineItemsUpdateArgs = { - checkoutId: Scalars['ID']; - lineItems: Array; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCheckoutShippingAddressUpdateV2Args = { - checkoutId: Scalars['ID']; - shippingAddress: MailingAddressInput; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCheckoutShippingLineUpdateArgs = { - checkoutId: Scalars['ID']; - shippingRateHandle: Scalars['String']; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCustomerAccessTokenCreateArgs = { - input: CustomerAccessTokenCreateInput; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCustomerAccessTokenCreateWithMultipassArgs = { - multipassToken: Scalars['String']; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCustomerAccessTokenDeleteArgs = { - customerAccessToken: Scalars['String']; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCustomerAccessTokenRenewArgs = { - customerAccessToken: Scalars['String']; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCustomerActivateArgs = { - id: Scalars['ID']; - input: CustomerActivateInput; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCustomerActivateByUrlArgs = { - activationUrl: Scalars['URL']; - password: Scalars['String']; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCustomerAddressCreateArgs = { - address: MailingAddressInput; - customerAccessToken: Scalars['String']; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCustomerAddressDeleteArgs = { - customerAccessToken: Scalars['String']; - id: Scalars['ID']; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCustomerAddressUpdateArgs = { - address: MailingAddressInput; - customerAccessToken: Scalars['String']; - id: Scalars['ID']; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCustomerCreateArgs = { - input: CustomerCreateInput; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCustomerDefaultAddressUpdateArgs = { - addressId: Scalars['ID']; - customerAccessToken: Scalars['String']; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCustomerRecoverArgs = { - email: Scalars['String']; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCustomerResetArgs = { - id: Scalars['ID']; - input: CustomerResetInput; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCustomerResetByUrlArgs = { - password: Scalars['String']; - resetUrl: Scalars['URL']; -}; - - -/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ -export type MutationCustomerUpdateArgs = { - customer: CustomerUpdateInput; - customerAccessToken: Scalars['String']; -}; - -/** - * An object with an ID field to support global identification, in accordance with the - * [Relay specification](https://relay.dev/graphql/objectidentification.htm#sec-Node-Interface). - * This interface is used by the [node](https://shopify.dev/api/admin-graphql/unstable/queries/node) - * and [nodes](https://shopify.dev/api/admin-graphql/unstable/queries/nodes) queries. - * - */ -export type Node = { - /** A globally-unique identifier. */ - id: Scalars['ID']; -}; - -/** Represents a resource that can be published to the Online Store sales channel. */ -export type OnlineStorePublishable = { - /** The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel. */ - onlineStoreUrl?: Maybe; -}; - -/** An order is a customer’s completed request to purchase one or more products from a shop. An order is created when a customer completes the checkout process, during which time they provides an email address, billing address and payment information. */ -export type Order = HasMetafields & Node & { - __typename?: 'Order'; - /** The reason for the order's cancellation. Returns `null` if the order wasn't canceled. */ - cancelReason?: Maybe; - /** The date and time when the order was canceled. Returns null if the order wasn't canceled. */ - canceledAt?: Maybe; - /** The code of the currency used for the payment. */ - currencyCode: CurrencyCode; - /** The subtotal of line items and their discounts, excluding line items that have been removed. Does not contain order-level discounts, duties, shipping costs, or shipping discounts. Taxes are not included unless the order is a taxes-included order. */ - currentSubtotalPrice: MoneyV2; - /** The total cost of duties for the order, including refunds. */ - currentTotalDuties?: Maybe; - /** The total amount of the order, including duties, taxes and discounts, minus amounts for line items that have been removed. */ - currentTotalPrice: MoneyV2; - /** The total of all taxes applied to the order, excluding taxes for returned line items. */ - currentTotalTax: MoneyV2; - /** A list of the custom attributes added to the order. */ - customAttributes: Array; - /** The locale code in which this specific order happened. */ - customerLocale?: Maybe; - /** The unique URL that the customer can use to access the order. */ - customerUrl?: Maybe; - /** Discounts that have been applied on the order. */ - discountApplications: DiscountApplicationConnection; - /** Whether the order has had any edits applied or not. */ - edited: Scalars['Boolean']; - /** The customer's email address. */ - email?: Maybe; - /** The financial status of the order. */ - financialStatus?: Maybe; - /** The fulfillment status for the order. */ - fulfillmentStatus: OrderFulfillmentStatus; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** List of the order’s line items. */ - lineItems: OrderLineItemConnection; - /** Returns a metafield found by namespace and key. */ - metafield?: Maybe; - /** - * The metafields associated with the resource matching the supplied list of namespaces and keys. - * - */ - metafields: Array>; - /** - * Unique identifier for the order that appears on the order. - * For example, _#1000_ or _Store1001. - * - */ - name: Scalars['String']; - /** A unique numeric identifier for the order for use by shop owner and customer. */ - orderNumber: Scalars['Int']; - /** The total cost of duties charged at checkout. */ - originalTotalDuties?: Maybe; - /** The total price of the order before any applied edits. */ - originalTotalPrice: MoneyV2; - /** The customer's phone number for receiving SMS notifications. */ - phone?: Maybe; - /** - * The date and time when the order was imported. - * This value can be set to dates in the past when importing from other systems. - * If no value is provided, it will be auto-generated based on current date and time. - * - */ - processedAt: Scalars['DateTime']; - /** The address to where the order will be shipped. */ - shippingAddress?: Maybe; - /** - * The discounts that have been allocated onto the shipping line by discount applications. - * - */ - shippingDiscountAllocations: Array; - /** The unique URL for the order's status page. */ - statusUrl: Scalars['URL']; - /** Price of the order before shipping and taxes. */ - subtotalPrice?: Maybe; - /** - * Price of the order before duties, shipping and taxes. - * @deprecated Use `subtotalPrice` instead. - */ - subtotalPriceV2?: Maybe; - /** List of the order’s successful fulfillments. */ - successfulFulfillments?: Maybe>; - /** The sum of all the prices of all the items in the order, duties, taxes and discounts included (must be positive). */ - totalPrice: MoneyV2; - /** - * The sum of all the prices of all the items in the order, duties, taxes and discounts included (must be positive). - * @deprecated Use `totalPrice` instead. - */ - totalPriceV2: MoneyV2; - /** The total amount that has been refunded. */ - totalRefunded: MoneyV2; - /** - * The total amount that has been refunded. - * @deprecated Use `totalRefunded` instead. - */ - totalRefundedV2: MoneyV2; - /** The total cost of shipping. */ - totalShippingPrice: MoneyV2; - /** - * The total cost of shipping. - * @deprecated Use `totalShippingPrice` instead. - */ - totalShippingPriceV2: MoneyV2; - /** The total cost of taxes. */ - totalTax?: Maybe; - /** - * The total cost of taxes. - * @deprecated Use `totalTax` instead. - */ - totalTaxV2?: Maybe; -}; - - -/** An order is a customer’s completed request to purchase one or more products from a shop. An order is created when a customer completes the checkout process, during which time they provides an email address, billing address and payment information. */ -export type OrderDiscountApplicationsArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - reverse?: InputMaybe; -}; - - -/** An order is a customer’s completed request to purchase one or more products from a shop. An order is created when a customer completes the checkout process, during which time they provides an email address, billing address and payment information. */ -export type OrderLineItemsArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - reverse?: InputMaybe; -}; - - -/** An order is a customer’s completed request to purchase one or more products from a shop. An order is created when a customer completes the checkout process, during which time they provides an email address, billing address and payment information. */ -export type OrderMetafieldArgs = { - key: Scalars['String']; - namespace: Scalars['String']; -}; - - -/** An order is a customer’s completed request to purchase one or more products from a shop. An order is created when a customer completes the checkout process, during which time they provides an email address, billing address and payment information. */ -export type OrderMetafieldsArgs = { - identifiers: Array; -}; - - -/** An order is a customer’s completed request to purchase one or more products from a shop. An order is created when a customer completes the checkout process, during which time they provides an email address, billing address and payment information. */ -export type OrderSuccessfulFulfillmentsArgs = { - first?: InputMaybe; -}; - -/** Represents the reason for the order's cancellation. */ -export enum OrderCancelReason { - /** The customer wanted to cancel the order. */ - Customer = 'CUSTOMER', - /** Payment was declined. */ - Declined = 'DECLINED', - /** The order was fraudulent. */ - Fraud = 'FRAUD', - /** There was insufficient inventory. */ - Inventory = 'INVENTORY', - /** The order was canceled for an unlisted reason. */ - Other = 'OTHER' -} - -/** - * An auto-generated type for paginating through multiple Orders. - * - */ -export type OrderConnection = { - __typename?: 'OrderConnection'; - /** A list of edges. */ - edges: Array; - /** A list of the nodes contained in OrderEdge. */ - nodes: Array; - /** Information to aid in pagination. */ - pageInfo: PageInfo; - /** The total count of Orders. */ - totalCount: Scalars['UnsignedInt64']; -}; - -/** - * An auto-generated type which holds one Order and a cursor during pagination. - * - */ -export type OrderEdge = { - __typename?: 'OrderEdge'; - /** A cursor for use in pagination. */ - cursor: Scalars['String']; - /** The item at the end of OrderEdge. */ - node: Order; -}; - -/** Represents the order's current financial status. */ -export enum OrderFinancialStatus { - /** Displayed as **Authorized**. */ - Authorized = 'AUTHORIZED', - /** Displayed as **Paid**. */ - Paid = 'PAID', - /** Displayed as **Partially paid**. */ - PartiallyPaid = 'PARTIALLY_PAID', - /** Displayed as **Partially refunded**. */ - PartiallyRefunded = 'PARTIALLY_REFUNDED', - /** Displayed as **Pending**. */ - Pending = 'PENDING', - /** Displayed as **Refunded**. */ - Refunded = 'REFUNDED', - /** Displayed as **Voided**. */ - Voided = 'VOIDED' -} - -/** Represents the order's aggregated fulfillment status for display purposes. */ -export enum OrderFulfillmentStatus { - /** Displayed as **Fulfilled**. All of the items in the order have been fulfilled. */ - Fulfilled = 'FULFILLED', - /** Displayed as **In progress**. Some of the items in the order have been fulfilled, or a request for fulfillment has been sent to the fulfillment service. */ - InProgress = 'IN_PROGRESS', - /** Displayed as **On hold**. All of the unfulfilled items in this order are on hold. */ - OnHold = 'ON_HOLD', - /** Displayed as **Open**. None of the items in the order have been fulfilled. Replaced by "UNFULFILLED" status. */ - Open = 'OPEN', - /** Displayed as **Partially fulfilled**. Some of the items in the order have been fulfilled. */ - PartiallyFulfilled = 'PARTIALLY_FULFILLED', - /** Displayed as **Pending fulfillment**. A request for fulfillment of some items awaits a response from the fulfillment service. Replaced by "IN_PROGRESS" status. */ - PendingFulfillment = 'PENDING_FULFILLMENT', - /** Displayed as **Restocked**. All of the items in the order have been restocked. Replaced by "UNFULFILLED" status. */ - Restocked = 'RESTOCKED', - /** Displayed as **Scheduled**. All of the unfulfilled items in this order are scheduled for fulfillment at later time. */ - Scheduled = 'SCHEDULED', - /** Displayed as **Unfulfilled**. None of the items in the order have been fulfilled. */ - Unfulfilled = 'UNFULFILLED' -} - -/** Represents a single line in an order. There is one line item for each distinct product variant. */ -export type OrderLineItem = { - __typename?: 'OrderLineItem'; - /** The number of entries associated to the line item minus the items that have been removed. */ - currentQuantity: Scalars['Int']; - /** List of custom attributes associated to the line item. */ - customAttributes: Array; - /** The discounts that have been allocated onto the order line item by discount applications. */ - discountAllocations: Array; - /** The total price of the line item, including discounts, and displayed in the presentment currency. */ - discountedTotalPrice: MoneyV2; - /** The total price of the line item, not including any discounts. The total price is calculated using the original unit price multiplied by the quantity, and it is displayed in the presentment currency. */ - originalTotalPrice: MoneyV2; - /** The number of products variants associated to the line item. */ - quantity: Scalars['Int']; - /** The title of the product combined with title of the variant. */ - title: Scalars['String']; - /** The product variant object associated to the line item. */ - variant?: Maybe; -}; - -/** - * An auto-generated type for paginating through multiple OrderLineItems. - * - */ -export type OrderLineItemConnection = { - __typename?: 'OrderLineItemConnection'; - /** A list of edges. */ - edges: Array; - /** A list of the nodes contained in OrderLineItemEdge. */ - nodes: Array; - /** Information to aid in pagination. */ - pageInfo: PageInfo; -}; - -/** - * An auto-generated type which holds one OrderLineItem and a cursor during pagination. - * - */ -export type OrderLineItemEdge = { - __typename?: 'OrderLineItemEdge'; - /** A cursor for use in pagination. */ - cursor: Scalars['String']; - /** The item at the end of OrderLineItemEdge. */ - node: OrderLineItem; -}; - -/** The set of valid sort keys for the Order query. */ -export enum OrderSortKeys { - /** Sort by the `id` value. */ - Id = 'ID', - /** Sort by the `processed_at` value. */ - ProcessedAt = 'PROCESSED_AT', - /** - * Sort by relevance to the search terms when the `query` parameter is specified on the connection. - * Don't use this sort key when no search query is specified. - * - */ - Relevance = 'RELEVANCE', - /** Sort by the `total_price` value. */ - TotalPrice = 'TOTAL_PRICE' -} - -/** Shopify merchants can create pages to hold static HTML content. Each Page object represents a custom page on the online store. */ -export type Page = HasMetafields & Node & OnlineStorePublishable & { - __typename?: 'Page'; - /** The description of the page, complete with HTML formatting. */ - body: Scalars['HTML']; - /** Summary of the page body. */ - bodySummary: Scalars['String']; - /** The timestamp of the page creation. */ - createdAt: Scalars['DateTime']; - /** A human-friendly unique string for the page automatically generated from its title. */ - handle: Scalars['String']; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** Returns a metafield found by namespace and key. */ - metafield?: Maybe; - /** - * The metafields associated with the resource matching the supplied list of namespaces and keys. - * - */ - metafields: Array>; - /** The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel. */ - onlineStoreUrl?: Maybe; - /** The page's SEO information. */ - seo?: Maybe; - /** The title of the page. */ - title: Scalars['String']; - /** The timestamp of the latest page update. */ - updatedAt: Scalars['DateTime']; -}; - - -/** Shopify merchants can create pages to hold static HTML content. Each Page object represents a custom page on the online store. */ -export type PageMetafieldArgs = { - key: Scalars['String']; - namespace: Scalars['String']; -}; - - -/** Shopify merchants can create pages to hold static HTML content. Each Page object represents a custom page on the online store. */ -export type PageMetafieldsArgs = { - identifiers: Array; -}; - -/** - * An auto-generated type for paginating through multiple Pages. - * - */ -export type PageConnection = { - __typename?: 'PageConnection'; - /** A list of edges. */ - edges: Array; - /** A list of the nodes contained in PageEdge. */ - nodes: Array; - /** Information to aid in pagination. */ - pageInfo: PageInfo; -}; - -/** - * An auto-generated type which holds one Page and a cursor during pagination. - * - */ -export type PageEdge = { - __typename?: 'PageEdge'; - /** A cursor for use in pagination. */ - cursor: Scalars['String']; - /** The item at the end of PageEdge. */ - node: Page; -}; - -/** - * Returns information about pagination in a connection, in accordance with the - * [Relay specification](https://relay.dev/graphql/connections.htm#sec-undefined.PageInfo). - * For more information, please read our [GraphQL Pagination Usage Guide](https://shopify.dev/api/usage/pagination-graphql). - * - */ -export type PageInfo = { - __typename?: 'PageInfo'; - /** The cursor corresponding to the last node in edges. */ - endCursor?: Maybe; - /** Whether there are more pages to fetch following the current page. */ - hasNextPage: Scalars['Boolean']; - /** Whether there are any pages prior to the current page. */ - hasPreviousPage: Scalars['Boolean']; - /** The cursor corresponding to the first node in edges. */ - startCursor?: Maybe; -}; - -/** The set of valid sort keys for the Page query. */ -export enum PageSortKeys { - /** Sort by the `id` value. */ - Id = 'ID', - /** - * Sort by relevance to the search terms when the `query` parameter is specified on the connection. - * Don't use this sort key when no search query is specified. - * - */ - Relevance = 'RELEVANCE', - /** Sort by the `title` value. */ - Title = 'TITLE', - /** Sort by the `updated_at` value. */ - UpdatedAt = 'UPDATED_AT' -} - -/** A payment applied to a checkout. */ -export type Payment = Node & { - __typename?: 'Payment'; - /** The amount of the payment. */ - amount: MoneyV2; - /** - * The amount of the payment. - * @deprecated Use `amount` instead. - */ - amountV2: MoneyV2; - /** The billing address for the payment. */ - billingAddress?: Maybe; - /** The checkout to which the payment belongs. */ - checkout: Checkout; - /** The credit card used for the payment in the case of direct payments. */ - creditCard?: Maybe; - /** A message describing a processing error during asynchronous processing. */ - errorMessage?: Maybe; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** - * A client-side generated token to identify a payment and perform idempotent operations. - * For more information, refer to - * [Idempotent requests](https://shopify.dev/api/usage/idempotent-requests). - * - */ - idempotencyKey?: Maybe; - /** The URL where the customer needs to be redirected so they can complete the 3D Secure payment flow. */ - nextActionUrl?: Maybe; - /** Whether the payment is still processing asynchronously. */ - ready: Scalars['Boolean']; - /** A flag to indicate if the payment is to be done in test mode for gateways that support it. */ - test: Scalars['Boolean']; - /** The actual transaction recorded by Shopify after having processed the payment with the gateway. */ - transaction?: Maybe; -}; - -/** Settings related to payments. */ -export type PaymentSettings = { - __typename?: 'PaymentSettings'; - /** List of the card brands which the shop accepts. */ - acceptedCardBrands: Array; - /** The url pointing to the endpoint to vault credit cards. */ - cardVaultUrl: Scalars['URL']; - /** The country where the shop is located. */ - countryCode: CountryCode; - /** The three-letter code for the shop's primary currency. */ - currencyCode: CurrencyCode; - /** A list of enabled currencies (ISO 4217 format) that the shop accepts. Merchants can enable currencies from their Shopify Payments settings in the Shopify admin. */ - enabledPresentmentCurrencies: Array; - /** The shop’s Shopify Payments account id. */ - shopifyPaymentsAccountId?: Maybe; - /** List of the digital wallets which the shop supports. */ - supportedDigitalWallets: Array; -}; - -/** The valid values for the types of payment token. */ -export enum PaymentTokenType { - /** Apple Pay token type. */ - ApplePay = 'APPLE_PAY', - /** Google Pay token type. */ - GooglePay = 'GOOGLE_PAY', - /** Shopify Pay token type. */ - ShopifyPay = 'SHOPIFY_PAY', - /** Stripe token type. */ - StripeVaultToken = 'STRIPE_VAULT_TOKEN', - /** Vault payment token type. */ - Vault = 'VAULT' -} - -/** A filter used to view a subset of products in a collection matching a specific price range. */ -export type PriceRangeFilter = { - /** The maximum price in the range. Empty indicates no max price. */ - max?: InputMaybe; - /** The minimum price in the range. Defaults to zero. */ - min?: InputMaybe; -}; - -/** The value of the percentage pricing object. */ -export type PricingPercentageValue = { - __typename?: 'PricingPercentageValue'; - /** The percentage value of the object. */ - percentage: Scalars['Float']; -}; - -/** The price value (fixed or percentage) for a discount application. */ -export type PricingValue = MoneyV2 | PricingPercentageValue; - -/** - * A product represents an individual item for sale in a Shopify store. Products are often physical, but they don't have to be. - * For example, a digital download (such as a movie, music or ebook file) also qualifies as a product, as do services (such as equipment rental, work for hire, customization of another product or an extended warranty). - */ -export type Product = HasMetafields & Node & OnlineStorePublishable & { - __typename?: 'Product'; - /** Indicates if at least one product variant is available for sale. */ - availableForSale: Scalars['Boolean']; - /** List of collections a product belongs to. */ - collections: CollectionConnection; - /** The compare at price of the product across all variants. */ - compareAtPriceRange: ProductPriceRange; - /** The date and time when the product was created. */ - createdAt: Scalars['DateTime']; - /** Stripped description of the product, single line with HTML tags removed. */ - description: Scalars['String']; - /** The description of the product, complete with HTML formatting. */ - descriptionHtml: Scalars['HTML']; - /** - * The featured image for the product. - * - * This field is functionally equivalent to `images(first: 1)`. - * - */ - featuredImage?: Maybe; - /** - * A human-friendly unique string for the Product automatically generated from its title. - * They are used by the Liquid templating language to refer to objects. - * - */ - handle: Scalars['String']; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** List of images associated with the product. */ - images: ImageConnection; - /** Whether the product is a gift card. */ - isGiftCard: Scalars['Boolean']; - /** The media associated with the product. */ - media: MediaConnection; - /** Returns a metafield found by namespace and key. */ - metafield?: Maybe; - /** - * The metafields associated with the resource matching the supplied list of namespaces and keys. - * - */ - metafields: Array>; - /** The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel. */ - onlineStoreUrl?: Maybe; - /** List of product options. */ - options: Array; - /** The price range. */ - priceRange: ProductPriceRange; - /** A categorization that a product can be tagged with, commonly used for filtering and searching. */ - productType: Scalars['String']; - /** The date and time when the product was published to the channel. */ - publishedAt: Scalars['DateTime']; - /** Whether the product can only be purchased with a selling plan. */ - requiresSellingPlan: Scalars['Boolean']; - /** A list of a product's available selling plan groups. A selling plan group represents a selling method. For example, 'Subscribe and save' is a selling method where customers pay for goods or services per delivery. A selling plan group contains individual selling plans. */ - sellingPlanGroups: SellingPlanGroupConnection; - /** The product's SEO information. */ - seo: Seo; - /** - * A comma separated list of tags that have been added to the product. - * Additional access scope required for private apps: unauthenticated_read_product_tags. - * - */ - tags: Array; - /** The product’s title. */ - title: Scalars['String']; - /** The total quantity of inventory in stock for this Product. */ - totalInventory?: Maybe; - /** - * The date and time when the product was last modified. - * A product's `updatedAt` value can change for different reasons. For example, if an order - * is placed for a product that has inventory tracking set up, then the inventory adjustment - * is counted as an update. - * - */ - updatedAt: Scalars['DateTime']; - /** - * Find a product’s variant based on its selected options. - * This is useful for converting a user’s selection of product options into a single matching variant. - * If there is not a variant for the selected options, `null` will be returned. - * - */ - variantBySelectedOptions?: Maybe; - /** List of the product’s variants. */ - variants: ProductVariantConnection; - /** The product’s vendor name. */ - vendor: Scalars['String']; -}; - - -/** - * A product represents an individual item for sale in a Shopify store. Products are often physical, but they don't have to be. - * For example, a digital download (such as a movie, music or ebook file) also qualifies as a product, as do services (such as equipment rental, work for hire, customization of another product or an extended warranty). - */ -export type ProductCollectionsArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - reverse?: InputMaybe; -}; - - -/** - * A product represents an individual item for sale in a Shopify store. Products are often physical, but they don't have to be. - * For example, a digital download (such as a movie, music or ebook file) also qualifies as a product, as do services (such as equipment rental, work for hire, customization of another product or an extended warranty). - */ -export type ProductDescriptionArgs = { - truncateAt?: InputMaybe; -}; - - -/** - * A product represents an individual item for sale in a Shopify store. Products are often physical, but they don't have to be. - * For example, a digital download (such as a movie, music or ebook file) also qualifies as a product, as do services (such as equipment rental, work for hire, customization of another product or an extended warranty). - */ -export type ProductImagesArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - reverse?: InputMaybe; - sortKey?: InputMaybe; -}; - - -/** - * A product represents an individual item for sale in a Shopify store. Products are often physical, but they don't have to be. - * For example, a digital download (such as a movie, music or ebook file) also qualifies as a product, as do services (such as equipment rental, work for hire, customization of another product or an extended warranty). - */ -export type ProductMediaArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - reverse?: InputMaybe; - sortKey?: InputMaybe; -}; - - -/** - * A product represents an individual item for sale in a Shopify store. Products are often physical, but they don't have to be. - * For example, a digital download (such as a movie, music or ebook file) also qualifies as a product, as do services (such as equipment rental, work for hire, customization of another product or an extended warranty). - */ -export type ProductMetafieldArgs = { - key: Scalars['String']; - namespace: Scalars['String']; -}; - - -/** - * A product represents an individual item for sale in a Shopify store. Products are often physical, but they don't have to be. - * For example, a digital download (such as a movie, music or ebook file) also qualifies as a product, as do services (such as equipment rental, work for hire, customization of another product or an extended warranty). - */ -export type ProductMetafieldsArgs = { - identifiers: Array; -}; - - -/** - * A product represents an individual item for sale in a Shopify store. Products are often physical, but they don't have to be. - * For example, a digital download (such as a movie, music or ebook file) also qualifies as a product, as do services (such as equipment rental, work for hire, customization of another product or an extended warranty). - */ -export type ProductOptionsArgs = { - first?: InputMaybe; -}; - - -/** - * A product represents an individual item for sale in a Shopify store. Products are often physical, but they don't have to be. - * For example, a digital download (such as a movie, music or ebook file) also qualifies as a product, as do services (such as equipment rental, work for hire, customization of another product or an extended warranty). - */ -export type ProductSellingPlanGroupsArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - reverse?: InputMaybe; -}; - - -/** - * A product represents an individual item for sale in a Shopify store. Products are often physical, but they don't have to be. - * For example, a digital download (such as a movie, music or ebook file) also qualifies as a product, as do services (such as equipment rental, work for hire, customization of another product or an extended warranty). - */ -export type ProductVariantBySelectedOptionsArgs = { - selectedOptions: Array; -}; - - -/** - * A product represents an individual item for sale in a Shopify store. Products are often physical, but they don't have to be. - * For example, a digital download (such as a movie, music or ebook file) also qualifies as a product, as do services (such as equipment rental, work for hire, customization of another product or an extended warranty). - */ -export type ProductVariantsArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - reverse?: InputMaybe; - sortKey?: InputMaybe; -}; - -/** The set of valid sort keys for the ProductCollection query. */ -export enum ProductCollectionSortKeys { - /** Sort by the `best-selling` value. */ - BestSelling = 'BEST_SELLING', - /** Sort by the `collection-default` value. */ - CollectionDefault = 'COLLECTION_DEFAULT', - /** Sort by the `created` value. */ - Created = 'CREATED', - /** Sort by the `id` value. */ - Id = 'ID', - /** Sort by the `manual` value. */ - Manual = 'MANUAL', - /** Sort by the `price` value. */ - Price = 'PRICE', - /** - * Sort by relevance to the search terms when the `query` parameter is specified on the connection. - * Don't use this sort key when no search query is specified. - * - */ - Relevance = 'RELEVANCE', - /** Sort by the `title` value. */ - Title = 'TITLE' -} - -/** - * An auto-generated type for paginating through multiple Products. - * - */ -export type ProductConnection = { - __typename?: 'ProductConnection'; - /** A list of edges. */ - edges: Array; - /** A list of available filters. */ - filters: Array; - /** A list of the nodes contained in ProductEdge. */ - nodes: Array; - /** Information to aid in pagination. */ - pageInfo: PageInfo; -}; - -/** - * An auto-generated type which holds one Product and a cursor during pagination. - * - */ -export type ProductEdge = { - __typename?: 'ProductEdge'; - /** A cursor for use in pagination. */ - cursor: Scalars['String']; - /** The item at the end of ProductEdge. */ - node: Product; -}; - -/** A filter used to view a subset of products in a collection. */ -export type ProductFilter = { - /** Filter on if the product is available for sale. */ - available?: InputMaybe; - /** A range of prices to filter with-in. */ - price?: InputMaybe; - /** A product metafield to filter on. */ - productMetafield?: InputMaybe; - /** The product type to filter on. */ - productType?: InputMaybe; - /** The product vendor to filter on. */ - productVendor?: InputMaybe; - /** A product tag to filter on. */ - tag?: InputMaybe; - /** A variant metafield to filter on. */ - variantMetafield?: InputMaybe; - /** A variant option to filter on. */ - variantOption?: InputMaybe; -}; - -/** The set of valid sort keys for the ProductImage query. */ -export enum ProductImageSortKeys { - /** Sort by the `created_at` value. */ - CreatedAt = 'CREATED_AT', - /** Sort by the `id` value. */ - Id = 'ID', - /** Sort by the `position` value. */ - Position = 'POSITION', - /** - * Sort by relevance to the search terms when the `query` parameter is specified on the connection. - * Don't use this sort key when no search query is specified. - * - */ - Relevance = 'RELEVANCE' -} - -/** The set of valid sort keys for the ProductMedia query. */ -export enum ProductMediaSortKeys { - /** Sort by the `id` value. */ - Id = 'ID', - /** Sort by the `position` value. */ - Position = 'POSITION', - /** - * Sort by relevance to the search terms when the `query` parameter is specified on the connection. - * Don't use this sort key when no search query is specified. - * - */ - Relevance = 'RELEVANCE' -} - -/** - * Product property names like "Size", "Color", and "Material" that the customers can select. - * Variants are selected based on permutations of these options. - * 255 characters limit each. - * - */ -export type ProductOption = Node & { - __typename?: 'ProductOption'; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** The product option’s name. */ - name: Scalars['String']; - /** The corresponding value to the product option name. */ - values: Array; -}; - -/** The price range of the product. */ -export type ProductPriceRange = { - __typename?: 'ProductPriceRange'; - /** The highest variant's price. */ - maxVariantPrice: MoneyV2; - /** The lowest variant's price. */ - minVariantPrice: MoneyV2; -}; - -/** The set of valid sort keys for the Product query. */ -export enum ProductSortKeys { - /** Sort by the `best_selling` value. */ - BestSelling = 'BEST_SELLING', - /** Sort by the `created_at` value. */ - CreatedAt = 'CREATED_AT', - /** Sort by the `id` value. */ - Id = 'ID', - /** Sort by the `price` value. */ - Price = 'PRICE', - /** Sort by the `product_type` value. */ - ProductType = 'PRODUCT_TYPE', - /** - * Sort by relevance to the search terms when the `query` parameter is specified on the connection. - * Don't use this sort key when no search query is specified. - * - */ - Relevance = 'RELEVANCE', - /** Sort by the `title` value. */ - Title = 'TITLE', - /** Sort by the `updated_at` value. */ - UpdatedAt = 'UPDATED_AT', - /** Sort by the `vendor` value. */ - Vendor = 'VENDOR' -} - -/** A product variant represents a different version of a product, such as differing sizes or differing colors. */ -export type ProductVariant = HasMetafields & Node & { - __typename?: 'ProductVariant'; - /** Indicates if the product variant is available for sale. */ - availableForSale: Scalars['Boolean']; - /** The barcode (for example, ISBN, UPC, or GTIN) associated with the variant. */ - barcode?: Maybe; - /** The compare at price of the variant. This can be used to mark a variant as on sale, when `compareAtPrice` is higher than `price`. */ - compareAtPrice?: Maybe; - /** - * The compare at price of the variant. This can be used to mark a variant as on sale, when `compareAtPriceV2` is higher than `priceV2`. - * @deprecated Use `compareAtPrice` instead. - */ - compareAtPriceV2?: Maybe; - /** Whether a product is out of stock but still available for purchase (used for backorders). */ - currentlyNotInStock: Scalars['Boolean']; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** - * Image associated with the product variant. This field falls back to the product image if no image is available. - * - */ - image?: Maybe; - /** Returns a metafield found by namespace and key. */ - metafield?: Maybe; - /** - * The metafields associated with the resource matching the supplied list of namespaces and keys. - * - */ - metafields: Array>; - /** The product variant’s price. */ - price: MoneyV2; - /** - * The product variant’s price. - * @deprecated Use `price` instead. - */ - priceV2: MoneyV2; - /** The product object that the product variant belongs to. */ - product: Product; - /** The total sellable quantity of the variant for online sales channels. */ - quantityAvailable?: Maybe; - /** Whether a customer needs to provide a shipping address when placing an order for the product variant. */ - requiresShipping: Scalars['Boolean']; - /** List of product options applied to the variant. */ - selectedOptions: Array; - /** Represents an association between a variant and a selling plan. Selling plan allocations describe which selling plans are available for each variant, and what their impact is on pricing. */ - sellingPlanAllocations: SellingPlanAllocationConnection; - /** The SKU (stock keeping unit) associated with the variant. */ - sku?: Maybe; - /** The in-store pickup availability of this variant by location. */ - storeAvailability: StoreAvailabilityConnection; - /** The product variant’s title. */ - title: Scalars['String']; - /** The unit price value for the variant based on the variant's measurement. */ - unitPrice?: Maybe; - /** The unit price measurement for the variant. */ - unitPriceMeasurement?: Maybe; - /** The weight of the product variant in the unit system specified with `weight_unit`. */ - weight?: Maybe; - /** Unit of measurement for weight. */ - weightUnit: WeightUnit; -}; - - -/** A product variant represents a different version of a product, such as differing sizes or differing colors. */ -export type ProductVariantMetafieldArgs = { - key: Scalars['String']; - namespace: Scalars['String']; -}; - - -/** A product variant represents a different version of a product, such as differing sizes or differing colors. */ -export type ProductVariantMetafieldsArgs = { - identifiers: Array; -}; - - -/** A product variant represents a different version of a product, such as differing sizes or differing colors. */ -export type ProductVariantSellingPlanAllocationsArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - reverse?: InputMaybe; -}; - - -/** A product variant represents a different version of a product, such as differing sizes or differing colors. */ -export type ProductVariantStoreAvailabilityArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - near?: InputMaybe; - reverse?: InputMaybe; -}; - -/** - * An auto-generated type for paginating through multiple ProductVariants. - * - */ -export type ProductVariantConnection = { - __typename?: 'ProductVariantConnection'; - /** A list of edges. */ - edges: Array; - /** A list of the nodes contained in ProductVariantEdge. */ - nodes: Array; - /** Information to aid in pagination. */ - pageInfo: PageInfo; -}; - -/** - * An auto-generated type which holds one ProductVariant and a cursor during pagination. - * - */ -export type ProductVariantEdge = { - __typename?: 'ProductVariantEdge'; - /** A cursor for use in pagination. */ - cursor: Scalars['String']; - /** The item at the end of ProductVariantEdge. */ - node: ProductVariant; -}; - -/** The set of valid sort keys for the ProductVariant query. */ -export enum ProductVariantSortKeys { - /** Sort by the `id` value. */ - Id = 'ID', - /** Sort by the `position` value. */ - Position = 'POSITION', - /** - * Sort by relevance to the search terms when the `query` parameter is specified on the connection. - * Don't use this sort key when no search query is specified. - * - */ - Relevance = 'RELEVANCE', - /** Sort by the `sku` value. */ - Sku = 'SKU', - /** Sort by the `title` value. */ - Title = 'TITLE' -} - -/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ -export type QueryRoot = { - __typename?: 'QueryRoot'; - /** List of the shop's articles. */ - articles: ArticleConnection; - /** Fetch a specific `Blog` by one of its unique attributes. */ - blog?: Maybe; - /** - * Find a blog by its handle. - * @deprecated Use `blog` instead. - */ - blogByHandle?: Maybe; - /** List of the shop's blogs. */ - blogs: BlogConnection; - /** - * Retrieve a cart by its ID. For more information, refer to - * [Manage a cart with the Storefront API](https://shopify.dev/custom-storefronts/cart/manage). - * - */ - cart?: Maybe; - /** Fetch a specific `Collection` by one of its unique attributes. */ - collection?: Maybe; - /** - * Find a collection by its handle. - * @deprecated Use `collection` instead. - */ - collectionByHandle?: Maybe; - /** List of the shop’s collections. */ - collections: CollectionConnection; - /** Find a customer by its access token. */ - customer?: Maybe; - /** Returns the localized experiences configured for the shop. */ - localization: Localization; - /** - * List of the shop's locations that support in-store pickup. - * - * When sorting by distance, you must specify a location via the `near` argument. - * - */ - locations: LocationConnection; - /** A storefront menu. */ - menu?: Maybe; - /** Fetch a specific Metaobject by one of its unique identifiers. */ - metaobject?: Maybe; - /** All active metaobjects for the shop. */ - metaobjects: MetaobjectConnection; - /** Returns a specific node by ID. */ - node?: Maybe; - /** Returns the list of nodes with the given IDs. */ - nodes: Array>; - /** Fetch a specific `Page` by one of its unique attributes. */ - page?: Maybe; - /** - * Find a page by its handle. - * @deprecated Use `page` instead. - */ - pageByHandle?: Maybe; - /** List of the shop's pages. */ - pages: PageConnection; - /** Fetch a specific `Product` by one of its unique attributes. */ - product?: Maybe; - /** - * Find a product by its handle. - * @deprecated Use `product` instead. - */ - productByHandle?: Maybe; - /** - * Find recommended products related to a given `product_id`. - * To learn more about how recommendations are generated, see - * [*Showing product recommendations on product pages*](https://help.shopify.com/themes/development/recommended-products). - * - */ - productRecommendations?: Maybe>; - /** - * Tags added to products. - * Additional access scope required: unauthenticated_read_product_tags. - * - */ - productTags: StringConnection; - /** List of product types for the shop's products that are published to your app. */ - productTypes: StringConnection; - /** List of the shop’s products. */ - products: ProductConnection; - /** The list of public Storefront API versions, including supported, release candidate and unstable versions. */ - publicApiVersions: Array; - /** The shop associated with the storefront access token. */ - shop: Shop; - /** A list of redirects for a shop. */ - urlRedirects: UrlRedirectConnection; -}; - - -/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ -export type QueryRootArticlesArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - query?: InputMaybe; - reverse?: InputMaybe; - sortKey?: InputMaybe; -}; - - -/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ -export type QueryRootBlogArgs = { - handle?: InputMaybe; - id?: InputMaybe; -}; - - -/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ -export type QueryRootBlogByHandleArgs = { - handle: Scalars['String']; -}; - - -/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ -export type QueryRootBlogsArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - query?: InputMaybe; - reverse?: InputMaybe; - sortKey?: InputMaybe; -}; - - -/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ -export type QueryRootCartArgs = { - id: Scalars['ID']; -}; - - -/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ -export type QueryRootCollectionArgs = { - handle?: InputMaybe; - id?: InputMaybe; -}; - - -/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ -export type QueryRootCollectionByHandleArgs = { - handle: Scalars['String']; -}; - - -/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ -export type QueryRootCollectionsArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - query?: InputMaybe; - reverse?: InputMaybe; - sortKey?: InputMaybe; -}; - - -/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ -export type QueryRootCustomerArgs = { - customerAccessToken: Scalars['String']; -}; - - -/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ -export type QueryRootLocationsArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - near?: InputMaybe; - reverse?: InputMaybe; - sortKey?: InputMaybe; -}; - - -/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ -export type QueryRootMenuArgs = { - handle: Scalars['String']; -}; - - -/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ -export type QueryRootMetaobjectArgs = { - handle?: InputMaybe; - id?: InputMaybe; -}; - - -/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ -export type QueryRootMetaobjectsArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - reverse?: InputMaybe; - sortKey?: InputMaybe; - type: Scalars['String']; -}; - - -/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ -export type QueryRootNodeArgs = { - id: Scalars['ID']; -}; - - -/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ -export type QueryRootNodesArgs = { - ids: Array; -}; - - -/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ -export type QueryRootPageArgs = { - handle?: InputMaybe; - id?: InputMaybe; -}; - - -/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ -export type QueryRootPageByHandleArgs = { - handle: Scalars['String']; -}; - - -/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ -export type QueryRootPagesArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - query?: InputMaybe; - reverse?: InputMaybe; - sortKey?: InputMaybe; -}; - - -/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ -export type QueryRootProductArgs = { - handle?: InputMaybe; - id?: InputMaybe; -}; - - -/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ -export type QueryRootProductByHandleArgs = { - handle: Scalars['String']; -}; - - -/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ -export type QueryRootProductRecommendationsArgs = { - productId: Scalars['ID']; -}; - - -/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ -export type QueryRootProductTagsArgs = { - first: Scalars['Int']; -}; - - -/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ -export type QueryRootProductTypesArgs = { - first: Scalars['Int']; -}; - - -/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ -export type QueryRootProductsArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - query?: InputMaybe; - reverse?: InputMaybe; - sortKey?: InputMaybe; -}; - - -/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ -export type QueryRootUrlRedirectsArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - query?: InputMaybe; - reverse?: InputMaybe; -}; - -/** SEO information. */ -export type Seo = { - __typename?: 'SEO'; - /** The meta description. */ - description?: Maybe; - /** The SEO title. */ - title?: Maybe; -}; - -/** - * Script discount applications capture the intentions of a discount that - * was created by a Shopify Script. - * - */ -export type ScriptDiscountApplication = DiscountApplication & { - __typename?: 'ScriptDiscountApplication'; - /** The method by which the discount's value is allocated to its entitled items. */ - allocationMethod: DiscountApplicationAllocationMethod; - /** Which lines of targetType that the discount is allocated over. */ - targetSelection: DiscountApplicationTargetSelection; - /** The type of line that the discount is applicable towards. */ - targetType: DiscountApplicationTargetType; - /** The title of the application as defined by the Script. */ - title: Scalars['String']; - /** The value of the discount application. */ - value: PricingValue; -}; - -/** - * Properties used by customers to select a product variant. - * Products can have multiple options, like different sizes or colors. - * - */ -export type SelectedOption = { - __typename?: 'SelectedOption'; - /** The product option’s name. */ - name: Scalars['String']; - /** The product option’s value. */ - value: Scalars['String']; -}; - -/** Specifies the input fields required for a selected option. */ -export type SelectedOptionInput = { - /** The product option’s name. */ - name: Scalars['String']; - /** The product option’s value. */ - value: Scalars['String']; -}; - -/** Represents how products and variants can be sold and purchased. */ -export type SellingPlan = { - __typename?: 'SellingPlan'; - /** The initial payment due for the purchase. */ - checkoutCharge: SellingPlanCheckoutCharge; - /** The description of the selling plan. */ - description?: Maybe; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** The name of the selling plan. For example, '6 weeks of prepaid granola, delivered weekly'. */ - name: Scalars['String']; - /** The selling plan options available in the drop-down list in the storefront. For example, 'Delivery every week' or 'Delivery every 2 weeks' specifies the delivery frequency options for the product. Individual selling plans contribute their options to the associated selling plan group. For example, a selling plan group might have an option called `option1: Delivery every`. One selling plan in that group could contribute `option1: 2 weeks` with the pricing for that option, and another selling plan could contribute `option1: 4 weeks`, with different pricing. */ - options: Array; - /** The price adjustments that a selling plan makes when a variant is purchased with a selling plan. */ - priceAdjustments: Array; - /** Whether purchasing the selling plan will result in multiple deliveries. */ - recurringDeliveries: Scalars['Boolean']; -}; - -/** Represents an association between a variant and a selling plan. Selling plan allocations describe the options offered for each variant, and the price of the variant when purchased with a selling plan. */ -export type SellingPlanAllocation = { - __typename?: 'SellingPlanAllocation'; - /** The checkout charge amount due for the purchase. */ - checkoutChargeAmount: MoneyV2; - /** A list of price adjustments, with a maximum of two. When there are two, the first price adjustment goes into effect at the time of purchase, while the second one starts after a certain number of orders. A price adjustment represents how a selling plan affects pricing when a variant is purchased with a selling plan. Prices display in the customer's currency if the shop is configured for it. */ - priceAdjustments: Array; - /** The remaining balance charge amount due for the purchase. */ - remainingBalanceChargeAmount: MoneyV2; - /** A representation of how products and variants can be sold and purchased. For example, an individual selling plan could be '6 weeks of prepaid granola, delivered weekly'. */ - sellingPlan: SellingPlan; -}; - -/** - * An auto-generated type for paginating through multiple SellingPlanAllocations. - * - */ -export type SellingPlanAllocationConnection = { - __typename?: 'SellingPlanAllocationConnection'; - /** A list of edges. */ - edges: Array; - /** A list of the nodes contained in SellingPlanAllocationEdge. */ - nodes: Array; - /** Information to aid in pagination. */ - pageInfo: PageInfo; -}; - -/** - * An auto-generated type which holds one SellingPlanAllocation and a cursor during pagination. - * - */ -export type SellingPlanAllocationEdge = { - __typename?: 'SellingPlanAllocationEdge'; - /** A cursor for use in pagination. */ - cursor: Scalars['String']; - /** The item at the end of SellingPlanAllocationEdge. */ - node: SellingPlanAllocation; -}; - -/** The resulting prices for variants when they're purchased with a specific selling plan. */ -export type SellingPlanAllocationPriceAdjustment = { - __typename?: 'SellingPlanAllocationPriceAdjustment'; - /** The price of the variant when it's purchased without a selling plan for the same number of deliveries. For example, if a customer purchases 6 deliveries of $10.00 granola separately, then the price is 6 x $10.00 = $60.00. */ - compareAtPrice: MoneyV2; - /** The effective price for a single delivery. For example, for a prepaid subscription plan that includes 6 deliveries at the price of $48.00, the per delivery price is $8.00. */ - perDeliveryPrice: MoneyV2; - /** The price of the variant when it's purchased with a selling plan For example, for a prepaid subscription plan that includes 6 deliveries of $10.00 granola, where the customer gets 20% off, the price is 6 x $10.00 x 0.80 = $48.00. */ - price: MoneyV2; - /** The resulting price per unit for the variant associated with the selling plan. If the variant isn't sold by quantity or measurement, then this field returns `null`. */ - unitPrice?: Maybe; -}; - -/** The initial payment due for the purchase. */ -export type SellingPlanCheckoutCharge = { - __typename?: 'SellingPlanCheckoutCharge'; - /** The charge type for the checkout charge. */ - type: SellingPlanCheckoutChargeType; - /** The charge value for the checkout charge. */ - value: SellingPlanCheckoutChargeValue; -}; - -/** The percentage value of the price used for checkout charge. */ -export type SellingPlanCheckoutChargePercentageValue = { - __typename?: 'SellingPlanCheckoutChargePercentageValue'; - /** The percentage value of the price used for checkout charge. */ - percentage: Scalars['Float']; -}; - -/** The checkout charge when the full amount isn't charged at checkout. */ -export enum SellingPlanCheckoutChargeType { - /** The checkout charge is a percentage of the product or variant price. */ - Percentage = 'PERCENTAGE', - /** The checkout charge is a fixed price amount. */ - Price = 'PRICE' -} - -/** The portion of the price to be charged at checkout. */ -export type SellingPlanCheckoutChargeValue = MoneyV2 | SellingPlanCheckoutChargePercentageValue; - -/** - * An auto-generated type for paginating through multiple SellingPlans. - * - */ -export type SellingPlanConnection = { - __typename?: 'SellingPlanConnection'; - /** A list of edges. */ - edges: Array; - /** A list of the nodes contained in SellingPlanEdge. */ - nodes: Array; - /** Information to aid in pagination. */ - pageInfo: PageInfo; -}; - -/** - * An auto-generated type which holds one SellingPlan and a cursor during pagination. - * - */ -export type SellingPlanEdge = { - __typename?: 'SellingPlanEdge'; - /** A cursor for use in pagination. */ - cursor: Scalars['String']; - /** The item at the end of SellingPlanEdge. */ - node: SellingPlan; -}; - -/** A fixed amount that's deducted from the original variant price. For example, $10.00 off. */ -export type SellingPlanFixedAmountPriceAdjustment = { - __typename?: 'SellingPlanFixedAmountPriceAdjustment'; - /** The money value of the price adjustment. */ - adjustmentAmount: MoneyV2; -}; - -/** A fixed price adjustment for a variant that's purchased with a selling plan. */ -export type SellingPlanFixedPriceAdjustment = { - __typename?: 'SellingPlanFixedPriceAdjustment'; - /** A new price of the variant when it's purchased with the selling plan. */ - price: MoneyV2; -}; - -/** Represents a selling method. For example, 'Subscribe and save' is a selling method where customers pay for goods or services per delivery. A selling plan group contains individual selling plans. */ -export type SellingPlanGroup = { - __typename?: 'SellingPlanGroup'; - /** A display friendly name for the app that created the selling plan group. */ - appName?: Maybe; - /** The name of the selling plan group. */ - name: Scalars['String']; - /** Represents the selling plan options available in the drop-down list in the storefront. For example, 'Delivery every week' or 'Delivery every 2 weeks' specifies the delivery frequency options for the product. */ - options: Array; - /** A list of selling plans in a selling plan group. A selling plan is a representation of how products and variants can be sold and purchased. For example, an individual selling plan could be '6 weeks of prepaid granola, delivered weekly'. */ - sellingPlans: SellingPlanConnection; -}; - - -/** Represents a selling method. For example, 'Subscribe and save' is a selling method where customers pay for goods or services per delivery. A selling plan group contains individual selling plans. */ -export type SellingPlanGroupSellingPlansArgs = { - after?: InputMaybe; - before?: InputMaybe; - first?: InputMaybe; - last?: InputMaybe; - reverse?: InputMaybe; -}; - -/** - * An auto-generated type for paginating through multiple SellingPlanGroups. - * - */ -export type SellingPlanGroupConnection = { - __typename?: 'SellingPlanGroupConnection'; - /** A list of edges. */ - edges: Array; - /** A list of the nodes contained in SellingPlanGroupEdge. */ - nodes: Array; - /** Information to aid in pagination. */ - pageInfo: PageInfo; -}; - -/** - * An auto-generated type which holds one SellingPlanGroup and a cursor during pagination. - * - */ -export type SellingPlanGroupEdge = { - __typename?: 'SellingPlanGroupEdge'; - /** A cursor for use in pagination. */ - cursor: Scalars['String']; - /** The item at the end of SellingPlanGroupEdge. */ - node: SellingPlanGroup; -}; - -/** - * Represents an option on a selling plan group that's available in the drop-down list in the storefront. - * - * Individual selling plans contribute their options to the associated selling plan group. For example, a selling plan group might have an option called `option1: Delivery every`. One selling plan in that group could contribute `option1: 2 weeks` with the pricing for that option, and another selling plan could contribute `option1: 4 weeks`, with different pricing. - */ -export type SellingPlanGroupOption = { - __typename?: 'SellingPlanGroupOption'; - /** The name of the option. For example, 'Delivery every'. */ - name: Scalars['String']; - /** The values for the options specified by the selling plans in the selling plan group. For example, '1 week', '2 weeks', '3 weeks'. */ - values: Array; -}; - -/** An option provided by a Selling Plan. */ -export type SellingPlanOption = { - __typename?: 'SellingPlanOption'; - /** The name of the option (ie "Delivery every"). */ - name?: Maybe; - /** The value of the option (ie "Month"). */ - value?: Maybe; -}; - -/** A percentage amount that's deducted from the original variant price. For example, 10% off. */ -export type SellingPlanPercentagePriceAdjustment = { - __typename?: 'SellingPlanPercentagePriceAdjustment'; - /** The percentage value of the price adjustment. */ - adjustmentPercentage: Scalars['Int']; -}; - -/** Represents by how much the price of a variant associated with a selling plan is adjusted. Each variant can have up to two price adjustments. If a variant has multiple price adjustments, then the first price adjustment applies when the variant is initially purchased. The second price adjustment applies after a certain number of orders (specified by the `orderCount` field) are made. If a selling plan doesn't have any price adjustments, then the unadjusted price of the variant is the effective price. */ -export type SellingPlanPriceAdjustment = { - __typename?: 'SellingPlanPriceAdjustment'; - /** The type of price adjustment. An adjustment value can have one of three types: percentage, amount off, or a new price. */ - adjustmentValue: SellingPlanPriceAdjustmentValue; - /** The number of orders that the price adjustment applies to. If the price adjustment always applies, then this field is `null`. */ - orderCount?: Maybe; -}; - -/** Represents by how much the price of a variant associated with a selling plan is adjusted. Each variant can have up to two price adjustments. */ -export type SellingPlanPriceAdjustmentValue = SellingPlanFixedAmountPriceAdjustment | SellingPlanFixedPriceAdjustment | SellingPlanPercentagePriceAdjustment; - -/** A shipping rate to be applied to a checkout. */ -export type ShippingRate = { - __typename?: 'ShippingRate'; - /** Human-readable unique identifier for this shipping rate. */ - handle: Scalars['String']; - /** Price of this shipping rate. */ - price: MoneyV2; - /** - * Price of this shipping rate. - * @deprecated Use `price` instead. - */ - priceV2: MoneyV2; - /** Title of this shipping rate. */ - title: Scalars['String']; -}; - -/** Shop represents a collection of the general settings and information about the shop. */ -export type Shop = HasMetafields & Node & { - __typename?: 'Shop'; - /** The shop's branding configuration. */ - brand?: Maybe; - /** A description of the shop. */ - description?: Maybe; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** Returns a metafield found by namespace and key. */ - metafield?: Maybe; - /** - * The metafields associated with the resource matching the supplied list of namespaces and keys. - * - */ - metafields: Array>; - /** A string representing the way currency is formatted when the currency isn’t specified. */ - moneyFormat: Scalars['String']; - /** The shop’s name. */ - name: Scalars['String']; - /** Settings related to payments. */ - paymentSettings: PaymentSettings; - /** The primary domain of the shop’s Online Store. */ - primaryDomain: Domain; - /** The shop’s privacy policy. */ - privacyPolicy?: Maybe; - /** The shop’s refund policy. */ - refundPolicy?: Maybe; - /** The shop’s shipping policy. */ - shippingPolicy?: Maybe; - /** Countries that the shop ships to. */ - shipsToCountries: Array; - /** The shop’s subscription policy. */ - subscriptionPolicy?: Maybe; - /** The shop’s terms of service. */ - termsOfService?: Maybe; -}; - - -/** Shop represents a collection of the general settings and information about the shop. */ -export type ShopMetafieldArgs = { - key: Scalars['String']; - namespace: Scalars['String']; -}; - - -/** Shop represents a collection of the general settings and information about the shop. */ -export type ShopMetafieldsArgs = { - identifiers: Array; -}; - -/** Policy that a merchant has configured for their store, such as their refund or privacy policy. */ -export type ShopPolicy = Node & { - __typename?: 'ShopPolicy'; - /** Policy text, maximum size of 64kb. */ - body: Scalars['String']; - /** Policy’s handle. */ - handle: Scalars['String']; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** Policy’s title. */ - title: Scalars['String']; - /** Public URL to the policy. */ - url: Scalars['URL']; -}; - -/** - * A policy for the store that comes with a default value, such as a subscription policy. - * If the merchant hasn't configured a policy for their store, then the policy will return the default value. - * Otherwise, the policy will return the merchant-configured value. - * - */ -export type ShopPolicyWithDefault = { - __typename?: 'ShopPolicyWithDefault'; - /** The text of the policy. Maximum size: 64KB. */ - body: Scalars['String']; - /** The handle of the policy. */ - handle: Scalars['String']; - /** The unique identifier of the policy. A default policy doesn't have an ID. */ - id?: Maybe; - /** The title of the policy. */ - title: Scalars['String']; - /** Public URL to the policy. */ - url: Scalars['URL']; -}; - -/** - * The availability of a product variant at a particular location. - * Local pick-up must be enabled in the store's shipping settings, otherwise this will return an empty result. - * - */ -export type StoreAvailability = { - __typename?: 'StoreAvailability'; - /** Whether the product variant is in-stock at this location. */ - available: Scalars['Boolean']; - /** The location where this product variant is stocked at. */ - location: Location; - /** Returns the estimated amount of time it takes for pickup to be ready (Example: Usually ready in 24 hours). */ - pickUpTime: Scalars['String']; -}; - -/** - * An auto-generated type for paginating through multiple StoreAvailabilities. - * - */ -export type StoreAvailabilityConnection = { - __typename?: 'StoreAvailabilityConnection'; - /** A list of edges. */ - edges: Array; - /** A list of the nodes contained in StoreAvailabilityEdge. */ - nodes: Array; - /** Information to aid in pagination. */ - pageInfo: PageInfo; -}; - -/** - * An auto-generated type which holds one StoreAvailability and a cursor during pagination. - * - */ -export type StoreAvailabilityEdge = { - __typename?: 'StoreAvailabilityEdge'; - /** A cursor for use in pagination. */ - cursor: Scalars['String']; - /** The item at the end of StoreAvailabilityEdge. */ - node: StoreAvailability; -}; - -/** - * An auto-generated type for paginating through a list of Strings. - * - */ -export type StringConnection = { - __typename?: 'StringConnection'; - /** A list of edges. */ - edges: Array; - /** Information to aid in pagination. */ - pageInfo: PageInfo; -}; - -/** - * An auto-generated type which holds one String and a cursor during pagination. - * - */ -export type StringEdge = { - __typename?: 'StringEdge'; - /** A cursor for use in pagination. */ - cursor: Scalars['String']; - /** The item at the end of StringEdge. */ - node: Scalars['String']; -}; - -/** - * Specifies the fields required to complete a checkout with - * a tokenized payment. - * - */ -export type TokenizedPaymentInputV3 = { - /** The billing address for the payment. */ - billingAddress: MailingAddressInput; - /** A unique client generated key used to avoid duplicate charges. When a duplicate payment is found, the original is returned instead of creating a new one. For more information, refer to [Idempotent requests](https://shopify.dev/api/usage/idempotent-requests). */ - idempotencyKey: Scalars['String']; - /** Public Hash Key used for AndroidPay payments only. */ - identifier?: InputMaybe; - /** The amount and currency of the payment. */ - paymentAmount: MoneyInput; - /** A simple string or JSON containing the required payment data for the tokenized payment. */ - paymentData: Scalars['String']; - /** Whether to execute the payment in test mode, if possible. Test mode is not supported in production stores. Defaults to `false`. */ - test?: InputMaybe; - /** The type of payment token. */ - type: PaymentTokenType; -}; - -/** An object representing exchange of money for a product or service. */ -export type Transaction = { - __typename?: 'Transaction'; - /** The amount of money that the transaction was for. */ - amount: MoneyV2; - /** - * The amount of money that the transaction was for. - * @deprecated Use `amount` instead. - */ - amountV2: MoneyV2; - /** The kind of the transaction. */ - kind: TransactionKind; - /** - * The status of the transaction. - * @deprecated Use `statusV2` instead. - */ - status: TransactionStatus; - /** The status of the transaction. */ - statusV2?: Maybe; - /** Whether the transaction was done in test mode or not. */ - test: Scalars['Boolean']; -}; - -/** The different kinds of order transactions. */ -export enum TransactionKind { - /** - * An amount reserved against the cardholder's funding source. - * Money does not change hands until the authorization is captured. - * - */ - Authorization = 'AUTHORIZATION', - /** A transfer of the money that was reserved during the authorization stage. */ - Capture = 'CAPTURE', - /** Money returned to the customer when they have paid too much. */ - Change = 'CHANGE', - /** An authorization for a payment taken with an EMV credit card reader. */ - EmvAuthorization = 'EMV_AUTHORIZATION', - /** An authorization and capture performed together in a single step. */ - Sale = 'SALE' -} - -/** Transaction statuses describe the status of a transaction. */ -export enum TransactionStatus { - /** There was an error while processing the transaction. */ - Error = 'ERROR', - /** The transaction failed. */ - Failure = 'FAILURE', - /** The transaction is pending. */ - Pending = 'PENDING', - /** The transaction succeeded. */ - Success = 'SUCCESS' -} - -/** - * The measurement used to calculate a unit price for a product variant (e.g. $9.99 / 100ml). - * - */ -export type UnitPriceMeasurement = { - __typename?: 'UnitPriceMeasurement'; - /** The type of unit of measurement for the unit price measurement. */ - measuredType?: Maybe; - /** The quantity unit for the unit price measurement. */ - quantityUnit?: Maybe; - /** The quantity value for the unit price measurement. */ - quantityValue: Scalars['Float']; - /** The reference unit for the unit price measurement. */ - referenceUnit?: Maybe; - /** The reference value for the unit price measurement. */ - referenceValue: Scalars['Int']; -}; - -/** The accepted types of unit of measurement. */ -export enum UnitPriceMeasurementMeasuredType { - /** Unit of measurements representing areas. */ - Area = 'AREA', - /** Unit of measurements representing lengths. */ - Length = 'LENGTH', - /** Unit of measurements representing volumes. */ - Volume = 'VOLUME', - /** Unit of measurements representing weights. */ - Weight = 'WEIGHT' -} - -/** The valid units of measurement for a unit price measurement. */ -export enum UnitPriceMeasurementMeasuredUnit { - /** 100 centiliters equals 1 liter. */ - Cl = 'CL', - /** 100 centimeters equals 1 meter. */ - Cm = 'CM', - /** Metric system unit of weight. */ - G = 'G', - /** 1 kilogram equals 1000 grams. */ - Kg = 'KG', - /** Metric system unit of volume. */ - L = 'L', - /** Metric system unit of length. */ - M = 'M', - /** Metric system unit of area. */ - M2 = 'M2', - /** 1 cubic meter equals 1000 liters. */ - M3 = 'M3', - /** 1000 milligrams equals 1 gram. */ - Mg = 'MG', - /** 1000 milliliters equals 1 liter. */ - Ml = 'ML', - /** 1000 millimeters equals 1 meter. */ - Mm = 'MM' -} - -/** Systems of weights and measures. */ -export enum UnitSystem { - /** Imperial system of weights and measures. */ - ImperialSystem = 'IMPERIAL_SYSTEM', - /** Metric system of weights and measures. */ - MetricSystem = 'METRIC_SYSTEM' -} - -/** A redirect on the online store. */ -export type UrlRedirect = Node & { - __typename?: 'UrlRedirect'; - /** The ID of the URL redirect. */ - id: Scalars['ID']; - /** The old path to be redirected from. When the user visits this path, they'll be redirected to the target location. */ - path: Scalars['String']; - /** The target location where the user will be redirected to. */ - target: Scalars['String']; -}; - -/** - * An auto-generated type for paginating through multiple UrlRedirects. - * - */ -export type UrlRedirectConnection = { - __typename?: 'UrlRedirectConnection'; - /** A list of edges. */ - edges: Array; - /** A list of the nodes contained in UrlRedirectEdge. */ - nodes: Array; - /** Information to aid in pagination. */ - pageInfo: PageInfo; -}; - -/** - * An auto-generated type which holds one UrlRedirect and a cursor during pagination. - * - */ -export type UrlRedirectEdge = { - __typename?: 'UrlRedirectEdge'; - /** A cursor for use in pagination. */ - cursor: Scalars['String']; - /** The item at the end of UrlRedirectEdge. */ - node: UrlRedirect; -}; - -/** Represents an error in the input of a mutation. */ -export type UserError = DisplayableError & { - __typename?: 'UserError'; - /** The path to the input field that caused the error. */ - field?: Maybe>; - /** The error message. */ - message: Scalars['String']; -}; - -/** A filter used to view a subset of products in a collection matching a specific variant option. */ -export type VariantOptionFilter = { - /** The name of the variant option to filter on. */ - name: Scalars['String']; - /** The value of the variant option to filter on. */ - value: Scalars['String']; -}; - -/** Represents a Shopify hosted video. */ -export type Video = Media & Node & { - __typename?: 'Video'; - /** A word or phrase to share the nature or contents of a media. */ - alt?: Maybe; - /** A globally-unique identifier. */ - id: Scalars['ID']; - /** The media content type. */ - mediaContentType: MediaContentType; - /** The preview image for the media. */ - previewImage?: Maybe; - /** The sources for a video. */ - sources: Array; -}; - -/** Represents a source for a Shopify hosted video. */ -export type VideoSource = { - __typename?: 'VideoSource'; - /** The format of the video source. */ - format: Scalars['String']; - /** The height of the video. */ - height: Scalars['Int']; - /** The video MIME type. */ - mimeType: Scalars['String']; - /** The URL of the video. */ - url: Scalars['String']; - /** The width of the video. */ - width: Scalars['Int']; -}; - -/** Units of measurement for weight. */ -export enum WeightUnit { - /** Metric system unit of mass. */ - Grams = 'GRAMS', - /** 1 kilogram equals 1000 grams. */ - Kilograms = 'KILOGRAMS', - /** Imperial system unit of mass. */ - Ounces = 'OUNCES', - /** 1 pound equals 16 ounces. */ - Pounds = 'POUNDS' -} - -export type FetchCartQueryVariables = Exact<{ - id: Scalars['ID']; -}>; - - -export type FetchCartQuery = { __typename?: 'QueryRoot', cart?: { __typename?: 'Cart', id: string, checkoutUrl: any, lines: { __typename?: 'CartLineConnection', nodes: Array<{ __typename?: 'CartLine', id: string, quantity: number, merchandise: { __typename?: 'ProductVariant', id: string, title: string, selectedOptions: Array<{ __typename?: 'SelectedOption', name: string, value: string }>, priceV2: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode }, image?: { __typename?: 'Image', id?: string | null, altText?: string | null, url: any, width?: number | null, height?: number | null } | null, product: { __typename?: 'Product', id: string, title: string, handle: string, description: string } }, cost: { __typename?: 'CartLineCost', subtotalAmount: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode } } }> }, cost: { __typename?: 'CartCost', subtotalAmount: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode } } } | null }; - -export type FetchCollectionsQueryVariables = Exact<{ [key: string]: never; }>; - - -export type FetchCollectionsQuery = { __typename?: 'QueryRoot', collections: { __typename?: 'CollectionConnection', nodes: Array<{ __typename?: 'Collection', id: string, title: string, handle: string, descriptionHtml: any, products: { __typename?: 'ProductConnection', nodes: Array<{ __typename?: 'Product', id: string, title: string, descriptionHtml: any, handle: string, productType: string, tags: Array, onlineStoreUrl?: any | null, availableForSale: boolean, options: Array<{ __typename?: 'ProductOption', name: string, values: Array }>, variants: { __typename?: 'ProductVariantConnection', nodes: Array<{ __typename?: 'ProductVariant', id: string, title: string, availableForSale: boolean, quantityAvailable?: number | null, compareAtPriceV2?: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode } | null, priceV2: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode }, image?: { __typename?: 'Image', id?: string | null, altText?: string | null, url: any, width?: number | null, height?: number | null } | null, selectedOptions: Array<{ __typename?: 'SelectedOption', name: string, value: string }> }> }, priceRange: { __typename?: 'ProductPriceRange', minVariantPrice: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode }, maxVariantPrice: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode } }, images: { __typename?: 'ImageConnection', nodes: Array<{ __typename?: 'Image', id?: string | null, altText?: string | null, url: any, width?: number | null, height?: number | null }> } }> } }> } }; - -export type CreateCartMutationVariables = Exact<{ [key: string]: never; }>; - - -export type CreateCartMutation = { __typename?: 'Mutation', cartCreate?: { __typename?: 'CartCreatePayload', cart?: { __typename?: 'Cart', id: string, checkoutUrl: any, lines: { __typename?: 'CartLineConnection', nodes: Array<{ __typename?: 'CartLine', id: string, quantity: number, merchandise: { __typename?: 'ProductVariant', id: string, title: string, selectedOptions: Array<{ __typename?: 'SelectedOption', name: string, value: string }>, priceV2: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode }, image?: { __typename?: 'Image', id?: string | null, altText?: string | null, url: any, width?: number | null, height?: number | null } | null, product: { __typename?: 'Product', id: string, title: string, handle: string, description: string } }, cost: { __typename?: 'CartLineCost', subtotalAmount: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode } } }> }, cost: { __typename?: 'CartCost', subtotalAmount: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode } } } | null, userErrors: Array<{ __typename?: 'CartUserError', code?: CartErrorCode | null, field?: Array | null, message: string }> } | null }; - -export type CreateCartWithLinesMutationVariables = Exact<{ - lines: Array | CartLineInput; -}>; - - -export type CreateCartWithLinesMutation = { __typename?: 'Mutation', cartCreate?: { __typename?: 'CartCreatePayload', cart?: { __typename?: 'Cart', id: string, checkoutUrl: any, lines: { __typename?: 'CartLineConnection', nodes: Array<{ __typename?: 'CartLine', id: string, quantity: number, merchandise: { __typename?: 'ProductVariant', id: string, title: string, selectedOptions: Array<{ __typename?: 'SelectedOption', name: string, value: string }>, priceV2: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode }, image?: { __typename?: 'Image', id?: string | null, altText?: string | null, url: any, width?: number | null, height?: number | null } | null, product: { __typename?: 'Product', id: string, title: string, handle: string, description: string } }, cost: { __typename?: 'CartLineCost', subtotalAmount: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode } } }> }, cost: { __typename?: 'CartCost', subtotalAmount: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode } } } | null, userErrors: Array<{ __typename?: 'CartUserError', code?: CartErrorCode | null, field?: Array | null, message: string }> } | null }; - -export type AddLineItemMutationVariables = Exact<{ - cartId: Scalars['ID']; - lines: Array | CartLineInput; -}>; - - -export type AddLineItemMutation = { __typename?: 'Mutation', cartLinesAdd?: { __typename?: 'CartLinesAddPayload', cart?: { __typename?: 'Cart', id: string, checkoutUrl: any, lines: { __typename?: 'CartLineConnection', nodes: Array<{ __typename?: 'CartLine', id: string, quantity: number, merchandise: { __typename?: 'ProductVariant', id: string, title: string, selectedOptions: Array<{ __typename?: 'SelectedOption', name: string, value: string }>, priceV2: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode }, image?: { __typename?: 'Image', id?: string | null, altText?: string | null, url: any, width?: number | null, height?: number | null } | null, product: { __typename?: 'Product', id: string, title: string, handle: string, description: string } }, cost: { __typename?: 'CartLineCost', subtotalAmount: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode } } }> }, cost: { __typename?: 'CartCost', subtotalAmount: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode } } } | null, userErrors: Array<{ __typename?: 'CartUserError', code?: CartErrorCode | null, field?: Array | null, message: string }> } | null }; - -export type UpdateLineItemMutationVariables = Exact<{ - cartId: Scalars['ID']; - lines: Array | CartLineUpdateInput; -}>; - - -export type UpdateLineItemMutation = { __typename?: 'Mutation', cartLinesUpdate?: { __typename?: 'CartLinesUpdatePayload', cart?: { __typename?: 'Cart', id: string, checkoutUrl: any, lines: { __typename?: 'CartLineConnection', nodes: Array<{ __typename?: 'CartLine', id: string, quantity: number, merchandise: { __typename?: 'ProductVariant', id: string, title: string, selectedOptions: Array<{ __typename?: 'SelectedOption', name: string, value: string }>, priceV2: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode }, image?: { __typename?: 'Image', id?: string | null, altText?: string | null, url: any, width?: number | null, height?: number | null } | null, product: { __typename?: 'Product', id: string, title: string, handle: string, description: string } }, cost: { __typename?: 'CartLineCost', subtotalAmount: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode } } }> }, cost: { __typename?: 'CartCost', subtotalAmount: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode } } } | null, userErrors: Array<{ __typename?: 'CartUserError', code?: CartErrorCode | null, field?: Array | null, message: string }> } | null }; - -export type RemoveLineItemMutationVariables = Exact<{ - cartId: Scalars['ID']; - lineIds: Array | Scalars['ID']; -}>; - - -export type RemoveLineItemMutation = { __typename?: 'Mutation', cartLinesRemove?: { __typename?: 'CartLinesRemovePayload', cart?: { __typename?: 'Cart', id: string, checkoutUrl: any, lines: { __typename?: 'CartLineConnection', nodes: Array<{ __typename?: 'CartLine', id: string, quantity: number, merchandise: { __typename?: 'ProductVariant', id: string, title: string, selectedOptions: Array<{ __typename?: 'SelectedOption', name: string, value: string }>, priceV2: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode }, image?: { __typename?: 'Image', id?: string | null, altText?: string | null, url: any, width?: number | null, height?: number | null } | null, product: { __typename?: 'Product', id: string, title: string, handle: string, description: string } }, cost: { __typename?: 'CartLineCost', subtotalAmount: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode } } }> }, cost: { __typename?: 'CartCost', subtotalAmount: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode } } } | null, userErrors: Array<{ __typename?: 'CartUserError', code?: CartErrorCode | null, field?: Array | null, message: string }> } | null }; - -export type ImageFragment = { __typename?: 'Image', id?: string | null, altText?: string | null, url: any, width?: number | null, height?: number | null }; - -export type CartFragment = { __typename?: 'Cart', id: string, checkoutUrl: any, lines: { __typename?: 'CartLineConnection', nodes: Array<{ __typename?: 'CartLine', id: string, quantity: number, merchandise: { __typename?: 'ProductVariant', id: string, title: string, selectedOptions: Array<{ __typename?: 'SelectedOption', name: string, value: string }>, priceV2: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode }, image?: { __typename?: 'Image', id?: string | null, altText?: string | null, url: any, width?: number | null, height?: number | null } | null, product: { __typename?: 'Product', id: string, title: string, handle: string, description: string } }, cost: { __typename?: 'CartLineCost', subtotalAmount: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode } } }> }, cost: { __typename?: 'CartCost', subtotalAmount: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode } } }; - -export type CartCreatePayloadFragment = { __typename?: 'CartCreatePayload', cart?: { __typename?: 'Cart', id: string, checkoutUrl: any, lines: { __typename?: 'CartLineConnection', nodes: Array<{ __typename?: 'CartLine', id: string, quantity: number, merchandise: { __typename?: 'ProductVariant', id: string, title: string, selectedOptions: Array<{ __typename?: 'SelectedOption', name: string, value: string }>, priceV2: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode }, image?: { __typename?: 'Image', id?: string | null, altText?: string | null, url: any, width?: number | null, height?: number | null } | null, product: { __typename?: 'Product', id: string, title: string, handle: string, description: string } }, cost: { __typename?: 'CartLineCost', subtotalAmount: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode } } }> }, cost: { __typename?: 'CartCost', subtotalAmount: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode } } } | null, userErrors: Array<{ __typename?: 'CartUserError', code?: CartErrorCode | null, field?: Array | null, message: string }> }; - -export type CollectionFragment = { __typename?: 'Collection', id: string, title: string, handle: string, descriptionHtml: any, products: { __typename?: 'ProductConnection', nodes: Array<{ __typename?: 'Product', id: string, title: string, descriptionHtml: any, handle: string, productType: string, tags: Array, onlineStoreUrl?: any | null, availableForSale: boolean, options: Array<{ __typename?: 'ProductOption', name: string, values: Array }>, variants: { __typename?: 'ProductVariantConnection', nodes: Array<{ __typename?: 'ProductVariant', id: string, title: string, availableForSale: boolean, quantityAvailable?: number | null, compareAtPriceV2?: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode } | null, priceV2: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode }, image?: { __typename?: 'Image', id?: string | null, altText?: string | null, url: any, width?: number | null, height?: number | null } | null, selectedOptions: Array<{ __typename?: 'SelectedOption', name: string, value: string }> }> }, priceRange: { __typename?: 'ProductPriceRange', minVariantPrice: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode }, maxVariantPrice: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode } }, images: { __typename?: 'ImageConnection', nodes: Array<{ __typename?: 'Image', id?: string | null, altText?: string | null, url: any, width?: number | null, height?: number | null }> } }> } }; - -export type ProductFragment = { __typename?: 'Product', id: string, title: string, descriptionHtml: any, handle: string, productType: string, tags: Array, onlineStoreUrl?: any | null, availableForSale: boolean, options: Array<{ __typename?: 'ProductOption', name: string, values: Array }>, variants: { __typename?: 'ProductVariantConnection', nodes: Array<{ __typename?: 'ProductVariant', id: string, title: string, availableForSale: boolean, quantityAvailable?: number | null, compareAtPriceV2?: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode } | null, priceV2: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode }, image?: { __typename?: 'Image', id?: string | null, altText?: string | null, url: any, width?: number | null, height?: number | null } | null, selectedOptions: Array<{ __typename?: 'SelectedOption', name: string, value: string }> }> }, priceRange: { __typename?: 'ProductPriceRange', minVariantPrice: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode }, maxVariantPrice: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode } }, images: { __typename?: 'ImageConnection', nodes: Array<{ __typename?: 'Image', id?: string | null, altText?: string | null, url: any, width?: number | null, height?: number | null }> } }; - -export type ProductVariantFragment = { __typename?: 'ProductVariant', id: string, title: string, availableForSale: boolean, quantityAvailable?: number | null, compareAtPriceV2?: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode } | null, priceV2: { __typename?: 'MoneyV2', amount: any, currencyCode: CurrencyCode }, image?: { __typename?: 'Image', id?: string | null, altText?: string | null, url: any, width?: number | null, height?: number | null } | null, selectedOptions: Array<{ __typename?: 'SelectedOption', name: string, value: string }> }; - -export const ImageFragmentDoc = ` - fragment Image on Image { - id - altText - url - width - height -} - `; -export const CartFragmentDoc = ` - fragment Cart on Cart { - id - checkoutUrl - lines(first: 250) { - nodes { - id - quantity - merchandise { - ... on ProductVariant { - id - selectedOptions { - name - value - } - title - priceV2 { - amount - currencyCode - } - image { - ...Image - } - product { - id - title - handle - description - } - } - } - cost { - subtotalAmount { - amount - currencyCode - } - } - } - } - cost { - subtotalAmount { - amount - currencyCode - } - } -} - `; -export const CartCreatePayloadFragmentDoc = ` - fragment CartCreatePayload on CartCreatePayload { - cart { - ...Cart - } - userErrors { - code - field - message - } -} - `; -export const ProductVariantFragmentDoc = ` - fragment ProductVariant on ProductVariant { - id - title - availableForSale - quantityAvailable - compareAtPriceV2 { - amount - currencyCode - } - priceV2 { - amount - currencyCode - } - image { - ...Image - } - selectedOptions { - name - value - } -} - `; -export const ProductFragmentDoc = ` - fragment Product on Product { - id - title - descriptionHtml - handle - productType - tags - options { - name - values - } - variants(first: 250) { - nodes { - ...ProductVariant - } - } - priceRange { - minVariantPrice { - amount - currencyCode - } - maxVariantPrice { - amount - currencyCode - } - } - productType - onlineStoreUrl - availableForSale - images(first: 20) { - nodes { - ...Image - } - } -} - `; -export const CollectionFragmentDoc = ` - fragment Collection on Collection { - id - title - handle - descriptionHtml - products(first: 250) { - nodes { - ...Product - } - } -} - `; -export const FetchCartDocument = ` - query FetchCart($id: ID!) { - cart(id: $id) { - ...Cart - } -} - ${CartFragmentDoc} -${ImageFragmentDoc}`; -export const FetchCollectionsDocument = ` - query FetchCollections { - collections(first: 250) { - nodes { - ...Collection - } - } -} - ${CollectionFragmentDoc} -${ProductFragmentDoc} -${ProductVariantFragmentDoc} -${ImageFragmentDoc}`; -export const CreateCartDocument = ` - mutation CreateCart { - cartCreate { - ...CartCreatePayload - } -} - ${CartCreatePayloadFragmentDoc} -${CartFragmentDoc} -${ImageFragmentDoc}`; -export const CreateCartWithLinesDocument = ` - mutation CreateCartWithLines($lines: [CartLineInput!]!) { - cartCreate(input: {lines: $lines}) { - ...CartCreatePayload - } -} - ${CartCreatePayloadFragmentDoc} -${CartFragmentDoc} -${ImageFragmentDoc}`; -export const AddLineItemDocument = ` - mutation AddLineItem($cartId: ID!, $lines: [CartLineInput!]!) { - cartLinesAdd(cartId: $cartId, lines: $lines) { - cart { - ...Cart - } - userErrors { - code - field - message - } - } -} - ${CartFragmentDoc} -${ImageFragmentDoc}`; -export const UpdateLineItemDocument = ` - mutation UpdateLineItem($cartId: ID!, $lines: [CartLineUpdateInput!]!) { - cartLinesUpdate(cartId: $cartId, lines: $lines) { - cart { - ...Cart - } - userErrors { - code - field - message - } - } -} - ${CartFragmentDoc} -${ImageFragmentDoc}`; -export const RemoveLineItemDocument = ` - mutation RemoveLineItem($cartId: ID!, $lineIds: [ID!]!) { - cartLinesRemove(cartId: $cartId, lineIds: $lineIds) { - cart { - ...Cart - } - userErrors { - code - field - message - } - } -} - ${CartFragmentDoc} -${ImageFragmentDoc}`; -export type Requester = (doc: string, vars?: V, options?: C) => Promise | AsyncIterable -export function getSdk(requester: Requester) { - return { - FetchCart(variables: FetchCartQueryVariables, options?: C): Promise { - return requester(FetchCartDocument, variables, options) as Promise; - }, - FetchCollections(variables?: FetchCollectionsQueryVariables, options?: C): Promise { - return requester(FetchCollectionsDocument, variables, options) as Promise; +import type { + QueryRootGenqlSelection, + QueryRoot, + MutationGenqlSelection, + Mutation, +} from './schema' +import { + linkTypeMap, + createClient as createClientOriginal, + generateGraphqlOperation, + type FieldsSelection, + type GraphqlOperation, + type ClientOptions, + GenqlError, +} from './runtime' +export type { FieldsSelection } from './runtime' +export { GenqlError } + +import types from './types' +export * from './schema' +const typeMap = linkTypeMap(types as any) + +export interface Client { + query( + request: R & { __name?: string }, + ): Promise> + + mutation( + request: R & { __name?: string }, + ): Promise> +} + +export const createClient = function (options?: ClientOptions): Client { + return createClientOriginal({ + url: 'https://react-dropify.myshopify.com/api/2023-01/graphql', + + ...options, + queryRoot: typeMap.Query!, + mutationRoot: typeMap.Mutation!, + subscriptionRoot: typeMap.Subscription!, + }) as any +} + +export const everything = { + __scalar: true, +} + +export type QueryResult = + FieldsSelection +export const generateQueryOp: ( + fields: QueryRootGenqlSelection & { __name?: string }, +) => GraphqlOperation = function (fields) { + return generateGraphqlOperation('query', typeMap.Query!, fields as any) +} + +export type MutationResult = + FieldsSelection +export const generateMutationOp: ( + fields: MutationGenqlSelection & { __name?: string }, +) => GraphqlOperation = function (fields) { + return generateGraphqlOperation('mutation', typeMap.Mutation!, fields as any) +} + +import type { Config } from '@bsmnt/sdk-gen' + +type CreateSDKParams = Omit & Omit + +export const createSdk = function (params: CreateSDKParams) { + return createClient({ + ...params, + headers: { + Accept: 'application/json', + 'Content-Type': 'application/json', + ...params.headers }, - CreateCart(variables?: CreateCartMutationVariables, options?: C): Promise { - return requester(CreateCartDocument, variables, options) as Promise; - }, - CreateCartWithLines(variables: CreateCartWithLinesMutationVariables, options?: C): Promise { - return requester(CreateCartWithLinesDocument, variables, options) as Promise; - }, - AddLineItem(variables: AddLineItemMutationVariables, options?: C): Promise { - return requester(AddLineItemDocument, variables, options) as Promise; - }, - UpdateLineItem(variables: UpdateLineItemMutationVariables, options?: C): Promise { - return requester(UpdateLineItemDocument, variables, options) as Promise; - }, - RemoveLineItem(variables: RemoveLineItemMutationVariables, options?: C): Promise { - return requester(RemoveLineItemDocument, variables, options) as Promise; - } - }; + url: params.endpoint + }) } -export type Sdk = ReturnType; -import type { Config } from "@bsmnt/sdk-gen"; - -const fetch = globalThis.fetch || require("isomorphic-unfetch"); - -type ClientOptions = { - noThrowOnErrors?: boolean; -}; - -export const createSdk = ({ - endpoint, - headers, - clientOptions, -}: Config & { clientOptions?: ClientOptions }) => { - const client: Requester = async (doc, vars, options?: ClientOptions) => { - const allClientOptions = { ...clientOptions, ...options }; - - const response = await fetch(endpoint, { - method: "POST", - headers: { - accept: "application/json", - "Content-Type": "application/json", - ...headers, - }, - body: JSON.stringify({ - query: doc, - variables: vars, - }), - }); - const json = await response.json(); - const { errors, data } = json; - - const hasErrors = errors && Array.isArray(errors) && errors.length > 0; - - if (hasErrors && !allClientOptions?.noThrowOnErrors) { - const message = `GraphQL fetch errors: - - ${errors.map((e: any, idx: number) => `${idx}. ${e.message}`).join("\n")} - - —————— - - Doc: - ${doc} - - Vars: - ${vars} - `; - - throw new Error(message); - } - - return { ...data, ...(hasErrors ? { errors } : {}) }; - }; - - const generatedSdk = getSdk(client); - - return { ...generatedSdk, client }; -}; diff --git a/examples/nextjs-shopify/src/storefront/sdk-gen/generated/runtime/batcher.ts b/examples/nextjs-shopify/src/storefront/sdk-gen/generated/runtime/batcher.ts new file mode 100644 index 0000000..53b775f --- /dev/null +++ b/examples/nextjs-shopify/src/storefront/sdk-gen/generated/runtime/batcher.ts @@ -0,0 +1,265 @@ +// @ts-nocheck +import type { GraphqlOperation } from './generateGraphqlOperation' +import { GenqlError } from './error' + +type Variables = Record + +type QueryError = Error & { + message: string + + locations?: Array<{ + line: number + column: number + }> + path?: any + rid: string + details?: Record +} +type Result = { + data: Record + errors: Array +} +type Fetcher = ( + batchedQuery: GraphqlOperation | Array, +) => Promise> +type Options = { + batchInterval?: number + shouldBatch?: boolean + maxBatchSize?: number +} +type Queue = Array<{ + request: GraphqlOperation + resolve: (...args: Array) => any + reject: (...args: Array) => any +}> + +/** + * takes a list of requests (queue) and batches them into a single server request. + * It will then resolve each individual requests promise with the appropriate data. + * @private + * @param {QueryBatcher} client - the client to use + * @param {Queue} queue - the list of requests to batch + */ +function dispatchQueueBatch(client: QueryBatcher, queue: Queue): void { + let batchedQuery: any = queue.map((item) => item.request) + + if (batchedQuery.length === 1) { + batchedQuery = batchedQuery[0] + } + + client.fetcher(batchedQuery).then((responses: any) => { + if (queue.length === 1 && !Array.isArray(responses)) { + if (responses.errors && responses.errors.length) { + queue[0].reject( + new GenqlError(responses.errors, responses.data), + ) + return + } + + queue[0].resolve(responses) + return + } else if (responses.length !== queue.length) { + throw new Error('response length did not match query length') + } + + for (let i = 0; i < queue.length; i++) { + if (responses[i].errors && responses[i].errors.length) { + queue[i].reject( + new GenqlError(responses[i].errors, responses[i].data), + ) + } else { + queue[i].resolve(responses[i]) + } + } + }) +} + +/** + * creates a list of requests to batch according to max batch size. + * @private + * @param {QueryBatcher} client - the client to create list of requests from from + * @param {Options} options - the options for the batch + */ +function dispatchQueue(client: QueryBatcher, options: Options): void { + const queue = client._queue + const maxBatchSize = options.maxBatchSize || 0 + client._queue = [] + + if (maxBatchSize > 0 && maxBatchSize < queue.length) { + for (let i = 0; i < queue.length / maxBatchSize; i++) { + dispatchQueueBatch( + client, + queue.slice(i * maxBatchSize, (i + 1) * maxBatchSize), + ) + } + } else { + dispatchQueueBatch(client, queue) + } +} +/** + * Create a batcher client. + * @param {Fetcher} fetcher - A function that can handle the network requests to graphql endpoint + * @param {Options} options - the options to be used by client + * @param {boolean} options.shouldBatch - should the client batch requests. (default true) + * @param {integer} options.batchInterval - duration (in MS) of each batch window. (default 6) + * @param {integer} options.maxBatchSize - max number of requests in a batch. (default 0) + * @param {boolean} options.defaultHeaders - default headers to include with every request + * + * @example + * const fetcher = batchedQuery => fetch('path/to/graphql', { + * method: 'post', + * headers: { + * Accept: 'application/json', + * 'Content-Type': 'application/json', + * }, + * body: JSON.stringify(batchedQuery), + * credentials: 'include', + * }) + * .then(response => response.json()) + * + * const client = new QueryBatcher(fetcher, { maxBatchSize: 10 }) + */ + +export class QueryBatcher { + fetcher: Fetcher + _options: Options + _queue: Queue + + constructor( + fetcher: Fetcher, + { + batchInterval = 6, + shouldBatch = true, + maxBatchSize = 0, + }: Options = {}, + ) { + this.fetcher = fetcher + this._options = { + batchInterval, + shouldBatch, + maxBatchSize, + } + this._queue = [] + } + + /** + * Fetch will send a graphql request and return the parsed json. + * @param {string} query - the graphql query. + * @param {Variables} variables - any variables you wish to inject as key/value pairs. + * @param {[string]} operationName - the graphql operationName. + * @param {Options} overrides - the client options overrides. + * + * @return {promise} resolves to parsed json of server response + * + * @example + * client.fetch(` + * query getHuman($id: ID!) { + * human(id: $id) { + * name + * height + * } + * } + * `, { id: "1001" }, 'getHuman') + * .then(human => { + * // do something with human + * console.log(human); + * }); + */ + fetch( + query: string, + variables?: Variables, + operationName?: string, + overrides: Options = {}, + ): Promise { + const request: GraphqlOperation = { + query, + } + const options = Object.assign({}, this._options, overrides) + + if (variables) { + request.variables = variables + } + + if (operationName) { + request.operationName = operationName + } + + const promise = new Promise((resolve, reject) => { + this._queue.push({ + request, + resolve, + reject, + }) + + if (this._queue.length === 1) { + if (options.shouldBatch) { + setTimeout( + () => dispatchQueue(this, options), + options.batchInterval, + ) + } else { + dispatchQueue(this, options) + } + } + }) + return promise + } + + /** + * Fetch will send a graphql request and return the parsed json. + * @param {string} query - the graphql query. + * @param {Variables} variables - any variables you wish to inject as key/value pairs. + * @param {[string]} operationName - the graphql operationName. + * @param {Options} overrides - the client options overrides. + * + * @return {Promise>} resolves to parsed json of server response + * + * @example + * client.forceFetch(` + * query getHuman($id: ID!) { + * human(id: $id) { + * name + * height + * } + * } + * `, { id: "1001" }, 'getHuman') + * .then(human => { + * // do something with human + * console.log(human); + * }); + */ + forceFetch( + query: string, + variables?: Variables, + operationName?: string, + overrides: Options = {}, + ): Promise { + const request: GraphqlOperation = { + query, + } + const options = Object.assign({}, this._options, overrides, { + shouldBatch: false, + }) + + if (variables) { + request.variables = variables + } + + if (operationName) { + request.operationName = operationName + } + + const promise = new Promise((resolve, reject) => { + const client = new QueryBatcher(this.fetcher, this._options) + client._queue = [ + { + request, + resolve, + reject, + }, + ] + dispatchQueue(client, options) + }) + return promise + } +} diff --git a/examples/nextjs-shopify/src/storefront/sdk-gen/generated/runtime/createClient.ts b/examples/nextjs-shopify/src/storefront/sdk-gen/generated/runtime/createClient.ts new file mode 100644 index 0000000..755617e --- /dev/null +++ b/examples/nextjs-shopify/src/storefront/sdk-gen/generated/runtime/createClient.ts @@ -0,0 +1,68 @@ +// @ts-nocheck + +import { type BatchOptions, createFetcher } from './fetcher' +import type { ExecutionResult, LinkedType } from './types' +import { + generateGraphqlOperation, + type GraphqlOperation, +} from './generateGraphqlOperation' + +export type Headers = + | HeadersInit + | (() => HeadersInit) + | (() => Promise) + +export type BaseFetcher = ( + operation: GraphqlOperation | GraphqlOperation[], +) => Promise + +export type ClientOptions = Omit & { + url?: string + batch?: BatchOptions | boolean + fetcher?: BaseFetcher + fetch?: Function + headers?: Headers +} + +export const createClient = ({ + queryRoot, + mutationRoot, + subscriptionRoot, + ...options +}: ClientOptions & { + queryRoot?: LinkedType + mutationRoot?: LinkedType + subscriptionRoot?: LinkedType +}) => { + const fetcher = createFetcher(options) + const client: { + query?: Function + mutation?: Function + } = {} + + if (queryRoot) { + client.query = (request: any) => { + if (!queryRoot) throw new Error('queryRoot argument is missing') + + const resultPromise = fetcher( + generateGraphqlOperation('query', queryRoot, request), + ) + + return resultPromise + } + } + if (mutationRoot) { + client.mutation = (request: any) => { + if (!mutationRoot) + throw new Error('mutationRoot argument is missing') + + const resultPromise = fetcher( + generateGraphqlOperation('mutation', mutationRoot, request), + ) + + return resultPromise + } + } + + return client as any +} diff --git a/examples/nextjs-shopify/src/storefront/sdk-gen/generated/runtime/error.ts b/examples/nextjs-shopify/src/storefront/sdk-gen/generated/runtime/error.ts new file mode 100644 index 0000000..d9039eb --- /dev/null +++ b/examples/nextjs-shopify/src/storefront/sdk-gen/generated/runtime/error.ts @@ -0,0 +1,29 @@ +// @ts-nocheck +export class GenqlError extends Error { + errors: Array = [] + /** + * Partial data returned by the server + */ + data?: any + constructor(errors: any[], data: any) { + let message = Array.isArray(errors) + ? errors.map((x) => x?.message || '').join('\n') + : '' + if (!message) { + message = 'GraphQL error' + } + super(message) + this.errors = errors + this.data = data + } +} + +interface GraphqlError { + message: string + locations?: Array<{ + line: number + column: number + }> + path?: string[] + extensions?: Record +} diff --git a/examples/nextjs-shopify/src/storefront/sdk-gen/generated/runtime/fetcher.ts b/examples/nextjs-shopify/src/storefront/sdk-gen/generated/runtime/fetcher.ts new file mode 100644 index 0000000..78c98ff --- /dev/null +++ b/examples/nextjs-shopify/src/storefront/sdk-gen/generated/runtime/fetcher.ts @@ -0,0 +1,98 @@ +// @ts-nocheck +import { QueryBatcher } from './batcher' + +import type { ClientOptions } from './createClient' +import type { GraphqlOperation } from './generateGraphqlOperation' +import { GenqlError } from './error' + +export interface Fetcher { + (gql: GraphqlOperation): Promise +} + +export type BatchOptions = { + batchInterval?: number // ms + maxBatchSize?: number +} + +const DEFAULT_BATCH_OPTIONS = { + maxBatchSize: 10, + batchInterval: 40, +} + +export const createFetcher = ({ + url, + headers = {}, + fetcher, + fetch: _fetch, + batch = false, + ...rest +}: ClientOptions): Fetcher => { + if (!url && !fetcher) { + throw new Error('url or fetcher is required') + } + if (!fetcher) { + fetcher = async (body) => { + let headersObject = + typeof headers == 'function' ? await headers() : headers + headersObject = headersObject || {} + if (typeof fetch === 'undefined' && !_fetch) { + throw new Error( + 'Global `fetch` function is not available, pass a fetch polyfill to Genql `createClient`', + ) + } + let fetchImpl = _fetch || fetch + const res = await fetchImpl(url!, { + headers: { + 'Content-Type': 'application/json', + ...headersObject, + }, + method: 'POST', + body: JSON.stringify(body), + ...rest, + }) + if (!res.ok) { + throw new Error(`${res.statusText}: ${await res.text()}`) + } + const json = await res.json() + return json + } + } + + if (!batch) { + return async (body) => { + const json = await fetcher!(body) + if (Array.isArray(json)) { + return json.map((json) => { + if (json?.errors?.length) { + throw new GenqlError(json.errors || [], json.data) + } + return json.data + }) + } else { + if (json?.errors?.length) { + throw new GenqlError(json.errors || [], json.data) + } + return json.data + } + } + } + + const batcher = new QueryBatcher( + async (batchedQuery) => { + // console.log(batchedQuery) // [{ query: 'query{user{age}}', variables: {} }, ...] + const json = await fetcher!(batchedQuery) + return json as any + }, + batch === true ? DEFAULT_BATCH_OPTIONS : batch, + ) + + return async ({ query, variables }) => { + const json = await batcher.fetch(query, variables) + if (json?.data) { + return json.data + } + throw new Error( + 'Genql batch fetcher returned unexpected result ' + JSON.stringify(json), + ) + } +} diff --git a/examples/nextjs-shopify/src/storefront/sdk-gen/generated/runtime/generateGraphqlOperation.ts b/examples/nextjs-shopify/src/storefront/sdk-gen/generated/runtime/generateGraphqlOperation.ts new file mode 100644 index 0000000..c618019 --- /dev/null +++ b/examples/nextjs-shopify/src/storefront/sdk-gen/generated/runtime/generateGraphqlOperation.ts @@ -0,0 +1,225 @@ +// @ts-nocheck +import type { LinkedField, LinkedType } from './types' + +export interface Args { + [arg: string]: any | undefined +} + +export interface Fields { + [field: string]: Request +} + +export type Request = boolean | number | Fields + +export interface Variables { + [name: string]: { + value: any + typing: [LinkedType, string] + } +} + +export interface Context { + root: LinkedType + varCounter: number + variables: Variables + fragmentCounter: number + fragments: string[] +} + +export interface GraphqlOperation { + query: string + variables?: { [name: string]: any } + operationName?: string +} + +const parseRequest = ( + request: Request | undefined, + ctx: Context, + path: string[], +): string => { + if (typeof request === 'object' && '__args' in request) { + const args: any = request.__args + let fields: Request | undefined = { ...request } + delete fields.__args + const argNames = Object.keys(args) + + if (argNames.length === 0) { + return parseRequest(fields, ctx, path) + } + + const field = getFieldFromPath(ctx.root, path) + + const argStrings = argNames.map((argName) => { + ctx.varCounter++ + const varName = `v${ctx.varCounter}` + + const typing = field.args && field.args[argName] // typeMap used here, .args + + if (!typing) { + throw new Error( + `no typing defined for argument \`${argName}\` in path \`${path.join( + '.', + )}\``, + ) + } + + ctx.variables[varName] = { + value: args[argName], + typing, + } + + return `${argName}:$${varName}` + }) + return `(${argStrings})${parseRequest(fields, ctx, path)}` + } else if (typeof request === 'object' && Object.keys(request).length > 0) { + const fields = request + const fieldNames = Object.keys(fields).filter((k) => Boolean(fields[k])) + + if (fieldNames.length === 0) { + throw new Error( + `field selection should not be empty: ${path.join('.')}`, + ) + } + + const type = + path.length > 0 ? getFieldFromPath(ctx.root, path).type : ctx.root + const scalarFields = type.scalar + + let scalarFieldsFragment: string | undefined + + if (fieldNames.includes('__scalar')) { + const falsyFieldNames = new Set( + Object.keys(fields).filter((k) => !Boolean(fields[k])), + ) + if (scalarFields?.length) { + ctx.fragmentCounter++ + scalarFieldsFragment = `f${ctx.fragmentCounter}` + + ctx.fragments.push( + `fragment ${scalarFieldsFragment} on ${ + type.name + }{${scalarFields + .filter((f) => !falsyFieldNames.has(f)) + .join(',')}}`, + ) + } + } + + const fieldsSelection = fieldNames + .filter((f) => !['__scalar', '__name'].includes(f)) + .map((f) => { + const parsed = parseRequest(fields[f], ctx, [...path, f]) + + if (f.startsWith('on_')) { + ctx.fragmentCounter++ + const implementationFragment = `f${ctx.fragmentCounter}` + + const typeMatch = f.match(/^on_(.+)/) + + if (!typeMatch || !typeMatch[1]) + throw new Error('match failed') + + ctx.fragments.push( + `fragment ${implementationFragment} on ${typeMatch[1]}${parsed}`, + ) + + return `...${implementationFragment}` + } else { + return `${f}${parsed}` + } + }) + .concat(scalarFieldsFragment ? [`...${scalarFieldsFragment}`] : []) + .join(',') + + return `{${fieldsSelection}}` + } else { + return '' + } +} + +export const generateGraphqlOperation = ( + operation: 'query' | 'mutation' | 'subscription', + root: LinkedType, + fields?: Fields, +): GraphqlOperation => { + const ctx: Context = { + root: root, + varCounter: 0, + variables: {}, + fragmentCounter: 0, + fragments: [], + } + const result = parseRequest(fields, ctx, []) + + const varNames = Object.keys(ctx.variables) + + const varsString = + varNames.length > 0 + ? `(${varNames.map((v) => { + const variableType = ctx.variables[v].typing[1] + return `$${v}:${variableType}` + })})` + : '' + + const operationName = fields?.__name || '' + + return { + query: [ + `${operation} ${operationName}${varsString}${result}`, + ...ctx.fragments, + ].join(','), + variables: Object.keys(ctx.variables).reduce<{ [name: string]: any }>( + (r, v) => { + r[v] = ctx.variables[v].value + return r + }, + {}, + ), + ...(operationName ? { operationName: operationName.toString() } : {}), + } +} + +export const getFieldFromPath = ( + root: LinkedType | undefined, + path: string[], +) => { + let current: LinkedField | undefined + + if (!root) throw new Error('root type is not provided') + + if (path.length === 0) throw new Error(`path is empty`) + + path.forEach((f) => { + const type = current ? current.type : root + + if (!type.fields) + throw new Error(`type \`${type.name}\` does not have fields`) + + const possibleTypes = Object.keys(type.fields) + .filter((i) => i.startsWith('on_')) + .reduce( + (types, fieldName) => { + const field = type.fields && type.fields[fieldName] + if (field) types.push(field.type) + return types + }, + [type], + ) + + let field: LinkedField | null = null + + possibleTypes.forEach((type) => { + const found = type.fields && type.fields[f] + if (found) field = found + }) + + if (!field) + throw new Error( + `type \`${type.name}\` does not have a field \`${f}\``, + ) + + current = field + }) + + return current as LinkedField +} diff --git a/examples/nextjs-shopify/src/storefront/sdk-gen/generated/runtime/index.ts b/examples/nextjs-shopify/src/storefront/sdk-gen/generated/runtime/index.ts new file mode 100644 index 0000000..130ed4b --- /dev/null +++ b/examples/nextjs-shopify/src/storefront/sdk-gen/generated/runtime/index.ts @@ -0,0 +1,13 @@ +// @ts-nocheck +export { createClient } from './createClient' +export type { ClientOptions } from './createClient' +export type { FieldsSelection } from './typeSelection' +export { generateGraphqlOperation } from './generateGraphqlOperation' +export type { GraphqlOperation } from './generateGraphqlOperation' +export { linkTypeMap } from './linkTypeMap' +// export { Observable } from 'zen-observable-ts' +export { createFetcher } from './fetcher' +export { GenqlError } from './error' +export const everything = { + __scalar: true, +} diff --git a/examples/nextjs-shopify/src/storefront/sdk-gen/generated/runtime/linkTypeMap.ts b/examples/nextjs-shopify/src/storefront/sdk-gen/generated/runtime/linkTypeMap.ts new file mode 100644 index 0000000..117da16 --- /dev/null +++ b/examples/nextjs-shopify/src/storefront/sdk-gen/generated/runtime/linkTypeMap.ts @@ -0,0 +1,139 @@ +// @ts-nocheck +import type { + CompressedType, + CompressedTypeMap, + LinkedArgMap, + LinkedField, + LinkedType, + LinkedTypeMap, +} from './types' + +export interface PartialLinkedFieldMap { + [field: string]: { + type: string + args?: LinkedArgMap + } +} + +export const linkTypeMap = ( + typeMap: CompressedTypeMap, +): LinkedTypeMap => { + const indexToName: Record = Object.assign( + {}, + ...Object.keys(typeMap.types).map((k, i) => ({ [i]: k })), + ) + + let intermediaryTypeMap = Object.assign( + {}, + ...Object.keys(typeMap.types || {}).map( + (k): Record => { + const type: CompressedType = typeMap.types[k]! + const fields = type || {} + return { + [k]: { + name: k, + // type scalar properties + scalar: Object.keys(fields).filter((f) => { + const [type] = fields[f] || [] + return type && typeMap.scalars.includes(type) + }), + // fields with corresponding `type` and `args` + fields: Object.assign( + {}, + ...Object.keys(fields).map( + (f): PartialLinkedFieldMap => { + const [typeIndex, args] = fields[f] || [] + if (typeIndex == null) { + return {} + } + return { + [f]: { + // replace index with type name + type: indexToName[typeIndex], + args: Object.assign( + {}, + ...Object.keys(args || {}).map( + (k) => { + // if argTypeString == argTypeName, argTypeString is missing, need to readd it + if (!args || !args[k]) { + return + } + const [ + argTypeName, + argTypeString, + ] = args[k] as any + return { + [k]: [ + indexToName[ + argTypeName + ], + argTypeString || + indexToName[ + argTypeName + ], + ], + } + }, + ), + ), + }, + } + }, + ), + ), + }, + } + }, + ), + ) + const res = resolveConcreteTypes(intermediaryTypeMap) + return res +} + +// replace typename with concrete type +export const resolveConcreteTypes = (linkedTypeMap: LinkedTypeMap) => { + Object.keys(linkedTypeMap).forEach((typeNameFromKey) => { + const type: LinkedType = linkedTypeMap[typeNameFromKey]! + // type.name = typeNameFromKey + if (!type.fields) { + return + } + + const fields = type.fields + + Object.keys(fields).forEach((f) => { + const field: LinkedField = fields[f]! + + if (field.args) { + const args = field.args + Object.keys(args).forEach((key) => { + const arg = args[key] + + if (arg) { + const [typeName] = arg + + if (typeof typeName === 'string') { + if (!linkedTypeMap[typeName]) { + linkedTypeMap[typeName] = { name: typeName } + } + + arg[0] = linkedTypeMap[typeName]! + } + } + }) + } + + const typeName = field.type as LinkedType | string + + if (typeof typeName === 'string') { + if (!linkedTypeMap[typeName]) { + linkedTypeMap[typeName] = { name: typeName } + } + + field.type = linkedTypeMap[typeName]! + } + }) + }) + + return linkedTypeMap +} diff --git a/examples/nextjs-shopify/src/storefront/sdk-gen/generated/runtime/typeSelection.ts b/examples/nextjs-shopify/src/storefront/sdk-gen/generated/runtime/typeSelection.ts new file mode 100644 index 0000000..ddca88d --- /dev/null +++ b/examples/nextjs-shopify/src/storefront/sdk-gen/generated/runtime/typeSelection.ts @@ -0,0 +1,98 @@ +// @ts-nocheck +////////////////////////////////////////////////// + +// SOME THINGS TO KNOW BEFORE DIVING IN +/* +0. DST is the request type, SRC is the response type + +1. FieldsSelection uses an object because currently is impossible to make recursive types + +2. FieldsSelection is a recursive type that makes a type based on request type and fields + +3. HandleObject handles object types + +4. Handle__scalar adds all scalar properties excluding non scalar props +*/ + +export type FieldsSelection | undefined, DST> = { + scalar: SRC + union: Handle__isUnion + object: HandleObject + array: SRC extends Nil + ? never + : SRC extends (infer T)[] + ? Array> + : never + __scalar: Handle__scalar + never: never +}[DST extends Nil + ? 'never' + : SRC extends Nil + ? 'never' + : DST extends false | 0 + ? 'never' + : SRC extends Scalar + ? 'scalar' + : SRC extends any[] + ? 'array' + : SRC extends { __isUnion?: any } + ? 'union' + : DST extends { __scalar?: any } + ? '__scalar' + : DST extends {} + ? 'object' + : 'never'] + +type HandleObject, DST> = SRC extends Nil + ? never + : Pick< + { + // using keyof SRC to maintain ?: relations of SRC type + [Key in keyof SRC]: Key extends keyof DST + ? FieldsSelection< + NonNullable, + NonNullable + > + : SRC[Key] + }, + Exclude + // { + // // remove falsy values + // [Key in keyof DST]: DST[Key] extends false | 0 ? never : Key + // }[keyof DST] + > + +type Handle__scalar, DST> = SRC extends Nil + ? never + : Pick< + // continue processing fields that are in DST, directly pass SRC type if not in DST + { + [Key in keyof SRC]: Key extends keyof DST + ? FieldsSelection + : SRC[Key] + }, + // remove fields that are not scalars or are not in DST + { + [Key in keyof SRC]: SRC[Key] extends Nil + ? never + : Key extends FieldsToRemove + ? never + : SRC[Key] extends Scalar + ? Key + : Key extends keyof DST + ? Key + : never + }[keyof SRC] + > + +type Handle__isUnion, DST> = SRC extends Nil + ? never + : Omit // just return the union type + +type Scalar = string | number | Date | boolean | null | undefined + +type Anify = { [P in keyof T]?: any } + +type FieldsToRemove = '__isUnion' | '__scalar' | '__name' | '__args' + +type Nil = undefined | null diff --git a/examples/nextjs-shopify/src/storefront/sdk-gen/generated/runtime/types.ts b/examples/nextjs-shopify/src/storefront/sdk-gen/generated/runtime/types.ts new file mode 100644 index 0000000..3f0bc30 --- /dev/null +++ b/examples/nextjs-shopify/src/storefront/sdk-gen/generated/runtime/types.ts @@ -0,0 +1,69 @@ +// @ts-nocheck + +export interface ExecutionResult { + errors?: Array + data?: TData | null +} + +export interface ArgMap { + [arg: string]: [keyType, string] | [keyType] | undefined +} + +export type CompressedField = [ + type: keyType, + args?: ArgMap, +] + +export interface CompressedFieldMap { + [field: string]: CompressedField | undefined +} + +export type CompressedType = CompressedFieldMap + +export interface CompressedTypeMap { + scalars: Array + types: { + [type: string]: CompressedType | undefined + } +} + +// normal types +export type Field = { + type: keyType + args?: ArgMap +} + +export interface FieldMap { + [field: string]: Field | undefined +} + +export type Type = FieldMap + +export interface TypeMap { + scalars: Array + types: { + [type: string]: Type | undefined + } +} + +export interface LinkedArgMap { + [arg: string]: [LinkedType, string] | undefined +} +export interface LinkedField { + type: LinkedType + args?: LinkedArgMap +} + +export interface LinkedFieldMap { + [field: string]: LinkedField | undefined +} + +export interface LinkedType { + name: string + fields?: LinkedFieldMap + scalar?: string[] +} + +export interface LinkedTypeMap { + [type: string]: LinkedType | undefined +} diff --git a/examples/nextjs-shopify/src/storefront/sdk-gen/generated/schema.graphql b/examples/nextjs-shopify/src/storefront/sdk-gen/generated/schema.graphql new file mode 100644 index 0000000..462be23 --- /dev/null +++ b/examples/nextjs-shopify/src/storefront/sdk-gen/generated/schema.graphql @@ -0,0 +1,7761 @@ +schema { + query: QueryRoot + mutation: Mutation +} + +""" +Requires that exactly one field must be supplied and that field must not be `null`. +""" +directive @oneOf on INPUT_OBJECT + +"""Marks an element of a GraphQL schema as having restricted access.""" +directive @accessRestricted( + """Explains the reason around this restriction""" + reason: String = null +) on FIELD_DEFINITION | OBJECT + +""" +Contextualizes data based on the additional information provided by the directive. For example, you can use the `@inContext(country: CA)` directive to [query a product's price](https://shopify.dev/custom-storefronts/internationalization/international-pricing) in a storefront within the context of Canada. +""" +directive @inContext( + """The country code for context. For example, `CA`.""" + country: CountryCode + + """The language code for context. For example, `EN`.""" + language: LanguageCode + + """The identifier of the customer's preferred location.""" + preferredLocationId: ID +) on QUERY | MUTATION + +"A version of the API, as defined by [Shopify API versioning](https://shopify.dev/api/usage/versioning).\nVersions are commonly referred to by their handle (for example, `2021-10`).\n" +type ApiVersion { + """The human-readable name of the version.""" + displayName: String! + + """ + The unique identifier of an ApiVersion. All supported API versions have a date-based (YYYY-MM) or `unstable` handle. + """ + handle: String! + + """ + Whether the version is actively supported by Shopify. Supported API versions are guaranteed to be stable. Unsupported API versions include unstable, release candidate, and end-of-life versions that are marked as unsupported. For more information, refer to [Versioning](https://shopify.dev/api/usage/versioning). + """ + supported: Boolean! +} + +"""Details about the gift card used on the checkout.""" +type AppliedGiftCard implements Node { + """The amount that was taken from the gift card by applying it.""" + amountUsed: MoneyV2! + + """The amount that was taken from the gift card by applying it.""" + amountUsedV2: MoneyV2! @deprecated(reason: "Use `amountUsed` instead.") + + """The amount left on the gift card.""" + balance: MoneyV2! + + """The amount left on the gift card.""" + balanceV2: MoneyV2! @deprecated(reason: "Use `balance` instead.") + + """A globally-unique identifier.""" + id: ID! + + """The last characters of the gift card.""" + lastCharacters: String! + + """The amount that was applied to the checkout in its currency.""" + presentmentAmountUsed: MoneyV2! +} + +"""An article in an online store blog.""" +type Article implements HasMetafields & Node & OnlineStorePublishable { + """The article's author.""" + author: ArticleAuthor! @deprecated(reason: "Use `authorV2` instead.") + + """The article's author.""" + authorV2: ArticleAuthor + + """The blog that the article belongs to.""" + blog: Blog! + + """List of comments posted on the article.""" + comments( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + ): CommentConnection! + + """Stripped content of the article, single line with HTML tags removed.""" + content( + """Truncates string after the given length.""" + truncateAt: Int + ): String! + + """The content of the article, complete with HTML formatting.""" + contentHtml: HTML! + + """Stripped excerpt of the article, single line with HTML tags removed.""" + excerpt( + """Truncates string after the given length.""" + truncateAt: Int + ): String + + """The excerpt of the article, complete with HTML formatting.""" + excerptHtml: HTML + + "A human-friendly unique string for the Article automatically generated from its title.\n" + handle: String! + + """A globally-unique identifier.""" + id: ID! + + """The image associated with the article.""" + image: Image + + """Returns a metafield found by namespace and key.""" + metafield( + """A container for a set of metafields.""" + namespace: String! + + """The identifier for the metafield.""" + key: String! + ): Metafield + + "The metafields associated with the resource matching the supplied list of namespaces and keys.\n" + metafields( + """The list of metafields to retrieve by namespace and key.""" + identifiers: [HasMetafieldsIdentifier!]! + ): [Metafield]! + + """ + The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel. + """ + onlineStoreUrl: URL + + """The date and time when the article was published.""" + publishedAt: DateTime! + + """The article’s SEO information.""" + seo: SEO + + """A categorization that a article can be tagged with.""" + tags: [String!]! + + """The article’s name.""" + title: String! +} + +"""The author of an article.""" +type ArticleAuthor { + """The author's bio.""" + bio: String + + """The author’s email.""" + email: String! + + """The author's first name.""" + firstName: String! + + """The author's last name.""" + lastName: String! + + """The author's full name.""" + name: String! +} + +"An auto-generated type for paginating through multiple Articles.\n" +type ArticleConnection { + """A list of edges.""" + edges: [ArticleEdge!]! + + """A list of the nodes contained in ArticleEdge.""" + nodes: [Article!]! + + """Information to aid in pagination.""" + pageInfo: PageInfo! +} + +"An auto-generated type which holds one Article and a cursor during pagination.\n" +type ArticleEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of ArticleEdge.""" + node: Article! +} + +"""The set of valid sort keys for the Article query.""" +enum ArticleSortKeys { + """Sort by the `title` value.""" + TITLE + + """Sort by the `blog_title` value.""" + BLOG_TITLE + + """Sort by the `author` value.""" + AUTHOR + + """Sort by the `updated_at` value.""" + UPDATED_AT + + """Sort by the `published_at` value.""" + PUBLISHED_AT + + """Sort by the `id` value.""" + ID + + "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n" + RELEVANCE +} + +"""Represents a generic custom attribute.""" +type Attribute { + """Key or name of the attribute.""" + key: String! + + """Value of the attribute.""" + value: String +} + +"""Specifies the input fields required for an attribute.""" +input AttributeInput { + """Key or name of the attribute.""" + key: String! + + """Value of the attribute.""" + value: String! +} + +"Automatic discount applications capture the intentions of a discount that was automatically applied.\n" +type AutomaticDiscountApplication implements DiscountApplication { + """ + The method by which the discount's value is allocated to its entitled items. + """ + allocationMethod: DiscountApplicationAllocationMethod! + + """Which lines of targetType that the discount is allocated over.""" + targetSelection: DiscountApplicationTargetSelection! + + """The type of line that the discount is applicable towards.""" + targetType: DiscountApplicationTargetType! + + """The title of the application.""" + title: String! + + """The value of the discount application.""" + value: PricingValue! +} + +"""A collection of available shipping rates for a checkout.""" +type AvailableShippingRates { + "Whether or not the shipping rates are ready.\nThe `shippingRates` field is `null` when this value is `false`.\nThis field should be polled until its value becomes `true`.\n" + ready: Boolean! + + """The fetched shipping rates. `null` until the `ready` field is `true`.""" + shippingRates: [ShippingRate!] +} + +"""An online store blog.""" +type Blog implements HasMetafields & Node & OnlineStorePublishable { + """Find an article by its handle.""" + articleByHandle( + """The handle of the article.""" + handle: String! + ): Article + + """List of the blog's articles.""" + articles( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + + """Sort the underlying list by the given key.""" + sortKey: ArticleSortKeys = ID + + "Supported filter parameters:\n - `author`\n - `blog_title`\n - `created_at`\n - `tag`\n - `tag_not`\n - `updated_at`\n\nSee the detailed [search syntax](https://shopify.dev/api/usage/search-syntax)\nfor more information about using filters.\n" + query: String + ): ArticleConnection! + + """The authors who have contributed to the blog.""" + authors: [ArticleAuthor!]! + + "A human-friendly unique string for the Blog automatically generated from its title.\n" + handle: String! + + """A globally-unique identifier.""" + id: ID! + + """Returns a metafield found by namespace and key.""" + metafield( + """A container for a set of metafields.""" + namespace: String! + + """The identifier for the metafield.""" + key: String! + ): Metafield + + "The metafields associated with the resource matching the supplied list of namespaces and keys.\n" + metafields( + """The list of metafields to retrieve by namespace and key.""" + identifiers: [HasMetafieldsIdentifier!]! + ): [Metafield]! + + """ + The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel. + """ + onlineStoreUrl: URL + + """The blog's SEO information.""" + seo: SEO + + """The blogs’s title.""" + title: String! +} + +"An auto-generated type for paginating through multiple Blogs.\n" +type BlogConnection { + """A list of edges.""" + edges: [BlogEdge!]! + + """A list of the nodes contained in BlogEdge.""" + nodes: [Blog!]! + + """Information to aid in pagination.""" + pageInfo: PageInfo! +} + +"An auto-generated type which holds one Blog and a cursor during pagination.\n" +type BlogEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of BlogEdge.""" + node: Blog! +} + +"""The set of valid sort keys for the Blog query.""" +enum BlogSortKeys { + """Sort by the `handle` value.""" + HANDLE + + """Sort by the `title` value.""" + TITLE + + """Sort by the `id` value.""" + ID + + "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n" + RELEVANCE +} + +"The store's branding configuration.\n" +type Brand { + """The colors of the store's brand.""" + colors: BrandColors! + + """The store's cover image.""" + coverImage: MediaImage + + """The store's default logo.""" + logo: MediaImage + + """The store's short description.""" + shortDescription: String + + """The store's slogan.""" + slogan: String + + """The store's preferred logo for square UI elements.""" + squareLogo: MediaImage +} + +"A group of related colors for the shop's brand.\n" +type BrandColorGroup { + """The background color.""" + background: Color + + """The foreground color.""" + foreground: Color +} + +"The colors of the shop's brand.\n" +type BrandColors { + """The shop's primary brand colors.""" + primary: [BrandColorGroup!]! + + """The shop's secondary brand colors.""" + secondary: [BrandColorGroup!]! +} + +""" +Card brand, such as Visa or Mastercard, which can be used for payments. +""" +enum CardBrand { + """Visa.""" + VISA + + """Mastercard.""" + MASTERCARD + + """Discover.""" + DISCOVER + + """American Express.""" + AMERICAN_EXPRESS + + """Diners Club.""" + DINERS_CLUB + + """JCB.""" + JCB +} + +"A cart represents the merchandise that a buyer intends to purchase,\nand the estimated cost associated with the cart. Learn how to\n[interact with a cart](https://shopify.dev/custom-storefronts/internationalization/international-pricing)\nduring a customer's session.\n" +type Cart implements Node { + """An attribute associated with the cart.""" + attribute( + """The key of the attribute.""" + key: String! + ): Attribute + + """ + The attributes associated with the cart. Attributes are represented as key-value pairs. + """ + attributes: [Attribute!]! + + """Information about the buyer that is interacting with the cart.""" + buyerIdentity: CartBuyerIdentity! + + """The URL of the checkout for the cart.""" + checkoutUrl: URL! + + """ + The estimated costs that the buyer will pay at checkout. The costs are subject to change and changes will be reflected at checkout. The `cost` field uses the `buyerIdentity` field to determine [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing). + """ + cost: CartCost! + + """The date and time when the cart was created.""" + createdAt: DateTime! + + "The delivery groups available for the cart, based on the buyer identity default\ndelivery address preference or the default address of the logged-in customer.\n" + deliveryGroups( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + ): CartDeliveryGroupConnection! + + """The discounts that have been applied to the entire cart.""" + discountAllocations: [CartDiscountAllocation!]! + + "The case-insensitive discount codes that the customer added at checkout.\n" + discountCodes: [CartDiscountCode!]! + + "The estimated costs that the buyer will pay at checkout.\nThe estimated costs are subject to change and changes will be reflected at checkout.\nThe `estimatedCost` field uses the `buyerIdentity` field to determine\n[international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing).\n" + estimatedCost: CartEstimatedCost! @deprecated(reason: "Use `cost` instead.") + + """A globally-unique identifier.""" + id: ID! + + """ + A list of lines containing information about the items the customer intends to purchase. + """ + lines( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + ): CartLineConnection! + + """ + A note that is associated with the cart. For example, the note can be a personalized message to the buyer. + """ + note: String + + """The total number of items in the cart.""" + totalQuantity: Int! + + """The date and time when the cart was updated.""" + updatedAt: DateTime! +} + +"""Return type for `cartAttributesUpdate` mutation.""" +type CartAttributesUpdatePayload { + """The updated cart.""" + cart: Cart + + """The list of errors that occurred from executing the mutation.""" + userErrors: [CartUserError!]! +} + +""" +The discounts automatically applied to the cart line based on prerequisites that have been met. +""" +type CartAutomaticDiscountAllocation implements CartDiscountAllocation { + """The discounted amount that has been applied to the cart line.""" + discountedAmount: MoneyV2! + + """The title of the allocated discount.""" + title: String! +} + +""" +Represents information about the buyer that is interacting with the cart. +""" +type CartBuyerIdentity { + """The country where the buyer is located.""" + countryCode: CountryCode + + """The customer account associated with the cart.""" + customer: Customer + + "An ordered set of delivery addresses tied to the buyer that is interacting with the cart.\nThe rank of the preferences is determined by the order of the addresses in the array. Preferences\ncan be used to populate relevant fields in the checkout flow.\n" + deliveryAddressPreferences: [DeliveryAddress!]! + + """The email address of the buyer that is interacting with the cart.""" + email: String + + """The phone number of the buyer that is interacting with the cart.""" + phone: String +} + +"Specifies the input fields to update the buyer information associated with a cart.\nBuyer identity is used to determine\n[international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing)\nand should match the customer's shipping address.\n" +input CartBuyerIdentityInput { + """The email address of the buyer that is interacting with the cart.""" + email: String + + """The phone number of the buyer that is interacting with the cart.""" + phone: String + + """The country where the buyer is located.""" + countryCode: CountryCode + + """ + The access token used to identify the customer associated with the cart. + """ + customerAccessToken: String + + "An ordered set of delivery addresses tied to the buyer that is interacting with the cart.\nThe rank of the preferences is determined by the order of the addresses in the array. Preferences\ncan be used to populate relevant fields in the checkout flow.\n" + deliveryAddressPreferences: [DeliveryAddressInput!] +} + +"""Return type for `cartBuyerIdentityUpdate` mutation.""" +type CartBuyerIdentityUpdatePayload { + """The updated cart.""" + cart: Cart + + """The list of errors that occurred from executing the mutation.""" + userErrors: [CartUserError!]! +} + +""" +The discount that has been applied to the cart line using a discount code. +""" +type CartCodeDiscountAllocation implements CartDiscountAllocation { + """The code used to apply the discount.""" + code: String! + + """The discounted amount that has been applied to the cart line.""" + discountedAmount: MoneyV2! +} + +"The costs that the buyer will pay at checkout.\nThe cart cost uses [`CartBuyerIdentity`](https://shopify.dev/api/storefront/reference/cart/cartbuyeridentity) to determine\n[international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing).\n" +type CartCost { + """ + The estimated amount, before taxes and discounts, for the customer to pay at checkout. The checkout charge amount doesn't include any deferred payments that'll be paid at a later date. If the cart has no deferred payments, then the checkout charge amount is equivalent to `subtotalAmount`. + """ + checkoutChargeAmount: MoneyV2! + + """ + The amount, before taxes and cart-level discounts, for the customer to pay. + """ + subtotalAmount: MoneyV2! + + """Whether the subtotal amount is estimated.""" + subtotalAmountEstimated: Boolean! + + """The total amount for the customer to pay.""" + totalAmount: MoneyV2! + + """Whether the total amount is estimated.""" + totalAmountEstimated: Boolean! + + """The duty amount for the customer to pay at checkout.""" + totalDutyAmount: MoneyV2 + + """Whether the total duty amount is estimated.""" + totalDutyAmountEstimated: Boolean! + + """The tax amount for the customer to pay at checkout.""" + totalTaxAmount: MoneyV2 + + """Whether the total tax amount is estimated.""" + totalTaxAmountEstimated: Boolean! +} + +"""Return type for `cartCreate` mutation.""" +type CartCreatePayload { + """The new cart.""" + cart: Cart + + """The list of errors that occurred from executing the mutation.""" + userErrors: [CartUserError!]! +} + +""" +The discounts automatically applied to the cart line based on prerequisites that have been met. +""" +type CartCustomDiscountAllocation implements CartDiscountAllocation { + """The discounted amount that has been applied to the cart line.""" + discountedAmount: MoneyV2! + + """The title of the allocated discount.""" + title: String! +} + +""" +Information about the options available for one or more line items to be delivered to a specific address. +""" +type CartDeliveryGroup { + """A list of cart lines for the delivery group.""" + cartLines( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + ): CartLineConnection! + + """The destination address for the delivery group.""" + deliveryAddress: MailingAddress! + + """The delivery options available for the delivery group.""" + deliveryOptions: [CartDeliveryOption!]! + + """The ID for the delivery group.""" + id: ID! + + """The selected delivery option for the delivery group.""" + selectedDeliveryOption: CartDeliveryOption +} + +"An auto-generated type for paginating through multiple CartDeliveryGroups.\n" +type CartDeliveryGroupConnection { + """A list of edges.""" + edges: [CartDeliveryGroupEdge!]! + + """A list of the nodes contained in CartDeliveryGroupEdge.""" + nodes: [CartDeliveryGroup!]! + + """Information to aid in pagination.""" + pageInfo: PageInfo! +} + +"An auto-generated type which holds one CartDeliveryGroup and a cursor during pagination.\n" +type CartDeliveryGroupEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of CartDeliveryGroupEdge.""" + node: CartDeliveryGroup! +} + +"""Information about a delivery option.""" +type CartDeliveryOption { + """The code of the delivery option.""" + code: String + + """The method for the delivery option.""" + deliveryMethodType: DeliveryMethodType! + + """The description of the delivery option.""" + description: String + + """The estimated cost for the delivery option.""" + estimatedCost: MoneyV2! + + """The unique identifier of the delivery option.""" + handle: String! + + """The title of the delivery option.""" + title: String +} + +"""The discounts that have been applied to the cart line.""" +interface CartDiscountAllocation { + """The discounted amount that has been applied to the cart line.""" + discountedAmount: MoneyV2! +} + +"""The discount codes applied to the cart.""" +type CartDiscountCode { + """ + Whether the discount code is applicable to the cart's current contents. + """ + applicable: Boolean! + + """The code for the discount.""" + code: String! +} + +"""Return type for `cartDiscountCodesUpdate` mutation.""" +type CartDiscountCodesUpdatePayload { + """The updated cart.""" + cart: Cart + + """The list of errors that occurred from executing the mutation.""" + userErrors: [CartUserError!]! +} + +"""Possible error codes that can be returned by `CartUserError`.""" +enum CartErrorCode { + """The input value is invalid.""" + INVALID + + """The input value should be less than the maximum value allowed.""" + LESS_THAN + + """Merchandise line was not found in cart.""" + INVALID_MERCHANDISE_LINE + + """Missing discount code.""" + MISSING_DISCOUNT_CODE + + """Missing note.""" + MISSING_NOTE +} + +"The estimated costs that the buyer will pay at checkout.\nThe estimated cost uses\n[`CartBuyerIdentity`](https://shopify.dev/api/storefront/reference/cart/cartbuyeridentity)\nto determine\n[international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing).\n" +type CartEstimatedCost { + """ + The estimated amount, before taxes and discounts, for the customer to pay at checkout. The checkout charge amount doesn't include any deferred payments that'll be paid at a later date. If the cart has no deferred payments, then the checkout charge amount is equivalent to`subtotal_amount`. + """ + checkoutChargeAmount: MoneyV2! + + """ + The estimated amount, before taxes and discounts, for the customer to pay. + """ + subtotalAmount: MoneyV2! + + """The estimated total amount for the customer to pay.""" + totalAmount: MoneyV2! + + """The estimated duty amount for the customer to pay at checkout.""" + totalDutyAmount: MoneyV2 + + """The estimated tax amount for the customer to pay at checkout.""" + totalTaxAmount: MoneyV2 +} + +"""Specifies the input fields to create a cart.""" +input CartInput { + """ + An array of key-value pairs that contains additional information about the cart. + """ + attributes: [AttributeInput!] + + """A list of merchandise lines to add to the cart.""" + lines: [CartLineInput!] + + "The case-insensitive discount codes that the customer added at checkout.\n" + discountCodes: [String!] + + """ + A note that is associated with the cart. For example, the note can be a personalized message to the buyer. + """ + note: String + + "The customer associated with the cart. Used to determine [international pricing]\n(https://shopify.dev/custom-storefronts/internationalization/international-pricing).\nBuyer identity should match the customer's shipping address.\n" + buyerIdentity: CartBuyerIdentityInput +} + +"""Represents information about the merchandise in the cart.""" +type CartLine implements Node { + """An attribute associated with the cart line.""" + attribute( + """The key of the attribute.""" + key: String! + ): Attribute + + """ + The attributes associated with the cart line. Attributes are represented as key-value pairs. + """ + attributes: [Attribute!]! + + """ + The cost of the merchandise that the buyer will pay for at checkout. The costs are subject to change and changes will be reflected at checkout. + """ + cost: CartLineCost! + + """The discounts that have been applied to the cart line.""" + discountAllocations: [CartDiscountAllocation!]! + + """ + The estimated cost of the merchandise that the buyer will pay for at checkout. The estimated costs are subject to change and changes will be reflected at checkout. + """ + estimatedCost: CartLineEstimatedCost! @deprecated(reason: "Use `cost` instead.") + + """A globally-unique identifier.""" + id: ID! + + """The merchandise that the buyer intends to purchase.""" + merchandise: Merchandise! + + """The quantity of the merchandise that the customer intends to purchase.""" + quantity: Int! + + """ + The selling plan associated with the cart line and the effect that each selling plan has on variants when they're purchased. + """ + sellingPlanAllocation: SellingPlanAllocation +} + +"An auto-generated type for paginating through multiple CartLines.\n" +type CartLineConnection { + """A list of edges.""" + edges: [CartLineEdge!]! + + """A list of the nodes contained in CartLineEdge.""" + nodes: [CartLine!]! + + """Information to aid in pagination.""" + pageInfo: PageInfo! +} + +"""The cost of the merchandise line that the buyer will pay at checkout.""" +type CartLineCost { + """The amount of the merchandise line.""" + amountPerQuantity: MoneyV2! + + """The compare at amount of the merchandise line.""" + compareAtAmountPerQuantity: MoneyV2 + + """The cost of the merchandise line before line-level discounts.""" + subtotalAmount: MoneyV2! + + """The total cost of the merchandise line.""" + totalAmount: MoneyV2! +} + +"An auto-generated type which holds one CartLine and a cursor during pagination.\n" +type CartLineEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of CartLineEdge.""" + node: CartLine! +} + +""" +The estimated cost of the merchandise line that the buyer will pay at checkout. +""" +type CartLineEstimatedCost { + """The amount of the merchandise line.""" + amount: MoneyV2! + + """The compare at amount of the merchandise line.""" + compareAtAmount: MoneyV2 + + """The estimated cost of the merchandise line before discounts.""" + subtotalAmount: MoneyV2! + + """The estimated total cost of the merchandise line.""" + totalAmount: MoneyV2! +} + +"""Specifies the input fields to create a merchandise line on a cart.""" +input CartLineInput { + """ + An array of key-value pairs that contains additional information about the merchandise line. + """ + attributes: [AttributeInput!] + + """The quantity of the merchandise.""" + quantity: Int = 1 + + """The identifier of the merchandise that the buyer intends to purchase.""" + merchandiseId: ID! + + """ + The identifier of the selling plan that the merchandise is being purchased with. + """ + sellingPlanId: ID +} + +"""Specifies the input fields to update a line item on a cart.""" +input CartLineUpdateInput { + """The identifier of the merchandise line.""" + id: ID! + + """The quantity of the line item.""" + quantity: Int + + """The identifier of the merchandise for the line item.""" + merchandiseId: ID + + """ + An array of key-value pairs that contains additional information about the merchandise line. + """ + attributes: [AttributeInput!] + + """ + The identifier of the selling plan that the merchandise is being purchased with. + """ + sellingPlanId: ID +} + +"""Return type for `cartLinesAdd` mutation.""" +type CartLinesAddPayload { + """The updated cart.""" + cart: Cart + + """The list of errors that occurred from executing the mutation.""" + userErrors: [CartUserError!]! +} + +"""Return type for `cartLinesRemove` mutation.""" +type CartLinesRemovePayload { + """The updated cart.""" + cart: Cart + + """The list of errors that occurred from executing the mutation.""" + userErrors: [CartUserError!]! +} + +"""Return type for `cartLinesUpdate` mutation.""" +type CartLinesUpdatePayload { + """The updated cart.""" + cart: Cart + + """The list of errors that occurred from executing the mutation.""" + userErrors: [CartUserError!]! +} + +"""Return type for `cartNoteUpdate` mutation.""" +type CartNoteUpdatePayload { + """The updated cart.""" + cart: Cart + + """The list of errors that occurred from executing the mutation.""" + userErrors: [CartUserError!]! +} + +"The input fields for updating the selected delivery options for a delivery group.\n" +input CartSelectedDeliveryOptionInput { + """The ID of the cart delivery group.""" + deliveryGroupId: ID! + + """The handle of the selected delivery option.""" + deliveryOptionHandle: String! +} + +"""Return type for `cartSelectedDeliveryOptionsUpdate` mutation.""" +type CartSelectedDeliveryOptionsUpdatePayload { + """The updated cart.""" + cart: Cart + + """The list of errors that occurred from executing the mutation.""" + userErrors: [CartUserError!]! +} + +"""Represents an error that happens during execution of a cart mutation.""" +type CartUserError implements DisplayableError { + """The error code.""" + code: CartErrorCode + + """The path to the input field that caused the error.""" + field: [String!] + + """The error message.""" + message: String! +} + +""" +A container for all the information required to checkout items and pay. +""" +type Checkout implements Node { + """The gift cards used on the checkout.""" + appliedGiftCards: [AppliedGiftCard!]! + + "The available shipping rates for this Checkout.\nShould only be used when checkout `requiresShipping` is `true` and\nthe shipping address is valid.\n" + availableShippingRates: AvailableShippingRates + + """The identity of the customer associated with the checkout.""" + buyerIdentity: CheckoutBuyerIdentity! + + """The date and time when the checkout was completed.""" + completedAt: DateTime + + """The date and time when the checkout was created.""" + createdAt: DateTime! + + """The currency code for the checkout.""" + currencyCode: CurrencyCode! + + """A list of extra information that is added to the checkout.""" + customAttributes: [Attribute!]! + + """Discounts that have been applied on the checkout.""" + discountApplications( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + ): DiscountApplicationConnection! + + """The email attached to this checkout.""" + email: String + + """A globally-unique identifier.""" + id: ID! + + """ + A list of line item objects, each one containing information about an item in the checkout. + """ + lineItems( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + ): CheckoutLineItemConnection! + + """ + The sum of all the prices of all the items in the checkout. Duties, taxes, shipping and discounts excluded. + """ + lineItemsSubtotalPrice: MoneyV2! + + """The note associated with the checkout.""" + note: String + + """The resulting order from a paid checkout.""" + order: Order + + """ + The Order Status Page for this Checkout, null when checkout is not completed. + """ + orderStatusUrl: URL + + """ + The amount left to be paid. This is equal to the cost of the line items, taxes, and shipping, minus discounts and gift cards. + """ + paymentDue: MoneyV2! + + """ + The amount left to be paid. This is equal to the cost of the line items, duties, taxes, and shipping, minus discounts and gift cards. + """ + paymentDueV2: MoneyV2! @deprecated(reason: "Use `paymentDue` instead.") + + "Whether or not the Checkout is ready and can be completed. Checkouts may\nhave asynchronous operations that can take time to finish. If you want\nto complete a checkout or ensure all the fields are populated and up to\ndate, polling is required until the value is true.\n" + ready: Boolean! + + """States whether or not the fulfillment requires shipping.""" + requiresShipping: Boolean! + + """The shipping address to where the line items will be shipped.""" + shippingAddress: MailingAddress + + "The discounts that have been allocated onto the shipping line by discount applications.\n" + shippingDiscountAllocations: [DiscountAllocation!]! + + """ + Once a shipping rate is selected by the customer it is transitioned to a `shipping_line` object. + """ + shippingLine: ShippingRate + + """The price at checkout before shipping and taxes.""" + subtotalPrice: MoneyV2! + + """The price at checkout before duties, shipping, and taxes.""" + subtotalPriceV2: MoneyV2! @deprecated(reason: "Use `subtotalPrice` instead.") + + """Whether the checkout is tax exempt.""" + taxExempt: Boolean! + + """Whether taxes are included in the line item and shipping line prices.""" + taxesIncluded: Boolean! + + """The sum of all the duties applied to the line items in the checkout.""" + totalDuties: MoneyV2 + + """ + The sum of all the prices of all the items in the checkout, including taxes and duties. + """ + totalPrice: MoneyV2! + + """ + The sum of all the prices of all the items in the checkout, including taxes and duties. + """ + totalPriceV2: MoneyV2! @deprecated(reason: "Use `totalPrice` instead.") + + """ + The sum of all the taxes applied to the line items and shipping lines in the checkout. + """ + totalTax: MoneyV2! + + """ + The sum of all the taxes applied to the line items and shipping lines in the checkout. + """ + totalTaxV2: MoneyV2! @deprecated(reason: "Use `totalTax` instead.") + + """The date and time when the checkout was last updated.""" + updatedAt: DateTime! + + """The url pointing to the checkout accessible from the web.""" + webUrl: URL! +} + +"""Specifies the fields required to update a checkout's attributes.""" +input CheckoutAttributesUpdateV2Input { + """ + The text of an optional note that a shop owner can attach to the checkout. + """ + note: String + + """A list of extra information that is added to the checkout.""" + customAttributes: [AttributeInput!] + + "Allows setting partial addresses on a Checkout, skipping the full validation of attributes.\nThe required attributes are city, province, and country.\nFull validation of the addresses is still done at completion time. Defaults to `false` with \neach operation.\n" + allowPartialAddresses: Boolean = false +} + +"""Return type for `checkoutAttributesUpdateV2` mutation.""" +type CheckoutAttributesUpdateV2Payload { + """The updated checkout object.""" + checkout: Checkout + + """The list of errors that occurred from executing the mutation.""" + checkoutUserErrors: [CheckoutUserError!]! + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `checkoutUserErrors` instead.") +} + +"""The identity of the customer associated with the checkout.""" +type CheckoutBuyerIdentity { + """The country code for the checkout. For example, `CA`.""" + countryCode: CountryCode +} + +"""Specifies the identity of the customer associated with the checkout.""" +input CheckoutBuyerIdentityInput { + "The country code of one of the shop's\n[enabled countries](https://help.shopify.com/en/manual/payments/shopify-payments/multi-currency/setup).\nFor example, `CA`. Including this field creates a checkout in the specified country's currency.\n" + countryCode: CountryCode! +} + +"""Return type for `checkoutCompleteFree` mutation.""" +type CheckoutCompleteFreePayload { + """The updated checkout object.""" + checkout: Checkout + + """The list of errors that occurred from executing the mutation.""" + checkoutUserErrors: [CheckoutUserError!]! + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `checkoutUserErrors` instead.") +} + +"""Return type for `checkoutCompleteWithCreditCardV2` mutation.""" +type CheckoutCompleteWithCreditCardV2Payload { + """The checkout on which the payment was applied.""" + checkout: Checkout + + """The list of errors that occurred from executing the mutation.""" + checkoutUserErrors: [CheckoutUserError!]! + + """A representation of the attempted payment.""" + payment: Payment + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `checkoutUserErrors` instead.") +} + +"""Return type for `checkoutCompleteWithTokenizedPaymentV3` mutation.""" +type CheckoutCompleteWithTokenizedPaymentV3Payload { + """The checkout on which the payment was applied.""" + checkout: Checkout + + """The list of errors that occurred from executing the mutation.""" + checkoutUserErrors: [CheckoutUserError!]! + + """A representation of the attempted payment.""" + payment: Payment + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `checkoutUserErrors` instead.") +} + +"""Specifies the fields required to create a checkout.""" +input CheckoutCreateInput { + """The email with which the customer wants to checkout.""" + email: String + + """ + A list of line item objects, each one containing information about an item in the checkout. + """ + lineItems: [CheckoutLineItemInput!] + + """The shipping address to where the line items will be shipped.""" + shippingAddress: MailingAddressInput + + """ + The text of an optional note that a shop owner can attach to the checkout. + """ + note: String + + """A list of extra information that is added to the checkout.""" + customAttributes: [AttributeInput!] + + "Allows setting partial addresses on a Checkout, skipping the full validation of attributes.\nThe required attributes are city, province, and country.\nFull validation of addresses is still done at completion time. Defaults to `null`.\n" + allowPartialAddresses: Boolean + + """The identity of the customer associated with the checkout.""" + buyerIdentity: CheckoutBuyerIdentityInput +} + +"""Return type for `checkoutCreate` mutation.""" +type CheckoutCreatePayload { + """The new checkout object.""" + checkout: Checkout + + """The list of errors that occurred from executing the mutation.""" + checkoutUserErrors: [CheckoutUserError!]! + + """The checkout queue token. Available only to selected stores.""" + queueToken: String + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `checkoutUserErrors` instead.") +} + +"""Return type for `checkoutCustomerAssociateV2` mutation.""" +type CheckoutCustomerAssociateV2Payload { + """The updated checkout object.""" + checkout: Checkout + + """The list of errors that occurred from executing the mutation.""" + checkoutUserErrors: [CheckoutUserError!]! + + """The associated customer object.""" + customer: Customer + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `checkoutUserErrors` instead.") +} + +"""Return type for `checkoutCustomerDisassociateV2` mutation.""" +type CheckoutCustomerDisassociateV2Payload { + """The updated checkout object.""" + checkout: Checkout + + """The list of errors that occurred from executing the mutation.""" + checkoutUserErrors: [CheckoutUserError!]! + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `checkoutUserErrors` instead.") +} + +"""Return type for `checkoutDiscountCodeApplyV2` mutation.""" +type CheckoutDiscountCodeApplyV2Payload { + """The updated checkout object.""" + checkout: Checkout + + """The list of errors that occurred from executing the mutation.""" + checkoutUserErrors: [CheckoutUserError!]! + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `checkoutUserErrors` instead.") +} + +"""Return type for `checkoutDiscountCodeRemove` mutation.""" +type CheckoutDiscountCodeRemovePayload { + """The updated checkout object.""" + checkout: Checkout + + """The list of errors that occurred from executing the mutation.""" + checkoutUserErrors: [CheckoutUserError!]! + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `checkoutUserErrors` instead.") +} + +"""Return type for `checkoutEmailUpdateV2` mutation.""" +type CheckoutEmailUpdateV2Payload { + """The checkout object with the updated email.""" + checkout: Checkout + + """The list of errors that occurred from executing the mutation.""" + checkoutUserErrors: [CheckoutUserError!]! + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `checkoutUserErrors` instead.") +} + +"""Possible error codes that can be returned by `CheckoutUserError`.""" +enum CheckoutErrorCode { + """The input value is blank.""" + BLANK + + """The input value is invalid.""" + INVALID + + """The input value is too long.""" + TOO_LONG + + """The input value needs to be blank.""" + PRESENT + + """The input value should be less than the maximum value allowed.""" + LESS_THAN + + """ + The input value should be greater than or equal to the minimum value allowed. + """ + GREATER_THAN_OR_EQUAL_TO + + """ + The input value should be less than or equal to the maximum value allowed. + """ + LESS_THAN_OR_EQUAL_TO + + """Checkout is already completed.""" + ALREADY_COMPLETED + + """Checkout is locked.""" + LOCKED + + """Input value is not supported.""" + NOT_SUPPORTED + + """Input email contains an invalid domain name.""" + BAD_DOMAIN + + """Input Zip is invalid for country provided.""" + INVALID_FOR_COUNTRY + + """Input Zip is invalid for country and province provided.""" + INVALID_FOR_COUNTRY_AND_PROVINCE + + """Invalid state in country.""" + INVALID_STATE_IN_COUNTRY + + """Invalid province in country.""" + INVALID_PROVINCE_IN_COUNTRY + + """Invalid region in country.""" + INVALID_REGION_IN_COUNTRY + + """Shipping rate expired.""" + SHIPPING_RATE_EXPIRED + + """Gift card cannot be applied to a checkout that contains a gift card.""" + GIFT_CARD_UNUSABLE + + """Gift card is disabled.""" + GIFT_CARD_DISABLED + + """Gift card code is invalid.""" + GIFT_CARD_CODE_INVALID + + """Gift card has already been applied.""" + GIFT_CARD_ALREADY_APPLIED + + """Gift card currency does not match checkout currency.""" + GIFT_CARD_CURRENCY_MISMATCH + + """Gift card is expired.""" + GIFT_CARD_EXPIRED + + """Gift card has no funds left.""" + GIFT_CARD_DEPLETED + + """Gift card was not found.""" + GIFT_CARD_NOT_FOUND + + """Cart does not meet discount requirements notice.""" + CART_DOES_NOT_MEET_DISCOUNT_REQUIREMENTS_NOTICE + + """Discount expired.""" + DISCOUNT_EXPIRED + + """Discount disabled.""" + DISCOUNT_DISABLED + + """Discount limit reached.""" + DISCOUNT_LIMIT_REACHED + + """Higher value discount applied.""" + HIGHER_VALUE_DISCOUNT_APPLIED + + """Maximum number of discount codes limit reached.""" + MAXIMUM_DISCOUNT_CODE_LIMIT_REACHED + + """Discount not found.""" + DISCOUNT_NOT_FOUND + + """Customer already used once per customer discount notice.""" + CUSTOMER_ALREADY_USED_ONCE_PER_CUSTOMER_DISCOUNT_NOTICE + + """Discount code isn't working right now. Please contact us for help.""" + DISCOUNT_CODE_APPLICATION_FAILED + + """Checkout is already completed.""" + EMPTY + + """Not enough in stock.""" + NOT_ENOUGH_IN_STOCK + + """Missing payment input.""" + MISSING_PAYMENT_INPUT + + """The amount of the payment does not match the value to be paid.""" + TOTAL_PRICE_MISMATCH + + """Line item was not found in checkout.""" + LINE_ITEM_NOT_FOUND + + """Unable to apply discount.""" + UNABLE_TO_APPLY + + """Discount already applied.""" + DISCOUNT_ALREADY_APPLIED + + """Throttled during checkout.""" + THROTTLED_DURING_CHECKOUT + + """Queue token has expired.""" + EXPIRED_QUEUE_TOKEN + + """Queue token is invalid.""" + INVALID_QUEUE_TOKEN + + """Cannot specify country and presentment currency code.""" + INVALID_COUNTRY_AND_CURRENCY +} + +"""Return type for `checkoutGiftCardRemoveV2` mutation.""" +type CheckoutGiftCardRemoveV2Payload { + """The updated checkout object.""" + checkout: Checkout + + """The list of errors that occurred from executing the mutation.""" + checkoutUserErrors: [CheckoutUserError!]! + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `checkoutUserErrors` instead.") +} + +"""Return type for `checkoutGiftCardsAppend` mutation.""" +type CheckoutGiftCardsAppendPayload { + """The updated checkout object.""" + checkout: Checkout + + """The list of errors that occurred from executing the mutation.""" + checkoutUserErrors: [CheckoutUserError!]! + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `checkoutUserErrors` instead.") +} + +"""A single line item in the checkout, grouped by variant and attributes.""" +type CheckoutLineItem implements Node { + """ + Extra information in the form of an array of Key-Value pairs about the line item. + """ + customAttributes: [Attribute!]! + + """ + The discounts that have been allocated onto the checkout line item by discount applications. + """ + discountAllocations: [DiscountAllocation!]! + + """A globally-unique identifier.""" + id: ID! + + """The quantity of the line item.""" + quantity: Int! + + """Title of the line item. Defaults to the product's title.""" + title: String! + + """Unit price of the line item.""" + unitPrice: MoneyV2 + + """Product variant of the line item.""" + variant: ProductVariant +} + +"An auto-generated type for paginating through multiple CheckoutLineItems.\n" +type CheckoutLineItemConnection { + """A list of edges.""" + edges: [CheckoutLineItemEdge!]! + + """A list of the nodes contained in CheckoutLineItemEdge.""" + nodes: [CheckoutLineItem!]! + + """Information to aid in pagination.""" + pageInfo: PageInfo! +} + +"An auto-generated type which holds one CheckoutLineItem and a cursor during pagination.\n" +type CheckoutLineItemEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of CheckoutLineItemEdge.""" + node: CheckoutLineItem! +} + +"""Specifies the input fields to create a line item on a checkout.""" +input CheckoutLineItemInput { + """ + Extra information in the form of an array of Key-Value pairs about the line item. + """ + customAttributes: [AttributeInput!] + + """The quantity of the line item.""" + quantity: Int! + + """The identifier of the product variant for the line item.""" + variantId: ID! +} + +"""Specifies the input fields to update a line item on the checkout.""" +input CheckoutLineItemUpdateInput { + """The identifier of the line item.""" + id: ID + + """The variant identifier of the line item.""" + variantId: ID + + """The quantity of the line item.""" + quantity: Int + + """ + Extra information in the form of an array of Key-Value pairs about the line item. + """ + customAttributes: [AttributeInput!] +} + +"""Return type for `checkoutLineItemsAdd` mutation.""" +type CheckoutLineItemsAddPayload { + """The updated checkout object.""" + checkout: Checkout + + """The list of errors that occurred from executing the mutation.""" + checkoutUserErrors: [CheckoutUserError!]! + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `checkoutUserErrors` instead.") +} + +"""Return type for `checkoutLineItemsRemove` mutation.""" +type CheckoutLineItemsRemovePayload { + """The updated checkout object.""" + checkout: Checkout + + """The list of errors that occurred from executing the mutation.""" + checkoutUserErrors: [CheckoutUserError!]! + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `checkoutUserErrors` instead.") +} + +"""Return type for `checkoutLineItemsReplace` mutation.""" +type CheckoutLineItemsReplacePayload { + """The updated checkout object.""" + checkout: Checkout + + """The list of errors that occurred from executing the mutation.""" + userErrors: [CheckoutUserError!]! +} + +"""Return type for `checkoutLineItemsUpdate` mutation.""" +type CheckoutLineItemsUpdatePayload { + """The updated checkout object.""" + checkout: Checkout + + """The list of errors that occurred from executing the mutation.""" + checkoutUserErrors: [CheckoutUserError!]! + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `checkoutUserErrors` instead.") +} + +"""Return type for `checkoutShippingAddressUpdateV2` mutation.""" +type CheckoutShippingAddressUpdateV2Payload { + """The updated checkout object.""" + checkout: Checkout + + """The list of errors that occurred from executing the mutation.""" + checkoutUserErrors: [CheckoutUserError!]! + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `checkoutUserErrors` instead.") +} + +"""Return type for `checkoutShippingLineUpdate` mutation.""" +type CheckoutShippingLineUpdatePayload { + """The updated checkout object.""" + checkout: Checkout + + """The list of errors that occurred from executing the mutation.""" + checkoutUserErrors: [CheckoutUserError!]! + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `checkoutUserErrors` instead.") +} + +""" +Represents an error that happens during execution of a checkout mutation. +""" +type CheckoutUserError implements DisplayableError { + """The error code.""" + code: CheckoutErrorCode + + """The path to the input field that caused the error.""" + field: [String!] + + """The error message.""" + message: String! +} + +""" +A collection represents a grouping of products that a shop owner can create to organize them or make their shops easier to browse. +""" +type Collection implements HasMetafields & Node & OnlineStorePublishable { + """ + Stripped description of the collection, single line with HTML tags removed. + """ + description( + """Truncates string after the given length.""" + truncateAt: Int + ): String! + + """The description of the collection, complete with HTML formatting.""" + descriptionHtml: HTML! + + "A human-friendly unique string for the collection automatically generated from its title.\nLimit of 255 characters.\n" + handle: String! + + """A globally-unique identifier.""" + id: ID! + + """Image associated with the collection.""" + image: Image + + """Returns a metafield found by namespace and key.""" + metafield( + """A container for a set of metafields.""" + namespace: String! + + """The identifier for the metafield.""" + key: String! + ): Metafield + + "The metafields associated with the resource matching the supplied list of namespaces and keys.\n" + metafields( + """The list of metafields to retrieve by namespace and key.""" + identifiers: [HasMetafieldsIdentifier!]! + ): [Metafield]! + + """ + The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel. + """ + onlineStoreUrl: URL + + """List of products in the collection.""" + products( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + + """Sort the underlying list by the given key.""" + sortKey: ProductCollectionSortKeys = COLLECTION_DEFAULT + + """Returns a subset of products matching all product filters.""" + filters: [ProductFilter!] + ): ProductConnection! + + """The collection's SEO information.""" + seo: SEO! + + """The collection’s name. Limit of 255 characters.""" + title: String! + + """The date and time when the collection was last modified.""" + updatedAt: DateTime! +} + +"An auto-generated type for paginating through multiple Collections.\n" +type CollectionConnection { + """A list of edges.""" + edges: [CollectionEdge!]! + + """A list of the nodes contained in CollectionEdge.""" + nodes: [Collection!]! + + """Information to aid in pagination.""" + pageInfo: PageInfo! +} + +"An auto-generated type which holds one Collection and a cursor during pagination.\n" +type CollectionEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of CollectionEdge.""" + node: Collection! +} + +"""The set of valid sort keys for the Collection query.""" +enum CollectionSortKeys { + """Sort by the `title` value.""" + TITLE + + """Sort by the `updated_at` value.""" + UPDATED_AT + + """Sort by the `id` value.""" + ID + + "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n" + RELEVANCE +} + +"A string containing a hexadecimal representation of a color.\n\nFor example, \"#6A8D48\".\n" +scalar Color + +"""A comment on an article.""" +type Comment implements Node { + """The comment’s author.""" + author: CommentAuthor! + + """Stripped content of the comment, single line with HTML tags removed.""" + content( + """Truncates string after the given length.""" + truncateAt: Int + ): String! + + """The content of the comment, complete with HTML formatting.""" + contentHtml: HTML! + + """A globally-unique identifier.""" + id: ID! +} + +"""The author of a comment.""" +type CommentAuthor { + """The author's email.""" + email: String! + + """The author’s name.""" + name: String! +} + +"An auto-generated type for paginating through multiple Comments.\n" +type CommentConnection { + """A list of edges.""" + edges: [CommentEdge!]! + + """A list of the nodes contained in CommentEdge.""" + nodes: [Comment!]! + + """Information to aid in pagination.""" + pageInfo: PageInfo! +} + +"An auto-generated type which holds one Comment and a cursor during pagination.\n" +type CommentEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of CommentEdge.""" + node: Comment! +} + +"""A country.""" +type Country { + """The languages available for the country.""" + availableLanguages: [Language!]! + + """The currency of the country.""" + currency: Currency! + + """The ISO code of the country.""" + isoCode: CountryCode! + + """The name of the country.""" + name: String! + + """The unit system used in the country.""" + unitSystem: UnitSystem! +} + +"The code designating a country/region, which generally follows ISO 3166-1 alpha-2 guidelines.\nIf a territory doesn't have a country code value in the `CountryCode` enum, then it might be considered a subdivision\nof another country. For example, the territories associated with Spain are represented by the country code `ES`,\nand the territories associated with the United States of America are represented by the country code `US`.\n" +enum CountryCode { + """Afghanistan.""" + AF + + """Åland Islands.""" + AX + + """Albania.""" + AL + + """Algeria.""" + DZ + + """Andorra.""" + AD + + """Angola.""" + AO + + """Anguilla.""" + AI + + """Antigua & Barbuda.""" + AG + + """Argentina.""" + AR + + """Armenia.""" + AM + + """Aruba.""" + AW + + """Ascension Island.""" + AC + + """Australia.""" + AU + + """Austria.""" + AT + + """Azerbaijan.""" + AZ + + """Bahamas.""" + BS + + """Bahrain.""" + BH + + """Bangladesh.""" + BD + + """Barbados.""" + BB + + """Belarus.""" + BY + + """Belgium.""" + BE + + """Belize.""" + BZ + + """Benin.""" + BJ + + """Bermuda.""" + BM + + """Bhutan.""" + BT + + """Bolivia.""" + BO + + """Bosnia & Herzegovina.""" + BA + + """Botswana.""" + BW + + """Bouvet Island.""" + BV + + """Brazil.""" + BR + + """British Indian Ocean Territory.""" + IO + + """Brunei.""" + BN + + """Bulgaria.""" + BG + + """Burkina Faso.""" + BF + + """Burundi.""" + BI + + """Cambodia.""" + KH + + """Canada.""" + CA + + """Cape Verde.""" + CV + + """Caribbean Netherlands.""" + BQ + + """Cayman Islands.""" + KY + + """Central African Republic.""" + CF + + """Chad.""" + TD + + """Chile.""" + CL + + """China.""" + CN + + """Christmas Island.""" + CX + + """Cocos (Keeling) Islands.""" + CC + + """Colombia.""" + CO + + """Comoros.""" + KM + + """Congo - Brazzaville.""" + CG + + """Congo - Kinshasa.""" + CD + + """Cook Islands.""" + CK + + """Costa Rica.""" + CR + + """Croatia.""" + HR + + """Cuba.""" + CU + + """Curaçao.""" + CW + + """Cyprus.""" + CY + + """Czechia.""" + CZ + + """Côte d’Ivoire.""" + CI + + """Denmark.""" + DK + + """Djibouti.""" + DJ + + """Dominica.""" + DM + + """Dominican Republic.""" + DO + + """Ecuador.""" + EC + + """Egypt.""" + EG + + """El Salvador.""" + SV + + """Equatorial Guinea.""" + GQ + + """Eritrea.""" + ER + + """Estonia.""" + EE + + """Eswatini.""" + SZ + + """Ethiopia.""" + ET + + """Falkland Islands.""" + FK + + """Faroe Islands.""" + FO + + """Fiji.""" + FJ + + """Finland.""" + FI + + """France.""" + FR + + """French Guiana.""" + GF + + """French Polynesia.""" + PF + + """French Southern Territories.""" + TF + + """Gabon.""" + GA + + """Gambia.""" + GM + + """Georgia.""" + GE + + """Germany.""" + DE + + """Ghana.""" + GH + + """Gibraltar.""" + GI + + """Greece.""" + GR + + """Greenland.""" + GL + + """Grenada.""" + GD + + """Guadeloupe.""" + GP + + """Guatemala.""" + GT + + """Guernsey.""" + GG + + """Guinea.""" + GN + + """Guinea-Bissau.""" + GW + + """Guyana.""" + GY + + """Haiti.""" + HT + + """Heard & McDonald Islands.""" + HM + + """Vatican City.""" + VA + + """Honduras.""" + HN + + """Hong Kong SAR.""" + HK + + """Hungary.""" + HU + + """Iceland.""" + IS + + """India.""" + IN + + """Indonesia.""" + ID + + """Iran.""" + IR + + """Iraq.""" + IQ + + """Ireland.""" + IE + + """Isle of Man.""" + IM + + """Israel.""" + IL + + """Italy.""" + IT + + """Jamaica.""" + JM + + """Japan.""" + JP + + """Jersey.""" + JE + + """Jordan.""" + JO + + """Kazakhstan.""" + KZ + + """Kenya.""" + KE + + """Kiribati.""" + KI + + """North Korea.""" + KP + + """Kosovo.""" + XK + + """Kuwait.""" + KW + + """Kyrgyzstan.""" + KG + + """Laos.""" + LA + + """Latvia.""" + LV + + """Lebanon.""" + LB + + """Lesotho.""" + LS + + """Liberia.""" + LR + + """Libya.""" + LY + + """Liechtenstein.""" + LI + + """Lithuania.""" + LT + + """Luxembourg.""" + LU + + """Macao SAR.""" + MO + + """Madagascar.""" + MG + + """Malawi.""" + MW + + """Malaysia.""" + MY + + """Maldives.""" + MV + + """Mali.""" + ML + + """Malta.""" + MT + + """Martinique.""" + MQ + + """Mauritania.""" + MR + + """Mauritius.""" + MU + + """Mayotte.""" + YT + + """Mexico.""" + MX + + """Moldova.""" + MD + + """Monaco.""" + MC + + """Mongolia.""" + MN + + """Montenegro.""" + ME + + """Montserrat.""" + MS + + """Morocco.""" + MA + + """Mozambique.""" + MZ + + """Myanmar (Burma).""" + MM + + """Namibia.""" + NA + + """Nauru.""" + NR + + """Nepal.""" + NP + + """Netherlands.""" + NL + + """Netherlands Antilles.""" + AN + + """New Caledonia.""" + NC + + """New Zealand.""" + NZ + + """Nicaragua.""" + NI + + """Niger.""" + NE + + """Nigeria.""" + NG + + """Niue.""" + NU + + """Norfolk Island.""" + NF + + """North Macedonia.""" + MK + + """Norway.""" + NO + + """Oman.""" + OM + + """Pakistan.""" + PK + + """Palestinian Territories.""" + PS + + """Panama.""" + PA + + """Papua New Guinea.""" + PG + + """Paraguay.""" + PY + + """Peru.""" + PE + + """Philippines.""" + PH + + """Pitcairn Islands.""" + PN + + """Poland.""" + PL + + """Portugal.""" + PT + + """Qatar.""" + QA + + """Cameroon.""" + CM + + """Réunion.""" + RE + + """Romania.""" + RO + + """Russia.""" + RU + + """Rwanda.""" + RW + + """St. Barthélemy.""" + BL + + """St. Helena.""" + SH + + """St. Kitts & Nevis.""" + KN + + """St. Lucia.""" + LC + + """St. Martin.""" + MF + + """St. Pierre & Miquelon.""" + PM + + """Samoa.""" + WS + + """San Marino.""" + SM + + """São Tomé & Príncipe.""" + ST + + """Saudi Arabia.""" + SA + + """Senegal.""" + SN + + """Serbia.""" + RS + + """Seychelles.""" + SC + + """Sierra Leone.""" + SL + + """Singapore.""" + SG + + """Sint Maarten.""" + SX + + """Slovakia.""" + SK + + """Slovenia.""" + SI + + """Solomon Islands.""" + SB + + """Somalia.""" + SO + + """South Africa.""" + ZA + + """South Georgia & South Sandwich Islands.""" + GS + + """South Korea.""" + KR + + """South Sudan.""" + SS + + """Spain.""" + ES + + """Sri Lanka.""" + LK + + """St. Vincent & Grenadines.""" + VC + + """Sudan.""" + SD + + """Suriname.""" + SR + + """Svalbard & Jan Mayen.""" + SJ + + """Sweden.""" + SE + + """Switzerland.""" + CH + + """Syria.""" + SY + + """Taiwan.""" + TW + + """Tajikistan.""" + TJ + + """Tanzania.""" + TZ + + """Thailand.""" + TH + + """Timor-Leste.""" + TL + + """Togo.""" + TG + + """Tokelau.""" + TK + + """Tonga.""" + TO + + """Trinidad & Tobago.""" + TT + + """Tristan da Cunha.""" + TA + + """Tunisia.""" + TN + + """Turkey.""" + TR + + """Turkmenistan.""" + TM + + """Turks & Caicos Islands.""" + TC + + """Tuvalu.""" + TV + + """Uganda.""" + UG + + """Ukraine.""" + UA + + """United Arab Emirates.""" + AE + + """United Kingdom.""" + GB + + """United States.""" + US + + """U.S. Outlying Islands.""" + UM + + """Uruguay.""" + UY + + """Uzbekistan.""" + UZ + + """Vanuatu.""" + VU + + """Venezuela.""" + VE + + """Vietnam.""" + VN + + """British Virgin Islands.""" + VG + + """Wallis & Futuna.""" + WF + + """Western Sahara.""" + EH + + """Yemen.""" + YE + + """Zambia.""" + ZM + + """Zimbabwe.""" + ZW + + """Unknown Region.""" + ZZ +} + +"""Credit card information used for a payment.""" +type CreditCard { + """The brand of the credit card.""" + brand: String + + """The expiry month of the credit card.""" + expiryMonth: Int + + """The expiry year of the credit card.""" + expiryYear: Int + + """The credit card's BIN number.""" + firstDigits: String + + """The first name of the card holder.""" + firstName: String + + """The last 4 digits of the credit card.""" + lastDigits: String + + """The last name of the card holder.""" + lastName: String + + """The masked credit card number with only the last 4 digits displayed.""" + maskedNumber: String +} + +"Specifies the fields required to complete a checkout with\na Shopify vaulted credit card payment.\n" +input CreditCardPaymentInputV2 { + """The amount and currency of the payment.""" + paymentAmount: MoneyInput! + + """ + A unique client generated key used to avoid duplicate charges. When a duplicate payment is found, the original is returned instead of creating a new one. For more information, refer to [Idempotent requests](https://shopify.dev/api/usage/idempotent-requests). + """ + idempotencyKey: String! + + """The billing address for the payment.""" + billingAddress: MailingAddressInput! + + """The ID returned by Shopify's Card Vault.""" + vaultId: String! + + """Executes the payment in test mode if possible. Defaults to `false`.""" + test: Boolean = false +} + +"""The part of the image that should remain after cropping.""" +enum CropRegion { + """Keep the center of the image.""" + CENTER + + """Keep the top of the image.""" + TOP + + """Keep the bottom of the image.""" + BOTTOM + + """Keep the left of the image.""" + LEFT + + """Keep the right of the image.""" + RIGHT +} + +"""A currency.""" +type Currency { + """The ISO code of the currency.""" + isoCode: CurrencyCode! + + """The name of the currency.""" + name: String! + + """The symbol of the currency.""" + symbol: String! +} + +"The three-letter currency codes that represent the world currencies used in stores. These include standard ISO 4217 codes, legacy codes,\nand non-standard codes.\n" +enum CurrencyCode { + """United States Dollars (USD).""" + USD + + """Euro (EUR).""" + EUR + + """United Kingdom Pounds (GBP).""" + GBP + + """Canadian Dollars (CAD).""" + CAD + + """Afghan Afghani (AFN).""" + AFN + + """Albanian Lek (ALL).""" + ALL + + """Algerian Dinar (DZD).""" + DZD + + """Angolan Kwanza (AOA).""" + AOA + + """Argentine Pesos (ARS).""" + ARS + + """Armenian Dram (AMD).""" + AMD + + """Aruban Florin (AWG).""" + AWG + + """Australian Dollars (AUD).""" + AUD + + """Barbadian Dollar (BBD).""" + BBD + + """Azerbaijani Manat (AZN).""" + AZN + + """Bangladesh Taka (BDT).""" + BDT + + """Bahamian Dollar (BSD).""" + BSD + + """Bahraini Dinar (BHD).""" + BHD + + """Burundian Franc (BIF).""" + BIF + + """Belize Dollar (BZD).""" + BZD + + """Bermudian Dollar (BMD).""" + BMD + + """Bhutanese Ngultrum (BTN).""" + BTN + + """Bosnia and Herzegovina Convertible Mark (BAM).""" + BAM + + """Brazilian Real (BRL).""" + BRL + + """Bolivian Boliviano (BOB).""" + BOB + + """Botswana Pula (BWP).""" + BWP + + """Brunei Dollar (BND).""" + BND + + """Bulgarian Lev (BGN).""" + BGN + + """Burmese Kyat (MMK).""" + MMK + + """Cambodian Riel.""" + KHR + + """Cape Verdean escudo (CVE).""" + CVE + + """Cayman Dollars (KYD).""" + KYD + + """Central African CFA Franc (XAF).""" + XAF + + """Chilean Peso (CLP).""" + CLP + + """Chinese Yuan Renminbi (CNY).""" + CNY + + """Colombian Peso (COP).""" + COP + + """Comorian Franc (KMF).""" + KMF + + """Congolese franc (CDF).""" + CDF + + """Costa Rican Colones (CRC).""" + CRC + + """Croatian Kuna (HRK).""" + HRK + + """Czech Koruny (CZK).""" + CZK + + """Danish Kroner (DKK).""" + DKK + + """Dominican Peso (DOP).""" + DOP + + """East Caribbean Dollar (XCD).""" + XCD + + """Egyptian Pound (EGP).""" + EGP + + """Ethiopian Birr (ETB).""" + ETB + + """CFP Franc (XPF).""" + XPF + + """Fijian Dollars (FJD).""" + FJD + + """Gambian Dalasi (GMD).""" + GMD + + """Ghanaian Cedi (GHS).""" + GHS + + """Guatemalan Quetzal (GTQ).""" + GTQ + + """Guyanese Dollar (GYD).""" + GYD + + """Georgian Lari (GEL).""" + GEL + + """Haitian Gourde (HTG).""" + HTG + + """Honduran Lempira (HNL).""" + HNL + + """Hong Kong Dollars (HKD).""" + HKD + + """Hungarian Forint (HUF).""" + HUF + + """Icelandic Kronur (ISK).""" + ISK + + """Indian Rupees (INR).""" + INR + + """Indonesian Rupiah (IDR).""" + IDR + + """Israeli New Shekel (NIS).""" + ILS + + """Iraqi Dinar (IQD).""" + IQD + + """Jamaican Dollars (JMD).""" + JMD + + """Japanese Yen (JPY).""" + JPY + + """Jersey Pound.""" + JEP + + """Jordanian Dinar (JOD).""" + JOD + + """Kazakhstani Tenge (KZT).""" + KZT + + """Kenyan Shilling (KES).""" + KES + + """Kuwaiti Dinar (KWD).""" + KWD + + """Kyrgyzstani Som (KGS).""" + KGS + + """Laotian Kip (LAK).""" + LAK + + """Latvian Lati (LVL).""" + LVL + + """Lebanese Pounds (LBP).""" + LBP + + """Lesotho Loti (LSL).""" + LSL + + """Liberian Dollar (LRD).""" + LRD + + """Lithuanian Litai (LTL).""" + LTL + + """Malagasy Ariary (MGA).""" + MGA + + """Macedonia Denar (MKD).""" + MKD + + """Macanese Pataca (MOP).""" + MOP + + """Malawian Kwacha (MWK).""" + MWK + + """Maldivian Rufiyaa (MVR).""" + MVR + + """Mexican Pesos (MXN).""" + MXN + + """Malaysian Ringgits (MYR).""" + MYR + + """Mauritian Rupee (MUR).""" + MUR + + """Moldovan Leu (MDL).""" + MDL + + """Moroccan Dirham.""" + MAD + + """Mongolian Tugrik.""" + MNT + + """Mozambican Metical.""" + MZN + + """Namibian Dollar.""" + NAD + + """Nepalese Rupee (NPR).""" + NPR + + """Netherlands Antillean Guilder.""" + ANG + + """New Zealand Dollars (NZD).""" + NZD + + """Nicaraguan Córdoba (NIO).""" + NIO + + """Nigerian Naira (NGN).""" + NGN + + """Norwegian Kroner (NOK).""" + NOK + + """Omani Rial (OMR).""" + OMR + + """Panamian Balboa (PAB).""" + PAB + + """Pakistani Rupee (PKR).""" + PKR + + """Papua New Guinean Kina (PGK).""" + PGK + + """Paraguayan Guarani (PYG).""" + PYG + + """Peruvian Nuevo Sol (PEN).""" + PEN + + """Philippine Peso (PHP).""" + PHP + + """Polish Zlotych (PLN).""" + PLN + + """Qatari Rial (QAR).""" + QAR + + """Romanian Lei (RON).""" + RON + + """Russian Rubles (RUB).""" + RUB + + """Rwandan Franc (RWF).""" + RWF + + """Samoan Tala (WST).""" + WST + + """Saudi Riyal (SAR).""" + SAR + + """Serbian dinar (RSD).""" + RSD + + """Seychellois Rupee (SCR).""" + SCR + + """Singapore Dollars (SGD).""" + SGD + + """Sudanese Pound (SDG).""" + SDG + + """Syrian Pound (SYP).""" + SYP + + """South African Rand (ZAR).""" + ZAR + + """South Korean Won (KRW).""" + KRW + + """South Sudanese Pound (SSP).""" + SSP + + """Solomon Islands Dollar (SBD).""" + SBD + + """Sri Lankan Rupees (LKR).""" + LKR + + """Surinamese Dollar (SRD).""" + SRD + + """Swazi Lilangeni (SZL).""" + SZL + + """Swedish Kronor (SEK).""" + SEK + + """Swiss Francs (CHF).""" + CHF + + """Taiwan Dollars (TWD).""" + TWD + + """Thai baht (THB).""" + THB + + """Tanzanian Shilling (TZS).""" + TZS + + """Trinidad and Tobago Dollars (TTD).""" + TTD + + """Tunisian Dinar (TND).""" + TND + + """Turkish Lira (TRY).""" + TRY + + """Turkmenistani Manat (TMT).""" + TMT + + """Ugandan Shilling (UGX).""" + UGX + + """Ukrainian Hryvnia (UAH).""" + UAH + + """United Arab Emirates Dirham (AED).""" + AED + + """Uruguayan Pesos (UYU).""" + UYU + + """Uzbekistan som (UZS).""" + UZS + + """Vanuatu Vatu (VUV).""" + VUV + + """Vietnamese đồng (VND).""" + VND + + """West African CFA franc (XOF).""" + XOF + + """Yemeni Rial (YER).""" + YER + + """Zambian Kwacha (ZMW).""" + ZMW + + """Belarusian Ruble (BYN).""" + BYN + + """Belarusian Ruble (BYR).""" + BYR @deprecated(reason: "`BYR` is deprecated. Use `BYN` available from version `2021-01` onwards instead.") + + """Djiboutian Franc (DJF).""" + DJF + + """Eritrean Nakfa (ERN).""" + ERN + + """Falkland Islands Pounds (FKP).""" + FKP + + """Gibraltar Pounds (GIP).""" + GIP + + """Guinean Franc (GNF).""" + GNF + + """Iranian Rial (IRR).""" + IRR + + """Kiribati Dollar (KID).""" + KID + + """Libyan Dinar (LYD).""" + LYD + + """Mauritanian Ouguiya (MRU).""" + MRU + + """Sierra Leonean Leone (SLL).""" + SLL + + """Saint Helena Pounds (SHP).""" + SHP + + """Somali Shilling (SOS).""" + SOS + + """Sao Tome And Principe Dobra (STD).""" + STD @deprecated(reason: "`STD` is deprecated. Use `STN` available from version `2022-07` onwards instead.") + + """Sao Tome And Principe Dobra (STN).""" + STN + + """Tajikistani Somoni (TJS).""" + TJS + + """Tongan Pa'anga (TOP).""" + TOP + + """Venezuelan Bolivares (VED).""" + VED + + """Venezuelan Bolivares (VEF).""" + VEF @deprecated(reason: "`VEF` is deprecated. Use `VES` available from version `2020-10` onwards instead.") + + """Venezuelan Bolivares (VES).""" + VES + + """Unrecognized currency.""" + XXX +} + +""" +A customer represents a customer account with the shop. Customer accounts store contact information for the customer, saving logged-in customers the trouble of having to provide it at every checkout. +""" +type Customer implements HasMetafields { + """ + Indicates whether the customer has consented to be sent marketing material via email. + """ + acceptsMarketing: Boolean! + + """A list of addresses for the customer.""" + addresses( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + ): MailingAddressConnection! + + """The date and time when the customer was created.""" + createdAt: DateTime! + + """The customer’s default address.""" + defaultAddress: MailingAddress + + """The customer’s name, email or phone number.""" + displayName: String! + + """The customer’s email address.""" + email: String + + """The customer’s first name.""" + firstName: String + + """A unique identifier for the customer.""" + id: ID! + + """The customer's most recently updated, incomplete checkout.""" + lastIncompleteCheckout: Checkout + + """The customer’s last name.""" + lastName: String + + """Returns a metafield found by namespace and key.""" + metafield( + """A container for a set of metafields.""" + namespace: String! + + """The identifier for the metafield.""" + key: String! + ): Metafield + + "The metafields associated with the resource matching the supplied list of namespaces and keys.\n" + metafields( + """The list of metafields to retrieve by namespace and key.""" + identifiers: [HasMetafieldsIdentifier!]! + ): [Metafield]! + + """ + The number of orders that the customer has made at the store in their lifetime. + """ + numberOfOrders: UnsignedInt64! + + """The orders associated with the customer.""" + orders( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + + """Sort the underlying list by the given key.""" + sortKey: OrderSortKeys = ID + + "Supported filter parameters:\n - `processed_at`\n\nSee the detailed [search syntax](https://shopify.dev/api/usage/search-syntax)\nfor more information about using filters.\n" + query: String + ): OrderConnection! + + """The customer’s phone number.""" + phone: String + + "A comma separated list of tags that have been added to the customer.\nAdditional access scope required: unauthenticated_read_customer_tags.\n" + tags: [String!]! + + """The date and time when the customer information was updated.""" + updatedAt: DateTime! +} + +""" +A CustomerAccessToken represents the unique token required to make modifications to the customer object. +""" +type CustomerAccessToken { + """The customer’s access token.""" + accessToken: String! + + """The date and time when the customer access token expires.""" + expiresAt: DateTime! +} + +"""Specifies the input fields required to create a customer access token.""" +input CustomerAccessTokenCreateInput { + """The email associated to the customer.""" + email: String! + + """The login password to be used by the customer.""" + password: String! +} + +"""Return type for `customerAccessTokenCreate` mutation.""" +type CustomerAccessTokenCreatePayload { + """The newly created customer access token object.""" + customerAccessToken: CustomerAccessToken + + """The list of errors that occurred from executing the mutation.""" + customerUserErrors: [CustomerUserError!]! + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `customerUserErrors` instead.") +} + +"""Return type for `customerAccessTokenCreateWithMultipass` mutation.""" +type CustomerAccessTokenCreateWithMultipassPayload { + """An access token object associated with the customer.""" + customerAccessToken: CustomerAccessToken + + """The list of errors that occurred from executing the mutation.""" + customerUserErrors: [CustomerUserError!]! +} + +"""Return type for `customerAccessTokenDelete` mutation.""" +type CustomerAccessTokenDeletePayload { + """The destroyed access token.""" + deletedAccessToken: String + + """ID of the destroyed customer access token.""" + deletedCustomerAccessTokenId: String + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! +} + +"""Return type for `customerAccessTokenRenew` mutation.""" +type CustomerAccessTokenRenewPayload { + """The renewed customer access token object.""" + customerAccessToken: CustomerAccessToken + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! +} + +"""Return type for `customerActivateByUrl` mutation.""" +type CustomerActivateByUrlPayload { + """The customer that was activated.""" + customer: Customer + + """A new customer access token for the customer.""" + customerAccessToken: CustomerAccessToken + + """The list of errors that occurred from executing the mutation.""" + customerUserErrors: [CustomerUserError!]! +} + +"""Specifies the input fields required to activate a customer.""" +input CustomerActivateInput { + """The activation token required to activate the customer.""" + activationToken: String! + + """New password that will be set during activation.""" + password: String! +} + +"""Return type for `customerActivate` mutation.""" +type CustomerActivatePayload { + """The customer object.""" + customer: Customer + + """A newly created customer access token object for the customer.""" + customerAccessToken: CustomerAccessToken + + """The list of errors that occurred from executing the mutation.""" + customerUserErrors: [CustomerUserError!]! + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `customerUserErrors` instead.") +} + +"""Return type for `customerAddressCreate` mutation.""" +type CustomerAddressCreatePayload { + """The new customer address object.""" + customerAddress: MailingAddress + + """The list of errors that occurred from executing the mutation.""" + customerUserErrors: [CustomerUserError!]! + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `customerUserErrors` instead.") +} + +"""Return type for `customerAddressDelete` mutation.""" +type CustomerAddressDeletePayload { + """The list of errors that occurred from executing the mutation.""" + customerUserErrors: [CustomerUserError!]! + + """ID of the deleted customer address.""" + deletedCustomerAddressId: String + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `customerUserErrors` instead.") +} + +"""Return type for `customerAddressUpdate` mutation.""" +type CustomerAddressUpdatePayload { + """The customer’s updated mailing address.""" + customerAddress: MailingAddress + + """The list of errors that occurred from executing the mutation.""" + customerUserErrors: [CustomerUserError!]! + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `customerUserErrors` instead.") +} + +"""The fields required to create a new customer.""" +input CustomerCreateInput { + """The customer’s first name.""" + firstName: String + + """The customer’s last name.""" + lastName: String + + """The customer’s email.""" + email: String! + + "A unique phone number for the customer.\n\nFormatted using E.164 standard. For example, _+16135551111_.\n" + phone: String + + """The login password used by the customer.""" + password: String! + + """ + Indicates whether the customer has consented to be sent marketing material via email. + """ + acceptsMarketing: Boolean +} + +"""Return type for `customerCreate` mutation.""" +type CustomerCreatePayload { + """The created customer object.""" + customer: Customer + + """The list of errors that occurred from executing the mutation.""" + customerUserErrors: [CustomerUserError!]! + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `customerUserErrors` instead.") +} + +"""Return type for `customerDefaultAddressUpdate` mutation.""" +type CustomerDefaultAddressUpdatePayload { + """The updated customer object.""" + customer: Customer + + """The list of errors that occurred from executing the mutation.""" + customerUserErrors: [CustomerUserError!]! + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `customerUserErrors` instead.") +} + +"""Possible error codes that can be returned by `CustomerUserError`.""" +enum CustomerErrorCode { + """The input value is blank.""" + BLANK + + """The input value is invalid.""" + INVALID + + """The input value is already taken.""" + TAKEN + + """The input value is too long.""" + TOO_LONG + + """The input value is too short.""" + TOO_SHORT + + """Unidentified customer.""" + UNIDENTIFIED_CUSTOMER + + """Customer is disabled.""" + CUSTOMER_DISABLED + + """Input password starts or ends with whitespace.""" + PASSWORD_STARTS_OR_ENDS_WITH_WHITESPACE + + """Input contains HTML tags.""" + CONTAINS_HTML_TAGS + + """Input contains URL.""" + CONTAINS_URL + + """Invalid activation token.""" + TOKEN_INVALID + + """Customer already enabled.""" + ALREADY_ENABLED + + """Address does not exist.""" + NOT_FOUND + + """Input email contains an invalid domain name.""" + BAD_DOMAIN + + """Multipass token is not valid.""" + INVALID_MULTIPASS_REQUEST +} + +"""Return type for `customerRecover` mutation.""" +type CustomerRecoverPayload { + """The list of errors that occurred from executing the mutation.""" + customerUserErrors: [CustomerUserError!]! + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `customerUserErrors` instead.") +} + +"""Return type for `customerResetByUrl` mutation.""" +type CustomerResetByUrlPayload { + """The customer object which was reset.""" + customer: Customer + + """A newly created customer access token object for the customer.""" + customerAccessToken: CustomerAccessToken + + """The list of errors that occurred from executing the mutation.""" + customerUserErrors: [CustomerUserError!]! + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `customerUserErrors` instead.") +} + +"""Specifies the fields required to reset a customer’s password.""" +input CustomerResetInput { + """The reset token required to reset the customer’s password.""" + resetToken: String! + + """New password that will be set as part of the reset password process.""" + password: String! +} + +"""Return type for `customerReset` mutation.""" +type CustomerResetPayload { + """The customer object which was reset.""" + customer: Customer + + """A newly created customer access token object for the customer.""" + customerAccessToken: CustomerAccessToken + + """The list of errors that occurred from executing the mutation.""" + customerUserErrors: [CustomerUserError!]! + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `customerUserErrors` instead.") +} + +"""Specifies the fields required to update the Customer information.""" +input CustomerUpdateInput { + """The customer’s first name.""" + firstName: String + + """The customer’s last name.""" + lastName: String + + """The customer’s email.""" + email: String + + "A unique phone number for the customer.\n\nFormatted using E.164 standard. For example, _+16135551111_. To remove the phone number, specify `null`.\n" + phone: String + + """The login password used by the customer.""" + password: String + + """ + Indicates whether the customer has consented to be sent marketing material via email. + """ + acceptsMarketing: Boolean +} + +"""Return type for `customerUpdate` mutation.""" +type CustomerUpdatePayload { + """The updated customer object.""" + customer: Customer + + "The newly created customer access token. If the customer's password is updated, all previous access tokens\n(including the one used to perform this mutation) become invalid, and a new token is generated.\n" + customerAccessToken: CustomerAccessToken + + """The list of errors that occurred from executing the mutation.""" + customerUserErrors: [CustomerUserError!]! + + """The list of errors that occurred from executing the mutation.""" + userErrors: [UserError!]! @deprecated(reason: "Use `customerUserErrors` instead.") +} + +""" +Represents an error that happens during execution of a customer mutation. +""" +type CustomerUserError implements DisplayableError { + """The error code.""" + code: CustomerErrorCode + + """The path to the input field that caused the error.""" + field: [String!] + + """The error message.""" + message: String! +} + +"Represents an [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)-encoded date and time string.\nFor example, 3:50 pm on September 7, 2019 in the time zone of UTC (Coordinated Universal Time) is\nrepresented as `\"2019-09-07T15:50:00Z`\".\n" +scalar DateTime + +"A signed decimal number, which supports arbitrary precision and is serialized as a string.\n\nExample values: `\"29.99\"`, `\"29.999\"`.\n" +scalar Decimal + +"""A delivery address of the buyer that is interacting with the cart.""" +union DeliveryAddress = MailingAddress + +"The input fields for delivery address preferences.\n" +input DeliveryAddressInput { + """ + A delivery address preference of a buyer that is interacting with the cart. + """ + deliveryAddress: MailingAddressInput +} + +"""List of different delivery method types.""" +enum DeliveryMethodType { + """Shipping.""" + SHIPPING + + """Local Pickup.""" + PICK_UP + + """Retail.""" + RETAIL + + """Local Delivery.""" + LOCAL + + """Shipping to a Pickup Point.""" + PICKUP_POINT + + """None.""" + NONE +} + +""" +Digital wallet, such as Apple Pay, which can be used for accelerated checkouts. +""" +enum DigitalWallet { + """Apple Pay.""" + APPLE_PAY + + """Android Pay.""" + ANDROID_PAY + + """Google Pay.""" + GOOGLE_PAY + + """Shopify Pay.""" + SHOPIFY_PAY +} + +"An amount discounting the line that has been allocated by a discount.\n" +type DiscountAllocation { + """Amount of discount allocated.""" + allocatedAmount: MoneyV2! + + """The discount this allocated amount originated from.""" + discountApplication: DiscountApplication! +} + +"Discount applications capture the intentions of a discount source at\nthe time of application.\n" +interface DiscountApplication { + """ + The method by which the discount's value is allocated to its entitled items. + """ + allocationMethod: DiscountApplicationAllocationMethod! + + """Which lines of targetType that the discount is allocated over.""" + targetSelection: DiscountApplicationTargetSelection! + + """The type of line that the discount is applicable towards.""" + targetType: DiscountApplicationTargetType! + + """The value of the discount application.""" + value: PricingValue! +} + +""" +The method by which the discount's value is allocated onto its entitled lines. +""" +enum DiscountApplicationAllocationMethod { + """The value is spread across all entitled lines.""" + ACROSS + + """The value is applied onto every entitled line.""" + EACH + + """The value is specifically applied onto a particular line.""" + ONE @deprecated(reason: "Use ACROSS instead.") +} + +"An auto-generated type for paginating through multiple DiscountApplications.\n" +type DiscountApplicationConnection { + """A list of edges.""" + edges: [DiscountApplicationEdge!]! + + """A list of the nodes contained in DiscountApplicationEdge.""" + nodes: [DiscountApplication!]! + + """Information to aid in pagination.""" + pageInfo: PageInfo! +} + +"An auto-generated type which holds one DiscountApplication and a cursor during pagination.\n" +type DiscountApplicationEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of DiscountApplicationEdge.""" + node: DiscountApplication! +} + +"The lines on the order to which the discount is applied, of the type defined by\nthe discount application's `targetType`. For example, the value `ENTITLED`, combined with a `targetType` of\n`LINE_ITEM`, applies the discount on all line items that are entitled to the discount.\nThe value `ALL`, combined with a `targetType` of `SHIPPING_LINE`, applies the discount on all shipping lines.\n" +enum DiscountApplicationTargetSelection { + """The discount is allocated onto all the lines.""" + ALL + + """The discount is allocated onto only the lines that it's entitled for.""" + ENTITLED + + """The discount is allocated onto explicitly chosen lines.""" + EXPLICIT +} + +"The type of line (i.e. line item or shipping line) on an order that the discount is applicable towards.\n" +enum DiscountApplicationTargetType { + """The discount applies onto line items.""" + LINE_ITEM + + """The discount applies onto shipping lines.""" + SHIPPING_LINE +} + +"Discount code applications capture the intentions of a discount code at\nthe time that it is applied.\n" +type DiscountCodeApplication implements DiscountApplication { + """ + The method by which the discount's value is allocated to its entitled items. + """ + allocationMethod: DiscountApplicationAllocationMethod! + + """Specifies whether the discount code was applied successfully.""" + applicable: Boolean! + + """ + The string identifying the discount code that was used at the time of application. + """ + code: String! + + """Which lines of targetType that the discount is allocated over.""" + targetSelection: DiscountApplicationTargetSelection! + + """The type of line that the discount is applicable towards.""" + targetType: DiscountApplicationTargetType! + + """The value of the discount application.""" + value: PricingValue! +} + +"""Represents an error in the input of a mutation.""" +interface DisplayableError { + """The path to the input field that caused the error.""" + field: [String!] + + """The error message.""" + message: String! +} + +"""Represents a web address.""" +type Domain { + """The host name of the domain (eg: `example.com`).""" + host: String! + + """Whether SSL is enabled or not.""" + sslEnabled: Boolean! + + """The URL of the domain (eg: `https://example.com`).""" + url: URL! +} + +"""Represents a video hosted outside of Shopify.""" +type ExternalVideo implements Media & Node { + """A word or phrase to share the nature or contents of a media.""" + alt: String + + """The embed URL of the video for the respective host.""" + embedUrl: URL! + + """The URL.""" + embeddedUrl: URL! @deprecated(reason: "Use `originUrl` instead.") + + """The host of the external video.""" + host: MediaHost! + + """A globally-unique identifier.""" + id: ID! + + """The media content type.""" + mediaContentType: MediaContentType! + + """The origin URL of the video on the respective host.""" + originUrl: URL! + + """The preview image for the media.""" + previewImage: Image +} + +"""A filter that is supported on the parent field.""" +type Filter { + """A unique identifier.""" + id: String! + + """A human-friendly string for this filter.""" + label: String! + + """An enumeration that denotes the type of data this filter represents.""" + type: FilterType! + + """The list of values for this filter.""" + values: [FilterValue!]! +} + +"The type of data that the filter group represents.\n\nFor more information, refer to [Filter products in a collection with the Storefront API]\n(https://shopify.dev/custom-storefronts/products-collections/filter-products).\n" +enum FilterType { + """A list of selectable values.""" + LIST + + """A range of prices.""" + PRICE_RANGE + + """A boolean value.""" + BOOLEAN +} + +"""A selectable value within a filter.""" +type FilterValue { + """The number of results that match this filter value.""" + count: Int! + + """A unique identifier.""" + id: String! + + "An input object that can be used to filter by this value on the parent field.\n\nThe value is provided as a helper for building dynamic filtering UI. For example, if you have a list of selected `FilterValue` objects, you can combine their respective `input` values to use in a subsequent query.\n" + input: JSON! + + """A human-friendly string for this filter value.""" + label: String! +} + +"""Represents a single fulfillment in an order.""" +type Fulfillment { + """List of the fulfillment's line items.""" + fulfillmentLineItems( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + ): FulfillmentLineItemConnection! + + """The name of the tracking company.""" + trackingCompany: String + + "Tracking information associated with the fulfillment,\nsuch as the tracking number and tracking URL.\n" + trackingInfo( + """Truncate the array result to this size.""" + first: Int + ): [FulfillmentTrackingInfo!]! +} + +""" +Represents a single line item in a fulfillment. There is at most one fulfillment line item for each order line item. +""" +type FulfillmentLineItem { + """The associated order's line item.""" + lineItem: OrderLineItem! + + """The amount fulfilled in this fulfillment.""" + quantity: Int! +} + +"An auto-generated type for paginating through multiple FulfillmentLineItems.\n" +type FulfillmentLineItemConnection { + """A list of edges.""" + edges: [FulfillmentLineItemEdge!]! + + """A list of the nodes contained in FulfillmentLineItemEdge.""" + nodes: [FulfillmentLineItem!]! + + """Information to aid in pagination.""" + pageInfo: PageInfo! +} + +"An auto-generated type which holds one FulfillmentLineItem and a cursor during pagination.\n" +type FulfillmentLineItemEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of FulfillmentLineItemEdge.""" + node: FulfillmentLineItem! +} + +"""Tracking information associated with the fulfillment.""" +type FulfillmentTrackingInfo { + """The tracking number of the fulfillment.""" + number: String + + """The URL to track the fulfillment.""" + url: URL +} + +""" +The generic file resource lets you manage files in a merchant’s store. Generic files include any file that doesn’t fit into a designated type such as image or video. Example: PDF, JSON. +""" +type GenericFile implements Node { + """A word or phrase to indicate the contents of a file.""" + alt: String + + """A globally-unique identifier.""" + id: ID! + + """The MIME type of the file.""" + mimeType: String + + """The size of the original file in bytes.""" + originalFileSize: Int + + """The preview image for the file.""" + previewImage: Image + + """The URL of the file.""" + url: URL +} + +"""Used to specify a geographical location.""" +input GeoCoordinateInput { + """The coordinate's latitude value.""" + latitude: Float! + + """The coordinate's longitude value.""" + longitude: Float! +} + +"A string containing HTML code. Refer to the [HTML spec](https://html.spec.whatwg.org/#elements-3) for a\ncomplete list of HTML elements.\n\nExample value: `\"

Grey cotton knit sweater.

\"`\n" +scalar HTML + +""" +Represents information about the metafields associated to the specified resource. +""" +interface HasMetafields { + """Returns a metafield found by namespace and key.""" + metafield( + """A container for a set of metafields.""" + namespace: String! + + """The identifier for the metafield.""" + key: String! + ): Metafield + + "The metafields associated with the resource matching the supplied list of namespaces and keys.\n" + metafields( + """The list of metafields to retrieve by namespace and key.""" + identifiers: [HasMetafieldsIdentifier!]! + ): [Metafield]! +} + +"""Identifies a metafield on an owner resource by namespace and key.""" +input HasMetafieldsIdentifier { + """A container for a set of metafields.""" + namespace: String! + + """The identifier for the metafield.""" + key: String! +} + +"""Represents an image resource.""" +type Image { + """A word or phrase to share the nature or contents of an image.""" + altText: String + + """ + The original height of the image in pixels. Returns `null` if the image is not hosted by Shopify. + """ + height: Int + + """A unique identifier for the image.""" + id: ID + + "The location of the original image as a URL.\n\nIf there are any existing transformations in the original source URL, they will remain and not be stripped.\n" + originalSrc: URL! @deprecated(reason: "Use `url` instead.") + + """The location of the image as a URL.""" + src: URL! @deprecated(reason: "Use `url` instead.") + + "The location of the transformed image as a URL.\n\nAll transformation arguments are considered \"best-effort\". If they can be applied to an image, they will be.\nOtherwise any transformations which an image type does not support will be ignored.\n" + transformedSrc( + """Image width in pixels between 1 and 5760.""" + maxWidth: Int + + """Image height in pixels between 1 and 5760.""" + maxHeight: Int + + """Crops the image according to the specified region.""" + crop: CropRegion + + """ + Image size multiplier for high-resolution retina displays. Must be between 1 and 3. + """ + scale: Int = 1 + + """ + Best effort conversion of image into content type (SVG -> PNG, Anything -> JPG, Anything -> WEBP are supported). + """ + preferredContentType: ImageContentType + ): URL! @deprecated(reason: "Use `url(transform:)` instead") + + "The location of the image as a URL.\n\nIf no transform options are specified, then the original image will be preserved including any pre-applied transforms.\n\nAll transformation options are considered \"best-effort\". Any transformation that the original image type doesn't support will be ignored.\n\nIf you need multiple variations of the same image, then you can use [GraphQL aliases](https://graphql.org/learn/queries/#aliases).\n" + url( + """A set of options to transform the original image.""" + transform: ImageTransformInput + ): URL! + + """ + The original width of the image in pixels. Returns `null` if the image is not hosted by Shopify. + """ + width: Int +} + +"An auto-generated type for paginating through multiple Images.\n" +type ImageConnection { + """A list of edges.""" + edges: [ImageEdge!]! + + """A list of the nodes contained in ImageEdge.""" + nodes: [Image!]! + + """Information to aid in pagination.""" + pageInfo: PageInfo! +} + +"""List of supported image content types.""" +enum ImageContentType { + """A PNG image.""" + PNG + + """A JPG image.""" + JPG + + """A WEBP image.""" + WEBP +} + +"An auto-generated type which holds one Image and a cursor during pagination.\n" +type ImageEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of ImageEdge.""" + node: Image! +} + +"The available options for transforming an image.\n\nAll transformation options are considered best effort. Any transformation that the original image type doesn't support will be ignored.\n" +input ImageTransformInput { + "The region of the image to remain after cropping.\nMust be used in conjunction with the `maxWidth` and/or `maxHeight` fields, where the `maxWidth` and `maxHeight` aren't equal.\nThe `crop` argument should coincide with the smaller value. A smaller `maxWidth` indicates a `LEFT` or `RIGHT` crop, while\na smaller `maxHeight` indicates a `TOP` or `BOTTOM` crop. For example, `{ maxWidth: 5, maxHeight: 10, crop: LEFT }` will result\nin an image with a width of 5 and height of 10, where the right side of the image is removed.\n" + crop: CropRegion + + "Image width in pixels between 1 and 5760.\n" + maxWidth: Int + + "Image height in pixels between 1 and 5760.\n" + maxHeight: Int + + "Image size multiplier for high-resolution retina displays. Must be within 1..3.\n" + scale: Int = 1 + + "Convert the source image into the preferred content type.\nSupported conversions: `.svg` to `.png`, any file type to `.jpg`, and any file type to `.webp`.\n" + preferredContentType: ImageContentType +} + +"A [JSON](https://www.json.org/json-en.html) object.\n\nExample value:\n`{\n \"product\": {\n \"id\": \"gid://shopify/Product/1346443542550\",\n \"title\": \"White T-shirt\",\n \"options\": [{\n \"name\": \"Size\",\n \"values\": [\"M\", \"L\"]\n }]\n }\n}`\n" +scalar JSON + +"""A language.""" +type Language { + """ + The name of the language in the language itself. If the language uses capitalization, it is capitalized for a mid-sentence position. + """ + endonymName: String! + + """The ISO code.""" + isoCode: LanguageCode! + + """The name of the language in the current language.""" + name: String! +} + +"""ISO 639-1 language codes supported by Shopify.""" +enum LanguageCode { + """Afrikaans.""" + AF + + """Akan.""" + AK + + """Amharic.""" + AM + + """Arabic.""" + AR + + """Assamese.""" + AS + + """Azerbaijani.""" + AZ + + """Belarusian.""" + BE + + """Bulgarian.""" + BG + + """Bambara.""" + BM + + """Bangla.""" + BN + + """Tibetan.""" + BO + + """Breton.""" + BR + + """Bosnian.""" + BS + + """Catalan.""" + CA + + """Chechen.""" + CE + + """Czech.""" + CS + + """Welsh.""" + CY + + """Danish.""" + DA + + """German.""" + DE + + """Dzongkha.""" + DZ + + """Ewe.""" + EE + + """Greek.""" + EL + + """English.""" + EN + + """Esperanto.""" + EO + + """Spanish.""" + ES + + """Estonian.""" + ET + + """Basque.""" + EU + + """Persian.""" + FA + + """Fulah.""" + FF + + """Finnish.""" + FI + + """Faroese.""" + FO + + """French.""" + FR + + """Western Frisian.""" + FY + + """Irish.""" + GA + + """Scottish Gaelic.""" + GD + + """Galician.""" + GL + + """Gujarati.""" + GU + + """Manx.""" + GV + + """Hausa.""" + HA + + """Hebrew.""" + HE + + """Hindi.""" + HI + + """Croatian.""" + HR + + """Hungarian.""" + HU + + """Armenian.""" + HY + + """Interlingua.""" + IA + + """Indonesian.""" + ID + + """Igbo.""" + IG + + """Sichuan Yi.""" + II + + """Icelandic.""" + IS + + """Italian.""" + IT + + """Japanese.""" + JA + + """Javanese.""" + JV + + """Georgian.""" + KA + + """Kikuyu.""" + KI + + """Kazakh.""" + KK + + """Kalaallisut.""" + KL + + """Khmer.""" + KM + + """Kannada.""" + KN + + """Korean.""" + KO + + """Kashmiri.""" + KS + + """Kurdish.""" + KU + + """Cornish.""" + KW + + """Kyrgyz.""" + KY + + """Luxembourgish.""" + LB + + """Ganda.""" + LG + + """Lingala.""" + LN + + """Lao.""" + LO + + """Lithuanian.""" + LT + + """Luba-Katanga.""" + LU + + """Latvian.""" + LV + + """Malagasy.""" + MG + + """Māori.""" + MI + + """Macedonian.""" + MK + + """Malayalam.""" + ML + + """Mongolian.""" + MN + + """Marathi.""" + MR + + """Malay.""" + MS + + """Maltese.""" + MT + + """Burmese.""" + MY + + """Norwegian (Bokmål).""" + NB + + """North Ndebele.""" + ND + + """Nepali.""" + NE + + """Dutch.""" + NL + + """Norwegian Nynorsk.""" + NN + + """Norwegian.""" + NO + + """Oromo.""" + OM + + """Odia.""" + OR + + """Ossetic.""" + OS + + """Punjabi.""" + PA + + """Polish.""" + PL + + """Pashto.""" + PS + + """Portuguese (Brazil).""" + PT_BR + + """Portuguese (Portugal).""" + PT_PT + + """Quechua.""" + QU + + """Romansh.""" + RM + + """Rundi.""" + RN + + """Romanian.""" + RO + + """Russian.""" + RU + + """Kinyarwanda.""" + RW + + """Sindhi.""" + SD + + """Northern Sami.""" + SE + + """Sango.""" + SG + + """Sinhala.""" + SI + + """Slovak.""" + SK + + """Slovenian.""" + SL + + """Shona.""" + SN + + """Somali.""" + SO + + """Albanian.""" + SQ + + """Serbian.""" + SR + + """Sundanese.""" + SU + + """Swedish.""" + SV + + """Swahili.""" + SW + + """Tamil.""" + TA + + """Telugu.""" + TE + + """Tajik.""" + TG + + """Thai.""" + TH + + """Tigrinya.""" + TI + + """Turkmen.""" + TK + + """Tongan.""" + TO + + """Turkish.""" + TR + + """Tatar.""" + TT + + """Uyghur.""" + UG + + """Ukrainian.""" + UK + + """Urdu.""" + UR + + """Uzbek.""" + UZ + + """Vietnamese.""" + VI + + """Wolof.""" + WO + + """Xhosa.""" + XH + + """Yiddish.""" + YI + + """Yoruba.""" + YO + + """Chinese (Simplified).""" + ZH_CN + + """Chinese (Traditional).""" + ZH_TW + + """Zulu.""" + ZU + + """Chinese.""" + ZH + + """Portuguese.""" + PT + + """Church Slavic.""" + CU + + """Volapük.""" + VO +} + +"""Information about the localized experiences configured for the shop.""" +type Localization { + """The list of countries with enabled localized experiences.""" + availableCountries: [Country!]! + + """The list of languages available for the active country.""" + availableLanguages: [Language!]! + + """ + The country of the active localized experience. Use the `@inContext` directive to change this value. + """ + country: Country! + + """ + The language of the active localized experience. Use the `@inContext` directive to change this value. + """ + language: Language! +} + +"""Represents a location where product inventory is held.""" +type Location implements Node { + """The address of the location.""" + address: LocationAddress! + + """A globally-unique identifier.""" + id: ID! + + """The name of the location.""" + name: String! +} + +"Represents the address of a location.\n" +type LocationAddress { + """The first line of the address for the location.""" + address1: String + + """The second line of the address for the location.""" + address2: String + + """The city of the location.""" + city: String + + """The country of the location.""" + country: String + + """The country code of the location.""" + countryCode: String + + """A formatted version of the address for the location.""" + formatted: [String!]! + + """The latitude coordinates of the location.""" + latitude: Float + + """The longitude coordinates of the location.""" + longitude: Float + + """The phone number of the location.""" + phone: String + + """The province of the location.""" + province: String + + "The code for the province, state, or district of the address of the location.\n" + provinceCode: String + + """The ZIP code of the location.""" + zip: String +} + +"An auto-generated type for paginating through multiple Locations.\n" +type LocationConnection { + """A list of edges.""" + edges: [LocationEdge!]! + + """A list of the nodes contained in LocationEdge.""" + nodes: [Location!]! + + """Information to aid in pagination.""" + pageInfo: PageInfo! +} + +"An auto-generated type which holds one Location and a cursor during pagination.\n" +type LocationEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of LocationEdge.""" + node: Location! +} + +"""The set of valid sort keys for the Location query.""" +enum LocationSortKeys { + """Sort by the `id` value.""" + ID + + """Sort by the `name` value.""" + NAME + + """Sort by the `city` value.""" + CITY + + """Sort by the `distance` value.""" + DISTANCE +} + +"""Represents a mailing address for customers and shipping.""" +type MailingAddress implements Node { + """ + The first line of the address. Typically the street address or PO Box number. + """ + address1: String + + "The second line of the address. Typically the number of the apartment, suite, or unit.\n" + address2: String + + "The name of the city, district, village, or town.\n" + city: String + + "The name of the customer's company or organization.\n" + company: String + + "The name of the country.\n" + country: String + + "The two-letter code for the country of the address.\n\nFor example, US.\n" + countryCode: String @deprecated(reason: "Use `countryCodeV2` instead.") + + "The two-letter code for the country of the address.\n\nFor example, US.\n" + countryCodeV2: CountryCode + + """The first name of the customer.""" + firstName: String + + """ + A formatted version of the address, customized by the provided arguments. + """ + formatted( + """Whether to include the customer's name in the formatted address.""" + withName: Boolean = false + + """Whether to include the customer's company in the formatted address.""" + withCompany: Boolean = true + ): [String!]! + + """A comma-separated list of the values for city, province, and country.""" + formattedArea: String + + """A globally-unique identifier.""" + id: ID! + + """The last name of the customer.""" + lastName: String + + """The latitude coordinate of the customer address.""" + latitude: Float + + """The longitude coordinate of the customer address.""" + longitude: Float + + "The full name of the customer, based on firstName and lastName.\n" + name: String + + "A unique phone number for the customer.\n\nFormatted using E.164 standard. For example, _+16135551111_.\n" + phone: String + + """The region of the address, such as the province, state, or district.""" + province: String + + "The two-letter code for the region.\n\nFor example, ON.\n" + provinceCode: String + + """The zip or postal code of the address.""" + zip: String +} + +"An auto-generated type for paginating through multiple MailingAddresses.\n" +type MailingAddressConnection { + """A list of edges.""" + edges: [MailingAddressEdge!]! + + """A list of the nodes contained in MailingAddressEdge.""" + nodes: [MailingAddress!]! + + """Information to aid in pagination.""" + pageInfo: PageInfo! +} + +"An auto-generated type which holds one MailingAddress and a cursor during pagination.\n" +type MailingAddressEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of MailingAddressEdge.""" + node: MailingAddress! +} + +"""Specifies the fields accepted to create or update a mailing address.""" +input MailingAddressInput { + "The first line of the address. Typically the street address or PO Box number.\n" + address1: String + + "The second line of the address. Typically the number of the apartment, suite, or unit.\n" + address2: String + + "The name of the city, district, village, or town.\n" + city: String + + "The name of the customer's company or organization.\n" + company: String + + """The name of the country.""" + country: String + + """The first name of the customer.""" + firstName: String + + """The last name of the customer.""" + lastName: String + + "A unique phone number for the customer.\n\nFormatted using E.164 standard. For example, _+16135551111_.\n" + phone: String + + """The region of the address, such as the province, state, or district.""" + province: String + + """The zip or postal code of the address.""" + zip: String +} + +"Manual discount applications capture the intentions of a discount that was manually created.\n" +type ManualDiscountApplication implements DiscountApplication { + """ + The method by which the discount's value is allocated to its entitled items. + """ + allocationMethod: DiscountApplicationAllocationMethod! + + """The description of the application.""" + description: String + + """Which lines of targetType that the discount is allocated over.""" + targetSelection: DiscountApplicationTargetSelection! + + """The type of line that the discount is applicable towards.""" + targetType: DiscountApplicationTargetType! + + """The title of the application.""" + title: String! + + """The value of the discount application.""" + value: PricingValue! +} + +"""Represents a media interface.""" +interface Media { + """A word or phrase to share the nature or contents of a media.""" + alt: String + + """The media content type.""" + mediaContentType: MediaContentType! + + """The preview image for the media.""" + previewImage: Image +} + +"An auto-generated type for paginating through multiple Media.\n" +type MediaConnection { + """A list of edges.""" + edges: [MediaEdge!]! + + """A list of the nodes contained in MediaEdge.""" + nodes: [Media!]! + + """Information to aid in pagination.""" + pageInfo: PageInfo! +} + +"""The possible content types for a media object.""" +enum MediaContentType { + """An externally hosted video.""" + EXTERNAL_VIDEO + + """A Shopify hosted image.""" + IMAGE + + """A 3d model.""" + MODEL_3D + + """A Shopify hosted video.""" + VIDEO +} + +"An auto-generated type which holds one Media and a cursor during pagination.\n" +type MediaEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of MediaEdge.""" + node: Media! +} + +"""Host for a Media Resource.""" +enum MediaHost { + """Host for YouTube embedded videos.""" + YOUTUBE + + """Host for Vimeo embedded videos.""" + VIMEO +} + +"""Represents a Shopify hosted image.""" +type MediaImage implements Media & Node { + """A word or phrase to share the nature or contents of a media.""" + alt: String + + """A globally-unique identifier.""" + id: ID! + + """The image for the media.""" + image: Image + + """The media content type.""" + mediaContentType: MediaContentType! + + """The preview image for the media.""" + previewImage: Image +} + +"A menu used for navigation within a storefront.\n" +type Menu implements Node { + """The menu's handle.""" + handle: String! + + """A globally-unique identifier.""" + id: ID! + + """The menu's child items.""" + items: [MenuItem!]! + + """The count of items on the menu.""" + itemsCount: Int! + + """The menu's title.""" + title: String! +} + +"A menu item within a parent menu.\n" +type MenuItem implements Node { + """A globally-unique identifier.""" + id: ID! + + """The menu item's child items.""" + items: [MenuItem!]! + + """The ID of the linked resource.""" + resourceId: ID + + """The menu item's tags to filter a collection.""" + tags: [String!]! + + """The menu item's title.""" + title: String! + + """The menu item's type.""" + type: MenuItemType! + + """The menu item's URL.""" + url: URL +} + +"""A menu item type.""" +enum MenuItemType { + """A frontpage link.""" + FRONTPAGE + + """A collection link.""" + COLLECTION + + """A collection link.""" + COLLECTIONS + + """A product link.""" + PRODUCT + + """A catalog link.""" + CATALOG + + """A page link.""" + PAGE + + """A blog link.""" + BLOG + + """An article link.""" + ARTICLE + + """A search link.""" + SEARCH + + """A shop policy link.""" + SHOP_POLICY + + """An http link.""" + HTTP +} + +"""The merchandise to be purchased at checkout.""" +union Merchandise = ProductVariant + +"Metafields represent custom metadata attached to a resource. Metafields can be sorted into namespaces and are\ncomprised of keys, values, and value types.\n" +type Metafield implements Node { + """The date and time when the storefront metafield was created.""" + createdAt: DateTime! + + """The description of a metafield.""" + description: String + + """A globally-unique identifier.""" + id: ID! + + """The key name for a metafield.""" + key: String! + + """The namespace for a metafield.""" + namespace: String! + + """The parent object that the metafield belongs to.""" + parentResource: MetafieldParentResource! + + """ + Returns a reference object if the metafield definition's type is a resource reference. + """ + reference: MetafieldReference + + """ + A list of reference objects if the metafield's type is a resource reference list. + """ + references( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + ): MetafieldReferenceConnection + + "The type name of the metafield.\nSee the list of [supported types](https://shopify.dev/apps/metafields/definitions/types).\n" + type: String! + + """The date and time when the storefront metafield was updated.""" + updatedAt: DateTime! + + """The value of a metafield.""" + value: String! +} + +"A filter used to view a subset of products in a collection matching a specific metafield value.\n\nOnly the following metafield types are currently supported:\n- `number_integer`\n- `number_decimal`\n- `single_line_text_field`\n- `boolean` as of 2022-04.\n" +input MetafieldFilter { + """The namespace of the metafield to filter on.""" + namespace: String! + + """The key of the metafield to filter on.""" + key: String! + + """The value of the metafield.""" + value: String! +} + +"""A resource that the metafield belongs to.""" +union MetafieldParentResource = Article | Blog | Collection | Customer | Order | Page | Product | ProductVariant | Shop + +"Returns the resource which is being referred to by a metafield.\n" +union MetafieldReference = Collection | GenericFile | MediaImage | Metaobject | Page | Product | ProductVariant | Video + +"An auto-generated type for paginating through multiple MetafieldReferences.\n" +type MetafieldReferenceConnection { + """A list of edges.""" + edges: [MetafieldReferenceEdge!]! + + """A list of the nodes contained in MetafieldReferenceEdge.""" + nodes: [MetafieldReference!]! + + """Information to aid in pagination.""" + pageInfo: PageInfo! +} + +"An auto-generated type which holds one MetafieldReference and a cursor during pagination.\n" +type MetafieldReferenceEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of MetafieldReferenceEdge.""" + node: MetafieldReference! +} + +"""An instance of a user-defined model based on a MetaobjectDefinition.""" +type Metaobject implements Node { + """Accesses a field of the object by key.""" + field( + """The key of the field.""" + key: String! + ): MetaobjectField + + "All object fields with defined values.\nOmitted object keys can be assumed null, and no guarantees are made about field order.\n" + fields: [MetaobjectField!]! + + """The unique handle of the metaobject. Useful as a custom ID.""" + handle: String! + + """A globally-unique identifier.""" + id: ID! + + """ + The type of the metaobject. Defines the namespace of its associated metafields. + """ + type: String! + + """The date and time when the metaobject was last updated.""" + updatedAt: DateTime! +} + +"An auto-generated type for paginating through multiple Metaobjects.\n" +type MetaobjectConnection { + """A list of edges.""" + edges: [MetaobjectEdge!]! + + """A list of the nodes contained in MetaobjectEdge.""" + nodes: [Metaobject!]! + + """Information to aid in pagination.""" + pageInfo: PageInfo! +} + +"An auto-generated type which holds one Metaobject and a cursor during pagination.\n" +type MetaobjectEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of MetaobjectEdge.""" + node: Metaobject! +} + +"""Provides the value of a Metaobject field.""" +type MetaobjectField { + """The field key.""" + key: String! + + """A referenced object if the field type is a resource reference.""" + reference: MetafieldReference + + """ + A list of referenced objects if the field type is a resource reference list. + """ + references( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + ): MetafieldReferenceConnection + + "The type name of the field.\nSee the list of [supported types](https://shopify.dev/apps/metafields/definitions/types).\n" + type: String! + + """The field value.""" + value: String +} + +"""The input fields used to retrieve a metaobject by handle.""" +input MetaobjectHandleInput { + """The handle of the metaobject.""" + handle: String! + + """The type of the metaobject.""" + type: String! +} + +"""Represents a Shopify hosted 3D model.""" +type Model3d implements Media & Node { + """A word or phrase to share the nature or contents of a media.""" + alt: String + + """A globally-unique identifier.""" + id: ID! + + """The media content type.""" + mediaContentType: MediaContentType! + + """The preview image for the media.""" + previewImage: Image + + """The sources for a 3d model.""" + sources: [Model3dSource!]! +} + +"""Represents a source for a Shopify hosted 3d model.""" +type Model3dSource { + """The filesize of the 3d model.""" + filesize: Int! + + """The format of the 3d model.""" + format: String! + + """The MIME type of the 3d model.""" + mimeType: String! + + """The URL of the 3d model.""" + url: String! +} + +"""Specifies the fields for a monetary value with currency.""" +input MoneyInput { + """Decimal money amount.""" + amount: Decimal! + + """Currency of the money.""" + currencyCode: CurrencyCode! +} + +"A monetary value with currency.\n" +type MoneyV2 { + """Decimal money amount.""" + amount: Decimal! + + """Currency of the money.""" + currencyCode: CurrencyCode! +} + +""" +The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. +""" +type Mutation { + """Updates the attributes on a cart.""" + cartAttributesUpdate( + """ + An array of key-value pairs that contains additional information about the cart. + """ + attributes: [AttributeInput!]! + + """The ID of the cart.""" + cartId: ID! + ): CartAttributesUpdatePayload + + "Updates customer information associated with a cart.\nBuyer identity is used to determine\n[international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing)\nand should match the customer's shipping address.\n" + cartBuyerIdentityUpdate( + """The ID of the cart.""" + cartId: ID! + + "The customer associated with the cart. Used to determine\n[international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing).\nBuyer identity should match the customer's shipping address.\n" + buyerIdentity: CartBuyerIdentityInput! + ): CartBuyerIdentityUpdatePayload + + """Creates a new cart.""" + cartCreate( + """The fields used to create a cart.""" + input: CartInput + ): CartCreatePayload + + """Updates the discount codes applied to the cart.""" + cartDiscountCodesUpdate( + """The ID of the cart.""" + cartId: ID! + + "The case-insensitive discount codes that the customer added at checkout.\n" + discountCodes: [String!] + ): CartDiscountCodesUpdatePayload + + """Adds a merchandise line to the cart.""" + cartLinesAdd( + """A list of merchandise lines to add to the cart.""" + lines: [CartLineInput!]! + + """The ID of the cart.""" + cartId: ID! + ): CartLinesAddPayload + + """Removes one or more merchandise lines from the cart.""" + cartLinesRemove( + """The ID of the cart.""" + cartId: ID! + + """The merchandise line IDs to remove.""" + lineIds: [ID!]! + ): CartLinesRemovePayload + + """Updates one or more merchandise lines on a cart.""" + cartLinesUpdate( + """The ID of the cart.""" + cartId: ID! + + """The merchandise lines to update.""" + lines: [CartLineUpdateInput!]! + ): CartLinesUpdatePayload + + """Updates the note on the cart.""" + cartNoteUpdate( + """The ID of the cart.""" + cartId: ID! + + """The note on the cart.""" + note: String + ): CartNoteUpdatePayload + + """Update the selected delivery options for a delivery group.""" + cartSelectedDeliveryOptionsUpdate( + """The ID of the cart.""" + cartId: ID! + + """The selected delivery options.""" + selectedDeliveryOptions: [CartSelectedDeliveryOptionInput!]! + ): CartSelectedDeliveryOptionsUpdatePayload + + """ + Updates the attributes of a checkout if `allowPartialAddresses` is `true`. + """ + checkoutAttributesUpdateV2( + """The ID of the checkout.""" + checkoutId: ID! + + """The checkout attributes to update.""" + input: CheckoutAttributesUpdateV2Input! + ): CheckoutAttributesUpdateV2Payload + + """ + Completes a checkout without providing payment information. You can use this mutation for free items or items whose purchase price is covered by a gift card. + """ + checkoutCompleteFree( + """The ID of the checkout.""" + checkoutId: ID! + ): CheckoutCompleteFreePayload + + """ + Completes a checkout using a credit card token from Shopify's card vault. Before you can complete checkouts using CheckoutCompleteWithCreditCardV2, you need to [_request payment processing_](https://shopify.dev/apps/channels/getting-started#request-payment-processing). + """ + checkoutCompleteWithCreditCardV2( + """The ID of the checkout.""" + checkoutId: ID! + + """The credit card info to apply as a payment.""" + payment: CreditCardPaymentInputV2! + ): CheckoutCompleteWithCreditCardV2Payload + + """Completes a checkout with a tokenized payment.""" + checkoutCompleteWithTokenizedPaymentV3( + """The ID of the checkout.""" + checkoutId: ID! + + """The info to apply as a tokenized payment.""" + payment: TokenizedPaymentInputV3! + ): CheckoutCompleteWithTokenizedPaymentV3Payload + + """Creates a new checkout.""" + checkoutCreate( + """The fields used to create a checkout.""" + input: CheckoutCreateInput! + + """The checkout queue token. Available only to selected stores.""" + queueToken: String + ): CheckoutCreatePayload + + """Associates a customer to the checkout.""" + checkoutCustomerAssociateV2( + """The ID of the checkout.""" + checkoutId: ID! + + """The customer access token of the customer to associate.""" + customerAccessToken: String! + ): CheckoutCustomerAssociateV2Payload + + """Disassociates the current checkout customer from the checkout.""" + checkoutCustomerDisassociateV2( + """The ID of the checkout.""" + checkoutId: ID! + ): CheckoutCustomerDisassociateV2Payload + + """Applies a discount to an existing checkout using a discount code.""" + checkoutDiscountCodeApplyV2( + """The discount code to apply to the checkout.""" + discountCode: String! + + """The ID of the checkout.""" + checkoutId: ID! + ): CheckoutDiscountCodeApplyV2Payload + + """Removes the applied discounts from an existing checkout.""" + checkoutDiscountCodeRemove( + """The ID of the checkout.""" + checkoutId: ID! + ): CheckoutDiscountCodeRemovePayload + + """Updates the email on an existing checkout.""" + checkoutEmailUpdateV2( + """The ID of the checkout.""" + checkoutId: ID! + + """The email to update the checkout with.""" + email: String! + ): CheckoutEmailUpdateV2Payload + + """Removes an applied gift card from the checkout.""" + checkoutGiftCardRemoveV2( + """The ID of the Applied Gift Card to remove from the Checkout.""" + appliedGiftCardId: ID! + + """The ID of the checkout.""" + checkoutId: ID! + ): CheckoutGiftCardRemoveV2Payload + + """Appends gift cards to an existing checkout.""" + checkoutGiftCardsAppend( + """A list of gift card codes to append to the checkout.""" + giftCardCodes: [String!]! + + """The ID of the checkout.""" + checkoutId: ID! + ): CheckoutGiftCardsAppendPayload + + """Adds a list of line items to a checkout.""" + checkoutLineItemsAdd( + """A list of line item objects to add to the checkout.""" + lineItems: [CheckoutLineItemInput!]! + + """The ID of the checkout.""" + checkoutId: ID! + ): CheckoutLineItemsAddPayload + + """Removes line items from an existing checkout.""" + checkoutLineItemsRemove( + """The checkout on which to remove line items.""" + checkoutId: ID! + + """Line item ids to remove.""" + lineItemIds: [ID!]! + ): CheckoutLineItemsRemovePayload + + """Sets a list of line items to a checkout.""" + checkoutLineItemsReplace( + """A list of line item objects to set on the checkout.""" + lineItems: [CheckoutLineItemInput!]! + + """The ID of the checkout.""" + checkoutId: ID! + ): CheckoutLineItemsReplacePayload + + """Updates line items on a checkout.""" + checkoutLineItemsUpdate( + """The checkout on which to update line items.""" + checkoutId: ID! + + """Line items to update.""" + lineItems: [CheckoutLineItemUpdateInput!]! + ): CheckoutLineItemsUpdatePayload + + """Updates the shipping address of an existing checkout.""" + checkoutShippingAddressUpdateV2( + """The shipping address to where the line items will be shipped.""" + shippingAddress: MailingAddressInput! + + """The ID of the checkout.""" + checkoutId: ID! + ): CheckoutShippingAddressUpdateV2Payload + + """Updates the shipping lines on an existing checkout.""" + checkoutShippingLineUpdate( + """The ID of the checkout.""" + checkoutId: ID! + + """ + A unique identifier to a Checkout’s shipping provider, price, and title combination, enabling the customer to select the availableShippingRates. + """ + shippingRateHandle: String! + ): CheckoutShippingLineUpdatePayload + + "Creates a customer access token.\nThe customer access token is required to modify the customer object in any way.\n" + customerAccessTokenCreate( + """The fields used to create a customer access token.""" + input: CustomerAccessTokenCreateInput! + ): CustomerAccessTokenCreatePayload + + "Creates a customer access token using a\n[multipass token](https://shopify.dev/api/multipass) instead of email and\npassword. A customer record is created if the customer doesn't exist. If a customer\nrecord already exists but the record is disabled, then the customer record is enabled.\n" + customerAccessTokenCreateWithMultipass( + """ + A valid [multipass token](https://shopify.dev/api/multipass) to be authenticated. + """ + multipassToken: String! + ): CustomerAccessTokenCreateWithMultipassPayload + + """Permanently destroys a customer access token.""" + customerAccessTokenDelete( + """The access token used to identify the customer.""" + customerAccessToken: String! + ): CustomerAccessTokenDeletePayload + + "Renews a customer access token.\n\nAccess token renewal must happen *before* a token expires.\nIf a token has already expired, a new one should be created instead via `customerAccessTokenCreate`.\n" + customerAccessTokenRenew( + """The access token used to identify the customer.""" + customerAccessToken: String! + ): CustomerAccessTokenRenewPayload + + """Activates a customer.""" + customerActivate( + """Specifies the customer to activate.""" + id: ID! + + """The fields used to activate a customer.""" + input: CustomerActivateInput! + ): CustomerActivatePayload + + """ + Activates a customer with the activation url received from `customerCreate`. + """ + customerActivateByUrl( + """The customer activation URL.""" + activationUrl: URL! + + """A new password set during activation.""" + password: String! + ): CustomerActivateByUrlPayload + + """Creates a new address for a customer.""" + customerAddressCreate( + """The access token used to identify the customer.""" + customerAccessToken: String! + + """The customer mailing address to create.""" + address: MailingAddressInput! + ): CustomerAddressCreatePayload + + """Permanently deletes the address of an existing customer.""" + customerAddressDelete( + """Specifies the address to delete.""" + id: ID! + + """The access token used to identify the customer.""" + customerAccessToken: String! + ): CustomerAddressDeletePayload + + """Updates the address of an existing customer.""" + customerAddressUpdate( + """The access token used to identify the customer.""" + customerAccessToken: String! + + """Specifies the customer address to update.""" + id: ID! + + """The customer’s mailing address.""" + address: MailingAddressInput! + ): CustomerAddressUpdatePayload + + """Creates a new customer.""" + customerCreate( + """The fields used to create a new customer.""" + input: CustomerCreateInput! + ): CustomerCreatePayload + + """Updates the default address of an existing customer.""" + customerDefaultAddressUpdate( + """The access token used to identify the customer.""" + customerAccessToken: String! + + """ID of the address to set as the new default for the customer.""" + addressId: ID! + ): CustomerDefaultAddressUpdatePayload + + "Sends a reset password email to the customer. The reset password\nemail contains a reset password URL and token that you can pass to\nthe [`customerResetByUrl`](https://shopify.dev/api/storefront/latest/mutations/customerResetByUrl) or\n[`customerReset`](https://shopify.dev/api/storefront/latest/mutations/customerReset) mutation to reset the\ncustomer password.\n\nThis mutation is throttled by IP. With authenticated access,\nyou can provide a [`Shopify-Storefront-Buyer-IP`](https://shopify.dev/api/usage/authentication#optional-ip-header) instead of the request IP.\n\nMake sure that the value provided to `Shopify-Storefront-Buyer-IP` is trusted. Unthrottled access to this\nmutation presents a security risk.\n" + customerRecover( + """The email address of the customer to recover.""" + email: String! + ): CustomerRecoverPayload + + "\"Resets a customer’s password with the token received from a reset password email. You can send a reset password email with the [`customerRecover`](https://shopify.dev/api/storefront/latest/mutations/customerRecover) mutation.\"\n" + customerReset( + """Specifies the customer to reset.""" + id: ID! + + """The fields used to reset a customer’s password.""" + input: CustomerResetInput! + ): CustomerResetPayload + + "\"Resets a customer’s password with the reset password URL received from a reset password email. You can send a reset password email with the [`customerRecover`](https://shopify.dev/api/storefront/latest/mutations/customerRecover) mutation.\"\n" + customerResetByUrl( + """The customer's reset password url.""" + resetUrl: URL! + + """New password that will be set as part of the reset password process.""" + password: String! + ): CustomerResetByUrlPayload + + """Updates an existing customer.""" + customerUpdate( + """The access token used to identify the customer.""" + customerAccessToken: String! + + """The customer object input.""" + customer: CustomerUpdateInput! + ): CustomerUpdatePayload +} + +"An object with an ID field to support global identification, in accordance with the\n[Relay specification](https://relay.dev/graphql/objectidentification.htm#sec-Node-Interface).\nThis interface is used by the [node](https://shopify.dev/api/admin-graphql/unstable/queries/node)\nand [nodes](https://shopify.dev/api/admin-graphql/unstable/queries/nodes) queries.\n" +interface Node { + """A globally-unique identifier.""" + id: ID! +} + +""" +Represents a resource that can be published to the Online Store sales channel. +""" +interface OnlineStorePublishable { + """ + The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel. + """ + onlineStoreUrl: URL +} + +""" +An order is a customer’s completed request to purchase one or more products from a shop. An order is created when a customer completes the checkout process, during which time they provides an email address, billing address and payment information. +""" +type Order implements HasMetafields & Node { + """ + The reason for the order's cancellation. Returns `null` if the order wasn't canceled. + """ + cancelReason: OrderCancelReason + + """ + The date and time when the order was canceled. Returns null if the order wasn't canceled. + """ + canceledAt: DateTime + + """The code of the currency used for the payment.""" + currencyCode: CurrencyCode! + + """ + The subtotal of line items and their discounts, excluding line items that have been removed. Does not contain order-level discounts, duties, shipping costs, or shipping discounts. Taxes are not included unless the order is a taxes-included order. + """ + currentSubtotalPrice: MoneyV2! + + """The total cost of duties for the order, including refunds.""" + currentTotalDuties: MoneyV2 + + """ + The total amount of the order, including duties, taxes and discounts, minus amounts for line items that have been removed. + """ + currentTotalPrice: MoneyV2! + + """ + The total of all taxes applied to the order, excluding taxes for returned line items. + """ + currentTotalTax: MoneyV2! + + """A list of the custom attributes added to the order.""" + customAttributes: [Attribute!]! + + """The locale code in which this specific order happened.""" + customerLocale: String + + """The unique URL that the customer can use to access the order.""" + customerUrl: URL + + """Discounts that have been applied on the order.""" + discountApplications( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + ): DiscountApplicationConnection! + + """Whether the order has had any edits applied or not.""" + edited: Boolean! + + """The customer's email address.""" + email: String + + """The financial status of the order.""" + financialStatus: OrderFinancialStatus + + """The fulfillment status for the order.""" + fulfillmentStatus: OrderFulfillmentStatus! + + """A globally-unique identifier.""" + id: ID! + + """List of the order’s line items.""" + lineItems( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + ): OrderLineItemConnection! + + """Returns a metafield found by namespace and key.""" + metafield( + """A container for a set of metafields.""" + namespace: String! + + """The identifier for the metafield.""" + key: String! + ): Metafield + + "The metafields associated with the resource matching the supplied list of namespaces and keys.\n" + metafields( + """The list of metafields to retrieve by namespace and key.""" + identifiers: [HasMetafieldsIdentifier!]! + ): [Metafield]! + + "Unique identifier for the order that appears on the order.\nFor example, _#1000_ or _Store1001.\n" + name: String! + + """ + A unique numeric identifier for the order for use by shop owner and customer. + """ + orderNumber: Int! + + """The total cost of duties charged at checkout.""" + originalTotalDuties: MoneyV2 + + """The total price of the order before any applied edits.""" + originalTotalPrice: MoneyV2! + + """The customer's phone number for receiving SMS notifications.""" + phone: String + + "The date and time when the order was imported.\nThis value can be set to dates in the past when importing from other systems.\nIf no value is provided, it will be auto-generated based on current date and time.\n" + processedAt: DateTime! + + """The address to where the order will be shipped.""" + shippingAddress: MailingAddress + + "The discounts that have been allocated onto the shipping line by discount applications.\n" + shippingDiscountAllocations: [DiscountAllocation!]! + + """The unique URL for the order's status page.""" + statusUrl: URL! + + """Price of the order before shipping and taxes.""" + subtotalPrice: MoneyV2 + + """Price of the order before duties, shipping and taxes.""" + subtotalPriceV2: MoneyV2 @deprecated(reason: "Use `subtotalPrice` instead.") + + """List of the order’s successful fulfillments.""" + successfulFulfillments( + """Truncate the array result to this size.""" + first: Int + ): [Fulfillment!] + + """ + The sum of all the prices of all the items in the order, duties, taxes and discounts included (must be positive). + """ + totalPrice: MoneyV2! + + """ + The sum of all the prices of all the items in the order, duties, taxes and discounts included (must be positive). + """ + totalPriceV2: MoneyV2! @deprecated(reason: "Use `totalPrice` instead.") + + """The total amount that has been refunded.""" + totalRefunded: MoneyV2! + + """The total amount that has been refunded.""" + totalRefundedV2: MoneyV2! @deprecated(reason: "Use `totalRefunded` instead.") + + """The total cost of shipping.""" + totalShippingPrice: MoneyV2! + + """The total cost of shipping.""" + totalShippingPriceV2: MoneyV2! @deprecated(reason: "Use `totalShippingPrice` instead.") + + """The total cost of taxes.""" + totalTax: MoneyV2 + + """The total cost of taxes.""" + totalTaxV2: MoneyV2 @deprecated(reason: "Use `totalTax` instead.") +} + +"""Represents the reason for the order's cancellation.""" +enum OrderCancelReason { + """The customer wanted to cancel the order.""" + CUSTOMER + + """Payment was declined.""" + DECLINED + + """The order was fraudulent.""" + FRAUD + + """There was insufficient inventory.""" + INVENTORY + + """The order was canceled for an unlisted reason.""" + OTHER +} + +"An auto-generated type for paginating through multiple Orders.\n" +type OrderConnection { + """A list of edges.""" + edges: [OrderEdge!]! + + """A list of the nodes contained in OrderEdge.""" + nodes: [Order!]! + + """Information to aid in pagination.""" + pageInfo: PageInfo! + + """The total count of Orders.""" + totalCount: UnsignedInt64! +} + +"An auto-generated type which holds one Order and a cursor during pagination.\n" +type OrderEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of OrderEdge.""" + node: Order! +} + +"""Represents the order's current financial status.""" +enum OrderFinancialStatus { + """Displayed as **Pending**.""" + PENDING + + """Displayed as **Authorized**.""" + AUTHORIZED + + """Displayed as **Partially paid**.""" + PARTIALLY_PAID + + """Displayed as **Partially refunded**.""" + PARTIALLY_REFUNDED + + """Displayed as **Voided**.""" + VOIDED + + """Displayed as **Paid**.""" + PAID + + """Displayed as **Refunded**.""" + REFUNDED +} + +""" +Represents the order's aggregated fulfillment status for display purposes. +""" +enum OrderFulfillmentStatus { + """ + Displayed as **Unfulfilled**. None of the items in the order have been fulfilled. + """ + UNFULFILLED + + """ + Displayed as **Partially fulfilled**. Some of the items in the order have been fulfilled. + """ + PARTIALLY_FULFILLED + + """ + Displayed as **Fulfilled**. All of the items in the order have been fulfilled. + """ + FULFILLED + + """ + Displayed as **Restocked**. All of the items in the order have been restocked. Replaced by "UNFULFILLED" status. + """ + RESTOCKED + + """ + Displayed as **Pending fulfillment**. A request for fulfillment of some items awaits a response from the fulfillment service. Replaced by "IN_PROGRESS" status. + """ + PENDING_FULFILLMENT + + """ + Displayed as **Open**. None of the items in the order have been fulfilled. Replaced by "UNFULFILLED" status. + """ + OPEN + + """ + Displayed as **In progress**. Some of the items in the order have been fulfilled, or a request for fulfillment has been sent to the fulfillment service. + """ + IN_PROGRESS + + """ + Displayed as **On hold**. All of the unfulfilled items in this order are on hold. + """ + ON_HOLD + + """ + Displayed as **Scheduled**. All of the unfulfilled items in this order are scheduled for fulfillment at later time. + """ + SCHEDULED +} + +""" +Represents a single line in an order. There is one line item for each distinct product variant. +""" +type OrderLineItem { + """ + The number of entries associated to the line item minus the items that have been removed. + """ + currentQuantity: Int! + + """List of custom attributes associated to the line item.""" + customAttributes: [Attribute!]! + + """ + The discounts that have been allocated onto the order line item by discount applications. + """ + discountAllocations: [DiscountAllocation!]! + + """ + The total price of the line item, including discounts, and displayed in the presentment currency. + """ + discountedTotalPrice: MoneyV2! + + """ + The total price of the line item, not including any discounts. The total price is calculated using the original unit price multiplied by the quantity, and it is displayed in the presentment currency. + """ + originalTotalPrice: MoneyV2! + + """The number of products variants associated to the line item.""" + quantity: Int! + + """The title of the product combined with title of the variant.""" + title: String! + + """The product variant object associated to the line item.""" + variant: ProductVariant +} + +"An auto-generated type for paginating through multiple OrderLineItems.\n" +type OrderLineItemConnection { + """A list of edges.""" + edges: [OrderLineItemEdge!]! + + """A list of the nodes contained in OrderLineItemEdge.""" + nodes: [OrderLineItem!]! + + """Information to aid in pagination.""" + pageInfo: PageInfo! +} + +"An auto-generated type which holds one OrderLineItem and a cursor during pagination.\n" +type OrderLineItemEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of OrderLineItemEdge.""" + node: OrderLineItem! +} + +"""The set of valid sort keys for the Order query.""" +enum OrderSortKeys { + """Sort by the `processed_at` value.""" + PROCESSED_AT + + """Sort by the `total_price` value.""" + TOTAL_PRICE + + """Sort by the `id` value.""" + ID + + "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n" + RELEVANCE +} + +""" +Shopify merchants can create pages to hold static HTML content. Each Page object represents a custom page on the online store. +""" +type Page implements HasMetafields & Node & OnlineStorePublishable { + """The description of the page, complete with HTML formatting.""" + body: HTML! + + """Summary of the page body.""" + bodySummary: String! + + """The timestamp of the page creation.""" + createdAt: DateTime! + + """ + A human-friendly unique string for the page automatically generated from its title. + """ + handle: String! + + """A globally-unique identifier.""" + id: ID! + + """Returns a metafield found by namespace and key.""" + metafield( + """A container for a set of metafields.""" + namespace: String! + + """The identifier for the metafield.""" + key: String! + ): Metafield + + "The metafields associated with the resource matching the supplied list of namespaces and keys.\n" + metafields( + """The list of metafields to retrieve by namespace and key.""" + identifiers: [HasMetafieldsIdentifier!]! + ): [Metafield]! + + """ + The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel. + """ + onlineStoreUrl: URL + + """The page's SEO information.""" + seo: SEO + + """The title of the page.""" + title: String! + + """The timestamp of the latest page update.""" + updatedAt: DateTime! +} + +"An auto-generated type for paginating through multiple Pages.\n" +type PageConnection { + """A list of edges.""" + edges: [PageEdge!]! + + """A list of the nodes contained in PageEdge.""" + nodes: [Page!]! + + """Information to aid in pagination.""" + pageInfo: PageInfo! +} + +"An auto-generated type which holds one Page and a cursor during pagination.\n" +type PageEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of PageEdge.""" + node: Page! +} + +"Returns information about pagination in a connection, in accordance with the\n[Relay specification](https://relay.dev/graphql/connections.htm#sec-undefined.PageInfo).\nFor more information, please read our [GraphQL Pagination Usage Guide](https://shopify.dev/api/usage/pagination-graphql).\n" +type PageInfo { + """The cursor corresponding to the last node in edges.""" + endCursor: String + + """Whether there are more pages to fetch following the current page.""" + hasNextPage: Boolean! + + """Whether there are any pages prior to the current page.""" + hasPreviousPage: Boolean! + + """The cursor corresponding to the first node in edges.""" + startCursor: String +} + +"""The set of valid sort keys for the Page query.""" +enum PageSortKeys { + """Sort by the `title` value.""" + TITLE + + """Sort by the `updated_at` value.""" + UPDATED_AT + + """Sort by the `id` value.""" + ID + + "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n" + RELEVANCE +} + +"""A payment applied to a checkout.""" +type Payment implements Node { + """The amount of the payment.""" + amount: MoneyV2! + + """The amount of the payment.""" + amountV2: MoneyV2! @deprecated(reason: "Use `amount` instead.") + + """The billing address for the payment.""" + billingAddress: MailingAddress + + """The checkout to which the payment belongs.""" + checkout: Checkout! + + """The credit card used for the payment in the case of direct payments.""" + creditCard: CreditCard + + """ + A message describing a processing error during asynchronous processing. + """ + errorMessage: String + + """A globally-unique identifier.""" + id: ID! + + "A client-side generated token to identify a payment and perform idempotent operations.\nFor more information, refer to\n[Idempotent requests](https://shopify.dev/api/usage/idempotent-requests).\n" + idempotencyKey: String + + """ + The URL where the customer needs to be redirected so they can complete the 3D Secure payment flow. + """ + nextActionUrl: URL + + """Whether the payment is still processing asynchronously.""" + ready: Boolean! + + """ + A flag to indicate if the payment is to be done in test mode for gateways that support it. + """ + test: Boolean! + + """ + The actual transaction recorded by Shopify after having processed the payment with the gateway. + """ + transaction: Transaction +} + +"""Settings related to payments.""" +type PaymentSettings { + """List of the card brands which the shop accepts.""" + acceptedCardBrands: [CardBrand!]! + + """The url pointing to the endpoint to vault credit cards.""" + cardVaultUrl: URL! + + """The country where the shop is located.""" + countryCode: CountryCode! + + """The three-letter code for the shop's primary currency.""" + currencyCode: CurrencyCode! + + """ + A list of enabled currencies (ISO 4217 format) that the shop accepts. Merchants can enable currencies from their Shopify Payments settings in the Shopify admin. + """ + enabledPresentmentCurrencies: [CurrencyCode!]! + + """The shop’s Shopify Payments account id.""" + shopifyPaymentsAccountId: String + + """List of the digital wallets which the shop supports.""" + supportedDigitalWallets: [DigitalWallet!]! +} + +"""The valid values for the types of payment token.""" +enum PaymentTokenType { + """Apple Pay token type.""" + APPLE_PAY + + """Vault payment token type.""" + VAULT + + """Shopify Pay token type.""" + SHOPIFY_PAY + + """Google Pay token type.""" + GOOGLE_PAY + + """Stripe token type.""" + STRIPE_VAULT_TOKEN +} + +""" +A filter used to view a subset of products in a collection matching a specific price range. +""" +input PriceRangeFilter { + """The minimum price in the range. Defaults to zero.""" + min: Float = 0 + + """The maximum price in the range. Empty indicates no max price.""" + max: Float +} + +"""The value of the percentage pricing object.""" +type PricingPercentageValue { + """The percentage value of the object.""" + percentage: Float! +} + +"""The price value (fixed or percentage) for a discount application.""" +union PricingValue = MoneyV2 | PricingPercentageValue + +""" +A product represents an individual item for sale in a Shopify store. Products are often physical, but they don't have to be. +For example, a digital download (such as a movie, music or ebook file) also qualifies as a product, as do services (such as equipment rental, work for hire, customization of another product or an extended warranty). +""" +type Product implements HasMetafields & Node & OnlineStorePublishable { + """Indicates if at least one product variant is available for sale.""" + availableForSale: Boolean! + + """List of collections a product belongs to.""" + collections( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + ): CollectionConnection! + + """The compare at price of the product across all variants.""" + compareAtPriceRange: ProductPriceRange! + + """The date and time when the product was created.""" + createdAt: DateTime! + + """ + Stripped description of the product, single line with HTML tags removed. + """ + description( + """Truncates string after the given length.""" + truncateAt: Int + ): String! + + """The description of the product, complete with HTML formatting.""" + descriptionHtml: HTML! + + "The featured image for the product.\n\nThis field is functionally equivalent to `images(first: 1)`.\n" + featuredImage: Image + + "A human-friendly unique string for the Product automatically generated from its title.\nThey are used by the Liquid templating language to refer to objects.\n" + handle: String! + + """A globally-unique identifier.""" + id: ID! + + """List of images associated with the product.""" + images( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + + """Sort the underlying list by the given key.""" + sortKey: ProductImageSortKeys = POSITION + ): ImageConnection! + + """Whether the product is a gift card.""" + isGiftCard: Boolean! + + """The media associated with the product.""" + media( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + + """Sort the underlying list by the given key.""" + sortKey: ProductMediaSortKeys = POSITION + ): MediaConnection! + + """Returns a metafield found by namespace and key.""" + metafield( + """A container for a set of metafields.""" + namespace: String! + + """The identifier for the metafield.""" + key: String! + ): Metafield + + "The metafields associated with the resource matching the supplied list of namespaces and keys.\n" + metafields( + """The list of metafields to retrieve by namespace and key.""" + identifiers: [HasMetafieldsIdentifier!]! + ): [Metafield]! + + """ + The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel. + """ + onlineStoreUrl: URL + + """List of product options.""" + options( + """Truncate the array result to this size.""" + first: Int + ): [ProductOption!]! + + """The price range.""" + priceRange: ProductPriceRange! + + """ + A categorization that a product can be tagged with, commonly used for filtering and searching. + """ + productType: String! + + """The date and time when the product was published to the channel.""" + publishedAt: DateTime! + + """Whether the product can only be purchased with a selling plan.""" + requiresSellingPlan: Boolean! + + """ + A list of a product's available selling plan groups. A selling plan group represents a selling method. For example, 'Subscribe and save' is a selling method where customers pay for goods or services per delivery. A selling plan group contains individual selling plans. + """ + sellingPlanGroups( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + ): SellingPlanGroupConnection! + + """The product's SEO information.""" + seo: SEO! + + "A comma separated list of tags that have been added to the product.\nAdditional access scope required for private apps: unauthenticated_read_product_tags.\n" + tags: [String!]! + + """The product’s title.""" + title: String! + + """The total quantity of inventory in stock for this Product.""" + totalInventory: Int + + "The date and time when the product was last modified.\nA product's `updatedAt` value can change for different reasons. For example, if an order\nis placed for a product that has inventory tracking set up, then the inventory adjustment\nis counted as an update.\n" + updatedAt: DateTime! + + "Find a product’s variant based on its selected options.\nThis is useful for converting a user’s selection of product options into a single matching variant.\nIf there is not a variant for the selected options, `null` will be returned.\n" + variantBySelectedOptions( + """The input fields used for a selected option.""" + selectedOptions: [SelectedOptionInput!]! + ): ProductVariant + + """List of the product’s variants.""" + variants( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + + """Sort the underlying list by the given key.""" + sortKey: ProductVariantSortKeys = POSITION + ): ProductVariantConnection! + + """The product’s vendor name.""" + vendor: String! +} + +"""The set of valid sort keys for the ProductCollection query.""" +enum ProductCollectionSortKeys { + """Sort by the `title` value.""" + TITLE + + """Sort by the `price` value.""" + PRICE + + """Sort by the `best-selling` value.""" + BEST_SELLING + + """Sort by the `created` value.""" + CREATED + + """Sort by the `id` value.""" + ID + + """Sort by the `manual` value.""" + MANUAL + + """Sort by the `collection-default` value.""" + COLLECTION_DEFAULT + + "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n" + RELEVANCE +} + +"An auto-generated type for paginating through multiple Products.\n" +type ProductConnection { + """A list of edges.""" + edges: [ProductEdge!]! + + """A list of available filters.""" + filters: [Filter!]! + + """A list of the nodes contained in ProductEdge.""" + nodes: [Product!]! + + """Information to aid in pagination.""" + pageInfo: PageInfo! +} + +"An auto-generated type which holds one Product and a cursor during pagination.\n" +type ProductEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of ProductEdge.""" + node: Product! +} + +"""A filter used to view a subset of products in a collection.""" +input ProductFilter { + """Filter on if the product is available for sale.""" + available: Boolean + + """A variant option to filter on.""" + variantOption: VariantOptionFilter + + """The product type to filter on.""" + productType: String + + """The product vendor to filter on.""" + productVendor: String + + """A range of prices to filter with-in.""" + price: PriceRangeFilter + + """A product metafield to filter on.""" + productMetafield: MetafieldFilter + + """A variant metafield to filter on.""" + variantMetafield: MetafieldFilter + + """A product tag to filter on.""" + tag: String +} + +"""The set of valid sort keys for the ProductImage query.""" +enum ProductImageSortKeys { + """Sort by the `created_at` value.""" + CREATED_AT + + """Sort by the `position` value.""" + POSITION + + """Sort by the `id` value.""" + ID + + "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n" + RELEVANCE +} + +"""The set of valid sort keys for the ProductMedia query.""" +enum ProductMediaSortKeys { + """Sort by the `position` value.""" + POSITION + + """Sort by the `id` value.""" + ID + + "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n" + RELEVANCE +} + +"Product property names like \"Size\", \"Color\", and \"Material\" that the customers can select.\nVariants are selected based on permutations of these options.\n255 characters limit each.\n" +type ProductOption implements Node { + """A globally-unique identifier.""" + id: ID! + + """The product option’s name.""" + name: String! + + """The corresponding value to the product option name.""" + values: [String!]! +} + +"""The price range of the product.""" +type ProductPriceRange { + """The highest variant's price.""" + maxVariantPrice: MoneyV2! + + """The lowest variant's price.""" + minVariantPrice: MoneyV2! +} + +"""The set of valid sort keys for the Product query.""" +enum ProductSortKeys { + """Sort by the `title` value.""" + TITLE + + """Sort by the `product_type` value.""" + PRODUCT_TYPE + + """Sort by the `vendor` value.""" + VENDOR + + """Sort by the `updated_at` value.""" + UPDATED_AT + + """Sort by the `created_at` value.""" + CREATED_AT + + """Sort by the `best_selling` value.""" + BEST_SELLING + + """Sort by the `price` value.""" + PRICE + + """Sort by the `id` value.""" + ID + + "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n" + RELEVANCE +} + +""" +A product variant represents a different version of a product, such as differing sizes or differing colors. +""" +type ProductVariant implements HasMetafields & Node { + """Indicates if the product variant is available for sale.""" + availableForSale: Boolean! + + """ + The barcode (for example, ISBN, UPC, or GTIN) associated with the variant. + """ + barcode: String + + """ + The compare at price of the variant. This can be used to mark a variant as on sale, when `compareAtPrice` is higher than `price`. + """ + compareAtPrice: MoneyV2 + + """ + The compare at price of the variant. This can be used to mark a variant as on sale, when `compareAtPriceV2` is higher than `priceV2`. + """ + compareAtPriceV2: MoneyV2 @deprecated(reason: "Use `compareAtPrice` instead.") + + """ + Whether a product is out of stock but still available for purchase (used for backorders). + """ + currentlyNotInStock: Boolean! + + """A globally-unique identifier.""" + id: ID! + + "Image associated with the product variant. This field falls back to the product image if no image is available.\n" + image: Image + + """Returns a metafield found by namespace and key.""" + metafield( + """A container for a set of metafields.""" + namespace: String! + + """The identifier for the metafield.""" + key: String! + ): Metafield + + "The metafields associated with the resource matching the supplied list of namespaces and keys.\n" + metafields( + """The list of metafields to retrieve by namespace and key.""" + identifiers: [HasMetafieldsIdentifier!]! + ): [Metafield]! + + """The product variant’s price.""" + price: MoneyV2! + + """The product variant’s price.""" + priceV2: MoneyV2! @deprecated(reason: "Use `price` instead.") + + """The product object that the product variant belongs to.""" + product: Product! + + """The total sellable quantity of the variant for online sales channels.""" + quantityAvailable: Int + + """ + Whether a customer needs to provide a shipping address when placing an order for the product variant. + """ + requiresShipping: Boolean! + + """List of product options applied to the variant.""" + selectedOptions: [SelectedOption!]! + + """ + Represents an association between a variant and a selling plan. Selling plan allocations describe which selling plans are available for each variant, and what their impact is on pricing. + """ + sellingPlanAllocations( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + ): SellingPlanAllocationConnection! + + """The SKU (stock keeping unit) associated with the variant.""" + sku: String + + """The in-store pickup availability of this variant by location.""" + storeAvailability( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + + """Used to sort results based on proximity to the provided location.""" + near: GeoCoordinateInput + ): StoreAvailabilityConnection! + + """The product variant’s title.""" + title: String! + + """ + The unit price value for the variant based on the variant's measurement. + """ + unitPrice: MoneyV2 + + """The unit price measurement for the variant.""" + unitPriceMeasurement: UnitPriceMeasurement + + """ + The weight of the product variant in the unit system specified with `weight_unit`. + """ + weight: Float + + """Unit of measurement for weight.""" + weightUnit: WeightUnit! +} + +"An auto-generated type for paginating through multiple ProductVariants.\n" +type ProductVariantConnection { + """A list of edges.""" + edges: [ProductVariantEdge!]! + + """A list of the nodes contained in ProductVariantEdge.""" + nodes: [ProductVariant!]! + + """Information to aid in pagination.""" + pageInfo: PageInfo! +} + +"An auto-generated type which holds one ProductVariant and a cursor during pagination.\n" +type ProductVariantEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of ProductVariantEdge.""" + node: ProductVariant! +} + +"""The set of valid sort keys for the ProductVariant query.""" +enum ProductVariantSortKeys { + """Sort by the `title` value.""" + TITLE + + """Sort by the `sku` value.""" + SKU + + """Sort by the `position` value.""" + POSITION + + """Sort by the `id` value.""" + ID + + "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n" + RELEVANCE +} + +""" +The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. +""" +type QueryRoot { + """List of the shop's articles.""" + articles( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + + """Sort the underlying list by the given key.""" + sortKey: ArticleSortKeys = ID + + "Supported filter parameters:\n - `author`\n - `blog_title`\n - `created_at`\n - `tag`\n - `tag_not`\n - `updated_at`\n\nSee the detailed [search syntax](https://shopify.dev/api/usage/search-syntax)\nfor more information about using filters.\n" + query: String + ): ArticleConnection! + + """Fetch a specific `Blog` by one of its unique attributes.""" + blog( + """The ID of the `Blog`.""" + id: ID + + """The handle of the `Blog`.""" + handle: String + ): Blog + + """Find a blog by its handle.""" + blogByHandle( + """The handle of the blog.""" + handle: String! + ): Blog @deprecated(reason: "Use `blog` instead.") + + """List of the shop's blogs.""" + blogs( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + + """Sort the underlying list by the given key.""" + sortKey: BlogSortKeys = ID + + "Supported filter parameters:\n - `created_at`\n - `handle`\n - `title`\n - `updated_at`\n\nSee the detailed [search syntax](https://shopify.dev/api/usage/search-syntax)\nfor more information about using filters.\n" + query: String + ): BlogConnection! + + "Retrieve a cart by its ID. For more information, refer to\n[Manage a cart with the Storefront API](https://shopify.dev/custom-storefronts/cart/manage).\n" + cart( + """The ID of the cart.""" + id: ID! + ): Cart + + """Fetch a specific `Collection` by one of its unique attributes.""" + collection( + """The ID of the `Collection`.""" + id: ID + + """The handle of the `Collection`.""" + handle: String + ): Collection + + """Find a collection by its handle.""" + collectionByHandle( + """The handle of the collection.""" + handle: String! + ): Collection @deprecated(reason: "Use `collection` instead.") + + """List of the shop’s collections.""" + collections( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + + """Sort the underlying list by the given key.""" + sortKey: CollectionSortKeys = ID + + "Supported filter parameters:\n - `collection_type`\n - `title`\n - `updated_at`\n\nSee the detailed [search syntax](https://shopify.dev/api/usage/search-syntax)\nfor more information about using filters.\n" + query: String + ): CollectionConnection! + + """Find a customer by its access token.""" + customer( + """The customer access token.""" + customerAccessToken: String! + ): Customer + + """Returns the localized experiences configured for the shop.""" + localization: Localization! + + "List of the shop's locations that support in-store pickup.\n\nWhen sorting by distance, you must specify a location via the `near` argument.\n" + locations( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + + """Sort the underlying list by the given key.""" + sortKey: LocationSortKeys = ID + + """Used to sort results based on proximity to the provided location.""" + near: GeoCoordinateInput + ): LocationConnection! + + """A storefront menu.""" + menu( + """Returns a storefront menu by the specified handle.""" + handle: String! + ): Menu + + """Fetch a specific Metaobject by one of its unique identifiers.""" + metaobject( + """The ID of the metaobject.""" + id: ID + + """The handle and type of the metaobject.""" + handle: MetaobjectHandleInput + ): Metaobject + + """All active metaobjects for the shop.""" + metaobjects( + """The type of metaobject to retrieve.""" + type: String! + + """The key of a field to sort with. Supports "id" and "updated_at".""" + sortKey: String + + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + ): MetaobjectConnection! + + """Returns a specific node by ID.""" + node( + """The ID of the Node to return.""" + id: ID! + ): Node + + """Returns the list of nodes with the given IDs.""" + nodes( + """The IDs of the Nodes to return.""" + ids: [ID!]! + ): [Node]! + + """Fetch a specific `Page` by one of its unique attributes.""" + page( + """The ID of the `Page`.""" + id: ID + + """The handle of the `Page`.""" + handle: String + ): Page + + """Find a page by its handle.""" + pageByHandle( + """The handle of the page.""" + handle: String! + ): Page @deprecated(reason: "Use `page` instead.") + + """List of the shop's pages.""" + pages( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + + """Sort the underlying list by the given key.""" + sortKey: PageSortKeys = ID + + "Supported filter parameters:\n - `created_at`\n - `handle`\n - `title`\n - `updated_at`\n\nSee the detailed [search syntax](https://shopify.dev/api/usage/search-syntax)\nfor more information about using filters.\n" + query: String + ): PageConnection! + + """Fetch a specific `Product` by one of its unique attributes.""" + product( + """The ID of the `Product`.""" + id: ID + + """The handle of the `Product`.""" + handle: String + ): Product + + """Find a product by its handle.""" + productByHandle( + """ + A unique string that identifies the product. Handles are automatically generated based on the product's title, and are always lowercase. Whitespace and special characters are replaced with a hyphen: `-`. If there are multiple consecutive whitespace or special characters, then they're replaced with a single hyphen. Whitespace or special characters at the beginning are removed. If a duplicate product title is used, then the handle is auto-incremented by one. For example, if you had two products called `Potion`, then their handles would be `potion` and `potion-1`. After a product has been created, changing the product title doesn't update the handle. + """ + handle: String! + ): Product @deprecated(reason: "Use `product` instead.") + + "Find recommended products related to a given `product_id`.\nTo learn more about how recommendations are generated, see\n[*Showing product recommendations on product pages*](https://help.shopify.com/themes/development/recommended-products).\n" + productRecommendations( + """The id of the product.""" + productId: ID! + ): [Product!] + + "Tags added to products.\nAdditional access scope required: unauthenticated_read_product_tags.\n" + productTags( + """Returns up to the first `n` elements from the list.""" + first: Int! + ): StringConnection! + + """ + List of product types for the shop's products that are published to your app. + """ + productTypes( + """Returns up to the first `n` elements from the list.""" + first: Int! + ): StringConnection! + + """List of the shop’s products.""" + products( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + + """Sort the underlying list by the given key.""" + sortKey: ProductSortKeys = ID + + "Supported filter parameters:\n - `available_for_sale`\n - `created_at`\n - `product_type`\n - `tag`\n - `tag_not`\n - `title`\n - `updated_at`\n - `variants.price`\n - `vendor`\n\nSee the detailed [search syntax](https://shopify.dev/api/usage/search-syntax)\nfor more information about using filters.\n" + query: String + ): ProductConnection! + + """ + The list of public Storefront API versions, including supported, release candidate and unstable versions. + """ + publicApiVersions: [ApiVersion!]! + + """The shop associated with the storefront access token.""" + shop: Shop! + + """A list of redirects for a shop.""" + urlRedirects( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + + "Supported filter parameters:\n - `created_at`\n - `path`\n - `target`\n\nSee the detailed [search syntax](https://shopify.dev/api/usage/search-syntax)\nfor more information about using filters.\n" + query: String + ): UrlRedirectConnection! +} + +"""SEO information.""" +type SEO { + """The meta description.""" + description: String + + """The SEO title.""" + title: String +} + +"Script discount applications capture the intentions of a discount that\nwas created by a Shopify Script.\n" +type ScriptDiscountApplication implements DiscountApplication { + """ + The method by which the discount's value is allocated to its entitled items. + """ + allocationMethod: DiscountApplicationAllocationMethod! + + """Which lines of targetType that the discount is allocated over.""" + targetSelection: DiscountApplicationTargetSelection! + + """The type of line that the discount is applicable towards.""" + targetType: DiscountApplicationTargetType! + + """The title of the application as defined by the Script.""" + title: String! + + """The value of the discount application.""" + value: PricingValue! +} + +"Properties used by customers to select a product variant.\nProducts can have multiple options, like different sizes or colors.\n" +type SelectedOption { + """The product option’s name.""" + name: String! + + """The product option’s value.""" + value: String! +} + +"""Specifies the input fields required for a selected option.""" +input SelectedOptionInput { + """The product option’s name.""" + name: String! + + """The product option’s value.""" + value: String! +} + +"""Represents how products and variants can be sold and purchased.""" +type SellingPlan { + """The initial payment due for the purchase.""" + checkoutCharge: SellingPlanCheckoutCharge! + + """The description of the selling plan.""" + description: String + + """A globally-unique identifier.""" + id: ID! + + """ + The name of the selling plan. For example, '6 weeks of prepaid granola, delivered weekly'. + """ + name: String! + + """ + The selling plan options available in the drop-down list in the storefront. For example, 'Delivery every week' or 'Delivery every 2 weeks' specifies the delivery frequency options for the product. Individual selling plans contribute their options to the associated selling plan group. For example, a selling plan group might have an option called `option1: Delivery every`. One selling plan in that group could contribute `option1: 2 weeks` with the pricing for that option, and another selling plan could contribute `option1: 4 weeks`, with different pricing. + """ + options: [SellingPlanOption!]! + + """ + The price adjustments that a selling plan makes when a variant is purchased with a selling plan. + """ + priceAdjustments: [SellingPlanPriceAdjustment!]! + + """ + Whether purchasing the selling plan will result in multiple deliveries. + """ + recurringDeliveries: Boolean! +} + +""" +Represents an association between a variant and a selling plan. Selling plan allocations describe the options offered for each variant, and the price of the variant when purchased with a selling plan. +""" +type SellingPlanAllocation { + """The checkout charge amount due for the purchase.""" + checkoutChargeAmount: MoneyV2! + + """ + A list of price adjustments, with a maximum of two. When there are two, the first price adjustment goes into effect at the time of purchase, while the second one starts after a certain number of orders. A price adjustment represents how a selling plan affects pricing when a variant is purchased with a selling plan. Prices display in the customer's currency if the shop is configured for it. + """ + priceAdjustments: [SellingPlanAllocationPriceAdjustment!]! + + """The remaining balance charge amount due for the purchase.""" + remainingBalanceChargeAmount: MoneyV2! + + """ + A representation of how products and variants can be sold and purchased. For example, an individual selling plan could be '6 weeks of prepaid granola, delivered weekly'. + """ + sellingPlan: SellingPlan! +} + +"An auto-generated type for paginating through multiple SellingPlanAllocations.\n" +type SellingPlanAllocationConnection { + """A list of edges.""" + edges: [SellingPlanAllocationEdge!]! + + """A list of the nodes contained in SellingPlanAllocationEdge.""" + nodes: [SellingPlanAllocation!]! + + """Information to aid in pagination.""" + pageInfo: PageInfo! +} + +"An auto-generated type which holds one SellingPlanAllocation and a cursor during pagination.\n" +type SellingPlanAllocationEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of SellingPlanAllocationEdge.""" + node: SellingPlanAllocation! +} + +""" +The resulting prices for variants when they're purchased with a specific selling plan. +""" +type SellingPlanAllocationPriceAdjustment { + """ + The price of the variant when it's purchased without a selling plan for the same number of deliveries. For example, if a customer purchases 6 deliveries of $10.00 granola separately, then the price is 6 x $10.00 = $60.00. + """ + compareAtPrice: MoneyV2! + + """ + The effective price for a single delivery. For example, for a prepaid subscription plan that includes 6 deliveries at the price of $48.00, the per delivery price is $8.00. + """ + perDeliveryPrice: MoneyV2! + + """ + The price of the variant when it's purchased with a selling plan For example, for a prepaid subscription plan that includes 6 deliveries of $10.00 granola, where the customer gets 20% off, the price is 6 x $10.00 x 0.80 = $48.00. + """ + price: MoneyV2! + + """ + The resulting price per unit for the variant associated with the selling plan. If the variant isn't sold by quantity or measurement, then this field returns `null`. + """ + unitPrice: MoneyV2 +} + +"""The initial payment due for the purchase.""" +type SellingPlanCheckoutCharge { + """The charge type for the checkout charge.""" + type: SellingPlanCheckoutChargeType! + + """The charge value for the checkout charge.""" + value: SellingPlanCheckoutChargeValue! +} + +"""The percentage value of the price used for checkout charge.""" +type SellingPlanCheckoutChargePercentageValue { + """The percentage value of the price used for checkout charge.""" + percentage: Float! +} + +"""The checkout charge when the full amount isn't charged at checkout.""" +enum SellingPlanCheckoutChargeType { + """The checkout charge is a percentage of the product or variant price.""" + PERCENTAGE + + """The checkout charge is a fixed price amount.""" + PRICE +} + +"""The portion of the price to be charged at checkout.""" +union SellingPlanCheckoutChargeValue = MoneyV2 | SellingPlanCheckoutChargePercentageValue + +"An auto-generated type for paginating through multiple SellingPlans.\n" +type SellingPlanConnection { + """A list of edges.""" + edges: [SellingPlanEdge!]! + + """A list of the nodes contained in SellingPlanEdge.""" + nodes: [SellingPlan!]! + + """Information to aid in pagination.""" + pageInfo: PageInfo! +} + +"An auto-generated type which holds one SellingPlan and a cursor during pagination.\n" +type SellingPlanEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of SellingPlanEdge.""" + node: SellingPlan! +} + +""" +A fixed amount that's deducted from the original variant price. For example, $10.00 off. +""" +type SellingPlanFixedAmountPriceAdjustment { + """The money value of the price adjustment.""" + adjustmentAmount: MoneyV2! +} + +""" +A fixed price adjustment for a variant that's purchased with a selling plan. +""" +type SellingPlanFixedPriceAdjustment { + """A new price of the variant when it's purchased with the selling plan.""" + price: MoneyV2! +} + +""" +Represents a selling method. For example, 'Subscribe and save' is a selling method where customers pay for goods or services per delivery. A selling plan group contains individual selling plans. +""" +type SellingPlanGroup { + """ + A display friendly name for the app that created the selling plan group. + """ + appName: String + + """The name of the selling plan group.""" + name: String! + + """ + Represents the selling plan options available in the drop-down list in the storefront. For example, 'Delivery every week' or 'Delivery every 2 weeks' specifies the delivery frequency options for the product. + """ + options: [SellingPlanGroupOption!]! + + """ + A list of selling plans in a selling plan group. A selling plan is a representation of how products and variants can be sold and purchased. For example, an individual selling plan could be '6 weeks of prepaid granola, delivered weekly'. + """ + sellingPlans( + """Returns up to the first `n` elements from the list.""" + first: Int + + """Returns the elements that come after the specified cursor.""" + after: String + + """Returns up to the last `n` elements from the list.""" + last: Int + + """Returns the elements that come before the specified cursor.""" + before: String + + """Reverse the order of the underlying list.""" + reverse: Boolean = false + ): SellingPlanConnection! +} + +"An auto-generated type for paginating through multiple SellingPlanGroups.\n" +type SellingPlanGroupConnection { + """A list of edges.""" + edges: [SellingPlanGroupEdge!]! + + """A list of the nodes contained in SellingPlanGroupEdge.""" + nodes: [SellingPlanGroup!]! + + """Information to aid in pagination.""" + pageInfo: PageInfo! +} + +"An auto-generated type which holds one SellingPlanGroup and a cursor during pagination.\n" +type SellingPlanGroupEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of SellingPlanGroupEdge.""" + node: SellingPlanGroup! +} + +""" +Represents an option on a selling plan group that's available in the drop-down list in the storefront. + +Individual selling plans contribute their options to the associated selling plan group. For example, a selling plan group might have an option called `option1: Delivery every`. One selling plan in that group could contribute `option1: 2 weeks` with the pricing for that option, and another selling plan could contribute `option1: 4 weeks`, with different pricing. +""" +type SellingPlanGroupOption { + """The name of the option. For example, 'Delivery every'.""" + name: String! + + """ + The values for the options specified by the selling plans in the selling plan group. For example, '1 week', '2 weeks', '3 weeks'. + """ + values: [String!]! +} + +"""An option provided by a Selling Plan.""" +type SellingPlanOption { + """The name of the option (ie "Delivery every").""" + name: String + + """The value of the option (ie "Month").""" + value: String +} + +""" +A percentage amount that's deducted from the original variant price. For example, 10% off. +""" +type SellingPlanPercentagePriceAdjustment { + """The percentage value of the price adjustment.""" + adjustmentPercentage: Int! +} + +""" +Represents by how much the price of a variant associated with a selling plan is adjusted. Each variant can have up to two price adjustments. If a variant has multiple price adjustments, then the first price adjustment applies when the variant is initially purchased. The second price adjustment applies after a certain number of orders (specified by the `orderCount` field) are made. If a selling plan doesn't have any price adjustments, then the unadjusted price of the variant is the effective price. +""" +type SellingPlanPriceAdjustment { + """ + The type of price adjustment. An adjustment value can have one of three types: percentage, amount off, or a new price. + """ + adjustmentValue: SellingPlanPriceAdjustmentValue! + + """ + The number of orders that the price adjustment applies to. If the price adjustment always applies, then this field is `null`. + """ + orderCount: Int +} + +""" +Represents by how much the price of a variant associated with a selling plan is adjusted. Each variant can have up to two price adjustments. +""" +union SellingPlanPriceAdjustmentValue = SellingPlanFixedAmountPriceAdjustment | SellingPlanFixedPriceAdjustment | SellingPlanPercentagePriceAdjustment + +"""A shipping rate to be applied to a checkout.""" +type ShippingRate { + """Human-readable unique identifier for this shipping rate.""" + handle: String! + + """Price of this shipping rate.""" + price: MoneyV2! + + """Price of this shipping rate.""" + priceV2: MoneyV2! @deprecated(reason: "Use `price` instead.") + + """Title of this shipping rate.""" + title: String! +} + +""" +Shop represents a collection of the general settings and information about the shop. +""" +type Shop implements HasMetafields & Node { + """The shop's branding configuration.""" + brand: Brand + + """A description of the shop.""" + description: String + + """A globally-unique identifier.""" + id: ID! + + """Returns a metafield found by namespace and key.""" + metafield( + """A container for a set of metafields.""" + namespace: String! + + """The identifier for the metafield.""" + key: String! + ): Metafield + + "The metafields associated with the resource matching the supplied list of namespaces and keys.\n" + metafields( + """The list of metafields to retrieve by namespace and key.""" + identifiers: [HasMetafieldsIdentifier!]! + ): [Metafield]! + + """ + A string representing the way currency is formatted when the currency isn’t specified. + """ + moneyFormat: String! + + """The shop’s name.""" + name: String! + + """Settings related to payments.""" + paymentSettings: PaymentSettings! + + """The primary domain of the shop’s Online Store.""" + primaryDomain: Domain! + + """The shop’s privacy policy.""" + privacyPolicy: ShopPolicy + + """The shop’s refund policy.""" + refundPolicy: ShopPolicy + + """The shop’s shipping policy.""" + shippingPolicy: ShopPolicy + + """Countries that the shop ships to.""" + shipsToCountries: [CountryCode!]! + + """The shop’s subscription policy.""" + subscriptionPolicy: ShopPolicyWithDefault + + """The shop’s terms of service.""" + termsOfService: ShopPolicy +} + +""" +Policy that a merchant has configured for their store, such as their refund or privacy policy. +""" +type ShopPolicy implements Node { + """Policy text, maximum size of 64kb.""" + body: String! + + """Policy’s handle.""" + handle: String! + + """A globally-unique identifier.""" + id: ID! + + """Policy’s title.""" + title: String! + + """Public URL to the policy.""" + url: URL! +} + +"A policy for the store that comes with a default value, such as a subscription policy.\nIf the merchant hasn't configured a policy for their store, then the policy will return the default value.\nOtherwise, the policy will return the merchant-configured value.\n" +type ShopPolicyWithDefault { + """The text of the policy. Maximum size: 64KB.""" + body: String! + + """The handle of the policy.""" + handle: String! + + """ + The unique identifier of the policy. A default policy doesn't have an ID. + """ + id: ID + + """The title of the policy.""" + title: String! + + """Public URL to the policy.""" + url: URL! +} + +"The availability of a product variant at a particular location.\nLocal pick-up must be enabled in the store's shipping settings, otherwise this will return an empty result.\n" +type StoreAvailability { + """Whether the product variant is in-stock at this location.""" + available: Boolean! + + """The location where this product variant is stocked at.""" + location: Location! + + """ + Returns the estimated amount of time it takes for pickup to be ready (Example: Usually ready in 24 hours). + """ + pickUpTime: String! +} + +"An auto-generated type for paginating through multiple StoreAvailabilities.\n" +type StoreAvailabilityConnection { + """A list of edges.""" + edges: [StoreAvailabilityEdge!]! + + """A list of the nodes contained in StoreAvailabilityEdge.""" + nodes: [StoreAvailability!]! + + """Information to aid in pagination.""" + pageInfo: PageInfo! +} + +"An auto-generated type which holds one StoreAvailability and a cursor during pagination.\n" +type StoreAvailabilityEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of StoreAvailabilityEdge.""" + node: StoreAvailability! +} + +"An auto-generated type for paginating through a list of Strings.\n" +type StringConnection { + """A list of edges.""" + edges: [StringEdge!]! + + """Information to aid in pagination.""" + pageInfo: PageInfo! +} + +"An auto-generated type which holds one String and a cursor during pagination.\n" +type StringEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of StringEdge.""" + node: String! +} + +"Specifies the fields required to complete a checkout with\na tokenized payment.\n" +input TokenizedPaymentInputV3 { + """The amount and currency of the payment.""" + paymentAmount: MoneyInput! + + """ + A unique client generated key used to avoid duplicate charges. When a duplicate payment is found, the original is returned instead of creating a new one. For more information, refer to [Idempotent requests](https://shopify.dev/api/usage/idempotent-requests). + """ + idempotencyKey: String! + + """The billing address for the payment.""" + billingAddress: MailingAddressInput! + + """ + A simple string or JSON containing the required payment data for the tokenized payment. + """ + paymentData: String! + + """ + Whether to execute the payment in test mode, if possible. Test mode is not supported in production stores. Defaults to `false`. + """ + test: Boolean = false + + """Public Hash Key used for AndroidPay payments only.""" + identifier: String + + """The type of payment token.""" + type: PaymentTokenType! +} + +"""An object representing exchange of money for a product or service.""" +type Transaction { + """The amount of money that the transaction was for.""" + amount: MoneyV2! + + """The amount of money that the transaction was for.""" + amountV2: MoneyV2! @deprecated(reason: "Use `amount` instead.") + + """The kind of the transaction.""" + kind: TransactionKind! + + """The status of the transaction.""" + status: TransactionStatus! @deprecated(reason: "Use `statusV2` instead.") + + """The status of the transaction.""" + statusV2: TransactionStatus + + """Whether the transaction was done in test mode or not.""" + test: Boolean! +} + +"""The different kinds of order transactions.""" +enum TransactionKind { + """An authorization and capture performed together in a single step.""" + SALE + + """ + A transfer of the money that was reserved during the authorization stage. + """ + CAPTURE + + "An amount reserved against the cardholder's funding source.\nMoney does not change hands until the authorization is captured.\n" + AUTHORIZATION + + """An authorization for a payment taken with an EMV credit card reader.""" + EMV_AUTHORIZATION + + """Money returned to the customer when they have paid too much.""" + CHANGE +} + +"""Transaction statuses describe the status of a transaction.""" +enum TransactionStatus { + """The transaction is pending.""" + PENDING + + """The transaction succeeded.""" + SUCCESS + + """The transaction failed.""" + FAILURE + + """There was an error while processing the transaction.""" + ERROR +} + +"Represents an [RFC 3986](https://datatracker.ietf.org/doc/html/rfc3986) and\n[RFC 3987](https://datatracker.ietf.org/doc/html/rfc3987)-compliant URI string.\n\nFor example, `\"https://johns-apparel.myshopify.com\"` is a valid URL. It includes a scheme (`https`) and a host\n(`johns-apparel.myshopify.com`).\n" +scalar URL + +"The measurement used to calculate a unit price for a product variant (e.g. $9.99 / 100ml).\n" +type UnitPriceMeasurement { + """The type of unit of measurement for the unit price measurement.""" + measuredType: UnitPriceMeasurementMeasuredType + + """The quantity unit for the unit price measurement.""" + quantityUnit: UnitPriceMeasurementMeasuredUnit + + """The quantity value for the unit price measurement.""" + quantityValue: Float! + + """The reference unit for the unit price measurement.""" + referenceUnit: UnitPriceMeasurementMeasuredUnit + + """The reference value for the unit price measurement.""" + referenceValue: Int! +} + +"""The accepted types of unit of measurement.""" +enum UnitPriceMeasurementMeasuredType { + """Unit of measurements representing volumes.""" + VOLUME + + """Unit of measurements representing weights.""" + WEIGHT + + """Unit of measurements representing lengths.""" + LENGTH + + """Unit of measurements representing areas.""" + AREA +} + +"""The valid units of measurement for a unit price measurement.""" +enum UnitPriceMeasurementMeasuredUnit { + """1000 milliliters equals 1 liter.""" + ML + + """100 centiliters equals 1 liter.""" + CL + + """Metric system unit of volume.""" + L + + """1 cubic meter equals 1000 liters.""" + M3 + + """1000 milligrams equals 1 gram.""" + MG + + """Metric system unit of weight.""" + G + + """1 kilogram equals 1000 grams.""" + KG + + """1000 millimeters equals 1 meter.""" + MM + + """100 centimeters equals 1 meter.""" + CM + + """Metric system unit of length.""" + M + + """Metric system unit of area.""" + M2 +} + +"""Systems of weights and measures.""" +enum UnitSystem { + """Imperial system of weights and measures.""" + IMPERIAL_SYSTEM + + """Metric system of weights and measures.""" + METRIC_SYSTEM +} + +"An unsigned 64-bit integer. Represents whole numeric values between 0 and 2^64 - 1 encoded as a string of base-10 digits.\n\nExample value: `\"50\"`.\n" +scalar UnsignedInt64 + +"""A redirect on the online store.""" +type UrlRedirect implements Node { + """The ID of the URL redirect.""" + id: ID! + + """ + The old path to be redirected from. When the user visits this path, they'll be redirected to the target location. + """ + path: String! + + """The target location where the user will be redirected to.""" + target: String! +} + +"An auto-generated type for paginating through multiple UrlRedirects.\n" +type UrlRedirectConnection { + """A list of edges.""" + edges: [UrlRedirectEdge!]! + + """A list of the nodes contained in UrlRedirectEdge.""" + nodes: [UrlRedirect!]! + + """Information to aid in pagination.""" + pageInfo: PageInfo! +} + +"An auto-generated type which holds one UrlRedirect and a cursor during pagination.\n" +type UrlRedirectEdge { + """A cursor for use in pagination.""" + cursor: String! + + """The item at the end of UrlRedirectEdge.""" + node: UrlRedirect! +} + +"""Represents an error in the input of a mutation.""" +type UserError implements DisplayableError { + """The path to the input field that caused the error.""" + field: [String!] + + """The error message.""" + message: String! +} + +""" +A filter used to view a subset of products in a collection matching a specific variant option. +""" +input VariantOptionFilter { + """The name of the variant option to filter on.""" + name: String! + + """The value of the variant option to filter on.""" + value: String! +} + +"""Represents a Shopify hosted video.""" +type Video implements Media & Node { + """A word or phrase to share the nature or contents of a media.""" + alt: String + + """A globally-unique identifier.""" + id: ID! + + """The media content type.""" + mediaContentType: MediaContentType! + + """The preview image for the media.""" + previewImage: Image + + """The sources for a video.""" + sources: [VideoSource!]! +} + +"""Represents a source for a Shopify hosted video.""" +type VideoSource { + """The format of the video source.""" + format: String! + + """The height of the video.""" + height: Int! + + """The video MIME type.""" + mimeType: String! + + """The URL of the video.""" + url: String! + + """The width of the video.""" + width: Int! +} + +"""Units of measurement for weight.""" +enum WeightUnit { + """1 kilogram equals 1000 grams.""" + KILOGRAMS + + """Metric system unit of mass.""" + GRAMS + + """1 pound equals 16 ounces.""" + POUNDS + + """Imperial system unit of mass.""" + OUNCES +} \ No newline at end of file diff --git a/examples/nextjs-shopify/src/storefront/sdk-gen/generated/schema.ts b/examples/nextjs-shopify/src/storefront/sdk-gen/generated/schema.ts new file mode 100644 index 0000000..47fe6a3 --- /dev/null +++ b/examples/nextjs-shopify/src/storefront/sdk-gen/generated/schema.ts @@ -0,0 +1,11959 @@ +// @ts-nocheck +export type Scalars = { + Boolean: boolean, + Color: any, + DateTime: any, + Decimal: any, + Float: number, + HTML: any, + ID: string, + Int: number, + JSON: any, + String: string, + URL: any, + UnsignedInt64: any, +} + + +/** + * A version of the API, as defined by [Shopify API versioning](https://shopify.dev/api/usage/versioning). + * Versions are commonly referred to by their handle (for example, `2021-10`). + * + */ +export interface ApiVersion { + /** The human-readable name of the version. */ + displayName: Scalars['String'] + /** The unique identifier of an ApiVersion. All supported API versions have a date-based (YYYY-MM) or `unstable` handle. */ + handle: Scalars['String'] + /** Whether the version is actively supported by Shopify. Supported API versions are guaranteed to be stable. Unsupported API versions include unstable, release candidate, and end-of-life versions that are marked as unsupported. For more information, refer to [Versioning](https://shopify.dev/api/usage/versioning). */ + supported: Scalars['Boolean'] + __typename: 'ApiVersion' +} + + +/** Details about the gift card used on the checkout. */ +export interface AppliedGiftCard { + /** The amount that was taken from the gift card by applying it. */ + amountUsed: MoneyV2 + /** + * @deprecated Use `amountUsed` instead. + * The amount that was taken from the gift card by applying it. + */ + amountUsedV2: MoneyV2 + /** The amount left on the gift card. */ + balance: MoneyV2 + /** + * @deprecated Use `balance` instead. + * The amount left on the gift card. + */ + balanceV2: MoneyV2 + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** The last characters of the gift card. */ + lastCharacters: Scalars['String'] + /** The amount that was applied to the checkout in its currency. */ + presentmentAmountUsed: MoneyV2 + __typename: 'AppliedGiftCard' +} + + +/** An article in an online store blog. */ +export interface Article { + /** + * @deprecated Use `authorV2` instead. + * The article's author. + */ + author: ArticleAuthor + /** The article's author. */ + authorV2?: ArticleAuthor + /** The blog that the article belongs to. */ + blog: Blog + /** List of comments posted on the article. */ + comments: CommentConnection + /** Stripped content of the article, single line with HTML tags removed. */ + content: Scalars['String'] + /** The content of the article, complete with HTML formatting. */ + contentHtml: Scalars['HTML'] + /** Stripped excerpt of the article, single line with HTML tags removed. */ + excerpt?: Scalars['String'] + /** The excerpt of the article, complete with HTML formatting. */ + excerptHtml?: Scalars['HTML'] + /** + * A human-friendly unique string for the Article automatically generated from its title. + * + */ + handle: Scalars['String'] + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** The image associated with the article. */ + image?: Image + /** Returns a metafield found by namespace and key. */ + metafield?: Metafield + /** + * The metafields associated with the resource matching the supplied list of namespaces and keys. + * + */ + metafields: (Metafield | undefined)[] + /** The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel. */ + onlineStoreUrl?: Scalars['URL'] + /** The date and time when the article was published. */ + publishedAt: Scalars['DateTime'] + /** The article’s SEO information. */ + seo?: SEO + /** A categorization that a article can be tagged with. */ + tags: Scalars['String'][] + /** The article’s name. */ + title: Scalars['String'] + __typename: 'Article' +} + + +/** The author of an article. */ +export interface ArticleAuthor { + /** The author's bio. */ + bio?: Scalars['String'] + /** The author’s email. */ + email: Scalars['String'] + /** The author's first name. */ + firstName: Scalars['String'] + /** The author's last name. */ + lastName: Scalars['String'] + /** The author's full name. */ + name: Scalars['String'] + __typename: 'ArticleAuthor' +} + + +/** + * An auto-generated type for paginating through multiple Articles. + * + */ +export interface ArticleConnection { + /** A list of edges. */ + edges: ArticleEdge[] + /** A list of the nodes contained in ArticleEdge. */ + nodes: Article[] + /** Information to aid in pagination. */ + pageInfo: PageInfo + __typename: 'ArticleConnection' +} + + +/** + * An auto-generated type which holds one Article and a cursor during pagination. + * + */ +export interface ArticleEdge { + /** A cursor for use in pagination. */ + cursor: Scalars['String'] + /** The item at the end of ArticleEdge. */ + node: Article + __typename: 'ArticleEdge' +} + + +/** The set of valid sort keys for the Article query. */ +export type ArticleSortKeys = 'TITLE' | 'BLOG_TITLE' | 'AUTHOR' | 'UPDATED_AT' | 'PUBLISHED_AT' | 'ID' | 'RELEVANCE' + + +/** Represents a generic custom attribute. */ +export interface Attribute { + /** Key or name of the attribute. */ + key: Scalars['String'] + /** Value of the attribute. */ + value?: Scalars['String'] + __typename: 'Attribute' +} + + +/** + * Automatic discount applications capture the intentions of a discount that was automatically applied. + * + */ +export interface AutomaticDiscountApplication { + /** The method by which the discount's value is allocated to its entitled items. */ + allocationMethod: DiscountApplicationAllocationMethod + /** Which lines of targetType that the discount is allocated over. */ + targetSelection: DiscountApplicationTargetSelection + /** The type of line that the discount is applicable towards. */ + targetType: DiscountApplicationTargetType + /** The title of the application. */ + title: Scalars['String'] + /** The value of the discount application. */ + value: PricingValue + __typename: 'AutomaticDiscountApplication' +} + + +/** A collection of available shipping rates for a checkout. */ +export interface AvailableShippingRates { + /** + * Whether or not the shipping rates are ready. + * The `shippingRates` field is `null` when this value is `false`. + * This field should be polled until its value becomes `true`. + * + */ + ready: Scalars['Boolean'] + /** The fetched shipping rates. `null` until the `ready` field is `true`. */ + shippingRates?: ShippingRate[] + __typename: 'AvailableShippingRates' +} + + +/** An online store blog. */ +export interface Blog { + /** Find an article by its handle. */ + articleByHandle?: Article + /** List of the blog's articles. */ + articles: ArticleConnection + /** The authors who have contributed to the blog. */ + authors: ArticleAuthor[] + /** + * A human-friendly unique string for the Blog automatically generated from its title. + * + */ + handle: Scalars['String'] + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** Returns a metafield found by namespace and key. */ + metafield?: Metafield + /** + * The metafields associated with the resource matching the supplied list of namespaces and keys. + * + */ + metafields: (Metafield | undefined)[] + /** The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel. */ + onlineStoreUrl?: Scalars['URL'] + /** The blog's SEO information. */ + seo?: SEO + /** The blogs’s title. */ + title: Scalars['String'] + __typename: 'Blog' +} + + +/** + * An auto-generated type for paginating through multiple Blogs. + * + */ +export interface BlogConnection { + /** A list of edges. */ + edges: BlogEdge[] + /** A list of the nodes contained in BlogEdge. */ + nodes: Blog[] + /** Information to aid in pagination. */ + pageInfo: PageInfo + __typename: 'BlogConnection' +} + + +/** + * An auto-generated type which holds one Blog and a cursor during pagination. + * + */ +export interface BlogEdge { + /** A cursor for use in pagination. */ + cursor: Scalars['String'] + /** The item at the end of BlogEdge. */ + node: Blog + __typename: 'BlogEdge' +} + + +/** The set of valid sort keys for the Blog query. */ +export type BlogSortKeys = 'HANDLE' | 'TITLE' | 'ID' | 'RELEVANCE' + + +/** + * The store's branding configuration. + * + */ +export interface Brand { + /** The colors of the store's brand. */ + colors: BrandColors + /** The store's cover image. */ + coverImage?: MediaImage + /** The store's default logo. */ + logo?: MediaImage + /** The store's short description. */ + shortDescription?: Scalars['String'] + /** The store's slogan. */ + slogan?: Scalars['String'] + /** The store's preferred logo for square UI elements. */ + squareLogo?: MediaImage + __typename: 'Brand' +} + + +/** + * A group of related colors for the shop's brand. + * + */ +export interface BrandColorGroup { + /** The background color. */ + background?: Scalars['Color'] + /** The foreground color. */ + foreground?: Scalars['Color'] + __typename: 'BrandColorGroup' +} + + +/** + * The colors of the shop's brand. + * + */ +export interface BrandColors { + /** The shop's primary brand colors. */ + primary: BrandColorGroup[] + /** The shop's secondary brand colors. */ + secondary: BrandColorGroup[] + __typename: 'BrandColors' +} + + +/** Card brand, such as Visa or Mastercard, which can be used for payments. */ +export type CardBrand = 'VISA' | 'MASTERCARD' | 'DISCOVER' | 'AMERICAN_EXPRESS' | 'DINERS_CLUB' | 'JCB' + + +/** + * A cart represents the merchandise that a buyer intends to purchase, + * and the estimated cost associated with the cart. Learn how to + * [interact with a cart](https://shopify.dev/custom-storefronts/internationalization/international-pricing) + * during a customer's session. + * + */ +export interface Cart { + /** An attribute associated with the cart. */ + attribute?: Attribute + /** The attributes associated with the cart. Attributes are represented as key-value pairs. */ + attributes: Attribute[] + /** Information about the buyer that is interacting with the cart. */ + buyerIdentity: CartBuyerIdentity + /** The URL of the checkout for the cart. */ + checkoutUrl: Scalars['URL'] + /** The estimated costs that the buyer will pay at checkout. The costs are subject to change and changes will be reflected at checkout. The `cost` field uses the `buyerIdentity` field to determine [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing). */ + cost: CartCost + /** The date and time when the cart was created. */ + createdAt: Scalars['DateTime'] + /** + * The delivery groups available for the cart, based on the buyer identity default + * delivery address preference or the default address of the logged-in customer. + * + */ + deliveryGroups: CartDeliveryGroupConnection + /** The discounts that have been applied to the entire cart. */ + discountAllocations: CartDiscountAllocation[] + /** + * The case-insensitive discount codes that the customer added at checkout. + * + */ + discountCodes: CartDiscountCode[] + /** + * @deprecated Use `cost` instead. + * The estimated costs that the buyer will pay at checkout. + * The estimated costs are subject to change and changes will be reflected at checkout. + * The `estimatedCost` field uses the `buyerIdentity` field to determine + * [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing). + * + */ + estimatedCost: CartEstimatedCost + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** A list of lines containing information about the items the customer intends to purchase. */ + lines: CartLineConnection + /** A note that is associated with the cart. For example, the note can be a personalized message to the buyer. */ + note?: Scalars['String'] + /** The total number of items in the cart. */ + totalQuantity: Scalars['Int'] + /** The date and time when the cart was updated. */ + updatedAt: Scalars['DateTime'] + __typename: 'Cart' +} + + +/** Return type for `cartAttributesUpdate` mutation. */ +export interface CartAttributesUpdatePayload { + /** The updated cart. */ + cart?: Cart + /** The list of errors that occurred from executing the mutation. */ + userErrors: CartUserError[] + __typename: 'CartAttributesUpdatePayload' +} + + +/** The discounts automatically applied to the cart line based on prerequisites that have been met. */ +export interface CartAutomaticDiscountAllocation { + /** The discounted amount that has been applied to the cart line. */ + discountedAmount: MoneyV2 + /** The title of the allocated discount. */ + title: Scalars['String'] + __typename: 'CartAutomaticDiscountAllocation' +} + + +/** Represents information about the buyer that is interacting with the cart. */ +export interface CartBuyerIdentity { + /** The country where the buyer is located. */ + countryCode?: CountryCode + /** The customer account associated with the cart. */ + customer?: Customer + /** + * An ordered set of delivery addresses tied to the buyer that is interacting with the cart. + * The rank of the preferences is determined by the order of the addresses in the array. Preferences + * can be used to populate relevant fields in the checkout flow. + * + */ + deliveryAddressPreferences: DeliveryAddress[] + /** The email address of the buyer that is interacting with the cart. */ + email?: Scalars['String'] + /** The phone number of the buyer that is interacting with the cart. */ + phone?: Scalars['String'] + __typename: 'CartBuyerIdentity' +} + + +/** Return type for `cartBuyerIdentityUpdate` mutation. */ +export interface CartBuyerIdentityUpdatePayload { + /** The updated cart. */ + cart?: Cart + /** The list of errors that occurred from executing the mutation. */ + userErrors: CartUserError[] + __typename: 'CartBuyerIdentityUpdatePayload' +} + + +/** The discount that has been applied to the cart line using a discount code. */ +export interface CartCodeDiscountAllocation { + /** The code used to apply the discount. */ + code: Scalars['String'] + /** The discounted amount that has been applied to the cart line. */ + discountedAmount: MoneyV2 + __typename: 'CartCodeDiscountAllocation' +} + + +/** + * The costs that the buyer will pay at checkout. + * The cart cost uses [`CartBuyerIdentity`](https://shopify.dev/api/storefront/reference/cart/cartbuyeridentity) to determine + * [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing). + * + */ +export interface CartCost { + /** The estimated amount, before taxes and discounts, for the customer to pay at checkout. The checkout charge amount doesn't include any deferred payments that'll be paid at a later date. If the cart has no deferred payments, then the checkout charge amount is equivalent to `subtotalAmount`. */ + checkoutChargeAmount: MoneyV2 + /** The amount, before taxes and cart-level discounts, for the customer to pay. */ + subtotalAmount: MoneyV2 + /** Whether the subtotal amount is estimated. */ + subtotalAmountEstimated: Scalars['Boolean'] + /** The total amount for the customer to pay. */ + totalAmount: MoneyV2 + /** Whether the total amount is estimated. */ + totalAmountEstimated: Scalars['Boolean'] + /** The duty amount for the customer to pay at checkout. */ + totalDutyAmount?: MoneyV2 + /** Whether the total duty amount is estimated. */ + totalDutyAmountEstimated: Scalars['Boolean'] + /** The tax amount for the customer to pay at checkout. */ + totalTaxAmount?: MoneyV2 + /** Whether the total tax amount is estimated. */ + totalTaxAmountEstimated: Scalars['Boolean'] + __typename: 'CartCost' +} + + +/** Return type for `cartCreate` mutation. */ +export interface CartCreatePayload { + /** The new cart. */ + cart?: Cart + /** The list of errors that occurred from executing the mutation. */ + userErrors: CartUserError[] + __typename: 'CartCreatePayload' +} + + +/** The discounts automatically applied to the cart line based on prerequisites that have been met. */ +export interface CartCustomDiscountAllocation { + /** The discounted amount that has been applied to the cart line. */ + discountedAmount: MoneyV2 + /** The title of the allocated discount. */ + title: Scalars['String'] + __typename: 'CartCustomDiscountAllocation' +} + + +/** Information about the options available for one or more line items to be delivered to a specific address. */ +export interface CartDeliveryGroup { + /** A list of cart lines for the delivery group. */ + cartLines: CartLineConnection + /** The destination address for the delivery group. */ + deliveryAddress: MailingAddress + /** The delivery options available for the delivery group. */ + deliveryOptions: CartDeliveryOption[] + /** The ID for the delivery group. */ + id: Scalars['ID'] + /** The selected delivery option for the delivery group. */ + selectedDeliveryOption?: CartDeliveryOption + __typename: 'CartDeliveryGroup' +} + + +/** + * An auto-generated type for paginating through multiple CartDeliveryGroups. + * + */ +export interface CartDeliveryGroupConnection { + /** A list of edges. */ + edges: CartDeliveryGroupEdge[] + /** A list of the nodes contained in CartDeliveryGroupEdge. */ + nodes: CartDeliveryGroup[] + /** Information to aid in pagination. */ + pageInfo: PageInfo + __typename: 'CartDeliveryGroupConnection' +} + + +/** + * An auto-generated type which holds one CartDeliveryGroup and a cursor during pagination. + * + */ +export interface CartDeliveryGroupEdge { + /** A cursor for use in pagination. */ + cursor: Scalars['String'] + /** The item at the end of CartDeliveryGroupEdge. */ + node: CartDeliveryGroup + __typename: 'CartDeliveryGroupEdge' +} + + +/** Information about a delivery option. */ +export interface CartDeliveryOption { + /** The code of the delivery option. */ + code?: Scalars['String'] + /** The method for the delivery option. */ + deliveryMethodType: DeliveryMethodType + /** The description of the delivery option. */ + description?: Scalars['String'] + /** The estimated cost for the delivery option. */ + estimatedCost: MoneyV2 + /** The unique identifier of the delivery option. */ + handle: Scalars['String'] + /** The title of the delivery option. */ + title?: Scalars['String'] + __typename: 'CartDeliveryOption' +} + + +/** The discounts that have been applied to the cart line. */ +export type CartDiscountAllocation = (CartAutomaticDiscountAllocation | CartCodeDiscountAllocation | CartCustomDiscountAllocation) & { __isUnion?: true } + + +/** The discount codes applied to the cart. */ +export interface CartDiscountCode { + /** Whether the discount code is applicable to the cart's current contents. */ + applicable: Scalars['Boolean'] + /** The code for the discount. */ + code: Scalars['String'] + __typename: 'CartDiscountCode' +} + + +/** Return type for `cartDiscountCodesUpdate` mutation. */ +export interface CartDiscountCodesUpdatePayload { + /** The updated cart. */ + cart?: Cart + /** The list of errors that occurred from executing the mutation. */ + userErrors: CartUserError[] + __typename: 'CartDiscountCodesUpdatePayload' +} + + +/** Possible error codes that can be returned by `CartUserError`. */ +export type CartErrorCode = 'INVALID' | 'LESS_THAN' | 'INVALID_MERCHANDISE_LINE' | 'MISSING_DISCOUNT_CODE' | 'MISSING_NOTE' + + +/** + * The estimated costs that the buyer will pay at checkout. + * The estimated cost uses + * [`CartBuyerIdentity`](https://shopify.dev/api/storefront/reference/cart/cartbuyeridentity) + * to determine + * [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing). + * + */ +export interface CartEstimatedCost { + /** The estimated amount, before taxes and discounts, for the customer to pay at checkout. The checkout charge amount doesn't include any deferred payments that'll be paid at a later date. If the cart has no deferred payments, then the checkout charge amount is equivalent to`subtotal_amount`. */ + checkoutChargeAmount: MoneyV2 + /** The estimated amount, before taxes and discounts, for the customer to pay. */ + subtotalAmount: MoneyV2 + /** The estimated total amount for the customer to pay. */ + totalAmount: MoneyV2 + /** The estimated duty amount for the customer to pay at checkout. */ + totalDutyAmount?: MoneyV2 + /** The estimated tax amount for the customer to pay at checkout. */ + totalTaxAmount?: MoneyV2 + __typename: 'CartEstimatedCost' +} + + +/** Represents information about the merchandise in the cart. */ +export interface CartLine { + /** An attribute associated with the cart line. */ + attribute?: Attribute + /** The attributes associated with the cart line. Attributes are represented as key-value pairs. */ + attributes: Attribute[] + /** The cost of the merchandise that the buyer will pay for at checkout. The costs are subject to change and changes will be reflected at checkout. */ + cost: CartLineCost + /** The discounts that have been applied to the cart line. */ + discountAllocations: CartDiscountAllocation[] + /** + * @deprecated Use `cost` instead. + * The estimated cost of the merchandise that the buyer will pay for at checkout. The estimated costs are subject to change and changes will be reflected at checkout. + */ + estimatedCost: CartLineEstimatedCost + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** The merchandise that the buyer intends to purchase. */ + merchandise: Merchandise + /** The quantity of the merchandise that the customer intends to purchase. */ + quantity: Scalars['Int'] + /** The selling plan associated with the cart line and the effect that each selling plan has on variants when they're purchased. */ + sellingPlanAllocation?: SellingPlanAllocation + __typename: 'CartLine' +} + + +/** + * An auto-generated type for paginating through multiple CartLines. + * + */ +export interface CartLineConnection { + /** A list of edges. */ + edges: CartLineEdge[] + /** A list of the nodes contained in CartLineEdge. */ + nodes: CartLine[] + /** Information to aid in pagination. */ + pageInfo: PageInfo + __typename: 'CartLineConnection' +} + + +/** The cost of the merchandise line that the buyer will pay at checkout. */ +export interface CartLineCost { + /** The amount of the merchandise line. */ + amountPerQuantity: MoneyV2 + /** The compare at amount of the merchandise line. */ + compareAtAmountPerQuantity?: MoneyV2 + /** The cost of the merchandise line before line-level discounts. */ + subtotalAmount: MoneyV2 + /** The total cost of the merchandise line. */ + totalAmount: MoneyV2 + __typename: 'CartLineCost' +} + + +/** + * An auto-generated type which holds one CartLine and a cursor during pagination. + * + */ +export interface CartLineEdge { + /** A cursor for use in pagination. */ + cursor: Scalars['String'] + /** The item at the end of CartLineEdge. */ + node: CartLine + __typename: 'CartLineEdge' +} + + +/** The estimated cost of the merchandise line that the buyer will pay at checkout. */ +export interface CartLineEstimatedCost { + /** The amount of the merchandise line. */ + amount: MoneyV2 + /** The compare at amount of the merchandise line. */ + compareAtAmount?: MoneyV2 + /** The estimated cost of the merchandise line before discounts. */ + subtotalAmount: MoneyV2 + /** The estimated total cost of the merchandise line. */ + totalAmount: MoneyV2 + __typename: 'CartLineEstimatedCost' +} + + +/** Return type for `cartLinesAdd` mutation. */ +export interface CartLinesAddPayload { + /** The updated cart. */ + cart?: Cart + /** The list of errors that occurred from executing the mutation. */ + userErrors: CartUserError[] + __typename: 'CartLinesAddPayload' +} + + +/** Return type for `cartLinesRemove` mutation. */ +export interface CartLinesRemovePayload { + /** The updated cart. */ + cart?: Cart + /** The list of errors that occurred from executing the mutation. */ + userErrors: CartUserError[] + __typename: 'CartLinesRemovePayload' +} + + +/** Return type for `cartLinesUpdate` mutation. */ +export interface CartLinesUpdatePayload { + /** The updated cart. */ + cart?: Cart + /** The list of errors that occurred from executing the mutation. */ + userErrors: CartUserError[] + __typename: 'CartLinesUpdatePayload' +} + + +/** Return type for `cartNoteUpdate` mutation. */ +export interface CartNoteUpdatePayload { + /** The updated cart. */ + cart?: Cart + /** The list of errors that occurred from executing the mutation. */ + userErrors: CartUserError[] + __typename: 'CartNoteUpdatePayload' +} + + +/** Return type for `cartSelectedDeliveryOptionsUpdate` mutation. */ +export interface CartSelectedDeliveryOptionsUpdatePayload { + /** The updated cart. */ + cart?: Cart + /** The list of errors that occurred from executing the mutation. */ + userErrors: CartUserError[] + __typename: 'CartSelectedDeliveryOptionsUpdatePayload' +} + + +/** Represents an error that happens during execution of a cart mutation. */ +export interface CartUserError { + /** The error code. */ + code?: CartErrorCode + /** The path to the input field that caused the error. */ + field?: Scalars['String'][] + /** The error message. */ + message: Scalars['String'] + __typename: 'CartUserError' +} + + +/** A container for all the information required to checkout items and pay. */ +export interface Checkout { + /** The gift cards used on the checkout. */ + appliedGiftCards: AppliedGiftCard[] + /** + * The available shipping rates for this Checkout. + * Should only be used when checkout `requiresShipping` is `true` and + * the shipping address is valid. + * + */ + availableShippingRates?: AvailableShippingRates + /** The identity of the customer associated with the checkout. */ + buyerIdentity: CheckoutBuyerIdentity + /** The date and time when the checkout was completed. */ + completedAt?: Scalars['DateTime'] + /** The date and time when the checkout was created. */ + createdAt: Scalars['DateTime'] + /** The currency code for the checkout. */ + currencyCode: CurrencyCode + /** A list of extra information that is added to the checkout. */ + customAttributes: Attribute[] + /** Discounts that have been applied on the checkout. */ + discountApplications: DiscountApplicationConnection + /** The email attached to this checkout. */ + email?: Scalars['String'] + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** A list of line item objects, each one containing information about an item in the checkout. */ + lineItems: CheckoutLineItemConnection + /** The sum of all the prices of all the items in the checkout. Duties, taxes, shipping and discounts excluded. */ + lineItemsSubtotalPrice: MoneyV2 + /** The note associated with the checkout. */ + note?: Scalars['String'] + /** The resulting order from a paid checkout. */ + order?: Order + /** The Order Status Page for this Checkout, null when checkout is not completed. */ + orderStatusUrl?: Scalars['URL'] + /** The amount left to be paid. This is equal to the cost of the line items, taxes, and shipping, minus discounts and gift cards. */ + paymentDue: MoneyV2 + /** + * @deprecated Use `paymentDue` instead. + * The amount left to be paid. This is equal to the cost of the line items, duties, taxes, and shipping, minus discounts and gift cards. + */ + paymentDueV2: MoneyV2 + /** + * Whether or not the Checkout is ready and can be completed. Checkouts may + * have asynchronous operations that can take time to finish. If you want + * to complete a checkout or ensure all the fields are populated and up to + * date, polling is required until the value is true. + * + */ + ready: Scalars['Boolean'] + /** States whether or not the fulfillment requires shipping. */ + requiresShipping: Scalars['Boolean'] + /** The shipping address to where the line items will be shipped. */ + shippingAddress?: MailingAddress + /** + * The discounts that have been allocated onto the shipping line by discount applications. + * + */ + shippingDiscountAllocations: DiscountAllocation[] + /** Once a shipping rate is selected by the customer it is transitioned to a `shipping_line` object. */ + shippingLine?: ShippingRate + /** The price at checkout before shipping and taxes. */ + subtotalPrice: MoneyV2 + /** + * @deprecated Use `subtotalPrice` instead. + * The price at checkout before duties, shipping, and taxes. + */ + subtotalPriceV2: MoneyV2 + /** Whether the checkout is tax exempt. */ + taxExempt: Scalars['Boolean'] + /** Whether taxes are included in the line item and shipping line prices. */ + taxesIncluded: Scalars['Boolean'] + /** The sum of all the duties applied to the line items in the checkout. */ + totalDuties?: MoneyV2 + /** The sum of all the prices of all the items in the checkout, including taxes and duties. */ + totalPrice: MoneyV2 + /** + * @deprecated Use `totalPrice` instead. + * The sum of all the prices of all the items in the checkout, including taxes and duties. + */ + totalPriceV2: MoneyV2 + /** The sum of all the taxes applied to the line items and shipping lines in the checkout. */ + totalTax: MoneyV2 + /** + * @deprecated Use `totalTax` instead. + * The sum of all the taxes applied to the line items and shipping lines in the checkout. + */ + totalTaxV2: MoneyV2 + /** The date and time when the checkout was last updated. */ + updatedAt: Scalars['DateTime'] + /** The url pointing to the checkout accessible from the web. */ + webUrl: Scalars['URL'] + __typename: 'Checkout' +} + + +/** Return type for `checkoutAttributesUpdateV2` mutation. */ +export interface CheckoutAttributesUpdateV2Payload { + /** The updated checkout object. */ + checkout?: Checkout + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors: CheckoutUserError[] + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CheckoutAttributesUpdateV2Payload' +} + + +/** The identity of the customer associated with the checkout. */ +export interface CheckoutBuyerIdentity { + /** The country code for the checkout. For example, `CA`. */ + countryCode?: CountryCode + __typename: 'CheckoutBuyerIdentity' +} + + +/** Return type for `checkoutCompleteFree` mutation. */ +export interface CheckoutCompleteFreePayload { + /** The updated checkout object. */ + checkout?: Checkout + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors: CheckoutUserError[] + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CheckoutCompleteFreePayload' +} + + +/** Return type for `checkoutCompleteWithCreditCardV2` mutation. */ +export interface CheckoutCompleteWithCreditCardV2Payload { + /** The checkout on which the payment was applied. */ + checkout?: Checkout + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors: CheckoutUserError[] + /** A representation of the attempted payment. */ + payment?: Payment + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CheckoutCompleteWithCreditCardV2Payload' +} + + +/** Return type for `checkoutCompleteWithTokenizedPaymentV3` mutation. */ +export interface CheckoutCompleteWithTokenizedPaymentV3Payload { + /** The checkout on which the payment was applied. */ + checkout?: Checkout + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors: CheckoutUserError[] + /** A representation of the attempted payment. */ + payment?: Payment + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CheckoutCompleteWithTokenizedPaymentV3Payload' +} + + +/** Return type for `checkoutCreate` mutation. */ +export interface CheckoutCreatePayload { + /** The new checkout object. */ + checkout?: Checkout + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors: CheckoutUserError[] + /** The checkout queue token. Available only to selected stores. */ + queueToken?: Scalars['String'] + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CheckoutCreatePayload' +} + + +/** Return type for `checkoutCustomerAssociateV2` mutation. */ +export interface CheckoutCustomerAssociateV2Payload { + /** The updated checkout object. */ + checkout?: Checkout + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors: CheckoutUserError[] + /** The associated customer object. */ + customer?: Customer + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CheckoutCustomerAssociateV2Payload' +} + + +/** Return type for `checkoutCustomerDisassociateV2` mutation. */ +export interface CheckoutCustomerDisassociateV2Payload { + /** The updated checkout object. */ + checkout?: Checkout + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors: CheckoutUserError[] + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CheckoutCustomerDisassociateV2Payload' +} + + +/** Return type for `checkoutDiscountCodeApplyV2` mutation. */ +export interface CheckoutDiscountCodeApplyV2Payload { + /** The updated checkout object. */ + checkout?: Checkout + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors: CheckoutUserError[] + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CheckoutDiscountCodeApplyV2Payload' +} + + +/** Return type for `checkoutDiscountCodeRemove` mutation. */ +export interface CheckoutDiscountCodeRemovePayload { + /** The updated checkout object. */ + checkout?: Checkout + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors: CheckoutUserError[] + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CheckoutDiscountCodeRemovePayload' +} + + +/** Return type for `checkoutEmailUpdateV2` mutation. */ +export interface CheckoutEmailUpdateV2Payload { + /** The checkout object with the updated email. */ + checkout?: Checkout + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors: CheckoutUserError[] + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CheckoutEmailUpdateV2Payload' +} + + +/** Possible error codes that can be returned by `CheckoutUserError`. */ +export type CheckoutErrorCode = 'BLANK' | 'INVALID' | 'TOO_LONG' | 'PRESENT' | 'LESS_THAN' | 'GREATER_THAN_OR_EQUAL_TO' | 'LESS_THAN_OR_EQUAL_TO' | 'ALREADY_COMPLETED' | 'LOCKED' | 'NOT_SUPPORTED' | 'BAD_DOMAIN' | 'INVALID_FOR_COUNTRY' | 'INVALID_FOR_COUNTRY_AND_PROVINCE' | 'INVALID_STATE_IN_COUNTRY' | 'INVALID_PROVINCE_IN_COUNTRY' | 'INVALID_REGION_IN_COUNTRY' | 'SHIPPING_RATE_EXPIRED' | 'GIFT_CARD_UNUSABLE' | 'GIFT_CARD_DISABLED' | 'GIFT_CARD_CODE_INVALID' | 'GIFT_CARD_ALREADY_APPLIED' | 'GIFT_CARD_CURRENCY_MISMATCH' | 'GIFT_CARD_EXPIRED' | 'GIFT_CARD_DEPLETED' | 'GIFT_CARD_NOT_FOUND' | 'CART_DOES_NOT_MEET_DISCOUNT_REQUIREMENTS_NOTICE' | 'DISCOUNT_EXPIRED' | 'DISCOUNT_DISABLED' | 'DISCOUNT_LIMIT_REACHED' | 'HIGHER_VALUE_DISCOUNT_APPLIED' | 'MAXIMUM_DISCOUNT_CODE_LIMIT_REACHED' | 'DISCOUNT_NOT_FOUND' | 'CUSTOMER_ALREADY_USED_ONCE_PER_CUSTOMER_DISCOUNT_NOTICE' | 'DISCOUNT_CODE_APPLICATION_FAILED' | 'EMPTY' | 'NOT_ENOUGH_IN_STOCK' | 'MISSING_PAYMENT_INPUT' | 'TOTAL_PRICE_MISMATCH' | 'LINE_ITEM_NOT_FOUND' | 'UNABLE_TO_APPLY' | 'DISCOUNT_ALREADY_APPLIED' | 'THROTTLED_DURING_CHECKOUT' | 'EXPIRED_QUEUE_TOKEN' | 'INVALID_QUEUE_TOKEN' | 'INVALID_COUNTRY_AND_CURRENCY' + + +/** Return type for `checkoutGiftCardRemoveV2` mutation. */ +export interface CheckoutGiftCardRemoveV2Payload { + /** The updated checkout object. */ + checkout?: Checkout + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors: CheckoutUserError[] + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CheckoutGiftCardRemoveV2Payload' +} + + +/** Return type for `checkoutGiftCardsAppend` mutation. */ +export interface CheckoutGiftCardsAppendPayload { + /** The updated checkout object. */ + checkout?: Checkout + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors: CheckoutUserError[] + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CheckoutGiftCardsAppendPayload' +} + + +/** A single line item in the checkout, grouped by variant and attributes. */ +export interface CheckoutLineItem { + /** Extra information in the form of an array of Key-Value pairs about the line item. */ + customAttributes: Attribute[] + /** The discounts that have been allocated onto the checkout line item by discount applications. */ + discountAllocations: DiscountAllocation[] + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** The quantity of the line item. */ + quantity: Scalars['Int'] + /** Title of the line item. Defaults to the product's title. */ + title: Scalars['String'] + /** Unit price of the line item. */ + unitPrice?: MoneyV2 + /** Product variant of the line item. */ + variant?: ProductVariant + __typename: 'CheckoutLineItem' +} + + +/** + * An auto-generated type for paginating through multiple CheckoutLineItems. + * + */ +export interface CheckoutLineItemConnection { + /** A list of edges. */ + edges: CheckoutLineItemEdge[] + /** A list of the nodes contained in CheckoutLineItemEdge. */ + nodes: CheckoutLineItem[] + /** Information to aid in pagination. */ + pageInfo: PageInfo + __typename: 'CheckoutLineItemConnection' +} + + +/** + * An auto-generated type which holds one CheckoutLineItem and a cursor during pagination. + * + */ +export interface CheckoutLineItemEdge { + /** A cursor for use in pagination. */ + cursor: Scalars['String'] + /** The item at the end of CheckoutLineItemEdge. */ + node: CheckoutLineItem + __typename: 'CheckoutLineItemEdge' +} + + +/** Return type for `checkoutLineItemsAdd` mutation. */ +export interface CheckoutLineItemsAddPayload { + /** The updated checkout object. */ + checkout?: Checkout + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors: CheckoutUserError[] + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CheckoutLineItemsAddPayload' +} + + +/** Return type for `checkoutLineItemsRemove` mutation. */ +export interface CheckoutLineItemsRemovePayload { + /** The updated checkout object. */ + checkout?: Checkout + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors: CheckoutUserError[] + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CheckoutLineItemsRemovePayload' +} + + +/** Return type for `checkoutLineItemsReplace` mutation. */ +export interface CheckoutLineItemsReplacePayload { + /** The updated checkout object. */ + checkout?: Checkout + /** The list of errors that occurred from executing the mutation. */ + userErrors: CheckoutUserError[] + __typename: 'CheckoutLineItemsReplacePayload' +} + + +/** Return type for `checkoutLineItemsUpdate` mutation. */ +export interface CheckoutLineItemsUpdatePayload { + /** The updated checkout object. */ + checkout?: Checkout + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors: CheckoutUserError[] + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CheckoutLineItemsUpdatePayload' +} + + +/** Return type for `checkoutShippingAddressUpdateV2` mutation. */ +export interface CheckoutShippingAddressUpdateV2Payload { + /** The updated checkout object. */ + checkout?: Checkout + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors: CheckoutUserError[] + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CheckoutShippingAddressUpdateV2Payload' +} + + +/** Return type for `checkoutShippingLineUpdate` mutation. */ +export interface CheckoutShippingLineUpdatePayload { + /** The updated checkout object. */ + checkout?: Checkout + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors: CheckoutUserError[] + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CheckoutShippingLineUpdatePayload' +} + + +/** Represents an error that happens during execution of a checkout mutation. */ +export interface CheckoutUserError { + /** The error code. */ + code?: CheckoutErrorCode + /** The path to the input field that caused the error. */ + field?: Scalars['String'][] + /** The error message. */ + message: Scalars['String'] + __typename: 'CheckoutUserError' +} + + +/** A collection represents a grouping of products that a shop owner can create to organize them or make their shops easier to browse. */ +export interface Collection { + /** Stripped description of the collection, single line with HTML tags removed. */ + description: Scalars['String'] + /** The description of the collection, complete with HTML formatting. */ + descriptionHtml: Scalars['HTML'] + /** + * A human-friendly unique string for the collection automatically generated from its title. + * Limit of 255 characters. + * + */ + handle: Scalars['String'] + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** Image associated with the collection. */ + image?: Image + /** Returns a metafield found by namespace and key. */ + metafield?: Metafield + /** + * The metafields associated with the resource matching the supplied list of namespaces and keys. + * + */ + metafields: (Metafield | undefined)[] + /** The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel. */ + onlineStoreUrl?: Scalars['URL'] + /** List of products in the collection. */ + products: ProductConnection + /** The collection's SEO information. */ + seo: SEO + /** The collection’s name. Limit of 255 characters. */ + title: Scalars['String'] + /** The date and time when the collection was last modified. */ + updatedAt: Scalars['DateTime'] + __typename: 'Collection' +} + + +/** + * An auto-generated type for paginating through multiple Collections. + * + */ +export interface CollectionConnection { + /** A list of edges. */ + edges: CollectionEdge[] + /** A list of the nodes contained in CollectionEdge. */ + nodes: Collection[] + /** Information to aid in pagination. */ + pageInfo: PageInfo + __typename: 'CollectionConnection' +} + + +/** + * An auto-generated type which holds one Collection and a cursor during pagination. + * + */ +export interface CollectionEdge { + /** A cursor for use in pagination. */ + cursor: Scalars['String'] + /** The item at the end of CollectionEdge. */ + node: Collection + __typename: 'CollectionEdge' +} + + +/** The set of valid sort keys for the Collection query. */ +export type CollectionSortKeys = 'TITLE' | 'UPDATED_AT' | 'ID' | 'RELEVANCE' + + +/** A comment on an article. */ +export interface Comment { + /** The comment’s author. */ + author: CommentAuthor + /** Stripped content of the comment, single line with HTML tags removed. */ + content: Scalars['String'] + /** The content of the comment, complete with HTML formatting. */ + contentHtml: Scalars['HTML'] + /** A globally-unique identifier. */ + id: Scalars['ID'] + __typename: 'Comment' +} + + +/** The author of a comment. */ +export interface CommentAuthor { + /** The author's email. */ + email: Scalars['String'] + /** The author’s name. */ + name: Scalars['String'] + __typename: 'CommentAuthor' +} + + +/** + * An auto-generated type for paginating through multiple Comments. + * + */ +export interface CommentConnection { + /** A list of edges. */ + edges: CommentEdge[] + /** A list of the nodes contained in CommentEdge. */ + nodes: Comment[] + /** Information to aid in pagination. */ + pageInfo: PageInfo + __typename: 'CommentConnection' +} + + +/** + * An auto-generated type which holds one Comment and a cursor during pagination. + * + */ +export interface CommentEdge { + /** A cursor for use in pagination. */ + cursor: Scalars['String'] + /** The item at the end of CommentEdge. */ + node: Comment + __typename: 'CommentEdge' +} + + +/** A country. */ +export interface Country { + /** The languages available for the country. */ + availableLanguages: Language[] + /** The currency of the country. */ + currency: Currency + /** The ISO code of the country. */ + isoCode: CountryCode + /** The name of the country. */ + name: Scalars['String'] + /** The unit system used in the country. */ + unitSystem: UnitSystem + __typename: 'Country' +} + + +/** + * The code designating a country/region, which generally follows ISO 3166-1 alpha-2 guidelines. + * If a territory doesn't have a country code value in the `CountryCode` enum, then it might be considered a subdivision + * of another country. For example, the territories associated with Spain are represented by the country code `ES`, + * and the territories associated with the United States of America are represented by the country code `US`. + * + */ +export type CountryCode = 'AF' | 'AX' | 'AL' | 'DZ' | 'AD' | 'AO' | 'AI' | 'AG' | 'AR' | 'AM' | 'AW' | 'AC' | 'AU' | 'AT' | 'AZ' | 'BS' | 'BH' | 'BD' | 'BB' | 'BY' | 'BE' | 'BZ' | 'BJ' | 'BM' | 'BT' | 'BO' | 'BA' | 'BW' | 'BV' | 'BR' | 'IO' | 'BN' | 'BG' | 'BF' | 'BI' | 'KH' | 'CA' | 'CV' | 'BQ' | 'KY' | 'CF' | 'TD' | 'CL' | 'CN' | 'CX' | 'CC' | 'CO' | 'KM' | 'CG' | 'CD' | 'CK' | 'CR' | 'HR' | 'CU' | 'CW' | 'CY' | 'CZ' | 'CI' | 'DK' | 'DJ' | 'DM' | 'DO' | 'EC' | 'EG' | 'SV' | 'GQ' | 'ER' | 'EE' | 'SZ' | 'ET' | 'FK' | 'FO' | 'FJ' | 'FI' | 'FR' | 'GF' | 'PF' | 'TF' | 'GA' | 'GM' | 'GE' | 'DE' | 'GH' | 'GI' | 'GR' | 'GL' | 'GD' | 'GP' | 'GT' | 'GG' | 'GN' | 'GW' | 'GY' | 'HT' | 'HM' | 'VA' | 'HN' | 'HK' | 'HU' | 'IS' | 'IN' | 'ID' | 'IR' | 'IQ' | 'IE' | 'IM' | 'IL' | 'IT' | 'JM' | 'JP' | 'JE' | 'JO' | 'KZ' | 'KE' | 'KI' | 'KP' | 'XK' | 'KW' | 'KG' | 'LA' | 'LV' | 'LB' | 'LS' | 'LR' | 'LY' | 'LI' | 'LT' | 'LU' | 'MO' | 'MG' | 'MW' | 'MY' | 'MV' | 'ML' | 'MT' | 'MQ' | 'MR' | 'MU' | 'YT' | 'MX' | 'MD' | 'MC' | 'MN' | 'ME' | 'MS' | 'MA' | 'MZ' | 'MM' | 'NA' | 'NR' | 'NP' | 'NL' | 'AN' | 'NC' | 'NZ' | 'NI' | 'NE' | 'NG' | 'NU' | 'NF' | 'MK' | 'NO' | 'OM' | 'PK' | 'PS' | 'PA' | 'PG' | 'PY' | 'PE' | 'PH' | 'PN' | 'PL' | 'PT' | 'QA' | 'CM' | 'RE' | 'RO' | 'RU' | 'RW' | 'BL' | 'SH' | 'KN' | 'LC' | 'MF' | 'PM' | 'WS' | 'SM' | 'ST' | 'SA' | 'SN' | 'RS' | 'SC' | 'SL' | 'SG' | 'SX' | 'SK' | 'SI' | 'SB' | 'SO' | 'ZA' | 'GS' | 'KR' | 'SS' | 'ES' | 'LK' | 'VC' | 'SD' | 'SR' | 'SJ' | 'SE' | 'CH' | 'SY' | 'TW' | 'TJ' | 'TZ' | 'TH' | 'TL' | 'TG' | 'TK' | 'TO' | 'TT' | 'TA' | 'TN' | 'TR' | 'TM' | 'TC' | 'TV' | 'UG' | 'UA' | 'AE' | 'GB' | 'US' | 'UM' | 'UY' | 'UZ' | 'VU' | 'VE' | 'VN' | 'VG' | 'WF' | 'EH' | 'YE' | 'ZM' | 'ZW' | 'ZZ' + + +/** Credit card information used for a payment. */ +export interface CreditCard { + /** The brand of the credit card. */ + brand?: Scalars['String'] + /** The expiry month of the credit card. */ + expiryMonth?: Scalars['Int'] + /** The expiry year of the credit card. */ + expiryYear?: Scalars['Int'] + /** The credit card's BIN number. */ + firstDigits?: Scalars['String'] + /** The first name of the card holder. */ + firstName?: Scalars['String'] + /** The last 4 digits of the credit card. */ + lastDigits?: Scalars['String'] + /** The last name of the card holder. */ + lastName?: Scalars['String'] + /** The masked credit card number with only the last 4 digits displayed. */ + maskedNumber?: Scalars['String'] + __typename: 'CreditCard' +} + + +/** The part of the image that should remain after cropping. */ +export type CropRegion = 'CENTER' | 'TOP' | 'BOTTOM' | 'LEFT' | 'RIGHT' + + +/** A currency. */ +export interface Currency { + /** The ISO code of the currency. */ + isoCode: CurrencyCode + /** The name of the currency. */ + name: Scalars['String'] + /** The symbol of the currency. */ + symbol: Scalars['String'] + __typename: 'Currency' +} + + +/** + * The three-letter currency codes that represent the world currencies used in stores. These include standard ISO 4217 codes, legacy codes, + * and non-standard codes. + * + */ +export type CurrencyCode = 'USD' | 'EUR' | 'GBP' | 'CAD' | 'AFN' | 'ALL' | 'DZD' | 'AOA' | 'ARS' | 'AMD' | 'AWG' | 'AUD' | 'BBD' | 'AZN' | 'BDT' | 'BSD' | 'BHD' | 'BIF' | 'BZD' | 'BMD' | 'BTN' | 'BAM' | 'BRL' | 'BOB' | 'BWP' | 'BND' | 'BGN' | 'MMK' | 'KHR' | 'CVE' | 'KYD' | 'XAF' | 'CLP' | 'CNY' | 'COP' | 'KMF' | 'CDF' | 'CRC' | 'HRK' | 'CZK' | 'DKK' | 'DOP' | 'XCD' | 'EGP' | 'ETB' | 'XPF' | 'FJD' | 'GMD' | 'GHS' | 'GTQ' | 'GYD' | 'GEL' | 'HTG' | 'HNL' | 'HKD' | 'HUF' | 'ISK' | 'INR' | 'IDR' | 'ILS' | 'IQD' | 'JMD' | 'JPY' | 'JEP' | 'JOD' | 'KZT' | 'KES' | 'KWD' | 'KGS' | 'LAK' | 'LVL' | 'LBP' | 'LSL' | 'LRD' | 'LTL' | 'MGA' | 'MKD' | 'MOP' | 'MWK' | 'MVR' | 'MXN' | 'MYR' | 'MUR' | 'MDL' | 'MAD' | 'MNT' | 'MZN' | 'NAD' | 'NPR' | 'ANG' | 'NZD' | 'NIO' | 'NGN' | 'NOK' | 'OMR' | 'PAB' | 'PKR' | 'PGK' | 'PYG' | 'PEN' | 'PHP' | 'PLN' | 'QAR' | 'RON' | 'RUB' | 'RWF' | 'WST' | 'SAR' | 'RSD' | 'SCR' | 'SGD' | 'SDG' | 'SYP' | 'ZAR' | 'KRW' | 'SSP' | 'SBD' | 'LKR' | 'SRD' | 'SZL' | 'SEK' | 'CHF' | 'TWD' | 'THB' | 'TZS' | 'TTD' | 'TND' | 'TRY' | 'TMT' | 'UGX' | 'UAH' | 'AED' | 'UYU' | 'UZS' | 'VUV' | 'VND' | 'XOF' | 'YER' | 'ZMW' | 'BYN' | 'BYR' | 'DJF' | 'ERN' | 'FKP' | 'GIP' | 'GNF' | 'IRR' | 'KID' | 'LYD' | 'MRU' | 'SLL' | 'SHP' | 'SOS' | 'STD' | 'STN' | 'TJS' | 'TOP' | 'VED' | 'VEF' | 'VES' | 'XXX' + + +/** A customer represents a customer account with the shop. Customer accounts store contact information for the customer, saving logged-in customers the trouble of having to provide it at every checkout. */ +export interface Customer { + /** Indicates whether the customer has consented to be sent marketing material via email. */ + acceptsMarketing: Scalars['Boolean'] + /** A list of addresses for the customer. */ + addresses: MailingAddressConnection + /** The date and time when the customer was created. */ + createdAt: Scalars['DateTime'] + /** The customer’s default address. */ + defaultAddress?: MailingAddress + /** The customer’s name, email or phone number. */ + displayName: Scalars['String'] + /** The customer’s email address. */ + email?: Scalars['String'] + /** The customer’s first name. */ + firstName?: Scalars['String'] + /** A unique identifier for the customer. */ + id: Scalars['ID'] + /** The customer's most recently updated, incomplete checkout. */ + lastIncompleteCheckout?: Checkout + /** The customer’s last name. */ + lastName?: Scalars['String'] + /** Returns a metafield found by namespace and key. */ + metafield?: Metafield + /** + * The metafields associated with the resource matching the supplied list of namespaces and keys. + * + */ + metafields: (Metafield | undefined)[] + /** The number of orders that the customer has made at the store in their lifetime. */ + numberOfOrders: Scalars['UnsignedInt64'] + /** The orders associated with the customer. */ + orders: OrderConnection + /** The customer’s phone number. */ + phone?: Scalars['String'] + /** + * A comma separated list of tags that have been added to the customer. + * Additional access scope required: unauthenticated_read_customer_tags. + * + */ + tags: Scalars['String'][] + /** The date and time when the customer information was updated. */ + updatedAt: Scalars['DateTime'] + __typename: 'Customer' +} + + +/** A CustomerAccessToken represents the unique token required to make modifications to the customer object. */ +export interface CustomerAccessToken { + /** The customer’s access token. */ + accessToken: Scalars['String'] + /** The date and time when the customer access token expires. */ + expiresAt: Scalars['DateTime'] + __typename: 'CustomerAccessToken' +} + + +/** Return type for `customerAccessTokenCreate` mutation. */ +export interface CustomerAccessTokenCreatePayload { + /** The newly created customer access token object. */ + customerAccessToken?: CustomerAccessToken + /** The list of errors that occurred from executing the mutation. */ + customerUserErrors: CustomerUserError[] + /** + * @deprecated Use `customerUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CustomerAccessTokenCreatePayload' +} + + +/** Return type for `customerAccessTokenCreateWithMultipass` mutation. */ +export interface CustomerAccessTokenCreateWithMultipassPayload { + /** An access token object associated with the customer. */ + customerAccessToken?: CustomerAccessToken + /** The list of errors that occurred from executing the mutation. */ + customerUserErrors: CustomerUserError[] + __typename: 'CustomerAccessTokenCreateWithMultipassPayload' +} + + +/** Return type for `customerAccessTokenDelete` mutation. */ +export interface CustomerAccessTokenDeletePayload { + /** The destroyed access token. */ + deletedAccessToken?: Scalars['String'] + /** ID of the destroyed customer access token. */ + deletedCustomerAccessTokenId?: Scalars['String'] + /** The list of errors that occurred from executing the mutation. */ + userErrors: UserError[] + __typename: 'CustomerAccessTokenDeletePayload' +} + + +/** Return type for `customerAccessTokenRenew` mutation. */ +export interface CustomerAccessTokenRenewPayload { + /** The renewed customer access token object. */ + customerAccessToken?: CustomerAccessToken + /** The list of errors that occurred from executing the mutation. */ + userErrors: UserError[] + __typename: 'CustomerAccessTokenRenewPayload' +} + + +/** Return type for `customerActivateByUrl` mutation. */ +export interface CustomerActivateByUrlPayload { + /** The customer that was activated. */ + customer?: Customer + /** A new customer access token for the customer. */ + customerAccessToken?: CustomerAccessToken + /** The list of errors that occurred from executing the mutation. */ + customerUserErrors: CustomerUserError[] + __typename: 'CustomerActivateByUrlPayload' +} + + +/** Return type for `customerActivate` mutation. */ +export interface CustomerActivatePayload { + /** The customer object. */ + customer?: Customer + /** A newly created customer access token object for the customer. */ + customerAccessToken?: CustomerAccessToken + /** The list of errors that occurred from executing the mutation. */ + customerUserErrors: CustomerUserError[] + /** + * @deprecated Use `customerUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CustomerActivatePayload' +} + + +/** Return type for `customerAddressCreate` mutation. */ +export interface CustomerAddressCreatePayload { + /** The new customer address object. */ + customerAddress?: MailingAddress + /** The list of errors that occurred from executing the mutation. */ + customerUserErrors: CustomerUserError[] + /** + * @deprecated Use `customerUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CustomerAddressCreatePayload' +} + + +/** Return type for `customerAddressDelete` mutation. */ +export interface CustomerAddressDeletePayload { + /** The list of errors that occurred from executing the mutation. */ + customerUserErrors: CustomerUserError[] + /** ID of the deleted customer address. */ + deletedCustomerAddressId?: Scalars['String'] + /** + * @deprecated Use `customerUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CustomerAddressDeletePayload' +} + + +/** Return type for `customerAddressUpdate` mutation. */ +export interface CustomerAddressUpdatePayload { + /** The customer’s updated mailing address. */ + customerAddress?: MailingAddress + /** The list of errors that occurred from executing the mutation. */ + customerUserErrors: CustomerUserError[] + /** + * @deprecated Use `customerUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CustomerAddressUpdatePayload' +} + + +/** Return type for `customerCreate` mutation. */ +export interface CustomerCreatePayload { + /** The created customer object. */ + customer?: Customer + /** The list of errors that occurred from executing the mutation. */ + customerUserErrors: CustomerUserError[] + /** + * @deprecated Use `customerUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CustomerCreatePayload' +} + + +/** Return type for `customerDefaultAddressUpdate` mutation. */ +export interface CustomerDefaultAddressUpdatePayload { + /** The updated customer object. */ + customer?: Customer + /** The list of errors that occurred from executing the mutation. */ + customerUserErrors: CustomerUserError[] + /** + * @deprecated Use `customerUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CustomerDefaultAddressUpdatePayload' +} + + +/** Possible error codes that can be returned by `CustomerUserError`. */ +export type CustomerErrorCode = 'BLANK' | 'INVALID' | 'TAKEN' | 'TOO_LONG' | 'TOO_SHORT' | 'UNIDENTIFIED_CUSTOMER' | 'CUSTOMER_DISABLED' | 'PASSWORD_STARTS_OR_ENDS_WITH_WHITESPACE' | 'CONTAINS_HTML_TAGS' | 'CONTAINS_URL' | 'TOKEN_INVALID' | 'ALREADY_ENABLED' | 'NOT_FOUND' | 'BAD_DOMAIN' | 'INVALID_MULTIPASS_REQUEST' + + +/** Return type for `customerRecover` mutation. */ +export interface CustomerRecoverPayload { + /** The list of errors that occurred from executing the mutation. */ + customerUserErrors: CustomerUserError[] + /** + * @deprecated Use `customerUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CustomerRecoverPayload' +} + + +/** Return type for `customerResetByUrl` mutation. */ +export interface CustomerResetByUrlPayload { + /** The customer object which was reset. */ + customer?: Customer + /** A newly created customer access token object for the customer. */ + customerAccessToken?: CustomerAccessToken + /** The list of errors that occurred from executing the mutation. */ + customerUserErrors: CustomerUserError[] + /** + * @deprecated Use `customerUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CustomerResetByUrlPayload' +} + + +/** Return type for `customerReset` mutation. */ +export interface CustomerResetPayload { + /** The customer object which was reset. */ + customer?: Customer + /** A newly created customer access token object for the customer. */ + customerAccessToken?: CustomerAccessToken + /** The list of errors that occurred from executing the mutation. */ + customerUserErrors: CustomerUserError[] + /** + * @deprecated Use `customerUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CustomerResetPayload' +} + + +/** Return type for `customerUpdate` mutation. */ +export interface CustomerUpdatePayload { + /** The updated customer object. */ + customer?: Customer + /** + * The newly created customer access token. If the customer's password is updated, all previous access tokens + * (including the one used to perform this mutation) become invalid, and a new token is generated. + * + */ + customerAccessToken?: CustomerAccessToken + /** The list of errors that occurred from executing the mutation. */ + customerUserErrors: CustomerUserError[] + /** + * @deprecated Use `customerUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors: UserError[] + __typename: 'CustomerUpdatePayload' +} + + +/** Represents an error that happens during execution of a customer mutation. */ +export interface CustomerUserError { + /** The error code. */ + code?: CustomerErrorCode + /** The path to the input field that caused the error. */ + field?: Scalars['String'][] + /** The error message. */ + message: Scalars['String'] + __typename: 'CustomerUserError' +} + + +/** A delivery address of the buyer that is interacting with the cart. */ +export type DeliveryAddress = (MailingAddress) & { __isUnion?: true } + + +/** List of different delivery method types. */ +export type DeliveryMethodType = 'SHIPPING' | 'PICK_UP' | 'RETAIL' | 'LOCAL' | 'PICKUP_POINT' | 'NONE' + + +/** Digital wallet, such as Apple Pay, which can be used for accelerated checkouts. */ +export type DigitalWallet = 'APPLE_PAY' | 'ANDROID_PAY' | 'GOOGLE_PAY' | 'SHOPIFY_PAY' + + +/** + * An amount discounting the line that has been allocated by a discount. + * + */ +export interface DiscountAllocation { + /** Amount of discount allocated. */ + allocatedAmount: MoneyV2 + /** The discount this allocated amount originated from. */ + discountApplication: DiscountApplication + __typename: 'DiscountAllocation' +} + + +/** + * Discount applications capture the intentions of a discount source at + * the time of application. + * + */ +export type DiscountApplication = (AutomaticDiscountApplication | DiscountCodeApplication | ManualDiscountApplication | ScriptDiscountApplication) & { __isUnion?: true } + + +/** The method by which the discount's value is allocated onto its entitled lines. */ +export type DiscountApplicationAllocationMethod = 'ACROSS' | 'EACH' | 'ONE' + + +/** + * An auto-generated type for paginating through multiple DiscountApplications. + * + */ +export interface DiscountApplicationConnection { + /** A list of edges. */ + edges: DiscountApplicationEdge[] + /** A list of the nodes contained in DiscountApplicationEdge. */ + nodes: DiscountApplication[] + /** Information to aid in pagination. */ + pageInfo: PageInfo + __typename: 'DiscountApplicationConnection' +} + + +/** + * An auto-generated type which holds one DiscountApplication and a cursor during pagination. + * + */ +export interface DiscountApplicationEdge { + /** A cursor for use in pagination. */ + cursor: Scalars['String'] + /** The item at the end of DiscountApplicationEdge. */ + node: DiscountApplication + __typename: 'DiscountApplicationEdge' +} + + +/** + * The lines on the order to which the discount is applied, of the type defined by + * the discount application's `targetType`. For example, the value `ENTITLED`, combined with a `targetType` of + * `LINE_ITEM`, applies the discount on all line items that are entitled to the discount. + * The value `ALL`, combined with a `targetType` of `SHIPPING_LINE`, applies the discount on all shipping lines. + * + */ +export type DiscountApplicationTargetSelection = 'ALL' | 'ENTITLED' | 'EXPLICIT' + + +/** + * The type of line (i.e. line item or shipping line) on an order that the discount is applicable towards. + * + */ +export type DiscountApplicationTargetType = 'LINE_ITEM' | 'SHIPPING_LINE' + + +/** + * Discount code applications capture the intentions of a discount code at + * the time that it is applied. + * + */ +export interface DiscountCodeApplication { + /** The method by which the discount's value is allocated to its entitled items. */ + allocationMethod: DiscountApplicationAllocationMethod + /** Specifies whether the discount code was applied successfully. */ + applicable: Scalars['Boolean'] + /** The string identifying the discount code that was used at the time of application. */ + code: Scalars['String'] + /** Which lines of targetType that the discount is allocated over. */ + targetSelection: DiscountApplicationTargetSelection + /** The type of line that the discount is applicable towards. */ + targetType: DiscountApplicationTargetType + /** The value of the discount application. */ + value: PricingValue + __typename: 'DiscountCodeApplication' +} + + +/** Represents an error in the input of a mutation. */ +export type DisplayableError = (CartUserError | CheckoutUserError | CustomerUserError | UserError) & { __isUnion?: true } + + +/** Represents a web address. */ +export interface Domain { + /** The host name of the domain (eg: `example.com`). */ + host: Scalars['String'] + /** Whether SSL is enabled or not. */ + sslEnabled: Scalars['Boolean'] + /** The URL of the domain (eg: `https://example.com`). */ + url: Scalars['URL'] + __typename: 'Domain' +} + + +/** Represents a video hosted outside of Shopify. */ +export interface ExternalVideo { + /** A word or phrase to share the nature or contents of a media. */ + alt?: Scalars['String'] + /** The embed URL of the video for the respective host. */ + embedUrl: Scalars['URL'] + /** + * @deprecated Use `originUrl` instead. + * The URL. + */ + embeddedUrl: Scalars['URL'] + /** The host of the external video. */ + host: MediaHost + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** The media content type. */ + mediaContentType: MediaContentType + /** The origin URL of the video on the respective host. */ + originUrl: Scalars['URL'] + /** The preview image for the media. */ + previewImage?: Image + __typename: 'ExternalVideo' +} + + +/** A filter that is supported on the parent field. */ +export interface Filter { + /** A unique identifier. */ + id: Scalars['String'] + /** A human-friendly string for this filter. */ + label: Scalars['String'] + /** An enumeration that denotes the type of data this filter represents. */ + type: FilterType + /** The list of values for this filter. */ + values: FilterValue[] + __typename: 'Filter' +} + + +/** + * The type of data that the filter group represents. + * + * For more information, refer to [Filter products in a collection with the Storefront API] + * (https://shopify.dev/custom-storefronts/products-collections/filter-products). + * + */ +export type FilterType = 'LIST' | 'PRICE_RANGE' | 'BOOLEAN' + + +/** A selectable value within a filter. */ +export interface FilterValue { + /** The number of results that match this filter value. */ + count: Scalars['Int'] + /** A unique identifier. */ + id: Scalars['String'] + /** + * An input object that can be used to filter by this value on the parent field. + * + * The value is provided as a helper for building dynamic filtering UI. For example, if you have a list of selected `FilterValue` objects, you can combine their respective `input` values to use in a subsequent query. + * + */ + input: Scalars['JSON'] + /** A human-friendly string for this filter value. */ + label: Scalars['String'] + __typename: 'FilterValue' +} + + +/** Represents a single fulfillment in an order. */ +export interface Fulfillment { + /** List of the fulfillment's line items. */ + fulfillmentLineItems: FulfillmentLineItemConnection + /** The name of the tracking company. */ + trackingCompany?: Scalars['String'] + /** + * Tracking information associated with the fulfillment, + * such as the tracking number and tracking URL. + * + */ + trackingInfo: FulfillmentTrackingInfo[] + __typename: 'Fulfillment' +} + + +/** Represents a single line item in a fulfillment. There is at most one fulfillment line item for each order line item. */ +export interface FulfillmentLineItem { + /** The associated order's line item. */ + lineItem: OrderLineItem + /** The amount fulfilled in this fulfillment. */ + quantity: Scalars['Int'] + __typename: 'FulfillmentLineItem' +} + + +/** + * An auto-generated type for paginating through multiple FulfillmentLineItems. + * + */ +export interface FulfillmentLineItemConnection { + /** A list of edges. */ + edges: FulfillmentLineItemEdge[] + /** A list of the nodes contained in FulfillmentLineItemEdge. */ + nodes: FulfillmentLineItem[] + /** Information to aid in pagination. */ + pageInfo: PageInfo + __typename: 'FulfillmentLineItemConnection' +} + + +/** + * An auto-generated type which holds one FulfillmentLineItem and a cursor during pagination. + * + */ +export interface FulfillmentLineItemEdge { + /** A cursor for use in pagination. */ + cursor: Scalars['String'] + /** The item at the end of FulfillmentLineItemEdge. */ + node: FulfillmentLineItem + __typename: 'FulfillmentLineItemEdge' +} + + +/** Tracking information associated with the fulfillment. */ +export interface FulfillmentTrackingInfo { + /** The tracking number of the fulfillment. */ + number?: Scalars['String'] + /** The URL to track the fulfillment. */ + url?: Scalars['URL'] + __typename: 'FulfillmentTrackingInfo' +} + + +/** The generic file resource lets you manage files in a merchant’s store. Generic files include any file that doesn’t fit into a designated type such as image or video. Example: PDF, JSON. */ +export interface GenericFile { + /** A word or phrase to indicate the contents of a file. */ + alt?: Scalars['String'] + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** The MIME type of the file. */ + mimeType?: Scalars['String'] + /** The size of the original file in bytes. */ + originalFileSize?: Scalars['Int'] + /** The preview image for the file. */ + previewImage?: Image + /** The URL of the file. */ + url?: Scalars['URL'] + __typename: 'GenericFile' +} + + +/** Represents information about the metafields associated to the specified resource. */ +export type HasMetafields = (Article | Blog | Collection | Customer | Order | Page | Product | ProductVariant | Shop) & { __isUnion?: true } + + +/** Represents an image resource. */ +export interface Image { + /** A word or phrase to share the nature or contents of an image. */ + altText?: Scalars['String'] + /** The original height of the image in pixels. Returns `null` if the image is not hosted by Shopify. */ + height?: Scalars['Int'] + /** A unique identifier for the image. */ + id?: Scalars['ID'] + /** + * @deprecated Use `url` instead. + * The location of the original image as a URL. + * + * If there are any existing transformations in the original source URL, they will remain and not be stripped. + * + */ + originalSrc: Scalars['URL'] + /** + * @deprecated Use `url` instead. + * The location of the image as a URL. + */ + src: Scalars['URL'] + /** + * @deprecated Use `url(transform:)` instead + * The location of the transformed image as a URL. + * + * All transformation arguments are considered "best-effort". If they can be applied to an image, they will be. + * Otherwise any transformations which an image type does not support will be ignored. + * + */ + transformedSrc: Scalars['URL'] + /** + * The location of the image as a URL. + * + * If no transform options are specified, then the original image will be preserved including any pre-applied transforms. + * + * All transformation options are considered "best-effort". Any transformation that the original image type doesn't support will be ignored. + * + * If you need multiple variations of the same image, then you can use [GraphQL aliases](https://graphql.org/learn/queries/#aliases). + * + */ + url: Scalars['URL'] + /** The original width of the image in pixels. Returns `null` if the image is not hosted by Shopify. */ + width?: Scalars['Int'] + __typename: 'Image' +} + + +/** + * An auto-generated type for paginating through multiple Images. + * + */ +export interface ImageConnection { + /** A list of edges. */ + edges: ImageEdge[] + /** A list of the nodes contained in ImageEdge. */ + nodes: Image[] + /** Information to aid in pagination. */ + pageInfo: PageInfo + __typename: 'ImageConnection' +} + + +/** List of supported image content types. */ +export type ImageContentType = 'PNG' | 'JPG' | 'WEBP' + + +/** + * An auto-generated type which holds one Image and a cursor during pagination. + * + */ +export interface ImageEdge { + /** A cursor for use in pagination. */ + cursor: Scalars['String'] + /** The item at the end of ImageEdge. */ + node: Image + __typename: 'ImageEdge' +} + + +/** A language. */ +export interface Language { + /** The name of the language in the language itself. If the language uses capitalization, it is capitalized for a mid-sentence position. */ + endonymName: Scalars['String'] + /** The ISO code. */ + isoCode: LanguageCode + /** The name of the language in the current language. */ + name: Scalars['String'] + __typename: 'Language' +} + + +/** ISO 639-1 language codes supported by Shopify. */ +export type LanguageCode = 'AF' | 'AK' | 'AM' | 'AR' | 'AS' | 'AZ' | 'BE' | 'BG' | 'BM' | 'BN' | 'BO' | 'BR' | 'BS' | 'CA' | 'CE' | 'CS' | 'CY' | 'DA' | 'DE' | 'DZ' | 'EE' | 'EL' | 'EN' | 'EO' | 'ES' | 'ET' | 'EU' | 'FA' | 'FF' | 'FI' | 'FO' | 'FR' | 'FY' | 'GA' | 'GD' | 'GL' | 'GU' | 'GV' | 'HA' | 'HE' | 'HI' | 'HR' | 'HU' | 'HY' | 'IA' | 'ID' | 'IG' | 'II' | 'IS' | 'IT' | 'JA' | 'JV' | 'KA' | 'KI' | 'KK' | 'KL' | 'KM' | 'KN' | 'KO' | 'KS' | 'KU' | 'KW' | 'KY' | 'LB' | 'LG' | 'LN' | 'LO' | 'LT' | 'LU' | 'LV' | 'MG' | 'MI' | 'MK' | 'ML' | 'MN' | 'MR' | 'MS' | 'MT' | 'MY' | 'NB' | 'ND' | 'NE' | 'NL' | 'NN' | 'NO' | 'OM' | 'OR' | 'OS' | 'PA' | 'PL' | 'PS' | 'PT_BR' | 'PT_PT' | 'QU' | 'RM' | 'RN' | 'RO' | 'RU' | 'RW' | 'SD' | 'SE' | 'SG' | 'SI' | 'SK' | 'SL' | 'SN' | 'SO' | 'SQ' | 'SR' | 'SU' | 'SV' | 'SW' | 'TA' | 'TE' | 'TG' | 'TH' | 'TI' | 'TK' | 'TO' | 'TR' | 'TT' | 'UG' | 'UK' | 'UR' | 'UZ' | 'VI' | 'WO' | 'XH' | 'YI' | 'YO' | 'ZH_CN' | 'ZH_TW' | 'ZU' | 'ZH' | 'PT' | 'CU' | 'VO' + + +/** Information about the localized experiences configured for the shop. */ +export interface Localization { + /** The list of countries with enabled localized experiences. */ + availableCountries: Country[] + /** The list of languages available for the active country. */ + availableLanguages: Language[] + /** The country of the active localized experience. Use the `@inContext` directive to change this value. */ + country: Country + /** The language of the active localized experience. Use the `@inContext` directive to change this value. */ + language: Language + __typename: 'Localization' +} + + +/** Represents a location where product inventory is held. */ +export interface Location { + /** The address of the location. */ + address: LocationAddress + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** The name of the location. */ + name: Scalars['String'] + __typename: 'Location' +} + + +/** + * Represents the address of a location. + * + */ +export interface LocationAddress { + /** The first line of the address for the location. */ + address1?: Scalars['String'] + /** The second line of the address for the location. */ + address2?: Scalars['String'] + /** The city of the location. */ + city?: Scalars['String'] + /** The country of the location. */ + country?: Scalars['String'] + /** The country code of the location. */ + countryCode?: Scalars['String'] + /** A formatted version of the address for the location. */ + formatted: Scalars['String'][] + /** The latitude coordinates of the location. */ + latitude?: Scalars['Float'] + /** The longitude coordinates of the location. */ + longitude?: Scalars['Float'] + /** The phone number of the location. */ + phone?: Scalars['String'] + /** The province of the location. */ + province?: Scalars['String'] + /** + * The code for the province, state, or district of the address of the location. + * + */ + provinceCode?: Scalars['String'] + /** The ZIP code of the location. */ + zip?: Scalars['String'] + __typename: 'LocationAddress' +} + + +/** + * An auto-generated type for paginating through multiple Locations. + * + */ +export interface LocationConnection { + /** A list of edges. */ + edges: LocationEdge[] + /** A list of the nodes contained in LocationEdge. */ + nodes: Location[] + /** Information to aid in pagination. */ + pageInfo: PageInfo + __typename: 'LocationConnection' +} + + +/** + * An auto-generated type which holds one Location and a cursor during pagination. + * + */ +export interface LocationEdge { + /** A cursor for use in pagination. */ + cursor: Scalars['String'] + /** The item at the end of LocationEdge. */ + node: Location + __typename: 'LocationEdge' +} + + +/** The set of valid sort keys for the Location query. */ +export type LocationSortKeys = 'ID' | 'NAME' | 'CITY' | 'DISTANCE' + + +/** Represents a mailing address for customers and shipping. */ +export interface MailingAddress { + /** The first line of the address. Typically the street address or PO Box number. */ + address1?: Scalars['String'] + /** + * The second line of the address. Typically the number of the apartment, suite, or unit. + * + */ + address2?: Scalars['String'] + /** + * The name of the city, district, village, or town. + * + */ + city?: Scalars['String'] + /** + * The name of the customer's company or organization. + * + */ + company?: Scalars['String'] + /** + * The name of the country. + * + */ + country?: Scalars['String'] + /** + * @deprecated Use `countryCodeV2` instead. + * The two-letter code for the country of the address. + * + * For example, US. + * + */ + countryCode?: Scalars['String'] + /** + * The two-letter code for the country of the address. + * + * For example, US. + * + */ + countryCodeV2?: CountryCode + /** The first name of the customer. */ + firstName?: Scalars['String'] + /** A formatted version of the address, customized by the provided arguments. */ + formatted: Scalars['String'][] + /** A comma-separated list of the values for city, province, and country. */ + formattedArea?: Scalars['String'] + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** The last name of the customer. */ + lastName?: Scalars['String'] + /** The latitude coordinate of the customer address. */ + latitude?: Scalars['Float'] + /** The longitude coordinate of the customer address. */ + longitude?: Scalars['Float'] + /** + * The full name of the customer, based on firstName and lastName. + * + */ + name?: Scalars['String'] + /** + * A unique phone number for the customer. + * + * Formatted using E.164 standard. For example, _+16135551111_. + * + */ + phone?: Scalars['String'] + /** The region of the address, such as the province, state, or district. */ + province?: Scalars['String'] + /** + * The two-letter code for the region. + * + * For example, ON. + * + */ + provinceCode?: Scalars['String'] + /** The zip or postal code of the address. */ + zip?: Scalars['String'] + __typename: 'MailingAddress' +} + + +/** + * An auto-generated type for paginating through multiple MailingAddresses. + * + */ +export interface MailingAddressConnection { + /** A list of edges. */ + edges: MailingAddressEdge[] + /** A list of the nodes contained in MailingAddressEdge. */ + nodes: MailingAddress[] + /** Information to aid in pagination. */ + pageInfo: PageInfo + __typename: 'MailingAddressConnection' +} + + +/** + * An auto-generated type which holds one MailingAddress and a cursor during pagination. + * + */ +export interface MailingAddressEdge { + /** A cursor for use in pagination. */ + cursor: Scalars['String'] + /** The item at the end of MailingAddressEdge. */ + node: MailingAddress + __typename: 'MailingAddressEdge' +} + + +/** + * Manual discount applications capture the intentions of a discount that was manually created. + * + */ +export interface ManualDiscountApplication { + /** The method by which the discount's value is allocated to its entitled items. */ + allocationMethod: DiscountApplicationAllocationMethod + /** The description of the application. */ + description?: Scalars['String'] + /** Which lines of targetType that the discount is allocated over. */ + targetSelection: DiscountApplicationTargetSelection + /** The type of line that the discount is applicable towards. */ + targetType: DiscountApplicationTargetType + /** The title of the application. */ + title: Scalars['String'] + /** The value of the discount application. */ + value: PricingValue + __typename: 'ManualDiscountApplication' +} + + +/** Represents a media interface. */ +export type Media = (ExternalVideo | MediaImage | Model3d | Video) & { __isUnion?: true } + + +/** + * An auto-generated type for paginating through multiple Media. + * + */ +export interface MediaConnection { + /** A list of edges. */ + edges: MediaEdge[] + /** A list of the nodes contained in MediaEdge. */ + nodes: Media[] + /** Information to aid in pagination. */ + pageInfo: PageInfo + __typename: 'MediaConnection' +} + + +/** The possible content types for a media object. */ +export type MediaContentType = 'EXTERNAL_VIDEO' | 'IMAGE' | 'MODEL_3D' | 'VIDEO' + + +/** + * An auto-generated type which holds one Media and a cursor during pagination. + * + */ +export interface MediaEdge { + /** A cursor for use in pagination. */ + cursor: Scalars['String'] + /** The item at the end of MediaEdge. */ + node: Media + __typename: 'MediaEdge' +} + + +/** Host for a Media Resource. */ +export type MediaHost = 'YOUTUBE' | 'VIMEO' + + +/** Represents a Shopify hosted image. */ +export interface MediaImage { + /** A word or phrase to share the nature or contents of a media. */ + alt?: Scalars['String'] + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** The image for the media. */ + image?: Image + /** The media content type. */ + mediaContentType: MediaContentType + /** The preview image for the media. */ + previewImage?: Image + __typename: 'MediaImage' +} + + +/** + * A menu used for navigation within a storefront. + * + */ +export interface Menu { + /** The menu's handle. */ + handle: Scalars['String'] + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** The menu's child items. */ + items: MenuItem[] + /** The count of items on the menu. */ + itemsCount: Scalars['Int'] + /** The menu's title. */ + title: Scalars['String'] + __typename: 'Menu' +} + + +/** + * A menu item within a parent menu. + * + */ +export interface MenuItem { + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** The menu item's child items. */ + items: MenuItem[] + /** The ID of the linked resource. */ + resourceId?: Scalars['ID'] + /** The menu item's tags to filter a collection. */ + tags: Scalars['String'][] + /** The menu item's title. */ + title: Scalars['String'] + /** The menu item's type. */ + type: MenuItemType + /** The menu item's URL. */ + url?: Scalars['URL'] + __typename: 'MenuItem' +} + + +/** A menu item type. */ +export type MenuItemType = 'FRONTPAGE' | 'COLLECTION' | 'COLLECTIONS' | 'PRODUCT' | 'CATALOG' | 'PAGE' | 'BLOG' | 'ARTICLE' | 'SEARCH' | 'SHOP_POLICY' | 'HTTP' + + +/** The merchandise to be purchased at checkout. */ +export type Merchandise = (ProductVariant) & { __isUnion?: true } + + +/** + * Metafields represent custom metadata attached to a resource. Metafields can be sorted into namespaces and are + * comprised of keys, values, and value types. + * + */ +export interface Metafield { + /** The date and time when the storefront metafield was created. */ + createdAt: Scalars['DateTime'] + /** The description of a metafield. */ + description?: Scalars['String'] + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** The key name for a metafield. */ + key: Scalars['String'] + /** The namespace for a metafield. */ + namespace: Scalars['String'] + /** The parent object that the metafield belongs to. */ + parentResource: MetafieldParentResource + /** Returns a reference object if the metafield definition's type is a resource reference. */ + reference?: MetafieldReference + /** A list of reference objects if the metafield's type is a resource reference list. */ + references?: MetafieldReferenceConnection + /** + * The type name of the metafield. + * See the list of [supported types](https://shopify.dev/apps/metafields/definitions/types). + * + */ + type: Scalars['String'] + /** The date and time when the storefront metafield was updated. */ + updatedAt: Scalars['DateTime'] + /** The value of a metafield. */ + value: Scalars['String'] + __typename: 'Metafield' +} + + +/** A resource that the metafield belongs to. */ +export type MetafieldParentResource = (Article | Blog | Collection | Customer | Order | Page | Product | ProductVariant | Shop) & { __isUnion?: true } + + +/** + * Returns the resource which is being referred to by a metafield. + * + */ +export type MetafieldReference = (Collection | GenericFile | MediaImage | Metaobject | Page | Product | ProductVariant | Video) & { __isUnion?: true } + + +/** + * An auto-generated type for paginating through multiple MetafieldReferences. + * + */ +export interface MetafieldReferenceConnection { + /** A list of edges. */ + edges: MetafieldReferenceEdge[] + /** A list of the nodes contained in MetafieldReferenceEdge. */ + nodes: MetafieldReference[] + /** Information to aid in pagination. */ + pageInfo: PageInfo + __typename: 'MetafieldReferenceConnection' +} + + +/** + * An auto-generated type which holds one MetafieldReference and a cursor during pagination. + * + */ +export interface MetafieldReferenceEdge { + /** A cursor for use in pagination. */ + cursor: Scalars['String'] + /** The item at the end of MetafieldReferenceEdge. */ + node: MetafieldReference + __typename: 'MetafieldReferenceEdge' +} + + +/** An instance of a user-defined model based on a MetaobjectDefinition. */ +export interface Metaobject { + /** Accesses a field of the object by key. */ + field?: MetaobjectField + /** + * All object fields with defined values. + * Omitted object keys can be assumed null, and no guarantees are made about field order. + * + */ + fields: MetaobjectField[] + /** The unique handle of the metaobject. Useful as a custom ID. */ + handle: Scalars['String'] + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** The type of the metaobject. Defines the namespace of its associated metafields. */ + type: Scalars['String'] + /** The date and time when the metaobject was last updated. */ + updatedAt: Scalars['DateTime'] + __typename: 'Metaobject' +} + + +/** + * An auto-generated type for paginating through multiple Metaobjects. + * + */ +export interface MetaobjectConnection { + /** A list of edges. */ + edges: MetaobjectEdge[] + /** A list of the nodes contained in MetaobjectEdge. */ + nodes: Metaobject[] + /** Information to aid in pagination. */ + pageInfo: PageInfo + __typename: 'MetaobjectConnection' +} + + +/** + * An auto-generated type which holds one Metaobject and a cursor during pagination. + * + */ +export interface MetaobjectEdge { + /** A cursor for use in pagination. */ + cursor: Scalars['String'] + /** The item at the end of MetaobjectEdge. */ + node: Metaobject + __typename: 'MetaobjectEdge' +} + + +/** Provides the value of a Metaobject field. */ +export interface MetaobjectField { + /** The field key. */ + key: Scalars['String'] + /** A referenced object if the field type is a resource reference. */ + reference?: MetafieldReference + /** A list of referenced objects if the field type is a resource reference list. */ + references?: MetafieldReferenceConnection + /** + * The type name of the field. + * See the list of [supported types](https://shopify.dev/apps/metafields/definitions/types). + * + */ + type: Scalars['String'] + /** The field value. */ + value?: Scalars['String'] + __typename: 'MetaobjectField' +} + + +/** Represents a Shopify hosted 3D model. */ +export interface Model3d { + /** A word or phrase to share the nature or contents of a media. */ + alt?: Scalars['String'] + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** The media content type. */ + mediaContentType: MediaContentType + /** The preview image for the media. */ + previewImage?: Image + /** The sources for a 3d model. */ + sources: Model3dSource[] + __typename: 'Model3d' +} + + +/** Represents a source for a Shopify hosted 3d model. */ +export interface Model3dSource { + /** The filesize of the 3d model. */ + filesize: Scalars['Int'] + /** The format of the 3d model. */ + format: Scalars['String'] + /** The MIME type of the 3d model. */ + mimeType: Scalars['String'] + /** The URL of the 3d model. */ + url: Scalars['String'] + __typename: 'Model3dSource' +} + + +/** + * A monetary value with currency. + * + */ +export interface MoneyV2 { + /** Decimal money amount. */ + amount: Scalars['Decimal'] + /** Currency of the money. */ + currencyCode: CurrencyCode + __typename: 'MoneyV2' +} + + +/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ +export interface Mutation { + /** Updates the attributes on a cart. */ + cartAttributesUpdate?: CartAttributesUpdatePayload + /** + * Updates customer information associated with a cart. + * Buyer identity is used to determine + * [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing) + * and should match the customer's shipping address. + * + */ + cartBuyerIdentityUpdate?: CartBuyerIdentityUpdatePayload + /** Creates a new cart. */ + cartCreate?: CartCreatePayload + /** Updates the discount codes applied to the cart. */ + cartDiscountCodesUpdate?: CartDiscountCodesUpdatePayload + /** Adds a merchandise line to the cart. */ + cartLinesAdd?: CartLinesAddPayload + /** Removes one or more merchandise lines from the cart. */ + cartLinesRemove?: CartLinesRemovePayload + /** Updates one or more merchandise lines on a cart. */ + cartLinesUpdate?: CartLinesUpdatePayload + /** Updates the note on the cart. */ + cartNoteUpdate?: CartNoteUpdatePayload + /** Update the selected delivery options for a delivery group. */ + cartSelectedDeliveryOptionsUpdate?: CartSelectedDeliveryOptionsUpdatePayload + /** Updates the attributes of a checkout if `allowPartialAddresses` is `true`. */ + checkoutAttributesUpdateV2?: CheckoutAttributesUpdateV2Payload + /** Completes a checkout without providing payment information. You can use this mutation for free items or items whose purchase price is covered by a gift card. */ + checkoutCompleteFree?: CheckoutCompleteFreePayload + /** Completes a checkout using a credit card token from Shopify's card vault. Before you can complete checkouts using CheckoutCompleteWithCreditCardV2, you need to [_request payment processing_](https://shopify.dev/apps/channels/getting-started#request-payment-processing). */ + checkoutCompleteWithCreditCardV2?: CheckoutCompleteWithCreditCardV2Payload + /** Completes a checkout with a tokenized payment. */ + checkoutCompleteWithTokenizedPaymentV3?: CheckoutCompleteWithTokenizedPaymentV3Payload + /** Creates a new checkout. */ + checkoutCreate?: CheckoutCreatePayload + /** Associates a customer to the checkout. */ + checkoutCustomerAssociateV2?: CheckoutCustomerAssociateV2Payload + /** Disassociates the current checkout customer from the checkout. */ + checkoutCustomerDisassociateV2?: CheckoutCustomerDisassociateV2Payload + /** Applies a discount to an existing checkout using a discount code. */ + checkoutDiscountCodeApplyV2?: CheckoutDiscountCodeApplyV2Payload + /** Removes the applied discounts from an existing checkout. */ + checkoutDiscountCodeRemove?: CheckoutDiscountCodeRemovePayload + /** Updates the email on an existing checkout. */ + checkoutEmailUpdateV2?: CheckoutEmailUpdateV2Payload + /** Removes an applied gift card from the checkout. */ + checkoutGiftCardRemoveV2?: CheckoutGiftCardRemoveV2Payload + /** Appends gift cards to an existing checkout. */ + checkoutGiftCardsAppend?: CheckoutGiftCardsAppendPayload + /** Adds a list of line items to a checkout. */ + checkoutLineItemsAdd?: CheckoutLineItemsAddPayload + /** Removes line items from an existing checkout. */ + checkoutLineItemsRemove?: CheckoutLineItemsRemovePayload + /** Sets a list of line items to a checkout. */ + checkoutLineItemsReplace?: CheckoutLineItemsReplacePayload + /** Updates line items on a checkout. */ + checkoutLineItemsUpdate?: CheckoutLineItemsUpdatePayload + /** Updates the shipping address of an existing checkout. */ + checkoutShippingAddressUpdateV2?: CheckoutShippingAddressUpdateV2Payload + /** Updates the shipping lines on an existing checkout. */ + checkoutShippingLineUpdate?: CheckoutShippingLineUpdatePayload + /** + * Creates a customer access token. + * The customer access token is required to modify the customer object in any way. + * + */ + customerAccessTokenCreate?: CustomerAccessTokenCreatePayload + /** + * Creates a customer access token using a + * [multipass token](https://shopify.dev/api/multipass) instead of email and + * password. A customer record is created if the customer doesn't exist. If a customer + * record already exists but the record is disabled, then the customer record is enabled. + * + */ + customerAccessTokenCreateWithMultipass?: CustomerAccessTokenCreateWithMultipassPayload + /** Permanently destroys a customer access token. */ + customerAccessTokenDelete?: CustomerAccessTokenDeletePayload + /** + * Renews a customer access token. + * + * Access token renewal must happen *before* a token expires. + * If a token has already expired, a new one should be created instead via `customerAccessTokenCreate`. + * + */ + customerAccessTokenRenew?: CustomerAccessTokenRenewPayload + /** Activates a customer. */ + customerActivate?: CustomerActivatePayload + /** Activates a customer with the activation url received from `customerCreate`. */ + customerActivateByUrl?: CustomerActivateByUrlPayload + /** Creates a new address for a customer. */ + customerAddressCreate?: CustomerAddressCreatePayload + /** Permanently deletes the address of an existing customer. */ + customerAddressDelete?: CustomerAddressDeletePayload + /** Updates the address of an existing customer. */ + customerAddressUpdate?: CustomerAddressUpdatePayload + /** Creates a new customer. */ + customerCreate?: CustomerCreatePayload + /** Updates the default address of an existing customer. */ + customerDefaultAddressUpdate?: CustomerDefaultAddressUpdatePayload + /** + * Sends a reset password email to the customer. The reset password + * email contains a reset password URL and token that you can pass to + * the [`customerResetByUrl`](https://shopify.dev/api/storefront/latest/mutations/customerResetByUrl) or + * [`customerReset`](https://shopify.dev/api/storefront/latest/mutations/customerReset) mutation to reset the + * customer password. + * + * This mutation is throttled by IP. With authenticated access, + * you can provide a [`Shopify-Storefront-Buyer-IP`](https://shopify.dev/api/usage/authentication#optional-ip-header) instead of the request IP. + * + * Make sure that the value provided to `Shopify-Storefront-Buyer-IP` is trusted. Unthrottled access to this + * mutation presents a security risk. + * + */ + customerRecover?: CustomerRecoverPayload + /** + * "Resets a customer’s password with the token received from a reset password email. You can send a reset password email with the [`customerRecover`](https://shopify.dev/api/storefront/latest/mutations/customerRecover) mutation." + * + */ + customerReset?: CustomerResetPayload + /** + * "Resets a customer’s password with the reset password URL received from a reset password email. You can send a reset password email with the [`customerRecover`](https://shopify.dev/api/storefront/latest/mutations/customerRecover) mutation." + * + */ + customerResetByUrl?: CustomerResetByUrlPayload + /** Updates an existing customer. */ + customerUpdate?: CustomerUpdatePayload + __typename: 'Mutation' +} + + +/** + * An object with an ID field to support global identification, in accordance with the + * [Relay specification](https://relay.dev/graphql/objectidentification.htm#sec-Node-Interface). + * This interface is used by the [node](https://shopify.dev/api/admin-graphql/unstable/queries/node) + * and [nodes](https://shopify.dev/api/admin-graphql/unstable/queries/nodes) queries. + * + */ +export type Node = (AppliedGiftCard | Article | Blog | Cart | CartLine | Checkout | CheckoutLineItem | Collection | Comment | ExternalVideo | GenericFile | Location | MailingAddress | MediaImage | Menu | MenuItem | Metafield | Metaobject | Model3d | Order | Page | Payment | Product | ProductOption | ProductVariant | Shop | ShopPolicy | UrlRedirect | Video) & { __isUnion?: true } + + +/** Represents a resource that can be published to the Online Store sales channel. */ +export type OnlineStorePublishable = (Article | Blog | Collection | Page | Product) & { __isUnion?: true } + + +/** An order is a customer’s completed request to purchase one or more products from a shop. An order is created when a customer completes the checkout process, during which time they provides an email address, billing address and payment information. */ +export interface Order { + /** The reason for the order's cancellation. Returns `null` if the order wasn't canceled. */ + cancelReason?: OrderCancelReason + /** The date and time when the order was canceled. Returns null if the order wasn't canceled. */ + canceledAt?: Scalars['DateTime'] + /** The code of the currency used for the payment. */ + currencyCode: CurrencyCode + /** The subtotal of line items and their discounts, excluding line items that have been removed. Does not contain order-level discounts, duties, shipping costs, or shipping discounts. Taxes are not included unless the order is a taxes-included order. */ + currentSubtotalPrice: MoneyV2 + /** The total cost of duties for the order, including refunds. */ + currentTotalDuties?: MoneyV2 + /** The total amount of the order, including duties, taxes and discounts, minus amounts for line items that have been removed. */ + currentTotalPrice: MoneyV2 + /** The total of all taxes applied to the order, excluding taxes for returned line items. */ + currentTotalTax: MoneyV2 + /** A list of the custom attributes added to the order. */ + customAttributes: Attribute[] + /** The locale code in which this specific order happened. */ + customerLocale?: Scalars['String'] + /** The unique URL that the customer can use to access the order. */ + customerUrl?: Scalars['URL'] + /** Discounts that have been applied on the order. */ + discountApplications: DiscountApplicationConnection + /** Whether the order has had any edits applied or not. */ + edited: Scalars['Boolean'] + /** The customer's email address. */ + email?: Scalars['String'] + /** The financial status of the order. */ + financialStatus?: OrderFinancialStatus + /** The fulfillment status for the order. */ + fulfillmentStatus: OrderFulfillmentStatus + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** List of the order’s line items. */ + lineItems: OrderLineItemConnection + /** Returns a metafield found by namespace and key. */ + metafield?: Metafield + /** + * The metafields associated with the resource matching the supplied list of namespaces and keys. + * + */ + metafields: (Metafield | undefined)[] + /** + * Unique identifier for the order that appears on the order. + * For example, _#1000_ or _Store1001. + * + */ + name: Scalars['String'] + /** A unique numeric identifier for the order for use by shop owner and customer. */ + orderNumber: Scalars['Int'] + /** The total cost of duties charged at checkout. */ + originalTotalDuties?: MoneyV2 + /** The total price of the order before any applied edits. */ + originalTotalPrice: MoneyV2 + /** The customer's phone number for receiving SMS notifications. */ + phone?: Scalars['String'] + /** + * The date and time when the order was imported. + * This value can be set to dates in the past when importing from other systems. + * If no value is provided, it will be auto-generated based on current date and time. + * + */ + processedAt: Scalars['DateTime'] + /** The address to where the order will be shipped. */ + shippingAddress?: MailingAddress + /** + * The discounts that have been allocated onto the shipping line by discount applications. + * + */ + shippingDiscountAllocations: DiscountAllocation[] + /** The unique URL for the order's status page. */ + statusUrl: Scalars['URL'] + /** Price of the order before shipping and taxes. */ + subtotalPrice?: MoneyV2 + /** + * @deprecated Use `subtotalPrice` instead. + * Price of the order before duties, shipping and taxes. + */ + subtotalPriceV2?: MoneyV2 + /** List of the order’s successful fulfillments. */ + successfulFulfillments?: Fulfillment[] + /** The sum of all the prices of all the items in the order, duties, taxes and discounts included (must be positive). */ + totalPrice: MoneyV2 + /** + * @deprecated Use `totalPrice` instead. + * The sum of all the prices of all the items in the order, duties, taxes and discounts included (must be positive). + */ + totalPriceV2: MoneyV2 + /** The total amount that has been refunded. */ + totalRefunded: MoneyV2 + /** + * @deprecated Use `totalRefunded` instead. + * The total amount that has been refunded. + */ + totalRefundedV2: MoneyV2 + /** The total cost of shipping. */ + totalShippingPrice: MoneyV2 + /** + * @deprecated Use `totalShippingPrice` instead. + * The total cost of shipping. + */ + totalShippingPriceV2: MoneyV2 + /** The total cost of taxes. */ + totalTax?: MoneyV2 + /** + * @deprecated Use `totalTax` instead. + * The total cost of taxes. + */ + totalTaxV2?: MoneyV2 + __typename: 'Order' +} + + +/** Represents the reason for the order's cancellation. */ +export type OrderCancelReason = 'CUSTOMER' | 'DECLINED' | 'FRAUD' | 'INVENTORY' | 'OTHER' + + +/** + * An auto-generated type for paginating through multiple Orders. + * + */ +export interface OrderConnection { + /** A list of edges. */ + edges: OrderEdge[] + /** A list of the nodes contained in OrderEdge. */ + nodes: Order[] + /** Information to aid in pagination. */ + pageInfo: PageInfo + /** The total count of Orders. */ + totalCount: Scalars['UnsignedInt64'] + __typename: 'OrderConnection' +} + + +/** + * An auto-generated type which holds one Order and a cursor during pagination. + * + */ +export interface OrderEdge { + /** A cursor for use in pagination. */ + cursor: Scalars['String'] + /** The item at the end of OrderEdge. */ + node: Order + __typename: 'OrderEdge' +} + + +/** Represents the order's current financial status. */ +export type OrderFinancialStatus = 'PENDING' | 'AUTHORIZED' | 'PARTIALLY_PAID' | 'PARTIALLY_REFUNDED' | 'VOIDED' | 'PAID' | 'REFUNDED' + + +/** Represents the order's aggregated fulfillment status for display purposes. */ +export type OrderFulfillmentStatus = 'UNFULFILLED' | 'PARTIALLY_FULFILLED' | 'FULFILLED' | 'RESTOCKED' | 'PENDING_FULFILLMENT' | 'OPEN' | 'IN_PROGRESS' | 'ON_HOLD' | 'SCHEDULED' + + +/** Represents a single line in an order. There is one line item for each distinct product variant. */ +export interface OrderLineItem { + /** The number of entries associated to the line item minus the items that have been removed. */ + currentQuantity: Scalars['Int'] + /** List of custom attributes associated to the line item. */ + customAttributes: Attribute[] + /** The discounts that have been allocated onto the order line item by discount applications. */ + discountAllocations: DiscountAllocation[] + /** The total price of the line item, including discounts, and displayed in the presentment currency. */ + discountedTotalPrice: MoneyV2 + /** The total price of the line item, not including any discounts. The total price is calculated using the original unit price multiplied by the quantity, and it is displayed in the presentment currency. */ + originalTotalPrice: MoneyV2 + /** The number of products variants associated to the line item. */ + quantity: Scalars['Int'] + /** The title of the product combined with title of the variant. */ + title: Scalars['String'] + /** The product variant object associated to the line item. */ + variant?: ProductVariant + __typename: 'OrderLineItem' +} + + +/** + * An auto-generated type for paginating through multiple OrderLineItems. + * + */ +export interface OrderLineItemConnection { + /** A list of edges. */ + edges: OrderLineItemEdge[] + /** A list of the nodes contained in OrderLineItemEdge. */ + nodes: OrderLineItem[] + /** Information to aid in pagination. */ + pageInfo: PageInfo + __typename: 'OrderLineItemConnection' +} + + +/** + * An auto-generated type which holds one OrderLineItem and a cursor during pagination. + * + */ +export interface OrderLineItemEdge { + /** A cursor for use in pagination. */ + cursor: Scalars['String'] + /** The item at the end of OrderLineItemEdge. */ + node: OrderLineItem + __typename: 'OrderLineItemEdge' +} + + +/** The set of valid sort keys for the Order query. */ +export type OrderSortKeys = 'PROCESSED_AT' | 'TOTAL_PRICE' | 'ID' | 'RELEVANCE' + + +/** Shopify merchants can create pages to hold static HTML content. Each Page object represents a custom page on the online store. */ +export interface Page { + /** The description of the page, complete with HTML formatting. */ + body: Scalars['HTML'] + /** Summary of the page body. */ + bodySummary: Scalars['String'] + /** The timestamp of the page creation. */ + createdAt: Scalars['DateTime'] + /** A human-friendly unique string for the page automatically generated from its title. */ + handle: Scalars['String'] + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** Returns a metafield found by namespace and key. */ + metafield?: Metafield + /** + * The metafields associated with the resource matching the supplied list of namespaces and keys. + * + */ + metafields: (Metafield | undefined)[] + /** The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel. */ + onlineStoreUrl?: Scalars['URL'] + /** The page's SEO information. */ + seo?: SEO + /** The title of the page. */ + title: Scalars['String'] + /** The timestamp of the latest page update. */ + updatedAt: Scalars['DateTime'] + __typename: 'Page' +} + + +/** + * An auto-generated type for paginating through multiple Pages. + * + */ +export interface PageConnection { + /** A list of edges. */ + edges: PageEdge[] + /** A list of the nodes contained in PageEdge. */ + nodes: Page[] + /** Information to aid in pagination. */ + pageInfo: PageInfo + __typename: 'PageConnection' +} + + +/** + * An auto-generated type which holds one Page and a cursor during pagination. + * + */ +export interface PageEdge { + /** A cursor for use in pagination. */ + cursor: Scalars['String'] + /** The item at the end of PageEdge. */ + node: Page + __typename: 'PageEdge' +} + + +/** + * Returns information about pagination in a connection, in accordance with the + * [Relay specification](https://relay.dev/graphql/connections.htm#sec-undefined.PageInfo). + * For more information, please read our [GraphQL Pagination Usage Guide](https://shopify.dev/api/usage/pagination-graphql). + * + */ +export interface PageInfo { + /** The cursor corresponding to the last node in edges. */ + endCursor?: Scalars['String'] + /** Whether there are more pages to fetch following the current page. */ + hasNextPage: Scalars['Boolean'] + /** Whether there are any pages prior to the current page. */ + hasPreviousPage: Scalars['Boolean'] + /** The cursor corresponding to the first node in edges. */ + startCursor?: Scalars['String'] + __typename: 'PageInfo' +} + + +/** The set of valid sort keys for the Page query. */ +export type PageSortKeys = 'TITLE' | 'UPDATED_AT' | 'ID' | 'RELEVANCE' + + +/** A payment applied to a checkout. */ +export interface Payment { + /** The amount of the payment. */ + amount: MoneyV2 + /** + * @deprecated Use `amount` instead. + * The amount of the payment. + */ + amountV2: MoneyV2 + /** The billing address for the payment. */ + billingAddress?: MailingAddress + /** The checkout to which the payment belongs. */ + checkout: Checkout + /** The credit card used for the payment in the case of direct payments. */ + creditCard?: CreditCard + /** A message describing a processing error during asynchronous processing. */ + errorMessage?: Scalars['String'] + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** + * A client-side generated token to identify a payment and perform idempotent operations. + * For more information, refer to + * [Idempotent requests](https://shopify.dev/api/usage/idempotent-requests). + * + */ + idempotencyKey?: Scalars['String'] + /** The URL where the customer needs to be redirected so they can complete the 3D Secure payment flow. */ + nextActionUrl?: Scalars['URL'] + /** Whether the payment is still processing asynchronously. */ + ready: Scalars['Boolean'] + /** A flag to indicate if the payment is to be done in test mode for gateways that support it. */ + test: Scalars['Boolean'] + /** The actual transaction recorded by Shopify after having processed the payment with the gateway. */ + transaction?: Transaction + __typename: 'Payment' +} + + +/** Settings related to payments. */ +export interface PaymentSettings { + /** List of the card brands which the shop accepts. */ + acceptedCardBrands: CardBrand[] + /** The url pointing to the endpoint to vault credit cards. */ + cardVaultUrl: Scalars['URL'] + /** The country where the shop is located. */ + countryCode: CountryCode + /** The three-letter code for the shop's primary currency. */ + currencyCode: CurrencyCode + /** A list of enabled currencies (ISO 4217 format) that the shop accepts. Merchants can enable currencies from their Shopify Payments settings in the Shopify admin. */ + enabledPresentmentCurrencies: CurrencyCode[] + /** The shop’s Shopify Payments account id. */ + shopifyPaymentsAccountId?: Scalars['String'] + /** List of the digital wallets which the shop supports. */ + supportedDigitalWallets: DigitalWallet[] + __typename: 'PaymentSettings' +} + + +/** The valid values for the types of payment token. */ +export type PaymentTokenType = 'APPLE_PAY' | 'VAULT' | 'SHOPIFY_PAY' | 'GOOGLE_PAY' | 'STRIPE_VAULT_TOKEN' + + +/** The value of the percentage pricing object. */ +export interface PricingPercentageValue { + /** The percentage value of the object. */ + percentage: Scalars['Float'] + __typename: 'PricingPercentageValue' +} + + +/** The price value (fixed or percentage) for a discount application. */ +export type PricingValue = (MoneyV2 | PricingPercentageValue) & { __isUnion?: true } + + +/** + * A product represents an individual item for sale in a Shopify store. Products are often physical, but they don't have to be. + * For example, a digital download (such as a movie, music or ebook file) also qualifies as a product, as do services (such as equipment rental, work for hire, customization of another product or an extended warranty). + */ +export interface Product { + /** Indicates if at least one product variant is available for sale. */ + availableForSale: Scalars['Boolean'] + /** List of collections a product belongs to. */ + collections: CollectionConnection + /** The compare at price of the product across all variants. */ + compareAtPriceRange: ProductPriceRange + /** The date and time when the product was created. */ + createdAt: Scalars['DateTime'] + /** Stripped description of the product, single line with HTML tags removed. */ + description: Scalars['String'] + /** The description of the product, complete with HTML formatting. */ + descriptionHtml: Scalars['HTML'] + /** + * The featured image for the product. + * + * This field is functionally equivalent to `images(first: 1)`. + * + */ + featuredImage?: Image + /** + * A human-friendly unique string for the Product automatically generated from its title. + * They are used by the Liquid templating language to refer to objects. + * + */ + handle: Scalars['String'] + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** List of images associated with the product. */ + images: ImageConnection + /** Whether the product is a gift card. */ + isGiftCard: Scalars['Boolean'] + /** The media associated with the product. */ + media: MediaConnection + /** Returns a metafield found by namespace and key. */ + metafield?: Metafield + /** + * The metafields associated with the resource matching the supplied list of namespaces and keys. + * + */ + metafields: (Metafield | undefined)[] + /** The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel. */ + onlineStoreUrl?: Scalars['URL'] + /** List of product options. */ + options: ProductOption[] + /** The price range. */ + priceRange: ProductPriceRange + /** A categorization that a product can be tagged with, commonly used for filtering and searching. */ + productType: Scalars['String'] + /** The date and time when the product was published to the channel. */ + publishedAt: Scalars['DateTime'] + /** Whether the product can only be purchased with a selling plan. */ + requiresSellingPlan: Scalars['Boolean'] + /** A list of a product's available selling plan groups. A selling plan group represents a selling method. For example, 'Subscribe and save' is a selling method where customers pay for goods or services per delivery. A selling plan group contains individual selling plans. */ + sellingPlanGroups: SellingPlanGroupConnection + /** The product's SEO information. */ + seo: SEO + /** + * A comma separated list of tags that have been added to the product. + * Additional access scope required for private apps: unauthenticated_read_product_tags. + * + */ + tags: Scalars['String'][] + /** The product’s title. */ + title: Scalars['String'] + /** The total quantity of inventory in stock for this Product. */ + totalInventory?: Scalars['Int'] + /** + * The date and time when the product was last modified. + * A product's `updatedAt` value can change for different reasons. For example, if an order + * is placed for a product that has inventory tracking set up, then the inventory adjustment + * is counted as an update. + * + */ + updatedAt: Scalars['DateTime'] + /** + * Find a product’s variant based on its selected options. + * This is useful for converting a user’s selection of product options into a single matching variant. + * If there is not a variant for the selected options, `null` will be returned. + * + */ + variantBySelectedOptions?: ProductVariant + /** List of the product’s variants. */ + variants: ProductVariantConnection + /** The product’s vendor name. */ + vendor: Scalars['String'] + __typename: 'Product' +} + + +/** The set of valid sort keys for the ProductCollection query. */ +export type ProductCollectionSortKeys = 'TITLE' | 'PRICE' | 'BEST_SELLING' | 'CREATED' | 'ID' | 'MANUAL' | 'COLLECTION_DEFAULT' | 'RELEVANCE' + + +/** + * An auto-generated type for paginating through multiple Products. + * + */ +export interface ProductConnection { + /** A list of edges. */ + edges: ProductEdge[] + /** A list of available filters. */ + filters: Filter[] + /** A list of the nodes contained in ProductEdge. */ + nodes: Product[] + /** Information to aid in pagination. */ + pageInfo: PageInfo + __typename: 'ProductConnection' +} + + +/** + * An auto-generated type which holds one Product and a cursor during pagination. + * + */ +export interface ProductEdge { + /** A cursor for use in pagination. */ + cursor: Scalars['String'] + /** The item at the end of ProductEdge. */ + node: Product + __typename: 'ProductEdge' +} + + +/** The set of valid sort keys for the ProductImage query. */ +export type ProductImageSortKeys = 'CREATED_AT' | 'POSITION' | 'ID' | 'RELEVANCE' + + +/** The set of valid sort keys for the ProductMedia query. */ +export type ProductMediaSortKeys = 'POSITION' | 'ID' | 'RELEVANCE' + + +/** + * Product property names like "Size", "Color", and "Material" that the customers can select. + * Variants are selected based on permutations of these options. + * 255 characters limit each. + * + */ +export interface ProductOption { + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** The product option’s name. */ + name: Scalars['String'] + /** The corresponding value to the product option name. */ + values: Scalars['String'][] + __typename: 'ProductOption' +} + + +/** The price range of the product. */ +export interface ProductPriceRange { + /** The highest variant's price. */ + maxVariantPrice: MoneyV2 + /** The lowest variant's price. */ + minVariantPrice: MoneyV2 + __typename: 'ProductPriceRange' +} + + +/** The set of valid sort keys for the Product query. */ +export type ProductSortKeys = 'TITLE' | 'PRODUCT_TYPE' | 'VENDOR' | 'UPDATED_AT' | 'CREATED_AT' | 'BEST_SELLING' | 'PRICE' | 'ID' | 'RELEVANCE' + + +/** A product variant represents a different version of a product, such as differing sizes or differing colors. */ +export interface ProductVariant { + /** Indicates if the product variant is available for sale. */ + availableForSale: Scalars['Boolean'] + /** The barcode (for example, ISBN, UPC, or GTIN) associated with the variant. */ + barcode?: Scalars['String'] + /** The compare at price of the variant. This can be used to mark a variant as on sale, when `compareAtPrice` is higher than `price`. */ + compareAtPrice?: MoneyV2 + /** + * @deprecated Use `compareAtPrice` instead. + * The compare at price of the variant. This can be used to mark a variant as on sale, when `compareAtPriceV2` is higher than `priceV2`. + */ + compareAtPriceV2?: MoneyV2 + /** Whether a product is out of stock but still available for purchase (used for backorders). */ + currentlyNotInStock: Scalars['Boolean'] + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** + * Image associated with the product variant. This field falls back to the product image if no image is available. + * + */ + image?: Image + /** Returns a metafield found by namespace and key. */ + metafield?: Metafield + /** + * The metafields associated with the resource matching the supplied list of namespaces and keys. + * + */ + metafields: (Metafield | undefined)[] + /** The product variant’s price. */ + price: MoneyV2 + /** + * @deprecated Use `price` instead. + * The product variant’s price. + */ + priceV2: MoneyV2 + /** The product object that the product variant belongs to. */ + product: Product + /** The total sellable quantity of the variant for online sales channels. */ + quantityAvailable?: Scalars['Int'] + /** Whether a customer needs to provide a shipping address when placing an order for the product variant. */ + requiresShipping: Scalars['Boolean'] + /** List of product options applied to the variant. */ + selectedOptions: SelectedOption[] + /** Represents an association between a variant and a selling plan. Selling plan allocations describe which selling plans are available for each variant, and what their impact is on pricing. */ + sellingPlanAllocations: SellingPlanAllocationConnection + /** The SKU (stock keeping unit) associated with the variant. */ + sku?: Scalars['String'] + /** The in-store pickup availability of this variant by location. */ + storeAvailability: StoreAvailabilityConnection + /** The product variant’s title. */ + title: Scalars['String'] + /** The unit price value for the variant based on the variant's measurement. */ + unitPrice?: MoneyV2 + /** The unit price measurement for the variant. */ + unitPriceMeasurement?: UnitPriceMeasurement + /** The weight of the product variant in the unit system specified with `weight_unit`. */ + weight?: Scalars['Float'] + /** Unit of measurement for weight. */ + weightUnit: WeightUnit + __typename: 'ProductVariant' +} + + +/** + * An auto-generated type for paginating through multiple ProductVariants. + * + */ +export interface ProductVariantConnection { + /** A list of edges. */ + edges: ProductVariantEdge[] + /** A list of the nodes contained in ProductVariantEdge. */ + nodes: ProductVariant[] + /** Information to aid in pagination. */ + pageInfo: PageInfo + __typename: 'ProductVariantConnection' +} + + +/** + * An auto-generated type which holds one ProductVariant and a cursor during pagination. + * + */ +export interface ProductVariantEdge { + /** A cursor for use in pagination. */ + cursor: Scalars['String'] + /** The item at the end of ProductVariantEdge. */ + node: ProductVariant + __typename: 'ProductVariantEdge' +} + + +/** The set of valid sort keys for the ProductVariant query. */ +export type ProductVariantSortKeys = 'TITLE' | 'SKU' | 'POSITION' | 'ID' | 'RELEVANCE' + + +/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ +export interface QueryRoot { + /** List of the shop's articles. */ + articles: ArticleConnection + /** Fetch a specific `Blog` by one of its unique attributes. */ + blog?: Blog + /** + * @deprecated Use `blog` instead. + * Find a blog by its handle. + */ + blogByHandle?: Blog + /** List of the shop's blogs. */ + blogs: BlogConnection + /** + * Retrieve a cart by its ID. For more information, refer to + * [Manage a cart with the Storefront API](https://shopify.dev/custom-storefronts/cart/manage). + * + */ + cart?: Cart + /** Fetch a specific `Collection` by one of its unique attributes. */ + collection?: Collection + /** + * @deprecated Use `collection` instead. + * Find a collection by its handle. + */ + collectionByHandle?: Collection + /** List of the shop’s collections. */ + collections: CollectionConnection + /** Find a customer by its access token. */ + customer?: Customer + /** Returns the localized experiences configured for the shop. */ + localization: Localization + /** + * List of the shop's locations that support in-store pickup. + * + * When sorting by distance, you must specify a location via the `near` argument. + * + */ + locations: LocationConnection + /** A storefront menu. */ + menu?: Menu + /** Fetch a specific Metaobject by one of its unique identifiers. */ + metaobject?: Metaobject + /** All active metaobjects for the shop. */ + metaobjects: MetaobjectConnection + /** Returns a specific node by ID. */ + node?: Node + /** Returns the list of nodes with the given IDs. */ + nodes: (Node | undefined)[] + /** Fetch a specific `Page` by one of its unique attributes. */ + page?: Page + /** + * @deprecated Use `page` instead. + * Find a page by its handle. + */ + pageByHandle?: Page + /** List of the shop's pages. */ + pages: PageConnection + /** Fetch a specific `Product` by one of its unique attributes. */ + product?: Product + /** + * @deprecated Use `product` instead. + * Find a product by its handle. + */ + productByHandle?: Product + /** + * Find recommended products related to a given `product_id`. + * To learn more about how recommendations are generated, see + * [*Showing product recommendations on product pages*](https://help.shopify.com/themes/development/recommended-products). + * + */ + productRecommendations?: Product[] + /** + * Tags added to products. + * Additional access scope required: unauthenticated_read_product_tags. + * + */ + productTags: StringConnection + /** List of product types for the shop's products that are published to your app. */ + productTypes: StringConnection + /** List of the shop’s products. */ + products: ProductConnection + /** The list of public Storefront API versions, including supported, release candidate and unstable versions. */ + publicApiVersions: ApiVersion[] + /** The shop associated with the storefront access token. */ + shop: Shop + /** A list of redirects for a shop. */ + urlRedirects: UrlRedirectConnection + __typename: 'QueryRoot' +} + + +/** SEO information. */ +export interface SEO { + /** The meta description. */ + description?: Scalars['String'] + /** The SEO title. */ + title?: Scalars['String'] + __typename: 'SEO' +} + + +/** + * Script discount applications capture the intentions of a discount that + * was created by a Shopify Script. + * + */ +export interface ScriptDiscountApplication { + /** The method by which the discount's value is allocated to its entitled items. */ + allocationMethod: DiscountApplicationAllocationMethod + /** Which lines of targetType that the discount is allocated over. */ + targetSelection: DiscountApplicationTargetSelection + /** The type of line that the discount is applicable towards. */ + targetType: DiscountApplicationTargetType + /** The title of the application as defined by the Script. */ + title: Scalars['String'] + /** The value of the discount application. */ + value: PricingValue + __typename: 'ScriptDiscountApplication' +} + + +/** + * Properties used by customers to select a product variant. + * Products can have multiple options, like different sizes or colors. + * + */ +export interface SelectedOption { + /** The product option’s name. */ + name: Scalars['String'] + /** The product option’s value. */ + value: Scalars['String'] + __typename: 'SelectedOption' +} + + +/** Represents how products and variants can be sold and purchased. */ +export interface SellingPlan { + /** The initial payment due for the purchase. */ + checkoutCharge: SellingPlanCheckoutCharge + /** The description of the selling plan. */ + description?: Scalars['String'] + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** The name of the selling plan. For example, '6 weeks of prepaid granola, delivered weekly'. */ + name: Scalars['String'] + /** The selling plan options available in the drop-down list in the storefront. For example, 'Delivery every week' or 'Delivery every 2 weeks' specifies the delivery frequency options for the product. Individual selling plans contribute their options to the associated selling plan group. For example, a selling plan group might have an option called `option1: Delivery every`. One selling plan in that group could contribute `option1: 2 weeks` with the pricing for that option, and another selling plan could contribute `option1: 4 weeks`, with different pricing. */ + options: SellingPlanOption[] + /** The price adjustments that a selling plan makes when a variant is purchased with a selling plan. */ + priceAdjustments: SellingPlanPriceAdjustment[] + /** Whether purchasing the selling plan will result in multiple deliveries. */ + recurringDeliveries: Scalars['Boolean'] + __typename: 'SellingPlan' +} + + +/** Represents an association between a variant and a selling plan. Selling plan allocations describe the options offered for each variant, and the price of the variant when purchased with a selling plan. */ +export interface SellingPlanAllocation { + /** The checkout charge amount due for the purchase. */ + checkoutChargeAmount: MoneyV2 + /** A list of price adjustments, with a maximum of two. When there are two, the first price adjustment goes into effect at the time of purchase, while the second one starts after a certain number of orders. A price adjustment represents how a selling plan affects pricing when a variant is purchased with a selling plan. Prices display in the customer's currency if the shop is configured for it. */ + priceAdjustments: SellingPlanAllocationPriceAdjustment[] + /** The remaining balance charge amount due for the purchase. */ + remainingBalanceChargeAmount: MoneyV2 + /** A representation of how products and variants can be sold and purchased. For example, an individual selling plan could be '6 weeks of prepaid granola, delivered weekly'. */ + sellingPlan: SellingPlan + __typename: 'SellingPlanAllocation' +} + + +/** + * An auto-generated type for paginating through multiple SellingPlanAllocations. + * + */ +export interface SellingPlanAllocationConnection { + /** A list of edges. */ + edges: SellingPlanAllocationEdge[] + /** A list of the nodes contained in SellingPlanAllocationEdge. */ + nodes: SellingPlanAllocation[] + /** Information to aid in pagination. */ + pageInfo: PageInfo + __typename: 'SellingPlanAllocationConnection' +} + + +/** + * An auto-generated type which holds one SellingPlanAllocation and a cursor during pagination. + * + */ +export interface SellingPlanAllocationEdge { + /** A cursor for use in pagination. */ + cursor: Scalars['String'] + /** The item at the end of SellingPlanAllocationEdge. */ + node: SellingPlanAllocation + __typename: 'SellingPlanAllocationEdge' +} + + +/** The resulting prices for variants when they're purchased with a specific selling plan. */ +export interface SellingPlanAllocationPriceAdjustment { + /** The price of the variant when it's purchased without a selling plan for the same number of deliveries. For example, if a customer purchases 6 deliveries of $10.00 granola separately, then the price is 6 x $10.00 = $60.00. */ + compareAtPrice: MoneyV2 + /** The effective price for a single delivery. For example, for a prepaid subscription plan that includes 6 deliveries at the price of $48.00, the per delivery price is $8.00. */ + perDeliveryPrice: MoneyV2 + /** The price of the variant when it's purchased with a selling plan For example, for a prepaid subscription plan that includes 6 deliveries of $10.00 granola, where the customer gets 20% off, the price is 6 x $10.00 x 0.80 = $48.00. */ + price: MoneyV2 + /** The resulting price per unit for the variant associated with the selling plan. If the variant isn't sold by quantity or measurement, then this field returns `null`. */ + unitPrice?: MoneyV2 + __typename: 'SellingPlanAllocationPriceAdjustment' +} + + +/** The initial payment due for the purchase. */ +export interface SellingPlanCheckoutCharge { + /** The charge type for the checkout charge. */ + type: SellingPlanCheckoutChargeType + /** The charge value for the checkout charge. */ + value: SellingPlanCheckoutChargeValue + __typename: 'SellingPlanCheckoutCharge' +} + + +/** The percentage value of the price used for checkout charge. */ +export interface SellingPlanCheckoutChargePercentageValue { + /** The percentage value of the price used for checkout charge. */ + percentage: Scalars['Float'] + __typename: 'SellingPlanCheckoutChargePercentageValue' +} + + +/** The checkout charge when the full amount isn't charged at checkout. */ +export type SellingPlanCheckoutChargeType = 'PERCENTAGE' | 'PRICE' + + +/** The portion of the price to be charged at checkout. */ +export type SellingPlanCheckoutChargeValue = (MoneyV2 | SellingPlanCheckoutChargePercentageValue) & { __isUnion?: true } + + +/** + * An auto-generated type for paginating through multiple SellingPlans. + * + */ +export interface SellingPlanConnection { + /** A list of edges. */ + edges: SellingPlanEdge[] + /** A list of the nodes contained in SellingPlanEdge. */ + nodes: SellingPlan[] + /** Information to aid in pagination. */ + pageInfo: PageInfo + __typename: 'SellingPlanConnection' +} + + +/** + * An auto-generated type which holds one SellingPlan and a cursor during pagination. + * + */ +export interface SellingPlanEdge { + /** A cursor for use in pagination. */ + cursor: Scalars['String'] + /** The item at the end of SellingPlanEdge. */ + node: SellingPlan + __typename: 'SellingPlanEdge' +} + + +/** A fixed amount that's deducted from the original variant price. For example, $10.00 off. */ +export interface SellingPlanFixedAmountPriceAdjustment { + /** The money value of the price adjustment. */ + adjustmentAmount: MoneyV2 + __typename: 'SellingPlanFixedAmountPriceAdjustment' +} + + +/** A fixed price adjustment for a variant that's purchased with a selling plan. */ +export interface SellingPlanFixedPriceAdjustment { + /** A new price of the variant when it's purchased with the selling plan. */ + price: MoneyV2 + __typename: 'SellingPlanFixedPriceAdjustment' +} + + +/** Represents a selling method. For example, 'Subscribe and save' is a selling method where customers pay for goods or services per delivery. A selling plan group contains individual selling plans. */ +export interface SellingPlanGroup { + /** A display friendly name for the app that created the selling plan group. */ + appName?: Scalars['String'] + /** The name of the selling plan group. */ + name: Scalars['String'] + /** Represents the selling plan options available in the drop-down list in the storefront. For example, 'Delivery every week' or 'Delivery every 2 weeks' specifies the delivery frequency options for the product. */ + options: SellingPlanGroupOption[] + /** A list of selling plans in a selling plan group. A selling plan is a representation of how products and variants can be sold and purchased. For example, an individual selling plan could be '6 weeks of prepaid granola, delivered weekly'. */ + sellingPlans: SellingPlanConnection + __typename: 'SellingPlanGroup' +} + + +/** + * An auto-generated type for paginating through multiple SellingPlanGroups. + * + */ +export interface SellingPlanGroupConnection { + /** A list of edges. */ + edges: SellingPlanGroupEdge[] + /** A list of the nodes contained in SellingPlanGroupEdge. */ + nodes: SellingPlanGroup[] + /** Information to aid in pagination. */ + pageInfo: PageInfo + __typename: 'SellingPlanGroupConnection' +} + + +/** + * An auto-generated type which holds one SellingPlanGroup and a cursor during pagination. + * + */ +export interface SellingPlanGroupEdge { + /** A cursor for use in pagination. */ + cursor: Scalars['String'] + /** The item at the end of SellingPlanGroupEdge. */ + node: SellingPlanGroup + __typename: 'SellingPlanGroupEdge' +} + + +/** + * Represents an option on a selling plan group that's available in the drop-down list in the storefront. + * + * Individual selling plans contribute their options to the associated selling plan group. For example, a selling plan group might have an option called `option1: Delivery every`. One selling plan in that group could contribute `option1: 2 weeks` with the pricing for that option, and another selling plan could contribute `option1: 4 weeks`, with different pricing. + */ +export interface SellingPlanGroupOption { + /** The name of the option. For example, 'Delivery every'. */ + name: Scalars['String'] + /** The values for the options specified by the selling plans in the selling plan group. For example, '1 week', '2 weeks', '3 weeks'. */ + values: Scalars['String'][] + __typename: 'SellingPlanGroupOption' +} + + +/** An option provided by a Selling Plan. */ +export interface SellingPlanOption { + /** The name of the option (ie "Delivery every"). */ + name?: Scalars['String'] + /** The value of the option (ie "Month"). */ + value?: Scalars['String'] + __typename: 'SellingPlanOption' +} + + +/** A percentage amount that's deducted from the original variant price. For example, 10% off. */ +export interface SellingPlanPercentagePriceAdjustment { + /** The percentage value of the price adjustment. */ + adjustmentPercentage: Scalars['Int'] + __typename: 'SellingPlanPercentagePriceAdjustment' +} + + +/** Represents by how much the price of a variant associated with a selling plan is adjusted. Each variant can have up to two price adjustments. If a variant has multiple price adjustments, then the first price adjustment applies when the variant is initially purchased. The second price adjustment applies after a certain number of orders (specified by the `orderCount` field) are made. If a selling plan doesn't have any price adjustments, then the unadjusted price of the variant is the effective price. */ +export interface SellingPlanPriceAdjustment { + /** The type of price adjustment. An adjustment value can have one of three types: percentage, amount off, or a new price. */ + adjustmentValue: SellingPlanPriceAdjustmentValue + /** The number of orders that the price adjustment applies to. If the price adjustment always applies, then this field is `null`. */ + orderCount?: Scalars['Int'] + __typename: 'SellingPlanPriceAdjustment' +} + + +/** Represents by how much the price of a variant associated with a selling plan is adjusted. Each variant can have up to two price adjustments. */ +export type SellingPlanPriceAdjustmentValue = (SellingPlanFixedAmountPriceAdjustment | SellingPlanFixedPriceAdjustment | SellingPlanPercentagePriceAdjustment) & { __isUnion?: true } + + +/** A shipping rate to be applied to a checkout. */ +export interface ShippingRate { + /** Human-readable unique identifier for this shipping rate. */ + handle: Scalars['String'] + /** Price of this shipping rate. */ + price: MoneyV2 + /** + * @deprecated Use `price` instead. + * Price of this shipping rate. + */ + priceV2: MoneyV2 + /** Title of this shipping rate. */ + title: Scalars['String'] + __typename: 'ShippingRate' +} + + +/** Shop represents a collection of the general settings and information about the shop. */ +export interface Shop { + /** The shop's branding configuration. */ + brand?: Brand + /** A description of the shop. */ + description?: Scalars['String'] + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** Returns a metafield found by namespace and key. */ + metafield?: Metafield + /** + * The metafields associated with the resource matching the supplied list of namespaces and keys. + * + */ + metafields: (Metafield | undefined)[] + /** A string representing the way currency is formatted when the currency isn’t specified. */ + moneyFormat: Scalars['String'] + /** The shop’s name. */ + name: Scalars['String'] + /** Settings related to payments. */ + paymentSettings: PaymentSettings + /** The primary domain of the shop’s Online Store. */ + primaryDomain: Domain + /** The shop’s privacy policy. */ + privacyPolicy?: ShopPolicy + /** The shop’s refund policy. */ + refundPolicy?: ShopPolicy + /** The shop’s shipping policy. */ + shippingPolicy?: ShopPolicy + /** Countries that the shop ships to. */ + shipsToCountries: CountryCode[] + /** The shop’s subscription policy. */ + subscriptionPolicy?: ShopPolicyWithDefault + /** The shop’s terms of service. */ + termsOfService?: ShopPolicy + __typename: 'Shop' +} + + +/** Policy that a merchant has configured for their store, such as their refund or privacy policy. */ +export interface ShopPolicy { + /** Policy text, maximum size of 64kb. */ + body: Scalars['String'] + /** Policy’s handle. */ + handle: Scalars['String'] + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** Policy’s title. */ + title: Scalars['String'] + /** Public URL to the policy. */ + url: Scalars['URL'] + __typename: 'ShopPolicy' +} + + +/** + * A policy for the store that comes with a default value, such as a subscription policy. + * If the merchant hasn't configured a policy for their store, then the policy will return the default value. + * Otherwise, the policy will return the merchant-configured value. + * + */ +export interface ShopPolicyWithDefault { + /** The text of the policy. Maximum size: 64KB. */ + body: Scalars['String'] + /** The handle of the policy. */ + handle: Scalars['String'] + /** The unique identifier of the policy. A default policy doesn't have an ID. */ + id?: Scalars['ID'] + /** The title of the policy. */ + title: Scalars['String'] + /** Public URL to the policy. */ + url: Scalars['URL'] + __typename: 'ShopPolicyWithDefault' +} + + +/** + * The availability of a product variant at a particular location. + * Local pick-up must be enabled in the store's shipping settings, otherwise this will return an empty result. + * + */ +export interface StoreAvailability { + /** Whether the product variant is in-stock at this location. */ + available: Scalars['Boolean'] + /** The location where this product variant is stocked at. */ + location: Location + /** Returns the estimated amount of time it takes for pickup to be ready (Example: Usually ready in 24 hours). */ + pickUpTime: Scalars['String'] + __typename: 'StoreAvailability' +} + + +/** + * An auto-generated type for paginating through multiple StoreAvailabilities. + * + */ +export interface StoreAvailabilityConnection { + /** A list of edges. */ + edges: StoreAvailabilityEdge[] + /** A list of the nodes contained in StoreAvailabilityEdge. */ + nodes: StoreAvailability[] + /** Information to aid in pagination. */ + pageInfo: PageInfo + __typename: 'StoreAvailabilityConnection' +} + + +/** + * An auto-generated type which holds one StoreAvailability and a cursor during pagination. + * + */ +export interface StoreAvailabilityEdge { + /** A cursor for use in pagination. */ + cursor: Scalars['String'] + /** The item at the end of StoreAvailabilityEdge. */ + node: StoreAvailability + __typename: 'StoreAvailabilityEdge' +} + + +/** + * An auto-generated type for paginating through a list of Strings. + * + */ +export interface StringConnection { + /** A list of edges. */ + edges: StringEdge[] + /** Information to aid in pagination. */ + pageInfo: PageInfo + __typename: 'StringConnection' +} + + +/** + * An auto-generated type which holds one String and a cursor during pagination. + * + */ +export interface StringEdge { + /** A cursor for use in pagination. */ + cursor: Scalars['String'] + /** The item at the end of StringEdge. */ + node: Scalars['String'] + __typename: 'StringEdge' +} + + +/** An object representing exchange of money for a product or service. */ +export interface Transaction { + /** The amount of money that the transaction was for. */ + amount: MoneyV2 + /** + * @deprecated Use `amount` instead. + * The amount of money that the transaction was for. + */ + amountV2: MoneyV2 + /** The kind of the transaction. */ + kind: TransactionKind + /** + * @deprecated Use `statusV2` instead. + * The status of the transaction. + */ + status: TransactionStatus + /** The status of the transaction. */ + statusV2?: TransactionStatus + /** Whether the transaction was done in test mode or not. */ + test: Scalars['Boolean'] + __typename: 'Transaction' +} + + +/** The different kinds of order transactions. */ +export type TransactionKind = 'SALE' | 'CAPTURE' | 'AUTHORIZATION' | 'EMV_AUTHORIZATION' | 'CHANGE' + + +/** Transaction statuses describe the status of a transaction. */ +export type TransactionStatus = 'PENDING' | 'SUCCESS' | 'FAILURE' | 'ERROR' + + +/** + * The measurement used to calculate a unit price for a product variant (e.g. $9.99 / 100ml). + * + */ +export interface UnitPriceMeasurement { + /** The type of unit of measurement for the unit price measurement. */ + measuredType?: UnitPriceMeasurementMeasuredType + /** The quantity unit for the unit price measurement. */ + quantityUnit?: UnitPriceMeasurementMeasuredUnit + /** The quantity value for the unit price measurement. */ + quantityValue: Scalars['Float'] + /** The reference unit for the unit price measurement. */ + referenceUnit?: UnitPriceMeasurementMeasuredUnit + /** The reference value for the unit price measurement. */ + referenceValue: Scalars['Int'] + __typename: 'UnitPriceMeasurement' +} + + +/** The accepted types of unit of measurement. */ +export type UnitPriceMeasurementMeasuredType = 'VOLUME' | 'WEIGHT' | 'LENGTH' | 'AREA' + + +/** The valid units of measurement for a unit price measurement. */ +export type UnitPriceMeasurementMeasuredUnit = 'ML' | 'CL' | 'L' | 'M3' | 'MG' | 'G' | 'KG' | 'MM' | 'CM' | 'M' | 'M2' + + +/** Systems of weights and measures. */ +export type UnitSystem = 'IMPERIAL_SYSTEM' | 'METRIC_SYSTEM' + + +/** A redirect on the online store. */ +export interface UrlRedirect { + /** The ID of the URL redirect. */ + id: Scalars['ID'] + /** The old path to be redirected from. When the user visits this path, they'll be redirected to the target location. */ + path: Scalars['String'] + /** The target location where the user will be redirected to. */ + target: Scalars['String'] + __typename: 'UrlRedirect' +} + + +/** + * An auto-generated type for paginating through multiple UrlRedirects. + * + */ +export interface UrlRedirectConnection { + /** A list of edges. */ + edges: UrlRedirectEdge[] + /** A list of the nodes contained in UrlRedirectEdge. */ + nodes: UrlRedirect[] + /** Information to aid in pagination. */ + pageInfo: PageInfo + __typename: 'UrlRedirectConnection' +} + + +/** + * An auto-generated type which holds one UrlRedirect and a cursor during pagination. + * + */ +export interface UrlRedirectEdge { + /** A cursor for use in pagination. */ + cursor: Scalars['String'] + /** The item at the end of UrlRedirectEdge. */ + node: UrlRedirect + __typename: 'UrlRedirectEdge' +} + + +/** Represents an error in the input of a mutation. */ +export interface UserError { + /** The path to the input field that caused the error. */ + field?: Scalars['String'][] + /** The error message. */ + message: Scalars['String'] + __typename: 'UserError' +} + + +/** Represents a Shopify hosted video. */ +export interface Video { + /** A word or phrase to share the nature or contents of a media. */ + alt?: Scalars['String'] + /** A globally-unique identifier. */ + id: Scalars['ID'] + /** The media content type. */ + mediaContentType: MediaContentType + /** The preview image for the media. */ + previewImage?: Image + /** The sources for a video. */ + sources: VideoSource[] + __typename: 'Video' +} + + +/** Represents a source for a Shopify hosted video. */ +export interface VideoSource { + /** The format of the video source. */ + format: Scalars['String'] + /** The height of the video. */ + height: Scalars['Int'] + /** The video MIME type. */ + mimeType: Scalars['String'] + /** The URL of the video. */ + url: Scalars['String'] + /** The width of the video. */ + width: Scalars['Int'] + __typename: 'VideoSource' +} + + +/** Units of measurement for weight. */ +export type WeightUnit = 'KILOGRAMS' | 'GRAMS' | 'POUNDS' | 'OUNCES' + +export type Query = QueryRoot + + +/** + * A version of the API, as defined by [Shopify API versioning](https://shopify.dev/api/usage/versioning). + * Versions are commonly referred to by their handle (for example, `2021-10`). + * + */ +export interface ApiVersionGenqlSelection{ + /** The human-readable name of the version. */ + displayName?: boolean | number + /** The unique identifier of an ApiVersion. All supported API versions have a date-based (YYYY-MM) or `unstable` handle. */ + handle?: boolean | number + /** Whether the version is actively supported by Shopify. Supported API versions are guaranteed to be stable. Unsupported API versions include unstable, release candidate, and end-of-life versions that are marked as unsupported. For more information, refer to [Versioning](https://shopify.dev/api/usage/versioning). */ + supported?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Details about the gift card used on the checkout. */ +export interface AppliedGiftCardGenqlSelection{ + /** The amount that was taken from the gift card by applying it. */ + amountUsed?: MoneyV2GenqlSelection + /** + * @deprecated Use `amountUsed` instead. + * The amount that was taken from the gift card by applying it. + */ + amountUsedV2?: MoneyV2GenqlSelection + /** The amount left on the gift card. */ + balance?: MoneyV2GenqlSelection + /** + * @deprecated Use `balance` instead. + * The amount left on the gift card. + */ + balanceV2?: MoneyV2GenqlSelection + /** A globally-unique identifier. */ + id?: boolean | number + /** The last characters of the gift card. */ + lastCharacters?: boolean | number + /** The amount that was applied to the checkout in its currency. */ + presentmentAmountUsed?: MoneyV2GenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** An article in an online store blog. */ +export interface ArticleGenqlSelection{ + /** + * @deprecated Use `authorV2` instead. + * The article's author. + */ + author?: ArticleAuthorGenqlSelection + /** The article's author. */ + authorV2?: ArticleAuthorGenqlSelection + /** The blog that the article belongs to. */ + blog?: BlogGenqlSelection + /** List of comments posted on the article. */ + comments?: (CommentConnectionGenqlSelection & { __args?: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null)} }) + /** Stripped content of the article, single line with HTML tags removed. */ + content?: { __args: { + /** Truncates string after the given length. */ + truncateAt?: (Scalars['Int'] | null)} } | boolean | number + /** The content of the article, complete with HTML formatting. */ + contentHtml?: boolean | number + /** Stripped excerpt of the article, single line with HTML tags removed. */ + excerpt?: { __args: { + /** Truncates string after the given length. */ + truncateAt?: (Scalars['Int'] | null)} } | boolean | number + /** The excerpt of the article, complete with HTML formatting. */ + excerptHtml?: boolean | number + /** + * A human-friendly unique string for the Article automatically generated from its title. + * + */ + handle?: boolean | number + /** A globally-unique identifier. */ + id?: boolean | number + /** The image associated with the article. */ + image?: ImageGenqlSelection + /** Returns a metafield found by namespace and key. */ + metafield?: (MetafieldGenqlSelection & { __args: { + /** A container for a set of metafields. */ + namespace: Scalars['String'], + /** The identifier for the metafield. */ + key: Scalars['String']} }) + /** + * The metafields associated with the resource matching the supplied list of namespaces and keys. + * + */ + metafields?: (MetafieldGenqlSelection & { __args: { + /** The list of metafields to retrieve by namespace and key. */ + identifiers: HasMetafieldsIdentifier[]} }) + /** The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel. */ + onlineStoreUrl?: boolean | number + /** The date and time when the article was published. */ + publishedAt?: boolean | number + /** The article’s SEO information. */ + seo?: SEOGenqlSelection + /** A categorization that a article can be tagged with. */ + tags?: boolean | number + /** The article’s name. */ + title?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** The author of an article. */ +export interface ArticleAuthorGenqlSelection{ + /** The author's bio. */ + bio?: boolean | number + /** The author’s email. */ + email?: boolean | number + /** The author's first name. */ + firstName?: boolean | number + /** The author's last name. */ + lastName?: boolean | number + /** The author's full name. */ + name?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type for paginating through multiple Articles. + * + */ +export interface ArticleConnectionGenqlSelection{ + /** A list of edges. */ + edges?: ArticleEdgeGenqlSelection + /** A list of the nodes contained in ArticleEdge. */ + nodes?: ArticleGenqlSelection + /** Information to aid in pagination. */ + pageInfo?: PageInfoGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type which holds one Article and a cursor during pagination. + * + */ +export interface ArticleEdgeGenqlSelection{ + /** A cursor for use in pagination. */ + cursor?: boolean | number + /** The item at the end of ArticleEdge. */ + node?: ArticleGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Represents a generic custom attribute. */ +export interface AttributeGenqlSelection{ + /** Key or name of the attribute. */ + key?: boolean | number + /** Value of the attribute. */ + value?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Specifies the input fields required for an attribute. */ +export interface AttributeInput { +/** Key or name of the attribute. */ +key: Scalars['String'], +/** Value of the attribute. */ +value: Scalars['String']} + + +/** + * Automatic discount applications capture the intentions of a discount that was automatically applied. + * + */ +export interface AutomaticDiscountApplicationGenqlSelection{ + /** The method by which the discount's value is allocated to its entitled items. */ + allocationMethod?: boolean | number + /** Which lines of targetType that the discount is allocated over. */ + targetSelection?: boolean | number + /** The type of line that the discount is applicable towards. */ + targetType?: boolean | number + /** The title of the application. */ + title?: boolean | number + /** The value of the discount application. */ + value?: PricingValueGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** A collection of available shipping rates for a checkout. */ +export interface AvailableShippingRatesGenqlSelection{ + /** + * Whether or not the shipping rates are ready. + * The `shippingRates` field is `null` when this value is `false`. + * This field should be polled until its value becomes `true`. + * + */ + ready?: boolean | number + /** The fetched shipping rates. `null` until the `ready` field is `true`. */ + shippingRates?: ShippingRateGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** An online store blog. */ +export interface BlogGenqlSelection{ + /** Find an article by its handle. */ + articleByHandle?: (ArticleGenqlSelection & { __args: { + /** The handle of the article. */ + handle: Scalars['String']} }) + /** List of the blog's articles. */ + articles?: (ArticleConnectionGenqlSelection & { __args: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null), + /** Sort the underlying list by the given key. */ + sortKey?: (ArticleSortKeys | null), + /** + * Supported filter parameters: + * - `author` + * - `blog_title` + * - `created_at` + * - `tag` + * - `tag_not` + * - `updated_at` + * + * See the detailed [search syntax](https://shopify.dev/api/usage/search-syntax) + * for more information about using filters. + * + */ + query?: (Scalars['String'] | null)} }) + /** The authors who have contributed to the blog. */ + authors?: ArticleAuthorGenqlSelection + /** + * A human-friendly unique string for the Blog automatically generated from its title. + * + */ + handle?: boolean | number + /** A globally-unique identifier. */ + id?: boolean | number + /** Returns a metafield found by namespace and key. */ + metafield?: (MetafieldGenqlSelection & { __args: { + /** A container for a set of metafields. */ + namespace: Scalars['String'], + /** The identifier for the metafield. */ + key: Scalars['String']} }) + /** + * The metafields associated with the resource matching the supplied list of namespaces and keys. + * + */ + metafields?: (MetafieldGenqlSelection & { __args: { + /** The list of metafields to retrieve by namespace and key. */ + identifiers: HasMetafieldsIdentifier[]} }) + /** The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel. */ + onlineStoreUrl?: boolean | number + /** The blog's SEO information. */ + seo?: SEOGenqlSelection + /** The blogs’s title. */ + title?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type for paginating through multiple Blogs. + * + */ +export interface BlogConnectionGenqlSelection{ + /** A list of edges. */ + edges?: BlogEdgeGenqlSelection + /** A list of the nodes contained in BlogEdge. */ + nodes?: BlogGenqlSelection + /** Information to aid in pagination. */ + pageInfo?: PageInfoGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type which holds one Blog and a cursor during pagination. + * + */ +export interface BlogEdgeGenqlSelection{ + /** A cursor for use in pagination. */ + cursor?: boolean | number + /** The item at the end of BlogEdge. */ + node?: BlogGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * The store's branding configuration. + * + */ +export interface BrandGenqlSelection{ + /** The colors of the store's brand. */ + colors?: BrandColorsGenqlSelection + /** The store's cover image. */ + coverImage?: MediaImageGenqlSelection + /** The store's default logo. */ + logo?: MediaImageGenqlSelection + /** The store's short description. */ + shortDescription?: boolean | number + /** The store's slogan. */ + slogan?: boolean | number + /** The store's preferred logo for square UI elements. */ + squareLogo?: MediaImageGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * A group of related colors for the shop's brand. + * + */ +export interface BrandColorGroupGenqlSelection{ + /** The background color. */ + background?: boolean | number + /** The foreground color. */ + foreground?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * The colors of the shop's brand. + * + */ +export interface BrandColorsGenqlSelection{ + /** The shop's primary brand colors. */ + primary?: BrandColorGroupGenqlSelection + /** The shop's secondary brand colors. */ + secondary?: BrandColorGroupGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * A cart represents the merchandise that a buyer intends to purchase, + * and the estimated cost associated with the cart. Learn how to + * [interact with a cart](https://shopify.dev/custom-storefronts/internationalization/international-pricing) + * during a customer's session. + * + */ +export interface CartGenqlSelection{ + /** An attribute associated with the cart. */ + attribute?: (AttributeGenqlSelection & { __args: { + /** The key of the attribute. */ + key: Scalars['String']} }) + /** The attributes associated with the cart. Attributes are represented as key-value pairs. */ + attributes?: AttributeGenqlSelection + /** Information about the buyer that is interacting with the cart. */ + buyerIdentity?: CartBuyerIdentityGenqlSelection + /** The URL of the checkout for the cart. */ + checkoutUrl?: boolean | number + /** The estimated costs that the buyer will pay at checkout. The costs are subject to change and changes will be reflected at checkout. The `cost` field uses the `buyerIdentity` field to determine [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing). */ + cost?: CartCostGenqlSelection + /** The date and time when the cart was created. */ + createdAt?: boolean | number + /** + * The delivery groups available for the cart, based on the buyer identity default + * delivery address preference or the default address of the logged-in customer. + * + */ + deliveryGroups?: (CartDeliveryGroupConnectionGenqlSelection & { __args?: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null)} }) + /** The discounts that have been applied to the entire cart. */ + discountAllocations?: CartDiscountAllocationGenqlSelection + /** + * The case-insensitive discount codes that the customer added at checkout. + * + */ + discountCodes?: CartDiscountCodeGenqlSelection + /** + * @deprecated Use `cost` instead. + * The estimated costs that the buyer will pay at checkout. + * The estimated costs are subject to change and changes will be reflected at checkout. + * The `estimatedCost` field uses the `buyerIdentity` field to determine + * [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing). + * + */ + estimatedCost?: CartEstimatedCostGenqlSelection + /** A globally-unique identifier. */ + id?: boolean | number + /** A list of lines containing information about the items the customer intends to purchase. */ + lines?: (CartLineConnectionGenqlSelection & { __args?: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null)} }) + /** A note that is associated with the cart. For example, the note can be a personalized message to the buyer. */ + note?: boolean | number + /** The total number of items in the cart. */ + totalQuantity?: boolean | number + /** The date and time when the cart was updated. */ + updatedAt?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `cartAttributesUpdate` mutation. */ +export interface CartAttributesUpdatePayloadGenqlSelection{ + /** The updated cart. */ + cart?: CartGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + userErrors?: CartUserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** The discounts automatically applied to the cart line based on prerequisites that have been met. */ +export interface CartAutomaticDiscountAllocationGenqlSelection{ + /** The discounted amount that has been applied to the cart line. */ + discountedAmount?: MoneyV2GenqlSelection + /** The title of the allocated discount. */ + title?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Represents information about the buyer that is interacting with the cart. */ +export interface CartBuyerIdentityGenqlSelection{ + /** The country where the buyer is located. */ + countryCode?: boolean | number + /** The customer account associated with the cart. */ + customer?: CustomerGenqlSelection + /** + * An ordered set of delivery addresses tied to the buyer that is interacting with the cart. + * The rank of the preferences is determined by the order of the addresses in the array. Preferences + * can be used to populate relevant fields in the checkout flow. + * + */ + deliveryAddressPreferences?: DeliveryAddressGenqlSelection + /** The email address of the buyer that is interacting with the cart. */ + email?: boolean | number + /** The phone number of the buyer that is interacting with the cart. */ + phone?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * Specifies the input fields to update the buyer information associated with a cart. + * Buyer identity is used to determine + * [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing) + * and should match the customer's shipping address. + * + */ +export interface CartBuyerIdentityInput { +/** The email address of the buyer that is interacting with the cart. */ +email?: (Scalars['String'] | null), +/** The phone number of the buyer that is interacting with the cart. */ +phone?: (Scalars['String'] | null), +/** The country where the buyer is located. */ +countryCode?: (CountryCode | null), +/** The access token used to identify the customer associated with the cart. */ +customerAccessToken?: (Scalars['String'] | null), +/** + * An ordered set of delivery addresses tied to the buyer that is interacting with the cart. + * The rank of the preferences is determined by the order of the addresses in the array. Preferences + * can be used to populate relevant fields in the checkout flow. + * + */ +deliveryAddressPreferences?: (DeliveryAddressInput[] | null)} + + +/** Return type for `cartBuyerIdentityUpdate` mutation. */ +export interface CartBuyerIdentityUpdatePayloadGenqlSelection{ + /** The updated cart. */ + cart?: CartGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + userErrors?: CartUserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** The discount that has been applied to the cart line using a discount code. */ +export interface CartCodeDiscountAllocationGenqlSelection{ + /** The code used to apply the discount. */ + code?: boolean | number + /** The discounted amount that has been applied to the cart line. */ + discountedAmount?: MoneyV2GenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * The costs that the buyer will pay at checkout. + * The cart cost uses [`CartBuyerIdentity`](https://shopify.dev/api/storefront/reference/cart/cartbuyeridentity) to determine + * [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing). + * + */ +export interface CartCostGenqlSelection{ + /** The estimated amount, before taxes and discounts, for the customer to pay at checkout. The checkout charge amount doesn't include any deferred payments that'll be paid at a later date. If the cart has no deferred payments, then the checkout charge amount is equivalent to `subtotalAmount`. */ + checkoutChargeAmount?: MoneyV2GenqlSelection + /** The amount, before taxes and cart-level discounts, for the customer to pay. */ + subtotalAmount?: MoneyV2GenqlSelection + /** Whether the subtotal amount is estimated. */ + subtotalAmountEstimated?: boolean | number + /** The total amount for the customer to pay. */ + totalAmount?: MoneyV2GenqlSelection + /** Whether the total amount is estimated. */ + totalAmountEstimated?: boolean | number + /** The duty amount for the customer to pay at checkout. */ + totalDutyAmount?: MoneyV2GenqlSelection + /** Whether the total duty amount is estimated. */ + totalDutyAmountEstimated?: boolean | number + /** The tax amount for the customer to pay at checkout. */ + totalTaxAmount?: MoneyV2GenqlSelection + /** Whether the total tax amount is estimated. */ + totalTaxAmountEstimated?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `cartCreate` mutation. */ +export interface CartCreatePayloadGenqlSelection{ + /** The new cart. */ + cart?: CartGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + userErrors?: CartUserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** The discounts automatically applied to the cart line based on prerequisites that have been met. */ +export interface CartCustomDiscountAllocationGenqlSelection{ + /** The discounted amount that has been applied to the cart line. */ + discountedAmount?: MoneyV2GenqlSelection + /** The title of the allocated discount. */ + title?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Information about the options available for one or more line items to be delivered to a specific address. */ +export interface CartDeliveryGroupGenqlSelection{ + /** A list of cart lines for the delivery group. */ + cartLines?: (CartLineConnectionGenqlSelection & { __args?: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null)} }) + /** The destination address for the delivery group. */ + deliveryAddress?: MailingAddressGenqlSelection + /** The delivery options available for the delivery group. */ + deliveryOptions?: CartDeliveryOptionGenqlSelection + /** The ID for the delivery group. */ + id?: boolean | number + /** The selected delivery option for the delivery group. */ + selectedDeliveryOption?: CartDeliveryOptionGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type for paginating through multiple CartDeliveryGroups. + * + */ +export interface CartDeliveryGroupConnectionGenqlSelection{ + /** A list of edges. */ + edges?: CartDeliveryGroupEdgeGenqlSelection + /** A list of the nodes contained in CartDeliveryGroupEdge. */ + nodes?: CartDeliveryGroupGenqlSelection + /** Information to aid in pagination. */ + pageInfo?: PageInfoGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type which holds one CartDeliveryGroup and a cursor during pagination. + * + */ +export interface CartDeliveryGroupEdgeGenqlSelection{ + /** A cursor for use in pagination. */ + cursor?: boolean | number + /** The item at the end of CartDeliveryGroupEdge. */ + node?: CartDeliveryGroupGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Information about a delivery option. */ +export interface CartDeliveryOptionGenqlSelection{ + /** The code of the delivery option. */ + code?: boolean | number + /** The method for the delivery option. */ + deliveryMethodType?: boolean | number + /** The description of the delivery option. */ + description?: boolean | number + /** The estimated cost for the delivery option. */ + estimatedCost?: MoneyV2GenqlSelection + /** The unique identifier of the delivery option. */ + handle?: boolean | number + /** The title of the delivery option. */ + title?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** The discounts that have been applied to the cart line. */ +export interface CartDiscountAllocationGenqlSelection{ + /** The discounted amount that has been applied to the cart line. */ + discountedAmount?: MoneyV2GenqlSelection + on_CartAutomaticDiscountAllocation?: CartAutomaticDiscountAllocationGenqlSelection + on_CartCodeDiscountAllocation?: CartCodeDiscountAllocationGenqlSelection + on_CartCustomDiscountAllocation?: CartCustomDiscountAllocationGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** The discount codes applied to the cart. */ +export interface CartDiscountCodeGenqlSelection{ + /** Whether the discount code is applicable to the cart's current contents. */ + applicable?: boolean | number + /** The code for the discount. */ + code?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `cartDiscountCodesUpdate` mutation. */ +export interface CartDiscountCodesUpdatePayloadGenqlSelection{ + /** The updated cart. */ + cart?: CartGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + userErrors?: CartUserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * The estimated costs that the buyer will pay at checkout. + * The estimated cost uses + * [`CartBuyerIdentity`](https://shopify.dev/api/storefront/reference/cart/cartbuyeridentity) + * to determine + * [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing). + * + */ +export interface CartEstimatedCostGenqlSelection{ + /** The estimated amount, before taxes and discounts, for the customer to pay at checkout. The checkout charge amount doesn't include any deferred payments that'll be paid at a later date. If the cart has no deferred payments, then the checkout charge amount is equivalent to`subtotal_amount`. */ + checkoutChargeAmount?: MoneyV2GenqlSelection + /** The estimated amount, before taxes and discounts, for the customer to pay. */ + subtotalAmount?: MoneyV2GenqlSelection + /** The estimated total amount for the customer to pay. */ + totalAmount?: MoneyV2GenqlSelection + /** The estimated duty amount for the customer to pay at checkout. */ + totalDutyAmount?: MoneyV2GenqlSelection + /** The estimated tax amount for the customer to pay at checkout. */ + totalTaxAmount?: MoneyV2GenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Specifies the input fields to create a cart. */ +export interface CartInput { +/** An array of key-value pairs that contains additional information about the cart. */ +attributes?: (AttributeInput[] | null), +/** A list of merchandise lines to add to the cart. */ +lines?: (CartLineInput[] | null), +/** + * The case-insensitive discount codes that the customer added at checkout. + * + */ +discountCodes?: (Scalars['String'][] | null), +/** A note that is associated with the cart. For example, the note can be a personalized message to the buyer. */ +note?: (Scalars['String'] | null), +/** + * The customer associated with the cart. Used to determine [international pricing] + * (https://shopify.dev/custom-storefronts/internationalization/international-pricing). + * Buyer identity should match the customer's shipping address. + * + */ +buyerIdentity?: (CartBuyerIdentityInput | null)} + + +/** Represents information about the merchandise in the cart. */ +export interface CartLineGenqlSelection{ + /** An attribute associated with the cart line. */ + attribute?: (AttributeGenqlSelection & { __args: { + /** The key of the attribute. */ + key: Scalars['String']} }) + /** The attributes associated with the cart line. Attributes are represented as key-value pairs. */ + attributes?: AttributeGenqlSelection + /** The cost of the merchandise that the buyer will pay for at checkout. The costs are subject to change and changes will be reflected at checkout. */ + cost?: CartLineCostGenqlSelection + /** The discounts that have been applied to the cart line. */ + discountAllocations?: CartDiscountAllocationGenqlSelection + /** + * @deprecated Use `cost` instead. + * The estimated cost of the merchandise that the buyer will pay for at checkout. The estimated costs are subject to change and changes will be reflected at checkout. + */ + estimatedCost?: CartLineEstimatedCostGenqlSelection + /** A globally-unique identifier. */ + id?: boolean | number + /** The merchandise that the buyer intends to purchase. */ + merchandise?: MerchandiseGenqlSelection + /** The quantity of the merchandise that the customer intends to purchase. */ + quantity?: boolean | number + /** The selling plan associated with the cart line and the effect that each selling plan has on variants when they're purchased. */ + sellingPlanAllocation?: SellingPlanAllocationGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type for paginating through multiple CartLines. + * + */ +export interface CartLineConnectionGenqlSelection{ + /** A list of edges. */ + edges?: CartLineEdgeGenqlSelection + /** A list of the nodes contained in CartLineEdge. */ + nodes?: CartLineGenqlSelection + /** Information to aid in pagination. */ + pageInfo?: PageInfoGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** The cost of the merchandise line that the buyer will pay at checkout. */ +export interface CartLineCostGenqlSelection{ + /** The amount of the merchandise line. */ + amountPerQuantity?: MoneyV2GenqlSelection + /** The compare at amount of the merchandise line. */ + compareAtAmountPerQuantity?: MoneyV2GenqlSelection + /** The cost of the merchandise line before line-level discounts. */ + subtotalAmount?: MoneyV2GenqlSelection + /** The total cost of the merchandise line. */ + totalAmount?: MoneyV2GenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type which holds one CartLine and a cursor during pagination. + * + */ +export interface CartLineEdgeGenqlSelection{ + /** A cursor for use in pagination. */ + cursor?: boolean | number + /** The item at the end of CartLineEdge. */ + node?: CartLineGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** The estimated cost of the merchandise line that the buyer will pay at checkout. */ +export interface CartLineEstimatedCostGenqlSelection{ + /** The amount of the merchandise line. */ + amount?: MoneyV2GenqlSelection + /** The compare at amount of the merchandise line. */ + compareAtAmount?: MoneyV2GenqlSelection + /** The estimated cost of the merchandise line before discounts. */ + subtotalAmount?: MoneyV2GenqlSelection + /** The estimated total cost of the merchandise line. */ + totalAmount?: MoneyV2GenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Specifies the input fields to create a merchandise line on a cart. */ +export interface CartLineInput { +/** An array of key-value pairs that contains additional information about the merchandise line. */ +attributes?: (AttributeInput[] | null), +/** The quantity of the merchandise. */ +quantity?: (Scalars['Int'] | null), +/** The identifier of the merchandise that the buyer intends to purchase. */ +merchandiseId: Scalars['ID'], +/** The identifier of the selling plan that the merchandise is being purchased with. */ +sellingPlanId?: (Scalars['ID'] | null)} + + +/** Specifies the input fields to update a line item on a cart. */ +export interface CartLineUpdateInput { +/** The identifier of the merchandise line. */ +id: Scalars['ID'], +/** The quantity of the line item. */ +quantity?: (Scalars['Int'] | null), +/** The identifier of the merchandise for the line item. */ +merchandiseId?: (Scalars['ID'] | null), +/** An array of key-value pairs that contains additional information about the merchandise line. */ +attributes?: (AttributeInput[] | null), +/** The identifier of the selling plan that the merchandise is being purchased with. */ +sellingPlanId?: (Scalars['ID'] | null)} + + +/** Return type for `cartLinesAdd` mutation. */ +export interface CartLinesAddPayloadGenqlSelection{ + /** The updated cart. */ + cart?: CartGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + userErrors?: CartUserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `cartLinesRemove` mutation. */ +export interface CartLinesRemovePayloadGenqlSelection{ + /** The updated cart. */ + cart?: CartGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + userErrors?: CartUserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `cartLinesUpdate` mutation. */ +export interface CartLinesUpdatePayloadGenqlSelection{ + /** The updated cart. */ + cart?: CartGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + userErrors?: CartUserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `cartNoteUpdate` mutation. */ +export interface CartNoteUpdatePayloadGenqlSelection{ + /** The updated cart. */ + cart?: CartGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + userErrors?: CartUserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * The input fields for updating the selected delivery options for a delivery group. + * + */ +export interface CartSelectedDeliveryOptionInput { +/** The ID of the cart delivery group. */ +deliveryGroupId: Scalars['ID'], +/** The handle of the selected delivery option. */ +deliveryOptionHandle: Scalars['String']} + + +/** Return type for `cartSelectedDeliveryOptionsUpdate` mutation. */ +export interface CartSelectedDeliveryOptionsUpdatePayloadGenqlSelection{ + /** The updated cart. */ + cart?: CartGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + userErrors?: CartUserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Represents an error that happens during execution of a cart mutation. */ +export interface CartUserErrorGenqlSelection{ + /** The error code. */ + code?: boolean | number + /** The path to the input field that caused the error. */ + field?: boolean | number + /** The error message. */ + message?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** A container for all the information required to checkout items and pay. */ +export interface CheckoutGenqlSelection{ + /** The gift cards used on the checkout. */ + appliedGiftCards?: AppliedGiftCardGenqlSelection + /** + * The available shipping rates for this Checkout. + * Should only be used when checkout `requiresShipping` is `true` and + * the shipping address is valid. + * + */ + availableShippingRates?: AvailableShippingRatesGenqlSelection + /** The identity of the customer associated with the checkout. */ + buyerIdentity?: CheckoutBuyerIdentityGenqlSelection + /** The date and time when the checkout was completed. */ + completedAt?: boolean | number + /** The date and time when the checkout was created. */ + createdAt?: boolean | number + /** The currency code for the checkout. */ + currencyCode?: boolean | number + /** A list of extra information that is added to the checkout. */ + customAttributes?: AttributeGenqlSelection + /** Discounts that have been applied on the checkout. */ + discountApplications?: (DiscountApplicationConnectionGenqlSelection & { __args?: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null)} }) + /** The email attached to this checkout. */ + email?: boolean | number + /** A globally-unique identifier. */ + id?: boolean | number + /** A list of line item objects, each one containing information about an item in the checkout. */ + lineItems?: (CheckoutLineItemConnectionGenqlSelection & { __args?: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null)} }) + /** The sum of all the prices of all the items in the checkout. Duties, taxes, shipping and discounts excluded. */ + lineItemsSubtotalPrice?: MoneyV2GenqlSelection + /** The note associated with the checkout. */ + note?: boolean | number + /** The resulting order from a paid checkout. */ + order?: OrderGenqlSelection + /** The Order Status Page for this Checkout, null when checkout is not completed. */ + orderStatusUrl?: boolean | number + /** The amount left to be paid. This is equal to the cost of the line items, taxes, and shipping, minus discounts and gift cards. */ + paymentDue?: MoneyV2GenqlSelection + /** + * @deprecated Use `paymentDue` instead. + * The amount left to be paid. This is equal to the cost of the line items, duties, taxes, and shipping, minus discounts and gift cards. + */ + paymentDueV2?: MoneyV2GenqlSelection + /** + * Whether or not the Checkout is ready and can be completed. Checkouts may + * have asynchronous operations that can take time to finish. If you want + * to complete a checkout or ensure all the fields are populated and up to + * date, polling is required until the value is true. + * + */ + ready?: boolean | number + /** States whether or not the fulfillment requires shipping. */ + requiresShipping?: boolean | number + /** The shipping address to where the line items will be shipped. */ + shippingAddress?: MailingAddressGenqlSelection + /** + * The discounts that have been allocated onto the shipping line by discount applications. + * + */ + shippingDiscountAllocations?: DiscountAllocationGenqlSelection + /** Once a shipping rate is selected by the customer it is transitioned to a `shipping_line` object. */ + shippingLine?: ShippingRateGenqlSelection + /** The price at checkout before shipping and taxes. */ + subtotalPrice?: MoneyV2GenqlSelection + /** + * @deprecated Use `subtotalPrice` instead. + * The price at checkout before duties, shipping, and taxes. + */ + subtotalPriceV2?: MoneyV2GenqlSelection + /** Whether the checkout is tax exempt. */ + taxExempt?: boolean | number + /** Whether taxes are included in the line item and shipping line prices. */ + taxesIncluded?: boolean | number + /** The sum of all the duties applied to the line items in the checkout. */ + totalDuties?: MoneyV2GenqlSelection + /** The sum of all the prices of all the items in the checkout, including taxes and duties. */ + totalPrice?: MoneyV2GenqlSelection + /** + * @deprecated Use `totalPrice` instead. + * The sum of all the prices of all the items in the checkout, including taxes and duties. + */ + totalPriceV2?: MoneyV2GenqlSelection + /** The sum of all the taxes applied to the line items and shipping lines in the checkout. */ + totalTax?: MoneyV2GenqlSelection + /** + * @deprecated Use `totalTax` instead. + * The sum of all the taxes applied to the line items and shipping lines in the checkout. + */ + totalTaxV2?: MoneyV2GenqlSelection + /** The date and time when the checkout was last updated. */ + updatedAt?: boolean | number + /** The url pointing to the checkout accessible from the web. */ + webUrl?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Specifies the fields required to update a checkout's attributes. */ +export interface CheckoutAttributesUpdateV2Input { +/** The text of an optional note that a shop owner can attach to the checkout. */ +note?: (Scalars['String'] | null), +/** A list of extra information that is added to the checkout. */ +customAttributes?: (AttributeInput[] | null), +/** + * Allows setting partial addresses on a Checkout, skipping the full validation of attributes. + * The required attributes are city, province, and country. + * Full validation of the addresses is still done at completion time. Defaults to `false` with + * each operation. + * + */ +allowPartialAddresses?: (Scalars['Boolean'] | null)} + + +/** Return type for `checkoutAttributesUpdateV2` mutation. */ +export interface CheckoutAttributesUpdateV2PayloadGenqlSelection{ + /** The updated checkout object. */ + checkout?: CheckoutGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors?: CheckoutUserErrorGenqlSelection + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** The identity of the customer associated with the checkout. */ +export interface CheckoutBuyerIdentityGenqlSelection{ + /** The country code for the checkout. For example, `CA`. */ + countryCode?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Specifies the identity of the customer associated with the checkout. */ +export interface CheckoutBuyerIdentityInput { +/** + * The country code of one of the shop's + * [enabled countries](https://help.shopify.com/en/manual/payments/shopify-payments/multi-currency/setup). + * For example, `CA`. Including this field creates a checkout in the specified country's currency. + * + */ +countryCode: CountryCode} + + +/** Return type for `checkoutCompleteFree` mutation. */ +export interface CheckoutCompleteFreePayloadGenqlSelection{ + /** The updated checkout object. */ + checkout?: CheckoutGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors?: CheckoutUserErrorGenqlSelection + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `checkoutCompleteWithCreditCardV2` mutation. */ +export interface CheckoutCompleteWithCreditCardV2PayloadGenqlSelection{ + /** The checkout on which the payment was applied. */ + checkout?: CheckoutGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors?: CheckoutUserErrorGenqlSelection + /** A representation of the attempted payment. */ + payment?: PaymentGenqlSelection + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `checkoutCompleteWithTokenizedPaymentV3` mutation. */ +export interface CheckoutCompleteWithTokenizedPaymentV3PayloadGenqlSelection{ + /** The checkout on which the payment was applied. */ + checkout?: CheckoutGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors?: CheckoutUserErrorGenqlSelection + /** A representation of the attempted payment. */ + payment?: PaymentGenqlSelection + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Specifies the fields required to create a checkout. */ +export interface CheckoutCreateInput { +/** The email with which the customer wants to checkout. */ +email?: (Scalars['String'] | null), +/** A list of line item objects, each one containing information about an item in the checkout. */ +lineItems?: (CheckoutLineItemInput[] | null), +/** The shipping address to where the line items will be shipped. */ +shippingAddress?: (MailingAddressInput | null), +/** The text of an optional note that a shop owner can attach to the checkout. */ +note?: (Scalars['String'] | null), +/** A list of extra information that is added to the checkout. */ +customAttributes?: (AttributeInput[] | null), +/** + * Allows setting partial addresses on a Checkout, skipping the full validation of attributes. + * The required attributes are city, province, and country. + * Full validation of addresses is still done at completion time. Defaults to `null`. + * + */ +allowPartialAddresses?: (Scalars['Boolean'] | null), +/** The identity of the customer associated with the checkout. */ +buyerIdentity?: (CheckoutBuyerIdentityInput | null)} + + +/** Return type for `checkoutCreate` mutation. */ +export interface CheckoutCreatePayloadGenqlSelection{ + /** The new checkout object. */ + checkout?: CheckoutGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors?: CheckoutUserErrorGenqlSelection + /** The checkout queue token. Available only to selected stores. */ + queueToken?: boolean | number + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `checkoutCustomerAssociateV2` mutation. */ +export interface CheckoutCustomerAssociateV2PayloadGenqlSelection{ + /** The updated checkout object. */ + checkout?: CheckoutGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors?: CheckoutUserErrorGenqlSelection + /** The associated customer object. */ + customer?: CustomerGenqlSelection + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `checkoutCustomerDisassociateV2` mutation. */ +export interface CheckoutCustomerDisassociateV2PayloadGenqlSelection{ + /** The updated checkout object. */ + checkout?: CheckoutGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors?: CheckoutUserErrorGenqlSelection + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `checkoutDiscountCodeApplyV2` mutation. */ +export interface CheckoutDiscountCodeApplyV2PayloadGenqlSelection{ + /** The updated checkout object. */ + checkout?: CheckoutGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors?: CheckoutUserErrorGenqlSelection + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `checkoutDiscountCodeRemove` mutation. */ +export interface CheckoutDiscountCodeRemovePayloadGenqlSelection{ + /** The updated checkout object. */ + checkout?: CheckoutGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors?: CheckoutUserErrorGenqlSelection + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `checkoutEmailUpdateV2` mutation. */ +export interface CheckoutEmailUpdateV2PayloadGenqlSelection{ + /** The checkout object with the updated email. */ + checkout?: CheckoutGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors?: CheckoutUserErrorGenqlSelection + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `checkoutGiftCardRemoveV2` mutation. */ +export interface CheckoutGiftCardRemoveV2PayloadGenqlSelection{ + /** The updated checkout object. */ + checkout?: CheckoutGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors?: CheckoutUserErrorGenqlSelection + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `checkoutGiftCardsAppend` mutation. */ +export interface CheckoutGiftCardsAppendPayloadGenqlSelection{ + /** The updated checkout object. */ + checkout?: CheckoutGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors?: CheckoutUserErrorGenqlSelection + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** A single line item in the checkout, grouped by variant and attributes. */ +export interface CheckoutLineItemGenqlSelection{ + /** Extra information in the form of an array of Key-Value pairs about the line item. */ + customAttributes?: AttributeGenqlSelection + /** The discounts that have been allocated onto the checkout line item by discount applications. */ + discountAllocations?: DiscountAllocationGenqlSelection + /** A globally-unique identifier. */ + id?: boolean | number + /** The quantity of the line item. */ + quantity?: boolean | number + /** Title of the line item. Defaults to the product's title. */ + title?: boolean | number + /** Unit price of the line item. */ + unitPrice?: MoneyV2GenqlSelection + /** Product variant of the line item. */ + variant?: ProductVariantGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type for paginating through multiple CheckoutLineItems. + * + */ +export interface CheckoutLineItemConnectionGenqlSelection{ + /** A list of edges. */ + edges?: CheckoutLineItemEdgeGenqlSelection + /** A list of the nodes contained in CheckoutLineItemEdge. */ + nodes?: CheckoutLineItemGenqlSelection + /** Information to aid in pagination. */ + pageInfo?: PageInfoGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type which holds one CheckoutLineItem and a cursor during pagination. + * + */ +export interface CheckoutLineItemEdgeGenqlSelection{ + /** A cursor for use in pagination. */ + cursor?: boolean | number + /** The item at the end of CheckoutLineItemEdge. */ + node?: CheckoutLineItemGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Specifies the input fields to create a line item on a checkout. */ +export interface CheckoutLineItemInput { +/** Extra information in the form of an array of Key-Value pairs about the line item. */ +customAttributes?: (AttributeInput[] | null), +/** The quantity of the line item. */ +quantity: Scalars['Int'], +/** The identifier of the product variant for the line item. */ +variantId: Scalars['ID']} + + +/** Specifies the input fields to update a line item on the checkout. */ +export interface CheckoutLineItemUpdateInput { +/** The identifier of the line item. */ +id?: (Scalars['ID'] | null), +/** The variant identifier of the line item. */ +variantId?: (Scalars['ID'] | null), +/** The quantity of the line item. */ +quantity?: (Scalars['Int'] | null), +/** Extra information in the form of an array of Key-Value pairs about the line item. */ +customAttributes?: (AttributeInput[] | null)} + + +/** Return type for `checkoutLineItemsAdd` mutation. */ +export interface CheckoutLineItemsAddPayloadGenqlSelection{ + /** The updated checkout object. */ + checkout?: CheckoutGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors?: CheckoutUserErrorGenqlSelection + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `checkoutLineItemsRemove` mutation. */ +export interface CheckoutLineItemsRemovePayloadGenqlSelection{ + /** The updated checkout object. */ + checkout?: CheckoutGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors?: CheckoutUserErrorGenqlSelection + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `checkoutLineItemsReplace` mutation. */ +export interface CheckoutLineItemsReplacePayloadGenqlSelection{ + /** The updated checkout object. */ + checkout?: CheckoutGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + userErrors?: CheckoutUserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `checkoutLineItemsUpdate` mutation. */ +export interface CheckoutLineItemsUpdatePayloadGenqlSelection{ + /** The updated checkout object. */ + checkout?: CheckoutGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors?: CheckoutUserErrorGenqlSelection + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `checkoutShippingAddressUpdateV2` mutation. */ +export interface CheckoutShippingAddressUpdateV2PayloadGenqlSelection{ + /** The updated checkout object. */ + checkout?: CheckoutGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors?: CheckoutUserErrorGenqlSelection + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `checkoutShippingLineUpdate` mutation. */ +export interface CheckoutShippingLineUpdatePayloadGenqlSelection{ + /** The updated checkout object. */ + checkout?: CheckoutGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + checkoutUserErrors?: CheckoutUserErrorGenqlSelection + /** + * @deprecated Use `checkoutUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Represents an error that happens during execution of a checkout mutation. */ +export interface CheckoutUserErrorGenqlSelection{ + /** The error code. */ + code?: boolean | number + /** The path to the input field that caused the error. */ + field?: boolean | number + /** The error message. */ + message?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** A collection represents a grouping of products that a shop owner can create to organize them or make their shops easier to browse. */ +export interface CollectionGenqlSelection{ + /** Stripped description of the collection, single line with HTML tags removed. */ + description?: { __args: { + /** Truncates string after the given length. */ + truncateAt?: (Scalars['Int'] | null)} } | boolean | number + /** The description of the collection, complete with HTML formatting. */ + descriptionHtml?: boolean | number + /** + * A human-friendly unique string for the collection automatically generated from its title. + * Limit of 255 characters. + * + */ + handle?: boolean | number + /** A globally-unique identifier. */ + id?: boolean | number + /** Image associated with the collection. */ + image?: ImageGenqlSelection + /** Returns a metafield found by namespace and key. */ + metafield?: (MetafieldGenqlSelection & { __args: { + /** A container for a set of metafields. */ + namespace: Scalars['String'], + /** The identifier for the metafield. */ + key: Scalars['String']} }) + /** + * The metafields associated with the resource matching the supplied list of namespaces and keys. + * + */ + metafields?: (MetafieldGenqlSelection & { __args: { + /** The list of metafields to retrieve by namespace and key. */ + identifiers: HasMetafieldsIdentifier[]} }) + /** The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel. */ + onlineStoreUrl?: boolean | number + /** List of products in the collection. */ + products?: (ProductConnectionGenqlSelection & { __args?: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null), + /** Sort the underlying list by the given key. */ + sortKey?: (ProductCollectionSortKeys | null), + /** Returns a subset of products matching all product filters. */ + filters?: (ProductFilter[] | null)} }) + /** The collection's SEO information. */ + seo?: SEOGenqlSelection + /** The collection’s name. Limit of 255 characters. */ + title?: boolean | number + /** The date and time when the collection was last modified. */ + updatedAt?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type for paginating through multiple Collections. + * + */ +export interface CollectionConnectionGenqlSelection{ + /** A list of edges. */ + edges?: CollectionEdgeGenqlSelection + /** A list of the nodes contained in CollectionEdge. */ + nodes?: CollectionGenqlSelection + /** Information to aid in pagination. */ + pageInfo?: PageInfoGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type which holds one Collection and a cursor during pagination. + * + */ +export interface CollectionEdgeGenqlSelection{ + /** A cursor for use in pagination. */ + cursor?: boolean | number + /** The item at the end of CollectionEdge. */ + node?: CollectionGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** A comment on an article. */ +export interface CommentGenqlSelection{ + /** The comment’s author. */ + author?: CommentAuthorGenqlSelection + /** Stripped content of the comment, single line with HTML tags removed. */ + content?: { __args: { + /** Truncates string after the given length. */ + truncateAt?: (Scalars['Int'] | null)} } | boolean | number + /** The content of the comment, complete with HTML formatting. */ + contentHtml?: boolean | number + /** A globally-unique identifier. */ + id?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** The author of a comment. */ +export interface CommentAuthorGenqlSelection{ + /** The author's email. */ + email?: boolean | number + /** The author’s name. */ + name?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type for paginating through multiple Comments. + * + */ +export interface CommentConnectionGenqlSelection{ + /** A list of edges. */ + edges?: CommentEdgeGenqlSelection + /** A list of the nodes contained in CommentEdge. */ + nodes?: CommentGenqlSelection + /** Information to aid in pagination. */ + pageInfo?: PageInfoGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type which holds one Comment and a cursor during pagination. + * + */ +export interface CommentEdgeGenqlSelection{ + /** A cursor for use in pagination. */ + cursor?: boolean | number + /** The item at the end of CommentEdge. */ + node?: CommentGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** A country. */ +export interface CountryGenqlSelection{ + /** The languages available for the country. */ + availableLanguages?: LanguageGenqlSelection + /** The currency of the country. */ + currency?: CurrencyGenqlSelection + /** The ISO code of the country. */ + isoCode?: boolean | number + /** The name of the country. */ + name?: boolean | number + /** The unit system used in the country. */ + unitSystem?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Credit card information used for a payment. */ +export interface CreditCardGenqlSelection{ + /** The brand of the credit card. */ + brand?: boolean | number + /** The expiry month of the credit card. */ + expiryMonth?: boolean | number + /** The expiry year of the credit card. */ + expiryYear?: boolean | number + /** The credit card's BIN number. */ + firstDigits?: boolean | number + /** The first name of the card holder. */ + firstName?: boolean | number + /** The last 4 digits of the credit card. */ + lastDigits?: boolean | number + /** The last name of the card holder. */ + lastName?: boolean | number + /** The masked credit card number with only the last 4 digits displayed. */ + maskedNumber?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * Specifies the fields required to complete a checkout with + * a Shopify vaulted credit card payment. + * + */ +export interface CreditCardPaymentInputV2 { +/** The amount and currency of the payment. */ +paymentAmount: MoneyInput, +/** A unique client generated key used to avoid duplicate charges. When a duplicate payment is found, the original is returned instead of creating a new one. For more information, refer to [Idempotent requests](https://shopify.dev/api/usage/idempotent-requests). */ +idempotencyKey: Scalars['String'], +/** The billing address for the payment. */ +billingAddress: MailingAddressInput, +/** The ID returned by Shopify's Card Vault. */ +vaultId: Scalars['String'], +/** Executes the payment in test mode if possible. Defaults to `false`. */ +test?: (Scalars['Boolean'] | null)} + + +/** A currency. */ +export interface CurrencyGenqlSelection{ + /** The ISO code of the currency. */ + isoCode?: boolean | number + /** The name of the currency. */ + name?: boolean | number + /** The symbol of the currency. */ + symbol?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** A customer represents a customer account with the shop. Customer accounts store contact information for the customer, saving logged-in customers the trouble of having to provide it at every checkout. */ +export interface CustomerGenqlSelection{ + /** Indicates whether the customer has consented to be sent marketing material via email. */ + acceptsMarketing?: boolean | number + /** A list of addresses for the customer. */ + addresses?: (MailingAddressConnectionGenqlSelection & { __args?: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null)} }) + /** The date and time when the customer was created. */ + createdAt?: boolean | number + /** The customer’s default address. */ + defaultAddress?: MailingAddressGenqlSelection + /** The customer’s name, email or phone number. */ + displayName?: boolean | number + /** The customer’s email address. */ + email?: boolean | number + /** The customer’s first name. */ + firstName?: boolean | number + /** A unique identifier for the customer. */ + id?: boolean | number + /** The customer's most recently updated, incomplete checkout. */ + lastIncompleteCheckout?: CheckoutGenqlSelection + /** The customer’s last name. */ + lastName?: boolean | number + /** Returns a metafield found by namespace and key. */ + metafield?: (MetafieldGenqlSelection & { __args: { + /** A container for a set of metafields. */ + namespace: Scalars['String'], + /** The identifier for the metafield. */ + key: Scalars['String']} }) + /** + * The metafields associated with the resource matching the supplied list of namespaces and keys. + * + */ + metafields?: (MetafieldGenqlSelection & { __args: { + /** The list of metafields to retrieve by namespace and key. */ + identifiers: HasMetafieldsIdentifier[]} }) + /** The number of orders that the customer has made at the store in their lifetime. */ + numberOfOrders?: boolean | number + /** The orders associated with the customer. */ + orders?: (OrderConnectionGenqlSelection & { __args: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null), + /** Sort the underlying list by the given key. */ + sortKey?: (OrderSortKeys | null), + /** + * Supported filter parameters: + * - `processed_at` + * + * See the detailed [search syntax](https://shopify.dev/api/usage/search-syntax) + * for more information about using filters. + * + */ + query?: (Scalars['String'] | null)} }) + /** The customer’s phone number. */ + phone?: boolean | number + /** + * A comma separated list of tags that have been added to the customer. + * Additional access scope required: unauthenticated_read_customer_tags. + * + */ + tags?: boolean | number + /** The date and time when the customer information was updated. */ + updatedAt?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** A CustomerAccessToken represents the unique token required to make modifications to the customer object. */ +export interface CustomerAccessTokenGenqlSelection{ + /** The customer’s access token. */ + accessToken?: boolean | number + /** The date and time when the customer access token expires. */ + expiresAt?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Specifies the input fields required to create a customer access token. */ +export interface CustomerAccessTokenCreateInput { +/** The email associated to the customer. */ +email: Scalars['String'], +/** The login password to be used by the customer. */ +password: Scalars['String']} + + +/** Return type for `customerAccessTokenCreate` mutation. */ +export interface CustomerAccessTokenCreatePayloadGenqlSelection{ + /** The newly created customer access token object. */ + customerAccessToken?: CustomerAccessTokenGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + customerUserErrors?: CustomerUserErrorGenqlSelection + /** + * @deprecated Use `customerUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `customerAccessTokenCreateWithMultipass` mutation. */ +export interface CustomerAccessTokenCreateWithMultipassPayloadGenqlSelection{ + /** An access token object associated with the customer. */ + customerAccessToken?: CustomerAccessTokenGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + customerUserErrors?: CustomerUserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `customerAccessTokenDelete` mutation. */ +export interface CustomerAccessTokenDeletePayloadGenqlSelection{ + /** The destroyed access token. */ + deletedAccessToken?: boolean | number + /** ID of the destroyed customer access token. */ + deletedCustomerAccessTokenId?: boolean | number + /** The list of errors that occurred from executing the mutation. */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `customerAccessTokenRenew` mutation. */ +export interface CustomerAccessTokenRenewPayloadGenqlSelection{ + /** The renewed customer access token object. */ + customerAccessToken?: CustomerAccessTokenGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `customerActivateByUrl` mutation. */ +export interface CustomerActivateByUrlPayloadGenqlSelection{ + /** The customer that was activated. */ + customer?: CustomerGenqlSelection + /** A new customer access token for the customer. */ + customerAccessToken?: CustomerAccessTokenGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + customerUserErrors?: CustomerUserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Specifies the input fields required to activate a customer. */ +export interface CustomerActivateInput { +/** The activation token required to activate the customer. */ +activationToken: Scalars['String'], +/** New password that will be set during activation. */ +password: Scalars['String']} + + +/** Return type for `customerActivate` mutation. */ +export interface CustomerActivatePayloadGenqlSelection{ + /** The customer object. */ + customer?: CustomerGenqlSelection + /** A newly created customer access token object for the customer. */ + customerAccessToken?: CustomerAccessTokenGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + customerUserErrors?: CustomerUserErrorGenqlSelection + /** + * @deprecated Use `customerUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `customerAddressCreate` mutation. */ +export interface CustomerAddressCreatePayloadGenqlSelection{ + /** The new customer address object. */ + customerAddress?: MailingAddressGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + customerUserErrors?: CustomerUserErrorGenqlSelection + /** + * @deprecated Use `customerUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `customerAddressDelete` mutation. */ +export interface CustomerAddressDeletePayloadGenqlSelection{ + /** The list of errors that occurred from executing the mutation. */ + customerUserErrors?: CustomerUserErrorGenqlSelection + /** ID of the deleted customer address. */ + deletedCustomerAddressId?: boolean | number + /** + * @deprecated Use `customerUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `customerAddressUpdate` mutation. */ +export interface CustomerAddressUpdatePayloadGenqlSelection{ + /** The customer’s updated mailing address. */ + customerAddress?: MailingAddressGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + customerUserErrors?: CustomerUserErrorGenqlSelection + /** + * @deprecated Use `customerUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** The fields required to create a new customer. */ +export interface CustomerCreateInput { +/** The customer’s first name. */ +firstName?: (Scalars['String'] | null), +/** The customer’s last name. */ +lastName?: (Scalars['String'] | null), +/** The customer’s email. */ +email: Scalars['String'], +/** + * A unique phone number for the customer. + * + * Formatted using E.164 standard. For example, _+16135551111_. + * + */ +phone?: (Scalars['String'] | null), +/** The login password used by the customer. */ +password: Scalars['String'], +/** Indicates whether the customer has consented to be sent marketing material via email. */ +acceptsMarketing?: (Scalars['Boolean'] | null)} + + +/** Return type for `customerCreate` mutation. */ +export interface CustomerCreatePayloadGenqlSelection{ + /** The created customer object. */ + customer?: CustomerGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + customerUserErrors?: CustomerUserErrorGenqlSelection + /** + * @deprecated Use `customerUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `customerDefaultAddressUpdate` mutation. */ +export interface CustomerDefaultAddressUpdatePayloadGenqlSelection{ + /** The updated customer object. */ + customer?: CustomerGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + customerUserErrors?: CustomerUserErrorGenqlSelection + /** + * @deprecated Use `customerUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `customerRecover` mutation. */ +export interface CustomerRecoverPayloadGenqlSelection{ + /** The list of errors that occurred from executing the mutation. */ + customerUserErrors?: CustomerUserErrorGenqlSelection + /** + * @deprecated Use `customerUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Return type for `customerResetByUrl` mutation. */ +export interface CustomerResetByUrlPayloadGenqlSelection{ + /** The customer object which was reset. */ + customer?: CustomerGenqlSelection + /** A newly created customer access token object for the customer. */ + customerAccessToken?: CustomerAccessTokenGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + customerUserErrors?: CustomerUserErrorGenqlSelection + /** + * @deprecated Use `customerUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Specifies the fields required to reset a customer’s password. */ +export interface CustomerResetInput { +/** The reset token required to reset the customer’s password. */ +resetToken: Scalars['String'], +/** New password that will be set as part of the reset password process. */ +password: Scalars['String']} + + +/** Return type for `customerReset` mutation. */ +export interface CustomerResetPayloadGenqlSelection{ + /** The customer object which was reset. */ + customer?: CustomerGenqlSelection + /** A newly created customer access token object for the customer. */ + customerAccessToken?: CustomerAccessTokenGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + customerUserErrors?: CustomerUserErrorGenqlSelection + /** + * @deprecated Use `customerUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Specifies the fields required to update the Customer information. */ +export interface CustomerUpdateInput { +/** The customer’s first name. */ +firstName?: (Scalars['String'] | null), +/** The customer’s last name. */ +lastName?: (Scalars['String'] | null), +/** The customer’s email. */ +email?: (Scalars['String'] | null), +/** + * A unique phone number for the customer. + * + * Formatted using E.164 standard. For example, _+16135551111_. To remove the phone number, specify `null`. + * + */ +phone?: (Scalars['String'] | null), +/** The login password used by the customer. */ +password?: (Scalars['String'] | null), +/** Indicates whether the customer has consented to be sent marketing material via email. */ +acceptsMarketing?: (Scalars['Boolean'] | null)} + + +/** Return type for `customerUpdate` mutation. */ +export interface CustomerUpdatePayloadGenqlSelection{ + /** The updated customer object. */ + customer?: CustomerGenqlSelection + /** + * The newly created customer access token. If the customer's password is updated, all previous access tokens + * (including the one used to perform this mutation) become invalid, and a new token is generated. + * + */ + customerAccessToken?: CustomerAccessTokenGenqlSelection + /** The list of errors that occurred from executing the mutation. */ + customerUserErrors?: CustomerUserErrorGenqlSelection + /** + * @deprecated Use `customerUserErrors` instead. + * The list of errors that occurred from executing the mutation. + */ + userErrors?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Represents an error that happens during execution of a customer mutation. */ +export interface CustomerUserErrorGenqlSelection{ + /** The error code. */ + code?: boolean | number + /** The path to the input field that caused the error. */ + field?: boolean | number + /** The error message. */ + message?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** A delivery address of the buyer that is interacting with the cart. */ +export interface DeliveryAddressGenqlSelection{ + on_MailingAddress?:MailingAddressGenqlSelection, + on_Node?: NodeGenqlSelection, + __typename?: boolean | number +} + + +/** + * The input fields for delivery address preferences. + * + */ +export interface DeliveryAddressInput { +/** A delivery address preference of a buyer that is interacting with the cart. */ +deliveryAddress?: (MailingAddressInput | null)} + + +/** + * An amount discounting the line that has been allocated by a discount. + * + */ +export interface DiscountAllocationGenqlSelection{ + /** Amount of discount allocated. */ + allocatedAmount?: MoneyV2GenqlSelection + /** The discount this allocated amount originated from. */ + discountApplication?: DiscountApplicationGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * Discount applications capture the intentions of a discount source at + * the time of application. + * + */ +export interface DiscountApplicationGenqlSelection{ + /** The method by which the discount's value is allocated to its entitled items. */ + allocationMethod?: boolean | number + /** Which lines of targetType that the discount is allocated over. */ + targetSelection?: boolean | number + /** The type of line that the discount is applicable towards. */ + targetType?: boolean | number + /** The value of the discount application. */ + value?: PricingValueGenqlSelection + on_AutomaticDiscountApplication?: AutomaticDiscountApplicationGenqlSelection + on_DiscountCodeApplication?: DiscountCodeApplicationGenqlSelection + on_ManualDiscountApplication?: ManualDiscountApplicationGenqlSelection + on_ScriptDiscountApplication?: ScriptDiscountApplicationGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type for paginating through multiple DiscountApplications. + * + */ +export interface DiscountApplicationConnectionGenqlSelection{ + /** A list of edges. */ + edges?: DiscountApplicationEdgeGenqlSelection + /** A list of the nodes contained in DiscountApplicationEdge. */ + nodes?: DiscountApplicationGenqlSelection + /** Information to aid in pagination. */ + pageInfo?: PageInfoGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type which holds one DiscountApplication and a cursor during pagination. + * + */ +export interface DiscountApplicationEdgeGenqlSelection{ + /** A cursor for use in pagination. */ + cursor?: boolean | number + /** The item at the end of DiscountApplicationEdge. */ + node?: DiscountApplicationGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * Discount code applications capture the intentions of a discount code at + * the time that it is applied. + * + */ +export interface DiscountCodeApplicationGenqlSelection{ + /** The method by which the discount's value is allocated to its entitled items. */ + allocationMethod?: boolean | number + /** Specifies whether the discount code was applied successfully. */ + applicable?: boolean | number + /** The string identifying the discount code that was used at the time of application. */ + code?: boolean | number + /** Which lines of targetType that the discount is allocated over. */ + targetSelection?: boolean | number + /** The type of line that the discount is applicable towards. */ + targetType?: boolean | number + /** The value of the discount application. */ + value?: PricingValueGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Represents an error in the input of a mutation. */ +export interface DisplayableErrorGenqlSelection{ + /** The path to the input field that caused the error. */ + field?: boolean | number + /** The error message. */ + message?: boolean | number + on_CartUserError?: CartUserErrorGenqlSelection + on_CheckoutUserError?: CheckoutUserErrorGenqlSelection + on_CustomerUserError?: CustomerUserErrorGenqlSelection + on_UserError?: UserErrorGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Represents a web address. */ +export interface DomainGenqlSelection{ + /** The host name of the domain (eg: `example.com`). */ + host?: boolean | number + /** Whether SSL is enabled or not. */ + sslEnabled?: boolean | number + /** The URL of the domain (eg: `https://example.com`). */ + url?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Represents a video hosted outside of Shopify. */ +export interface ExternalVideoGenqlSelection{ + /** A word or phrase to share the nature or contents of a media. */ + alt?: boolean | number + /** The embed URL of the video for the respective host. */ + embedUrl?: boolean | number + /** + * @deprecated Use `originUrl` instead. + * The URL. + */ + embeddedUrl?: boolean | number + /** The host of the external video. */ + host?: boolean | number + /** A globally-unique identifier. */ + id?: boolean | number + /** The media content type. */ + mediaContentType?: boolean | number + /** The origin URL of the video on the respective host. */ + originUrl?: boolean | number + /** The preview image for the media. */ + previewImage?: ImageGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** A filter that is supported on the parent field. */ +export interface FilterGenqlSelection{ + /** A unique identifier. */ + id?: boolean | number + /** A human-friendly string for this filter. */ + label?: boolean | number + /** An enumeration that denotes the type of data this filter represents. */ + type?: boolean | number + /** The list of values for this filter. */ + values?: FilterValueGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** A selectable value within a filter. */ +export interface FilterValueGenqlSelection{ + /** The number of results that match this filter value. */ + count?: boolean | number + /** A unique identifier. */ + id?: boolean | number + /** + * An input object that can be used to filter by this value on the parent field. + * + * The value is provided as a helper for building dynamic filtering UI. For example, if you have a list of selected `FilterValue` objects, you can combine their respective `input` values to use in a subsequent query. + * + */ + input?: boolean | number + /** A human-friendly string for this filter value. */ + label?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Represents a single fulfillment in an order. */ +export interface FulfillmentGenqlSelection{ + /** List of the fulfillment's line items. */ + fulfillmentLineItems?: (FulfillmentLineItemConnectionGenqlSelection & { __args?: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null)} }) + /** The name of the tracking company. */ + trackingCompany?: boolean | number + /** + * Tracking information associated with the fulfillment, + * such as the tracking number and tracking URL. + * + */ + trackingInfo?: (FulfillmentTrackingInfoGenqlSelection & { __args?: { + /** Truncate the array result to this size. */ + first?: (Scalars['Int'] | null)} }) + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Represents a single line item in a fulfillment. There is at most one fulfillment line item for each order line item. */ +export interface FulfillmentLineItemGenqlSelection{ + /** The associated order's line item. */ + lineItem?: OrderLineItemGenqlSelection + /** The amount fulfilled in this fulfillment. */ + quantity?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type for paginating through multiple FulfillmentLineItems. + * + */ +export interface FulfillmentLineItemConnectionGenqlSelection{ + /** A list of edges. */ + edges?: FulfillmentLineItemEdgeGenqlSelection + /** A list of the nodes contained in FulfillmentLineItemEdge. */ + nodes?: FulfillmentLineItemGenqlSelection + /** Information to aid in pagination. */ + pageInfo?: PageInfoGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type which holds one FulfillmentLineItem and a cursor during pagination. + * + */ +export interface FulfillmentLineItemEdgeGenqlSelection{ + /** A cursor for use in pagination. */ + cursor?: boolean | number + /** The item at the end of FulfillmentLineItemEdge. */ + node?: FulfillmentLineItemGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Tracking information associated with the fulfillment. */ +export interface FulfillmentTrackingInfoGenqlSelection{ + /** The tracking number of the fulfillment. */ + number?: boolean | number + /** The URL to track the fulfillment. */ + url?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** The generic file resource lets you manage files in a merchant’s store. Generic files include any file that doesn’t fit into a designated type such as image or video. Example: PDF, JSON. */ +export interface GenericFileGenqlSelection{ + /** A word or phrase to indicate the contents of a file. */ + alt?: boolean | number + /** A globally-unique identifier. */ + id?: boolean | number + /** The MIME type of the file. */ + mimeType?: boolean | number + /** The size of the original file in bytes. */ + originalFileSize?: boolean | number + /** The preview image for the file. */ + previewImage?: ImageGenqlSelection + /** The URL of the file. */ + url?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Used to specify a geographical location. */ +export interface GeoCoordinateInput { +/** The coordinate's latitude value. */ +latitude: Scalars['Float'], +/** The coordinate's longitude value. */ +longitude: Scalars['Float']} + + +/** Represents information about the metafields associated to the specified resource. */ +export interface HasMetafieldsGenqlSelection{ + /** Returns a metafield found by namespace and key. */ + metafield?: (MetafieldGenqlSelection & { __args: { + /** A container for a set of metafields. */ + namespace: Scalars['String'], + /** The identifier for the metafield. */ + key: Scalars['String']} }) + /** + * The metafields associated with the resource matching the supplied list of namespaces and keys. + * + */ + metafields?: (MetafieldGenqlSelection & { __args: { + /** The list of metafields to retrieve by namespace and key. */ + identifiers: HasMetafieldsIdentifier[]} }) + on_Article?: ArticleGenqlSelection + on_Blog?: BlogGenqlSelection + on_Collection?: CollectionGenqlSelection + on_Customer?: CustomerGenqlSelection + on_Order?: OrderGenqlSelection + on_Page?: PageGenqlSelection + on_Product?: ProductGenqlSelection + on_ProductVariant?: ProductVariantGenqlSelection + on_Shop?: ShopGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Identifies a metafield on an owner resource by namespace and key. */ +export interface HasMetafieldsIdentifier { +/** A container for a set of metafields. */ +namespace: Scalars['String'], +/** The identifier for the metafield. */ +key: Scalars['String']} + + +/** Represents an image resource. */ +export interface ImageGenqlSelection{ + /** A word or phrase to share the nature or contents of an image. */ + altText?: boolean | number + /** The original height of the image in pixels. Returns `null` if the image is not hosted by Shopify. */ + height?: boolean | number + /** A unique identifier for the image. */ + id?: boolean | number + /** + * @deprecated Use `url` instead. + * The location of the original image as a URL. + * + * If there are any existing transformations in the original source URL, they will remain and not be stripped. + * + */ + originalSrc?: boolean | number + /** + * @deprecated Use `url` instead. + * The location of the image as a URL. + */ + src?: boolean | number + /** + * @deprecated Use `url(transform:)` instead + * The location of the transformed image as a URL. + * + * All transformation arguments are considered "best-effort". If they can be applied to an image, they will be. + * Otherwise any transformations which an image type does not support will be ignored. + * + */ + transformedSrc?: { __args: { + /** Image width in pixels between 1 and 5760. */ + maxWidth?: (Scalars['Int'] | null), + /** Image height in pixels between 1 and 5760. */ + maxHeight?: (Scalars['Int'] | null), + /** Crops the image according to the specified region. */ + crop?: (CropRegion | null), + /** Image size multiplier for high-resolution retina displays. Must be between 1 and 3. */ + scale?: (Scalars['Int'] | null), + /** Best effort conversion of image into content type (SVG -> PNG, Anything -> JPG, Anything -> WEBP are supported). */ + preferredContentType?: (ImageContentType | null)} } | boolean | number + /** + * The location of the image as a URL. + * + * If no transform options are specified, then the original image will be preserved including any pre-applied transforms. + * + * All transformation options are considered "best-effort". Any transformation that the original image type doesn't support will be ignored. + * + * If you need multiple variations of the same image, then you can use [GraphQL aliases](https://graphql.org/learn/queries/#aliases). + * + */ + url?: { __args: { + /** A set of options to transform the original image. */ + transform?: (ImageTransformInput | null)} } | boolean | number + /** The original width of the image in pixels. Returns `null` if the image is not hosted by Shopify. */ + width?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type for paginating through multiple Images. + * + */ +export interface ImageConnectionGenqlSelection{ + /** A list of edges. */ + edges?: ImageEdgeGenqlSelection + /** A list of the nodes contained in ImageEdge. */ + nodes?: ImageGenqlSelection + /** Information to aid in pagination. */ + pageInfo?: PageInfoGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type which holds one Image and a cursor during pagination. + * + */ +export interface ImageEdgeGenqlSelection{ + /** A cursor for use in pagination. */ + cursor?: boolean | number + /** The item at the end of ImageEdge. */ + node?: ImageGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * The available options for transforming an image. + * + * All transformation options are considered best effort. Any transformation that the original image type doesn't support will be ignored. + * + */ +export interface ImageTransformInput { +/** + * The region of the image to remain after cropping. + * Must be used in conjunction with the `maxWidth` and/or `maxHeight` fields, where the `maxWidth` and `maxHeight` aren't equal. + * The `crop` argument should coincide with the smaller value. A smaller `maxWidth` indicates a `LEFT` or `RIGHT` crop, while + * a smaller `maxHeight` indicates a `TOP` or `BOTTOM` crop. For example, `{ maxWidth: 5, maxHeight: 10, crop: LEFT }` will result + * in an image with a width of 5 and height of 10, where the right side of the image is removed. + * + */ +crop?: (CropRegion | null), +/** + * Image width in pixels between 1 and 5760. + * + */ +maxWidth?: (Scalars['Int'] | null), +/** + * Image height in pixels between 1 and 5760. + * + */ +maxHeight?: (Scalars['Int'] | null), +/** + * Image size multiplier for high-resolution retina displays. Must be within 1..3. + * + */ +scale?: (Scalars['Int'] | null), +/** + * Convert the source image into the preferred content type. + * Supported conversions: `.svg` to `.png`, any file type to `.jpg`, and any file type to `.webp`. + * + */ +preferredContentType?: (ImageContentType | null)} + + +/** A language. */ +export interface LanguageGenqlSelection{ + /** The name of the language in the language itself. If the language uses capitalization, it is capitalized for a mid-sentence position. */ + endonymName?: boolean | number + /** The ISO code. */ + isoCode?: boolean | number + /** The name of the language in the current language. */ + name?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Information about the localized experiences configured for the shop. */ +export interface LocalizationGenqlSelection{ + /** The list of countries with enabled localized experiences. */ + availableCountries?: CountryGenqlSelection + /** The list of languages available for the active country. */ + availableLanguages?: LanguageGenqlSelection + /** The country of the active localized experience. Use the `@inContext` directive to change this value. */ + country?: CountryGenqlSelection + /** The language of the active localized experience. Use the `@inContext` directive to change this value. */ + language?: LanguageGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Represents a location where product inventory is held. */ +export interface LocationGenqlSelection{ + /** The address of the location. */ + address?: LocationAddressGenqlSelection + /** A globally-unique identifier. */ + id?: boolean | number + /** The name of the location. */ + name?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * Represents the address of a location. + * + */ +export interface LocationAddressGenqlSelection{ + /** The first line of the address for the location. */ + address1?: boolean | number + /** The second line of the address for the location. */ + address2?: boolean | number + /** The city of the location. */ + city?: boolean | number + /** The country of the location. */ + country?: boolean | number + /** The country code of the location. */ + countryCode?: boolean | number + /** A formatted version of the address for the location. */ + formatted?: boolean | number + /** The latitude coordinates of the location. */ + latitude?: boolean | number + /** The longitude coordinates of the location. */ + longitude?: boolean | number + /** The phone number of the location. */ + phone?: boolean | number + /** The province of the location. */ + province?: boolean | number + /** + * The code for the province, state, or district of the address of the location. + * + */ + provinceCode?: boolean | number + /** The ZIP code of the location. */ + zip?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type for paginating through multiple Locations. + * + */ +export interface LocationConnectionGenqlSelection{ + /** A list of edges. */ + edges?: LocationEdgeGenqlSelection + /** A list of the nodes contained in LocationEdge. */ + nodes?: LocationGenqlSelection + /** Information to aid in pagination. */ + pageInfo?: PageInfoGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type which holds one Location and a cursor during pagination. + * + */ +export interface LocationEdgeGenqlSelection{ + /** A cursor for use in pagination. */ + cursor?: boolean | number + /** The item at the end of LocationEdge. */ + node?: LocationGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Represents a mailing address for customers and shipping. */ +export interface MailingAddressGenqlSelection{ + /** The first line of the address. Typically the street address or PO Box number. */ + address1?: boolean | number + /** + * The second line of the address. Typically the number of the apartment, suite, or unit. + * + */ + address2?: boolean | number + /** + * The name of the city, district, village, or town. + * + */ + city?: boolean | number + /** + * The name of the customer's company or organization. + * + */ + company?: boolean | number + /** + * The name of the country. + * + */ + country?: boolean | number + /** + * @deprecated Use `countryCodeV2` instead. + * The two-letter code for the country of the address. + * + * For example, US. + * + */ + countryCode?: boolean | number + /** + * The two-letter code for the country of the address. + * + * For example, US. + * + */ + countryCodeV2?: boolean | number + /** The first name of the customer. */ + firstName?: boolean | number + /** A formatted version of the address, customized by the provided arguments. */ + formatted?: { __args: { + /** Whether to include the customer's name in the formatted address. */ + withName?: (Scalars['Boolean'] | null), + /** Whether to include the customer's company in the formatted address. */ + withCompany?: (Scalars['Boolean'] | null)} } | boolean | number + /** A comma-separated list of the values for city, province, and country. */ + formattedArea?: boolean | number + /** A globally-unique identifier. */ + id?: boolean | number + /** The last name of the customer. */ + lastName?: boolean | number + /** The latitude coordinate of the customer address. */ + latitude?: boolean | number + /** The longitude coordinate of the customer address. */ + longitude?: boolean | number + /** + * The full name of the customer, based on firstName and lastName. + * + */ + name?: boolean | number + /** + * A unique phone number for the customer. + * + * Formatted using E.164 standard. For example, _+16135551111_. + * + */ + phone?: boolean | number + /** The region of the address, such as the province, state, or district. */ + province?: boolean | number + /** + * The two-letter code for the region. + * + * For example, ON. + * + */ + provinceCode?: boolean | number + /** The zip or postal code of the address. */ + zip?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type for paginating through multiple MailingAddresses. + * + */ +export interface MailingAddressConnectionGenqlSelection{ + /** A list of edges. */ + edges?: MailingAddressEdgeGenqlSelection + /** A list of the nodes contained in MailingAddressEdge. */ + nodes?: MailingAddressGenqlSelection + /** Information to aid in pagination. */ + pageInfo?: PageInfoGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type which holds one MailingAddress and a cursor during pagination. + * + */ +export interface MailingAddressEdgeGenqlSelection{ + /** A cursor for use in pagination. */ + cursor?: boolean | number + /** The item at the end of MailingAddressEdge. */ + node?: MailingAddressGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Specifies the fields accepted to create or update a mailing address. */ +export interface MailingAddressInput { +/** + * The first line of the address. Typically the street address or PO Box number. + * + */ +address1?: (Scalars['String'] | null), +/** + * The second line of the address. Typically the number of the apartment, suite, or unit. + * + */ +address2?: (Scalars['String'] | null), +/** + * The name of the city, district, village, or town. + * + */ +city?: (Scalars['String'] | null), +/** + * The name of the customer's company or organization. + * + */ +company?: (Scalars['String'] | null), +/** The name of the country. */ +country?: (Scalars['String'] | null), +/** The first name of the customer. */ +firstName?: (Scalars['String'] | null), +/** The last name of the customer. */ +lastName?: (Scalars['String'] | null), +/** + * A unique phone number for the customer. + * + * Formatted using E.164 standard. For example, _+16135551111_. + * + */ +phone?: (Scalars['String'] | null), +/** The region of the address, such as the province, state, or district. */ +province?: (Scalars['String'] | null), +/** The zip or postal code of the address. */ +zip?: (Scalars['String'] | null)} + + +/** + * Manual discount applications capture the intentions of a discount that was manually created. + * + */ +export interface ManualDiscountApplicationGenqlSelection{ + /** The method by which the discount's value is allocated to its entitled items. */ + allocationMethod?: boolean | number + /** The description of the application. */ + description?: boolean | number + /** Which lines of targetType that the discount is allocated over. */ + targetSelection?: boolean | number + /** The type of line that the discount is applicable towards. */ + targetType?: boolean | number + /** The title of the application. */ + title?: boolean | number + /** The value of the discount application. */ + value?: PricingValueGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Represents a media interface. */ +export interface MediaGenqlSelection{ + /** A word or phrase to share the nature or contents of a media. */ + alt?: boolean | number + /** The media content type. */ + mediaContentType?: boolean | number + /** The preview image for the media. */ + previewImage?: ImageGenqlSelection + on_ExternalVideo?: ExternalVideoGenqlSelection + on_MediaImage?: MediaImageGenqlSelection + on_Model3d?: Model3dGenqlSelection + on_Video?: VideoGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type for paginating through multiple Media. + * + */ +export interface MediaConnectionGenqlSelection{ + /** A list of edges. */ + edges?: MediaEdgeGenqlSelection + /** A list of the nodes contained in MediaEdge. */ + nodes?: MediaGenqlSelection + /** Information to aid in pagination. */ + pageInfo?: PageInfoGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type which holds one Media and a cursor during pagination. + * + */ +export interface MediaEdgeGenqlSelection{ + /** A cursor for use in pagination. */ + cursor?: boolean | number + /** The item at the end of MediaEdge. */ + node?: MediaGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Represents a Shopify hosted image. */ +export interface MediaImageGenqlSelection{ + /** A word or phrase to share the nature or contents of a media. */ + alt?: boolean | number + /** A globally-unique identifier. */ + id?: boolean | number + /** The image for the media. */ + image?: ImageGenqlSelection + /** The media content type. */ + mediaContentType?: boolean | number + /** The preview image for the media. */ + previewImage?: ImageGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * A menu used for navigation within a storefront. + * + */ +export interface MenuGenqlSelection{ + /** The menu's handle. */ + handle?: boolean | number + /** A globally-unique identifier. */ + id?: boolean | number + /** The menu's child items. */ + items?: MenuItemGenqlSelection + /** The count of items on the menu. */ + itemsCount?: boolean | number + /** The menu's title. */ + title?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * A menu item within a parent menu. + * + */ +export interface MenuItemGenqlSelection{ + /** A globally-unique identifier. */ + id?: boolean | number + /** The menu item's child items. */ + items?: MenuItemGenqlSelection + /** The ID of the linked resource. */ + resourceId?: boolean | number + /** The menu item's tags to filter a collection. */ + tags?: boolean | number + /** The menu item's title. */ + title?: boolean | number + /** The menu item's type. */ + type?: boolean | number + /** The menu item's URL. */ + url?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** The merchandise to be purchased at checkout. */ +export interface MerchandiseGenqlSelection{ + on_ProductVariant?:ProductVariantGenqlSelection, + on_HasMetafields?: HasMetafieldsGenqlSelection, + on_Node?: NodeGenqlSelection, + __typename?: boolean | number +} + + +/** + * Metafields represent custom metadata attached to a resource. Metafields can be sorted into namespaces and are + * comprised of keys, values, and value types. + * + */ +export interface MetafieldGenqlSelection{ + /** The date and time when the storefront metafield was created. */ + createdAt?: boolean | number + /** The description of a metafield. */ + description?: boolean | number + /** A globally-unique identifier. */ + id?: boolean | number + /** The key name for a metafield. */ + key?: boolean | number + /** The namespace for a metafield. */ + namespace?: boolean | number + /** The parent object that the metafield belongs to. */ + parentResource?: MetafieldParentResourceGenqlSelection + /** Returns a reference object if the metafield definition's type is a resource reference. */ + reference?: MetafieldReferenceGenqlSelection + /** A list of reference objects if the metafield's type is a resource reference list. */ + references?: (MetafieldReferenceConnectionGenqlSelection & { __args?: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null)} }) + /** + * The type name of the metafield. + * See the list of [supported types](https://shopify.dev/apps/metafields/definitions/types). + * + */ + type?: boolean | number + /** The date and time when the storefront metafield was updated. */ + updatedAt?: boolean | number + /** The value of a metafield. */ + value?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * A filter used to view a subset of products in a collection matching a specific metafield value. + * + * Only the following metafield types are currently supported: + * - `number_integer` + * - `number_decimal` + * - `single_line_text_field` + * - `boolean` as of 2022-04. + * + */ +export interface MetafieldFilter { +/** The namespace of the metafield to filter on. */ +namespace: Scalars['String'], +/** The key of the metafield to filter on. */ +key: Scalars['String'], +/** The value of the metafield. */ +value: Scalars['String']} + + +/** A resource that the metafield belongs to. */ +export interface MetafieldParentResourceGenqlSelection{ + on_Article?:ArticleGenqlSelection, + on_Blog?:BlogGenqlSelection, + on_Collection?:CollectionGenqlSelection, + on_Customer?:CustomerGenqlSelection, + on_Order?:OrderGenqlSelection, + on_Page?:PageGenqlSelection, + on_Product?:ProductGenqlSelection, + on_ProductVariant?:ProductVariantGenqlSelection, + on_Shop?:ShopGenqlSelection, + on_HasMetafields?: HasMetafieldsGenqlSelection, + on_Node?: NodeGenqlSelection, + on_OnlineStorePublishable?: OnlineStorePublishableGenqlSelection, + __typename?: boolean | number +} + + +/** + * Returns the resource which is being referred to by a metafield. + * + */ +export interface MetafieldReferenceGenqlSelection{ + on_Collection?:CollectionGenqlSelection, + on_GenericFile?:GenericFileGenqlSelection, + on_MediaImage?:MediaImageGenqlSelection, + on_Metaobject?:MetaobjectGenqlSelection, + on_Page?:PageGenqlSelection, + on_Product?:ProductGenqlSelection, + on_ProductVariant?:ProductVariantGenqlSelection, + on_Video?:VideoGenqlSelection, + on_HasMetafields?: HasMetafieldsGenqlSelection, + on_Node?: NodeGenqlSelection, + on_OnlineStorePublishable?: OnlineStorePublishableGenqlSelection, + on_Media?: MediaGenqlSelection, + __typename?: boolean | number +} + + +/** + * An auto-generated type for paginating through multiple MetafieldReferences. + * + */ +export interface MetafieldReferenceConnectionGenqlSelection{ + /** A list of edges. */ + edges?: MetafieldReferenceEdgeGenqlSelection + /** A list of the nodes contained in MetafieldReferenceEdge. */ + nodes?: MetafieldReferenceGenqlSelection + /** Information to aid in pagination. */ + pageInfo?: PageInfoGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type which holds one MetafieldReference and a cursor during pagination. + * + */ +export interface MetafieldReferenceEdgeGenqlSelection{ + /** A cursor for use in pagination. */ + cursor?: boolean | number + /** The item at the end of MetafieldReferenceEdge. */ + node?: MetafieldReferenceGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** An instance of a user-defined model based on a MetaobjectDefinition. */ +export interface MetaobjectGenqlSelection{ + /** Accesses a field of the object by key. */ + field?: (MetaobjectFieldGenqlSelection & { __args: { + /** The key of the field. */ + key: Scalars['String']} }) + /** + * All object fields with defined values. + * Omitted object keys can be assumed null, and no guarantees are made about field order. + * + */ + fields?: MetaobjectFieldGenqlSelection + /** The unique handle of the metaobject. Useful as a custom ID. */ + handle?: boolean | number + /** A globally-unique identifier. */ + id?: boolean | number + /** The type of the metaobject. Defines the namespace of its associated metafields. */ + type?: boolean | number + /** The date and time when the metaobject was last updated. */ + updatedAt?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type for paginating through multiple Metaobjects. + * + */ +export interface MetaobjectConnectionGenqlSelection{ + /** A list of edges. */ + edges?: MetaobjectEdgeGenqlSelection + /** A list of the nodes contained in MetaobjectEdge. */ + nodes?: MetaobjectGenqlSelection + /** Information to aid in pagination. */ + pageInfo?: PageInfoGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type which holds one Metaobject and a cursor during pagination. + * + */ +export interface MetaobjectEdgeGenqlSelection{ + /** A cursor for use in pagination. */ + cursor?: boolean | number + /** The item at the end of MetaobjectEdge. */ + node?: MetaobjectGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Provides the value of a Metaobject field. */ +export interface MetaobjectFieldGenqlSelection{ + /** The field key. */ + key?: boolean | number + /** A referenced object if the field type is a resource reference. */ + reference?: MetafieldReferenceGenqlSelection + /** A list of referenced objects if the field type is a resource reference list. */ + references?: (MetafieldReferenceConnectionGenqlSelection & { __args?: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null)} }) + /** + * The type name of the field. + * See the list of [supported types](https://shopify.dev/apps/metafields/definitions/types). + * + */ + type?: boolean | number + /** The field value. */ + value?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** The input fields used to retrieve a metaobject by handle. */ +export interface MetaobjectHandleInput { +/** The handle of the metaobject. */ +handle: Scalars['String'], +/** The type of the metaobject. */ +type: Scalars['String']} + + +/** Represents a Shopify hosted 3D model. */ +export interface Model3dGenqlSelection{ + /** A word or phrase to share the nature or contents of a media. */ + alt?: boolean | number + /** A globally-unique identifier. */ + id?: boolean | number + /** The media content type. */ + mediaContentType?: boolean | number + /** The preview image for the media. */ + previewImage?: ImageGenqlSelection + /** The sources for a 3d model. */ + sources?: Model3dSourceGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Represents a source for a Shopify hosted 3d model. */ +export interface Model3dSourceGenqlSelection{ + /** The filesize of the 3d model. */ + filesize?: boolean | number + /** The format of the 3d model. */ + format?: boolean | number + /** The MIME type of the 3d model. */ + mimeType?: boolean | number + /** The URL of the 3d model. */ + url?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Specifies the fields for a monetary value with currency. */ +export interface MoneyInput { +/** Decimal money amount. */ +amount: Scalars['Decimal'], +/** Currency of the money. */ +currencyCode: CurrencyCode} + + +/** + * A monetary value with currency. + * + */ +export interface MoneyV2GenqlSelection{ + /** Decimal money amount. */ + amount?: boolean | number + /** Currency of the money. */ + currencyCode?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */ +export interface MutationGenqlSelection{ + /** Updates the attributes on a cart. */ + cartAttributesUpdate?: (CartAttributesUpdatePayloadGenqlSelection & { __args: { + /** An array of key-value pairs that contains additional information about the cart. */ + attributes: AttributeInput[], + /** The ID of the cart. */ + cartId: Scalars['ID']} }) + /** + * Updates customer information associated with a cart. + * Buyer identity is used to determine + * [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing) + * and should match the customer's shipping address. + * + */ + cartBuyerIdentityUpdate?: (CartBuyerIdentityUpdatePayloadGenqlSelection & { __args: { + /** The ID of the cart. */ + cartId: Scalars['ID'], + /** + * The customer associated with the cart. Used to determine + * [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing). + * Buyer identity should match the customer's shipping address. + * + */ + buyerIdentity: CartBuyerIdentityInput} }) + /** Creates a new cart. */ + cartCreate?: (CartCreatePayloadGenqlSelection & { __args?: { + /** The fields used to create a cart. */ + input?: (CartInput | null)} }) + /** Updates the discount codes applied to the cart. */ + cartDiscountCodesUpdate?: (CartDiscountCodesUpdatePayloadGenqlSelection & { __args: { + /** The ID of the cart. */ + cartId: Scalars['ID'], + /** + * The case-insensitive discount codes that the customer added at checkout. + * + */ + discountCodes?: (Scalars['String'][] | null)} }) + /** Adds a merchandise line to the cart. */ + cartLinesAdd?: (CartLinesAddPayloadGenqlSelection & { __args: { + /** A list of merchandise lines to add to the cart. */ + lines: CartLineInput[], + /** The ID of the cart. */ + cartId: Scalars['ID']} }) + /** Removes one or more merchandise lines from the cart. */ + cartLinesRemove?: (CartLinesRemovePayloadGenqlSelection & { __args: { + /** The ID of the cart. */ + cartId: Scalars['ID'], + /** The merchandise line IDs to remove. */ + lineIds: Scalars['ID'][]} }) + /** Updates one or more merchandise lines on a cart. */ + cartLinesUpdate?: (CartLinesUpdatePayloadGenqlSelection & { __args: { + /** The ID of the cart. */ + cartId: Scalars['ID'], + /** The merchandise lines to update. */ + lines: CartLineUpdateInput[]} }) + /** Updates the note on the cart. */ + cartNoteUpdate?: (CartNoteUpdatePayloadGenqlSelection & { __args: { + /** The ID of the cart. */ + cartId: Scalars['ID'], + /** The note on the cart. */ + note?: (Scalars['String'] | null)} }) + /** Update the selected delivery options for a delivery group. */ + cartSelectedDeliveryOptionsUpdate?: (CartSelectedDeliveryOptionsUpdatePayloadGenqlSelection & { __args: { + /** The ID of the cart. */ + cartId: Scalars['ID'], + /** The selected delivery options. */ + selectedDeliveryOptions: CartSelectedDeliveryOptionInput[]} }) + /** Updates the attributes of a checkout if `allowPartialAddresses` is `true`. */ + checkoutAttributesUpdateV2?: (CheckoutAttributesUpdateV2PayloadGenqlSelection & { __args: { + /** The ID of the checkout. */ + checkoutId: Scalars['ID'], + /** The checkout attributes to update. */ + input: CheckoutAttributesUpdateV2Input} }) + /** Completes a checkout without providing payment information. You can use this mutation for free items or items whose purchase price is covered by a gift card. */ + checkoutCompleteFree?: (CheckoutCompleteFreePayloadGenqlSelection & { __args: { + /** The ID of the checkout. */ + checkoutId: Scalars['ID']} }) + /** Completes a checkout using a credit card token from Shopify's card vault. Before you can complete checkouts using CheckoutCompleteWithCreditCardV2, you need to [_request payment processing_](https://shopify.dev/apps/channels/getting-started#request-payment-processing). */ + checkoutCompleteWithCreditCardV2?: (CheckoutCompleteWithCreditCardV2PayloadGenqlSelection & { __args: { + /** The ID of the checkout. */ + checkoutId: Scalars['ID'], + /** The credit card info to apply as a payment. */ + payment: CreditCardPaymentInputV2} }) + /** Completes a checkout with a tokenized payment. */ + checkoutCompleteWithTokenizedPaymentV3?: (CheckoutCompleteWithTokenizedPaymentV3PayloadGenqlSelection & { __args: { + /** The ID of the checkout. */ + checkoutId: Scalars['ID'], + /** The info to apply as a tokenized payment. */ + payment: TokenizedPaymentInputV3} }) + /** Creates a new checkout. */ + checkoutCreate?: (CheckoutCreatePayloadGenqlSelection & { __args: { + /** The fields used to create a checkout. */ + input: CheckoutCreateInput, + /** The checkout queue token. Available only to selected stores. */ + queueToken?: (Scalars['String'] | null)} }) + /** Associates a customer to the checkout. */ + checkoutCustomerAssociateV2?: (CheckoutCustomerAssociateV2PayloadGenqlSelection & { __args: { + /** The ID of the checkout. */ + checkoutId: Scalars['ID'], + /** The customer access token of the customer to associate. */ + customerAccessToken: Scalars['String']} }) + /** Disassociates the current checkout customer from the checkout. */ + checkoutCustomerDisassociateV2?: (CheckoutCustomerDisassociateV2PayloadGenqlSelection & { __args: { + /** The ID of the checkout. */ + checkoutId: Scalars['ID']} }) + /** Applies a discount to an existing checkout using a discount code. */ + checkoutDiscountCodeApplyV2?: (CheckoutDiscountCodeApplyV2PayloadGenqlSelection & { __args: { + /** The discount code to apply to the checkout. */ + discountCode: Scalars['String'], + /** The ID of the checkout. */ + checkoutId: Scalars['ID']} }) + /** Removes the applied discounts from an existing checkout. */ + checkoutDiscountCodeRemove?: (CheckoutDiscountCodeRemovePayloadGenqlSelection & { __args: { + /** The ID of the checkout. */ + checkoutId: Scalars['ID']} }) + /** Updates the email on an existing checkout. */ + checkoutEmailUpdateV2?: (CheckoutEmailUpdateV2PayloadGenqlSelection & { __args: { + /** The ID of the checkout. */ + checkoutId: Scalars['ID'], + /** The email to update the checkout with. */ + email: Scalars['String']} }) + /** Removes an applied gift card from the checkout. */ + checkoutGiftCardRemoveV2?: (CheckoutGiftCardRemoveV2PayloadGenqlSelection & { __args: { + /** The ID of the Applied Gift Card to remove from the Checkout. */ + appliedGiftCardId: Scalars['ID'], + /** The ID of the checkout. */ + checkoutId: Scalars['ID']} }) + /** Appends gift cards to an existing checkout. */ + checkoutGiftCardsAppend?: (CheckoutGiftCardsAppendPayloadGenqlSelection & { __args: { + /** A list of gift card codes to append to the checkout. */ + giftCardCodes: Scalars['String'][], + /** The ID of the checkout. */ + checkoutId: Scalars['ID']} }) + /** Adds a list of line items to a checkout. */ + checkoutLineItemsAdd?: (CheckoutLineItemsAddPayloadGenqlSelection & { __args: { + /** A list of line item objects to add to the checkout. */ + lineItems: CheckoutLineItemInput[], + /** The ID of the checkout. */ + checkoutId: Scalars['ID']} }) + /** Removes line items from an existing checkout. */ + checkoutLineItemsRemove?: (CheckoutLineItemsRemovePayloadGenqlSelection & { __args: { + /** The checkout on which to remove line items. */ + checkoutId: Scalars['ID'], + /** Line item ids to remove. */ + lineItemIds: Scalars['ID'][]} }) + /** Sets a list of line items to a checkout. */ + checkoutLineItemsReplace?: (CheckoutLineItemsReplacePayloadGenqlSelection & { __args: { + /** A list of line item objects to set on the checkout. */ + lineItems: CheckoutLineItemInput[], + /** The ID of the checkout. */ + checkoutId: Scalars['ID']} }) + /** Updates line items on a checkout. */ + checkoutLineItemsUpdate?: (CheckoutLineItemsUpdatePayloadGenqlSelection & { __args: { + /** The checkout on which to update line items. */ + checkoutId: Scalars['ID'], + /** Line items to update. */ + lineItems: CheckoutLineItemUpdateInput[]} }) + /** Updates the shipping address of an existing checkout. */ + checkoutShippingAddressUpdateV2?: (CheckoutShippingAddressUpdateV2PayloadGenqlSelection & { __args: { + /** The shipping address to where the line items will be shipped. */ + shippingAddress: MailingAddressInput, + /** The ID of the checkout. */ + checkoutId: Scalars['ID']} }) + /** Updates the shipping lines on an existing checkout. */ + checkoutShippingLineUpdate?: (CheckoutShippingLineUpdatePayloadGenqlSelection & { __args: { + /** The ID of the checkout. */ + checkoutId: Scalars['ID'], + /** A unique identifier to a Checkout’s shipping provider, price, and title combination, enabling the customer to select the availableShippingRates. */ + shippingRateHandle: Scalars['String']} }) + /** + * Creates a customer access token. + * The customer access token is required to modify the customer object in any way. + * + */ + customerAccessTokenCreate?: (CustomerAccessTokenCreatePayloadGenqlSelection & { __args: { + /** The fields used to create a customer access token. */ + input: CustomerAccessTokenCreateInput} }) + /** + * Creates a customer access token using a + * [multipass token](https://shopify.dev/api/multipass) instead of email and + * password. A customer record is created if the customer doesn't exist. If a customer + * record already exists but the record is disabled, then the customer record is enabled. + * + */ + customerAccessTokenCreateWithMultipass?: (CustomerAccessTokenCreateWithMultipassPayloadGenqlSelection & { __args: { + /** A valid [multipass token](https://shopify.dev/api/multipass) to be authenticated. */ + multipassToken: Scalars['String']} }) + /** Permanently destroys a customer access token. */ + customerAccessTokenDelete?: (CustomerAccessTokenDeletePayloadGenqlSelection & { __args: { + /** The access token used to identify the customer. */ + customerAccessToken: Scalars['String']} }) + /** + * Renews a customer access token. + * + * Access token renewal must happen *before* a token expires. + * If a token has already expired, a new one should be created instead via `customerAccessTokenCreate`. + * + */ + customerAccessTokenRenew?: (CustomerAccessTokenRenewPayloadGenqlSelection & { __args: { + /** The access token used to identify the customer. */ + customerAccessToken: Scalars['String']} }) + /** Activates a customer. */ + customerActivate?: (CustomerActivatePayloadGenqlSelection & { __args: { + /** Specifies the customer to activate. */ + id: Scalars['ID'], + /** The fields used to activate a customer. */ + input: CustomerActivateInput} }) + /** Activates a customer with the activation url received from `customerCreate`. */ + customerActivateByUrl?: (CustomerActivateByUrlPayloadGenqlSelection & { __args: { + /** The customer activation URL. */ + activationUrl: Scalars['URL'], + /** A new password set during activation. */ + password: Scalars['String']} }) + /** Creates a new address for a customer. */ + customerAddressCreate?: (CustomerAddressCreatePayloadGenqlSelection & { __args: { + /** The access token used to identify the customer. */ + customerAccessToken: Scalars['String'], + /** The customer mailing address to create. */ + address: MailingAddressInput} }) + /** Permanently deletes the address of an existing customer. */ + customerAddressDelete?: (CustomerAddressDeletePayloadGenqlSelection & { __args: { + /** Specifies the address to delete. */ + id: Scalars['ID'], + /** The access token used to identify the customer. */ + customerAccessToken: Scalars['String']} }) + /** Updates the address of an existing customer. */ + customerAddressUpdate?: (CustomerAddressUpdatePayloadGenqlSelection & { __args: { + /** The access token used to identify the customer. */ + customerAccessToken: Scalars['String'], + /** Specifies the customer address to update. */ + id: Scalars['ID'], + /** The customer’s mailing address. */ + address: MailingAddressInput} }) + /** Creates a new customer. */ + customerCreate?: (CustomerCreatePayloadGenqlSelection & { __args: { + /** The fields used to create a new customer. */ + input: CustomerCreateInput} }) + /** Updates the default address of an existing customer. */ + customerDefaultAddressUpdate?: (CustomerDefaultAddressUpdatePayloadGenqlSelection & { __args: { + /** The access token used to identify the customer. */ + customerAccessToken: Scalars['String'], + /** ID of the address to set as the new default for the customer. */ + addressId: Scalars['ID']} }) + /** + * Sends a reset password email to the customer. The reset password + * email contains a reset password URL and token that you can pass to + * the [`customerResetByUrl`](https://shopify.dev/api/storefront/latest/mutations/customerResetByUrl) or + * [`customerReset`](https://shopify.dev/api/storefront/latest/mutations/customerReset) mutation to reset the + * customer password. + * + * This mutation is throttled by IP. With authenticated access, + * you can provide a [`Shopify-Storefront-Buyer-IP`](https://shopify.dev/api/usage/authentication#optional-ip-header) instead of the request IP. + * + * Make sure that the value provided to `Shopify-Storefront-Buyer-IP` is trusted. Unthrottled access to this + * mutation presents a security risk. + * + */ + customerRecover?: (CustomerRecoverPayloadGenqlSelection & { __args: { + /** The email address of the customer to recover. */ + email: Scalars['String']} }) + /** + * "Resets a customer’s password with the token received from a reset password email. You can send a reset password email with the [`customerRecover`](https://shopify.dev/api/storefront/latest/mutations/customerRecover) mutation." + * + */ + customerReset?: (CustomerResetPayloadGenqlSelection & { __args: { + /** Specifies the customer to reset. */ + id: Scalars['ID'], + /** The fields used to reset a customer’s password. */ + input: CustomerResetInput} }) + /** + * "Resets a customer’s password with the reset password URL received from a reset password email. You can send a reset password email with the [`customerRecover`](https://shopify.dev/api/storefront/latest/mutations/customerRecover) mutation." + * + */ + customerResetByUrl?: (CustomerResetByUrlPayloadGenqlSelection & { __args: { + /** The customer's reset password url. */ + resetUrl: Scalars['URL'], + /** New password that will be set as part of the reset password process. */ + password: Scalars['String']} }) + /** Updates an existing customer. */ + customerUpdate?: (CustomerUpdatePayloadGenqlSelection & { __args: { + /** The access token used to identify the customer. */ + customerAccessToken: Scalars['String'], + /** The customer object input. */ + customer: CustomerUpdateInput} }) + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An object with an ID field to support global identification, in accordance with the + * [Relay specification](https://relay.dev/graphql/objectidentification.htm#sec-Node-Interface). + * This interface is used by the [node](https://shopify.dev/api/admin-graphql/unstable/queries/node) + * and [nodes](https://shopify.dev/api/admin-graphql/unstable/queries/nodes) queries. + * + */ +export interface NodeGenqlSelection{ + /** A globally-unique identifier. */ + id?: boolean | number + on_AppliedGiftCard?: AppliedGiftCardGenqlSelection + on_Article?: ArticleGenqlSelection + on_Blog?: BlogGenqlSelection + on_Cart?: CartGenqlSelection + on_CartLine?: CartLineGenqlSelection + on_Checkout?: CheckoutGenqlSelection + on_CheckoutLineItem?: CheckoutLineItemGenqlSelection + on_Collection?: CollectionGenqlSelection + on_Comment?: CommentGenqlSelection + on_ExternalVideo?: ExternalVideoGenqlSelection + on_GenericFile?: GenericFileGenqlSelection + on_Location?: LocationGenqlSelection + on_MailingAddress?: MailingAddressGenqlSelection + on_MediaImage?: MediaImageGenqlSelection + on_Menu?: MenuGenqlSelection + on_MenuItem?: MenuItemGenqlSelection + on_Metafield?: MetafieldGenqlSelection + on_Metaobject?: MetaobjectGenqlSelection + on_Model3d?: Model3dGenqlSelection + on_Order?: OrderGenqlSelection + on_Page?: PageGenqlSelection + on_Payment?: PaymentGenqlSelection + on_Product?: ProductGenqlSelection + on_ProductOption?: ProductOptionGenqlSelection + on_ProductVariant?: ProductVariantGenqlSelection + on_Shop?: ShopGenqlSelection + on_ShopPolicy?: ShopPolicyGenqlSelection + on_UrlRedirect?: UrlRedirectGenqlSelection + on_Video?: VideoGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Represents a resource that can be published to the Online Store sales channel. */ +export interface OnlineStorePublishableGenqlSelection{ + /** The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel. */ + onlineStoreUrl?: boolean | number + on_Article?: ArticleGenqlSelection + on_Blog?: BlogGenqlSelection + on_Collection?: CollectionGenqlSelection + on_Page?: PageGenqlSelection + on_Product?: ProductGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** An order is a customer’s completed request to purchase one or more products from a shop. An order is created when a customer completes the checkout process, during which time they provides an email address, billing address and payment information. */ +export interface OrderGenqlSelection{ + /** The reason for the order's cancellation. Returns `null` if the order wasn't canceled. */ + cancelReason?: boolean | number + /** The date and time when the order was canceled. Returns null if the order wasn't canceled. */ + canceledAt?: boolean | number + /** The code of the currency used for the payment. */ + currencyCode?: boolean | number + /** The subtotal of line items and their discounts, excluding line items that have been removed. Does not contain order-level discounts, duties, shipping costs, or shipping discounts. Taxes are not included unless the order is a taxes-included order. */ + currentSubtotalPrice?: MoneyV2GenqlSelection + /** The total cost of duties for the order, including refunds. */ + currentTotalDuties?: MoneyV2GenqlSelection + /** The total amount of the order, including duties, taxes and discounts, minus amounts for line items that have been removed. */ + currentTotalPrice?: MoneyV2GenqlSelection + /** The total of all taxes applied to the order, excluding taxes for returned line items. */ + currentTotalTax?: MoneyV2GenqlSelection + /** A list of the custom attributes added to the order. */ + customAttributes?: AttributeGenqlSelection + /** The locale code in which this specific order happened. */ + customerLocale?: boolean | number + /** The unique URL that the customer can use to access the order. */ + customerUrl?: boolean | number + /** Discounts that have been applied on the order. */ + discountApplications?: (DiscountApplicationConnectionGenqlSelection & { __args?: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null)} }) + /** Whether the order has had any edits applied or not. */ + edited?: boolean | number + /** The customer's email address. */ + email?: boolean | number + /** The financial status of the order. */ + financialStatus?: boolean | number + /** The fulfillment status for the order. */ + fulfillmentStatus?: boolean | number + /** A globally-unique identifier. */ + id?: boolean | number + /** List of the order’s line items. */ + lineItems?: (OrderLineItemConnectionGenqlSelection & { __args?: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null)} }) + /** Returns a metafield found by namespace and key. */ + metafield?: (MetafieldGenqlSelection & { __args: { + /** A container for a set of metafields. */ + namespace: Scalars['String'], + /** The identifier for the metafield. */ + key: Scalars['String']} }) + /** + * The metafields associated with the resource matching the supplied list of namespaces and keys. + * + */ + metafields?: (MetafieldGenqlSelection & { __args: { + /** The list of metafields to retrieve by namespace and key. */ + identifiers: HasMetafieldsIdentifier[]} }) + /** + * Unique identifier for the order that appears on the order. + * For example, _#1000_ or _Store1001. + * + */ + name?: boolean | number + /** A unique numeric identifier for the order for use by shop owner and customer. */ + orderNumber?: boolean | number + /** The total cost of duties charged at checkout. */ + originalTotalDuties?: MoneyV2GenqlSelection + /** The total price of the order before any applied edits. */ + originalTotalPrice?: MoneyV2GenqlSelection + /** The customer's phone number for receiving SMS notifications. */ + phone?: boolean | number + /** + * The date and time when the order was imported. + * This value can be set to dates in the past when importing from other systems. + * If no value is provided, it will be auto-generated based on current date and time. + * + */ + processedAt?: boolean | number + /** The address to where the order will be shipped. */ + shippingAddress?: MailingAddressGenqlSelection + /** + * The discounts that have been allocated onto the shipping line by discount applications. + * + */ + shippingDiscountAllocations?: DiscountAllocationGenqlSelection + /** The unique URL for the order's status page. */ + statusUrl?: boolean | number + /** Price of the order before shipping and taxes. */ + subtotalPrice?: MoneyV2GenqlSelection + /** + * @deprecated Use `subtotalPrice` instead. + * Price of the order before duties, shipping and taxes. + */ + subtotalPriceV2?: MoneyV2GenqlSelection + /** List of the order’s successful fulfillments. */ + successfulFulfillments?: (FulfillmentGenqlSelection & { __args?: { + /** Truncate the array result to this size. */ + first?: (Scalars['Int'] | null)} }) + /** The sum of all the prices of all the items in the order, duties, taxes and discounts included (must be positive). */ + totalPrice?: MoneyV2GenqlSelection + /** + * @deprecated Use `totalPrice` instead. + * The sum of all the prices of all the items in the order, duties, taxes and discounts included (must be positive). + */ + totalPriceV2?: MoneyV2GenqlSelection + /** The total amount that has been refunded. */ + totalRefunded?: MoneyV2GenqlSelection + /** + * @deprecated Use `totalRefunded` instead. + * The total amount that has been refunded. + */ + totalRefundedV2?: MoneyV2GenqlSelection + /** The total cost of shipping. */ + totalShippingPrice?: MoneyV2GenqlSelection + /** + * @deprecated Use `totalShippingPrice` instead. + * The total cost of shipping. + */ + totalShippingPriceV2?: MoneyV2GenqlSelection + /** The total cost of taxes. */ + totalTax?: MoneyV2GenqlSelection + /** + * @deprecated Use `totalTax` instead. + * The total cost of taxes. + */ + totalTaxV2?: MoneyV2GenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type for paginating through multiple Orders. + * + */ +export interface OrderConnectionGenqlSelection{ + /** A list of edges. */ + edges?: OrderEdgeGenqlSelection + /** A list of the nodes contained in OrderEdge. */ + nodes?: OrderGenqlSelection + /** Information to aid in pagination. */ + pageInfo?: PageInfoGenqlSelection + /** The total count of Orders. */ + totalCount?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type which holds one Order and a cursor during pagination. + * + */ +export interface OrderEdgeGenqlSelection{ + /** A cursor for use in pagination. */ + cursor?: boolean | number + /** The item at the end of OrderEdge. */ + node?: OrderGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Represents a single line in an order. There is one line item for each distinct product variant. */ +export interface OrderLineItemGenqlSelection{ + /** The number of entries associated to the line item minus the items that have been removed. */ + currentQuantity?: boolean | number + /** List of custom attributes associated to the line item. */ + customAttributes?: AttributeGenqlSelection + /** The discounts that have been allocated onto the order line item by discount applications. */ + discountAllocations?: DiscountAllocationGenqlSelection + /** The total price of the line item, including discounts, and displayed in the presentment currency. */ + discountedTotalPrice?: MoneyV2GenqlSelection + /** The total price of the line item, not including any discounts. The total price is calculated using the original unit price multiplied by the quantity, and it is displayed in the presentment currency. */ + originalTotalPrice?: MoneyV2GenqlSelection + /** The number of products variants associated to the line item. */ + quantity?: boolean | number + /** The title of the product combined with title of the variant. */ + title?: boolean | number + /** The product variant object associated to the line item. */ + variant?: ProductVariantGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type for paginating through multiple OrderLineItems. + * + */ +export interface OrderLineItemConnectionGenqlSelection{ + /** A list of edges. */ + edges?: OrderLineItemEdgeGenqlSelection + /** A list of the nodes contained in OrderLineItemEdge. */ + nodes?: OrderLineItemGenqlSelection + /** Information to aid in pagination. */ + pageInfo?: PageInfoGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type which holds one OrderLineItem and a cursor during pagination. + * + */ +export interface OrderLineItemEdgeGenqlSelection{ + /** A cursor for use in pagination. */ + cursor?: boolean | number + /** The item at the end of OrderLineItemEdge. */ + node?: OrderLineItemGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Shopify merchants can create pages to hold static HTML content. Each Page object represents a custom page on the online store. */ +export interface PageGenqlSelection{ + /** The description of the page, complete with HTML formatting. */ + body?: boolean | number + /** Summary of the page body. */ + bodySummary?: boolean | number + /** The timestamp of the page creation. */ + createdAt?: boolean | number + /** A human-friendly unique string for the page automatically generated from its title. */ + handle?: boolean | number + /** A globally-unique identifier. */ + id?: boolean | number + /** Returns a metafield found by namespace and key. */ + metafield?: (MetafieldGenqlSelection & { __args: { + /** A container for a set of metafields. */ + namespace: Scalars['String'], + /** The identifier for the metafield. */ + key: Scalars['String']} }) + /** + * The metafields associated with the resource matching the supplied list of namespaces and keys. + * + */ + metafields?: (MetafieldGenqlSelection & { __args: { + /** The list of metafields to retrieve by namespace and key. */ + identifiers: HasMetafieldsIdentifier[]} }) + /** The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel. */ + onlineStoreUrl?: boolean | number + /** The page's SEO information. */ + seo?: SEOGenqlSelection + /** The title of the page. */ + title?: boolean | number + /** The timestamp of the latest page update. */ + updatedAt?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type for paginating through multiple Pages. + * + */ +export interface PageConnectionGenqlSelection{ + /** A list of edges. */ + edges?: PageEdgeGenqlSelection + /** A list of the nodes contained in PageEdge. */ + nodes?: PageGenqlSelection + /** Information to aid in pagination. */ + pageInfo?: PageInfoGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type which holds one Page and a cursor during pagination. + * + */ +export interface PageEdgeGenqlSelection{ + /** A cursor for use in pagination. */ + cursor?: boolean | number + /** The item at the end of PageEdge. */ + node?: PageGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * Returns information about pagination in a connection, in accordance with the + * [Relay specification](https://relay.dev/graphql/connections.htm#sec-undefined.PageInfo). + * For more information, please read our [GraphQL Pagination Usage Guide](https://shopify.dev/api/usage/pagination-graphql). + * + */ +export interface PageInfoGenqlSelection{ + /** The cursor corresponding to the last node in edges. */ + endCursor?: boolean | number + /** Whether there are more pages to fetch following the current page. */ + hasNextPage?: boolean | number + /** Whether there are any pages prior to the current page. */ + hasPreviousPage?: boolean | number + /** The cursor corresponding to the first node in edges. */ + startCursor?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** A payment applied to a checkout. */ +export interface PaymentGenqlSelection{ + /** The amount of the payment. */ + amount?: MoneyV2GenqlSelection + /** + * @deprecated Use `amount` instead. + * The amount of the payment. + */ + amountV2?: MoneyV2GenqlSelection + /** The billing address for the payment. */ + billingAddress?: MailingAddressGenqlSelection + /** The checkout to which the payment belongs. */ + checkout?: CheckoutGenqlSelection + /** The credit card used for the payment in the case of direct payments. */ + creditCard?: CreditCardGenqlSelection + /** A message describing a processing error during asynchronous processing. */ + errorMessage?: boolean | number + /** A globally-unique identifier. */ + id?: boolean | number + /** + * A client-side generated token to identify a payment and perform idempotent operations. + * For more information, refer to + * [Idempotent requests](https://shopify.dev/api/usage/idempotent-requests). + * + */ + idempotencyKey?: boolean | number + /** The URL where the customer needs to be redirected so they can complete the 3D Secure payment flow. */ + nextActionUrl?: boolean | number + /** Whether the payment is still processing asynchronously. */ + ready?: boolean | number + /** A flag to indicate if the payment is to be done in test mode for gateways that support it. */ + test?: boolean | number + /** The actual transaction recorded by Shopify after having processed the payment with the gateway. */ + transaction?: TransactionGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Settings related to payments. */ +export interface PaymentSettingsGenqlSelection{ + /** List of the card brands which the shop accepts. */ + acceptedCardBrands?: boolean | number + /** The url pointing to the endpoint to vault credit cards. */ + cardVaultUrl?: boolean | number + /** The country where the shop is located. */ + countryCode?: boolean | number + /** The three-letter code for the shop's primary currency. */ + currencyCode?: boolean | number + /** A list of enabled currencies (ISO 4217 format) that the shop accepts. Merchants can enable currencies from their Shopify Payments settings in the Shopify admin. */ + enabledPresentmentCurrencies?: boolean | number + /** The shop’s Shopify Payments account id. */ + shopifyPaymentsAccountId?: boolean | number + /** List of the digital wallets which the shop supports. */ + supportedDigitalWallets?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** A filter used to view a subset of products in a collection matching a specific price range. */ +export interface PriceRangeFilter { +/** The minimum price in the range. Defaults to zero. */ +min?: (Scalars['Float'] | null), +/** The maximum price in the range. Empty indicates no max price. */ +max?: (Scalars['Float'] | null)} + + +/** The value of the percentage pricing object. */ +export interface PricingPercentageValueGenqlSelection{ + /** The percentage value of the object. */ + percentage?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** The price value (fixed or percentage) for a discount application. */ +export interface PricingValueGenqlSelection{ + on_MoneyV2?:MoneyV2GenqlSelection, + on_PricingPercentageValue?:PricingPercentageValueGenqlSelection, + __typename?: boolean | number +} + + +/** + * A product represents an individual item for sale in a Shopify store. Products are often physical, but they don't have to be. + * For example, a digital download (such as a movie, music or ebook file) also qualifies as a product, as do services (such as equipment rental, work for hire, customization of another product or an extended warranty). + */ +export interface ProductGenqlSelection{ + /** Indicates if at least one product variant is available for sale. */ + availableForSale?: boolean | number + /** List of collections a product belongs to. */ + collections?: (CollectionConnectionGenqlSelection & { __args?: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null)} }) + /** The compare at price of the product across all variants. */ + compareAtPriceRange?: ProductPriceRangeGenqlSelection + /** The date and time when the product was created. */ + createdAt?: boolean | number + /** Stripped description of the product, single line with HTML tags removed. */ + description?: { __args: { + /** Truncates string after the given length. */ + truncateAt?: (Scalars['Int'] | null)} } | boolean | number + /** The description of the product, complete with HTML formatting. */ + descriptionHtml?: boolean | number + /** + * The featured image for the product. + * + * This field is functionally equivalent to `images(first: 1)`. + * + */ + featuredImage?: ImageGenqlSelection + /** + * A human-friendly unique string for the Product automatically generated from its title. + * They are used by the Liquid templating language to refer to objects. + * + */ + handle?: boolean | number + /** A globally-unique identifier. */ + id?: boolean | number + /** List of images associated with the product. */ + images?: (ImageConnectionGenqlSelection & { __args?: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null), + /** Sort the underlying list by the given key. */ + sortKey?: (ProductImageSortKeys | null)} }) + /** Whether the product is a gift card. */ + isGiftCard?: boolean | number + /** The media associated with the product. */ + media?: (MediaConnectionGenqlSelection & { __args?: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null), + /** Sort the underlying list by the given key. */ + sortKey?: (ProductMediaSortKeys | null)} }) + /** Returns a metafield found by namespace and key. */ + metafield?: (MetafieldGenqlSelection & { __args: { + /** A container for a set of metafields. */ + namespace: Scalars['String'], + /** The identifier for the metafield. */ + key: Scalars['String']} }) + /** + * The metafields associated with the resource matching the supplied list of namespaces and keys. + * + */ + metafields?: (MetafieldGenqlSelection & { __args: { + /** The list of metafields to retrieve by namespace and key. */ + identifiers: HasMetafieldsIdentifier[]} }) + /** The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel. */ + onlineStoreUrl?: boolean | number + /** List of product options. */ + options?: (ProductOptionGenqlSelection & { __args?: { + /** Truncate the array result to this size. */ + first?: (Scalars['Int'] | null)} }) + /** The price range. */ + priceRange?: ProductPriceRangeGenqlSelection + /** A categorization that a product can be tagged with, commonly used for filtering and searching. */ + productType?: boolean | number + /** The date and time when the product was published to the channel. */ + publishedAt?: boolean | number + /** Whether the product can only be purchased with a selling plan. */ + requiresSellingPlan?: boolean | number + /** A list of a product's available selling plan groups. A selling plan group represents a selling method. For example, 'Subscribe and save' is a selling method where customers pay for goods or services per delivery. A selling plan group contains individual selling plans. */ + sellingPlanGroups?: (SellingPlanGroupConnectionGenqlSelection & { __args?: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null)} }) + /** The product's SEO information. */ + seo?: SEOGenqlSelection + /** + * A comma separated list of tags that have been added to the product. + * Additional access scope required for private apps: unauthenticated_read_product_tags. + * + */ + tags?: boolean | number + /** The product’s title. */ + title?: boolean | number + /** The total quantity of inventory in stock for this Product. */ + totalInventory?: boolean | number + /** + * The date and time when the product was last modified. + * A product's `updatedAt` value can change for different reasons. For example, if an order + * is placed for a product that has inventory tracking set up, then the inventory adjustment + * is counted as an update. + * + */ + updatedAt?: boolean | number + /** + * Find a product’s variant based on its selected options. + * This is useful for converting a user’s selection of product options into a single matching variant. + * If there is not a variant for the selected options, `null` will be returned. + * + */ + variantBySelectedOptions?: (ProductVariantGenqlSelection & { __args: { + /** The input fields used for a selected option. */ + selectedOptions: SelectedOptionInput[]} }) + /** List of the product’s variants. */ + variants?: (ProductVariantConnectionGenqlSelection & { __args?: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null), + /** Sort the underlying list by the given key. */ + sortKey?: (ProductVariantSortKeys | null)} }) + /** The product’s vendor name. */ + vendor?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type for paginating through multiple Products. + * + */ +export interface ProductConnectionGenqlSelection{ + /** A list of edges. */ + edges?: ProductEdgeGenqlSelection + /** A list of available filters. */ + filters?: FilterGenqlSelection + /** A list of the nodes contained in ProductEdge. */ + nodes?: ProductGenqlSelection + /** Information to aid in pagination. */ + pageInfo?: PageInfoGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type which holds one Product and a cursor during pagination. + * + */ +export interface ProductEdgeGenqlSelection{ + /** A cursor for use in pagination. */ + cursor?: boolean | number + /** The item at the end of ProductEdge. */ + node?: ProductGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** A filter used to view a subset of products in a collection. */ +export interface ProductFilter { +/** Filter on if the product is available for sale. */ +available?: (Scalars['Boolean'] | null), +/** A variant option to filter on. */ +variantOption?: (VariantOptionFilter | null), +/** The product type to filter on. */ +productType?: (Scalars['String'] | null), +/** The product vendor to filter on. */ +productVendor?: (Scalars['String'] | null), +/** A range of prices to filter with-in. */ +price?: (PriceRangeFilter | null), +/** A product metafield to filter on. */ +productMetafield?: (MetafieldFilter | null), +/** A variant metafield to filter on. */ +variantMetafield?: (MetafieldFilter | null), +/** A product tag to filter on. */ +tag?: (Scalars['String'] | null)} + + +/** + * Product property names like "Size", "Color", and "Material" that the customers can select. + * Variants are selected based on permutations of these options. + * 255 characters limit each. + * + */ +export interface ProductOptionGenqlSelection{ + /** A globally-unique identifier. */ + id?: boolean | number + /** The product option’s name. */ + name?: boolean | number + /** The corresponding value to the product option name. */ + values?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** The price range of the product. */ +export interface ProductPriceRangeGenqlSelection{ + /** The highest variant's price. */ + maxVariantPrice?: MoneyV2GenqlSelection + /** The lowest variant's price. */ + minVariantPrice?: MoneyV2GenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** A product variant represents a different version of a product, such as differing sizes or differing colors. */ +export interface ProductVariantGenqlSelection{ + /** Indicates if the product variant is available for sale. */ + availableForSale?: boolean | number + /** The barcode (for example, ISBN, UPC, or GTIN) associated with the variant. */ + barcode?: boolean | number + /** The compare at price of the variant. This can be used to mark a variant as on sale, when `compareAtPrice` is higher than `price`. */ + compareAtPrice?: MoneyV2GenqlSelection + /** + * @deprecated Use `compareAtPrice` instead. + * The compare at price of the variant. This can be used to mark a variant as on sale, when `compareAtPriceV2` is higher than `priceV2`. + */ + compareAtPriceV2?: MoneyV2GenqlSelection + /** Whether a product is out of stock but still available for purchase (used for backorders). */ + currentlyNotInStock?: boolean | number + /** A globally-unique identifier. */ + id?: boolean | number + /** + * Image associated with the product variant. This field falls back to the product image if no image is available. + * + */ + image?: ImageGenqlSelection + /** Returns a metafield found by namespace and key. */ + metafield?: (MetafieldGenqlSelection & { __args: { + /** A container for a set of metafields. */ + namespace: Scalars['String'], + /** The identifier for the metafield. */ + key: Scalars['String']} }) + /** + * The metafields associated with the resource matching the supplied list of namespaces and keys. + * + */ + metafields?: (MetafieldGenqlSelection & { __args: { + /** The list of metafields to retrieve by namespace and key. */ + identifiers: HasMetafieldsIdentifier[]} }) + /** The product variant’s price. */ + price?: MoneyV2GenqlSelection + /** + * @deprecated Use `price` instead. + * The product variant’s price. + */ + priceV2?: MoneyV2GenqlSelection + /** The product object that the product variant belongs to. */ + product?: ProductGenqlSelection + /** The total sellable quantity of the variant for online sales channels. */ + quantityAvailable?: boolean | number + /** Whether a customer needs to provide a shipping address when placing an order for the product variant. */ + requiresShipping?: boolean | number + /** List of product options applied to the variant. */ + selectedOptions?: SelectedOptionGenqlSelection + /** Represents an association between a variant and a selling plan. Selling plan allocations describe which selling plans are available for each variant, and what their impact is on pricing. */ + sellingPlanAllocations?: (SellingPlanAllocationConnectionGenqlSelection & { __args?: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null)} }) + /** The SKU (stock keeping unit) associated with the variant. */ + sku?: boolean | number + /** The in-store pickup availability of this variant by location. */ + storeAvailability?: (StoreAvailabilityConnectionGenqlSelection & { __args?: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null), + /** Used to sort results based on proximity to the provided location. */ + near?: (GeoCoordinateInput | null)} }) + /** The product variant’s title. */ + title?: boolean | number + /** The unit price value for the variant based on the variant's measurement. */ + unitPrice?: MoneyV2GenqlSelection + /** The unit price measurement for the variant. */ + unitPriceMeasurement?: UnitPriceMeasurementGenqlSelection + /** The weight of the product variant in the unit system specified with `weight_unit`. */ + weight?: boolean | number + /** Unit of measurement for weight. */ + weightUnit?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type for paginating through multiple ProductVariants. + * + */ +export interface ProductVariantConnectionGenqlSelection{ + /** A list of edges. */ + edges?: ProductVariantEdgeGenqlSelection + /** A list of the nodes contained in ProductVariantEdge. */ + nodes?: ProductVariantGenqlSelection + /** Information to aid in pagination. */ + pageInfo?: PageInfoGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type which holds one ProductVariant and a cursor during pagination. + * + */ +export interface ProductVariantEdgeGenqlSelection{ + /** A cursor for use in pagination. */ + cursor?: boolean | number + /** The item at the end of ProductVariantEdge. */ + node?: ProductVariantGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */ +export interface QueryRootGenqlSelection{ + /** List of the shop's articles. */ + articles?: (ArticleConnectionGenqlSelection & { __args: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null), + /** Sort the underlying list by the given key. */ + sortKey?: (ArticleSortKeys | null), + /** + * Supported filter parameters: + * - `author` + * - `blog_title` + * - `created_at` + * - `tag` + * - `tag_not` + * - `updated_at` + * + * See the detailed [search syntax](https://shopify.dev/api/usage/search-syntax) + * for more information about using filters. + * + */ + query?: (Scalars['String'] | null)} }) + /** Fetch a specific `Blog` by one of its unique attributes. */ + blog?: (BlogGenqlSelection & { __args?: { + /** The ID of the `Blog`. */ + id?: (Scalars['ID'] | null), + /** The handle of the `Blog`. */ + handle?: (Scalars['String'] | null)} }) + /** + * @deprecated Use `blog` instead. + * Find a blog by its handle. + */ + blogByHandle?: (BlogGenqlSelection & { __args: { + /** The handle of the blog. */ + handle: Scalars['String']} }) + /** List of the shop's blogs. */ + blogs?: (BlogConnectionGenqlSelection & { __args: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null), + /** Sort the underlying list by the given key. */ + sortKey?: (BlogSortKeys | null), + /** + * Supported filter parameters: + * - `created_at` + * - `handle` + * - `title` + * - `updated_at` + * + * See the detailed [search syntax](https://shopify.dev/api/usage/search-syntax) + * for more information about using filters. + * + */ + query?: (Scalars['String'] | null)} }) + /** + * Retrieve a cart by its ID. For more information, refer to + * [Manage a cart with the Storefront API](https://shopify.dev/custom-storefronts/cart/manage). + * + */ + cart?: (CartGenqlSelection & { __args: { + /** The ID of the cart. */ + id: Scalars['ID']} }) + /** Fetch a specific `Collection` by one of its unique attributes. */ + collection?: (CollectionGenqlSelection & { __args?: { + /** The ID of the `Collection`. */ + id?: (Scalars['ID'] | null), + /** The handle of the `Collection`. */ + handle?: (Scalars['String'] | null)} }) + /** + * @deprecated Use `collection` instead. + * Find a collection by its handle. + */ + collectionByHandle?: (CollectionGenqlSelection & { __args: { + /** The handle of the collection. */ + handle: Scalars['String']} }) + /** List of the shop’s collections. */ + collections?: (CollectionConnectionGenqlSelection & { __args: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null), + /** Sort the underlying list by the given key. */ + sortKey?: (CollectionSortKeys | null), + /** + * Supported filter parameters: + * - `collection_type` + * - `title` + * - `updated_at` + * + * See the detailed [search syntax](https://shopify.dev/api/usage/search-syntax) + * for more information about using filters. + * + */ + query?: (Scalars['String'] | null)} }) + /** Find a customer by its access token. */ + customer?: (CustomerGenqlSelection & { __args: { + /** The customer access token. */ + customerAccessToken: Scalars['String']} }) + /** Returns the localized experiences configured for the shop. */ + localization?: LocalizationGenqlSelection + /** + * List of the shop's locations that support in-store pickup. + * + * When sorting by distance, you must specify a location via the `near` argument. + * + */ + locations?: (LocationConnectionGenqlSelection & { __args?: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null), + /** Sort the underlying list by the given key. */ + sortKey?: (LocationSortKeys | null), + /** Used to sort results based on proximity to the provided location. */ + near?: (GeoCoordinateInput | null)} }) + /** A storefront menu. */ + menu?: (MenuGenqlSelection & { __args: { + /** Returns a storefront menu by the specified handle. */ + handle: Scalars['String']} }) + /** Fetch a specific Metaobject by one of its unique identifiers. */ + metaobject?: (MetaobjectGenqlSelection & { __args?: { + /** The ID of the metaobject. */ + id?: (Scalars['ID'] | null), + /** The handle and type of the metaobject. */ + handle?: (MetaobjectHandleInput | null)} }) + /** All active metaobjects for the shop. */ + metaobjects?: (MetaobjectConnectionGenqlSelection & { __args: { + /** The type of metaobject to retrieve. */ + type: Scalars['String'], + /** The key of a field to sort with. Supports "id" and "updated_at". */ + sortKey?: (Scalars['String'] | null), + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null)} }) + /** Returns a specific node by ID. */ + node?: (NodeGenqlSelection & { __args: { + /** The ID of the Node to return. */ + id: Scalars['ID']} }) + /** Returns the list of nodes with the given IDs. */ + nodes?: (NodeGenqlSelection & { __args: { + /** The IDs of the Nodes to return. */ + ids: Scalars['ID'][]} }) + /** Fetch a specific `Page` by one of its unique attributes. */ + page?: (PageGenqlSelection & { __args?: { + /** The ID of the `Page`. */ + id?: (Scalars['ID'] | null), + /** The handle of the `Page`. */ + handle?: (Scalars['String'] | null)} }) + /** + * @deprecated Use `page` instead. + * Find a page by its handle. + */ + pageByHandle?: (PageGenqlSelection & { __args: { + /** The handle of the page. */ + handle: Scalars['String']} }) + /** List of the shop's pages. */ + pages?: (PageConnectionGenqlSelection & { __args: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null), + /** Sort the underlying list by the given key. */ + sortKey?: (PageSortKeys | null), + /** + * Supported filter parameters: + * - `created_at` + * - `handle` + * - `title` + * - `updated_at` + * + * See the detailed [search syntax](https://shopify.dev/api/usage/search-syntax) + * for more information about using filters. + * + */ + query?: (Scalars['String'] | null)} }) + /** Fetch a specific `Product` by one of its unique attributes. */ + product?: (ProductGenqlSelection & { __args?: { + /** The ID of the `Product`. */ + id?: (Scalars['ID'] | null), + /** The handle of the `Product`. */ + handle?: (Scalars['String'] | null)} }) + /** + * @deprecated Use `product` instead. + * Find a product by its handle. + */ + productByHandle?: (ProductGenqlSelection & { __args: { + /** A unique string that identifies the product. Handles are automatically generated based on the product's title, and are always lowercase. Whitespace and special characters are replaced with a hyphen: `-`. If there are multiple consecutive whitespace or special characters, then they're replaced with a single hyphen. Whitespace or special characters at the beginning are removed. If a duplicate product title is used, then the handle is auto-incremented by one. For example, if you had two products called `Potion`, then their handles would be `potion` and `potion-1`. After a product has been created, changing the product title doesn't update the handle. */ + handle: Scalars['String']} }) + /** + * Find recommended products related to a given `product_id`. + * To learn more about how recommendations are generated, see + * [*Showing product recommendations on product pages*](https://help.shopify.com/themes/development/recommended-products). + * + */ + productRecommendations?: (ProductGenqlSelection & { __args: { + /** The id of the product. */ + productId: Scalars['ID']} }) + /** + * Tags added to products. + * Additional access scope required: unauthenticated_read_product_tags. + * + */ + productTags?: (StringConnectionGenqlSelection & { __args: { + /** Returns up to the first `n` elements from the list. */ + first: Scalars['Int']} }) + /** List of product types for the shop's products that are published to your app. */ + productTypes?: (StringConnectionGenqlSelection & { __args: { + /** Returns up to the first `n` elements from the list. */ + first: Scalars['Int']} }) + /** List of the shop’s products. */ + products?: (ProductConnectionGenqlSelection & { __args: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null), + /** Sort the underlying list by the given key. */ + sortKey?: (ProductSortKeys | null), + /** + * Supported filter parameters: + * - `available_for_sale` + * - `created_at` + * - `product_type` + * - `tag` + * - `tag_not` + * - `title` + * - `updated_at` + * - `variants.price` + * - `vendor` + * + * See the detailed [search syntax](https://shopify.dev/api/usage/search-syntax) + * for more information about using filters. + * + */ + query?: (Scalars['String'] | null)} }) + /** The list of public Storefront API versions, including supported, release candidate and unstable versions. */ + publicApiVersions?: ApiVersionGenqlSelection + /** The shop associated with the storefront access token. */ + shop?: ShopGenqlSelection + /** A list of redirects for a shop. */ + urlRedirects?: (UrlRedirectConnectionGenqlSelection & { __args: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null), + /** + * Supported filter parameters: + * - `created_at` + * - `path` + * - `target` + * + * See the detailed [search syntax](https://shopify.dev/api/usage/search-syntax) + * for more information about using filters. + * + */ + query?: (Scalars['String'] | null)} }) + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** SEO information. */ +export interface SEOGenqlSelection{ + /** The meta description. */ + description?: boolean | number + /** The SEO title. */ + title?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * Script discount applications capture the intentions of a discount that + * was created by a Shopify Script. + * + */ +export interface ScriptDiscountApplicationGenqlSelection{ + /** The method by which the discount's value is allocated to its entitled items. */ + allocationMethod?: boolean | number + /** Which lines of targetType that the discount is allocated over. */ + targetSelection?: boolean | number + /** The type of line that the discount is applicable towards. */ + targetType?: boolean | number + /** The title of the application as defined by the Script. */ + title?: boolean | number + /** The value of the discount application. */ + value?: PricingValueGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * Properties used by customers to select a product variant. + * Products can have multiple options, like different sizes or colors. + * + */ +export interface SelectedOptionGenqlSelection{ + /** The product option’s name. */ + name?: boolean | number + /** The product option’s value. */ + value?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Specifies the input fields required for a selected option. */ +export interface SelectedOptionInput { +/** The product option’s name. */ +name: Scalars['String'], +/** The product option’s value. */ +value: Scalars['String']} + + +/** Represents how products and variants can be sold and purchased. */ +export interface SellingPlanGenqlSelection{ + /** The initial payment due for the purchase. */ + checkoutCharge?: SellingPlanCheckoutChargeGenqlSelection + /** The description of the selling plan. */ + description?: boolean | number + /** A globally-unique identifier. */ + id?: boolean | number + /** The name of the selling plan. For example, '6 weeks of prepaid granola, delivered weekly'. */ + name?: boolean | number + /** The selling plan options available in the drop-down list in the storefront. For example, 'Delivery every week' or 'Delivery every 2 weeks' specifies the delivery frequency options for the product. Individual selling plans contribute their options to the associated selling plan group. For example, a selling plan group might have an option called `option1: Delivery every`. One selling plan in that group could contribute `option1: 2 weeks` with the pricing for that option, and another selling plan could contribute `option1: 4 weeks`, with different pricing. */ + options?: SellingPlanOptionGenqlSelection + /** The price adjustments that a selling plan makes when a variant is purchased with a selling plan. */ + priceAdjustments?: SellingPlanPriceAdjustmentGenqlSelection + /** Whether purchasing the selling plan will result in multiple deliveries. */ + recurringDeliveries?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Represents an association between a variant and a selling plan. Selling plan allocations describe the options offered for each variant, and the price of the variant when purchased with a selling plan. */ +export interface SellingPlanAllocationGenqlSelection{ + /** The checkout charge amount due for the purchase. */ + checkoutChargeAmount?: MoneyV2GenqlSelection + /** A list of price adjustments, with a maximum of two. When there are two, the first price adjustment goes into effect at the time of purchase, while the second one starts after a certain number of orders. A price adjustment represents how a selling plan affects pricing when a variant is purchased with a selling plan. Prices display in the customer's currency if the shop is configured for it. */ + priceAdjustments?: SellingPlanAllocationPriceAdjustmentGenqlSelection + /** The remaining balance charge amount due for the purchase. */ + remainingBalanceChargeAmount?: MoneyV2GenqlSelection + /** A representation of how products and variants can be sold and purchased. For example, an individual selling plan could be '6 weeks of prepaid granola, delivered weekly'. */ + sellingPlan?: SellingPlanGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type for paginating through multiple SellingPlanAllocations. + * + */ +export interface SellingPlanAllocationConnectionGenqlSelection{ + /** A list of edges. */ + edges?: SellingPlanAllocationEdgeGenqlSelection + /** A list of the nodes contained in SellingPlanAllocationEdge. */ + nodes?: SellingPlanAllocationGenqlSelection + /** Information to aid in pagination. */ + pageInfo?: PageInfoGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type which holds one SellingPlanAllocation and a cursor during pagination. + * + */ +export interface SellingPlanAllocationEdgeGenqlSelection{ + /** A cursor for use in pagination. */ + cursor?: boolean | number + /** The item at the end of SellingPlanAllocationEdge. */ + node?: SellingPlanAllocationGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** The resulting prices for variants when they're purchased with a specific selling plan. */ +export interface SellingPlanAllocationPriceAdjustmentGenqlSelection{ + /** The price of the variant when it's purchased without a selling plan for the same number of deliveries. For example, if a customer purchases 6 deliveries of $10.00 granola separately, then the price is 6 x $10.00 = $60.00. */ + compareAtPrice?: MoneyV2GenqlSelection + /** The effective price for a single delivery. For example, for a prepaid subscription plan that includes 6 deliveries at the price of $48.00, the per delivery price is $8.00. */ + perDeliveryPrice?: MoneyV2GenqlSelection + /** The price of the variant when it's purchased with a selling plan For example, for a prepaid subscription plan that includes 6 deliveries of $10.00 granola, where the customer gets 20% off, the price is 6 x $10.00 x 0.80 = $48.00. */ + price?: MoneyV2GenqlSelection + /** The resulting price per unit for the variant associated with the selling plan. If the variant isn't sold by quantity or measurement, then this field returns `null`. */ + unitPrice?: MoneyV2GenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** The initial payment due for the purchase. */ +export interface SellingPlanCheckoutChargeGenqlSelection{ + /** The charge type for the checkout charge. */ + type?: boolean | number + /** The charge value for the checkout charge. */ + value?: SellingPlanCheckoutChargeValueGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** The percentage value of the price used for checkout charge. */ +export interface SellingPlanCheckoutChargePercentageValueGenqlSelection{ + /** The percentage value of the price used for checkout charge. */ + percentage?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** The portion of the price to be charged at checkout. */ +export interface SellingPlanCheckoutChargeValueGenqlSelection{ + on_MoneyV2?:MoneyV2GenqlSelection, + on_SellingPlanCheckoutChargePercentageValue?:SellingPlanCheckoutChargePercentageValueGenqlSelection, + __typename?: boolean | number +} + + +/** + * An auto-generated type for paginating through multiple SellingPlans. + * + */ +export interface SellingPlanConnectionGenqlSelection{ + /** A list of edges. */ + edges?: SellingPlanEdgeGenqlSelection + /** A list of the nodes contained in SellingPlanEdge. */ + nodes?: SellingPlanGenqlSelection + /** Information to aid in pagination. */ + pageInfo?: PageInfoGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type which holds one SellingPlan and a cursor during pagination. + * + */ +export interface SellingPlanEdgeGenqlSelection{ + /** A cursor for use in pagination. */ + cursor?: boolean | number + /** The item at the end of SellingPlanEdge. */ + node?: SellingPlanGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** A fixed amount that's deducted from the original variant price. For example, $10.00 off. */ +export interface SellingPlanFixedAmountPriceAdjustmentGenqlSelection{ + /** The money value of the price adjustment. */ + adjustmentAmount?: MoneyV2GenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** A fixed price adjustment for a variant that's purchased with a selling plan. */ +export interface SellingPlanFixedPriceAdjustmentGenqlSelection{ + /** A new price of the variant when it's purchased with the selling plan. */ + price?: MoneyV2GenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Represents a selling method. For example, 'Subscribe and save' is a selling method where customers pay for goods or services per delivery. A selling plan group contains individual selling plans. */ +export interface SellingPlanGroupGenqlSelection{ + /** A display friendly name for the app that created the selling plan group. */ + appName?: boolean | number + /** The name of the selling plan group. */ + name?: boolean | number + /** Represents the selling plan options available in the drop-down list in the storefront. For example, 'Delivery every week' or 'Delivery every 2 weeks' specifies the delivery frequency options for the product. */ + options?: SellingPlanGroupOptionGenqlSelection + /** A list of selling plans in a selling plan group. A selling plan is a representation of how products and variants can be sold and purchased. For example, an individual selling plan could be '6 weeks of prepaid granola, delivered weekly'. */ + sellingPlans?: (SellingPlanConnectionGenqlSelection & { __args?: { + /** Returns up to the first `n` elements from the list. */ + first?: (Scalars['Int'] | null), + /** Returns the elements that come after the specified cursor. */ + after?: (Scalars['String'] | null), + /** Returns up to the last `n` elements from the list. */ + last?: (Scalars['Int'] | null), + /** Returns the elements that come before the specified cursor. */ + before?: (Scalars['String'] | null), + /** Reverse the order of the underlying list. */ + reverse?: (Scalars['Boolean'] | null)} }) + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type for paginating through multiple SellingPlanGroups. + * + */ +export interface SellingPlanGroupConnectionGenqlSelection{ + /** A list of edges. */ + edges?: SellingPlanGroupEdgeGenqlSelection + /** A list of the nodes contained in SellingPlanGroupEdge. */ + nodes?: SellingPlanGroupGenqlSelection + /** Information to aid in pagination. */ + pageInfo?: PageInfoGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type which holds one SellingPlanGroup and a cursor during pagination. + * + */ +export interface SellingPlanGroupEdgeGenqlSelection{ + /** A cursor for use in pagination. */ + cursor?: boolean | number + /** The item at the end of SellingPlanGroupEdge. */ + node?: SellingPlanGroupGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * Represents an option on a selling plan group that's available in the drop-down list in the storefront. + * + * Individual selling plans contribute their options to the associated selling plan group. For example, a selling plan group might have an option called `option1: Delivery every`. One selling plan in that group could contribute `option1: 2 weeks` with the pricing for that option, and another selling plan could contribute `option1: 4 weeks`, with different pricing. + */ +export interface SellingPlanGroupOptionGenqlSelection{ + /** The name of the option. For example, 'Delivery every'. */ + name?: boolean | number + /** The values for the options specified by the selling plans in the selling plan group. For example, '1 week', '2 weeks', '3 weeks'. */ + values?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** An option provided by a Selling Plan. */ +export interface SellingPlanOptionGenqlSelection{ + /** The name of the option (ie "Delivery every"). */ + name?: boolean | number + /** The value of the option (ie "Month"). */ + value?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** A percentage amount that's deducted from the original variant price. For example, 10% off. */ +export interface SellingPlanPercentagePriceAdjustmentGenqlSelection{ + /** The percentage value of the price adjustment. */ + adjustmentPercentage?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Represents by how much the price of a variant associated with a selling plan is adjusted. Each variant can have up to two price adjustments. If a variant has multiple price adjustments, then the first price adjustment applies when the variant is initially purchased. The second price adjustment applies after a certain number of orders (specified by the `orderCount` field) are made. If a selling plan doesn't have any price adjustments, then the unadjusted price of the variant is the effective price. */ +export interface SellingPlanPriceAdjustmentGenqlSelection{ + /** The type of price adjustment. An adjustment value can have one of three types: percentage, amount off, or a new price. */ + adjustmentValue?: SellingPlanPriceAdjustmentValueGenqlSelection + /** The number of orders that the price adjustment applies to. If the price adjustment always applies, then this field is `null`. */ + orderCount?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Represents by how much the price of a variant associated with a selling plan is adjusted. Each variant can have up to two price adjustments. */ +export interface SellingPlanPriceAdjustmentValueGenqlSelection{ + on_SellingPlanFixedAmountPriceAdjustment?:SellingPlanFixedAmountPriceAdjustmentGenqlSelection, + on_SellingPlanFixedPriceAdjustment?:SellingPlanFixedPriceAdjustmentGenqlSelection, + on_SellingPlanPercentagePriceAdjustment?:SellingPlanPercentagePriceAdjustmentGenqlSelection, + __typename?: boolean | number +} + + +/** A shipping rate to be applied to a checkout. */ +export interface ShippingRateGenqlSelection{ + /** Human-readable unique identifier for this shipping rate. */ + handle?: boolean | number + /** Price of this shipping rate. */ + price?: MoneyV2GenqlSelection + /** + * @deprecated Use `price` instead. + * Price of this shipping rate. + */ + priceV2?: MoneyV2GenqlSelection + /** Title of this shipping rate. */ + title?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Shop represents a collection of the general settings and information about the shop. */ +export interface ShopGenqlSelection{ + /** The shop's branding configuration. */ + brand?: BrandGenqlSelection + /** A description of the shop. */ + description?: boolean | number + /** A globally-unique identifier. */ + id?: boolean | number + /** Returns a metafield found by namespace and key. */ + metafield?: (MetafieldGenqlSelection & { __args: { + /** A container for a set of metafields. */ + namespace: Scalars['String'], + /** The identifier for the metafield. */ + key: Scalars['String']} }) + /** + * The metafields associated with the resource matching the supplied list of namespaces and keys. + * + */ + metafields?: (MetafieldGenqlSelection & { __args: { + /** The list of metafields to retrieve by namespace and key. */ + identifiers: HasMetafieldsIdentifier[]} }) + /** A string representing the way currency is formatted when the currency isn’t specified. */ + moneyFormat?: boolean | number + /** The shop’s name. */ + name?: boolean | number + /** Settings related to payments. */ + paymentSettings?: PaymentSettingsGenqlSelection + /** The primary domain of the shop’s Online Store. */ + primaryDomain?: DomainGenqlSelection + /** The shop’s privacy policy. */ + privacyPolicy?: ShopPolicyGenqlSelection + /** The shop’s refund policy. */ + refundPolicy?: ShopPolicyGenqlSelection + /** The shop’s shipping policy. */ + shippingPolicy?: ShopPolicyGenqlSelection + /** Countries that the shop ships to. */ + shipsToCountries?: boolean | number + /** The shop’s subscription policy. */ + subscriptionPolicy?: ShopPolicyWithDefaultGenqlSelection + /** The shop’s terms of service. */ + termsOfService?: ShopPolicyGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Policy that a merchant has configured for their store, such as their refund or privacy policy. */ +export interface ShopPolicyGenqlSelection{ + /** Policy text, maximum size of 64kb. */ + body?: boolean | number + /** Policy’s handle. */ + handle?: boolean | number + /** A globally-unique identifier. */ + id?: boolean | number + /** Policy’s title. */ + title?: boolean | number + /** Public URL to the policy. */ + url?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * A policy for the store that comes with a default value, such as a subscription policy. + * If the merchant hasn't configured a policy for their store, then the policy will return the default value. + * Otherwise, the policy will return the merchant-configured value. + * + */ +export interface ShopPolicyWithDefaultGenqlSelection{ + /** The text of the policy. Maximum size: 64KB. */ + body?: boolean | number + /** The handle of the policy. */ + handle?: boolean | number + /** The unique identifier of the policy. A default policy doesn't have an ID. */ + id?: boolean | number + /** The title of the policy. */ + title?: boolean | number + /** Public URL to the policy. */ + url?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * The availability of a product variant at a particular location. + * Local pick-up must be enabled in the store's shipping settings, otherwise this will return an empty result. + * + */ +export interface StoreAvailabilityGenqlSelection{ + /** Whether the product variant is in-stock at this location. */ + available?: boolean | number + /** The location where this product variant is stocked at. */ + location?: LocationGenqlSelection + /** Returns the estimated amount of time it takes for pickup to be ready (Example: Usually ready in 24 hours). */ + pickUpTime?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type for paginating through multiple StoreAvailabilities. + * + */ +export interface StoreAvailabilityConnectionGenqlSelection{ + /** A list of edges. */ + edges?: StoreAvailabilityEdgeGenqlSelection + /** A list of the nodes contained in StoreAvailabilityEdge. */ + nodes?: StoreAvailabilityGenqlSelection + /** Information to aid in pagination. */ + pageInfo?: PageInfoGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type which holds one StoreAvailability and a cursor during pagination. + * + */ +export interface StoreAvailabilityEdgeGenqlSelection{ + /** A cursor for use in pagination. */ + cursor?: boolean | number + /** The item at the end of StoreAvailabilityEdge. */ + node?: StoreAvailabilityGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type for paginating through a list of Strings. + * + */ +export interface StringConnectionGenqlSelection{ + /** A list of edges. */ + edges?: StringEdgeGenqlSelection + /** Information to aid in pagination. */ + pageInfo?: PageInfoGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type which holds one String and a cursor during pagination. + * + */ +export interface StringEdgeGenqlSelection{ + /** A cursor for use in pagination. */ + cursor?: boolean | number + /** The item at the end of StringEdge. */ + node?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * Specifies the fields required to complete a checkout with + * a tokenized payment. + * + */ +export interface TokenizedPaymentInputV3 { +/** The amount and currency of the payment. */ +paymentAmount: MoneyInput, +/** A unique client generated key used to avoid duplicate charges. When a duplicate payment is found, the original is returned instead of creating a new one. For more information, refer to [Idempotent requests](https://shopify.dev/api/usage/idempotent-requests). */ +idempotencyKey: Scalars['String'], +/** The billing address for the payment. */ +billingAddress: MailingAddressInput, +/** A simple string or JSON containing the required payment data for the tokenized payment. */ +paymentData: Scalars['String'], +/** Whether to execute the payment in test mode, if possible. Test mode is not supported in production stores. Defaults to `false`. */ +test?: (Scalars['Boolean'] | null), +/** Public Hash Key used for AndroidPay payments only. */ +identifier?: (Scalars['String'] | null), +/** The type of payment token. */ +type: PaymentTokenType} + + +/** An object representing exchange of money for a product or service. */ +export interface TransactionGenqlSelection{ + /** The amount of money that the transaction was for. */ + amount?: MoneyV2GenqlSelection + /** + * @deprecated Use `amount` instead. + * The amount of money that the transaction was for. + */ + amountV2?: MoneyV2GenqlSelection + /** The kind of the transaction. */ + kind?: boolean | number + /** + * @deprecated Use `statusV2` instead. + * The status of the transaction. + */ + status?: boolean | number + /** The status of the transaction. */ + statusV2?: boolean | number + /** Whether the transaction was done in test mode or not. */ + test?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * The measurement used to calculate a unit price for a product variant (e.g. $9.99 / 100ml). + * + */ +export interface UnitPriceMeasurementGenqlSelection{ + /** The type of unit of measurement for the unit price measurement. */ + measuredType?: boolean | number + /** The quantity unit for the unit price measurement. */ + quantityUnit?: boolean | number + /** The quantity value for the unit price measurement. */ + quantityValue?: boolean | number + /** The reference unit for the unit price measurement. */ + referenceUnit?: boolean | number + /** The reference value for the unit price measurement. */ + referenceValue?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** A redirect on the online store. */ +export interface UrlRedirectGenqlSelection{ + /** The ID of the URL redirect. */ + id?: boolean | number + /** The old path to be redirected from. When the user visits this path, they'll be redirected to the target location. */ + path?: boolean | number + /** The target location where the user will be redirected to. */ + target?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type for paginating through multiple UrlRedirects. + * + */ +export interface UrlRedirectConnectionGenqlSelection{ + /** A list of edges. */ + edges?: UrlRedirectEdgeGenqlSelection + /** A list of the nodes contained in UrlRedirectEdge. */ + nodes?: UrlRedirectGenqlSelection + /** Information to aid in pagination. */ + pageInfo?: PageInfoGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** + * An auto-generated type which holds one UrlRedirect and a cursor during pagination. + * + */ +export interface UrlRedirectEdgeGenqlSelection{ + /** A cursor for use in pagination. */ + cursor?: boolean | number + /** The item at the end of UrlRedirectEdge. */ + node?: UrlRedirectGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Represents an error in the input of a mutation. */ +export interface UserErrorGenqlSelection{ + /** The path to the input field that caused the error. */ + field?: boolean | number + /** The error message. */ + message?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** A filter used to view a subset of products in a collection matching a specific variant option. */ +export interface VariantOptionFilter { +/** The name of the variant option to filter on. */ +name: Scalars['String'], +/** The value of the variant option to filter on. */ +value: Scalars['String']} + + +/** Represents a Shopify hosted video. */ +export interface VideoGenqlSelection{ + /** A word or phrase to share the nature or contents of a media. */ + alt?: boolean | number + /** A globally-unique identifier. */ + id?: boolean | number + /** The media content type. */ + mediaContentType?: boolean | number + /** The preview image for the media. */ + previewImage?: ImageGenqlSelection + /** The sources for a video. */ + sources?: VideoSourceGenqlSelection + __typename?: boolean | number + __scalar?: boolean | number +} + + +/** Represents a source for a Shopify hosted video. */ +export interface VideoSourceGenqlSelection{ + /** The format of the video source. */ + format?: boolean | number + /** The height of the video. */ + height?: boolean | number + /** The video MIME type. */ + mimeType?: boolean | number + /** The URL of the video. */ + url?: boolean | number + /** The width of the video. */ + width?: boolean | number + __typename?: boolean | number + __scalar?: boolean | number +} + +export type QueryGenqlSelection = QueryRootGenqlSelection + + + const ApiVersion_possibleTypes: string[] = ['ApiVersion'] + export const isApiVersion = (obj?: { __typename?: any } | null): obj is ApiVersion => { + if (!obj?.__typename) throw new Error('__typename is missing in "isApiVersion"') + return ApiVersion_possibleTypes.includes(obj.__typename) + } + + + + const AppliedGiftCard_possibleTypes: string[] = ['AppliedGiftCard'] + export const isAppliedGiftCard = (obj?: { __typename?: any } | null): obj is AppliedGiftCard => { + if (!obj?.__typename) throw new Error('__typename is missing in "isAppliedGiftCard"') + return AppliedGiftCard_possibleTypes.includes(obj.__typename) + } + + + + const Article_possibleTypes: string[] = ['Article'] + export const isArticle = (obj?: { __typename?: any } | null): obj is Article => { + if (!obj?.__typename) throw new Error('__typename is missing in "isArticle"') + return Article_possibleTypes.includes(obj.__typename) + } + + + + const ArticleAuthor_possibleTypes: string[] = ['ArticleAuthor'] + export const isArticleAuthor = (obj?: { __typename?: any } | null): obj is ArticleAuthor => { + if (!obj?.__typename) throw new Error('__typename is missing in "isArticleAuthor"') + return ArticleAuthor_possibleTypes.includes(obj.__typename) + } + + + + const ArticleConnection_possibleTypes: string[] = ['ArticleConnection'] + export const isArticleConnection = (obj?: { __typename?: any } | null): obj is ArticleConnection => { + if (!obj?.__typename) throw new Error('__typename is missing in "isArticleConnection"') + return ArticleConnection_possibleTypes.includes(obj.__typename) + } + + + + const ArticleEdge_possibleTypes: string[] = ['ArticleEdge'] + export const isArticleEdge = (obj?: { __typename?: any } | null): obj is ArticleEdge => { + if (!obj?.__typename) throw new Error('__typename is missing in "isArticleEdge"') + return ArticleEdge_possibleTypes.includes(obj.__typename) + } + + + + const Attribute_possibleTypes: string[] = ['Attribute'] + export const isAttribute = (obj?: { __typename?: any } | null): obj is Attribute => { + if (!obj?.__typename) throw new Error('__typename is missing in "isAttribute"') + return Attribute_possibleTypes.includes(obj.__typename) + } + + + + const AutomaticDiscountApplication_possibleTypes: string[] = ['AutomaticDiscountApplication'] + export const isAutomaticDiscountApplication = (obj?: { __typename?: any } | null): obj is AutomaticDiscountApplication => { + if (!obj?.__typename) throw new Error('__typename is missing in "isAutomaticDiscountApplication"') + return AutomaticDiscountApplication_possibleTypes.includes(obj.__typename) + } + + + + const AvailableShippingRates_possibleTypes: string[] = ['AvailableShippingRates'] + export const isAvailableShippingRates = (obj?: { __typename?: any } | null): obj is AvailableShippingRates => { + if (!obj?.__typename) throw new Error('__typename is missing in "isAvailableShippingRates"') + return AvailableShippingRates_possibleTypes.includes(obj.__typename) + } + + + + const Blog_possibleTypes: string[] = ['Blog'] + export const isBlog = (obj?: { __typename?: any } | null): obj is Blog => { + if (!obj?.__typename) throw new Error('__typename is missing in "isBlog"') + return Blog_possibleTypes.includes(obj.__typename) + } + + + + const BlogConnection_possibleTypes: string[] = ['BlogConnection'] + export const isBlogConnection = (obj?: { __typename?: any } | null): obj is BlogConnection => { + if (!obj?.__typename) throw new Error('__typename is missing in "isBlogConnection"') + return BlogConnection_possibleTypes.includes(obj.__typename) + } + + + + const BlogEdge_possibleTypes: string[] = ['BlogEdge'] + export const isBlogEdge = (obj?: { __typename?: any } | null): obj is BlogEdge => { + if (!obj?.__typename) throw new Error('__typename is missing in "isBlogEdge"') + return BlogEdge_possibleTypes.includes(obj.__typename) + } + + + + const Brand_possibleTypes: string[] = ['Brand'] + export const isBrand = (obj?: { __typename?: any } | null): obj is Brand => { + if (!obj?.__typename) throw new Error('__typename is missing in "isBrand"') + return Brand_possibleTypes.includes(obj.__typename) + } + + + + const BrandColorGroup_possibleTypes: string[] = ['BrandColorGroup'] + export const isBrandColorGroup = (obj?: { __typename?: any } | null): obj is BrandColorGroup => { + if (!obj?.__typename) throw new Error('__typename is missing in "isBrandColorGroup"') + return BrandColorGroup_possibleTypes.includes(obj.__typename) + } + + + + const BrandColors_possibleTypes: string[] = ['BrandColors'] + export const isBrandColors = (obj?: { __typename?: any } | null): obj is BrandColors => { + if (!obj?.__typename) throw new Error('__typename is missing in "isBrandColors"') + return BrandColors_possibleTypes.includes(obj.__typename) + } + + + + const Cart_possibleTypes: string[] = ['Cart'] + export const isCart = (obj?: { __typename?: any } | null): obj is Cart => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCart"') + return Cart_possibleTypes.includes(obj.__typename) + } + + + + const CartAttributesUpdatePayload_possibleTypes: string[] = ['CartAttributesUpdatePayload'] + export const isCartAttributesUpdatePayload = (obj?: { __typename?: any } | null): obj is CartAttributesUpdatePayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCartAttributesUpdatePayload"') + return CartAttributesUpdatePayload_possibleTypes.includes(obj.__typename) + } + + + + const CartAutomaticDiscountAllocation_possibleTypes: string[] = ['CartAutomaticDiscountAllocation'] + export const isCartAutomaticDiscountAllocation = (obj?: { __typename?: any } | null): obj is CartAutomaticDiscountAllocation => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCartAutomaticDiscountAllocation"') + return CartAutomaticDiscountAllocation_possibleTypes.includes(obj.__typename) + } + + + + const CartBuyerIdentity_possibleTypes: string[] = ['CartBuyerIdentity'] + export const isCartBuyerIdentity = (obj?: { __typename?: any } | null): obj is CartBuyerIdentity => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCartBuyerIdentity"') + return CartBuyerIdentity_possibleTypes.includes(obj.__typename) + } + + + + const CartBuyerIdentityUpdatePayload_possibleTypes: string[] = ['CartBuyerIdentityUpdatePayload'] + export const isCartBuyerIdentityUpdatePayload = (obj?: { __typename?: any } | null): obj is CartBuyerIdentityUpdatePayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCartBuyerIdentityUpdatePayload"') + return CartBuyerIdentityUpdatePayload_possibleTypes.includes(obj.__typename) + } + + + + const CartCodeDiscountAllocation_possibleTypes: string[] = ['CartCodeDiscountAllocation'] + export const isCartCodeDiscountAllocation = (obj?: { __typename?: any } | null): obj is CartCodeDiscountAllocation => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCartCodeDiscountAllocation"') + return CartCodeDiscountAllocation_possibleTypes.includes(obj.__typename) + } + + + + const CartCost_possibleTypes: string[] = ['CartCost'] + export const isCartCost = (obj?: { __typename?: any } | null): obj is CartCost => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCartCost"') + return CartCost_possibleTypes.includes(obj.__typename) + } + + + + const CartCreatePayload_possibleTypes: string[] = ['CartCreatePayload'] + export const isCartCreatePayload = (obj?: { __typename?: any } | null): obj is CartCreatePayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCartCreatePayload"') + return CartCreatePayload_possibleTypes.includes(obj.__typename) + } + + + + const CartCustomDiscountAllocation_possibleTypes: string[] = ['CartCustomDiscountAllocation'] + export const isCartCustomDiscountAllocation = (obj?: { __typename?: any } | null): obj is CartCustomDiscountAllocation => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCartCustomDiscountAllocation"') + return CartCustomDiscountAllocation_possibleTypes.includes(obj.__typename) + } + + + + const CartDeliveryGroup_possibleTypes: string[] = ['CartDeliveryGroup'] + export const isCartDeliveryGroup = (obj?: { __typename?: any } | null): obj is CartDeliveryGroup => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCartDeliveryGroup"') + return CartDeliveryGroup_possibleTypes.includes(obj.__typename) + } + + + + const CartDeliveryGroupConnection_possibleTypes: string[] = ['CartDeliveryGroupConnection'] + export const isCartDeliveryGroupConnection = (obj?: { __typename?: any } | null): obj is CartDeliveryGroupConnection => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCartDeliveryGroupConnection"') + return CartDeliveryGroupConnection_possibleTypes.includes(obj.__typename) + } + + + + const CartDeliveryGroupEdge_possibleTypes: string[] = ['CartDeliveryGroupEdge'] + export const isCartDeliveryGroupEdge = (obj?: { __typename?: any } | null): obj is CartDeliveryGroupEdge => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCartDeliveryGroupEdge"') + return CartDeliveryGroupEdge_possibleTypes.includes(obj.__typename) + } + + + + const CartDeliveryOption_possibleTypes: string[] = ['CartDeliveryOption'] + export const isCartDeliveryOption = (obj?: { __typename?: any } | null): obj is CartDeliveryOption => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCartDeliveryOption"') + return CartDeliveryOption_possibleTypes.includes(obj.__typename) + } + + + + const CartDiscountAllocation_possibleTypes: string[] = ['CartAutomaticDiscountAllocation','CartCodeDiscountAllocation','CartCustomDiscountAllocation'] + export const isCartDiscountAllocation = (obj?: { __typename?: any } | null): obj is CartDiscountAllocation => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCartDiscountAllocation"') + return CartDiscountAllocation_possibleTypes.includes(obj.__typename) + } + + + + const CartDiscountCode_possibleTypes: string[] = ['CartDiscountCode'] + export const isCartDiscountCode = (obj?: { __typename?: any } | null): obj is CartDiscountCode => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCartDiscountCode"') + return CartDiscountCode_possibleTypes.includes(obj.__typename) + } + + + + const CartDiscountCodesUpdatePayload_possibleTypes: string[] = ['CartDiscountCodesUpdatePayload'] + export const isCartDiscountCodesUpdatePayload = (obj?: { __typename?: any } | null): obj is CartDiscountCodesUpdatePayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCartDiscountCodesUpdatePayload"') + return CartDiscountCodesUpdatePayload_possibleTypes.includes(obj.__typename) + } + + + + const CartEstimatedCost_possibleTypes: string[] = ['CartEstimatedCost'] + export const isCartEstimatedCost = (obj?: { __typename?: any } | null): obj is CartEstimatedCost => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCartEstimatedCost"') + return CartEstimatedCost_possibleTypes.includes(obj.__typename) + } + + + + const CartLine_possibleTypes: string[] = ['CartLine'] + export const isCartLine = (obj?: { __typename?: any } | null): obj is CartLine => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCartLine"') + return CartLine_possibleTypes.includes(obj.__typename) + } + + + + const CartLineConnection_possibleTypes: string[] = ['CartLineConnection'] + export const isCartLineConnection = (obj?: { __typename?: any } | null): obj is CartLineConnection => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCartLineConnection"') + return CartLineConnection_possibleTypes.includes(obj.__typename) + } + + + + const CartLineCost_possibleTypes: string[] = ['CartLineCost'] + export const isCartLineCost = (obj?: { __typename?: any } | null): obj is CartLineCost => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCartLineCost"') + return CartLineCost_possibleTypes.includes(obj.__typename) + } + + + + const CartLineEdge_possibleTypes: string[] = ['CartLineEdge'] + export const isCartLineEdge = (obj?: { __typename?: any } | null): obj is CartLineEdge => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCartLineEdge"') + return CartLineEdge_possibleTypes.includes(obj.__typename) + } + + + + const CartLineEstimatedCost_possibleTypes: string[] = ['CartLineEstimatedCost'] + export const isCartLineEstimatedCost = (obj?: { __typename?: any } | null): obj is CartLineEstimatedCost => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCartLineEstimatedCost"') + return CartLineEstimatedCost_possibleTypes.includes(obj.__typename) + } + + + + const CartLinesAddPayload_possibleTypes: string[] = ['CartLinesAddPayload'] + export const isCartLinesAddPayload = (obj?: { __typename?: any } | null): obj is CartLinesAddPayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCartLinesAddPayload"') + return CartLinesAddPayload_possibleTypes.includes(obj.__typename) + } + + + + const CartLinesRemovePayload_possibleTypes: string[] = ['CartLinesRemovePayload'] + export const isCartLinesRemovePayload = (obj?: { __typename?: any } | null): obj is CartLinesRemovePayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCartLinesRemovePayload"') + return CartLinesRemovePayload_possibleTypes.includes(obj.__typename) + } + + + + const CartLinesUpdatePayload_possibleTypes: string[] = ['CartLinesUpdatePayload'] + export const isCartLinesUpdatePayload = (obj?: { __typename?: any } | null): obj is CartLinesUpdatePayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCartLinesUpdatePayload"') + return CartLinesUpdatePayload_possibleTypes.includes(obj.__typename) + } + + + + const CartNoteUpdatePayload_possibleTypes: string[] = ['CartNoteUpdatePayload'] + export const isCartNoteUpdatePayload = (obj?: { __typename?: any } | null): obj is CartNoteUpdatePayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCartNoteUpdatePayload"') + return CartNoteUpdatePayload_possibleTypes.includes(obj.__typename) + } + + + + const CartSelectedDeliveryOptionsUpdatePayload_possibleTypes: string[] = ['CartSelectedDeliveryOptionsUpdatePayload'] + export const isCartSelectedDeliveryOptionsUpdatePayload = (obj?: { __typename?: any } | null): obj is CartSelectedDeliveryOptionsUpdatePayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCartSelectedDeliveryOptionsUpdatePayload"') + return CartSelectedDeliveryOptionsUpdatePayload_possibleTypes.includes(obj.__typename) + } + + + + const CartUserError_possibleTypes: string[] = ['CartUserError'] + export const isCartUserError = (obj?: { __typename?: any } | null): obj is CartUserError => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCartUserError"') + return CartUserError_possibleTypes.includes(obj.__typename) + } + + + + const Checkout_possibleTypes: string[] = ['Checkout'] + export const isCheckout = (obj?: { __typename?: any } | null): obj is Checkout => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCheckout"') + return Checkout_possibleTypes.includes(obj.__typename) + } + + + + const CheckoutAttributesUpdateV2Payload_possibleTypes: string[] = ['CheckoutAttributesUpdateV2Payload'] + export const isCheckoutAttributesUpdateV2Payload = (obj?: { __typename?: any } | null): obj is CheckoutAttributesUpdateV2Payload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCheckoutAttributesUpdateV2Payload"') + return CheckoutAttributesUpdateV2Payload_possibleTypes.includes(obj.__typename) + } + + + + const CheckoutBuyerIdentity_possibleTypes: string[] = ['CheckoutBuyerIdentity'] + export const isCheckoutBuyerIdentity = (obj?: { __typename?: any } | null): obj is CheckoutBuyerIdentity => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCheckoutBuyerIdentity"') + return CheckoutBuyerIdentity_possibleTypes.includes(obj.__typename) + } + + + + const CheckoutCompleteFreePayload_possibleTypes: string[] = ['CheckoutCompleteFreePayload'] + export const isCheckoutCompleteFreePayload = (obj?: { __typename?: any } | null): obj is CheckoutCompleteFreePayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCheckoutCompleteFreePayload"') + return CheckoutCompleteFreePayload_possibleTypes.includes(obj.__typename) + } + + + + const CheckoutCompleteWithCreditCardV2Payload_possibleTypes: string[] = ['CheckoutCompleteWithCreditCardV2Payload'] + export const isCheckoutCompleteWithCreditCardV2Payload = (obj?: { __typename?: any } | null): obj is CheckoutCompleteWithCreditCardV2Payload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCheckoutCompleteWithCreditCardV2Payload"') + return CheckoutCompleteWithCreditCardV2Payload_possibleTypes.includes(obj.__typename) + } + + + + const CheckoutCompleteWithTokenizedPaymentV3Payload_possibleTypes: string[] = ['CheckoutCompleteWithTokenizedPaymentV3Payload'] + export const isCheckoutCompleteWithTokenizedPaymentV3Payload = (obj?: { __typename?: any } | null): obj is CheckoutCompleteWithTokenizedPaymentV3Payload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCheckoutCompleteWithTokenizedPaymentV3Payload"') + return CheckoutCompleteWithTokenizedPaymentV3Payload_possibleTypes.includes(obj.__typename) + } + + + + const CheckoutCreatePayload_possibleTypes: string[] = ['CheckoutCreatePayload'] + export const isCheckoutCreatePayload = (obj?: { __typename?: any } | null): obj is CheckoutCreatePayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCheckoutCreatePayload"') + return CheckoutCreatePayload_possibleTypes.includes(obj.__typename) + } + + + + const CheckoutCustomerAssociateV2Payload_possibleTypes: string[] = ['CheckoutCustomerAssociateV2Payload'] + export const isCheckoutCustomerAssociateV2Payload = (obj?: { __typename?: any } | null): obj is CheckoutCustomerAssociateV2Payload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCheckoutCustomerAssociateV2Payload"') + return CheckoutCustomerAssociateV2Payload_possibleTypes.includes(obj.__typename) + } + + + + const CheckoutCustomerDisassociateV2Payload_possibleTypes: string[] = ['CheckoutCustomerDisassociateV2Payload'] + export const isCheckoutCustomerDisassociateV2Payload = (obj?: { __typename?: any } | null): obj is CheckoutCustomerDisassociateV2Payload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCheckoutCustomerDisassociateV2Payload"') + return CheckoutCustomerDisassociateV2Payload_possibleTypes.includes(obj.__typename) + } + + + + const CheckoutDiscountCodeApplyV2Payload_possibleTypes: string[] = ['CheckoutDiscountCodeApplyV2Payload'] + export const isCheckoutDiscountCodeApplyV2Payload = (obj?: { __typename?: any } | null): obj is CheckoutDiscountCodeApplyV2Payload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCheckoutDiscountCodeApplyV2Payload"') + return CheckoutDiscountCodeApplyV2Payload_possibleTypes.includes(obj.__typename) + } + + + + const CheckoutDiscountCodeRemovePayload_possibleTypes: string[] = ['CheckoutDiscountCodeRemovePayload'] + export const isCheckoutDiscountCodeRemovePayload = (obj?: { __typename?: any } | null): obj is CheckoutDiscountCodeRemovePayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCheckoutDiscountCodeRemovePayload"') + return CheckoutDiscountCodeRemovePayload_possibleTypes.includes(obj.__typename) + } + + + + const CheckoutEmailUpdateV2Payload_possibleTypes: string[] = ['CheckoutEmailUpdateV2Payload'] + export const isCheckoutEmailUpdateV2Payload = (obj?: { __typename?: any } | null): obj is CheckoutEmailUpdateV2Payload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCheckoutEmailUpdateV2Payload"') + return CheckoutEmailUpdateV2Payload_possibleTypes.includes(obj.__typename) + } + + + + const CheckoutGiftCardRemoveV2Payload_possibleTypes: string[] = ['CheckoutGiftCardRemoveV2Payload'] + export const isCheckoutGiftCardRemoveV2Payload = (obj?: { __typename?: any } | null): obj is CheckoutGiftCardRemoveV2Payload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCheckoutGiftCardRemoveV2Payload"') + return CheckoutGiftCardRemoveV2Payload_possibleTypes.includes(obj.__typename) + } + + + + const CheckoutGiftCardsAppendPayload_possibleTypes: string[] = ['CheckoutGiftCardsAppendPayload'] + export const isCheckoutGiftCardsAppendPayload = (obj?: { __typename?: any } | null): obj is CheckoutGiftCardsAppendPayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCheckoutGiftCardsAppendPayload"') + return CheckoutGiftCardsAppendPayload_possibleTypes.includes(obj.__typename) + } + + + + const CheckoutLineItem_possibleTypes: string[] = ['CheckoutLineItem'] + export const isCheckoutLineItem = (obj?: { __typename?: any } | null): obj is CheckoutLineItem => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCheckoutLineItem"') + return CheckoutLineItem_possibleTypes.includes(obj.__typename) + } + + + + const CheckoutLineItemConnection_possibleTypes: string[] = ['CheckoutLineItemConnection'] + export const isCheckoutLineItemConnection = (obj?: { __typename?: any } | null): obj is CheckoutLineItemConnection => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCheckoutLineItemConnection"') + return CheckoutLineItemConnection_possibleTypes.includes(obj.__typename) + } + + + + const CheckoutLineItemEdge_possibleTypes: string[] = ['CheckoutLineItemEdge'] + export const isCheckoutLineItemEdge = (obj?: { __typename?: any } | null): obj is CheckoutLineItemEdge => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCheckoutLineItemEdge"') + return CheckoutLineItemEdge_possibleTypes.includes(obj.__typename) + } + + + + const CheckoutLineItemsAddPayload_possibleTypes: string[] = ['CheckoutLineItemsAddPayload'] + export const isCheckoutLineItemsAddPayload = (obj?: { __typename?: any } | null): obj is CheckoutLineItemsAddPayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCheckoutLineItemsAddPayload"') + return CheckoutLineItemsAddPayload_possibleTypes.includes(obj.__typename) + } + + + + const CheckoutLineItemsRemovePayload_possibleTypes: string[] = ['CheckoutLineItemsRemovePayload'] + export const isCheckoutLineItemsRemovePayload = (obj?: { __typename?: any } | null): obj is CheckoutLineItemsRemovePayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCheckoutLineItemsRemovePayload"') + return CheckoutLineItemsRemovePayload_possibleTypes.includes(obj.__typename) + } + + + + const CheckoutLineItemsReplacePayload_possibleTypes: string[] = ['CheckoutLineItemsReplacePayload'] + export const isCheckoutLineItemsReplacePayload = (obj?: { __typename?: any } | null): obj is CheckoutLineItemsReplacePayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCheckoutLineItemsReplacePayload"') + return CheckoutLineItemsReplacePayload_possibleTypes.includes(obj.__typename) + } + + + + const CheckoutLineItemsUpdatePayload_possibleTypes: string[] = ['CheckoutLineItemsUpdatePayload'] + export const isCheckoutLineItemsUpdatePayload = (obj?: { __typename?: any } | null): obj is CheckoutLineItemsUpdatePayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCheckoutLineItemsUpdatePayload"') + return CheckoutLineItemsUpdatePayload_possibleTypes.includes(obj.__typename) + } + + + + const CheckoutShippingAddressUpdateV2Payload_possibleTypes: string[] = ['CheckoutShippingAddressUpdateV2Payload'] + export const isCheckoutShippingAddressUpdateV2Payload = (obj?: { __typename?: any } | null): obj is CheckoutShippingAddressUpdateV2Payload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCheckoutShippingAddressUpdateV2Payload"') + return CheckoutShippingAddressUpdateV2Payload_possibleTypes.includes(obj.__typename) + } + + + + const CheckoutShippingLineUpdatePayload_possibleTypes: string[] = ['CheckoutShippingLineUpdatePayload'] + export const isCheckoutShippingLineUpdatePayload = (obj?: { __typename?: any } | null): obj is CheckoutShippingLineUpdatePayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCheckoutShippingLineUpdatePayload"') + return CheckoutShippingLineUpdatePayload_possibleTypes.includes(obj.__typename) + } + + + + const CheckoutUserError_possibleTypes: string[] = ['CheckoutUserError'] + export const isCheckoutUserError = (obj?: { __typename?: any } | null): obj is CheckoutUserError => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCheckoutUserError"') + return CheckoutUserError_possibleTypes.includes(obj.__typename) + } + + + + const Collection_possibleTypes: string[] = ['Collection'] + export const isCollection = (obj?: { __typename?: any } | null): obj is Collection => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCollection"') + return Collection_possibleTypes.includes(obj.__typename) + } + + + + const CollectionConnection_possibleTypes: string[] = ['CollectionConnection'] + export const isCollectionConnection = (obj?: { __typename?: any } | null): obj is CollectionConnection => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCollectionConnection"') + return CollectionConnection_possibleTypes.includes(obj.__typename) + } + + + + const CollectionEdge_possibleTypes: string[] = ['CollectionEdge'] + export const isCollectionEdge = (obj?: { __typename?: any } | null): obj is CollectionEdge => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCollectionEdge"') + return CollectionEdge_possibleTypes.includes(obj.__typename) + } + + + + const Comment_possibleTypes: string[] = ['Comment'] + export const isComment = (obj?: { __typename?: any } | null): obj is Comment => { + if (!obj?.__typename) throw new Error('__typename is missing in "isComment"') + return Comment_possibleTypes.includes(obj.__typename) + } + + + + const CommentAuthor_possibleTypes: string[] = ['CommentAuthor'] + export const isCommentAuthor = (obj?: { __typename?: any } | null): obj is CommentAuthor => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCommentAuthor"') + return CommentAuthor_possibleTypes.includes(obj.__typename) + } + + + + const CommentConnection_possibleTypes: string[] = ['CommentConnection'] + export const isCommentConnection = (obj?: { __typename?: any } | null): obj is CommentConnection => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCommentConnection"') + return CommentConnection_possibleTypes.includes(obj.__typename) + } + + + + const CommentEdge_possibleTypes: string[] = ['CommentEdge'] + export const isCommentEdge = (obj?: { __typename?: any } | null): obj is CommentEdge => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCommentEdge"') + return CommentEdge_possibleTypes.includes(obj.__typename) + } + + + + const Country_possibleTypes: string[] = ['Country'] + export const isCountry = (obj?: { __typename?: any } | null): obj is Country => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCountry"') + return Country_possibleTypes.includes(obj.__typename) + } + + + + const CreditCard_possibleTypes: string[] = ['CreditCard'] + export const isCreditCard = (obj?: { __typename?: any } | null): obj is CreditCard => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCreditCard"') + return CreditCard_possibleTypes.includes(obj.__typename) + } + + + + const Currency_possibleTypes: string[] = ['Currency'] + export const isCurrency = (obj?: { __typename?: any } | null): obj is Currency => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCurrency"') + return Currency_possibleTypes.includes(obj.__typename) + } + + + + const Customer_possibleTypes: string[] = ['Customer'] + export const isCustomer = (obj?: { __typename?: any } | null): obj is Customer => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCustomer"') + return Customer_possibleTypes.includes(obj.__typename) + } + + + + const CustomerAccessToken_possibleTypes: string[] = ['CustomerAccessToken'] + export const isCustomerAccessToken = (obj?: { __typename?: any } | null): obj is CustomerAccessToken => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCustomerAccessToken"') + return CustomerAccessToken_possibleTypes.includes(obj.__typename) + } + + + + const CustomerAccessTokenCreatePayload_possibleTypes: string[] = ['CustomerAccessTokenCreatePayload'] + export const isCustomerAccessTokenCreatePayload = (obj?: { __typename?: any } | null): obj is CustomerAccessTokenCreatePayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCustomerAccessTokenCreatePayload"') + return CustomerAccessTokenCreatePayload_possibleTypes.includes(obj.__typename) + } + + + + const CustomerAccessTokenCreateWithMultipassPayload_possibleTypes: string[] = ['CustomerAccessTokenCreateWithMultipassPayload'] + export const isCustomerAccessTokenCreateWithMultipassPayload = (obj?: { __typename?: any } | null): obj is CustomerAccessTokenCreateWithMultipassPayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCustomerAccessTokenCreateWithMultipassPayload"') + return CustomerAccessTokenCreateWithMultipassPayload_possibleTypes.includes(obj.__typename) + } + + + + const CustomerAccessTokenDeletePayload_possibleTypes: string[] = ['CustomerAccessTokenDeletePayload'] + export const isCustomerAccessTokenDeletePayload = (obj?: { __typename?: any } | null): obj is CustomerAccessTokenDeletePayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCustomerAccessTokenDeletePayload"') + return CustomerAccessTokenDeletePayload_possibleTypes.includes(obj.__typename) + } + + + + const CustomerAccessTokenRenewPayload_possibleTypes: string[] = ['CustomerAccessTokenRenewPayload'] + export const isCustomerAccessTokenRenewPayload = (obj?: { __typename?: any } | null): obj is CustomerAccessTokenRenewPayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCustomerAccessTokenRenewPayload"') + return CustomerAccessTokenRenewPayload_possibleTypes.includes(obj.__typename) + } + + + + const CustomerActivateByUrlPayload_possibleTypes: string[] = ['CustomerActivateByUrlPayload'] + export const isCustomerActivateByUrlPayload = (obj?: { __typename?: any } | null): obj is CustomerActivateByUrlPayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCustomerActivateByUrlPayload"') + return CustomerActivateByUrlPayload_possibleTypes.includes(obj.__typename) + } + + + + const CustomerActivatePayload_possibleTypes: string[] = ['CustomerActivatePayload'] + export const isCustomerActivatePayload = (obj?: { __typename?: any } | null): obj is CustomerActivatePayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCustomerActivatePayload"') + return CustomerActivatePayload_possibleTypes.includes(obj.__typename) + } + + + + const CustomerAddressCreatePayload_possibleTypes: string[] = ['CustomerAddressCreatePayload'] + export const isCustomerAddressCreatePayload = (obj?: { __typename?: any } | null): obj is CustomerAddressCreatePayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCustomerAddressCreatePayload"') + return CustomerAddressCreatePayload_possibleTypes.includes(obj.__typename) + } + + + + const CustomerAddressDeletePayload_possibleTypes: string[] = ['CustomerAddressDeletePayload'] + export const isCustomerAddressDeletePayload = (obj?: { __typename?: any } | null): obj is CustomerAddressDeletePayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCustomerAddressDeletePayload"') + return CustomerAddressDeletePayload_possibleTypes.includes(obj.__typename) + } + + + + const CustomerAddressUpdatePayload_possibleTypes: string[] = ['CustomerAddressUpdatePayload'] + export const isCustomerAddressUpdatePayload = (obj?: { __typename?: any } | null): obj is CustomerAddressUpdatePayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCustomerAddressUpdatePayload"') + return CustomerAddressUpdatePayload_possibleTypes.includes(obj.__typename) + } + + + + const CustomerCreatePayload_possibleTypes: string[] = ['CustomerCreatePayload'] + export const isCustomerCreatePayload = (obj?: { __typename?: any } | null): obj is CustomerCreatePayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCustomerCreatePayload"') + return CustomerCreatePayload_possibleTypes.includes(obj.__typename) + } + + + + const CustomerDefaultAddressUpdatePayload_possibleTypes: string[] = ['CustomerDefaultAddressUpdatePayload'] + export const isCustomerDefaultAddressUpdatePayload = (obj?: { __typename?: any } | null): obj is CustomerDefaultAddressUpdatePayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCustomerDefaultAddressUpdatePayload"') + return CustomerDefaultAddressUpdatePayload_possibleTypes.includes(obj.__typename) + } + + + + const CustomerRecoverPayload_possibleTypes: string[] = ['CustomerRecoverPayload'] + export const isCustomerRecoverPayload = (obj?: { __typename?: any } | null): obj is CustomerRecoverPayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCustomerRecoverPayload"') + return CustomerRecoverPayload_possibleTypes.includes(obj.__typename) + } + + + + const CustomerResetByUrlPayload_possibleTypes: string[] = ['CustomerResetByUrlPayload'] + export const isCustomerResetByUrlPayload = (obj?: { __typename?: any } | null): obj is CustomerResetByUrlPayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCustomerResetByUrlPayload"') + return CustomerResetByUrlPayload_possibleTypes.includes(obj.__typename) + } + + + + const CustomerResetPayload_possibleTypes: string[] = ['CustomerResetPayload'] + export const isCustomerResetPayload = (obj?: { __typename?: any } | null): obj is CustomerResetPayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCustomerResetPayload"') + return CustomerResetPayload_possibleTypes.includes(obj.__typename) + } + + + + const CustomerUpdatePayload_possibleTypes: string[] = ['CustomerUpdatePayload'] + export const isCustomerUpdatePayload = (obj?: { __typename?: any } | null): obj is CustomerUpdatePayload => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCustomerUpdatePayload"') + return CustomerUpdatePayload_possibleTypes.includes(obj.__typename) + } + + + + const CustomerUserError_possibleTypes: string[] = ['CustomerUserError'] + export const isCustomerUserError = (obj?: { __typename?: any } | null): obj is CustomerUserError => { + if (!obj?.__typename) throw new Error('__typename is missing in "isCustomerUserError"') + return CustomerUserError_possibleTypes.includes(obj.__typename) + } + + + + const DeliveryAddress_possibleTypes: string[] = ['MailingAddress'] + export const isDeliveryAddress = (obj?: { __typename?: any } | null): obj is DeliveryAddress => { + if (!obj?.__typename) throw new Error('__typename is missing in "isDeliveryAddress"') + return DeliveryAddress_possibleTypes.includes(obj.__typename) + } + + + + const DiscountAllocation_possibleTypes: string[] = ['DiscountAllocation'] + export const isDiscountAllocation = (obj?: { __typename?: any } | null): obj is DiscountAllocation => { + if (!obj?.__typename) throw new Error('__typename is missing in "isDiscountAllocation"') + return DiscountAllocation_possibleTypes.includes(obj.__typename) + } + + + + const DiscountApplication_possibleTypes: string[] = ['AutomaticDiscountApplication','DiscountCodeApplication','ManualDiscountApplication','ScriptDiscountApplication'] + export const isDiscountApplication = (obj?: { __typename?: any } | null): obj is DiscountApplication => { + if (!obj?.__typename) throw new Error('__typename is missing in "isDiscountApplication"') + return DiscountApplication_possibleTypes.includes(obj.__typename) + } + + + + const DiscountApplicationConnection_possibleTypes: string[] = ['DiscountApplicationConnection'] + export const isDiscountApplicationConnection = (obj?: { __typename?: any } | null): obj is DiscountApplicationConnection => { + if (!obj?.__typename) throw new Error('__typename is missing in "isDiscountApplicationConnection"') + return DiscountApplicationConnection_possibleTypes.includes(obj.__typename) + } + + + + const DiscountApplicationEdge_possibleTypes: string[] = ['DiscountApplicationEdge'] + export const isDiscountApplicationEdge = (obj?: { __typename?: any } | null): obj is DiscountApplicationEdge => { + if (!obj?.__typename) throw new Error('__typename is missing in "isDiscountApplicationEdge"') + return DiscountApplicationEdge_possibleTypes.includes(obj.__typename) + } + + + + const DiscountCodeApplication_possibleTypes: string[] = ['DiscountCodeApplication'] + export const isDiscountCodeApplication = (obj?: { __typename?: any } | null): obj is DiscountCodeApplication => { + if (!obj?.__typename) throw new Error('__typename is missing in "isDiscountCodeApplication"') + return DiscountCodeApplication_possibleTypes.includes(obj.__typename) + } + + + + const DisplayableError_possibleTypes: string[] = ['CartUserError','CheckoutUserError','CustomerUserError','UserError'] + export const isDisplayableError = (obj?: { __typename?: any } | null): obj is DisplayableError => { + if (!obj?.__typename) throw new Error('__typename is missing in "isDisplayableError"') + return DisplayableError_possibleTypes.includes(obj.__typename) + } + + + + const Domain_possibleTypes: string[] = ['Domain'] + export const isDomain = (obj?: { __typename?: any } | null): obj is Domain => { + if (!obj?.__typename) throw new Error('__typename is missing in "isDomain"') + return Domain_possibleTypes.includes(obj.__typename) + } + + + + const ExternalVideo_possibleTypes: string[] = ['ExternalVideo'] + export const isExternalVideo = (obj?: { __typename?: any } | null): obj is ExternalVideo => { + if (!obj?.__typename) throw new Error('__typename is missing in "isExternalVideo"') + return ExternalVideo_possibleTypes.includes(obj.__typename) + } + + + + const Filter_possibleTypes: string[] = ['Filter'] + export const isFilter = (obj?: { __typename?: any } | null): obj is Filter => { + if (!obj?.__typename) throw new Error('__typename is missing in "isFilter"') + return Filter_possibleTypes.includes(obj.__typename) + } + + + + const FilterValue_possibleTypes: string[] = ['FilterValue'] + export const isFilterValue = (obj?: { __typename?: any } | null): obj is FilterValue => { + if (!obj?.__typename) throw new Error('__typename is missing in "isFilterValue"') + return FilterValue_possibleTypes.includes(obj.__typename) + } + + + + const Fulfillment_possibleTypes: string[] = ['Fulfillment'] + export const isFulfillment = (obj?: { __typename?: any } | null): obj is Fulfillment => { + if (!obj?.__typename) throw new Error('__typename is missing in "isFulfillment"') + return Fulfillment_possibleTypes.includes(obj.__typename) + } + + + + const FulfillmentLineItem_possibleTypes: string[] = ['FulfillmentLineItem'] + export const isFulfillmentLineItem = (obj?: { __typename?: any } | null): obj is FulfillmentLineItem => { + if (!obj?.__typename) throw new Error('__typename is missing in "isFulfillmentLineItem"') + return FulfillmentLineItem_possibleTypes.includes(obj.__typename) + } + + + + const FulfillmentLineItemConnection_possibleTypes: string[] = ['FulfillmentLineItemConnection'] + export const isFulfillmentLineItemConnection = (obj?: { __typename?: any } | null): obj is FulfillmentLineItemConnection => { + if (!obj?.__typename) throw new Error('__typename is missing in "isFulfillmentLineItemConnection"') + return FulfillmentLineItemConnection_possibleTypes.includes(obj.__typename) + } + + + + const FulfillmentLineItemEdge_possibleTypes: string[] = ['FulfillmentLineItemEdge'] + export const isFulfillmentLineItemEdge = (obj?: { __typename?: any } | null): obj is FulfillmentLineItemEdge => { + if (!obj?.__typename) throw new Error('__typename is missing in "isFulfillmentLineItemEdge"') + return FulfillmentLineItemEdge_possibleTypes.includes(obj.__typename) + } + + + + const FulfillmentTrackingInfo_possibleTypes: string[] = ['FulfillmentTrackingInfo'] + export const isFulfillmentTrackingInfo = (obj?: { __typename?: any } | null): obj is FulfillmentTrackingInfo => { + if (!obj?.__typename) throw new Error('__typename is missing in "isFulfillmentTrackingInfo"') + return FulfillmentTrackingInfo_possibleTypes.includes(obj.__typename) + } + + + + const GenericFile_possibleTypes: string[] = ['GenericFile'] + export const isGenericFile = (obj?: { __typename?: any } | null): obj is GenericFile => { + if (!obj?.__typename) throw new Error('__typename is missing in "isGenericFile"') + return GenericFile_possibleTypes.includes(obj.__typename) + } + + + + const HasMetafields_possibleTypes: string[] = ['Article','Blog','Collection','Customer','Order','Page','Product','ProductVariant','Shop'] + export const isHasMetafields = (obj?: { __typename?: any } | null): obj is HasMetafields => { + if (!obj?.__typename) throw new Error('__typename is missing in "isHasMetafields"') + return HasMetafields_possibleTypes.includes(obj.__typename) + } + + + + const Image_possibleTypes: string[] = ['Image'] + export const isImage = (obj?: { __typename?: any } | null): obj is Image => { + if (!obj?.__typename) throw new Error('__typename is missing in "isImage"') + return Image_possibleTypes.includes(obj.__typename) + } + + + + const ImageConnection_possibleTypes: string[] = ['ImageConnection'] + export const isImageConnection = (obj?: { __typename?: any } | null): obj is ImageConnection => { + if (!obj?.__typename) throw new Error('__typename is missing in "isImageConnection"') + return ImageConnection_possibleTypes.includes(obj.__typename) + } + + + + const ImageEdge_possibleTypes: string[] = ['ImageEdge'] + export const isImageEdge = (obj?: { __typename?: any } | null): obj is ImageEdge => { + if (!obj?.__typename) throw new Error('__typename is missing in "isImageEdge"') + return ImageEdge_possibleTypes.includes(obj.__typename) + } + + + + const Language_possibleTypes: string[] = ['Language'] + export const isLanguage = (obj?: { __typename?: any } | null): obj is Language => { + if (!obj?.__typename) throw new Error('__typename is missing in "isLanguage"') + return Language_possibleTypes.includes(obj.__typename) + } + + + + const Localization_possibleTypes: string[] = ['Localization'] + export const isLocalization = (obj?: { __typename?: any } | null): obj is Localization => { + if (!obj?.__typename) throw new Error('__typename is missing in "isLocalization"') + return Localization_possibleTypes.includes(obj.__typename) + } + + + + const Location_possibleTypes: string[] = ['Location'] + export const isLocation = (obj?: { __typename?: any } | null): obj is Location => { + if (!obj?.__typename) throw new Error('__typename is missing in "isLocation"') + return Location_possibleTypes.includes(obj.__typename) + } + + + + const LocationAddress_possibleTypes: string[] = ['LocationAddress'] + export const isLocationAddress = (obj?: { __typename?: any } | null): obj is LocationAddress => { + if (!obj?.__typename) throw new Error('__typename is missing in "isLocationAddress"') + return LocationAddress_possibleTypes.includes(obj.__typename) + } + + + + const LocationConnection_possibleTypes: string[] = ['LocationConnection'] + export const isLocationConnection = (obj?: { __typename?: any } | null): obj is LocationConnection => { + if (!obj?.__typename) throw new Error('__typename is missing in "isLocationConnection"') + return LocationConnection_possibleTypes.includes(obj.__typename) + } + + + + const LocationEdge_possibleTypes: string[] = ['LocationEdge'] + export const isLocationEdge = (obj?: { __typename?: any } | null): obj is LocationEdge => { + if (!obj?.__typename) throw new Error('__typename is missing in "isLocationEdge"') + return LocationEdge_possibleTypes.includes(obj.__typename) + } + + + + const MailingAddress_possibleTypes: string[] = ['MailingAddress'] + export const isMailingAddress = (obj?: { __typename?: any } | null): obj is MailingAddress => { + if (!obj?.__typename) throw new Error('__typename is missing in "isMailingAddress"') + return MailingAddress_possibleTypes.includes(obj.__typename) + } + + + + const MailingAddressConnection_possibleTypes: string[] = ['MailingAddressConnection'] + export const isMailingAddressConnection = (obj?: { __typename?: any } | null): obj is MailingAddressConnection => { + if (!obj?.__typename) throw new Error('__typename is missing in "isMailingAddressConnection"') + return MailingAddressConnection_possibleTypes.includes(obj.__typename) + } + + + + const MailingAddressEdge_possibleTypes: string[] = ['MailingAddressEdge'] + export const isMailingAddressEdge = (obj?: { __typename?: any } | null): obj is MailingAddressEdge => { + if (!obj?.__typename) throw new Error('__typename is missing in "isMailingAddressEdge"') + return MailingAddressEdge_possibleTypes.includes(obj.__typename) + } + + + + const ManualDiscountApplication_possibleTypes: string[] = ['ManualDiscountApplication'] + export const isManualDiscountApplication = (obj?: { __typename?: any } | null): obj is ManualDiscountApplication => { + if (!obj?.__typename) throw new Error('__typename is missing in "isManualDiscountApplication"') + return ManualDiscountApplication_possibleTypes.includes(obj.__typename) + } + + + + const Media_possibleTypes: string[] = ['ExternalVideo','MediaImage','Model3d','Video'] + export const isMedia = (obj?: { __typename?: any } | null): obj is Media => { + if (!obj?.__typename) throw new Error('__typename is missing in "isMedia"') + return Media_possibleTypes.includes(obj.__typename) + } + + + + const MediaConnection_possibleTypes: string[] = ['MediaConnection'] + export const isMediaConnection = (obj?: { __typename?: any } | null): obj is MediaConnection => { + if (!obj?.__typename) throw new Error('__typename is missing in "isMediaConnection"') + return MediaConnection_possibleTypes.includes(obj.__typename) + } + + + + const MediaEdge_possibleTypes: string[] = ['MediaEdge'] + export const isMediaEdge = (obj?: { __typename?: any } | null): obj is MediaEdge => { + if (!obj?.__typename) throw new Error('__typename is missing in "isMediaEdge"') + return MediaEdge_possibleTypes.includes(obj.__typename) + } + + + + const MediaImage_possibleTypes: string[] = ['MediaImage'] + export const isMediaImage = (obj?: { __typename?: any } | null): obj is MediaImage => { + if (!obj?.__typename) throw new Error('__typename is missing in "isMediaImage"') + return MediaImage_possibleTypes.includes(obj.__typename) + } + + + + const Menu_possibleTypes: string[] = ['Menu'] + export const isMenu = (obj?: { __typename?: any } | null): obj is Menu => { + if (!obj?.__typename) throw new Error('__typename is missing in "isMenu"') + return Menu_possibleTypes.includes(obj.__typename) + } + + + + const MenuItem_possibleTypes: string[] = ['MenuItem'] + export const isMenuItem = (obj?: { __typename?: any } | null): obj is MenuItem => { + if (!obj?.__typename) throw new Error('__typename is missing in "isMenuItem"') + return MenuItem_possibleTypes.includes(obj.__typename) + } + + + + const Merchandise_possibleTypes: string[] = ['ProductVariant'] + export const isMerchandise = (obj?: { __typename?: any } | null): obj is Merchandise => { + if (!obj?.__typename) throw new Error('__typename is missing in "isMerchandise"') + return Merchandise_possibleTypes.includes(obj.__typename) + } + + + + const Metafield_possibleTypes: string[] = ['Metafield'] + export const isMetafield = (obj?: { __typename?: any } | null): obj is Metafield => { + if (!obj?.__typename) throw new Error('__typename is missing in "isMetafield"') + return Metafield_possibleTypes.includes(obj.__typename) + } + + + + const MetafieldParentResource_possibleTypes: string[] = ['Article','Blog','Collection','Customer','Order','Page','Product','ProductVariant','Shop'] + export const isMetafieldParentResource = (obj?: { __typename?: any } | null): obj is MetafieldParentResource => { + if (!obj?.__typename) throw new Error('__typename is missing in "isMetafieldParentResource"') + return MetafieldParentResource_possibleTypes.includes(obj.__typename) + } + + + + const MetafieldReference_possibleTypes: string[] = ['Collection','GenericFile','MediaImage','Metaobject','Page','Product','ProductVariant','Video'] + export const isMetafieldReference = (obj?: { __typename?: any } | null): obj is MetafieldReference => { + if (!obj?.__typename) throw new Error('__typename is missing in "isMetafieldReference"') + return MetafieldReference_possibleTypes.includes(obj.__typename) + } + + + + const MetafieldReferenceConnection_possibleTypes: string[] = ['MetafieldReferenceConnection'] + export const isMetafieldReferenceConnection = (obj?: { __typename?: any } | null): obj is MetafieldReferenceConnection => { + if (!obj?.__typename) throw new Error('__typename is missing in "isMetafieldReferenceConnection"') + return MetafieldReferenceConnection_possibleTypes.includes(obj.__typename) + } + + + + const MetafieldReferenceEdge_possibleTypes: string[] = ['MetafieldReferenceEdge'] + export const isMetafieldReferenceEdge = (obj?: { __typename?: any } | null): obj is MetafieldReferenceEdge => { + if (!obj?.__typename) throw new Error('__typename is missing in "isMetafieldReferenceEdge"') + return MetafieldReferenceEdge_possibleTypes.includes(obj.__typename) + } + + + + const Metaobject_possibleTypes: string[] = ['Metaobject'] + export const isMetaobject = (obj?: { __typename?: any } | null): obj is Metaobject => { + if (!obj?.__typename) throw new Error('__typename is missing in "isMetaobject"') + return Metaobject_possibleTypes.includes(obj.__typename) + } + + + + const MetaobjectConnection_possibleTypes: string[] = ['MetaobjectConnection'] + export const isMetaobjectConnection = (obj?: { __typename?: any } | null): obj is MetaobjectConnection => { + if (!obj?.__typename) throw new Error('__typename is missing in "isMetaobjectConnection"') + return MetaobjectConnection_possibleTypes.includes(obj.__typename) + } + + + + const MetaobjectEdge_possibleTypes: string[] = ['MetaobjectEdge'] + export const isMetaobjectEdge = (obj?: { __typename?: any } | null): obj is MetaobjectEdge => { + if (!obj?.__typename) throw new Error('__typename is missing in "isMetaobjectEdge"') + return MetaobjectEdge_possibleTypes.includes(obj.__typename) + } + + + + const MetaobjectField_possibleTypes: string[] = ['MetaobjectField'] + export const isMetaobjectField = (obj?: { __typename?: any } | null): obj is MetaobjectField => { + if (!obj?.__typename) throw new Error('__typename is missing in "isMetaobjectField"') + return MetaobjectField_possibleTypes.includes(obj.__typename) + } + + + + const Model3d_possibleTypes: string[] = ['Model3d'] + export const isModel3d = (obj?: { __typename?: any } | null): obj is Model3d => { + if (!obj?.__typename) throw new Error('__typename is missing in "isModel3d"') + return Model3d_possibleTypes.includes(obj.__typename) + } + + + + const Model3dSource_possibleTypes: string[] = ['Model3dSource'] + export const isModel3dSource = (obj?: { __typename?: any } | null): obj is Model3dSource => { + if (!obj?.__typename) throw new Error('__typename is missing in "isModel3dSource"') + return Model3dSource_possibleTypes.includes(obj.__typename) + } + + + + const MoneyV2_possibleTypes: string[] = ['MoneyV2'] + export const isMoneyV2 = (obj?: { __typename?: any } | null): obj is MoneyV2 => { + if (!obj?.__typename) throw new Error('__typename is missing in "isMoneyV2"') + return MoneyV2_possibleTypes.includes(obj.__typename) + } + + + + const Mutation_possibleTypes: string[] = ['Mutation'] + export const isMutation = (obj?: { __typename?: any } | null): obj is Mutation => { + if (!obj?.__typename) throw new Error('__typename is missing in "isMutation"') + return Mutation_possibleTypes.includes(obj.__typename) + } + + + + const Node_possibleTypes: string[] = ['AppliedGiftCard','Article','Blog','Cart','CartLine','Checkout','CheckoutLineItem','Collection','Comment','ExternalVideo','GenericFile','Location','MailingAddress','MediaImage','Menu','MenuItem','Metafield','Metaobject','Model3d','Order','Page','Payment','Product','ProductOption','ProductVariant','Shop','ShopPolicy','UrlRedirect','Video'] + export const isNode = (obj?: { __typename?: any } | null): obj is Node => { + if (!obj?.__typename) throw new Error('__typename is missing in "isNode"') + return Node_possibleTypes.includes(obj.__typename) + } + + + + const OnlineStorePublishable_possibleTypes: string[] = ['Article','Blog','Collection','Page','Product'] + export const isOnlineStorePublishable = (obj?: { __typename?: any } | null): obj is OnlineStorePublishable => { + if (!obj?.__typename) throw new Error('__typename is missing in "isOnlineStorePublishable"') + return OnlineStorePublishable_possibleTypes.includes(obj.__typename) + } + + + + const Order_possibleTypes: string[] = ['Order'] + export const isOrder = (obj?: { __typename?: any } | null): obj is Order => { + if (!obj?.__typename) throw new Error('__typename is missing in "isOrder"') + return Order_possibleTypes.includes(obj.__typename) + } + + + + const OrderConnection_possibleTypes: string[] = ['OrderConnection'] + export const isOrderConnection = (obj?: { __typename?: any } | null): obj is OrderConnection => { + if (!obj?.__typename) throw new Error('__typename is missing in "isOrderConnection"') + return OrderConnection_possibleTypes.includes(obj.__typename) + } + + + + const OrderEdge_possibleTypes: string[] = ['OrderEdge'] + export const isOrderEdge = (obj?: { __typename?: any } | null): obj is OrderEdge => { + if (!obj?.__typename) throw new Error('__typename is missing in "isOrderEdge"') + return OrderEdge_possibleTypes.includes(obj.__typename) + } + + + + const OrderLineItem_possibleTypes: string[] = ['OrderLineItem'] + export const isOrderLineItem = (obj?: { __typename?: any } | null): obj is OrderLineItem => { + if (!obj?.__typename) throw new Error('__typename is missing in "isOrderLineItem"') + return OrderLineItem_possibleTypes.includes(obj.__typename) + } + + + + const OrderLineItemConnection_possibleTypes: string[] = ['OrderLineItemConnection'] + export const isOrderLineItemConnection = (obj?: { __typename?: any } | null): obj is OrderLineItemConnection => { + if (!obj?.__typename) throw new Error('__typename is missing in "isOrderLineItemConnection"') + return OrderLineItemConnection_possibleTypes.includes(obj.__typename) + } + + + + const OrderLineItemEdge_possibleTypes: string[] = ['OrderLineItemEdge'] + export const isOrderLineItemEdge = (obj?: { __typename?: any } | null): obj is OrderLineItemEdge => { + if (!obj?.__typename) throw new Error('__typename is missing in "isOrderLineItemEdge"') + return OrderLineItemEdge_possibleTypes.includes(obj.__typename) + } + + + + const Page_possibleTypes: string[] = ['Page'] + export const isPage = (obj?: { __typename?: any } | null): obj is Page => { + if (!obj?.__typename) throw new Error('__typename is missing in "isPage"') + return Page_possibleTypes.includes(obj.__typename) + } + + + + const PageConnection_possibleTypes: string[] = ['PageConnection'] + export const isPageConnection = (obj?: { __typename?: any } | null): obj is PageConnection => { + if (!obj?.__typename) throw new Error('__typename is missing in "isPageConnection"') + return PageConnection_possibleTypes.includes(obj.__typename) + } + + + + const PageEdge_possibleTypes: string[] = ['PageEdge'] + export const isPageEdge = (obj?: { __typename?: any } | null): obj is PageEdge => { + if (!obj?.__typename) throw new Error('__typename is missing in "isPageEdge"') + return PageEdge_possibleTypes.includes(obj.__typename) + } + + + + const PageInfo_possibleTypes: string[] = ['PageInfo'] + export const isPageInfo = (obj?: { __typename?: any } | null): obj is PageInfo => { + if (!obj?.__typename) throw new Error('__typename is missing in "isPageInfo"') + return PageInfo_possibleTypes.includes(obj.__typename) + } + + + + const Payment_possibleTypes: string[] = ['Payment'] + export const isPayment = (obj?: { __typename?: any } | null): obj is Payment => { + if (!obj?.__typename) throw new Error('__typename is missing in "isPayment"') + return Payment_possibleTypes.includes(obj.__typename) + } + + + + const PaymentSettings_possibleTypes: string[] = ['PaymentSettings'] + export const isPaymentSettings = (obj?: { __typename?: any } | null): obj is PaymentSettings => { + if (!obj?.__typename) throw new Error('__typename is missing in "isPaymentSettings"') + return PaymentSettings_possibleTypes.includes(obj.__typename) + } + + + + const PricingPercentageValue_possibleTypes: string[] = ['PricingPercentageValue'] + export const isPricingPercentageValue = (obj?: { __typename?: any } | null): obj is PricingPercentageValue => { + if (!obj?.__typename) throw new Error('__typename is missing in "isPricingPercentageValue"') + return PricingPercentageValue_possibleTypes.includes(obj.__typename) + } + + + + const PricingValue_possibleTypes: string[] = ['MoneyV2','PricingPercentageValue'] + export const isPricingValue = (obj?: { __typename?: any } | null): obj is PricingValue => { + if (!obj?.__typename) throw new Error('__typename is missing in "isPricingValue"') + return PricingValue_possibleTypes.includes(obj.__typename) + } + + + + const Product_possibleTypes: string[] = ['Product'] + export const isProduct = (obj?: { __typename?: any } | null): obj is Product => { + if (!obj?.__typename) throw new Error('__typename is missing in "isProduct"') + return Product_possibleTypes.includes(obj.__typename) + } + + + + const ProductConnection_possibleTypes: string[] = ['ProductConnection'] + export const isProductConnection = (obj?: { __typename?: any } | null): obj is ProductConnection => { + if (!obj?.__typename) throw new Error('__typename is missing in "isProductConnection"') + return ProductConnection_possibleTypes.includes(obj.__typename) + } + + + + const ProductEdge_possibleTypes: string[] = ['ProductEdge'] + export const isProductEdge = (obj?: { __typename?: any } | null): obj is ProductEdge => { + if (!obj?.__typename) throw new Error('__typename is missing in "isProductEdge"') + return ProductEdge_possibleTypes.includes(obj.__typename) + } + + + + const ProductOption_possibleTypes: string[] = ['ProductOption'] + export const isProductOption = (obj?: { __typename?: any } | null): obj is ProductOption => { + if (!obj?.__typename) throw new Error('__typename is missing in "isProductOption"') + return ProductOption_possibleTypes.includes(obj.__typename) + } + + + + const ProductPriceRange_possibleTypes: string[] = ['ProductPriceRange'] + export const isProductPriceRange = (obj?: { __typename?: any } | null): obj is ProductPriceRange => { + if (!obj?.__typename) throw new Error('__typename is missing in "isProductPriceRange"') + return ProductPriceRange_possibleTypes.includes(obj.__typename) + } + + + + const ProductVariant_possibleTypes: string[] = ['ProductVariant'] + export const isProductVariant = (obj?: { __typename?: any } | null): obj is ProductVariant => { + if (!obj?.__typename) throw new Error('__typename is missing in "isProductVariant"') + return ProductVariant_possibleTypes.includes(obj.__typename) + } + + + + const ProductVariantConnection_possibleTypes: string[] = ['ProductVariantConnection'] + export const isProductVariantConnection = (obj?: { __typename?: any } | null): obj is ProductVariantConnection => { + if (!obj?.__typename) throw new Error('__typename is missing in "isProductVariantConnection"') + return ProductVariantConnection_possibleTypes.includes(obj.__typename) + } + + + + const ProductVariantEdge_possibleTypes: string[] = ['ProductVariantEdge'] + export const isProductVariantEdge = (obj?: { __typename?: any } | null): obj is ProductVariantEdge => { + if (!obj?.__typename) throw new Error('__typename is missing in "isProductVariantEdge"') + return ProductVariantEdge_possibleTypes.includes(obj.__typename) + } + + + + const QueryRoot_possibleTypes: string[] = ['QueryRoot'] + export const isQueryRoot = (obj?: { __typename?: any } | null): obj is QueryRoot => { + if (!obj?.__typename) throw new Error('__typename is missing in "isQueryRoot"') + return QueryRoot_possibleTypes.includes(obj.__typename) + } + + + + const SEO_possibleTypes: string[] = ['SEO'] + export const isSEO = (obj?: { __typename?: any } | null): obj is SEO => { + if (!obj?.__typename) throw new Error('__typename is missing in "isSEO"') + return SEO_possibleTypes.includes(obj.__typename) + } + + + + const ScriptDiscountApplication_possibleTypes: string[] = ['ScriptDiscountApplication'] + export const isScriptDiscountApplication = (obj?: { __typename?: any } | null): obj is ScriptDiscountApplication => { + if (!obj?.__typename) throw new Error('__typename is missing in "isScriptDiscountApplication"') + return ScriptDiscountApplication_possibleTypes.includes(obj.__typename) + } + + + + const SelectedOption_possibleTypes: string[] = ['SelectedOption'] + export const isSelectedOption = (obj?: { __typename?: any } | null): obj is SelectedOption => { + if (!obj?.__typename) throw new Error('__typename is missing in "isSelectedOption"') + return SelectedOption_possibleTypes.includes(obj.__typename) + } + + + + const SellingPlan_possibleTypes: string[] = ['SellingPlan'] + export const isSellingPlan = (obj?: { __typename?: any } | null): obj is SellingPlan => { + if (!obj?.__typename) throw new Error('__typename is missing in "isSellingPlan"') + return SellingPlan_possibleTypes.includes(obj.__typename) + } + + + + const SellingPlanAllocation_possibleTypes: string[] = ['SellingPlanAllocation'] + export const isSellingPlanAllocation = (obj?: { __typename?: any } | null): obj is SellingPlanAllocation => { + if (!obj?.__typename) throw new Error('__typename is missing in "isSellingPlanAllocation"') + return SellingPlanAllocation_possibleTypes.includes(obj.__typename) + } + + + + const SellingPlanAllocationConnection_possibleTypes: string[] = ['SellingPlanAllocationConnection'] + export const isSellingPlanAllocationConnection = (obj?: { __typename?: any } | null): obj is SellingPlanAllocationConnection => { + if (!obj?.__typename) throw new Error('__typename is missing in "isSellingPlanAllocationConnection"') + return SellingPlanAllocationConnection_possibleTypes.includes(obj.__typename) + } + + + + const SellingPlanAllocationEdge_possibleTypes: string[] = ['SellingPlanAllocationEdge'] + export const isSellingPlanAllocationEdge = (obj?: { __typename?: any } | null): obj is SellingPlanAllocationEdge => { + if (!obj?.__typename) throw new Error('__typename is missing in "isSellingPlanAllocationEdge"') + return SellingPlanAllocationEdge_possibleTypes.includes(obj.__typename) + } + + + + const SellingPlanAllocationPriceAdjustment_possibleTypes: string[] = ['SellingPlanAllocationPriceAdjustment'] + export const isSellingPlanAllocationPriceAdjustment = (obj?: { __typename?: any } | null): obj is SellingPlanAllocationPriceAdjustment => { + if (!obj?.__typename) throw new Error('__typename is missing in "isSellingPlanAllocationPriceAdjustment"') + return SellingPlanAllocationPriceAdjustment_possibleTypes.includes(obj.__typename) + } + + + + const SellingPlanCheckoutCharge_possibleTypes: string[] = ['SellingPlanCheckoutCharge'] + export const isSellingPlanCheckoutCharge = (obj?: { __typename?: any } | null): obj is SellingPlanCheckoutCharge => { + if (!obj?.__typename) throw new Error('__typename is missing in "isSellingPlanCheckoutCharge"') + return SellingPlanCheckoutCharge_possibleTypes.includes(obj.__typename) + } + + + + const SellingPlanCheckoutChargePercentageValue_possibleTypes: string[] = ['SellingPlanCheckoutChargePercentageValue'] + export const isSellingPlanCheckoutChargePercentageValue = (obj?: { __typename?: any } | null): obj is SellingPlanCheckoutChargePercentageValue => { + if (!obj?.__typename) throw new Error('__typename is missing in "isSellingPlanCheckoutChargePercentageValue"') + return SellingPlanCheckoutChargePercentageValue_possibleTypes.includes(obj.__typename) + } + + + + const SellingPlanCheckoutChargeValue_possibleTypes: string[] = ['MoneyV2','SellingPlanCheckoutChargePercentageValue'] + export const isSellingPlanCheckoutChargeValue = (obj?: { __typename?: any } | null): obj is SellingPlanCheckoutChargeValue => { + if (!obj?.__typename) throw new Error('__typename is missing in "isSellingPlanCheckoutChargeValue"') + return SellingPlanCheckoutChargeValue_possibleTypes.includes(obj.__typename) + } + + + + const SellingPlanConnection_possibleTypes: string[] = ['SellingPlanConnection'] + export const isSellingPlanConnection = (obj?: { __typename?: any } | null): obj is SellingPlanConnection => { + if (!obj?.__typename) throw new Error('__typename is missing in "isSellingPlanConnection"') + return SellingPlanConnection_possibleTypes.includes(obj.__typename) + } + + + + const SellingPlanEdge_possibleTypes: string[] = ['SellingPlanEdge'] + export const isSellingPlanEdge = (obj?: { __typename?: any } | null): obj is SellingPlanEdge => { + if (!obj?.__typename) throw new Error('__typename is missing in "isSellingPlanEdge"') + return SellingPlanEdge_possibleTypes.includes(obj.__typename) + } + + + + const SellingPlanFixedAmountPriceAdjustment_possibleTypes: string[] = ['SellingPlanFixedAmountPriceAdjustment'] + export const isSellingPlanFixedAmountPriceAdjustment = (obj?: { __typename?: any } | null): obj is SellingPlanFixedAmountPriceAdjustment => { + if (!obj?.__typename) throw new Error('__typename is missing in "isSellingPlanFixedAmountPriceAdjustment"') + return SellingPlanFixedAmountPriceAdjustment_possibleTypes.includes(obj.__typename) + } + + + + const SellingPlanFixedPriceAdjustment_possibleTypes: string[] = ['SellingPlanFixedPriceAdjustment'] + export const isSellingPlanFixedPriceAdjustment = (obj?: { __typename?: any } | null): obj is SellingPlanFixedPriceAdjustment => { + if (!obj?.__typename) throw new Error('__typename is missing in "isSellingPlanFixedPriceAdjustment"') + return SellingPlanFixedPriceAdjustment_possibleTypes.includes(obj.__typename) + } + + + + const SellingPlanGroup_possibleTypes: string[] = ['SellingPlanGroup'] + export const isSellingPlanGroup = (obj?: { __typename?: any } | null): obj is SellingPlanGroup => { + if (!obj?.__typename) throw new Error('__typename is missing in "isSellingPlanGroup"') + return SellingPlanGroup_possibleTypes.includes(obj.__typename) + } + + + + const SellingPlanGroupConnection_possibleTypes: string[] = ['SellingPlanGroupConnection'] + export const isSellingPlanGroupConnection = (obj?: { __typename?: any } | null): obj is SellingPlanGroupConnection => { + if (!obj?.__typename) throw new Error('__typename is missing in "isSellingPlanGroupConnection"') + return SellingPlanGroupConnection_possibleTypes.includes(obj.__typename) + } + + + + const SellingPlanGroupEdge_possibleTypes: string[] = ['SellingPlanGroupEdge'] + export const isSellingPlanGroupEdge = (obj?: { __typename?: any } | null): obj is SellingPlanGroupEdge => { + if (!obj?.__typename) throw new Error('__typename is missing in "isSellingPlanGroupEdge"') + return SellingPlanGroupEdge_possibleTypes.includes(obj.__typename) + } + + + + const SellingPlanGroupOption_possibleTypes: string[] = ['SellingPlanGroupOption'] + export const isSellingPlanGroupOption = (obj?: { __typename?: any } | null): obj is SellingPlanGroupOption => { + if (!obj?.__typename) throw new Error('__typename is missing in "isSellingPlanGroupOption"') + return SellingPlanGroupOption_possibleTypes.includes(obj.__typename) + } + + + + const SellingPlanOption_possibleTypes: string[] = ['SellingPlanOption'] + export const isSellingPlanOption = (obj?: { __typename?: any } | null): obj is SellingPlanOption => { + if (!obj?.__typename) throw new Error('__typename is missing in "isSellingPlanOption"') + return SellingPlanOption_possibleTypes.includes(obj.__typename) + } + + + + const SellingPlanPercentagePriceAdjustment_possibleTypes: string[] = ['SellingPlanPercentagePriceAdjustment'] + export const isSellingPlanPercentagePriceAdjustment = (obj?: { __typename?: any } | null): obj is SellingPlanPercentagePriceAdjustment => { + if (!obj?.__typename) throw new Error('__typename is missing in "isSellingPlanPercentagePriceAdjustment"') + return SellingPlanPercentagePriceAdjustment_possibleTypes.includes(obj.__typename) + } + + + + const SellingPlanPriceAdjustment_possibleTypes: string[] = ['SellingPlanPriceAdjustment'] + export const isSellingPlanPriceAdjustment = (obj?: { __typename?: any } | null): obj is SellingPlanPriceAdjustment => { + if (!obj?.__typename) throw new Error('__typename is missing in "isSellingPlanPriceAdjustment"') + return SellingPlanPriceAdjustment_possibleTypes.includes(obj.__typename) + } + + + + const SellingPlanPriceAdjustmentValue_possibleTypes: string[] = ['SellingPlanFixedAmountPriceAdjustment','SellingPlanFixedPriceAdjustment','SellingPlanPercentagePriceAdjustment'] + export const isSellingPlanPriceAdjustmentValue = (obj?: { __typename?: any } | null): obj is SellingPlanPriceAdjustmentValue => { + if (!obj?.__typename) throw new Error('__typename is missing in "isSellingPlanPriceAdjustmentValue"') + return SellingPlanPriceAdjustmentValue_possibleTypes.includes(obj.__typename) + } + + + + const ShippingRate_possibleTypes: string[] = ['ShippingRate'] + export const isShippingRate = (obj?: { __typename?: any } | null): obj is ShippingRate => { + if (!obj?.__typename) throw new Error('__typename is missing in "isShippingRate"') + return ShippingRate_possibleTypes.includes(obj.__typename) + } + + + + const Shop_possibleTypes: string[] = ['Shop'] + export const isShop = (obj?: { __typename?: any } | null): obj is Shop => { + if (!obj?.__typename) throw new Error('__typename is missing in "isShop"') + return Shop_possibleTypes.includes(obj.__typename) + } + + + + const ShopPolicy_possibleTypes: string[] = ['ShopPolicy'] + export const isShopPolicy = (obj?: { __typename?: any } | null): obj is ShopPolicy => { + if (!obj?.__typename) throw new Error('__typename is missing in "isShopPolicy"') + return ShopPolicy_possibleTypes.includes(obj.__typename) + } + + + + const ShopPolicyWithDefault_possibleTypes: string[] = ['ShopPolicyWithDefault'] + export const isShopPolicyWithDefault = (obj?: { __typename?: any } | null): obj is ShopPolicyWithDefault => { + if (!obj?.__typename) throw new Error('__typename is missing in "isShopPolicyWithDefault"') + return ShopPolicyWithDefault_possibleTypes.includes(obj.__typename) + } + + + + const StoreAvailability_possibleTypes: string[] = ['StoreAvailability'] + export const isStoreAvailability = (obj?: { __typename?: any } | null): obj is StoreAvailability => { + if (!obj?.__typename) throw new Error('__typename is missing in "isStoreAvailability"') + return StoreAvailability_possibleTypes.includes(obj.__typename) + } + + + + const StoreAvailabilityConnection_possibleTypes: string[] = ['StoreAvailabilityConnection'] + export const isStoreAvailabilityConnection = (obj?: { __typename?: any } | null): obj is StoreAvailabilityConnection => { + if (!obj?.__typename) throw new Error('__typename is missing in "isStoreAvailabilityConnection"') + return StoreAvailabilityConnection_possibleTypes.includes(obj.__typename) + } + + + + const StoreAvailabilityEdge_possibleTypes: string[] = ['StoreAvailabilityEdge'] + export const isStoreAvailabilityEdge = (obj?: { __typename?: any } | null): obj is StoreAvailabilityEdge => { + if (!obj?.__typename) throw new Error('__typename is missing in "isStoreAvailabilityEdge"') + return StoreAvailabilityEdge_possibleTypes.includes(obj.__typename) + } + + + + const StringConnection_possibleTypes: string[] = ['StringConnection'] + export const isStringConnection = (obj?: { __typename?: any } | null): obj is StringConnection => { + if (!obj?.__typename) throw new Error('__typename is missing in "isStringConnection"') + return StringConnection_possibleTypes.includes(obj.__typename) + } + + + + const StringEdge_possibleTypes: string[] = ['StringEdge'] + export const isStringEdge = (obj?: { __typename?: any } | null): obj is StringEdge => { + if (!obj?.__typename) throw new Error('__typename is missing in "isStringEdge"') + return StringEdge_possibleTypes.includes(obj.__typename) + } + + + + const Transaction_possibleTypes: string[] = ['Transaction'] + export const isTransaction = (obj?: { __typename?: any } | null): obj is Transaction => { + if (!obj?.__typename) throw new Error('__typename is missing in "isTransaction"') + return Transaction_possibleTypes.includes(obj.__typename) + } + + + + const UnitPriceMeasurement_possibleTypes: string[] = ['UnitPriceMeasurement'] + export const isUnitPriceMeasurement = (obj?: { __typename?: any } | null): obj is UnitPriceMeasurement => { + if (!obj?.__typename) throw new Error('__typename is missing in "isUnitPriceMeasurement"') + return UnitPriceMeasurement_possibleTypes.includes(obj.__typename) + } + + + + const UrlRedirect_possibleTypes: string[] = ['UrlRedirect'] + export const isUrlRedirect = (obj?: { __typename?: any } | null): obj is UrlRedirect => { + if (!obj?.__typename) throw new Error('__typename is missing in "isUrlRedirect"') + return UrlRedirect_possibleTypes.includes(obj.__typename) + } + + + + const UrlRedirectConnection_possibleTypes: string[] = ['UrlRedirectConnection'] + export const isUrlRedirectConnection = (obj?: { __typename?: any } | null): obj is UrlRedirectConnection => { + if (!obj?.__typename) throw new Error('__typename is missing in "isUrlRedirectConnection"') + return UrlRedirectConnection_possibleTypes.includes(obj.__typename) + } + + + + const UrlRedirectEdge_possibleTypes: string[] = ['UrlRedirectEdge'] + export const isUrlRedirectEdge = (obj?: { __typename?: any } | null): obj is UrlRedirectEdge => { + if (!obj?.__typename) throw new Error('__typename is missing in "isUrlRedirectEdge"') + return UrlRedirectEdge_possibleTypes.includes(obj.__typename) + } + + + + const UserError_possibleTypes: string[] = ['UserError'] + export const isUserError = (obj?: { __typename?: any } | null): obj is UserError => { + if (!obj?.__typename) throw new Error('__typename is missing in "isUserError"') + return UserError_possibleTypes.includes(obj.__typename) + } + + + + const Video_possibleTypes: string[] = ['Video'] + export const isVideo = (obj?: { __typename?: any } | null): obj is Video => { + if (!obj?.__typename) throw new Error('__typename is missing in "isVideo"') + return Video_possibleTypes.includes(obj.__typename) + } + + + + const VideoSource_possibleTypes: string[] = ['VideoSource'] + export const isVideoSource = (obj?: { __typename?: any } | null): obj is VideoSource => { + if (!obj?.__typename) throw new Error('__typename is missing in "isVideoSource"') + return VideoSource_possibleTypes.includes(obj.__typename) + } + + +export const enumArticleSortKeys = { + TITLE: 'TITLE' as const, + BLOG_TITLE: 'BLOG_TITLE' as const, + AUTHOR: 'AUTHOR' as const, + UPDATED_AT: 'UPDATED_AT' as const, + PUBLISHED_AT: 'PUBLISHED_AT' as const, + ID: 'ID' as const, + RELEVANCE: 'RELEVANCE' as const +} + +export const enumBlogSortKeys = { + HANDLE: 'HANDLE' as const, + TITLE: 'TITLE' as const, + ID: 'ID' as const, + RELEVANCE: 'RELEVANCE' as const +} + +export const enumCardBrand = { + VISA: 'VISA' as const, + MASTERCARD: 'MASTERCARD' as const, + DISCOVER: 'DISCOVER' as const, + AMERICAN_EXPRESS: 'AMERICAN_EXPRESS' as const, + DINERS_CLUB: 'DINERS_CLUB' as const, + JCB: 'JCB' as const +} + +export const enumCartErrorCode = { + INVALID: 'INVALID' as const, + LESS_THAN: 'LESS_THAN' as const, + INVALID_MERCHANDISE_LINE: 'INVALID_MERCHANDISE_LINE' as const, + MISSING_DISCOUNT_CODE: 'MISSING_DISCOUNT_CODE' as const, + MISSING_NOTE: 'MISSING_NOTE' as const +} + +export const enumCheckoutErrorCode = { + BLANK: 'BLANK' as const, + INVALID: 'INVALID' as const, + TOO_LONG: 'TOO_LONG' as const, + PRESENT: 'PRESENT' as const, + LESS_THAN: 'LESS_THAN' as const, + GREATER_THAN_OR_EQUAL_TO: 'GREATER_THAN_OR_EQUAL_TO' as const, + LESS_THAN_OR_EQUAL_TO: 'LESS_THAN_OR_EQUAL_TO' as const, + ALREADY_COMPLETED: 'ALREADY_COMPLETED' as const, + LOCKED: 'LOCKED' as const, + NOT_SUPPORTED: 'NOT_SUPPORTED' as const, + BAD_DOMAIN: 'BAD_DOMAIN' as const, + INVALID_FOR_COUNTRY: 'INVALID_FOR_COUNTRY' as const, + INVALID_FOR_COUNTRY_AND_PROVINCE: 'INVALID_FOR_COUNTRY_AND_PROVINCE' as const, + INVALID_STATE_IN_COUNTRY: 'INVALID_STATE_IN_COUNTRY' as const, + INVALID_PROVINCE_IN_COUNTRY: 'INVALID_PROVINCE_IN_COUNTRY' as const, + INVALID_REGION_IN_COUNTRY: 'INVALID_REGION_IN_COUNTRY' as const, + SHIPPING_RATE_EXPIRED: 'SHIPPING_RATE_EXPIRED' as const, + GIFT_CARD_UNUSABLE: 'GIFT_CARD_UNUSABLE' as const, + GIFT_CARD_DISABLED: 'GIFT_CARD_DISABLED' as const, + GIFT_CARD_CODE_INVALID: 'GIFT_CARD_CODE_INVALID' as const, + GIFT_CARD_ALREADY_APPLIED: 'GIFT_CARD_ALREADY_APPLIED' as const, + GIFT_CARD_CURRENCY_MISMATCH: 'GIFT_CARD_CURRENCY_MISMATCH' as const, + GIFT_CARD_EXPIRED: 'GIFT_CARD_EXPIRED' as const, + GIFT_CARD_DEPLETED: 'GIFT_CARD_DEPLETED' as const, + GIFT_CARD_NOT_FOUND: 'GIFT_CARD_NOT_FOUND' as const, + CART_DOES_NOT_MEET_DISCOUNT_REQUIREMENTS_NOTICE: 'CART_DOES_NOT_MEET_DISCOUNT_REQUIREMENTS_NOTICE' as const, + DISCOUNT_EXPIRED: 'DISCOUNT_EXPIRED' as const, + DISCOUNT_DISABLED: 'DISCOUNT_DISABLED' as const, + DISCOUNT_LIMIT_REACHED: 'DISCOUNT_LIMIT_REACHED' as const, + HIGHER_VALUE_DISCOUNT_APPLIED: 'HIGHER_VALUE_DISCOUNT_APPLIED' as const, + MAXIMUM_DISCOUNT_CODE_LIMIT_REACHED: 'MAXIMUM_DISCOUNT_CODE_LIMIT_REACHED' as const, + DISCOUNT_NOT_FOUND: 'DISCOUNT_NOT_FOUND' as const, + CUSTOMER_ALREADY_USED_ONCE_PER_CUSTOMER_DISCOUNT_NOTICE: 'CUSTOMER_ALREADY_USED_ONCE_PER_CUSTOMER_DISCOUNT_NOTICE' as const, + DISCOUNT_CODE_APPLICATION_FAILED: 'DISCOUNT_CODE_APPLICATION_FAILED' as const, + EMPTY: 'EMPTY' as const, + NOT_ENOUGH_IN_STOCK: 'NOT_ENOUGH_IN_STOCK' as const, + MISSING_PAYMENT_INPUT: 'MISSING_PAYMENT_INPUT' as const, + TOTAL_PRICE_MISMATCH: 'TOTAL_PRICE_MISMATCH' as const, + LINE_ITEM_NOT_FOUND: 'LINE_ITEM_NOT_FOUND' as const, + UNABLE_TO_APPLY: 'UNABLE_TO_APPLY' as const, + DISCOUNT_ALREADY_APPLIED: 'DISCOUNT_ALREADY_APPLIED' as const, + THROTTLED_DURING_CHECKOUT: 'THROTTLED_DURING_CHECKOUT' as const, + EXPIRED_QUEUE_TOKEN: 'EXPIRED_QUEUE_TOKEN' as const, + INVALID_QUEUE_TOKEN: 'INVALID_QUEUE_TOKEN' as const, + INVALID_COUNTRY_AND_CURRENCY: 'INVALID_COUNTRY_AND_CURRENCY' as const +} + +export const enumCollectionSortKeys = { + TITLE: 'TITLE' as const, + UPDATED_AT: 'UPDATED_AT' as const, + ID: 'ID' as const, + RELEVANCE: 'RELEVANCE' as const +} + +export const enumCountryCode = { + AF: 'AF' as const, + AX: 'AX' as const, + AL: 'AL' as const, + DZ: 'DZ' as const, + AD: 'AD' as const, + AO: 'AO' as const, + AI: 'AI' as const, + AG: 'AG' as const, + AR: 'AR' as const, + AM: 'AM' as const, + AW: 'AW' as const, + AC: 'AC' as const, + AU: 'AU' as const, + AT: 'AT' as const, + AZ: 'AZ' as const, + BS: 'BS' as const, + BH: 'BH' as const, + BD: 'BD' as const, + BB: 'BB' as const, + BY: 'BY' as const, + BE: 'BE' as const, + BZ: 'BZ' as const, + BJ: 'BJ' as const, + BM: 'BM' as const, + BT: 'BT' as const, + BO: 'BO' as const, + BA: 'BA' as const, + BW: 'BW' as const, + BV: 'BV' as const, + BR: 'BR' as const, + IO: 'IO' as const, + BN: 'BN' as const, + BG: 'BG' as const, + BF: 'BF' as const, + BI: 'BI' as const, + KH: 'KH' as const, + CA: 'CA' as const, + CV: 'CV' as const, + BQ: 'BQ' as const, + KY: 'KY' as const, + CF: 'CF' as const, + TD: 'TD' as const, + CL: 'CL' as const, + CN: 'CN' as const, + CX: 'CX' as const, + CC: 'CC' as const, + CO: 'CO' as const, + KM: 'KM' as const, + CG: 'CG' as const, + CD: 'CD' as const, + CK: 'CK' as const, + CR: 'CR' as const, + HR: 'HR' as const, + CU: 'CU' as const, + CW: 'CW' as const, + CY: 'CY' as const, + CZ: 'CZ' as const, + CI: 'CI' as const, + DK: 'DK' as const, + DJ: 'DJ' as const, + DM: 'DM' as const, + DO: 'DO' as const, + EC: 'EC' as const, + EG: 'EG' as const, + SV: 'SV' as const, + GQ: 'GQ' as const, + ER: 'ER' as const, + EE: 'EE' as const, + SZ: 'SZ' as const, + ET: 'ET' as const, + FK: 'FK' as const, + FO: 'FO' as const, + FJ: 'FJ' as const, + FI: 'FI' as const, + FR: 'FR' as const, + GF: 'GF' as const, + PF: 'PF' as const, + TF: 'TF' as const, + GA: 'GA' as const, + GM: 'GM' as const, + GE: 'GE' as const, + DE: 'DE' as const, + GH: 'GH' as const, + GI: 'GI' as const, + GR: 'GR' as const, + GL: 'GL' as const, + GD: 'GD' as const, + GP: 'GP' as const, + GT: 'GT' as const, + GG: 'GG' as const, + GN: 'GN' as const, + GW: 'GW' as const, + GY: 'GY' as const, + HT: 'HT' as const, + HM: 'HM' as const, + VA: 'VA' as const, + HN: 'HN' as const, + HK: 'HK' as const, + HU: 'HU' as const, + IS: 'IS' as const, + IN: 'IN' as const, + ID: 'ID' as const, + IR: 'IR' as const, + IQ: 'IQ' as const, + IE: 'IE' as const, + IM: 'IM' as const, + IL: 'IL' as const, + IT: 'IT' as const, + JM: 'JM' as const, + JP: 'JP' as const, + JE: 'JE' as const, + JO: 'JO' as const, + KZ: 'KZ' as const, + KE: 'KE' as const, + KI: 'KI' as const, + KP: 'KP' as const, + XK: 'XK' as const, + KW: 'KW' as const, + KG: 'KG' as const, + LA: 'LA' as const, + LV: 'LV' as const, + LB: 'LB' as const, + LS: 'LS' as const, + LR: 'LR' as const, + LY: 'LY' as const, + LI: 'LI' as const, + LT: 'LT' as const, + LU: 'LU' as const, + MO: 'MO' as const, + MG: 'MG' as const, + MW: 'MW' as const, + MY: 'MY' as const, + MV: 'MV' as const, + ML: 'ML' as const, + MT: 'MT' as const, + MQ: 'MQ' as const, + MR: 'MR' as const, + MU: 'MU' as const, + YT: 'YT' as const, + MX: 'MX' as const, + MD: 'MD' as const, + MC: 'MC' as const, + MN: 'MN' as const, + ME: 'ME' as const, + MS: 'MS' as const, + MA: 'MA' as const, + MZ: 'MZ' as const, + MM: 'MM' as const, + NA: 'NA' as const, + NR: 'NR' as const, + NP: 'NP' as const, + NL: 'NL' as const, + AN: 'AN' as const, + NC: 'NC' as const, + NZ: 'NZ' as const, + NI: 'NI' as const, + NE: 'NE' as const, + NG: 'NG' as const, + NU: 'NU' as const, + NF: 'NF' as const, + MK: 'MK' as const, + NO: 'NO' as const, + OM: 'OM' as const, + PK: 'PK' as const, + PS: 'PS' as const, + PA: 'PA' as const, + PG: 'PG' as const, + PY: 'PY' as const, + PE: 'PE' as const, + PH: 'PH' as const, + PN: 'PN' as const, + PL: 'PL' as const, + PT: 'PT' as const, + QA: 'QA' as const, + CM: 'CM' as const, + RE: 'RE' as const, + RO: 'RO' as const, + RU: 'RU' as const, + RW: 'RW' as const, + BL: 'BL' as const, + SH: 'SH' as const, + KN: 'KN' as const, + LC: 'LC' as const, + MF: 'MF' as const, + PM: 'PM' as const, + WS: 'WS' as const, + SM: 'SM' as const, + ST: 'ST' as const, + SA: 'SA' as const, + SN: 'SN' as const, + RS: 'RS' as const, + SC: 'SC' as const, + SL: 'SL' as const, + SG: 'SG' as const, + SX: 'SX' as const, + SK: 'SK' as const, + SI: 'SI' as const, + SB: 'SB' as const, + SO: 'SO' as const, + ZA: 'ZA' as const, + GS: 'GS' as const, + KR: 'KR' as const, + SS: 'SS' as const, + ES: 'ES' as const, + LK: 'LK' as const, + VC: 'VC' as const, + SD: 'SD' as const, + SR: 'SR' as const, + SJ: 'SJ' as const, + SE: 'SE' as const, + CH: 'CH' as const, + SY: 'SY' as const, + TW: 'TW' as const, + TJ: 'TJ' as const, + TZ: 'TZ' as const, + TH: 'TH' as const, + TL: 'TL' as const, + TG: 'TG' as const, + TK: 'TK' as const, + TO: 'TO' as const, + TT: 'TT' as const, + TA: 'TA' as const, + TN: 'TN' as const, + TR: 'TR' as const, + TM: 'TM' as const, + TC: 'TC' as const, + TV: 'TV' as const, + UG: 'UG' as const, + UA: 'UA' as const, + AE: 'AE' as const, + GB: 'GB' as const, + US: 'US' as const, + UM: 'UM' as const, + UY: 'UY' as const, + UZ: 'UZ' as const, + VU: 'VU' as const, + VE: 'VE' as const, + VN: 'VN' as const, + VG: 'VG' as const, + WF: 'WF' as const, + EH: 'EH' as const, + YE: 'YE' as const, + ZM: 'ZM' as const, + ZW: 'ZW' as const, + ZZ: 'ZZ' as const +} + +export const enumCropRegion = { + CENTER: 'CENTER' as const, + TOP: 'TOP' as const, + BOTTOM: 'BOTTOM' as const, + LEFT: 'LEFT' as const, + RIGHT: 'RIGHT' as const +} + +export const enumCurrencyCode = { + USD: 'USD' as const, + EUR: 'EUR' as const, + GBP: 'GBP' as const, + CAD: 'CAD' as const, + AFN: 'AFN' as const, + ALL: 'ALL' as const, + DZD: 'DZD' as const, + AOA: 'AOA' as const, + ARS: 'ARS' as const, + AMD: 'AMD' as const, + AWG: 'AWG' as const, + AUD: 'AUD' as const, + BBD: 'BBD' as const, + AZN: 'AZN' as const, + BDT: 'BDT' as const, + BSD: 'BSD' as const, + BHD: 'BHD' as const, + BIF: 'BIF' as const, + BZD: 'BZD' as const, + BMD: 'BMD' as const, + BTN: 'BTN' as const, + BAM: 'BAM' as const, + BRL: 'BRL' as const, + BOB: 'BOB' as const, + BWP: 'BWP' as const, + BND: 'BND' as const, + BGN: 'BGN' as const, + MMK: 'MMK' as const, + KHR: 'KHR' as const, + CVE: 'CVE' as const, + KYD: 'KYD' as const, + XAF: 'XAF' as const, + CLP: 'CLP' as const, + CNY: 'CNY' as const, + COP: 'COP' as const, + KMF: 'KMF' as const, + CDF: 'CDF' as const, + CRC: 'CRC' as const, + HRK: 'HRK' as const, + CZK: 'CZK' as const, + DKK: 'DKK' as const, + DOP: 'DOP' as const, + XCD: 'XCD' as const, + EGP: 'EGP' as const, + ETB: 'ETB' as const, + XPF: 'XPF' as const, + FJD: 'FJD' as const, + GMD: 'GMD' as const, + GHS: 'GHS' as const, + GTQ: 'GTQ' as const, + GYD: 'GYD' as const, + GEL: 'GEL' as const, + HTG: 'HTG' as const, + HNL: 'HNL' as const, + HKD: 'HKD' as const, + HUF: 'HUF' as const, + ISK: 'ISK' as const, + INR: 'INR' as const, + IDR: 'IDR' as const, + ILS: 'ILS' as const, + IQD: 'IQD' as const, + JMD: 'JMD' as const, + JPY: 'JPY' as const, + JEP: 'JEP' as const, + JOD: 'JOD' as const, + KZT: 'KZT' as const, + KES: 'KES' as const, + KWD: 'KWD' as const, + KGS: 'KGS' as const, + LAK: 'LAK' as const, + LVL: 'LVL' as const, + LBP: 'LBP' as const, + LSL: 'LSL' as const, + LRD: 'LRD' as const, + LTL: 'LTL' as const, + MGA: 'MGA' as const, + MKD: 'MKD' as const, + MOP: 'MOP' as const, + MWK: 'MWK' as const, + MVR: 'MVR' as const, + MXN: 'MXN' as const, + MYR: 'MYR' as const, + MUR: 'MUR' as const, + MDL: 'MDL' as const, + MAD: 'MAD' as const, + MNT: 'MNT' as const, + MZN: 'MZN' as const, + NAD: 'NAD' as const, + NPR: 'NPR' as const, + ANG: 'ANG' as const, + NZD: 'NZD' as const, + NIO: 'NIO' as const, + NGN: 'NGN' as const, + NOK: 'NOK' as const, + OMR: 'OMR' as const, + PAB: 'PAB' as const, + PKR: 'PKR' as const, + PGK: 'PGK' as const, + PYG: 'PYG' as const, + PEN: 'PEN' as const, + PHP: 'PHP' as const, + PLN: 'PLN' as const, + QAR: 'QAR' as const, + RON: 'RON' as const, + RUB: 'RUB' as const, + RWF: 'RWF' as const, + WST: 'WST' as const, + SAR: 'SAR' as const, + RSD: 'RSD' as const, + SCR: 'SCR' as const, + SGD: 'SGD' as const, + SDG: 'SDG' as const, + SYP: 'SYP' as const, + ZAR: 'ZAR' as const, + KRW: 'KRW' as const, + SSP: 'SSP' as const, + SBD: 'SBD' as const, + LKR: 'LKR' as const, + SRD: 'SRD' as const, + SZL: 'SZL' as const, + SEK: 'SEK' as const, + CHF: 'CHF' as const, + TWD: 'TWD' as const, + THB: 'THB' as const, + TZS: 'TZS' as const, + TTD: 'TTD' as const, + TND: 'TND' as const, + TRY: 'TRY' as const, + TMT: 'TMT' as const, + UGX: 'UGX' as const, + UAH: 'UAH' as const, + AED: 'AED' as const, + UYU: 'UYU' as const, + UZS: 'UZS' as const, + VUV: 'VUV' as const, + VND: 'VND' as const, + XOF: 'XOF' as const, + YER: 'YER' as const, + ZMW: 'ZMW' as const, + BYN: 'BYN' as const, + BYR: 'BYR' as const, + DJF: 'DJF' as const, + ERN: 'ERN' as const, + FKP: 'FKP' as const, + GIP: 'GIP' as const, + GNF: 'GNF' as const, + IRR: 'IRR' as const, + KID: 'KID' as const, + LYD: 'LYD' as const, + MRU: 'MRU' as const, + SLL: 'SLL' as const, + SHP: 'SHP' as const, + SOS: 'SOS' as const, + STD: 'STD' as const, + STN: 'STN' as const, + TJS: 'TJS' as const, + TOP: 'TOP' as const, + VED: 'VED' as const, + VEF: 'VEF' as const, + VES: 'VES' as const, + XXX: 'XXX' as const +} + +export const enumCustomerErrorCode = { + BLANK: 'BLANK' as const, + INVALID: 'INVALID' as const, + TAKEN: 'TAKEN' as const, + TOO_LONG: 'TOO_LONG' as const, + TOO_SHORT: 'TOO_SHORT' as const, + UNIDENTIFIED_CUSTOMER: 'UNIDENTIFIED_CUSTOMER' as const, + CUSTOMER_DISABLED: 'CUSTOMER_DISABLED' as const, + PASSWORD_STARTS_OR_ENDS_WITH_WHITESPACE: 'PASSWORD_STARTS_OR_ENDS_WITH_WHITESPACE' as const, + CONTAINS_HTML_TAGS: 'CONTAINS_HTML_TAGS' as const, + CONTAINS_URL: 'CONTAINS_URL' as const, + TOKEN_INVALID: 'TOKEN_INVALID' as const, + ALREADY_ENABLED: 'ALREADY_ENABLED' as const, + NOT_FOUND: 'NOT_FOUND' as const, + BAD_DOMAIN: 'BAD_DOMAIN' as const, + INVALID_MULTIPASS_REQUEST: 'INVALID_MULTIPASS_REQUEST' as const +} + +export const enumDeliveryMethodType = { + SHIPPING: 'SHIPPING' as const, + PICK_UP: 'PICK_UP' as const, + RETAIL: 'RETAIL' as const, + LOCAL: 'LOCAL' as const, + PICKUP_POINT: 'PICKUP_POINT' as const, + NONE: 'NONE' as const +} + +export const enumDigitalWallet = { + APPLE_PAY: 'APPLE_PAY' as const, + ANDROID_PAY: 'ANDROID_PAY' as const, + GOOGLE_PAY: 'GOOGLE_PAY' as const, + SHOPIFY_PAY: 'SHOPIFY_PAY' as const +} + +export const enumDiscountApplicationAllocationMethod = { + ACROSS: 'ACROSS' as const, + EACH: 'EACH' as const, + ONE: 'ONE' as const +} + +export const enumDiscountApplicationTargetSelection = { + ALL: 'ALL' as const, + ENTITLED: 'ENTITLED' as const, + EXPLICIT: 'EXPLICIT' as const +} + +export const enumDiscountApplicationTargetType = { + LINE_ITEM: 'LINE_ITEM' as const, + SHIPPING_LINE: 'SHIPPING_LINE' as const +} + +export const enumFilterType = { + LIST: 'LIST' as const, + PRICE_RANGE: 'PRICE_RANGE' as const, + BOOLEAN: 'BOOLEAN' as const +} + +export const enumImageContentType = { + PNG: 'PNG' as const, + JPG: 'JPG' as const, + WEBP: 'WEBP' as const +} + +export const enumLanguageCode = { + AF: 'AF' as const, + AK: 'AK' as const, + AM: 'AM' as const, + AR: 'AR' as const, + AS: 'AS' as const, + AZ: 'AZ' as const, + BE: 'BE' as const, + BG: 'BG' as const, + BM: 'BM' as const, + BN: 'BN' as const, + BO: 'BO' as const, + BR: 'BR' as const, + BS: 'BS' as const, + CA: 'CA' as const, + CE: 'CE' as const, + CS: 'CS' as const, + CY: 'CY' as const, + DA: 'DA' as const, + DE: 'DE' as const, + DZ: 'DZ' as const, + EE: 'EE' as const, + EL: 'EL' as const, + EN: 'EN' as const, + EO: 'EO' as const, + ES: 'ES' as const, + ET: 'ET' as const, + EU: 'EU' as const, + FA: 'FA' as const, + FF: 'FF' as const, + FI: 'FI' as const, + FO: 'FO' as const, + FR: 'FR' as const, + FY: 'FY' as const, + GA: 'GA' as const, + GD: 'GD' as const, + GL: 'GL' as const, + GU: 'GU' as const, + GV: 'GV' as const, + HA: 'HA' as const, + HE: 'HE' as const, + HI: 'HI' as const, + HR: 'HR' as const, + HU: 'HU' as const, + HY: 'HY' as const, + IA: 'IA' as const, + ID: 'ID' as const, + IG: 'IG' as const, + II: 'II' as const, + IS: 'IS' as const, + IT: 'IT' as const, + JA: 'JA' as const, + JV: 'JV' as const, + KA: 'KA' as const, + KI: 'KI' as const, + KK: 'KK' as const, + KL: 'KL' as const, + KM: 'KM' as const, + KN: 'KN' as const, + KO: 'KO' as const, + KS: 'KS' as const, + KU: 'KU' as const, + KW: 'KW' as const, + KY: 'KY' as const, + LB: 'LB' as const, + LG: 'LG' as const, + LN: 'LN' as const, + LO: 'LO' as const, + LT: 'LT' as const, + LU: 'LU' as const, + LV: 'LV' as const, + MG: 'MG' as const, + MI: 'MI' as const, + MK: 'MK' as const, + ML: 'ML' as const, + MN: 'MN' as const, + MR: 'MR' as const, + MS: 'MS' as const, + MT: 'MT' as const, + MY: 'MY' as const, + NB: 'NB' as const, + ND: 'ND' as const, + NE: 'NE' as const, + NL: 'NL' as const, + NN: 'NN' as const, + NO: 'NO' as const, + OM: 'OM' as const, + OR: 'OR' as const, + OS: 'OS' as const, + PA: 'PA' as const, + PL: 'PL' as const, + PS: 'PS' as const, + PT_BR: 'PT_BR' as const, + PT_PT: 'PT_PT' as const, + QU: 'QU' as const, + RM: 'RM' as const, + RN: 'RN' as const, + RO: 'RO' as const, + RU: 'RU' as const, + RW: 'RW' as const, + SD: 'SD' as const, + SE: 'SE' as const, + SG: 'SG' as const, + SI: 'SI' as const, + SK: 'SK' as const, + SL: 'SL' as const, + SN: 'SN' as const, + SO: 'SO' as const, + SQ: 'SQ' as const, + SR: 'SR' as const, + SU: 'SU' as const, + SV: 'SV' as const, + SW: 'SW' as const, + TA: 'TA' as const, + TE: 'TE' as const, + TG: 'TG' as const, + TH: 'TH' as const, + TI: 'TI' as const, + TK: 'TK' as const, + TO: 'TO' as const, + TR: 'TR' as const, + TT: 'TT' as const, + UG: 'UG' as const, + UK: 'UK' as const, + UR: 'UR' as const, + UZ: 'UZ' as const, + VI: 'VI' as const, + WO: 'WO' as const, + XH: 'XH' as const, + YI: 'YI' as const, + YO: 'YO' as const, + ZH_CN: 'ZH_CN' as const, + ZH_TW: 'ZH_TW' as const, + ZU: 'ZU' as const, + ZH: 'ZH' as const, + PT: 'PT' as const, + CU: 'CU' as const, + VO: 'VO' as const +} + +export const enumLocationSortKeys = { + ID: 'ID' as const, + NAME: 'NAME' as const, + CITY: 'CITY' as const, + DISTANCE: 'DISTANCE' as const +} + +export const enumMediaContentType = { + EXTERNAL_VIDEO: 'EXTERNAL_VIDEO' as const, + IMAGE: 'IMAGE' as const, + MODEL_3D: 'MODEL_3D' as const, + VIDEO: 'VIDEO' as const +} + +export const enumMediaHost = { + YOUTUBE: 'YOUTUBE' as const, + VIMEO: 'VIMEO' as const +} + +export const enumMenuItemType = { + FRONTPAGE: 'FRONTPAGE' as const, + COLLECTION: 'COLLECTION' as const, + COLLECTIONS: 'COLLECTIONS' as const, + PRODUCT: 'PRODUCT' as const, + CATALOG: 'CATALOG' as const, + PAGE: 'PAGE' as const, + BLOG: 'BLOG' as const, + ARTICLE: 'ARTICLE' as const, + SEARCH: 'SEARCH' as const, + SHOP_POLICY: 'SHOP_POLICY' as const, + HTTP: 'HTTP' as const +} + +export const enumOrderCancelReason = { + CUSTOMER: 'CUSTOMER' as const, + DECLINED: 'DECLINED' as const, + FRAUD: 'FRAUD' as const, + INVENTORY: 'INVENTORY' as const, + OTHER: 'OTHER' as const +} + +export const enumOrderFinancialStatus = { + PENDING: 'PENDING' as const, + AUTHORIZED: 'AUTHORIZED' as const, + PARTIALLY_PAID: 'PARTIALLY_PAID' as const, + PARTIALLY_REFUNDED: 'PARTIALLY_REFUNDED' as const, + VOIDED: 'VOIDED' as const, + PAID: 'PAID' as const, + REFUNDED: 'REFUNDED' as const +} + +export const enumOrderFulfillmentStatus = { + UNFULFILLED: 'UNFULFILLED' as const, + PARTIALLY_FULFILLED: 'PARTIALLY_FULFILLED' as const, + FULFILLED: 'FULFILLED' as const, + RESTOCKED: 'RESTOCKED' as const, + PENDING_FULFILLMENT: 'PENDING_FULFILLMENT' as const, + OPEN: 'OPEN' as const, + IN_PROGRESS: 'IN_PROGRESS' as const, + ON_HOLD: 'ON_HOLD' as const, + SCHEDULED: 'SCHEDULED' as const +} + +export const enumOrderSortKeys = { + PROCESSED_AT: 'PROCESSED_AT' as const, + TOTAL_PRICE: 'TOTAL_PRICE' as const, + ID: 'ID' as const, + RELEVANCE: 'RELEVANCE' as const +} + +export const enumPageSortKeys = { + TITLE: 'TITLE' as const, + UPDATED_AT: 'UPDATED_AT' as const, + ID: 'ID' as const, + RELEVANCE: 'RELEVANCE' as const +} + +export const enumPaymentTokenType = { + APPLE_PAY: 'APPLE_PAY' as const, + VAULT: 'VAULT' as const, + SHOPIFY_PAY: 'SHOPIFY_PAY' as const, + GOOGLE_PAY: 'GOOGLE_PAY' as const, + STRIPE_VAULT_TOKEN: 'STRIPE_VAULT_TOKEN' as const +} + +export const enumProductCollectionSortKeys = { + TITLE: 'TITLE' as const, + PRICE: 'PRICE' as const, + BEST_SELLING: 'BEST_SELLING' as const, + CREATED: 'CREATED' as const, + ID: 'ID' as const, + MANUAL: 'MANUAL' as const, + COLLECTION_DEFAULT: 'COLLECTION_DEFAULT' as const, + RELEVANCE: 'RELEVANCE' as const +} + +export const enumProductImageSortKeys = { + CREATED_AT: 'CREATED_AT' as const, + POSITION: 'POSITION' as const, + ID: 'ID' as const, + RELEVANCE: 'RELEVANCE' as const +} + +export const enumProductMediaSortKeys = { + POSITION: 'POSITION' as const, + ID: 'ID' as const, + RELEVANCE: 'RELEVANCE' as const +} + +export const enumProductSortKeys = { + TITLE: 'TITLE' as const, + PRODUCT_TYPE: 'PRODUCT_TYPE' as const, + VENDOR: 'VENDOR' as const, + UPDATED_AT: 'UPDATED_AT' as const, + CREATED_AT: 'CREATED_AT' as const, + BEST_SELLING: 'BEST_SELLING' as const, + PRICE: 'PRICE' as const, + ID: 'ID' as const, + RELEVANCE: 'RELEVANCE' as const +} + +export const enumProductVariantSortKeys = { + TITLE: 'TITLE' as const, + SKU: 'SKU' as const, + POSITION: 'POSITION' as const, + ID: 'ID' as const, + RELEVANCE: 'RELEVANCE' as const +} + +export const enumSellingPlanCheckoutChargeType = { + PERCENTAGE: 'PERCENTAGE' as const, + PRICE: 'PRICE' as const +} + +export const enumTransactionKind = { + SALE: 'SALE' as const, + CAPTURE: 'CAPTURE' as const, + AUTHORIZATION: 'AUTHORIZATION' as const, + EMV_AUTHORIZATION: 'EMV_AUTHORIZATION' as const, + CHANGE: 'CHANGE' as const +} + +export const enumTransactionStatus = { + PENDING: 'PENDING' as const, + SUCCESS: 'SUCCESS' as const, + FAILURE: 'FAILURE' as const, + ERROR: 'ERROR' as const +} + +export const enumUnitPriceMeasurementMeasuredType = { + VOLUME: 'VOLUME' as const, + WEIGHT: 'WEIGHT' as const, + LENGTH: 'LENGTH' as const, + AREA: 'AREA' as const +} + +export const enumUnitPriceMeasurementMeasuredUnit = { + ML: 'ML' as const, + CL: 'CL' as const, + L: 'L' as const, + M3: 'M3' as const, + MG: 'MG' as const, + G: 'G' as const, + KG: 'KG' as const, + MM: 'MM' as const, + CM: 'CM' as const, + M: 'M' as const, + M2: 'M2' as const +} + +export const enumUnitSystem = { + IMPERIAL_SYSTEM: 'IMPERIAL_SYSTEM' as const, + METRIC_SYSTEM: 'METRIC_SYSTEM' as const +} + +export const enumWeightUnit = { + KILOGRAMS: 'KILOGRAMS' as const, + GRAMS: 'GRAMS' as const, + POUNDS: 'POUNDS' as const, + OUNCES: 'OUNCES' as const +} diff --git a/examples/nextjs-shopify/src/storefront/sdk-gen/generated/types.ts b/examples/nextjs-shopify/src/storefront/sdk-gen/generated/types.ts new file mode 100644 index 0000000..02d65e3 --- /dev/null +++ b/examples/nextjs-shopify/src/storefront/sdk-gen/generated/types.ts @@ -0,0 +1,6146 @@ +/* eslint-disable */ +// @ts-nocheck + +export default { + "scalars": [ + 6, + 14, + 15, + 19, + 37, + 69, + 87, + 88, + 94, + 97, + 99, + 116, + 124, + 125, + 128, + 129, + 132, + 135, + 136, + 142, + 144, + 152, + 155, + 158, + 161, + 162, + 164, + 170, + 178, + 180, + 184, + 205, + 208, + 209, + 213, + 218, + 221, + 226, + 230, + 231, + 234, + 238, + 250, + 271, + 276, + 277, + 278, + 280, + 281, + 282, + 283, + 291 + ], + "types": { + "ApiVersion": { + "displayName": [ + 271 + ], + "handle": [ + 271 + ], + "supported": [ + 15 + ], + "__typename": [ + 271 + ] + }, + "AppliedGiftCard": { + "amountUsed": [ + 200 + ], + "amountUsedV2": [ + 200 + ], + "balance": [ + 200 + ], + "balanceV2": [ + 200 + ], + "id": [ + 155 + ], + "lastCharacters": [ + 271 + ], + "presentmentAmountUsed": [ + 200 + ], + "__typename": [ + 271 + ] + }, + "Article": { + "author": [ + 3 + ], + "authorV2": [ + 3 + ], + "blog": [ + 11 + ], + "comments": [ + 91, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ] + } + ], + "content": [ + 271, + { + "truncateAt": [ + 161 + ] + } + ], + "contentHtml": [ + 152 + ], + "excerpt": [ + 271, + { + "truncateAt": [ + 161 + ] + } + ], + "excerptHtml": [ + 152 + ], + "handle": [ + 271 + ], + "id": [ + 155 + ], + "image": [ + 156 + ], + "metafield": [ + 186, + { + "namespace": [ + 271, + "String!" + ], + "key": [ + 271, + "String!" + ] + } + ], + "metafields": [ + 186, + { + "identifiers": [ + 154, + "[HasMetafieldsIdentifier!]!" + ] + } + ], + "onlineStoreUrl": [ + 278 + ], + "publishedAt": [ + 124 + ], + "seo": [ + 239 + ], + "tags": [ + 271 + ], + "title": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "ArticleAuthor": { + "bio": [ + 271 + ], + "email": [ + 271 + ], + "firstName": [ + 271 + ], + "lastName": [ + 271 + ], + "name": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "ArticleConnection": { + "edges": [ + 5 + ], + "nodes": [ + 2 + ], + "pageInfo": [ + 217 + ], + "__typename": [ + 271 + ] + }, + "ArticleEdge": { + "cursor": [ + 271 + ], + "node": [ + 2 + ], + "__typename": [ + 271 + ] + }, + "ArticleSortKeys": {}, + "Attribute": { + "key": [ + 271 + ], + "value": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "AttributeInput": { + "key": [ + 271 + ], + "value": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "AutomaticDiscountApplication": { + "allocationMethod": [ + 132 + ], + "targetSelection": [ + 135 + ], + "targetType": [ + 136 + ], + "title": [ + 271 + ], + "value": [ + 224 + ], + "__typename": [ + 271 + ] + }, + "AvailableShippingRates": { + "ready": [ + 15 + ], + "shippingRates": [ + 264 + ], + "__typename": [ + 271 + ] + }, + "Blog": { + "articleByHandle": [ + 2, + { + "handle": [ + 271, + "String!" + ] + } + ], + "articles": [ + 4, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ], + "sortKey": [ + 6 + ], + "query": [ + 271 + ] + } + ], + "authors": [ + 3 + ], + "handle": [ + 271 + ], + "id": [ + 155 + ], + "metafield": [ + 186, + { + "namespace": [ + 271, + "String!" + ], + "key": [ + 271, + "String!" + ] + } + ], + "metafields": [ + 186, + { + "identifiers": [ + 154, + "[HasMetafieldsIdentifier!]!" + ] + } + ], + "onlineStoreUrl": [ + 278 + ], + "seo": [ + 239 + ], + "title": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "BlogConnection": { + "edges": [ + 13 + ], + "nodes": [ + 11 + ], + "pageInfo": [ + 217 + ], + "__typename": [ + 271 + ] + }, + "BlogEdge": { + "cursor": [ + 271 + ], + "node": [ + 11 + ], + "__typename": [ + 271 + ] + }, + "BlogSortKeys": {}, + "Boolean": {}, + "Brand": { + "colors": [ + 18 + ], + "coverImage": [ + 181 + ], + "logo": [ + 181 + ], + "shortDescription": [ + 271 + ], + "slogan": [ + 271 + ], + "squareLogo": [ + 181 + ], + "__typename": [ + 271 + ] + }, + "BrandColorGroup": { + "background": [ + 88 + ], + "foreground": [ + 88 + ], + "__typename": [ + 271 + ] + }, + "BrandColors": { + "primary": [ + 17 + ], + "secondary": [ + 17 + ], + "__typename": [ + 271 + ] + }, + "CardBrand": {}, + "Cart": { + "attribute": [ + 7, + { + "key": [ + 271, + "String!" + ] + } + ], + "attributes": [ + 7 + ], + "buyerIdentity": [ + 23 + ], + "checkoutUrl": [ + 278 + ], + "cost": [ + 27 + ], + "createdAt": [ + 124 + ], + "deliveryGroups": [ + 31, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ] + } + ], + "discountAllocations": [ + 34 + ], + "discountCodes": [ + 35 + ], + "estimatedCost": [ + 38 + ], + "id": [ + 155 + ], + "lines": [ + 41, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ] + } + ], + "note": [ + 271 + ], + "totalQuantity": [ + 161 + ], + "updatedAt": [ + 124 + ], + "__typename": [ + 271 + ] + }, + "CartAttributesUpdatePayload": { + "cart": [ + 20 + ], + "userErrors": [ + 53 + ], + "__typename": [ + 271 + ] + }, + "CartAutomaticDiscountAllocation": { + "discountedAmount": [ + 200 + ], + "title": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "CartBuyerIdentity": { + "countryCode": [ + 94 + ], + "customer": [ + 100 + ], + "deliveryAddressPreferences": [ + 126 + ], + "email": [ + 271 + ], + "phone": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "CartBuyerIdentityInput": { + "email": [ + 271 + ], + "phone": [ + 271 + ], + "countryCode": [ + 94 + ], + "customerAccessToken": [ + 271 + ], + "deliveryAddressPreferences": [ + 127 + ], + "__typename": [ + 271 + ] + }, + "CartBuyerIdentityUpdatePayload": { + "cart": [ + 20 + ], + "userErrors": [ + 53 + ], + "__typename": [ + 271 + ] + }, + "CartCodeDiscountAllocation": { + "code": [ + 271 + ], + "discountedAmount": [ + 200 + ], + "__typename": [ + 271 + ] + }, + "CartCost": { + "checkoutChargeAmount": [ + 200 + ], + "subtotalAmount": [ + 200 + ], + "subtotalAmountEstimated": [ + 15 + ], + "totalAmount": [ + 200 + ], + "totalAmountEstimated": [ + 15 + ], + "totalDutyAmount": [ + 200 + ], + "totalDutyAmountEstimated": [ + 15 + ], + "totalTaxAmount": [ + 200 + ], + "totalTaxAmountEstimated": [ + 15 + ], + "__typename": [ + 271 + ] + }, + "CartCreatePayload": { + "cart": [ + 20 + ], + "userErrors": [ + 53 + ], + "__typename": [ + 271 + ] + }, + "CartCustomDiscountAllocation": { + "discountedAmount": [ + 200 + ], + "title": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "CartDeliveryGroup": { + "cartLines": [ + 41, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ] + } + ], + "deliveryAddress": [ + 171 + ], + "deliveryOptions": [ + 33 + ], + "id": [ + 155 + ], + "selectedDeliveryOption": [ + 33 + ], + "__typename": [ + 271 + ] + }, + "CartDeliveryGroupConnection": { + "edges": [ + 32 + ], + "nodes": [ + 30 + ], + "pageInfo": [ + 217 + ], + "__typename": [ + 271 + ] + }, + "CartDeliveryGroupEdge": { + "cursor": [ + 271 + ], + "node": [ + 30 + ], + "__typename": [ + 271 + ] + }, + "CartDeliveryOption": { + "code": [ + 271 + ], + "deliveryMethodType": [ + 128 + ], + "description": [ + 271 + ], + "estimatedCost": [ + 200 + ], + "handle": [ + 271 + ], + "title": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "CartDiscountAllocation": { + "discountedAmount": [ + 200 + ], + "on_CartAutomaticDiscountAllocation": [ + 22 + ], + "on_CartCodeDiscountAllocation": [ + 26 + ], + "on_CartCustomDiscountAllocation": [ + 29 + ], + "__typename": [ + 271 + ] + }, + "CartDiscountCode": { + "applicable": [ + 15 + ], + "code": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "CartDiscountCodesUpdatePayload": { + "cart": [ + 20 + ], + "userErrors": [ + 53 + ], + "__typename": [ + 271 + ] + }, + "CartErrorCode": {}, + "CartEstimatedCost": { + "checkoutChargeAmount": [ + 200 + ], + "subtotalAmount": [ + 200 + ], + "totalAmount": [ + 200 + ], + "totalDutyAmount": [ + 200 + ], + "totalTaxAmount": [ + 200 + ], + "__typename": [ + 271 + ] + }, + "CartInput": { + "attributes": [ + 8 + ], + "lines": [ + 45 + ], + "discountCodes": [ + 271 + ], + "note": [ + 271 + ], + "buyerIdentity": [ + 24 + ], + "__typename": [ + 271 + ] + }, + "CartLine": { + "attribute": [ + 7, + { + "key": [ + 271, + "String!" + ] + } + ], + "attributes": [ + 7 + ], + "cost": [ + 42 + ], + "discountAllocations": [ + 34 + ], + "estimatedCost": [ + 44 + ], + "id": [ + 155 + ], + "merchandise": [ + 185 + ], + "quantity": [ + 161 + ], + "sellingPlanAllocation": [ + 244 + ], + "__typename": [ + 271 + ] + }, + "CartLineConnection": { + "edges": [ + 43 + ], + "nodes": [ + 40 + ], + "pageInfo": [ + 217 + ], + "__typename": [ + 271 + ] + }, + "CartLineCost": { + "amountPerQuantity": [ + 200 + ], + "compareAtAmountPerQuantity": [ + 200 + ], + "subtotalAmount": [ + 200 + ], + "totalAmount": [ + 200 + ], + "__typename": [ + 271 + ] + }, + "CartLineEdge": { + "cursor": [ + 271 + ], + "node": [ + 40 + ], + "__typename": [ + 271 + ] + }, + "CartLineEstimatedCost": { + "amount": [ + 200 + ], + "compareAtAmount": [ + 200 + ], + "subtotalAmount": [ + 200 + ], + "totalAmount": [ + 200 + ], + "__typename": [ + 271 + ] + }, + "CartLineInput": { + "attributes": [ + 8 + ], + "quantity": [ + 161 + ], + "merchandiseId": [ + 155 + ], + "sellingPlanId": [ + 155 + ], + "__typename": [ + 271 + ] + }, + "CartLineUpdateInput": { + "id": [ + 155 + ], + "quantity": [ + 161 + ], + "merchandiseId": [ + 155 + ], + "attributes": [ + 8 + ], + "sellingPlanId": [ + 155 + ], + "__typename": [ + 271 + ] + }, + "CartLinesAddPayload": { + "cart": [ + 20 + ], + "userErrors": [ + 53 + ], + "__typename": [ + 271 + ] + }, + "CartLinesRemovePayload": { + "cart": [ + 20 + ], + "userErrors": [ + 53 + ], + "__typename": [ + 271 + ] + }, + "CartLinesUpdatePayload": { + "cart": [ + 20 + ], + "userErrors": [ + 53 + ], + "__typename": [ + 271 + ] + }, + "CartNoteUpdatePayload": { + "cart": [ + 20 + ], + "userErrors": [ + 53 + ], + "__typename": [ + 271 + ] + }, + "CartSelectedDeliveryOptionInput": { + "deliveryGroupId": [ + 155 + ], + "deliveryOptionHandle": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "CartSelectedDeliveryOptionsUpdatePayload": { + "cart": [ + 20 + ], + "userErrors": [ + 53 + ], + "__typename": [ + 271 + ] + }, + "CartUserError": { + "code": [ + 37 + ], + "field": [ + 271 + ], + "message": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "Checkout": { + "appliedGiftCards": [ + 1 + ], + "availableShippingRates": [ + 10 + ], + "buyerIdentity": [ + 57 + ], + "completedAt": [ + 124 + ], + "createdAt": [ + 124 + ], + "currencyCode": [ + 99 + ], + "customAttributes": [ + 7 + ], + "discountApplications": [ + 133, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ] + } + ], + "email": [ + 271 + ], + "id": [ + 155 + ], + "lineItems": [ + 73, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ] + } + ], + "lineItemsSubtotalPrice": [ + 200 + ], + "note": [ + 271 + ], + "order": [ + 204 + ], + "orderStatusUrl": [ + 278 + ], + "paymentDue": [ + 200 + ], + "paymentDueV2": [ + 200 + ], + "ready": [ + 15 + ], + "requiresShipping": [ + 15 + ], + "shippingAddress": [ + 171 + ], + "shippingDiscountAllocations": [ + 130 + ], + "shippingLine": [ + 264 + ], + "subtotalPrice": [ + 200 + ], + "subtotalPriceV2": [ + 200 + ], + "taxExempt": [ + 15 + ], + "taxesIncluded": [ + 15 + ], + "totalDuties": [ + 200 + ], + "totalPrice": [ + 200 + ], + "totalPriceV2": [ + 200 + ], + "totalTax": [ + 200 + ], + "totalTaxV2": [ + 200 + ], + "updatedAt": [ + 124 + ], + "webUrl": [ + 278 + ], + "__typename": [ + 271 + ] + }, + "CheckoutAttributesUpdateV2Input": { + "note": [ + 271 + ], + "customAttributes": [ + 8 + ], + "allowPartialAddresses": [ + 15 + ], + "__typename": [ + 271 + ] + }, + "CheckoutAttributesUpdateV2Payload": { + "checkout": [ + 54 + ], + "checkoutUserErrors": [ + 83 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CheckoutBuyerIdentity": { + "countryCode": [ + 94 + ], + "__typename": [ + 271 + ] + }, + "CheckoutBuyerIdentityInput": { + "countryCode": [ + 94 + ], + "__typename": [ + 271 + ] + }, + "CheckoutCompleteFreePayload": { + "checkout": [ + 54 + ], + "checkoutUserErrors": [ + 83 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CheckoutCompleteWithCreditCardV2Payload": { + "checkout": [ + 54 + ], + "checkoutUserErrors": [ + 83 + ], + "payment": [ + 219 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CheckoutCompleteWithTokenizedPaymentV3Payload": { + "checkout": [ + 54 + ], + "checkoutUserErrors": [ + 83 + ], + "payment": [ + 219 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CheckoutCreateInput": { + "email": [ + 271 + ], + "lineItems": [ + 75 + ], + "shippingAddress": [ + 174 + ], + "note": [ + 271 + ], + "customAttributes": [ + 8 + ], + "allowPartialAddresses": [ + 15 + ], + "buyerIdentity": [ + 58 + ], + "__typename": [ + 271 + ] + }, + "CheckoutCreatePayload": { + "checkout": [ + 54 + ], + "checkoutUserErrors": [ + 83 + ], + "queueToken": [ + 271 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CheckoutCustomerAssociateV2Payload": { + "checkout": [ + 54 + ], + "checkoutUserErrors": [ + 83 + ], + "customer": [ + 100 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CheckoutCustomerDisassociateV2Payload": { + "checkout": [ + 54 + ], + "checkoutUserErrors": [ + 83 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CheckoutDiscountCodeApplyV2Payload": { + "checkout": [ + 54 + ], + "checkoutUserErrors": [ + 83 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CheckoutDiscountCodeRemovePayload": { + "checkout": [ + 54 + ], + "checkoutUserErrors": [ + 83 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CheckoutEmailUpdateV2Payload": { + "checkout": [ + 54 + ], + "checkoutUserErrors": [ + 83 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CheckoutErrorCode": {}, + "CheckoutGiftCardRemoveV2Payload": { + "checkout": [ + 54 + ], + "checkoutUserErrors": [ + 83 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CheckoutGiftCardsAppendPayload": { + "checkout": [ + 54 + ], + "checkoutUserErrors": [ + 83 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CheckoutLineItem": { + "customAttributes": [ + 7 + ], + "discountAllocations": [ + 130 + ], + "id": [ + 155 + ], + "quantity": [ + 161 + ], + "title": [ + 271 + ], + "unitPrice": [ + 200 + ], + "variant": [ + 235 + ], + "__typename": [ + 271 + ] + }, + "CheckoutLineItemConnection": { + "edges": [ + 74 + ], + "nodes": [ + 72 + ], + "pageInfo": [ + 217 + ], + "__typename": [ + 271 + ] + }, + "CheckoutLineItemEdge": { + "cursor": [ + 271 + ], + "node": [ + 72 + ], + "__typename": [ + 271 + ] + }, + "CheckoutLineItemInput": { + "customAttributes": [ + 8 + ], + "quantity": [ + 161 + ], + "variantId": [ + 155 + ], + "__typename": [ + 271 + ] + }, + "CheckoutLineItemUpdateInput": { + "id": [ + 155 + ], + "variantId": [ + 155 + ], + "quantity": [ + 161 + ], + "customAttributes": [ + 8 + ], + "__typename": [ + 271 + ] + }, + "CheckoutLineItemsAddPayload": { + "checkout": [ + 54 + ], + "checkoutUserErrors": [ + 83 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CheckoutLineItemsRemovePayload": { + "checkout": [ + 54 + ], + "checkoutUserErrors": [ + 83 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CheckoutLineItemsReplacePayload": { + "checkout": [ + 54 + ], + "userErrors": [ + 83 + ], + "__typename": [ + 271 + ] + }, + "CheckoutLineItemsUpdatePayload": { + "checkout": [ + 54 + ], + "checkoutUserErrors": [ + 83 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CheckoutShippingAddressUpdateV2Payload": { + "checkout": [ + 54 + ], + "checkoutUserErrors": [ + 83 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CheckoutShippingLineUpdatePayload": { + "checkout": [ + 54 + ], + "checkoutUserErrors": [ + 83 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CheckoutUserError": { + "code": [ + 69 + ], + "field": [ + 271 + ], + "message": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "Collection": { + "description": [ + 271, + { + "truncateAt": [ + 161 + ] + } + ], + "descriptionHtml": [ + 152 + ], + "handle": [ + 271 + ], + "id": [ + 155 + ], + "image": [ + 156 + ], + "metafield": [ + 186, + { + "namespace": [ + 271, + "String!" + ], + "key": [ + 271, + "String!" + ] + } + ], + "metafields": [ + 186, + { + "identifiers": [ + 154, + "[HasMetafieldsIdentifier!]!" + ] + } + ], + "onlineStoreUrl": [ + 278 + ], + "products": [ + 227, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ], + "sortKey": [ + 226 + ], + "filters": [ + 229, + "[ProductFilter!]" + ] + } + ], + "seo": [ + 239 + ], + "title": [ + 271 + ], + "updatedAt": [ + 124 + ], + "__typename": [ + 271 + ] + }, + "CollectionConnection": { + "edges": [ + 86 + ], + "nodes": [ + 84 + ], + "pageInfo": [ + 217 + ], + "__typename": [ + 271 + ] + }, + "CollectionEdge": { + "cursor": [ + 271 + ], + "node": [ + 84 + ], + "__typename": [ + 271 + ] + }, + "CollectionSortKeys": {}, + "Color": {}, + "Comment": { + "author": [ + 90 + ], + "content": [ + 271, + { + "truncateAt": [ + 161 + ] + } + ], + "contentHtml": [ + 152 + ], + "id": [ + 155 + ], + "__typename": [ + 271 + ] + }, + "CommentAuthor": { + "email": [ + 271 + ], + "name": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "CommentConnection": { + "edges": [ + 92 + ], + "nodes": [ + 89 + ], + "pageInfo": [ + 217 + ], + "__typename": [ + 271 + ] + }, + "CommentEdge": { + "cursor": [ + 271 + ], + "node": [ + 89 + ], + "__typename": [ + 271 + ] + }, + "Country": { + "availableLanguages": [ + 163 + ], + "currency": [ + 98 + ], + "isoCode": [ + 94 + ], + "name": [ + 271 + ], + "unitSystem": [ + 282 + ], + "__typename": [ + 271 + ] + }, + "CountryCode": {}, + "CreditCard": { + "brand": [ + 271 + ], + "expiryMonth": [ + 161 + ], + "expiryYear": [ + 161 + ], + "firstDigits": [ + 271 + ], + "firstName": [ + 271 + ], + "lastDigits": [ + 271 + ], + "lastName": [ + 271 + ], + "maskedNumber": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "CreditCardPaymentInputV2": { + "paymentAmount": [ + 199 + ], + "idempotencyKey": [ + 271 + ], + "billingAddress": [ + 174 + ], + "vaultId": [ + 271 + ], + "test": [ + 15 + ], + "__typename": [ + 271 + ] + }, + "CropRegion": {}, + "Currency": { + "isoCode": [ + 99 + ], + "name": [ + 271 + ], + "symbol": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "CurrencyCode": {}, + "Customer": { + "acceptsMarketing": [ + 15 + ], + "addresses": [ + 172, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ] + } + ], + "createdAt": [ + 124 + ], + "defaultAddress": [ + 171 + ], + "displayName": [ + 271 + ], + "email": [ + 271 + ], + "firstName": [ + 271 + ], + "id": [ + 155 + ], + "lastIncompleteCheckout": [ + 54 + ], + "lastName": [ + 271 + ], + "metafield": [ + 186, + { + "namespace": [ + 271, + "String!" + ], + "key": [ + 271, + "String!" + ] + } + ], + "metafields": [ + 186, + { + "identifiers": [ + 154, + "[HasMetafieldsIdentifier!]!" + ] + } + ], + "numberOfOrders": [ + 283 + ], + "orders": [ + 206, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ], + "sortKey": [ + 213 + ], + "query": [ + 271 + ] + } + ], + "phone": [ + 271 + ], + "tags": [ + 271 + ], + "updatedAt": [ + 124 + ], + "__typename": [ + 271 + ] + }, + "CustomerAccessToken": { + "accessToken": [ + 271 + ], + "expiresAt": [ + 124 + ], + "__typename": [ + 271 + ] + }, + "CustomerAccessTokenCreateInput": { + "email": [ + 271 + ], + "password": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "CustomerAccessTokenCreatePayload": { + "customerAccessToken": [ + 101 + ], + "customerUserErrors": [ + 123 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CustomerAccessTokenCreateWithMultipassPayload": { + "customerAccessToken": [ + 101 + ], + "customerUserErrors": [ + 123 + ], + "__typename": [ + 271 + ] + }, + "CustomerAccessTokenDeletePayload": { + "deletedAccessToken": [ + 271 + ], + "deletedCustomerAccessTokenId": [ + 271 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CustomerAccessTokenRenewPayload": { + "customerAccessToken": [ + 101 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CustomerActivateByUrlPayload": { + "customer": [ + 100 + ], + "customerAccessToken": [ + 101 + ], + "customerUserErrors": [ + 123 + ], + "__typename": [ + 271 + ] + }, + "CustomerActivateInput": { + "activationToken": [ + 271 + ], + "password": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "CustomerActivatePayload": { + "customer": [ + 100 + ], + "customerAccessToken": [ + 101 + ], + "customerUserErrors": [ + 123 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CustomerAddressCreatePayload": { + "customerAddress": [ + 171 + ], + "customerUserErrors": [ + 123 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CustomerAddressDeletePayload": { + "customerUserErrors": [ + 123 + ], + "deletedCustomerAddressId": [ + 271 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CustomerAddressUpdatePayload": { + "customerAddress": [ + 171 + ], + "customerUserErrors": [ + 123 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CustomerCreateInput": { + "firstName": [ + 271 + ], + "lastName": [ + 271 + ], + "email": [ + 271 + ], + "phone": [ + 271 + ], + "password": [ + 271 + ], + "acceptsMarketing": [ + 15 + ], + "__typename": [ + 271 + ] + }, + "CustomerCreatePayload": { + "customer": [ + 100 + ], + "customerUserErrors": [ + 123 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CustomerDefaultAddressUpdatePayload": { + "customer": [ + 100 + ], + "customerUserErrors": [ + 123 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CustomerErrorCode": {}, + "CustomerRecoverPayload": { + "customerUserErrors": [ + 123 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CustomerResetByUrlPayload": { + "customer": [ + 100 + ], + "customerAccessToken": [ + 101 + ], + "customerUserErrors": [ + 123 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CustomerResetInput": { + "resetToken": [ + 271 + ], + "password": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "CustomerResetPayload": { + "customer": [ + 100 + ], + "customerAccessToken": [ + 101 + ], + "customerUserErrors": [ + 123 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CustomerUpdateInput": { + "firstName": [ + 271 + ], + "lastName": [ + 271 + ], + "email": [ + 271 + ], + "phone": [ + 271 + ], + "password": [ + 271 + ], + "acceptsMarketing": [ + 15 + ], + "__typename": [ + 271 + ] + }, + "CustomerUpdatePayload": { + "customer": [ + 100 + ], + "customerAccessToken": [ + 101 + ], + "customerUserErrors": [ + 123 + ], + "userErrors": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "CustomerUserError": { + "code": [ + 116 + ], + "field": [ + 271 + ], + "message": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "DateTime": {}, + "Decimal": {}, + "DeliveryAddress": { + "on_MailingAddress": [ + 171 + ], + "on_Node": [ + 202 + ], + "__typename": [ + 271 + ] + }, + "DeliveryAddressInput": { + "deliveryAddress": [ + 174 + ], + "__typename": [ + 271 + ] + }, + "DeliveryMethodType": {}, + "DigitalWallet": {}, + "DiscountAllocation": { + "allocatedAmount": [ + 200 + ], + "discountApplication": [ + 131 + ], + "__typename": [ + 271 + ] + }, + "DiscountApplication": { + "allocationMethod": [ + 132 + ], + "targetSelection": [ + 135 + ], + "targetType": [ + 136 + ], + "value": [ + 224 + ], + "on_AutomaticDiscountApplication": [ + 9 + ], + "on_DiscountCodeApplication": [ + 137 + ], + "on_ManualDiscountApplication": [ + 175 + ], + "on_ScriptDiscountApplication": [ + 240 + ], + "__typename": [ + 271 + ] + }, + "DiscountApplicationAllocationMethod": {}, + "DiscountApplicationConnection": { + "edges": [ + 134 + ], + "nodes": [ + 131 + ], + "pageInfo": [ + 217 + ], + "__typename": [ + 271 + ] + }, + "DiscountApplicationEdge": { + "cursor": [ + 271 + ], + "node": [ + 131 + ], + "__typename": [ + 271 + ] + }, + "DiscountApplicationTargetSelection": {}, + "DiscountApplicationTargetType": {}, + "DiscountCodeApplication": { + "allocationMethod": [ + 132 + ], + "applicable": [ + 15 + ], + "code": [ + 271 + ], + "targetSelection": [ + 135 + ], + "targetType": [ + 136 + ], + "value": [ + 224 + ], + "__typename": [ + 271 + ] + }, + "DisplayableError": { + "field": [ + 271 + ], + "message": [ + 271 + ], + "on_CartUserError": [ + 53 + ], + "on_CheckoutUserError": [ + 83 + ], + "on_CustomerUserError": [ + 123 + ], + "on_UserError": [ + 287 + ], + "__typename": [ + 271 + ] + }, + "Domain": { + "host": [ + 271 + ], + "sslEnabled": [ + 15 + ], + "url": [ + 278 + ], + "__typename": [ + 271 + ] + }, + "ExternalVideo": { + "alt": [ + 271 + ], + "embedUrl": [ + 278 + ], + "embeddedUrl": [ + 278 + ], + "host": [ + 180 + ], + "id": [ + 155 + ], + "mediaContentType": [ + 178 + ], + "originUrl": [ + 278 + ], + "previewImage": [ + 156 + ], + "__typename": [ + 271 + ] + }, + "Filter": { + "id": [ + 271 + ], + "label": [ + 271 + ], + "type": [ + 142 + ], + "values": [ + 143 + ], + "__typename": [ + 271 + ] + }, + "FilterType": {}, + "FilterValue": { + "count": [ + 161 + ], + "id": [ + 271 + ], + "input": [ + 162 + ], + "label": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "Float": {}, + "Fulfillment": { + "fulfillmentLineItems": [ + 147, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ] + } + ], + "trackingCompany": [ + 271 + ], + "trackingInfo": [ + 149, + { + "first": [ + 161 + ] + } + ], + "__typename": [ + 271 + ] + }, + "FulfillmentLineItem": { + "lineItem": [ + 210 + ], + "quantity": [ + 161 + ], + "__typename": [ + 271 + ] + }, + "FulfillmentLineItemConnection": { + "edges": [ + 148 + ], + "nodes": [ + 146 + ], + "pageInfo": [ + 217 + ], + "__typename": [ + 271 + ] + }, + "FulfillmentLineItemEdge": { + "cursor": [ + 271 + ], + "node": [ + 146 + ], + "__typename": [ + 271 + ] + }, + "FulfillmentTrackingInfo": { + "number": [ + 271 + ], + "url": [ + 278 + ], + "__typename": [ + 271 + ] + }, + "GenericFile": { + "alt": [ + 271 + ], + "id": [ + 155 + ], + "mimeType": [ + 271 + ], + "originalFileSize": [ + 161 + ], + "previewImage": [ + 156 + ], + "url": [ + 278 + ], + "__typename": [ + 271 + ] + }, + "GeoCoordinateInput": { + "latitude": [ + 144 + ], + "longitude": [ + 144 + ], + "__typename": [ + 271 + ] + }, + "HTML": {}, + "HasMetafields": { + "metafield": [ + 186, + { + "namespace": [ + 271, + "String!" + ], + "key": [ + 271, + "String!" + ] + } + ], + "metafields": [ + 186, + { + "identifiers": [ + 154, + "[HasMetafieldsIdentifier!]!" + ] + } + ], + "on_Article": [ + 2 + ], + "on_Blog": [ + 11 + ], + "on_Collection": [ + 84 + ], + "on_Customer": [ + 100 + ], + "on_Order": [ + 204 + ], + "on_Page": [ + 214 + ], + "on_Product": [ + 225 + ], + "on_ProductVariant": [ + 235 + ], + "on_Shop": [ + 265 + ], + "__typename": [ + 271 + ] + }, + "HasMetafieldsIdentifier": { + "namespace": [ + 271 + ], + "key": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "ID": {}, + "Image": { + "altText": [ + 271 + ], + "height": [ + 161 + ], + "id": [ + 155 + ], + "originalSrc": [ + 278 + ], + "src": [ + 278 + ], + "transformedSrc": [ + 278, + { + "maxWidth": [ + 161 + ], + "maxHeight": [ + 161 + ], + "crop": [ + 97 + ], + "scale": [ + 161 + ], + "preferredContentType": [ + 158 + ] + } + ], + "url": [ + 278, + { + "transform": [ + 160 + ] + } + ], + "width": [ + 161 + ], + "__typename": [ + 271 + ] + }, + "ImageConnection": { + "edges": [ + 159 + ], + "nodes": [ + 156 + ], + "pageInfo": [ + 217 + ], + "__typename": [ + 271 + ] + }, + "ImageContentType": {}, + "ImageEdge": { + "cursor": [ + 271 + ], + "node": [ + 156 + ], + "__typename": [ + 271 + ] + }, + "ImageTransformInput": { + "crop": [ + 97 + ], + "maxWidth": [ + 161 + ], + "maxHeight": [ + 161 + ], + "scale": [ + 161 + ], + "preferredContentType": [ + 158 + ], + "__typename": [ + 271 + ] + }, + "Int": {}, + "JSON": {}, + "Language": { + "endonymName": [ + 271 + ], + "isoCode": [ + 164 + ], + "name": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "LanguageCode": {}, + "Localization": { + "availableCountries": [ + 93 + ], + "availableLanguages": [ + 163 + ], + "country": [ + 93 + ], + "language": [ + 163 + ], + "__typename": [ + 271 + ] + }, + "Location": { + "address": [ + 167 + ], + "id": [ + 155 + ], + "name": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "LocationAddress": { + "address1": [ + 271 + ], + "address2": [ + 271 + ], + "city": [ + 271 + ], + "country": [ + 271 + ], + "countryCode": [ + 271 + ], + "formatted": [ + 271 + ], + "latitude": [ + 144 + ], + "longitude": [ + 144 + ], + "phone": [ + 271 + ], + "province": [ + 271 + ], + "provinceCode": [ + 271 + ], + "zip": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "LocationConnection": { + "edges": [ + 169 + ], + "nodes": [ + 166 + ], + "pageInfo": [ + 217 + ], + "__typename": [ + 271 + ] + }, + "LocationEdge": { + "cursor": [ + 271 + ], + "node": [ + 166 + ], + "__typename": [ + 271 + ] + }, + "LocationSortKeys": {}, + "MailingAddress": { + "address1": [ + 271 + ], + "address2": [ + 271 + ], + "city": [ + 271 + ], + "company": [ + 271 + ], + "country": [ + 271 + ], + "countryCode": [ + 271 + ], + "countryCodeV2": [ + 94 + ], + "firstName": [ + 271 + ], + "formatted": [ + 271, + { + "withName": [ + 15 + ], + "withCompany": [ + 15 + ] + } + ], + "formattedArea": [ + 271 + ], + "id": [ + 155 + ], + "lastName": [ + 271 + ], + "latitude": [ + 144 + ], + "longitude": [ + 144 + ], + "name": [ + 271 + ], + "phone": [ + 271 + ], + "province": [ + 271 + ], + "provinceCode": [ + 271 + ], + "zip": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "MailingAddressConnection": { + "edges": [ + 173 + ], + "nodes": [ + 171 + ], + "pageInfo": [ + 217 + ], + "__typename": [ + 271 + ] + }, + "MailingAddressEdge": { + "cursor": [ + 271 + ], + "node": [ + 171 + ], + "__typename": [ + 271 + ] + }, + "MailingAddressInput": { + "address1": [ + 271 + ], + "address2": [ + 271 + ], + "city": [ + 271 + ], + "company": [ + 271 + ], + "country": [ + 271 + ], + "firstName": [ + 271 + ], + "lastName": [ + 271 + ], + "phone": [ + 271 + ], + "province": [ + 271 + ], + "zip": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "ManualDiscountApplication": { + "allocationMethod": [ + 132 + ], + "description": [ + 271 + ], + "targetSelection": [ + 135 + ], + "targetType": [ + 136 + ], + "title": [ + 271 + ], + "value": [ + 224 + ], + "__typename": [ + 271 + ] + }, + "Media": { + "alt": [ + 271 + ], + "mediaContentType": [ + 178 + ], + "previewImage": [ + 156 + ], + "on_ExternalVideo": [ + 140 + ], + "on_MediaImage": [ + 181 + ], + "on_Model3d": [ + 197 + ], + "on_Video": [ + 289 + ], + "__typename": [ + 271 + ] + }, + "MediaConnection": { + "edges": [ + 179 + ], + "nodes": [ + 176 + ], + "pageInfo": [ + 217 + ], + "__typename": [ + 271 + ] + }, + "MediaContentType": {}, + "MediaEdge": { + "cursor": [ + 271 + ], + "node": [ + 176 + ], + "__typename": [ + 271 + ] + }, + "MediaHost": {}, + "MediaImage": { + "alt": [ + 271 + ], + "id": [ + 155 + ], + "image": [ + 156 + ], + "mediaContentType": [ + 178 + ], + "previewImage": [ + 156 + ], + "__typename": [ + 271 + ] + }, + "Menu": { + "handle": [ + 271 + ], + "id": [ + 155 + ], + "items": [ + 183 + ], + "itemsCount": [ + 161 + ], + "title": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "MenuItem": { + "id": [ + 155 + ], + "items": [ + 183 + ], + "resourceId": [ + 155 + ], + "tags": [ + 271 + ], + "title": [ + 271 + ], + "type": [ + 184 + ], + "url": [ + 278 + ], + "__typename": [ + 271 + ] + }, + "MenuItemType": {}, + "Merchandise": { + "on_ProductVariant": [ + 235 + ], + "on_HasMetafields": [ + 153 + ], + "on_Node": [ + 202 + ], + "__typename": [ + 271 + ] + }, + "Metafield": { + "createdAt": [ + 124 + ], + "description": [ + 271 + ], + "id": [ + 155 + ], + "key": [ + 271 + ], + "namespace": [ + 271 + ], + "parentResource": [ + 188 + ], + "reference": [ + 189 + ], + "references": [ + 190, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ] + } + ], + "type": [ + 271 + ], + "updatedAt": [ + 124 + ], + "value": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "MetafieldFilter": { + "namespace": [ + 271 + ], + "key": [ + 271 + ], + "value": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "MetafieldParentResource": { + "on_Article": [ + 2 + ], + "on_Blog": [ + 11 + ], + "on_Collection": [ + 84 + ], + "on_Customer": [ + 100 + ], + "on_Order": [ + 204 + ], + "on_Page": [ + 214 + ], + "on_Product": [ + 225 + ], + "on_ProductVariant": [ + 235 + ], + "on_Shop": [ + 265 + ], + "on_HasMetafields": [ + 153 + ], + "on_Node": [ + 202 + ], + "on_OnlineStorePublishable": [ + 203 + ], + "__typename": [ + 271 + ] + }, + "MetafieldReference": { + "on_Collection": [ + 84 + ], + "on_GenericFile": [ + 150 + ], + "on_MediaImage": [ + 181 + ], + "on_Metaobject": [ + 192 + ], + "on_Page": [ + 214 + ], + "on_Product": [ + 225 + ], + "on_ProductVariant": [ + 235 + ], + "on_Video": [ + 289 + ], + "on_HasMetafields": [ + 153 + ], + "on_Node": [ + 202 + ], + "on_OnlineStorePublishable": [ + 203 + ], + "on_Media": [ + 176 + ], + "__typename": [ + 271 + ] + }, + "MetafieldReferenceConnection": { + "edges": [ + 191 + ], + "nodes": [ + 189 + ], + "pageInfo": [ + 217 + ], + "__typename": [ + 271 + ] + }, + "MetafieldReferenceEdge": { + "cursor": [ + 271 + ], + "node": [ + 189 + ], + "__typename": [ + 271 + ] + }, + "Metaobject": { + "field": [ + 195, + { + "key": [ + 271, + "String!" + ] + } + ], + "fields": [ + 195 + ], + "handle": [ + 271 + ], + "id": [ + 155 + ], + "type": [ + 271 + ], + "updatedAt": [ + 124 + ], + "__typename": [ + 271 + ] + }, + "MetaobjectConnection": { + "edges": [ + 194 + ], + "nodes": [ + 192 + ], + "pageInfo": [ + 217 + ], + "__typename": [ + 271 + ] + }, + "MetaobjectEdge": { + "cursor": [ + 271 + ], + "node": [ + 192 + ], + "__typename": [ + 271 + ] + }, + "MetaobjectField": { + "key": [ + 271 + ], + "reference": [ + 189 + ], + "references": [ + 190, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ] + } + ], + "type": [ + 271 + ], + "value": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "MetaobjectHandleInput": { + "handle": [ + 271 + ], + "type": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "Model3d": { + "alt": [ + 271 + ], + "id": [ + 155 + ], + "mediaContentType": [ + 178 + ], + "previewImage": [ + 156 + ], + "sources": [ + 198 + ], + "__typename": [ + 271 + ] + }, + "Model3dSource": { + "filesize": [ + 161 + ], + "format": [ + 271 + ], + "mimeType": [ + 271 + ], + "url": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "MoneyInput": { + "amount": [ + 125 + ], + "currencyCode": [ + 99 + ], + "__typename": [ + 271 + ] + }, + "MoneyV2": { + "amount": [ + 125 + ], + "currencyCode": [ + 99 + ], + "__typename": [ + 271 + ] + }, + "Mutation": { + "cartAttributesUpdate": [ + 21, + { + "attributes": [ + 8, + "[AttributeInput!]!" + ], + "cartId": [ + 155, + "ID!" + ] + } + ], + "cartBuyerIdentityUpdate": [ + 25, + { + "cartId": [ + 155, + "ID!" + ], + "buyerIdentity": [ + 24, + "CartBuyerIdentityInput!" + ] + } + ], + "cartCreate": [ + 28, + { + "input": [ + 39 + ] + } + ], + "cartDiscountCodesUpdate": [ + 36, + { + "cartId": [ + 155, + "ID!" + ], + "discountCodes": [ + 271, + "[String!]" + ] + } + ], + "cartLinesAdd": [ + 47, + { + "lines": [ + 45, + "[CartLineInput!]!" + ], + "cartId": [ + 155, + "ID!" + ] + } + ], + "cartLinesRemove": [ + 48, + { + "cartId": [ + 155, + "ID!" + ], + "lineIds": [ + 155, + "[ID!]!" + ] + } + ], + "cartLinesUpdate": [ + 49, + { + "cartId": [ + 155, + "ID!" + ], + "lines": [ + 46, + "[CartLineUpdateInput!]!" + ] + } + ], + "cartNoteUpdate": [ + 50, + { + "cartId": [ + 155, + "ID!" + ], + "note": [ + 271 + ] + } + ], + "cartSelectedDeliveryOptionsUpdate": [ + 52, + { + "cartId": [ + 155, + "ID!" + ], + "selectedDeliveryOptions": [ + 51, + "[CartSelectedDeliveryOptionInput!]!" + ] + } + ], + "checkoutAttributesUpdateV2": [ + 56, + { + "checkoutId": [ + 155, + "ID!" + ], + "input": [ + 55, + "CheckoutAttributesUpdateV2Input!" + ] + } + ], + "checkoutCompleteFree": [ + 59, + { + "checkoutId": [ + 155, + "ID!" + ] + } + ], + "checkoutCompleteWithCreditCardV2": [ + 60, + { + "checkoutId": [ + 155, + "ID!" + ], + "payment": [ + 96, + "CreditCardPaymentInputV2!" + ] + } + ], + "checkoutCompleteWithTokenizedPaymentV3": [ + 61, + { + "checkoutId": [ + 155, + "ID!" + ], + "payment": [ + 274, + "TokenizedPaymentInputV3!" + ] + } + ], + "checkoutCreate": [ + 63, + { + "input": [ + 62, + "CheckoutCreateInput!" + ], + "queueToken": [ + 271 + ] + } + ], + "checkoutCustomerAssociateV2": [ + 64, + { + "checkoutId": [ + 155, + "ID!" + ], + "customerAccessToken": [ + 271, + "String!" + ] + } + ], + "checkoutCustomerDisassociateV2": [ + 65, + { + "checkoutId": [ + 155, + "ID!" + ] + } + ], + "checkoutDiscountCodeApplyV2": [ + 66, + { + "discountCode": [ + 271, + "String!" + ], + "checkoutId": [ + 155, + "ID!" + ] + } + ], + "checkoutDiscountCodeRemove": [ + 67, + { + "checkoutId": [ + 155, + "ID!" + ] + } + ], + "checkoutEmailUpdateV2": [ + 68, + { + "checkoutId": [ + 155, + "ID!" + ], + "email": [ + 271, + "String!" + ] + } + ], + "checkoutGiftCardRemoveV2": [ + 70, + { + "appliedGiftCardId": [ + 155, + "ID!" + ], + "checkoutId": [ + 155, + "ID!" + ] + } + ], + "checkoutGiftCardsAppend": [ + 71, + { + "giftCardCodes": [ + 271, + "[String!]!" + ], + "checkoutId": [ + 155, + "ID!" + ] + } + ], + "checkoutLineItemsAdd": [ + 77, + { + "lineItems": [ + 75, + "[CheckoutLineItemInput!]!" + ], + "checkoutId": [ + 155, + "ID!" + ] + } + ], + "checkoutLineItemsRemove": [ + 78, + { + "checkoutId": [ + 155, + "ID!" + ], + "lineItemIds": [ + 155, + "[ID!]!" + ] + } + ], + "checkoutLineItemsReplace": [ + 79, + { + "lineItems": [ + 75, + "[CheckoutLineItemInput!]!" + ], + "checkoutId": [ + 155, + "ID!" + ] + } + ], + "checkoutLineItemsUpdate": [ + 80, + { + "checkoutId": [ + 155, + "ID!" + ], + "lineItems": [ + 76, + "[CheckoutLineItemUpdateInput!]!" + ] + } + ], + "checkoutShippingAddressUpdateV2": [ + 81, + { + "shippingAddress": [ + 174, + "MailingAddressInput!" + ], + "checkoutId": [ + 155, + "ID!" + ] + } + ], + "checkoutShippingLineUpdate": [ + 82, + { + "checkoutId": [ + 155, + "ID!" + ], + "shippingRateHandle": [ + 271, + "String!" + ] + } + ], + "customerAccessTokenCreate": [ + 103, + { + "input": [ + 102, + "CustomerAccessTokenCreateInput!" + ] + } + ], + "customerAccessTokenCreateWithMultipass": [ + 104, + { + "multipassToken": [ + 271, + "String!" + ] + } + ], + "customerAccessTokenDelete": [ + 105, + { + "customerAccessToken": [ + 271, + "String!" + ] + } + ], + "customerAccessTokenRenew": [ + 106, + { + "customerAccessToken": [ + 271, + "String!" + ] + } + ], + "customerActivate": [ + 109, + { + "id": [ + 155, + "ID!" + ], + "input": [ + 108, + "CustomerActivateInput!" + ] + } + ], + "customerActivateByUrl": [ + 107, + { + "activationUrl": [ + 278, + "URL!" + ], + "password": [ + 271, + "String!" + ] + } + ], + "customerAddressCreate": [ + 110, + { + "customerAccessToken": [ + 271, + "String!" + ], + "address": [ + 174, + "MailingAddressInput!" + ] + } + ], + "customerAddressDelete": [ + 111, + { + "id": [ + 155, + "ID!" + ], + "customerAccessToken": [ + 271, + "String!" + ] + } + ], + "customerAddressUpdate": [ + 112, + { + "customerAccessToken": [ + 271, + "String!" + ], + "id": [ + 155, + "ID!" + ], + "address": [ + 174, + "MailingAddressInput!" + ] + } + ], + "customerCreate": [ + 114, + { + "input": [ + 113, + "CustomerCreateInput!" + ] + } + ], + "customerDefaultAddressUpdate": [ + 115, + { + "customerAccessToken": [ + 271, + "String!" + ], + "addressId": [ + 155, + "ID!" + ] + } + ], + "customerRecover": [ + 117, + { + "email": [ + 271, + "String!" + ] + } + ], + "customerReset": [ + 120, + { + "id": [ + 155, + "ID!" + ], + "input": [ + 119, + "CustomerResetInput!" + ] + } + ], + "customerResetByUrl": [ + 118, + { + "resetUrl": [ + 278, + "URL!" + ], + "password": [ + 271, + "String!" + ] + } + ], + "customerUpdate": [ + 122, + { + "customerAccessToken": [ + 271, + "String!" + ], + "customer": [ + 121, + "CustomerUpdateInput!" + ] + } + ], + "__typename": [ + 271 + ] + }, + "Node": { + "id": [ + 155 + ], + "on_AppliedGiftCard": [ + 1 + ], + "on_Article": [ + 2 + ], + "on_Blog": [ + 11 + ], + "on_Cart": [ + 20 + ], + "on_CartLine": [ + 40 + ], + "on_Checkout": [ + 54 + ], + "on_CheckoutLineItem": [ + 72 + ], + "on_Collection": [ + 84 + ], + "on_Comment": [ + 89 + ], + "on_ExternalVideo": [ + 140 + ], + "on_GenericFile": [ + 150 + ], + "on_Location": [ + 166 + ], + "on_MailingAddress": [ + 171 + ], + "on_MediaImage": [ + 181 + ], + "on_Menu": [ + 182 + ], + "on_MenuItem": [ + 183 + ], + "on_Metafield": [ + 186 + ], + "on_Metaobject": [ + 192 + ], + "on_Model3d": [ + 197 + ], + "on_Order": [ + 204 + ], + "on_Page": [ + 214 + ], + "on_Payment": [ + 219 + ], + "on_Product": [ + 225 + ], + "on_ProductOption": [ + 232 + ], + "on_ProductVariant": [ + 235 + ], + "on_Shop": [ + 265 + ], + "on_ShopPolicy": [ + 266 + ], + "on_UrlRedirect": [ + 284 + ], + "on_Video": [ + 289 + ], + "__typename": [ + 271 + ] + }, + "OnlineStorePublishable": { + "onlineStoreUrl": [ + 278 + ], + "on_Article": [ + 2 + ], + "on_Blog": [ + 11 + ], + "on_Collection": [ + 84 + ], + "on_Page": [ + 214 + ], + "on_Product": [ + 225 + ], + "__typename": [ + 271 + ] + }, + "Order": { + "cancelReason": [ + 205 + ], + "canceledAt": [ + 124 + ], + "currencyCode": [ + 99 + ], + "currentSubtotalPrice": [ + 200 + ], + "currentTotalDuties": [ + 200 + ], + "currentTotalPrice": [ + 200 + ], + "currentTotalTax": [ + 200 + ], + "customAttributes": [ + 7 + ], + "customerLocale": [ + 271 + ], + "customerUrl": [ + 278 + ], + "discountApplications": [ + 133, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ] + } + ], + "edited": [ + 15 + ], + "email": [ + 271 + ], + "financialStatus": [ + 208 + ], + "fulfillmentStatus": [ + 209 + ], + "id": [ + 155 + ], + "lineItems": [ + 211, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ] + } + ], + "metafield": [ + 186, + { + "namespace": [ + 271, + "String!" + ], + "key": [ + 271, + "String!" + ] + } + ], + "metafields": [ + 186, + { + "identifiers": [ + 154, + "[HasMetafieldsIdentifier!]!" + ] + } + ], + "name": [ + 271 + ], + "orderNumber": [ + 161 + ], + "originalTotalDuties": [ + 200 + ], + "originalTotalPrice": [ + 200 + ], + "phone": [ + 271 + ], + "processedAt": [ + 124 + ], + "shippingAddress": [ + 171 + ], + "shippingDiscountAllocations": [ + 130 + ], + "statusUrl": [ + 278 + ], + "subtotalPrice": [ + 200 + ], + "subtotalPriceV2": [ + 200 + ], + "successfulFulfillments": [ + 145, + { + "first": [ + 161 + ] + } + ], + "totalPrice": [ + 200 + ], + "totalPriceV2": [ + 200 + ], + "totalRefunded": [ + 200 + ], + "totalRefundedV2": [ + 200 + ], + "totalShippingPrice": [ + 200 + ], + "totalShippingPriceV2": [ + 200 + ], + "totalTax": [ + 200 + ], + "totalTaxV2": [ + 200 + ], + "__typename": [ + 271 + ] + }, + "OrderCancelReason": {}, + "OrderConnection": { + "edges": [ + 207 + ], + "nodes": [ + 204 + ], + "pageInfo": [ + 217 + ], + "totalCount": [ + 283 + ], + "__typename": [ + 271 + ] + }, + "OrderEdge": { + "cursor": [ + 271 + ], + "node": [ + 204 + ], + "__typename": [ + 271 + ] + }, + "OrderFinancialStatus": {}, + "OrderFulfillmentStatus": {}, + "OrderLineItem": { + "currentQuantity": [ + 161 + ], + "customAttributes": [ + 7 + ], + "discountAllocations": [ + 130 + ], + "discountedTotalPrice": [ + 200 + ], + "originalTotalPrice": [ + 200 + ], + "quantity": [ + 161 + ], + "title": [ + 271 + ], + "variant": [ + 235 + ], + "__typename": [ + 271 + ] + }, + "OrderLineItemConnection": { + "edges": [ + 212 + ], + "nodes": [ + 210 + ], + "pageInfo": [ + 217 + ], + "__typename": [ + 271 + ] + }, + "OrderLineItemEdge": { + "cursor": [ + 271 + ], + "node": [ + 210 + ], + "__typename": [ + 271 + ] + }, + "OrderSortKeys": {}, + "Page": { + "body": [ + 152 + ], + "bodySummary": [ + 271 + ], + "createdAt": [ + 124 + ], + "handle": [ + 271 + ], + "id": [ + 155 + ], + "metafield": [ + 186, + { + "namespace": [ + 271, + "String!" + ], + "key": [ + 271, + "String!" + ] + } + ], + "metafields": [ + 186, + { + "identifiers": [ + 154, + "[HasMetafieldsIdentifier!]!" + ] + } + ], + "onlineStoreUrl": [ + 278 + ], + "seo": [ + 239 + ], + "title": [ + 271 + ], + "updatedAt": [ + 124 + ], + "__typename": [ + 271 + ] + }, + "PageConnection": { + "edges": [ + 216 + ], + "nodes": [ + 214 + ], + "pageInfo": [ + 217 + ], + "__typename": [ + 271 + ] + }, + "PageEdge": { + "cursor": [ + 271 + ], + "node": [ + 214 + ], + "__typename": [ + 271 + ] + }, + "PageInfo": { + "endCursor": [ + 271 + ], + "hasNextPage": [ + 15 + ], + "hasPreviousPage": [ + 15 + ], + "startCursor": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "PageSortKeys": {}, + "Payment": { + "amount": [ + 200 + ], + "amountV2": [ + 200 + ], + "billingAddress": [ + 171 + ], + "checkout": [ + 54 + ], + "creditCard": [ + 95 + ], + "errorMessage": [ + 271 + ], + "id": [ + 155 + ], + "idempotencyKey": [ + 271 + ], + "nextActionUrl": [ + 278 + ], + "ready": [ + 15 + ], + "test": [ + 15 + ], + "transaction": [ + 275 + ], + "__typename": [ + 271 + ] + }, + "PaymentSettings": { + "acceptedCardBrands": [ + 19 + ], + "cardVaultUrl": [ + 278 + ], + "countryCode": [ + 94 + ], + "currencyCode": [ + 99 + ], + "enabledPresentmentCurrencies": [ + 99 + ], + "shopifyPaymentsAccountId": [ + 271 + ], + "supportedDigitalWallets": [ + 129 + ], + "__typename": [ + 271 + ] + }, + "PaymentTokenType": {}, + "PriceRangeFilter": { + "min": [ + 144 + ], + "max": [ + 144 + ], + "__typename": [ + 271 + ] + }, + "PricingPercentageValue": { + "percentage": [ + 144 + ], + "__typename": [ + 271 + ] + }, + "PricingValue": { + "on_MoneyV2": [ + 200 + ], + "on_PricingPercentageValue": [ + 223 + ], + "__typename": [ + 271 + ] + }, + "Product": { + "availableForSale": [ + 15 + ], + "collections": [ + 85, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ] + } + ], + "compareAtPriceRange": [ + 233 + ], + "createdAt": [ + 124 + ], + "description": [ + 271, + { + "truncateAt": [ + 161 + ] + } + ], + "descriptionHtml": [ + 152 + ], + "featuredImage": [ + 156 + ], + "handle": [ + 271 + ], + "id": [ + 155 + ], + "images": [ + 157, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ], + "sortKey": [ + 230 + ] + } + ], + "isGiftCard": [ + 15 + ], + "media": [ + 177, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ], + "sortKey": [ + 231 + ] + } + ], + "metafield": [ + 186, + { + "namespace": [ + 271, + "String!" + ], + "key": [ + 271, + "String!" + ] + } + ], + "metafields": [ + 186, + { + "identifiers": [ + 154, + "[HasMetafieldsIdentifier!]!" + ] + } + ], + "onlineStoreUrl": [ + 278 + ], + "options": [ + 232, + { + "first": [ + 161 + ] + } + ], + "priceRange": [ + 233 + ], + "productType": [ + 271 + ], + "publishedAt": [ + 124 + ], + "requiresSellingPlan": [ + 15 + ], + "sellingPlanGroups": [ + 257, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ] + } + ], + "seo": [ + 239 + ], + "tags": [ + 271 + ], + "title": [ + 271 + ], + "totalInventory": [ + 161 + ], + "updatedAt": [ + 124 + ], + "variantBySelectedOptions": [ + 235, + { + "selectedOptions": [ + 242, + "[SelectedOptionInput!]!" + ] + } + ], + "variants": [ + 236, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ], + "sortKey": [ + 238 + ] + } + ], + "vendor": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "ProductCollectionSortKeys": {}, + "ProductConnection": { + "edges": [ + 228 + ], + "filters": [ + 141 + ], + "nodes": [ + 225 + ], + "pageInfo": [ + 217 + ], + "__typename": [ + 271 + ] + }, + "ProductEdge": { + "cursor": [ + 271 + ], + "node": [ + 225 + ], + "__typename": [ + 271 + ] + }, + "ProductFilter": { + "available": [ + 15 + ], + "variantOption": [ + 288 + ], + "productType": [ + 271 + ], + "productVendor": [ + 271 + ], + "price": [ + 222 + ], + "productMetafield": [ + 187 + ], + "variantMetafield": [ + 187 + ], + "tag": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "ProductImageSortKeys": {}, + "ProductMediaSortKeys": {}, + "ProductOption": { + "id": [ + 155 + ], + "name": [ + 271 + ], + "values": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "ProductPriceRange": { + "maxVariantPrice": [ + 200 + ], + "minVariantPrice": [ + 200 + ], + "__typename": [ + 271 + ] + }, + "ProductSortKeys": {}, + "ProductVariant": { + "availableForSale": [ + 15 + ], + "barcode": [ + 271 + ], + "compareAtPrice": [ + 200 + ], + "compareAtPriceV2": [ + 200 + ], + "currentlyNotInStock": [ + 15 + ], + "id": [ + 155 + ], + "image": [ + 156 + ], + "metafield": [ + 186, + { + "namespace": [ + 271, + "String!" + ], + "key": [ + 271, + "String!" + ] + } + ], + "metafields": [ + 186, + { + "identifiers": [ + 154, + "[HasMetafieldsIdentifier!]!" + ] + } + ], + "price": [ + 200 + ], + "priceV2": [ + 200 + ], + "product": [ + 225 + ], + "quantityAvailable": [ + 161 + ], + "requiresShipping": [ + 15 + ], + "selectedOptions": [ + 241 + ], + "sellingPlanAllocations": [ + 245, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ] + } + ], + "sku": [ + 271 + ], + "storeAvailability": [ + 269, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ], + "near": [ + 151 + ] + } + ], + "title": [ + 271 + ], + "unitPrice": [ + 200 + ], + "unitPriceMeasurement": [ + 279 + ], + "weight": [ + 144 + ], + "weightUnit": [ + 291 + ], + "__typename": [ + 271 + ] + }, + "ProductVariantConnection": { + "edges": [ + 237 + ], + "nodes": [ + 235 + ], + "pageInfo": [ + 217 + ], + "__typename": [ + 271 + ] + }, + "ProductVariantEdge": { + "cursor": [ + 271 + ], + "node": [ + 235 + ], + "__typename": [ + 271 + ] + }, + "ProductVariantSortKeys": {}, + "SEO": { + "description": [ + 271 + ], + "title": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "ScriptDiscountApplication": { + "allocationMethod": [ + 132 + ], + "targetSelection": [ + 135 + ], + "targetType": [ + 136 + ], + "title": [ + 271 + ], + "value": [ + 224 + ], + "__typename": [ + 271 + ] + }, + "SelectedOption": { + "name": [ + 271 + ], + "value": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "SelectedOptionInput": { + "name": [ + 271 + ], + "value": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "SellingPlan": { + "checkoutCharge": [ + 248 + ], + "description": [ + 271 + ], + "id": [ + 155 + ], + "name": [ + 271 + ], + "options": [ + 260 + ], + "priceAdjustments": [ + 262 + ], + "recurringDeliveries": [ + 15 + ], + "__typename": [ + 271 + ] + }, + "SellingPlanAllocation": { + "checkoutChargeAmount": [ + 200 + ], + "priceAdjustments": [ + 247 + ], + "remainingBalanceChargeAmount": [ + 200 + ], + "sellingPlan": [ + 243 + ], + "__typename": [ + 271 + ] + }, + "SellingPlanAllocationConnection": { + "edges": [ + 246 + ], + "nodes": [ + 244 + ], + "pageInfo": [ + 217 + ], + "__typename": [ + 271 + ] + }, + "SellingPlanAllocationEdge": { + "cursor": [ + 271 + ], + "node": [ + 244 + ], + "__typename": [ + 271 + ] + }, + "SellingPlanAllocationPriceAdjustment": { + "compareAtPrice": [ + 200 + ], + "perDeliveryPrice": [ + 200 + ], + "price": [ + 200 + ], + "unitPrice": [ + 200 + ], + "__typename": [ + 271 + ] + }, + "SellingPlanCheckoutCharge": { + "type": [ + 250 + ], + "value": [ + 251 + ], + "__typename": [ + 271 + ] + }, + "SellingPlanCheckoutChargePercentageValue": { + "percentage": [ + 144 + ], + "__typename": [ + 271 + ] + }, + "SellingPlanCheckoutChargeType": {}, + "SellingPlanCheckoutChargeValue": { + "on_MoneyV2": [ + 200 + ], + "on_SellingPlanCheckoutChargePercentageValue": [ + 249 + ], + "__typename": [ + 271 + ] + }, + "SellingPlanConnection": { + "edges": [ + 253 + ], + "nodes": [ + 243 + ], + "pageInfo": [ + 217 + ], + "__typename": [ + 271 + ] + }, + "SellingPlanEdge": { + "cursor": [ + 271 + ], + "node": [ + 243 + ], + "__typename": [ + 271 + ] + }, + "SellingPlanFixedAmountPriceAdjustment": { + "adjustmentAmount": [ + 200 + ], + "__typename": [ + 271 + ] + }, + "SellingPlanFixedPriceAdjustment": { + "price": [ + 200 + ], + "__typename": [ + 271 + ] + }, + "SellingPlanGroup": { + "appName": [ + 271 + ], + "name": [ + 271 + ], + "options": [ + 259 + ], + "sellingPlans": [ + 252, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ] + } + ], + "__typename": [ + 271 + ] + }, + "SellingPlanGroupConnection": { + "edges": [ + 258 + ], + "nodes": [ + 256 + ], + "pageInfo": [ + 217 + ], + "__typename": [ + 271 + ] + }, + "SellingPlanGroupEdge": { + "cursor": [ + 271 + ], + "node": [ + 256 + ], + "__typename": [ + 271 + ] + }, + "SellingPlanGroupOption": { + "name": [ + 271 + ], + "values": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "SellingPlanOption": { + "name": [ + 271 + ], + "value": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "SellingPlanPercentagePriceAdjustment": { + "adjustmentPercentage": [ + 161 + ], + "__typename": [ + 271 + ] + }, + "SellingPlanPriceAdjustment": { + "adjustmentValue": [ + 263 + ], + "orderCount": [ + 161 + ], + "__typename": [ + 271 + ] + }, + "SellingPlanPriceAdjustmentValue": { + "on_SellingPlanFixedAmountPriceAdjustment": [ + 254 + ], + "on_SellingPlanFixedPriceAdjustment": [ + 255 + ], + "on_SellingPlanPercentagePriceAdjustment": [ + 261 + ], + "__typename": [ + 271 + ] + }, + "ShippingRate": { + "handle": [ + 271 + ], + "price": [ + 200 + ], + "priceV2": [ + 200 + ], + "title": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "Shop": { + "brand": [ + 16 + ], + "description": [ + 271 + ], + "id": [ + 155 + ], + "metafield": [ + 186, + { + "namespace": [ + 271, + "String!" + ], + "key": [ + 271, + "String!" + ] + } + ], + "metafields": [ + 186, + { + "identifiers": [ + 154, + "[HasMetafieldsIdentifier!]!" + ] + } + ], + "moneyFormat": [ + 271 + ], + "name": [ + 271 + ], + "paymentSettings": [ + 220 + ], + "primaryDomain": [ + 139 + ], + "privacyPolicy": [ + 266 + ], + "refundPolicy": [ + 266 + ], + "shippingPolicy": [ + 266 + ], + "shipsToCountries": [ + 94 + ], + "subscriptionPolicy": [ + 267 + ], + "termsOfService": [ + 266 + ], + "__typename": [ + 271 + ] + }, + "ShopPolicy": { + "body": [ + 271 + ], + "handle": [ + 271 + ], + "id": [ + 155 + ], + "title": [ + 271 + ], + "url": [ + 278 + ], + "__typename": [ + 271 + ] + }, + "ShopPolicyWithDefault": { + "body": [ + 271 + ], + "handle": [ + 271 + ], + "id": [ + 155 + ], + "title": [ + 271 + ], + "url": [ + 278 + ], + "__typename": [ + 271 + ] + }, + "StoreAvailability": { + "available": [ + 15 + ], + "location": [ + 166 + ], + "pickUpTime": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "StoreAvailabilityConnection": { + "edges": [ + 270 + ], + "nodes": [ + 268 + ], + "pageInfo": [ + 217 + ], + "__typename": [ + 271 + ] + }, + "StoreAvailabilityEdge": { + "cursor": [ + 271 + ], + "node": [ + 268 + ], + "__typename": [ + 271 + ] + }, + "String": {}, + "StringConnection": { + "edges": [ + 273 + ], + "pageInfo": [ + 217 + ], + "__typename": [ + 271 + ] + }, + "StringEdge": { + "cursor": [ + 271 + ], + "node": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "TokenizedPaymentInputV3": { + "paymentAmount": [ + 199 + ], + "idempotencyKey": [ + 271 + ], + "billingAddress": [ + 174 + ], + "paymentData": [ + 271 + ], + "test": [ + 15 + ], + "identifier": [ + 271 + ], + "type": [ + 221 + ], + "__typename": [ + 271 + ] + }, + "Transaction": { + "amount": [ + 200 + ], + "amountV2": [ + 200 + ], + "kind": [ + 276 + ], + "status": [ + 277 + ], + "statusV2": [ + 277 + ], + "test": [ + 15 + ], + "__typename": [ + 271 + ] + }, + "TransactionKind": {}, + "TransactionStatus": {}, + "URL": {}, + "UnitPriceMeasurement": { + "measuredType": [ + 280 + ], + "quantityUnit": [ + 281 + ], + "quantityValue": [ + 144 + ], + "referenceUnit": [ + 281 + ], + "referenceValue": [ + 161 + ], + "__typename": [ + 271 + ] + }, + "UnitPriceMeasurementMeasuredType": {}, + "UnitPriceMeasurementMeasuredUnit": {}, + "UnitSystem": {}, + "UnsignedInt64": {}, + "UrlRedirect": { + "id": [ + 155 + ], + "path": [ + 271 + ], + "target": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "UrlRedirectConnection": { + "edges": [ + 286 + ], + "nodes": [ + 284 + ], + "pageInfo": [ + 217 + ], + "__typename": [ + 271 + ] + }, + "UrlRedirectEdge": { + "cursor": [ + 271 + ], + "node": [ + 284 + ], + "__typename": [ + 271 + ] + }, + "UserError": { + "field": [ + 271 + ], + "message": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "VariantOptionFilter": { + "name": [ + 271 + ], + "value": [ + 271 + ], + "__typename": [ + 271 + ] + }, + "Video": { + "alt": [ + 271 + ], + "id": [ + 155 + ], + "mediaContentType": [ + 178 + ], + "previewImage": [ + 156 + ], + "sources": [ + 290 + ], + "__typename": [ + 271 + ] + }, + "VideoSource": { + "format": [ + 271 + ], + "height": [ + 161 + ], + "mimeType": [ + 271 + ], + "url": [ + 271 + ], + "width": [ + 161 + ], + "__typename": [ + 271 + ] + }, + "WeightUnit": {}, + "Query": { + "articles": [ + 4, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ], + "sortKey": [ + 6 + ], + "query": [ + 271 + ] + } + ], + "blog": [ + 11, + { + "id": [ + 155 + ], + "handle": [ + 271 + ] + } + ], + "blogByHandle": [ + 11, + { + "handle": [ + 271, + "String!" + ] + } + ], + "blogs": [ + 12, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ], + "sortKey": [ + 14 + ], + "query": [ + 271 + ] + } + ], + "cart": [ + 20, + { + "id": [ + 155, + "ID!" + ] + } + ], + "collection": [ + 84, + { + "id": [ + 155 + ], + "handle": [ + 271 + ] + } + ], + "collectionByHandle": [ + 84, + { + "handle": [ + 271, + "String!" + ] + } + ], + "collections": [ + 85, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ], + "sortKey": [ + 87 + ], + "query": [ + 271 + ] + } + ], + "customer": [ + 100, + { + "customerAccessToken": [ + 271, + "String!" + ] + } + ], + "localization": [ + 165 + ], + "locations": [ + 168, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ], + "sortKey": [ + 170 + ], + "near": [ + 151 + ] + } + ], + "menu": [ + 182, + { + "handle": [ + 271, + "String!" + ] + } + ], + "metaobject": [ + 192, + { + "id": [ + 155 + ], + "handle": [ + 196 + ] + } + ], + "metaobjects": [ + 193, + { + "type": [ + 271, + "String!" + ], + "sortKey": [ + 271 + ], + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ] + } + ], + "node": [ + 202, + { + "id": [ + 155, + "ID!" + ] + } + ], + "nodes": [ + 202, + { + "ids": [ + 155, + "[ID!]!" + ] + } + ], + "page": [ + 214, + { + "id": [ + 155 + ], + "handle": [ + 271 + ] + } + ], + "pageByHandle": [ + 214, + { + "handle": [ + 271, + "String!" + ] + } + ], + "pages": [ + 215, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ], + "sortKey": [ + 218 + ], + "query": [ + 271 + ] + } + ], + "product": [ + 225, + { + "id": [ + 155 + ], + "handle": [ + 271 + ] + } + ], + "productByHandle": [ + 225, + { + "handle": [ + 271, + "String!" + ] + } + ], + "productRecommendations": [ + 225, + { + "productId": [ + 155, + "ID!" + ] + } + ], + "productTags": [ + 272, + { + "first": [ + 161, + "Int!" + ] + } + ], + "productTypes": [ + 272, + { + "first": [ + 161, + "Int!" + ] + } + ], + "products": [ + 227, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ], + "sortKey": [ + 234 + ], + "query": [ + 271 + ] + } + ], + "publicApiVersions": [ + 0 + ], + "shop": [ + 265 + ], + "urlRedirects": [ + 285, + { + "first": [ + 161 + ], + "after": [ + 271 + ], + "last": [ + 161 + ], + "before": [ + 271 + ], + "reverse": [ + 15 + ], + "query": [ + 271 + ] + } + ], + "__typename": [ + 271 + ] + } + } +} \ No newline at end of file diff --git a/internal/eslint-config-custom/package.json b/internal/eslint-config-custom/package.json index df9b9ab..228a20e 100644 --- a/internal/eslint-config-custom/package.json +++ b/internal/eslint-config-custom/package.json @@ -4,18 +4,18 @@ "main": "index.js", "private": true, "dependencies": { - "@typescript-eslint/eslint-plugin": "^4.33.0", - "@typescript-eslint/parser": "^4.33.0", - "eslint": "^7.23.0", - "eslint-config-next": "^12.0.8", - "eslint-config-prettier": "^8.3.0", - "eslint-import-resolver-typescript": "^2.5.0", - "eslint-plugin-import": "2.25.4", - "eslint-plugin-react": "7.31.8", - "eslint-config-turbo": "latest" + "@typescript-eslint/eslint-plugin": "^5.58.0", + "@typescript-eslint/parser": "^5.58.0", + "eslint": "^8.38.0", + "eslint-config-next": "^13.3.0", + "eslint-config-prettier": "^8.8.0", + "eslint-config-turbo": "latest", + "eslint-import-resolver-typescript": "^3.5.5", + "eslint-plugin-import": "^2.27.5", + "eslint-plugin-react": "^7.32.2" }, "devDependencies": { - "typescript": "^4.7.4" + "typescript": "^4.9.5" }, "publishConfig": { "access": "public" diff --git a/internal/examples-ui/package.json b/internal/examples-ui/package.json index 0a3e3c0..50d7dbb 100644 --- a/internal/examples-ui/package.json +++ b/internal/examples-ui/package.json @@ -22,6 +22,6 @@ "@types/styled-components": "^5.1.26", "styled-components": "^5.3.6", "tsconfig": "*", - "typescript": "^4.8.4" + "typescript": "^4.9.5" } } diff --git a/packages/drop/CHANGELOG.md b/packages/drop/CHANGELOG.md index 9d666d5..da37b92 100644 --- a/packages/drop/CHANGELOG.md +++ b/packages/drop/CHANGELOG.md @@ -1,5 +1,17 @@ # @bsmnt/drop +## 1.2.1 + +### Patch Changes + +- 7be03f0: Migrate from graphql-codegen to Genql, an amazing graphql client generator + +## 1.2.1-next.0 + +### Patch Changes + +- 7be03f0: Migrate from graphql-codegen to Genql, an amazing graphql client generator + ## 1.2.0 ### Minor Changes diff --git a/packages/drop/package.json b/packages/drop/package.json index 1daf061..6da4970 100644 --- a/packages/drop/package.json +++ b/packages/drop/package.json @@ -1,7 +1,7 @@ { "name": "@bsmnt/drop", "author": "basement.studio ", - "version": "1.2.0", + "version": "1.2.1", "main": "./dist/index.js", "module": "./dist/index.mjs", "types": "./dist/index.d.ts", @@ -26,6 +26,6 @@ "tsconfig": "*", "tsup": "^6.2.3", "type-fest": "^3.0.0", - "typescript": "^4.8.4" + "typescript": "^4.9.5" } } diff --git a/packages/hooks/CHANGELOG.md b/packages/hooks/CHANGELOG.md index 9b784f2..20c090d 100644 --- a/packages/hooks/CHANGELOG.md +++ b/packages/hooks/CHANGELOG.md @@ -1,5 +1,11 @@ # @bsmnt/storefront-hooks +## 2.0.2 + +### Patch Changes + +- 7be03f0: Migrate from graphql-codegen to Genql, an amazing graphql client generator + ## 2.0.1 ### Patch Changes diff --git a/packages/hooks/package.json b/packages/hooks/package.json index dfd1b89..61b84c5 100644 --- a/packages/hooks/package.json +++ b/packages/hooks/package.json @@ -1,7 +1,7 @@ { "name": "@bsmnt/storefront-hooks", "author": "basement.studio ", - "version": "2.0.1", + "version": "2.0.2", "files": [ "dist/**/*" ], @@ -32,6 +32,6 @@ "tsconfig": "*", "tsup": "^6.2.3", "type-fest": "^3.0.0", - "typescript": "^4.8.4" + "typescript": "^4.9.5" } } diff --git a/packages/sdk-gen/CHANGELOG.md b/packages/sdk-gen/CHANGELOG.md index 7dec6d8..be11d89 100644 --- a/packages/sdk-gen/CHANGELOG.md +++ b/packages/sdk-gen/CHANGELOG.md @@ -1,5 +1,17 @@ # @bsmnt/sdk-gen +## 2.0.0 + +### Major Changes + +- 7be03f0: Migrate from graphql-codegen to Genql, an amazing graphql client generator + +## 2.0.0-next.0 + +### Major Changes + +- 7be03f0: Migrate from graphql-codegen to Genql, an amazing graphql client generator + ## 1.2.5 ### Patch Changes diff --git a/packages/sdk-gen/package.json b/packages/sdk-gen/package.json index f0b95ad..4f3063d 100644 --- a/packages/sdk-gen/package.json +++ b/packages/sdk-gen/package.json @@ -1,7 +1,7 @@ { "name": "@bsmnt/sdk-gen", "author": "basement.studio ", - "version": "1.2.5", + "version": "2.0.0", "main": "./dist/index.js", "types": "./dist/types.d.ts", "bin": { @@ -17,16 +17,10 @@ }, "peerDependencies": {}, "dependencies": { - "@graphql-codegen/cli": "^2.3.0", - "@graphql-codegen/introspection": "^2.1.0", - "@graphql-codegen/typescript": "^2.4.1", - "@graphql-codegen/typescript-generic-sdk": "^3.0.2", - "@graphql-codegen/typescript-operations": "^2.2.1", + "@genql/cli": "^3.0.5", "arg": "^5.0.1", - "cross-fetch": "^3.1.5", "dotenv": "^16.0.0", "graphql": "^16.3.0", - "isomorphic-unfetch": "^3.1.0", "zod": "^3.14.4" }, "devDependencies": { diff --git a/packages/sdk-gen/src/generate.ts b/packages/sdk-gen/src/generate.ts index feac8e6..b07faf5 100644 --- a/packages/sdk-gen/src/generate.ts +++ b/packages/sdk-gen/src/generate.ts @@ -1,161 +1,73 @@ -/* eslint-disable no-console */ -require("dotenv").config(); -import { generate } from "@graphql-codegen/cli"; -import fs from "fs"; -import path from "path"; +import { generate } from '@genql/cli' +import fs from 'fs' +import path from 'path' -import { Args } from "."; -import { getBGsdkConfig } from "./util/get-b-gsdk-config"; -import { getBGsdkDirectoryPath } from "./util/get-b-gsdk-directory-path"; - -export const DEFAULT_DIR_NAME = "sdk-gen"; +import { Args } from '.' +import { getBGsdkConfig } from './util/get-b-gsdk-config' +import { getBGsdkDirectoryPath } from './util/get-b-gsdk-directory-path' export async function main(args: Args) { - const bgsdkDirectoryPath = getBGsdkDirectoryPath( - process.cwd(), - args["--dir"] - ); - - if (!bgsdkDirectoryPath) { - throw new Error( - `Make sure you have a "${DEFAULT_DIR_NAME}" directory in the root of your project.` - ); - } + console.log('Generating...') - const config = getBGsdkConfig(bgsdkDirectoryPath); + const bgsdkDirectoryPath = getBGsdkDirectoryPath(process.cwd(), args['--dir']) + const config = getBGsdkConfig(bgsdkDirectoryPath) - const codegenOutput = await generate( - { - schema: { - [config.endpoint]: { - headers: config.headers, - }, - }, - generates: { - [__dirname + "/generated/index.ts"]: { - documents: [ - bgsdkDirectoryPath + "/**/*.{gql,graphql}", - bgsdkDirectoryPath + "/*.{gql,graphql}", - ], - plugins: [ - "typescript", - "typescript-operations", - "typescript-generic-sdk", - ], - config: { - dedupeFragments: true, - useTypeImports: true, - documentMode: "string", - ...config.parameters - }, - }, - [__dirname + "/generated/graphql.schema.json"]: { - plugins: ["introspection"], - config: { - documentMode: "documentNode", - withHooks: true, - }, - }, - }, + await generate({ + endpoint: config.endpoint, + headers: { + Accept: 'application/json', + 'Content-Type': 'application/json', + ...config.headers }, - false - ); - - const schemaCodegen = codegenOutput[0].content.startsWith("{") - ? codegenOutput[0] - : codegenOutput[1]; - const sdkCodegen = codegenOutput[0].content.startsWith("{") - ? codegenOutput[1] - : codegenOutput[0]; - - createDirIfDoesNotExist(`${bgsdkDirectoryPath}/generated`); - fs.writeFileSync( - path.join(bgsdkDirectoryPath, "generated/graphql.schema.json"), - schemaCodegen.content - ); - fs.writeFileSync( - path.join(bgsdkDirectoryPath, "generated/index.ts"), - "/* eslint-disable */\n" + - "// @ts-nocheck\n" + - sdkCodegen.content + - "\n" + - extraGenerated - ); - const skdFilePath = path.join(bgsdkDirectoryPath, "sdk.ts"); + output: path.join(bgsdkDirectoryPath, 'generated'), + verbose: args['--verbose'] ?? false + }) + + // extra generated + fs.appendFileSync( + path.join(bgsdkDirectoryPath, 'generated', 'index.ts'), + extraGenerated + ) + + // add eslint disable and ts nocheck to `types.ts` generated file + // at the beginning of the file + const typesFilePath = path.join(bgsdkDirectoryPath, 'generated', 'types.ts') + const typesFileContents = fs.readFileSync(typesFilePath, 'utf-8') + fs.writeFileSync(typesFilePath, `${topLevelAppend}\n${typesFileContents}`) + + // sdk file + const skdFilePath = path.join(bgsdkDirectoryPath, 'sdk.ts') if (!fs.existsSync(skdFilePath)) { - fs.writeFileSync(skdFilePath, sdkFileContents); + fs.writeFileSync(skdFilePath, sdkFileContents) } - console.log("Done ✨"); + console.log('Generated ✨') } -function createDirIfDoesNotExist(p: string) { - if (!fs.existsSync(p)) { - fs.mkdirSync(p); - } -} - -const extraGenerated = `import type { Config } from "@bsmnt/sdk-gen"; - -const fetch = globalThis.fetch || require("isomorphic-unfetch"); - -type ClientOptions = { - noThrowOnErrors?: boolean; -}; - -export const createSdk = ({ - endpoint, - headers, - clientOptions, -}: Config & { clientOptions?: ClientOptions }) => { - const client: Requester = async (doc, vars, options?: ClientOptions) => { - const allClientOptions = { ...clientOptions, ...options }; +const extraGenerated = ` +import type { Config } from '@bsmnt/sdk-gen' - const response = await fetch(endpoint, { - method: "POST", - headers: { - accept: "application/json", - "Content-Type": "application/json", - ...headers, - }, - body: JSON.stringify({ - query: doc, - variables: vars, - }), - }); - const json = await response.json(); - const { errors, data } = json; +type CreateSDKParams = Omit & Omit - const hasErrors = errors && Array.isArray(errors) && errors.length > 0; - - if (hasErrors && !allClientOptions?.noThrowOnErrors) { - const message = \`GraphQL fetch errors: - - \${errors.map((e: any, idx: number) => \`\${idx}. \${e.message}\`).join("\\n")} - - —————— - - Doc: - \${doc} - - Vars: - \${vars} - \`; - - throw new Error(message); - } - - return { ...data, ...(hasErrors ? { errors } : {}) }; - }; - - const generatedSdk = getSdk(client); - - return { ...generatedSdk, client }; -}; -`; +export const createSdk = function (params: CreateSDKParams) { + return createClient({ + ...params, + headers: { + Accept: 'application/json', + 'Content-Type': 'application/json', + ...params.headers + }, + url: params.endpoint + }) +} +` const sdkFileContents = `import config from './config' import { createSdk } from './generated' export const bsmntSdk = createSdk(config) -`; +` + +const topLevelAppend = `/* eslint-disable */ +// @ts-nocheck +` diff --git a/packages/sdk-gen/src/index.ts b/packages/sdk-gen/src/index.ts index d261e19..39139be 100644 --- a/packages/sdk-gen/src/index.ts +++ b/packages/sdk-gen/src/index.ts @@ -1,10 +1,10 @@ #!/usr/bin/env node /* eslint-disable no-console */ -import arg from "arg"; +import arg from 'arg' -import { main } from "./generate"; -import { formatError } from "./util/format-error"; +import { main } from './generate' +import { formatError } from './util/format-error' // Show usage and exit with code function help(code: number) { @@ -17,31 +17,32 @@ function help(code: number) { --dir, -d The directory where your graphql files are located. Defaults to "sdk-gen". - `); - process.exit(code); + `) + process.exit(code) } // Get CLI arguments -const [, , cmd] = process.argv; +const [, , cmd] = process.argv if (!cmd) { - help(0); - throw new Error("Unreachable"); + help(0) + throw new Error('Unreachable') } const args = arg( { // types - "--dir": String, + '--dir': String, + '--verbose': Boolean, // aliases - "-d": "--dir", + '-d': '--dir' }, { permissive: true } -); +) // CLI commands const cmds: { [key: string]: (args: Args) => Promise } = { - generate: main, -}; + generate: main +} // Run CLI try { @@ -49,16 +50,16 @@ try { cmds[cmd] ? cmds[cmd]?.(args) .then(() => { - process.exit(0); + process.exit(0) }) .catch((error) => { - console.error(formatError(error)); - process.exit(1); + console.error(formatError(error)) + process.exit(1) }) - : help(0); + : help(0) } catch (e) { - console.error(formatError(e).message); - process.exit(1); + console.error(formatError(e).message) + process.exit(1) } -export type Args = typeof args; +export type Args = typeof args diff --git a/packages/sdk-gen/src/types.ts b/packages/sdk-gen/src/types.ts index 9379ca7..94032ba 100644 --- a/packages/sdk-gen/src/types.ts +++ b/packages/sdk-gen/src/types.ts @@ -1 +1 @@ -export type { BGsdkConfig as Config } from "./util/get-b-gsdk-config"; +export type { BGsdkConfig as Config } from './util/get-b-gsdk-config' diff --git a/packages/sdk-gen/src/util/get-b-gsdk-directory-path.ts b/packages/sdk-gen/src/util/get-b-gsdk-directory-path.ts index 135eec1..f9ac4db 100644 --- a/packages/sdk-gen/src/util/get-b-gsdk-directory-path.ts +++ b/packages/sdk-gen/src/util/get-b-gsdk-directory-path.ts @@ -1,11 +1,11 @@ -import fs from "fs"; -import path from "path"; +import fs from 'fs' +import path from 'path' export const getBGsdkDirectoryPath = (cwd: string, customDir?: string) => { - const schemaPath = path.join(cwd, customDir || "sdk-gen"); + const schemaPath = path.join(cwd, customDir || 'sdk-gen') if (fs.existsSync(schemaPath)) { - return schemaPath; + return schemaPath } - return null; -}; + throw new Error(`Make sure you have the sdk-gen config at "${schemaPath}".`) +} diff --git a/packages/sdk-gen/src/util/graphql-fetcher.ts b/packages/sdk-gen/src/util/graphql-fetcher.ts deleted file mode 100644 index 1823398..0000000 --- a/packages/sdk-gen/src/util/graphql-fetcher.ts +++ /dev/null @@ -1,67 +0,0 @@ -// todo — a light fetcher that doesnt depend on the graphql library. - -type ClientOptions = { - noThrowOnErrors?: boolean; -}; - -export type GraphQLFetcher = ( - doc: string, - vars?: V, - options?: C -) => Promise | AsyncIterable; - -export function createGraphQLFetcher({ - endpoint, - headers, - defaultOptions, -}: { - endpoint: string; - headers?: Record; - defaultOptions?: ClientOptions; -}) { - const graphqlFetcher: GraphQLFetcher = async ( - doc, - vars, - options?: ClientOptions - ) => { - const allClientOptions = { ...defaultOptions, ...options }; - - const response = await fetch(endpoint, { - method: "POST", - headers: { - accept: "application/json", - "Content-Type": "application/json", - ...headers, - }, - body: JSON.stringify({ - query: doc, - variables: vars, - }), - }); - const json = await response.json(); - const { errors, data } = json; - - const hasErrors = errors && Array.isArray(errors) && errors.length > 0; - - if (hasErrors && !allClientOptions?.noThrowOnErrors) { - const message = `GraphQL fetch errors: - - ${errors.map((e: any, idx: number) => `${idx}. ${e.message}`).join("\n")} - - —————— - - Doc: - ${doc} - - Vars: - ${vars} - `; - - throw new Error(message); - } - - return { ...data, ...(hasErrors ? { errors } : {}) }; - }; - - return graphqlFetcher; -} diff --git a/packages/shopify-helpers/CHANGELOG.md b/packages/shopify-helpers/CHANGELOG.md index 09b72e8..5ce7416 100644 --- a/packages/shopify-helpers/CHANGELOG.md +++ b/packages/shopify-helpers/CHANGELOG.md @@ -1,5 +1,17 @@ # @bsmnt/shopify-helpers +## 2.0.1 + +### Patch Changes + +- 7be03f0: Migrate from graphql-codegen to Genql, an amazing graphql client generator + +## 2.0.1-next.0 + +### Patch Changes + +- 7be03f0: Migrate from graphql-codegen to Genql, an amazing graphql client generator + ## 2.0.0 ### Major Changes diff --git a/packages/shopify-helpers/package.json b/packages/shopify-helpers/package.json index 09b46b3..eea2bf0 100644 --- a/packages/shopify-helpers/package.json +++ b/packages/shopify-helpers/package.json @@ -1,7 +1,7 @@ { "name": "@bsmnt/shopify-helpers", "author": "basement.studio ", - "version": "2.0.0", + "version": "2.0.1", "files": [ "dist/**/*" ], @@ -21,7 +21,7 @@ }, "dependencies": {}, "devDependencies": { - "@bsmnt/sdk-gen": "*", + "@bsmnt/sdk-gen": "2.0.0", "@types/react": "^18.0.17", "@types/react-dom": "^18.0.6", "react": "^18.2.0", @@ -29,6 +29,6 @@ "tsconfig": "*", "tsup": "^6.2.3", "type-fest": "^3.0.0", - "typescript": "^4.8.4" + "typescript": "^4.9.5" } } diff --git a/yarn.lock b/yarn.lock index 125e2d9..df552ef 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,17 +2,17 @@ # yarn lockfile v1 -"@ampproject/remapping@^2.1.0": - version "2.2.0" - resolved "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz" - integrity sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w== +"@ampproject/remapping@^2.2.0": + version "2.2.1" + resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.1.tgz#99e8e11851128b8702cd57c33684f1d0f260b630" + integrity sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg== dependencies: - "@jridgewell/gen-mapping" "^0.1.0" + "@jridgewell/gen-mapping" "^0.3.0" "@jridgewell/trace-mapping" "^0.3.9" "@ardatan/relay-compiler@12.0.0": version "12.0.0" - resolved "https://registry.npmjs.org/@ardatan/relay-compiler/-/relay-compiler-12.0.0.tgz" + resolved "https://registry.yarnpkg.com/@ardatan/relay-compiler/-/relay-compiler-12.0.0.tgz#2e4cca43088e807adc63450e8cab037020e91106" integrity sha512-9anThAaj1dQr6IGmzBMcfzOQKTa5artjuPmw8NYK/fiGEMjADbSguBY2FMDykt+QhilR3wc9VA/3yVju7JHg7Q== dependencies: "@babel/core" "^7.14.0" @@ -33,20 +33,13 @@ signedsource "^1.0.0" yargs "^15.3.1" -"@ardatan/sync-fetch@0.0.1": +"@ardatan/sync-fetch@^0.0.1": version "0.0.1" - resolved "https://registry.npmjs.org/@ardatan/sync-fetch/-/sync-fetch-0.0.1.tgz" + resolved "https://registry.yarnpkg.com/@ardatan/sync-fetch/-/sync-fetch-0.0.1.tgz#3385d3feedceb60a896518a1db857ec1e945348f" integrity sha512-xhlTqH0m31mnsG0tIP4ETgfSB6gXDaYYsUWTrlUV93fFQPI9dd8hE0Ot6MHLCtqgB32hwJAC3YZMWlXZw7AleA== dependencies: node-fetch "^2.6.1" -"@babel/code-frame@7.12.11": - version "7.12.11" - resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz" - integrity sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw== - dependencies: - "@babel/highlight" "^7.10.4" - "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.18.6": version "7.18.6" resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz" @@ -54,39 +47,47 @@ dependencies: "@babel/highlight" "^7.18.6" -"@babel/compat-data@^7.18.8", "@babel/compat-data@^7.19.3": - version "7.19.3" - resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.19.3.tgz" - integrity sha512-prBHMK4JYYK+wDjJF1q99KK4JLL+egWS4nmNqdlMUgCExMZ+iZW0hGhyC3VEbsPjvaN0TBhW//VIFwBrk8sEiw== +"@babel/code-frame@^7.21.4": + version "7.21.4" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.21.4.tgz#d0fa9e4413aca81f2b23b9442797bda1826edb39" + integrity sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g== + dependencies: + "@babel/highlight" "^7.18.6" + +"@babel/compat-data@^7.20.5", "@babel/compat-data@^7.21.4": + version "7.21.4" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.21.4.tgz#457ffe647c480dff59c2be092fc3acf71195c87f" + integrity sha512-/DYyDpeCfaVinT40FPGdkkb+lYSKvsVuMjDAG7jPOWWiM1ibOaB9CXJAlc4d1QpP/U2q2P9jbrSlClKSErd55g== "@babel/core@^7.14.0": - version "7.19.3" - resolved "https://registry.npmjs.org/@babel/core/-/core-7.19.3.tgz" - integrity sha512-WneDJxdsjEvyKtXKsaBGbDeiyOjR5vYq4HcShxnIbG0qixpoHjI3MqeZM9NDvsojNCEBItQE4juOo/bU6e72gQ== - dependencies: - "@ampproject/remapping" "^2.1.0" - "@babel/code-frame" "^7.18.6" - "@babel/generator" "^7.19.3" - "@babel/helper-compilation-targets" "^7.19.3" - "@babel/helper-module-transforms" "^7.19.0" - "@babel/helpers" "^7.19.0" - "@babel/parser" "^7.19.3" - "@babel/template" "^7.18.10" - "@babel/traverse" "^7.19.3" - "@babel/types" "^7.19.3" + version "7.21.4" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.21.4.tgz#c6dc73242507b8e2a27fd13a9c1814f9fa34a659" + integrity sha512-qt/YV149Jman/6AfmlxJ04LMIu8bMoyl3RB91yTFrxQmgbrSvQMy7cI8Q62FHx1t8wJ8B5fu0UDoLwHAhUo1QA== + dependencies: + "@ampproject/remapping" "^2.2.0" + "@babel/code-frame" "^7.21.4" + "@babel/generator" "^7.21.4" + "@babel/helper-compilation-targets" "^7.21.4" + "@babel/helper-module-transforms" "^7.21.2" + "@babel/helpers" "^7.21.0" + "@babel/parser" "^7.21.4" + "@babel/template" "^7.20.7" + "@babel/traverse" "^7.21.4" + "@babel/types" "^7.21.4" convert-source-map "^1.7.0" debug "^4.1.0" gensync "^1.0.0-beta.2" - json5 "^2.2.1" + json5 "^2.2.2" semver "^6.3.0" -"@babel/generator@^7.14.0", "@babel/generator@^7.18.13", "@babel/generator@^7.19.3": - version "7.19.3" - resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.19.3.tgz" - integrity sha512-fqVZnmp1ncvZU757UzDheKZpfPgatqY59XtW2/j/18H7u76akb8xqvjw82f+i2UKd/ksYsSick/BCLQUUtJ/qQ== +"@babel/generator@^7.14.0", "@babel/generator@^7.18.13", "@babel/generator@^7.21.4": + version "7.21.4" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.21.4.tgz#64a94b7448989f421f919d5239ef553b37bb26bc" + integrity sha512-NieM3pVIYW2SwGzKoqfPrQsf4xGs9M9AIG3ThppsSRmO+m7eQhmI6amajKMUeIO37wFfsvnvcxQFx6x6iqxDnA== dependencies: - "@babel/types" "^7.19.3" + "@babel/types" "^7.21.4" "@jridgewell/gen-mapping" "^0.3.2" + "@jridgewell/trace-mapping" "^0.3.17" jsesc "^2.5.1" "@babel/generator@^7.19.6": @@ -105,27 +106,29 @@ dependencies: "@babel/types" "^7.18.6" -"@babel/helper-compilation-targets@^7.18.9", "@babel/helper-compilation-targets@^7.19.0", "@babel/helper-compilation-targets@^7.19.3": - version "7.19.3" - resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.19.3.tgz" - integrity sha512-65ESqLGyGmLvgR0mst5AdW1FkNlj9rQsCKduzEoEPhBCDFGXvz2jW6bXFG6i0/MrV2s7hhXjjb2yAzcPuQlLwg== +"@babel/helper-compilation-targets@^7.18.9", "@babel/helper-compilation-targets@^7.20.7", "@babel/helper-compilation-targets@^7.21.4": + version "7.21.4" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.21.4.tgz#770cd1ce0889097ceacb99418ee6934ef0572656" + integrity sha512-Fa0tTuOXZ1iL8IeDFUWCzjZcn+sJGd9RZdH9esYVjEejGmzf+FFYQpMi/kZUk2kPy/q1H3/GPw7np8qar/stfg== dependencies: - "@babel/compat-data" "^7.19.3" - "@babel/helper-validator-option" "^7.18.6" + "@babel/compat-data" "^7.21.4" + "@babel/helper-validator-option" "^7.21.0" browserslist "^4.21.3" + lru-cache "^5.1.1" semver "^6.3.0" "@babel/helper-create-class-features-plugin@^7.18.6": - version "7.19.0" - resolved "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.19.0.tgz" - integrity sha512-NRz8DwF4jT3UfrmUoZjd0Uph9HQnP30t7Ash+weACcyNkiYTywpIjDBgReJMKgr+n86sn2nPVVmJ28Dm053Kqw== + version "7.21.4" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.4.tgz#3a017163dc3c2ba7deb9a7950849a9586ea24c18" + integrity sha512-46QrX2CQlaFRF4TkwfTt6nJD7IHq8539cCL7SDpqWSDeJKY1xylKKY5F/33mJhLZ3mFvKv2gGrVS6NkyF6qs+Q== dependencies: "@babel/helper-annotate-as-pure" "^7.18.6" "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-function-name" "^7.19.0" - "@babel/helper-member-expression-to-functions" "^7.18.9" + "@babel/helper-function-name" "^7.21.0" + "@babel/helper-member-expression-to-functions" "^7.21.0" "@babel/helper-optimise-call-expression" "^7.18.6" - "@babel/helper-replace-supers" "^7.18.9" + "@babel/helper-replace-supers" "^7.20.7" + "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" "@babel/helper-split-export-declaration" "^7.18.6" "@babel/helper-environment-visitor@^7.18.9": @@ -133,7 +136,15 @@ resolved "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz" integrity sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg== -"@babel/helper-function-name@^7.18.9", "@babel/helper-function-name@^7.19.0": +"@babel/helper-function-name@^7.18.9", "@babel/helper-function-name@^7.21.0": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz#d552829b10ea9f120969304023cd0645fa00b1b4" + integrity sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg== + dependencies: + "@babel/template" "^7.20.7" + "@babel/types" "^7.21.0" + +"@babel/helper-function-name@^7.19.0": version "7.19.0" resolved "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz" integrity sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w== @@ -148,70 +159,78 @@ dependencies: "@babel/types" "^7.18.6" -"@babel/helper-member-expression-to-functions@^7.18.9": - version "7.18.9" - resolved "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.18.9.tgz" - integrity sha512-RxifAh2ZoVU67PyKIO4AMi1wTenGfMR/O/ae0CCRqwgBAt5v7xjdtRw7UoSbsreKrQn5t7r89eruK/9JjYHuDg== +"@babel/helper-member-expression-to-functions@^7.20.7", "@babel/helper-member-expression-to-functions@^7.21.0": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.0.tgz#319c6a940431a133897148515877d2f3269c3ba5" + integrity sha512-Muu8cdZwNN6mRRNG6lAYErJ5X3bRevgYR2O8wN0yn7jJSnGDu6eG59RfT29JHxGUovyfrh6Pj0XzmR7drNVL3Q== dependencies: - "@babel/types" "^7.18.9" + "@babel/types" "^7.21.0" -"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.16.0", "@babel/helper-module-imports@^7.18.6": +"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.16.0": version "7.18.6" resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz" integrity sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA== dependencies: "@babel/types" "^7.18.6" -"@babel/helper-module-transforms@^7.18.6", "@babel/helper-module-transforms@^7.19.0": - version "7.19.0" - resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.19.0.tgz" - integrity sha512-3HBZ377Fe14RbLIA+ac3sY4PTgpxHVkFrESaWhoI5PuyXPBBX8+C34qblV9G89ZtycGJCmCI/Ut+VUDK4bltNQ== +"@babel/helper-module-imports@^7.18.6": + version "7.21.4" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.21.4.tgz#ac88b2f76093637489e718a90cec6cf8a9b029af" + integrity sha512-orajc5T2PsRYUN3ZryCEFeMDYwyw09c/pZeaQEZPH0MpKzSvn3e0uXsDBu3k03VI+9DBiRo+l22BfKTpKwa/Wg== + dependencies: + "@babel/types" "^7.21.4" + +"@babel/helper-module-transforms@^7.21.2": + version "7.21.2" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.21.2.tgz#160caafa4978ac8c00ac66636cb0fa37b024e2d2" + integrity sha512-79yj2AR4U/Oqq/WOV7Lx6hUjau1Zfo4cI+JLAVYeMV5XIlbOhmjEk5ulbTc9fMpmlojzZHkUUxAiK+UKn+hNQQ== dependencies: "@babel/helper-environment-visitor" "^7.18.9" "@babel/helper-module-imports" "^7.18.6" - "@babel/helper-simple-access" "^7.18.6" + "@babel/helper-simple-access" "^7.20.2" "@babel/helper-split-export-declaration" "^7.18.6" - "@babel/helper-validator-identifier" "^7.18.6" - "@babel/template" "^7.18.10" - "@babel/traverse" "^7.19.0" - "@babel/types" "^7.19.0" + "@babel/helper-validator-identifier" "^7.19.1" + "@babel/template" "^7.20.7" + "@babel/traverse" "^7.21.2" + "@babel/types" "^7.21.2" "@babel/helper-optimise-call-expression@^7.18.6": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz#9369aa943ee7da47edab2cb4e838acf09d290ffe" integrity sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA== dependencies: "@babel/types" "^7.18.6" -"@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.18.9", "@babel/helper-plugin-utils@^7.19.0", "@babel/helper-plugin-utils@^7.8.0": - version "7.19.0" - resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.19.0.tgz" - integrity sha512-40Ryx7I8mT+0gaNxm8JGTZFUITNqdLAgdg0hXzeVZxVD6nFsdhQvip6v8dqkRHzsz1VFpFAaOCHNn0vKBL7Czw== +"@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.18.9", "@babel/helper-plugin-utils@^7.19.0", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.8.0": + version "7.20.2" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz#d1b9000752b18d0877cff85a5c376ce5c3121629" + integrity sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ== -"@babel/helper-replace-supers@^7.18.6", "@babel/helper-replace-supers@^7.18.9": - version "7.19.1" - resolved "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.19.1.tgz" - integrity sha512-T7ahH7wV0Hfs46SFh5Jz3s0B6+o8g3c+7TMxu7xKfmHikg7EAZ3I2Qk9LFhjxXq8sL7UkP5JflezNwoZa8WvWw== +"@babel/helper-replace-supers@^7.18.6", "@babel/helper-replace-supers@^7.20.7": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.20.7.tgz#243ecd2724d2071532b2c8ad2f0f9f083bcae331" + integrity sha512-vujDMtB6LVfNW13jhlCrp48QNslK6JXi7lQG736HVbHz/mbf4Dc7tIRh1Xf5C0rF7BP8iiSxGMCmY6Ci1ven3A== dependencies: "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-member-expression-to-functions" "^7.18.9" + "@babel/helper-member-expression-to-functions" "^7.20.7" "@babel/helper-optimise-call-expression" "^7.18.6" - "@babel/traverse" "^7.19.1" - "@babel/types" "^7.19.0" + "@babel/template" "^7.20.7" + "@babel/traverse" "^7.20.7" + "@babel/types" "^7.20.7" -"@babel/helper-simple-access@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.6.tgz" - integrity sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g== +"@babel/helper-simple-access@^7.20.2": + version "7.20.2" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz#0ab452687fe0c2cfb1e2b9e0015de07fc2d62dd9" + integrity sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA== dependencies: - "@babel/types" "^7.18.6" + "@babel/types" "^7.20.2" -"@babel/helper-skip-transparent-expression-wrappers@^7.18.9": - version "7.18.9" - resolved "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.18.9.tgz" - integrity sha512-imytd2gHi3cJPsybLRbmFrF7u5BIEuI2cNheyKi3/iOBC63kNn3q8Crn2xVuESli0aM4KYsyEqKyS7lFL8YVtw== +"@babel/helper-skip-transparent-expression-wrappers@^7.20.0": + version "7.20.0" + resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz#fbe4c52f60518cab8140d77101f0e63a8a230684" + integrity sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg== dependencies: - "@babel/types" "^7.18.9" + "@babel/types" "^7.20.0" "@babel/helper-split-export-declaration@^7.18.6": version "7.18.6" @@ -235,21 +254,21 @@ resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz" integrity sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w== -"@babel/helper-validator-option@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz" - integrity sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw== +"@babel/helper-validator-option@^7.21.0": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz#8224c7e13ace4bafdc4004da2cf064ef42673180" + integrity sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ== -"@babel/helpers@^7.19.0": - version "7.19.0" - resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.19.0.tgz" - integrity sha512-DRBCKGwIEdqY3+rPJgG/dKfQy9+08rHIAJx8q2p+HSWP87s2HCrQmaAMMyMll2kIXKCW0cO1RdQskx15Xakftg== +"@babel/helpers@^7.21.0": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.21.0.tgz#9dd184fb5599862037917cdc9eecb84577dc4e7e" + integrity sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA== dependencies: - "@babel/template" "^7.18.10" - "@babel/traverse" "^7.19.0" - "@babel/types" "^7.19.0" + "@babel/template" "^7.20.7" + "@babel/traverse" "^7.21.0" + "@babel/types" "^7.21.0" -"@babel/highlight@^7.10.4", "@babel/highlight@^7.18.6": +"@babel/highlight@^7.18.6": version "7.18.6" resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz" integrity sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g== @@ -258,7 +277,12 @@ chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/parser@^7.14.0", "@babel/parser@^7.16.8", "@babel/parser@^7.18.10", "@babel/parser@^7.19.3": +"@babel/parser@^7.14.0", "@babel/parser@^7.16.8", "@babel/parser@^7.20.7", "@babel/parser@^7.21.4": + version "7.21.4" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.21.4.tgz#94003fdfc520bbe2875d4ae557b43ddb6d880f17" + integrity sha512-alVJj7k7zIxqBZ7BTRhz0IqJFxW1VJbm6N8JbcYhQ186df9ZBPbZBmWSqAMXwHGsCJdYks7z/voa3ibiS5bCIw== + +"@babel/parser@^7.18.10": version "7.19.3" resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.19.3.tgz" integrity sha512-pJ9xOlNWHiy9+FuFP09DEAFbAn4JskgRsVcc169w2xRBC3FRGuQEwjeIMMND9L2zc0iEhO/tGv4Zq+km+hxNpQ== @@ -270,119 +294,127 @@ "@babel/plugin-proposal-class-properties@^7.0.0": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz#b110f59741895f7ec21a6fff696ec46265c446a3" integrity sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ== dependencies: "@babel/helper-create-class-features-plugin" "^7.18.6" "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-proposal-object-rest-spread@^7.0.0": - version "7.18.9" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.18.9.tgz" - integrity sha512-kDDHQ5rflIeY5xl69CEqGEZ0KY369ehsCIEbTGb4siHG5BE9sga/T0r0OUwyZNLMmZE79E1kbsqAjwFCW4ds6Q== + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz#aa662940ef425779c75534a5c41e9d936edc390a" + integrity sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg== dependencies: - "@babel/compat-data" "^7.18.8" - "@babel/helper-compilation-targets" "^7.18.9" - "@babel/helper-plugin-utils" "^7.18.9" + "@babel/compat-data" "^7.20.5" + "@babel/helper-compilation-targets" "^7.20.7" + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-transform-parameters" "^7.18.8" + "@babel/plugin-transform-parameters" "^7.20.7" "@babel/plugin-syntax-class-properties@^7.0.0": version "7.12.13" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== dependencies: "@babel/helper-plugin-utils" "^7.12.13" "@babel/plugin-syntax-flow@^7.0.0", "@babel/plugin-syntax-flow@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.18.6.tgz" - integrity sha512-LUbR+KNTBWCUAqRG9ex5Gnzu2IOkt8jRJbHHXFT9q+L9zm7M/QQbEqXyw1n1pohYvOyWC8CjeyjrSaIwiYjK7A== + version "7.21.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.21.4.tgz#3e37fca4f06d93567c1cd9b75156422e90a67107" + integrity sha512-l9xd3N+XG4fZRxEP3vXdK6RW7vN1Uf5dxzRC/09wV86wqZ/YYQooBIGNsiRdfNR3/q2/5pPzV4B54J/9ctX5jw== dependencies: - "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-plugin-utils" "^7.20.2" + +"@babel/plugin-syntax-import-assertions@7.20.0": + version "7.20.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz#bb50e0d4bea0957235390641209394e87bdb9cc4" + integrity sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ== + dependencies: + "@babel/helper-plugin-utils" "^7.19.0" "@babel/plugin-syntax-jsx@^7.0.0", "@babel/plugin-syntax-jsx@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz" - integrity sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q== + version "7.21.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.21.4.tgz#f264ed7bf40ffc9ec239edabc17a50c4f5b6fea2" + integrity sha512-5hewiLct5OKyh6PLKEYaFclcqtIgCb6bmELouxjF6up5q3Sov7rOayW4RwhbaBL0dit8rA80GNfY+UuDp2mBbQ== dependencies: - "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-syntax-object-rest-spread@^7.0.0", "@babel/plugin-syntax-object-rest-spread@^7.8.3": version "7.8.3" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-transform-arrow-functions@^7.0.0": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.18.6.tgz" - integrity sha512-9S9X9RUefzrsHZmKMbDXxweEH+YlE8JJEuat9FdvW9Qh1cw7W64jELCtWNkPBPX5En45uy28KGvA/AySqUh8CQ== + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.20.7.tgz#bea332b0e8b2dab3dafe55a163d8227531ab0551" + integrity sha512-3poA5E7dzDomxj9WXWwuD6A5F3kc7VXwIJO+E+J8qtDtS+pXPAhrgEyh+9GBwBgPq1Z+bB+/JD60lp5jsN7JPQ== dependencies: - "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-transform-block-scoped-functions@^7.0.0": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz#9187bf4ba302635b9d70d986ad70f038726216a8" integrity sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ== dependencies: "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-transform-block-scoping@^7.0.0": - version "7.18.9" - resolved "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.18.9.tgz" - integrity sha512-5sDIJRV1KtQVEbt/EIBwGy4T01uYIo4KRB3VUqzkhrAIOGx7AoctL9+Ux88btY0zXdDyPJ9mW+bg+v+XEkGmtw== + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.21.0.tgz#e737b91037e5186ee16b76e7ae093358a5634f02" + integrity sha512-Mdrbunoh9SxwFZapeHVrwFmri16+oYotcZysSzhNIVDwIAb1UV+kvnxULSYq9J3/q5MDG+4X6w8QVgD1zhBXNQ== dependencies: - "@babel/helper-plugin-utils" "^7.18.9" + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-transform-classes@^7.0.0": - version "7.19.0" - resolved "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.19.0.tgz" - integrity sha512-YfeEE9kCjqTS9IitkgfJuxjcEtLUHMqa8yUJ6zdz8vR7hKuo6mOy2C05P0F1tdMmDCeuyidKnlrw/iTppHcr2A== + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.21.0.tgz#f469d0b07a4c5a7dbb21afad9e27e57b47031665" + integrity sha512-RZhbYTCEUAe6ntPehC4hlslPWosNHDox+vAs4On/mCLRLfoDVHf6hVEd7kuxr1RnHwJmxFfUM3cZiZRmPxJPXQ== dependencies: "@babel/helper-annotate-as-pure" "^7.18.6" - "@babel/helper-compilation-targets" "^7.19.0" + "@babel/helper-compilation-targets" "^7.20.7" "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-function-name" "^7.19.0" + "@babel/helper-function-name" "^7.21.0" "@babel/helper-optimise-call-expression" "^7.18.6" - "@babel/helper-plugin-utils" "^7.19.0" - "@babel/helper-replace-supers" "^7.18.9" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-replace-supers" "^7.20.7" "@babel/helper-split-export-declaration" "^7.18.6" globals "^11.1.0" "@babel/plugin-transform-computed-properties@^7.0.0": - version "7.18.9" - resolved "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.18.9.tgz" - integrity sha512-+i0ZU1bCDymKakLxn5srGHrsAPRELC2WIbzwjLhHW9SIE1cPYkLCL0NlnXMZaM1vhfgA2+M7hySk42VBvrkBRw== + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.20.7.tgz#704cc2fd155d1c996551db8276d55b9d46e4d0aa" + integrity sha512-Lz7MvBK6DTjElHAmfu6bfANzKcxpyNPeYBGEafyA6E5HtRpjpZwU+u7Qrgz/2OR0z+5TvKYbPdphfSaAcZBrYQ== dependencies: - "@babel/helper-plugin-utils" "^7.18.9" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/template" "^7.20.7" "@babel/plugin-transform-destructuring@^7.0.0": - version "7.18.13" - resolved "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.18.13.tgz" - integrity sha512-TodpQ29XekIsex2A+YJPj5ax2plkGa8YYY6mFjCohk/IG9IY42Rtuj1FuDeemfg2ipxIFLzPeA83SIBnlhSIow== + version "7.21.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.21.3.tgz#73b46d0fd11cd6ef57dea8a381b1215f4959d401" + integrity sha512-bp6hwMFzuiE4HqYEyoGJ/V2LeIWn+hLVKc4pnj++E5XQptwhtcGmSayM029d/j2X1bPKGTlsyPwAubuU22KhMA== dependencies: - "@babel/helper-plugin-utils" "^7.18.9" + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-transform-flow-strip-types@^7.0.0": - version "7.19.0" - resolved "https://registry.npmjs.org/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.19.0.tgz" - integrity sha512-sgeMlNaQVbCSpgLSKP4ZZKfsJVnFnNQlUSk6gPYzR/q7tzCgQF2t8RBKAP6cKJeZdveei7Q7Jm527xepI8lNLg== + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.21.0.tgz#6aeca0adcb81dc627c8986e770bfaa4d9812aff5" + integrity sha512-FlFA2Mj87a6sDkW4gfGrQQqwY/dLlBAyJa2dJEZ+FHXUVHBflO2wyKvg+OOEzXfrKYIa4HWl0mgmbCzt0cMb7w== dependencies: - "@babel/helper-plugin-utils" "^7.19.0" + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-syntax-flow" "^7.18.6" "@babel/plugin-transform-for-of@^7.0.0": - version "7.18.8" - resolved "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.8.tgz" - integrity sha512-yEfTRnjuskWYo0k1mHUqrVWaZwrdq8AYbfrpqULOJOaucGSp4mNMVps+YtA8byoevxS/urwU75vyhQIxcCgiBQ== + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.21.0.tgz#964108c9988de1a60b4be2354a7d7e245f36e86e" + integrity sha512-LlUYlydgDkKpIY7mcBWvyPPmMcOphEyYA27Ef4xpbh1IiDNLr0kZsos2nf92vz3IccvJI25QUwp86Eo5s6HmBQ== dependencies: - "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-transform-function-name@^7.0.0": version "7.18.9" - resolved "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz#cc354f8234e62968946c61a46d6365440fc764e0" integrity sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ== dependencies: "@babel/helper-compilation-targets" "^7.18.9" @@ -391,86 +423,85 @@ "@babel/plugin-transform-literals@^7.0.0": version "7.18.9" - resolved "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz#72796fdbef80e56fba3c6a699d54f0de557444bc" integrity sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg== dependencies: "@babel/helper-plugin-utils" "^7.18.9" "@babel/plugin-transform-member-expression-literals@^7.0.0": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz#ac9fdc1a118620ac49b7e7a5d2dc177a1bfee88e" integrity sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA== dependencies: "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-transform-modules-commonjs@^7.0.0": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.18.6.tgz" - integrity sha512-Qfv2ZOWikpvmedXQJDSbxNqy7Xr/j2Y8/KfijM0iJyKkBTmWuvCA1yeH1yDM7NJhBW/2aXxeucLj6i80/LAJ/Q== + version "7.21.2" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.2.tgz#6ff5070e71e3192ef2b7e39820a06fb78e3058e7" + integrity sha512-Cln+Yy04Gxua7iPdj6nOV96smLGjpElir5YwzF0LBPKoPlLDNJePNlrGGaybAJkd0zKRnOVXOgizSqPYMNYkzA== dependencies: - "@babel/helper-module-transforms" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - "@babel/helper-simple-access" "^7.18.6" - babel-plugin-dynamic-import-node "^2.3.3" + "@babel/helper-module-transforms" "^7.21.2" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-simple-access" "^7.20.2" "@babel/plugin-transform-object-super@^7.0.0": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz#fb3c6ccdd15939b6ff7939944b51971ddc35912c" integrity sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA== dependencies: "@babel/helper-plugin-utils" "^7.18.6" "@babel/helper-replace-supers" "^7.18.6" -"@babel/plugin-transform-parameters@^7.0.0", "@babel/plugin-transform-parameters@^7.18.8": - version "7.18.8" - resolved "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.18.8.tgz" - integrity sha512-ivfbE3X2Ss+Fj8nnXvKJS6sjRG4gzwPMsP+taZC+ZzEGjAYlvENixmt1sZ5Ca6tWls+BlKSGKPJ6OOXvXCbkFg== +"@babel/plugin-transform-parameters@^7.0.0", "@babel/plugin-transform-parameters@^7.20.7": + version "7.21.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.21.3.tgz#18fc4e797cf6d6d972cb8c411dbe8a809fa157db" + integrity sha512-Wxc+TvppQG9xWFYatvCGPvZ6+SIUxQ2ZdiBP+PHYMIjnPXD+uThCshaz4NZOnODAtBjjcVQQ/3OKs9LW28purQ== dependencies: - "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-transform-property-literals@^7.0.0": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz#e22498903a483448e94e032e9bbb9c5ccbfc93a3" integrity sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg== dependencies: "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-transform-react-display-name@^7.0.0": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.18.6.tgz#8b1125f919ef36ebdfff061d664e266c666b9415" integrity sha512-TV4sQ+T013n61uMoygyMRm+xf04Bd5oqFpv2jAEQwSZ8NwQA7zeRPg1LMVg2PWi3zWBz+CLKD+v5bcpZ/BS0aA== dependencies: "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-transform-react-jsx@^7.0.0": - version "7.19.0" - resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.19.0.tgz" - integrity sha512-UVEvX3tXie3Szm3emi1+G63jyw1w5IcMY0FSKM+CRnKRI5Mr1YbCNgsSTwoTwKphQEG9P+QqmuRFneJPZuHNhg== + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.21.0.tgz#656b42c2fdea0a6d8762075d58ef9d4e3c4ab8a2" + integrity sha512-6OAWljMvQrZjR2DaNhVfRz6dkCAVV+ymcLUmaf8bccGOHn2v5rHJK3tTpij0BuhdYWP4LLaqj5lwcdlpAAPuvg== dependencies: "@babel/helper-annotate-as-pure" "^7.18.6" "@babel/helper-module-imports" "^7.18.6" - "@babel/helper-plugin-utils" "^7.19.0" + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-syntax-jsx" "^7.18.6" - "@babel/types" "^7.19.0" + "@babel/types" "^7.21.0" "@babel/plugin-transform-shorthand-properties@^7.0.0": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz#6d6df7983d67b195289be24909e3f12a8f664dc9" integrity sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw== dependencies: "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-transform-spread@^7.0.0": - version "7.19.0" - resolved "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.19.0.tgz" - integrity sha512-RsuMk7j6n+r752EtzyScnWkQyuJdli6LdO5Klv8Yx0OfPVTcQkIUfS8clx5e9yHXzlnhOZF3CbQ8C2uP5j074w== + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz#c2d83e0b99d3bf83e07b11995ee24bf7ca09401e" + integrity sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw== dependencies: - "@babel/helper-plugin-utils" "^7.19.0" - "@babel/helper-skip-transparent-expression-wrappers" "^7.18.9" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" "@babel/plugin-transform-template-literals@^7.0.0": version "7.18.9" - resolved "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz#04ec6f10acdaa81846689d63fae117dd9c243a5e" integrity sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA== dependencies: "@babel/helper-plugin-utils" "^7.18.9" @@ -483,7 +514,14 @@ core-js-pure "^3.25.1" regenerator-runtime "^0.13.4" -"@babel/runtime@^7.0.0", "@babel/runtime@^7.10.2", "@babel/runtime@^7.18.9": +"@babel/runtime@^7.0.0": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.21.0.tgz#5b55c9d394e5fcf304909a8b00c07dc217b56673" + integrity sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw== + dependencies: + regenerator-runtime "^0.13.11" + +"@babel/runtime@^7.10.2", "@babel/runtime@^7.18.9": version "7.19.0" resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.19.0.tgz" integrity sha512-eR8Lo9hnDS7tqkO7NsV+mKvCmv5boaXFSZ70DnfhcgiEne8hv9oCEd36Klw74EtizEqLsy4YnW8UWwpBVolHZA== @@ -506,19 +544,28 @@ "@babel/parser" "^7.18.10" "@babel/types" "^7.18.10" -"@babel/traverse@^7.14.0", "@babel/traverse@^7.16.8", "@babel/traverse@^7.19.0", "@babel/traverse@^7.19.1", "@babel/traverse@^7.19.3": - version "7.19.3" - resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.19.3.tgz" - integrity sha512-qh5yf6149zhq2sgIXmwjnsvmnNQC2iw70UFjp4olxucKrWd/dvlUsBI88VSLUsnMNF7/vnOiA+nk1+yLoCqROQ== +"@babel/template@^7.20.7": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.20.7.tgz#a15090c2839a83b02aa996c0b4994005841fd5a8" + integrity sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw== dependencies: "@babel/code-frame" "^7.18.6" - "@babel/generator" "^7.19.3" + "@babel/parser" "^7.20.7" + "@babel/types" "^7.20.7" + +"@babel/traverse@^7.14.0", "@babel/traverse@^7.16.8", "@babel/traverse@^7.20.7", "@babel/traverse@^7.21.0", "@babel/traverse@^7.21.2", "@babel/traverse@^7.21.4": + version "7.21.4" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.21.4.tgz#a836aca7b116634e97a6ed99976236b3282c9d36" + integrity sha512-eyKrRHKdyZxqDm+fV1iqL9UAHMoIg0nDaGqfIOd8rKH17m5snv7Gn4qgjBoFfLz9APvjFU/ICT00NVCv1Epp8Q== + dependencies: + "@babel/code-frame" "^7.21.4" + "@babel/generator" "^7.21.4" "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-function-name" "^7.19.0" + "@babel/helper-function-name" "^7.21.0" "@babel/helper-hoist-variables" "^7.18.6" "@babel/helper-split-export-declaration" "^7.18.6" - "@babel/parser" "^7.19.3" - "@babel/types" "^7.19.3" + "@babel/parser" "^7.21.4" + "@babel/types" "^7.21.4" debug "^4.1.0" globals "^11.1.0" @@ -538,7 +585,16 @@ debug "^4.1.0" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.16.8", "@babel/types@^7.18.10", "@babel/types@^7.18.13", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.19.0", "@babel/types@^7.19.3": +"@babel/types@^7.0.0", "@babel/types@^7.16.8", "@babel/types@^7.18.13", "@babel/types@^7.20.0", "@babel/types@^7.20.2", "@babel/types@^7.20.7", "@babel/types@^7.21.0", "@babel/types@^7.21.2", "@babel/types@^7.21.4": + version "7.21.4" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.21.4.tgz#2d5d6bb7908699b3b416409ffd3b5daa25b030d4" + integrity sha512-rU2oY501qDxE8Pyo7i/Orqma4ziCOrby0/9mvbDUGEfvZjb279Nk9k19e2fiCxHbRRpY2ZyrgW1eq22mvmOIzA== + dependencies: + "@babel/helper-string-parser" "^7.19.4" + "@babel/helper-validator-identifier" "^7.19.1" + to-fast-properties "^2.0.0" + +"@babel/types@^7.18.10", "@babel/types@^7.18.6", "@babel/types@^7.19.0": version "7.19.3" resolved "https://registry.npmjs.org/@babel/types/-/types-7.19.3.tgz" integrity sha512-hGCaQzIY22DJlDh9CH7NOxgKkFjBk0Cw9xDO1Xmh2151ti7wiGfQ3LauXzL4HP1fmFlTX6XjpRETTpUcv7wQLw== @@ -556,6 +612,30 @@ "@babel/helper-validator-identifier" "^7.19.1" to-fast-properties "^2.0.0" +"@bsmnt/drop@*": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@bsmnt/drop/-/drop-1.2.0.tgz#7fd1696f3f02b99ed99a7b248ee9312e80b554ba" + integrity sha512-u/zigoe8GwB3bL3R0MweqSBirp0aMxHAa2PCT5cbH458BOlDOd27xcBxZlseBPj/1kcF/t2MubGbW0m8OsyzyA== + dependencies: + zustand "^4.1.2" + +"@bsmnt/sdk-gen@*": + version "1.2.5" + resolved "https://registry.yarnpkg.com/@bsmnt/sdk-gen/-/sdk-gen-1.2.5.tgz#4bcc3452b9e2f5c216aed568a3ddd7fe931d3606" + integrity sha512-sev0TDJOQLzaremJjeaM1EA/L6ZBtM0Rjcsi8bk0rTM8bdTjegOvs+8oDOqXWLT6AIuyDQMD/F5NvD6SXJrpVA== + dependencies: + "@graphql-codegen/cli" "^2.3.0" + "@graphql-codegen/introspection" "^2.1.0" + "@graphql-codegen/typescript" "^2.4.1" + "@graphql-codegen/typescript-generic-sdk" "^3.0.2" + "@graphql-codegen/typescript-operations" "^2.2.1" + arg "^5.0.1" + cross-fetch "^3.1.5" + dotenv "^16.0.0" + graphql "^16.3.0" + isomorphic-unfetch "^3.1.0" + zod "^3.14.4" + "@changesets/apply-release-plan@^6.1.1": version "6.1.1" resolved "https://registry.npmjs.org/@changesets/apply-release-plan/-/apply-release-plan-6.1.1.tgz" @@ -757,7 +837,7 @@ "@cspotcode/source-map-support@^0.8.0": version "0.8.1" - resolved "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz" + resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz#00629c35a688e05a88b1cda684fb9d5e73f000a1" integrity sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw== dependencies: "@jridgewell/trace-mapping" "0.3.9" @@ -794,21 +874,38 @@ resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.15.10.tgz#78a42897c2cf8db9fd5f1811f7590393b77774c7" integrity sha512-w0Ou3Z83LOYEkwaui2M8VwIp+nLi/NA60lBLMvaJ+vXVMcsARYdEzLNE7RSm4+lSg4zq4d7fAVuzk7PNQ5JFgg== -"@eslint/eslintrc@^0.4.3": - version "0.4.3" - resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz" - integrity sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw== +"@eslint-community/eslint-utils@^4.2.0": + version "4.4.0" + resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz#a23514e8fb9af1269d5f7788aa556798d61c6b59" + integrity sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA== + dependencies: + eslint-visitor-keys "^3.3.0" + +"@eslint-community/regexpp@^4.4.0": + version "4.5.0" + resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.5.0.tgz#f6f729b02feee2c749f57e334b7a1b5f40a81724" + integrity sha512-vITaYzIcNmjn5tF5uxcZ/ft7/RXGrMUIS9HalWckEOF6ESiwXKoMzAQf2UW0aVd6rnOeExTJVd5hmWXucBKGXQ== + +"@eslint/eslintrc@^2.0.2": + version "2.0.2" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-2.0.2.tgz#01575e38707add677cf73ca1589abba8da899a02" + integrity sha512-3W4f5tDUra+pA+FzgugqL2pRimUTDJWKr7BINqOpkZrC0uYI0NIc0/JFgBROCU07HR6GieA5m3/rsPIhDmCXTQ== dependencies: ajv "^6.12.4" - debug "^4.1.1" - espree "^7.3.0" - globals "^13.9.0" - ignore "^4.0.6" + debug "^4.3.2" + espree "^9.5.1" + globals "^13.19.0" + ignore "^5.2.0" import-fresh "^3.2.1" - js-yaml "^3.13.1" - minimatch "^3.0.4" + js-yaml "^4.1.0" + minimatch "^3.1.2" strip-json-comments "^3.1.1" +"@eslint/js@8.38.0": + version "8.38.0" + resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.38.0.tgz#73a8a0d8aa8a8e6fe270431c5e72ae91b5337892" + integrity sha512-IoD2MfUnOV58ghIHCiil01PcohxjbYR/qCxsoC+xNgUwh1EY8jOOrYmu3d3a71+tJJ23uscEV4X2HJWMsPJu4g== + "@floating-ui/core@^0.7.3": version "0.7.3" resolved "https://registry.npmjs.org/@floating-ui/core/-/core-0.7.3.tgz" @@ -829,70 +926,90 @@ "@floating-ui/dom" "^0.5.3" use-isomorphic-layout-effect "^1.1.1" +"@genql/cli@^3.0.5": + version "3.0.5" + resolved "https://registry.yarnpkg.com/@genql/cli/-/cli-3.0.5.tgz#dffc22db75ab929918a500bc483fb3ec86563853" + integrity sha512-2IymSpQY01UeYMpIx3xYBRbvH2E/8CDVKhXmoD7Iju46VW1zWY763Hdl3/DHpJJeKbRrI92RftT8sl4YVQZYuw== + dependencies: + "@graphql-tools/graphql-file-loader" "^7.5.11" + "@graphql-tools/load" "^7.8.6" + fs-extra "^10.1.0" + graphql "^16.6.0" + kleur "^4.1.5" + listr "^0.14.3" + lodash "^4.17.21" + mkdirp "^0.5.1" + native-fetch "^4.0.2" + prettier "^2.8.0" + qs "^6.11.0" + rimraf "^2.6.3" + undici "^5.18.0" + yargs "^15.3.1" + "@graphql-codegen/cli@^2.3.0": - version "2.13.5" - resolved "https://registry.npmjs.org/@graphql-codegen/cli/-/cli-2.13.5.tgz" - integrity sha512-qqkQxd+9jBdZDjUSCsH3rTHKmFY9KNQwvwXXEMpRSz+oByYTxGZ0ZE5Lxt0hRXFkGOe8BaVkfPiwa2qSUfA5vw== + version "2.16.5" + resolved "https://registry.yarnpkg.com/@graphql-codegen/cli/-/cli-2.16.5.tgz#b3b5eeec357af01c1cb72f6a4ea96e52bd49e662" + integrity sha512-XYPIp+q7fB0xAGSAoRykiTe4oY80VU+z+dw5nuv4mLY0+pv7+pa2C6Nwhdw7a65lXOhFviBApWCCZeqd54SMnA== dependencies: "@babel/generator" "^7.18.13" "@babel/template" "^7.18.10" "@babel/types" "^7.18.13" - "@graphql-codegen/core" "2.6.2" - "@graphql-codegen/plugin-helpers" "^2.6.2" + "@graphql-codegen/core" "^2.6.8" + "@graphql-codegen/plugin-helpers" "^3.1.2" "@graphql-tools/apollo-engine-loader" "^7.3.6" - "@graphql-tools/code-file-loader" "^7.3.1" - "@graphql-tools/git-loader" "^7.2.1" - "@graphql-tools/github-loader" "^7.3.6" + "@graphql-tools/code-file-loader" "^7.3.13" + "@graphql-tools/git-loader" "^7.2.13" + "@graphql-tools/github-loader" "^7.3.20" "@graphql-tools/graphql-file-loader" "^7.5.0" "@graphql-tools/json-file-loader" "^7.4.1" - "@graphql-tools/load" "^7.7.1" - "@graphql-tools/prisma-loader" "^7.2.7" + "@graphql-tools/load" "^7.8.0" + "@graphql-tools/prisma-loader" "^7.2.49" "@graphql-tools/url-loader" "^7.13.2" - "@graphql-tools/utils" "^8.9.0" - "@whatwg-node/fetch" "^0.3.0" - ansi-escapes "^4.3.1" + "@graphql-tools/utils" "^9.0.0" + "@whatwg-node/fetch" "^0.6.0" chalk "^4.1.0" chokidar "^3.5.2" cosmiconfig "^7.0.0" - cosmiconfig-typescript-loader "4.1.1" + cosmiconfig-typescript-loader "^4.3.0" debounce "^1.2.0" detect-indent "^6.0.0" - graphql-config "4.3.6" + graphql-config "^4.4.0" inquirer "^8.0.0" is-glob "^4.0.1" json-to-pretty-yaml "^1.2.2" listr2 "^4.0.5" log-symbols "^4.0.0" - mkdirp "^1.0.4" + shell-quote "^1.7.3" string-env-interpolation "^1.0.1" ts-log "^2.2.3" + ts-node "^10.9.1" tslib "^2.4.0" yaml "^1.10.0" yargs "^17.0.0" -"@graphql-codegen/core@2.6.2": - version "2.6.2" - resolved "https://registry.npmjs.org/@graphql-codegen/core/-/core-2.6.2.tgz" - integrity sha512-58T5yf9nEfAhDwN1Vz1hImqpdJ/gGpCGUaroQ5tqskZPf7eZYYVkEXbtqRZZLx1MCCKwjWX4hMtTPpHhwKCkng== +"@graphql-codegen/core@^2.6.8": + version "2.6.8" + resolved "https://registry.yarnpkg.com/@graphql-codegen/core/-/core-2.6.8.tgz#00c4011e3619ddbc6af5e41b2f254d6f6759556e" + integrity sha512-JKllNIipPrheRgl+/Hm/xuWMw9++xNQ12XJR/OHHgFopOg4zmN3TdlRSyYcv/K90hCFkkIwhlHFUQTfKrm8rxQ== dependencies: - "@graphql-codegen/plugin-helpers" "^2.6.2" + "@graphql-codegen/plugin-helpers" "^3.1.1" "@graphql-tools/schema" "^9.0.0" - "@graphql-tools/utils" "^8.8.0" + "@graphql-tools/utils" "^9.1.1" tslib "~2.4.0" "@graphql-codegen/introspection@^2.1.0": - version "2.2.1" - resolved "https://registry.npmjs.org/@graphql-codegen/introspection/-/introspection-2.2.1.tgz" - integrity sha512-083tu9rSLL0k9LrAyGt1AjGQI/O9gX3w1UliaufLc3mofDSt7iV04tT9VJRuk4IoBvyPZ/8YCs5zIpmt/GexPA== + version "2.2.3" + resolved "https://registry.yarnpkg.com/@graphql-codegen/introspection/-/introspection-2.2.3.tgz#6f5df5084b75ba646779b62a68dab27b8aa4e473" + integrity sha512-iS0xhy64lapGCsBIBKFpAcymGW+A0LiLSGP9dPl6opZwU1bm/rsahkKvJnc+oCI/xfdQ3Q33zgUKOSCkqmM4Bw== dependencies: - "@graphql-codegen/plugin-helpers" "^2.6.2" - "@graphql-codegen/visitor-plugin-common" "^2.12.1" + "@graphql-codegen/plugin-helpers" "^3.1.1" + "@graphql-codegen/visitor-plugin-common" "^2.13.5" tslib "~2.4.0" -"@graphql-codegen/plugin-helpers@^2.6.2": - version "2.7.1" - resolved "https://registry.npmjs.org/@graphql-codegen/plugin-helpers/-/plugin-helpers-2.7.1.tgz" - integrity sha512-wpEShhwbQp8pqXolnSCNaj0pU91LbuBvYHpYqm96TUqyeKQYAYRVmw3JIt0g8UQpKYhg8lYIDwWdcINOYqkGLg== +"@graphql-codegen/plugin-helpers@^2.7.2": + version "2.7.2" + resolved "https://registry.yarnpkg.com/@graphql-codegen/plugin-helpers/-/plugin-helpers-2.7.2.tgz#6544f739d725441c826a8af6a49519f588ff9bed" + integrity sha512-kln2AZ12uii6U59OQXdjLk5nOlh1pHis1R98cDZGFnfaiAbX9V3fxcZ1MMJkB7qFUymTALzyjZoXXdyVmPMfRg== dependencies: "@graphql-tools/utils" "^8.8.0" change-case-all "1.0.14" @@ -901,53 +1018,65 @@ lodash "~4.17.0" tslib "~2.4.0" -"@graphql-codegen/schema-ast@^2.5.1": - version "2.5.1" - resolved "https://registry.npmjs.org/@graphql-codegen/schema-ast/-/schema-ast-2.5.1.tgz" - integrity sha512-tewa5DEKbglWn7kYyVBkh3J8YQ5ALqAMVmZwiVFIGOao5u66nd+e4HuFqp0u+Jpz4SJGGi0ap/oFrEvlqLjd2A== +"@graphql-codegen/plugin-helpers@^3.0.0", "@graphql-codegen/plugin-helpers@^3.1.1", "@graphql-codegen/plugin-helpers@^3.1.2": + version "3.1.2" + resolved "https://registry.yarnpkg.com/@graphql-codegen/plugin-helpers/-/plugin-helpers-3.1.2.tgz#69a2e91178f478ea6849846ade0a59a844d34389" + integrity sha512-emOQiHyIliVOIjKVKdsI5MXj312zmRDwmHpyUTZMjfpvxq/UVAHUJIVdVf+lnjjrI+LXBTgMlTWTgHQfmICxjg== dependencies: - "@graphql-codegen/plugin-helpers" "^2.6.2" - "@graphql-tools/utils" "^8.8.0" + "@graphql-tools/utils" "^9.0.0" + change-case-all "1.0.15" + common-tags "1.8.2" + import-from "4.0.0" + lodash "~4.17.0" + tslib "~2.4.0" + +"@graphql-codegen/schema-ast@^2.6.1": + version "2.6.1" + resolved "https://registry.yarnpkg.com/@graphql-codegen/schema-ast/-/schema-ast-2.6.1.tgz#8ba1b38827c034b51ecd3ce88622c2ae6cd3fe1a" + integrity sha512-5TNW3b1IHJjCh07D2yQNGDQzUpUl2AD+GVe1Dzjqyx/d2Fn0TPMxLsHsKPS4Plg4saO8FK/QO70wLsP7fdbQ1w== + dependencies: + "@graphql-codegen/plugin-helpers" "^3.1.2" + "@graphql-tools/utils" "^9.0.0" tslib "~2.4.0" "@graphql-codegen/typescript-generic-sdk@^3.0.2": - version "3.0.2" - resolved "https://registry.npmjs.org/@graphql-codegen/typescript-generic-sdk/-/typescript-generic-sdk-3.0.2.tgz" - integrity sha512-Ug8g6O2AhqnKJKndyonp7LZ0o0FRd9Mbha+HsdfRDCyM172dSjYZCDlHqV3qdTjbudWX3G3Kwg6X3Pae1g/7GA== + version "3.1.0" + resolved "https://registry.yarnpkg.com/@graphql-codegen/typescript-generic-sdk/-/typescript-generic-sdk-3.1.0.tgz#6380c19dd0fafc160cf80b859b50013217973499" + integrity sha512-nQZi/YGRI1+qCZZsh0V5nz6+hCHSN4OU9tKyOTDsEPyDFnGEukDuRdCH2IZasGn22a3Iu5TUDkgp5w9wEQwGmg== dependencies: - "@graphql-codegen/plugin-helpers" "^2.6.2" - "@graphql-codegen/visitor-plugin-common" "2.12.2" + "@graphql-codegen/plugin-helpers" "^3.0.0" + "@graphql-codegen/visitor-plugin-common" "2.13.1" auto-bind "~4.0.0" tslib "~2.4.0" "@graphql-codegen/typescript-operations@^2.2.1": - version "2.5.3" - resolved "https://registry.npmjs.org/@graphql-codegen/typescript-operations/-/typescript-operations-2.5.3.tgz" - integrity sha512-s+pA+Erm0HeBb/D5cNrflwRM5KWhkiA5cbz4uA99l3fzFPveoQBPfRCBu0XAlJLP/kBDy64+o4B8Nfc7wdRtmA== + version "2.5.13" + resolved "https://registry.yarnpkg.com/@graphql-codegen/typescript-operations/-/typescript-operations-2.5.13.tgz#f286c37f9c023356aacaa983ebd32e9e021a05ca" + integrity sha512-3vfR6Rx6iZU0JRt29GBkFlrSNTM6t+MSLF86ChvL4d/Jfo/JYAGuB3zNzPhirHYzJPCvLOAx2gy9ID1ltrpYiw== dependencies: - "@graphql-codegen/plugin-helpers" "^2.6.2" - "@graphql-codegen/typescript" "^2.7.3" - "@graphql-codegen/visitor-plugin-common" "2.12.1" + "@graphql-codegen/plugin-helpers" "^3.1.2" + "@graphql-codegen/typescript" "^2.8.8" + "@graphql-codegen/visitor-plugin-common" "2.13.8" auto-bind "~4.0.0" tslib "~2.4.0" -"@graphql-codegen/typescript@^2.4.1", "@graphql-codegen/typescript@^2.7.3": - version "2.7.3" - resolved "https://registry.npmjs.org/@graphql-codegen/typescript/-/typescript-2.7.3.tgz" - integrity sha512-EzX/acijXtbG/AwPzho2ZZWaNo00+xAbsRDP+vnT2PwQV3AYq3/5bFvjq1XfAGWbTntdmlYlIwC9hf5bI85WVA== +"@graphql-codegen/typescript@^2.4.1", "@graphql-codegen/typescript@^2.8.8": + version "2.8.8" + resolved "https://registry.yarnpkg.com/@graphql-codegen/typescript/-/typescript-2.8.8.tgz#8c3b9153e334db43c65f8f31ced69b4c60d14861" + integrity sha512-A0oUi3Oy6+DormOlrTC4orxT9OBZkIglhbJBcDmk34jAKKUgesukXRd4yOhmTrnbchpXz2T8IAOFB3FWIaK4Rw== dependencies: - "@graphql-codegen/plugin-helpers" "^2.6.2" - "@graphql-codegen/schema-ast" "^2.5.1" - "@graphql-codegen/visitor-plugin-common" "2.12.1" + "@graphql-codegen/plugin-helpers" "^3.1.2" + "@graphql-codegen/schema-ast" "^2.6.1" + "@graphql-codegen/visitor-plugin-common" "2.13.8" auto-bind "~4.0.0" tslib "~2.4.0" -"@graphql-codegen/visitor-plugin-common@2.12.1", "@graphql-codegen/visitor-plugin-common@^2.12.1": - version "2.12.1" - resolved "https://registry.npmjs.org/@graphql-codegen/visitor-plugin-common/-/visitor-plugin-common-2.12.1.tgz" - integrity sha512-dIUrX4+i/uazyPQqXyQ8cqykgNFe1lknjnfDWFo0gnk2W8+ruuL2JpSrj/7efzFHxbYGMQrCABDCUTVLi3DcVA== +"@graphql-codegen/visitor-plugin-common@2.13.1": + version "2.13.1" + resolved "https://registry.yarnpkg.com/@graphql-codegen/visitor-plugin-common/-/visitor-plugin-common-2.13.1.tgz#2228660f6692bcdb96b1f6d91a0661624266b76b" + integrity sha512-mD9ufZhDGhyrSaWQGrU1Q1c5f01TeWtSWy/cDwXYjJcHIj1Y/DG2x0tOflEfCvh5WcnmHNIw4lzDsg1W7iFJEg== dependencies: - "@graphql-codegen/plugin-helpers" "^2.6.2" + "@graphql-codegen/plugin-helpers" "^2.7.2" "@graphql-tools/optimize" "^1.3.0" "@graphql-tools/relay-operation-optimizer" "^6.5.0" "@graphql-tools/utils" "^8.8.0" @@ -958,267 +1087,332 @@ parse-filepath "^1.0.2" tslib "~2.4.0" -"@graphql-codegen/visitor-plugin-common@2.12.2": - version "2.12.2" - resolved "https://registry.npmjs.org/@graphql-codegen/visitor-plugin-common/-/visitor-plugin-common-2.12.2.tgz" - integrity sha512-UZJxY3mWwaM7yii7mSbl6Rxb6sJlpwGZc3QAs2Yd8MnYjXFPTBR0OO6aBTr9xuftl0pYwHu/pVK7vTPNnVmPww== +"@graphql-codegen/visitor-plugin-common@2.13.8", "@graphql-codegen/visitor-plugin-common@^2.13.5": + version "2.13.8" + resolved "https://registry.yarnpkg.com/@graphql-codegen/visitor-plugin-common/-/visitor-plugin-common-2.13.8.tgz#09bc6317b227e5a278f394f4cef0d6c2d1910597" + integrity sha512-IQWu99YV4wt8hGxIbBQPtqRuaWZhkQRG2IZKbMoSvh0vGeWb3dB0n0hSgKaOOxDY+tljtOf9MTcUYvJslQucMQ== dependencies: - "@graphql-codegen/plugin-helpers" "^2.6.2" + "@graphql-codegen/plugin-helpers" "^3.1.2" "@graphql-tools/optimize" "^1.3.0" "@graphql-tools/relay-operation-optimizer" "^6.5.0" - "@graphql-tools/utils" "^8.8.0" + "@graphql-tools/utils" "^9.0.0" auto-bind "~4.0.0" - change-case-all "1.0.14" + change-case-all "1.0.15" dependency-graph "^0.11.0" graphql-tag "^2.11.0" parse-filepath "^1.0.2" tslib "~2.4.0" "@graphql-tools/apollo-engine-loader@^7.3.6": - version "7.3.13" - resolved "https://registry.npmjs.org/@graphql-tools/apollo-engine-loader/-/apollo-engine-loader-7.3.13.tgz" - integrity sha512-fr2TcA9fM+H81ymdtyDaocZ/Ua4Vhhf1IvpQoPpuEUwLorREd86N8VORUEIBvEdJ1b7Bz7NqwL3RnM5m9KXftA== + version "7.3.26" + resolved "https://registry.yarnpkg.com/@graphql-tools/apollo-engine-loader/-/apollo-engine-loader-7.3.26.tgz#91e54460d5579933e42a2010b8688c3459c245d8" + integrity sha512-h1vfhdJFjnCYn9b5EY1Z91JTF0KB3hHVJNQIsiUV2mpQXZdeOXQoaWeYEKaiI5R6kwBw5PP9B0fv3jfUIG8LyQ== dependencies: - "@ardatan/sync-fetch" "0.0.1" - "@graphql-tools/utils" "8.12.0" - "@whatwg-node/fetch" "^0.4.0" + "@ardatan/sync-fetch" "^0.0.1" + "@graphql-tools/utils" "^9.2.1" + "@whatwg-node/fetch" "^0.8.0" tslib "^2.4.0" -"@graphql-tools/batch-execute@8.5.6": - version "8.5.6" - resolved "https://registry.npmjs.org/@graphql-tools/batch-execute/-/batch-execute-8.5.6.tgz" - integrity sha512-33vMvVDLBKsNJVNhcySVXF+zkcRL/GRs1Lt+MxygrYCypcAPpFm+amE2y9vOCFufuaKExIX7Lonnmxu19vPzaQ== +"@graphql-tools/batch-execute@^8.5.19": + version "8.5.19" + resolved "https://registry.yarnpkg.com/@graphql-tools/batch-execute/-/batch-execute-8.5.19.tgz#b204cc5bded1b1d12088b399d3b72eaf38d63132" + integrity sha512-eqofTMYPygg9wVPdA+p8lk4NBpaPTcDut6SlnDk9IiYdY23Yfo6pY7mzZ3b27GugI7HDtB2OZUxzZJSGsk6Qew== dependencies: - "@graphql-tools/utils" "8.12.0" - dataloader "2.1.0" + "@graphql-tools/utils" "^9.2.1" + dataloader "2.2.2" tslib "^2.4.0" - value-or-promise "1.0.11" + value-or-promise "1.0.12" -"@graphql-tools/code-file-loader@^7.3.1": - version "7.3.6" - resolved "https://registry.npmjs.org/@graphql-tools/code-file-loader/-/code-file-loader-7.3.6.tgz" - integrity sha512-PNWWSwSuQAqANerDwS0zdQ5FPipirv75TjjzBHnY+6AF/WvKq5sQiUQheA2P7B+MZc/KdQ7h/JAGMQOhKNVA+Q== +"@graphql-tools/code-file-loader@^7.3.13": + version "7.3.22" + resolved "https://registry.yarnpkg.com/@graphql-tools/code-file-loader/-/code-file-loader-7.3.22.tgz#e2495c4697da19dec2ba880b82f3ce4b1d5e72ba" + integrity sha512-Dq38L0UTjWlGKaV8pTfOAHB/hhhNVuVOApBhpqMBSuE20B9vFslSWJvDXQzbCcSPNMAeuvq0JNjIeIec0O4qyw== dependencies: - "@graphql-tools/graphql-tag-pluck" "7.3.6" - "@graphql-tools/utils" "8.12.0" + "@graphql-tools/graphql-tag-pluck" "7.5.1" + "@graphql-tools/utils" "^9.2.1" globby "^11.0.3" tslib "^2.4.0" unixify "^1.0.0" -"@graphql-tools/delegate@9.0.8": - version "9.0.8" - resolved "https://registry.npmjs.org/@graphql-tools/delegate/-/delegate-9.0.8.tgz" - integrity sha512-h+Uce0Np0eKj7wILOvlffRQ9jEQ4KelNXfqG8A2w+2sO2P6CbKsR7bJ4ch9lcUdCBbZ4Wg6L/K+1C4NRFfzbNw== +"@graphql-tools/delegate@^9.0.31": + version "9.0.31" + resolved "https://registry.yarnpkg.com/@graphql-tools/delegate/-/delegate-9.0.31.tgz#e147f25c3deaf9ce161867986da129f48ecc7190" + integrity sha512-kQ08ssI9RMC3ENBCcwR/vP+IAvi5oWiyLBlydlS62N/UoIEHi1AgjT4dPkIlCXy/U/f2l6ETbsWCcdoN/2SQ7A== + dependencies: + "@graphql-tools/batch-execute" "^8.5.19" + "@graphql-tools/executor" "^0.0.17" + "@graphql-tools/schema" "^9.0.18" + "@graphql-tools/utils" "^9.2.1" + dataloader "^2.2.2" + tslib "^2.5.0" + value-or-promise "^1.0.12" + +"@graphql-tools/executor-graphql-ws@^0.0.14": + version "0.0.14" + resolved "https://registry.yarnpkg.com/@graphql-tools/executor-graphql-ws/-/executor-graphql-ws-0.0.14.tgz#e0f53fc4cfc8a06cc461b2bc1edb4bb9a8e837ed" + integrity sha512-P2nlkAsPZKLIXImFhj0YTtny5NQVGSsKnhi7PzXiaHSXc6KkzqbWZHKvikD4PObanqg+7IO58rKFpGXP7eeO+w== + dependencies: + "@graphql-tools/utils" "^9.2.1" + "@repeaterjs/repeater" "3.0.4" + "@types/ws" "^8.0.0" + graphql-ws "5.12.1" + isomorphic-ws "5.0.0" + tslib "^2.4.0" + ws "8.13.0" + +"@graphql-tools/executor-http@^0.1.7", "@graphql-tools/executor-http@^0.1.9": + version "0.1.9" + resolved "https://registry.yarnpkg.com/@graphql-tools/executor-http/-/executor-http-0.1.9.tgz#ddd74ef376b4a2ed59c622acbcca068890854a30" + integrity sha512-tNzMt5qc1ptlHKfpSv9wVBVKCZ7gks6Yb/JcYJluxZIT4qRV+TtOFjpptfBU63usgrGVOVcGjzWc/mt7KhmmpQ== dependencies: - "@graphql-tools/batch-execute" "8.5.6" - "@graphql-tools/schema" "9.0.4" - "@graphql-tools/utils" "8.12.0" - dataloader "2.1.0" - tslib "~2.4.0" - value-or-promise "1.0.11" + "@graphql-tools/utils" "^9.2.1" + "@repeaterjs/repeater" "^3.0.4" + "@whatwg-node/fetch" "^0.8.1" + dset "^3.1.2" + extract-files "^11.0.0" + meros "^1.2.1" + tslib "^2.4.0" + value-or-promise "^1.0.12" -"@graphql-tools/git-loader@^7.2.1": - version "7.2.6" - resolved "https://registry.npmjs.org/@graphql-tools/git-loader/-/git-loader-7.2.6.tgz" - integrity sha512-QA94Gjp70xcdIYUbZDIm8fnuDN0IvoIIVVU+lXQemoV+vDeJKIjrP9tfOTjVDPIDXQnCYswvu9HLe8BlEApQYw== +"@graphql-tools/executor-legacy-ws@^0.0.11": + version "0.0.11" + resolved "https://registry.yarnpkg.com/@graphql-tools/executor-legacy-ws/-/executor-legacy-ws-0.0.11.tgz#a1e12be8279e92a363a23d4105461a34cd9e389e" + integrity sha512-4ai+NnxlNfvIQ4c70hWFvOZlSUN8lt7yc+ZsrwtNFbFPH/EroIzFMapAxM9zwyv9bH38AdO3TQxZ5zNxgBdvUw== dependencies: - "@graphql-tools/graphql-tag-pluck" "7.3.6" - "@graphql-tools/utils" "8.12.0" + "@graphql-tools/utils" "^9.2.1" + "@types/ws" "^8.0.0" + isomorphic-ws "5.0.0" + tslib "^2.4.0" + ws "8.13.0" + +"@graphql-tools/executor@^0.0.17": + version "0.0.17" + resolved "https://registry.yarnpkg.com/@graphql-tools/executor/-/executor-0.0.17.tgz#4f48693fd3fa2980c67ee0a1d1c2049942aa28e5" + integrity sha512-DVKyMclsNY8ei14FUrR4jn24VHB3EuFldD8yGWrcJ8cudSh47sknznvXN6q0ffqDeAf0IlZSaBCHrOTBqA7OfQ== + dependencies: + "@graphql-tools/utils" "^9.2.1" + "@graphql-typed-document-node/core" "3.2.0" + "@repeaterjs/repeater" "3.0.4" + tslib "^2.4.0" + value-or-promise "1.0.12" + +"@graphql-tools/git-loader@^7.2.13": + version "7.2.21" + resolved "https://registry.yarnpkg.com/@graphql-tools/git-loader/-/git-loader-7.2.21.tgz#9ebe7029bdb0d4b31c279fe462faaf832c945aa2" + integrity sha512-m9pZrhkc92iq7WRuZxA4NctNofQfhA34QoCLFCnm9krrvFUvzNZHhUvrfW5x3e63NTreu4+CFDPItBHeGZjoGA== + dependencies: + "@graphql-tools/graphql-tag-pluck" "7.5.1" + "@graphql-tools/utils" "^9.2.1" is-glob "4.0.3" micromatch "^4.0.4" tslib "^2.4.0" unixify "^1.0.0" -"@graphql-tools/github-loader@^7.3.6": - version "7.3.13" - resolved "https://registry.npmjs.org/@graphql-tools/github-loader/-/github-loader-7.3.13.tgz" - integrity sha512-4RTjdtdtQC+n9LJMKpBThQGD3LnpeLVjU2A7BoVuKR+NQPJtcUzzuD6dXeYm5RiOMOQUsPGxQWKhJenW20aLUg== +"@graphql-tools/github-loader@^7.3.20": + version "7.3.28" + resolved "https://registry.yarnpkg.com/@graphql-tools/github-loader/-/github-loader-7.3.28.tgz#a7166b136e8442bd8b3ab943ad3b66c84bcabfcf" + integrity sha512-OK92Lf9pmxPQvjUNv05b3tnVhw0JRfPqOf15jZjyQ8BfdEUrJoP32b4dRQQem/wyRL24KY4wOfArJNqzpsbwCA== dependencies: - "@ardatan/sync-fetch" "0.0.1" - "@graphql-tools/graphql-tag-pluck" "7.3.6" - "@graphql-tools/utils" "8.12.0" - "@whatwg-node/fetch" "^0.4.0" + "@ardatan/sync-fetch" "^0.0.1" + "@graphql-tools/executor-http" "^0.1.9" + "@graphql-tools/graphql-tag-pluck" "^7.4.6" + "@graphql-tools/utils" "^9.2.1" + "@whatwg-node/fetch" "^0.8.0" tslib "^2.4.0" + value-or-promise "^1.0.12" -"@graphql-tools/graphql-file-loader@^7.3.7", "@graphql-tools/graphql-file-loader@^7.5.0": - version "7.5.5" - resolved "https://registry.npmjs.org/@graphql-tools/graphql-file-loader/-/graphql-file-loader-7.5.5.tgz" - integrity sha512-OL+7qO1S66TpMK7OGz8Ag2WL08HlxKxrObVSDlxzWbSubWuXM5v959XscYAKRf6daYcVpkfNvO37QjflL9mjhg== +"@graphql-tools/graphql-file-loader@^7.3.7", "@graphql-tools/graphql-file-loader@^7.5.0", "@graphql-tools/graphql-file-loader@^7.5.11": + version "7.5.17" + resolved "https://registry.yarnpkg.com/@graphql-tools/graphql-file-loader/-/graphql-file-loader-7.5.17.tgz#7c281617ea3ab4db4d42a2bdb49850f2b937f0f9" + integrity sha512-hVwwxPf41zOYgm4gdaZILCYnKB9Zap7Ys9OhY1hbwuAuC4MMNY9GpUjoTU3CQc3zUiPoYStyRtUGkHSJZ3HxBw== dependencies: - "@graphql-tools/import" "6.7.6" - "@graphql-tools/utils" "8.12.0" + "@graphql-tools/import" "6.7.18" + "@graphql-tools/utils" "^9.2.1" globby "^11.0.3" tslib "^2.4.0" unixify "^1.0.0" -"@graphql-tools/graphql-tag-pluck@7.3.6": - version "7.3.6" - resolved "https://registry.npmjs.org/@graphql-tools/graphql-tag-pluck/-/graphql-tag-pluck-7.3.6.tgz" - integrity sha512-qULgqsOGKY1/PBqmP7fJZqbCg/TzPHKB9Wl51HGA9QjGymrzmrH5EjvsC8RtgdubF8yuTTVVFTz1lmSQ7RPssQ== +"@graphql-tools/graphql-tag-pluck@7.5.1", "@graphql-tools/graphql-tag-pluck@^7.4.6": + version "7.5.1" + resolved "https://registry.yarnpkg.com/@graphql-tools/graphql-tag-pluck/-/graphql-tag-pluck-7.5.1.tgz#6be7958ecbe8c3be2e918c110a77b61a0751e09f" + integrity sha512-TgKcSvs2sdFHMbUzyhR9bnYfwFHxqdpotX5Q0OcMmJkuieQe1q60+eEANWlCrjuEqr2giw528Ydq57MIWLKlNA== dependencies: "@babel/parser" "^7.16.8" + "@babel/plugin-syntax-import-assertions" "7.20.0" "@babel/traverse" "^7.16.8" "@babel/types" "^7.16.8" - "@graphql-tools/utils" "8.12.0" + "@graphql-tools/utils" "^9.2.1" tslib "^2.4.0" -"@graphql-tools/import@6.7.6": - version "6.7.6" - resolved "https://registry.npmjs.org/@graphql-tools/import/-/import-6.7.6.tgz" - integrity sha512-WtUyiO2qCaK/H4u81zAw/NbBvCOzwKl4N+Vl+FqrFCzYobscwL6x6roePyoXM1O3+JJIIn3CETv4kg4kwxaBVw== +"@graphql-tools/import@6.7.18": + version "6.7.18" + resolved "https://registry.yarnpkg.com/@graphql-tools/import/-/import-6.7.18.tgz#ad092d8a4546bb6ffc3e871e499eec7ac368680b" + integrity sha512-XQDdyZTp+FYmT7as3xRWH/x8dx0QZA2WZqfMF5EWb36a0PiH7WwlRQYIdyYXj8YCLpiWkeBXgBRHmMnwEYR8iQ== dependencies: - "@graphql-tools/utils" "8.12.0" + "@graphql-tools/utils" "^9.2.1" resolve-from "5.0.0" tslib "^2.4.0" "@graphql-tools/json-file-loader@^7.3.7", "@graphql-tools/json-file-loader@^7.4.1": - version "7.4.6" - resolved "https://registry.npmjs.org/@graphql-tools/json-file-loader/-/json-file-loader-7.4.6.tgz" - integrity sha512-34AfjCitO4NtJ5AcXYLcFF3GDsMVTycrljSaBA2t1d7B4bMPtREDphKXLMc/Uf2zW6IW1i1sZZyrcmArPy1Z8A== + version "7.4.18" + resolved "https://registry.yarnpkg.com/@graphql-tools/json-file-loader/-/json-file-loader-7.4.18.tgz#d78ae40979bde51cfc59717757354afc9e35fba2" + integrity sha512-AJ1b6Y1wiVgkwsxT5dELXhIVUPs/u3VZ8/0/oOtpcoyO/vAeM5rOvvWegzicOOnQw8G45fgBRMkkRfeuwVt6+w== dependencies: - "@graphql-tools/utils" "8.12.0" + "@graphql-tools/utils" "^9.2.1" globby "^11.0.3" tslib "^2.4.0" unixify "^1.0.0" -"@graphql-tools/load@^7.5.5", "@graphql-tools/load@^7.7.1": - version "7.7.7" - resolved "https://registry.npmjs.org/@graphql-tools/load/-/load-7.7.7.tgz" - integrity sha512-IpI2672zcoAX4FLjcH5kvHc7eqjPyLP1svrIcZKQenv0GRS6dW0HI9E5UCBs0y/yy8yW6s+SvpmNsfIlkMj3Kw== +"@graphql-tools/load@^7.5.5", "@graphql-tools/load@^7.8.0", "@graphql-tools/load@^7.8.6": + version "7.8.14" + resolved "https://registry.yarnpkg.com/@graphql-tools/load/-/load-7.8.14.tgz#f2356f9a5f658a42e33934ae036e4b2cadf2d1e9" + integrity sha512-ASQvP+snHMYm+FhIaLxxFgVdRaM0vrN9wW2BKInQpktwWTXVyk+yP5nQUCEGmn0RTdlPKrffBaigxepkEAJPrg== dependencies: - "@graphql-tools/schema" "9.0.4" - "@graphql-tools/utils" "8.12.0" + "@graphql-tools/schema" "^9.0.18" + "@graphql-tools/utils" "^9.2.1" p-limit "3.1.0" tslib "^2.4.0" -"@graphql-tools/merge@8.3.6", "@graphql-tools/merge@^8.2.6": - version "8.3.6" - resolved "https://registry.npmjs.org/@graphql-tools/merge/-/merge-8.3.6.tgz" - integrity sha512-uUBokxXi89bj08P+iCvQk3Vew4vcfL5ZM6NTylWi8PIpoq4r5nJ625bRuN8h2uubEdRiH8ntN9M4xkd/j7AybQ== +"@graphql-tools/merge@^8.2.6", "@graphql-tools/merge@^8.4.1": + version "8.4.1" + resolved "https://registry.yarnpkg.com/@graphql-tools/merge/-/merge-8.4.1.tgz#52879e5f73565f504ceea04fcd9ef90a6e733c62" + integrity sha512-hssnPpZ818mxgl5+GfyOOSnnflAxiaTn1A1AojZcIbh4J52sS1Q0gSuBR5VrnUDjuxiqoCotpXdAQl+K+U6KLQ== dependencies: - "@graphql-tools/utils" "8.12.0" + "@graphql-tools/utils" "^9.2.1" tslib "^2.4.0" "@graphql-tools/optimize@^1.3.0": version "1.3.1" - resolved "https://registry.npmjs.org/@graphql-tools/optimize/-/optimize-1.3.1.tgz" + resolved "https://registry.yarnpkg.com/@graphql-tools/optimize/-/optimize-1.3.1.tgz#29407991478dbbedc3e7deb8c44f46acb4e9278b" integrity sha512-5j5CZSRGWVobt4bgRRg7zhjPiSimk+/zIuColih8E8DxuFOaJ+t0qu7eZS5KXWBkjcd4BPNuhUPpNlEmHPqVRQ== dependencies: tslib "^2.4.0" -"@graphql-tools/prisma-loader@^7.2.7": - version "7.2.24" - resolved "https://registry.npmjs.org/@graphql-tools/prisma-loader/-/prisma-loader-7.2.24.tgz" - integrity sha512-CRQvoraCIcQa44RMSF3EpzLedouR9SSLC6ylFEHCFf2b8r1EfbK5NOdLL1V9znOjjapI6/oJURlFWdldcAaMgg== +"@graphql-tools/prisma-loader@^7.2.49": + version "7.2.70" + resolved "https://registry.yarnpkg.com/@graphql-tools/prisma-loader/-/prisma-loader-7.2.70.tgz#d57aa116d214cacee91a1c3cfd3940e71988f271" + integrity sha512-YcV1pScllv2uP+OSNsLOac7yccexa/AY6BoLIsCfrVmFQoo7KUlz3oPiyZ6eIbGYmU5fp3MWt3Wf0cL4WgAnlw== dependencies: - "@graphql-tools/url-loader" "7.16.4" - "@graphql-tools/utils" "8.12.0" + "@graphql-tools/url-loader" "7.17.18" + "@graphql-tools/utils" "^9.2.1" "@types/js-yaml" "^4.0.0" "@types/json-stable-stringify" "^1.0.32" - "@types/jsonwebtoken" "^8.5.0" + "@whatwg-node/fetch" "^0.8.2" chalk "^4.1.0" debug "^4.3.1" dotenv "^16.0.0" - graphql-request "^5.0.0" + graphql-request "^6.0.0" http-proxy-agent "^5.0.0" https-proxy-agent "^5.0.0" - isomorphic-fetch "^3.0.0" + jose "^4.11.4" js-yaml "^4.0.0" json-stable-stringify "^1.0.1" - jsonwebtoken "^8.5.1" lodash "^4.17.20" scuid "^1.1.0" tslib "^2.4.0" yaml-ast-parser "^0.0.43" "@graphql-tools/relay-operation-optimizer@^6.5.0": - version "6.5.6" - resolved "https://registry.npmjs.org/@graphql-tools/relay-operation-optimizer/-/relay-operation-optimizer-6.5.6.tgz" - integrity sha512-2KjaWYxD/NC6KtckbDEAbN46QO+74d1SBaZQ26qQjWhyoAjon12xlMW4HWxHEN0d0xuz0cnOVUVc+t4wVXePUg== + version "6.5.18" + resolved "https://registry.yarnpkg.com/@graphql-tools/relay-operation-optimizer/-/relay-operation-optimizer-6.5.18.tgz#a1b74a8e0a5d0c795b8a4d19629b654cf66aa5ab" + integrity sha512-mc5VPyTeV+LwiM+DNvoDQfPqwQYhPV/cl5jOBjTgSniyaq8/86aODfMkrE2OduhQ5E00hqrkuL2Fdrgk0w1QJg== dependencies: "@ardatan/relay-compiler" "12.0.0" - "@graphql-tools/utils" "8.12.0" + "@graphql-tools/utils" "^9.2.1" tslib "^2.4.0" -"@graphql-tools/schema@9.0.4", "@graphql-tools/schema@^9.0.0": - version "9.0.4" - resolved "https://registry.npmjs.org/@graphql-tools/schema/-/schema-9.0.4.tgz" - integrity sha512-B/b8ukjs18fq+/s7p97P8L1VMrwapYc3N2KvdG/uNThSazRRn8GsBK0Nr+FH+mVKiUfb4Dno79e3SumZVoHuOQ== +"@graphql-tools/schema@^9.0.0", "@graphql-tools/schema@^9.0.18": + version "9.0.18" + resolved "https://registry.yarnpkg.com/@graphql-tools/schema/-/schema-9.0.18.tgz#f66dd5e76e1aba85904cb649fde88ae01718c45c" + integrity sha512-Kckb+qoo36o5RSIVfBNU5XR5fOg4adNa1xuhhUgbQejDaI684tIJbTWwYbrDPVEGL/dqJJX3rrsq7RLufjNFoQ== dependencies: - "@graphql-tools/merge" "8.3.6" - "@graphql-tools/utils" "8.12.0" + "@graphql-tools/merge" "^8.4.1" + "@graphql-tools/utils" "^9.2.1" tslib "^2.4.0" - value-or-promise "1.0.11" - -"@graphql-tools/url-loader@7.16.4", "@graphql-tools/url-loader@^7.13.2", "@graphql-tools/url-loader@^7.9.7": - version "7.16.4" - resolved "https://registry.npmjs.org/@graphql-tools/url-loader/-/url-loader-7.16.4.tgz" - integrity sha512-7yGrJJNcqVQIplCyVLk7tW2mAgYyZ06FRmCBnzw3B61+aIjFavrm6YlnKkhdqYSYyFmIbVcigdP3vkoYIu23TA== - dependencies: - "@ardatan/sync-fetch" "0.0.1" - "@graphql-tools/delegate" "9.0.8" - "@graphql-tools/utils" "8.12.0" - "@graphql-tools/wrap" "9.2.3" + value-or-promise "1.0.12" + +"@graphql-tools/url-loader@7.17.18", "@graphql-tools/url-loader@^7.13.2", "@graphql-tools/url-loader@^7.9.7": + version "7.17.18" + resolved "https://registry.yarnpkg.com/@graphql-tools/url-loader/-/url-loader-7.17.18.tgz#3e253594d23483e4c0dd3a4c3dd2ad5cd0141192" + integrity sha512-ear0CiyTj04jCVAxi7TvgbnGDIN2HgqzXzwsfcqiVg9cvjT40NcMlZ2P1lZDgqMkZ9oyLTV8Bw6j+SyG6A+xPw== + dependencies: + "@ardatan/sync-fetch" "^0.0.1" + "@graphql-tools/delegate" "^9.0.31" + "@graphql-tools/executor-graphql-ws" "^0.0.14" + "@graphql-tools/executor-http" "^0.1.7" + "@graphql-tools/executor-legacy-ws" "^0.0.11" + "@graphql-tools/utils" "^9.2.1" + "@graphql-tools/wrap" "^9.4.2" "@types/ws" "^8.0.0" - "@whatwg-node/fetch" "^0.4.0" - dset "^3.1.2" - extract-files "^11.0.0" - graphql-ws "^5.4.1" + "@whatwg-node/fetch" "^0.8.0" isomorphic-ws "^5.0.0" - meros "^1.1.4" tslib "^2.4.0" value-or-promise "^1.0.11" - ws "^8.3.0" + ws "^8.12.0" -"@graphql-tools/utils@8.12.0", "@graphql-tools/utils@^8.6.5", "@graphql-tools/utils@^8.8.0", "@graphql-tools/utils@^8.9.0": - version "8.12.0" - resolved "https://registry.npmjs.org/@graphql-tools/utils/-/utils-8.12.0.tgz" - integrity sha512-TeO+MJWGXjUTS52qfK4R8HiPoF/R7X+qmgtOYd8DTH0l6b+5Y/tlg5aGeUJefqImRq7nvi93Ms40k/Uz4D5CWw== +"@graphql-tools/utils@^8.8.0": + version "8.13.1" + resolved "https://registry.yarnpkg.com/@graphql-tools/utils/-/utils-8.13.1.tgz#b247607e400365c2cd87ff54654d4ad25a7ac491" + integrity sha512-qIh9yYpdUFmctVqovwMdheVNJqFh+DQNWIhX87FJStfXYnmweBUDATok9fWPleKeFwxnW8IapKmY8m8toJEkAw== dependencies: tslib "^2.4.0" -"@graphql-tools/wrap@9.2.3": - version "9.2.3" - resolved "https://registry.npmjs.org/@graphql-tools/wrap/-/wrap-9.2.3.tgz" - integrity sha512-aiLjcAuUwcvA1mF25c7KFDPXEdQDpo6bTDyAMCSlFXpF4T01hoxLERmfmbRmsmy/dP80ZB31a+t70aspVdqZSA== +"@graphql-tools/utils@^9.0.0", "@graphql-tools/utils@^9.1.1", "@graphql-tools/utils@^9.2.1": + version "9.2.1" + resolved "https://registry.yarnpkg.com/@graphql-tools/utils/-/utils-9.2.1.tgz#1b3df0ef166cfa3eae706e3518b17d5922721c57" + integrity sha512-WUw506Ql6xzmOORlriNrD6Ugx+HjVgYxt9KCXD9mHAak+eaXSwuGGPyE60hy9xaDEoXKBsG7SkG69ybitaVl6A== + dependencies: + "@graphql-typed-document-node/core" "^3.1.1" + tslib "^2.4.0" + +"@graphql-tools/wrap@^9.4.2": + version "9.4.2" + resolved "https://registry.yarnpkg.com/@graphql-tools/wrap/-/wrap-9.4.2.tgz#30835587c4c73be1780908a7cb077d8013aa2703" + integrity sha512-DFcd9r51lmcEKn0JW43CWkkI2D6T9XI1juW/Yo86i04v43O9w2/k4/nx2XTJv4Yv+iXwUw7Ok81PGltwGJSDSA== dependencies: - "@graphql-tools/delegate" "9.0.8" - "@graphql-tools/schema" "9.0.4" - "@graphql-tools/utils" "8.12.0" + "@graphql-tools/delegate" "^9.0.31" + "@graphql-tools/schema" "^9.0.18" + "@graphql-tools/utils" "^9.2.1" tslib "^2.4.0" - value-or-promise "1.0.11" + value-or-promise "^1.0.12" + +"@graphql-typed-document-node/core@3.2.0", "@graphql-typed-document-node/core@^3.2.0": + version "3.2.0" + resolved "https://registry.yarnpkg.com/@graphql-typed-document-node/core/-/core-3.2.0.tgz#5f3d96ec6b2354ad6d8a28bf216a1d97b5426861" + integrity sha512-mB9oAsNCm9aM3/SOv4YtBMqZbYj10R7dkq8byBqxGY/ncFwhf2oQzMV+LCRlWoDSEBJ3COiR1yeDvMtsoOsuFQ== "@graphql-typed-document-node/core@^3.1.1": version "3.1.1" resolved "https://registry.npmjs.org/@graphql-typed-document-node/core/-/core-3.1.1.tgz" integrity sha512-NQ17ii0rK1b34VZonlmT2QMJFI70m0TRwbknO/ihlbatXyaktDhN/98vBiUU6kNBPljqGqyIrl2T4nY2RpFANg== -"@humanwhocodes/config-array@^0.5.0": - version "0.5.0" - resolved "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz" - integrity sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg== +"@humanwhocodes/config-array@^0.11.8": + version "0.11.8" + resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.8.tgz#03595ac2075a4dc0f191cc2131de14fbd7d410b9" + integrity sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g== dependencies: - "@humanwhocodes/object-schema" "^1.2.0" + "@humanwhocodes/object-schema" "^1.2.1" debug "^4.1.1" - minimatch "^3.0.4" + minimatch "^3.0.5" -"@humanwhocodes/object-schema@^1.2.0": +"@humanwhocodes/module-importer@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c" + integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA== + +"@humanwhocodes/object-schema@^1.2.1": version "1.2.1" - resolved "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz" + resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45" integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== -"@iarna/toml@^2.2.5": - version "2.2.5" - resolved "https://registry.npmjs.org/@iarna/toml/-/toml-2.2.5.tgz" - integrity sha512-trnsAYxU3xnS1gPHPyU961coFyLkh4gAD/0zQ5mymY4yOZ+CYvsPqUbOFSw0aDM4y0tV7tiFxL/1XfXPNC6IPg== - -"@jridgewell/gen-mapping@^0.1.0": - version "0.1.1" - resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz" - integrity sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w== +"@jridgewell/gen-mapping@^0.3.0": + version "0.3.3" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz#7e02e6eb5df901aaedb08514203b096614024098" + integrity sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ== dependencies: - "@jridgewell/set-array" "^1.0.0" + "@jridgewell/set-array" "^1.0.1" "@jridgewell/sourcemap-codec" "^1.4.10" + "@jridgewell/trace-mapping" "^0.3.9" "@jridgewell/gen-mapping@^0.3.2": version "0.3.2" @@ -1229,29 +1423,37 @@ "@jridgewell/sourcemap-codec" "^1.4.10" "@jridgewell/trace-mapping" "^0.3.9" -"@jridgewell/resolve-uri@^3.0.3": +"@jridgewell/resolve-uri@3.1.0", "@jridgewell/resolve-uri@^3.0.3": version "3.1.0" resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz" integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== -"@jridgewell/set-array@^1.0.0", "@jridgewell/set-array@^1.0.1": +"@jridgewell/set-array@^1.0.1": version "1.1.2" resolved "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz" integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== -"@jridgewell/sourcemap-codec@^1.4.10": +"@jridgewell/sourcemap-codec@1.4.14", "@jridgewell/sourcemap-codec@^1.4.10": version "1.4.14" resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz" integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== "@jridgewell/trace-mapping@0.3.9": version "0.3.9" - resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz#6534fd5933a53ba7cbf3a17615e273a0d1273ff9" integrity sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ== dependencies: "@jridgewell/resolve-uri" "^3.0.3" "@jridgewell/sourcemap-codec" "^1.4.10" +"@jridgewell/trace-mapping@^0.3.17": + version "0.3.18" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz#25783b2086daf6ff1dcb53c9249ae480e4dd4cd6" + integrity sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA== + dependencies: + "@jridgewell/resolve-uri" "3.1.0" + "@jridgewell/sourcemap-codec" "1.4.14" + "@jridgewell/trace-mapping@^0.3.9": version "0.3.15" resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.15.tgz" @@ -1299,10 +1501,10 @@ resolved "https://registry.yarnpkg.com/@next/env/-/env-13.1.6.tgz#c4925609f16142ded1a5cb833359ab17359b7a93" integrity sha512-s+W9Fdqh5MFk6ECrbnVmmAOwxKQuhGMT7xXHrkYIBMBcTiOqNWhv5KbJIboKR5STXxNXl32hllnvKaffzFaWQg== -"@next/eslint-plugin-next@12.3.1": - version "12.3.1" - resolved "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-12.3.1.tgz" - integrity sha512-sw+lTf6r6P0j+g/n9y4qdWWI2syPqZx+uc0+B/fRENqfR3KpSid6MIKqc9gNwGhJASazEQ5b3w8h4cAET213jw== +"@next/eslint-plugin-next@13.3.0": + version "13.3.0" + resolved "https://registry.yarnpkg.com/@next/eslint-plugin-next/-/eslint-plugin-next-13.3.0.tgz#3a4742b0817575cc0dd4d152cb10363584c215ac" + integrity sha512-wuGN5qSEjSgcq9fVkH0Y/qIPFjnZtW3ZPwfjJOn7l/rrf6y8J24h/lo61kwqunTyzZJm/ETGfGVU9PUs8cnzEA== dependencies: glob "7.1.7" @@ -1449,7 +1651,7 @@ resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz" integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== -"@nodelib/fs.walk@^1.2.3": +"@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8": version "1.2.8" resolved "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz" integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== @@ -1457,10 +1659,10 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" -"@peculiar/asn1-schema@^2.1.6": - version "2.3.0" - resolved "https://registry.npmjs.org/@peculiar/asn1-schema/-/asn1-schema-2.3.0.tgz" - integrity sha512-DtNLAG4vmDrdSJFPe7rypkcj597chNQL7u+2dBtYo5mh7VW2+im6ke+O0NVr8W1f4re4C3F71LhoMb0Yxqa48Q== +"@peculiar/asn1-schema@^2.3.6": + version "2.3.6" + resolved "https://registry.yarnpkg.com/@peculiar/asn1-schema/-/asn1-schema-2.3.6.tgz#3dd3c2ade7f702a9a94dfb395c192f5fa5d6b922" + integrity sha512-izNRxPoaeJeg/AyH8hER6s+H7p4itk+03QCa4sbxI3lNdseQYCuxzgsuNK8bTXChtLTjpJz6NmXKA73qLa3rCA== dependencies: asn1js "^3.0.5" pvtsutils "^1.3.2" @@ -1468,21 +1670,33 @@ "@peculiar/json-schema@^1.1.12": version "1.1.12" - resolved "https://registry.npmjs.org/@peculiar/json-schema/-/json-schema-1.1.12.tgz" + resolved "https://registry.yarnpkg.com/@peculiar/json-schema/-/json-schema-1.1.12.tgz#fe61e85259e3b5ba5ad566cb62ca75b3d3cd5339" integrity sha512-coUfuoMeIB7B8/NMekxaDzLhaYmp0HZNPEjYRm9goRou8UZIC3z21s0sL9AWoCw4EG876QyO3kYrc61WNF9B/w== dependencies: tslib "^2.0.0" "@peculiar/webcrypto@^1.4.0": - version "1.4.0" - resolved "https://registry.npmjs.org/@peculiar/webcrypto/-/webcrypto-1.4.0.tgz" - integrity sha512-U58N44b2m3OuTgpmKgf0LPDOmP3bhwNz01vAnj1mBwxBASRhptWYK+M3zG+HBkDqGQM+bFsoIihTW8MdmPXEqg== + version "1.4.3" + resolved "https://registry.yarnpkg.com/@peculiar/webcrypto/-/webcrypto-1.4.3.tgz#078b3e8f598e847b78683dc3ba65feb5029b93a7" + integrity sha512-VtaY4spKTdN5LjJ04im/d/joXuvLbQdgy5Z4DXF4MFZhQ+MTrejbNMkfZBp1Bs3O5+bFqnJgyGdPuZQflvIa5A== dependencies: - "@peculiar/asn1-schema" "^2.1.6" + "@peculiar/asn1-schema" "^2.3.6" "@peculiar/json-schema" "^1.1.12" pvtsutils "^1.3.2" + tslib "^2.5.0" + webcrypto-core "^1.7.7" + +"@pkgr/utils@^2.3.1": + version "2.3.1" + resolved "https://registry.yarnpkg.com/@pkgr/utils/-/utils-2.3.1.tgz#0a9b06ffddee364d6642b3cd562ca76f55b34a03" + integrity sha512-wfzX8kc1PMyUILA+1Z/EqoE4UCXGy0iRGMhPwdfae1+f0OXlLqCk+By+aMzgJBzR9AzS4CDizioG6Ss1gvAFJw== + dependencies: + cross-spawn "^7.0.3" + is-glob "^4.0.3" + open "^8.4.0" + picocolors "^1.0.0" + tiny-glob "^0.2.9" tslib "^2.4.0" - webcrypto-core "^1.7.4" "@polka/url@^1.0.0-next.20": version "1.0.0-next.21" @@ -1730,11 +1944,23 @@ dependencies: "@babel/runtime" "^7.13.10" +"@repeaterjs/repeater@3.0.4", "@repeaterjs/repeater@^3.0.4": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@repeaterjs/repeater/-/repeater-3.0.4.tgz#a04d63f4d1bf5540a41b01a921c9a7fddc3bd1ca" + integrity sha512-AW8PKd6iX3vAZ0vA43nOUOnbq/X5ihgU+mSXXqunMkeQADGiqw/PY0JNeYtD5sr0PAy51YPgAPbDoeapv9r8WA== + "@rushstack/eslint-patch@^1.1.3": version "1.2.0" resolved "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.2.0.tgz" integrity sha512-sXo/qW2/pAcmT43VoRKOJbDOfV3cYpq3szSVfIThQXNt+E4DfKj361vaAt3c88U5tPUxzEswam7GW48PJqtKAg== +"@samverschueren/stream-to-observable@^0.3.0": + version "0.3.1" + resolved "https://registry.yarnpkg.com/@samverschueren/stream-to-observable/-/stream-to-observable-0.3.1.tgz#a21117b19ee9be70c379ec1877537ef2e1c63301" + integrity sha512-c/qwwcHyafOQuVQJj0IlBjf5yYgBI7YPJ77k4fOJYesb41jio65eaJODRUmfYKhTOFBrIZ66kgvGPlNbjuoRdQ== + dependencies: + any-observable "^0.3.0" + "@swc/helpers@0.4.11": version "0.4.11" resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.4.11.tgz#db23a376761b3d31c26502122f349a21b592c8de" @@ -1764,27 +1990,27 @@ "@tootallnate/once@2": version "2.0.0" - resolved "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-2.0.0.tgz#f544a148d3ab35801c1f633a7441fd87c2e484bf" integrity sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A== "@tsconfig/node10@^1.0.7": version "1.0.9" - resolved "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz" + resolved "https://registry.yarnpkg.com/@tsconfig/node10/-/node10-1.0.9.tgz#df4907fc07a886922637b15e02d4cebc4c0021b2" integrity sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA== "@tsconfig/node12@^1.0.7": version "1.0.11" - resolved "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz" + resolved "https://registry.yarnpkg.com/@tsconfig/node12/-/node12-1.0.11.tgz#ee3def1f27d9ed66dac6e46a295cffb0152e058d" integrity sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag== "@tsconfig/node14@^1.0.0": version "1.0.3" - resolved "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz" + resolved "https://registry.yarnpkg.com/@tsconfig/node14/-/node14-1.0.3.tgz#e4386316284f00b98435bf40f72f75a09dabf6c1" integrity sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow== "@tsconfig/node16@^1.0.2": version "1.0.3" - resolved "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz" + resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.3.tgz#472eaab5f15c1ffdd7f8628bd4c4f753995ec79e" integrity sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ== "@types/hoist-non-react-statics@*": @@ -1809,17 +2035,17 @@ "@types/js-yaml@^4.0.0": version "4.0.5" - resolved "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-4.0.5.tgz" + resolved "https://registry.yarnpkg.com/@types/js-yaml/-/js-yaml-4.0.5.tgz#738dd390a6ecc5442f35e7f03fa1431353f7e138" integrity sha512-FhpRzf927MNQdRZP0J5DLIdTXhjLYzeUTmLAu69mnVksLH9CJY3IuSeEgbKUki7GQZm0WqDkGzyxju2EZGD2wA== -"@types/json-schema@^7.0.7": +"@types/json-schema@^7.0.9": version "7.0.11" - resolved "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.11.tgz#d421b6c527a3037f7c84433fd2c4229e016863d3" integrity sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ== "@types/json-stable-stringify@^1.0.32": version "1.0.34" - resolved "https://registry.npmjs.org/@types/json-stable-stringify/-/json-stable-stringify-1.0.34.tgz" + resolved "https://registry.yarnpkg.com/@types/json-stable-stringify/-/json-stable-stringify-1.0.34.tgz#c0fb25e4d957e0ee2e497c1f553d7f8bb668fd75" integrity sha512-s2cfwagOQAS8o06TcwKfr9Wx11dNGbH2E9vJz1cqV+a/LOyhWNLUNd6JSRYNzvB4d29UuJX2M0Dj9vE1T8fRXw== "@types/json5@^0.0.29": @@ -1827,28 +2053,26 @@ resolved "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz" integrity sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ== -"@types/jsonwebtoken@^8.5.0": - version "8.5.9" - resolved "https://registry.npmjs.org/@types/jsonwebtoken/-/jsonwebtoken-8.5.9.tgz" - integrity sha512-272FMnFGzAVMGtu9tkr29hRL6bZj4Zs1KZNeHLnKqAvp06tAIcarTMwOh8/8bz4FmKRcMxZhZNeUAQsNLoiPhg== - dependencies: - "@types/node" "*" - "@types/minimist@^1.2.0": version "1.2.2" resolved "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz" integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== -"@types/node@*", "@types/node@^17.0.24": - version "17.0.45" - resolved "https://registry.npmjs.org/@types/node/-/node-17.0.45.tgz" - integrity sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw== +"@types/node@*": + version "18.15.11" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.15.11.tgz#b3b790f09cb1696cffcec605de025b088fa4225f" + integrity sha512-E5Kwq2n4SbMzQOn6wnmBjuK9ouqlURrcZDVfbo9ftDDTFt3nk7ZKK4GMOzoYgnpQJKcxwQw+lGaBvvlMo0qN/Q== "@types/node@^12.7.1": version "12.20.55" resolved "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz" integrity sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ== +"@types/node@^17.0.24": + version "17.0.45" + resolved "https://registry.npmjs.org/@types/node/-/node-17.0.45.tgz" + integrity sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw== + "@types/normalize-package-data@^2.4.0": version "2.4.1" resolved "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz" @@ -1856,7 +2080,7 @@ "@types/parse-json@^4.0.0": version "4.0.0" - resolved "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== "@types/prop-types@*": @@ -1890,6 +2114,11 @@ resolved "https://registry.npmjs.org/@types/semver/-/semver-6.2.3.tgz" integrity sha512-KQf+QAMWKMrtBMsB8/24w53tEsxllMj6TuA80TT/5igJalLI/zm0L3oXRbIAl4Ohfc85gyHX/jhMwsVkmhLU4A== +"@types/semver@^7.3.12": + version "7.3.13" + resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.3.13.tgz#da4bfd73f49bd541d28920ab0e2bf0ee80f71c91" + integrity sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw== + "@types/styled-components@^5.1.26": version "5.1.26" resolved "https://registry.npmjs.org/@types/styled-components/-/styled-components-5.1.26.tgz" @@ -1900,165 +2129,146 @@ csstype "^3.0.2" "@types/ws@^8.0.0": - version "8.5.3" - resolved "https://registry.npmjs.org/@types/ws/-/ws-8.5.3.tgz" - integrity sha512-6YOoWjruKj1uLf3INHH7D3qTXwFfEsg1kf3c0uDdSBJwfa/llkwIjrAGV7j7mVgGNbzTQ3HiHKKDXl6bJPD97w== + version "8.5.4" + resolved "https://registry.yarnpkg.com/@types/ws/-/ws-8.5.4.tgz#bb10e36116d6e570dd943735f86c933c1587b8a5" + integrity sha512-zdQDHKUgcX/zBc4GrwsE/7dVdAD8JR4EuiAXiiUhhfyIJXXb2+PrGshFyeXWQPMmmZ2XxgaqclgpIC7eTXc1mg== dependencies: "@types/node" "*" -"@typescript-eslint/eslint-plugin@^4.33.0": - version "4.33.0" - resolved "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.33.0.tgz" - integrity sha512-aINiAxGVdOl1eJyVjaWn/YcVAq4Gi/Yo35qHGCnqbWVz61g39D0h23veY/MA0rFFGfxK7TySg2uwDeNv+JgVpg== +"@typescript-eslint/eslint-plugin@^5.58.0": + version "5.58.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.58.0.tgz#b1d4b0ad20243269d020ef9bbb036a40b0849829" + integrity sha512-vxHvLhH0qgBd3/tW6/VccptSfc8FxPQIkmNTVLWcCOVqSBvqpnKkBTYrhcGlXfSnd78azwe+PsjYFj0X34/njA== dependencies: - "@typescript-eslint/experimental-utils" "4.33.0" - "@typescript-eslint/scope-manager" "4.33.0" - debug "^4.3.1" - functional-red-black-tree "^1.0.1" - ignore "^5.1.8" - regexpp "^3.1.0" - semver "^7.3.5" + "@eslint-community/regexpp" "^4.4.0" + "@typescript-eslint/scope-manager" "5.58.0" + "@typescript-eslint/type-utils" "5.58.0" + "@typescript-eslint/utils" "5.58.0" + debug "^4.3.4" + grapheme-splitter "^1.0.4" + ignore "^5.2.0" + natural-compare-lite "^1.4.0" + semver "^7.3.7" tsutils "^3.21.0" -"@typescript-eslint/experimental-utils@4.33.0": - version "4.33.0" - resolved "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.33.0.tgz" - integrity sha512-zeQjOoES5JFjTnAhI5QY7ZviczMzDptls15GFsI6jyUOq0kOf9+WonkhtlIhh0RgHRnqj5gdNxW5j1EvAyYg6Q== - dependencies: - "@types/json-schema" "^7.0.7" - "@typescript-eslint/scope-manager" "4.33.0" - "@typescript-eslint/types" "4.33.0" - "@typescript-eslint/typescript-estree" "4.33.0" - eslint-scope "^5.1.1" - eslint-utils "^3.0.0" - -"@typescript-eslint/parser@^4.33.0": - version "4.33.0" - resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.33.0.tgz" - integrity sha512-ZohdsbXadjGBSK0/r+d87X0SBmKzOq4/S5nzK6SBgJspFo9/CUDJ7hjayuze+JK7CZQLDMroqytp7pOcFKTxZA== - dependencies: - "@typescript-eslint/scope-manager" "4.33.0" - "@typescript-eslint/types" "4.33.0" - "@typescript-eslint/typescript-estree" "4.33.0" - debug "^4.3.1" - -"@typescript-eslint/parser@^5.21.0": - version "5.39.0" - resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.39.0.tgz" - integrity sha512-PhxLjrZnHShe431sBAGHaNe6BDdxAASDySgsBCGxcBecVCi8NQWxQZMcizNA4g0pN51bBAn/FUfkWG3SDVcGlA== +"@typescript-eslint/parser@^5.42.0", "@typescript-eslint/parser@^5.58.0": + version "5.58.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.58.0.tgz#2ac4464cf48bef2e3234cb178ede5af352dddbc6" + integrity sha512-ixaM3gRtlfrKzP8N6lRhBbjTow1t6ztfBvQNGuRM8qH1bjFFXIJ35XY+FC0RRBKn3C6cT+7VW1y8tNm7DwPHDQ== dependencies: - "@typescript-eslint/scope-manager" "5.39.0" - "@typescript-eslint/types" "5.39.0" - "@typescript-eslint/typescript-estree" "5.39.0" + "@typescript-eslint/scope-manager" "5.58.0" + "@typescript-eslint/types" "5.58.0" + "@typescript-eslint/typescript-estree" "5.58.0" debug "^4.3.4" -"@typescript-eslint/scope-manager@4.33.0": - version "4.33.0" - resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.33.0.tgz" - integrity sha512-5IfJHpgTsTZuONKbODctL4kKuQje/bzBRkwHE8UOZ4f89Zeddg+EGZs8PD8NcN4LdM3ygHWYB3ukPAYjvl/qbQ== +"@typescript-eslint/scope-manager@5.58.0": + version "5.58.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.58.0.tgz#5e023a48352afc6a87be6ce3c8e763bc9e2f0bc8" + integrity sha512-b+w8ypN5CFvrXWQb9Ow9T4/6LC2MikNf1viLkYTiTbkQl46CnR69w7lajz1icW0TBsYmlpg+mRzFJ4LEJ8X9NA== dependencies: - "@typescript-eslint/types" "4.33.0" - "@typescript-eslint/visitor-keys" "4.33.0" + "@typescript-eslint/types" "5.58.0" + "@typescript-eslint/visitor-keys" "5.58.0" -"@typescript-eslint/scope-manager@5.39.0": - version "5.39.0" - resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.39.0.tgz" - integrity sha512-/I13vAqmG3dyqMVSZPjsbuNQlYS082Y7OMkwhCfLXYsmlI0ca4nkL7wJ/4gjX70LD4P8Hnw1JywUVVAwepURBw== +"@typescript-eslint/type-utils@5.58.0": + version "5.58.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.58.0.tgz#f7d5b3971483d4015a470d8a9e5b8a7d10066e52" + integrity sha512-FF5vP/SKAFJ+LmR9PENql7fQVVgGDOS+dq3j+cKl9iW/9VuZC/8CFmzIP0DLKXfWKpRHawJiG70rVH+xZZbp8w== dependencies: - "@typescript-eslint/types" "5.39.0" - "@typescript-eslint/visitor-keys" "5.39.0" - -"@typescript-eslint/types@4.33.0": - version "4.33.0" - resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.33.0.tgz" - integrity sha512-zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ== - -"@typescript-eslint/types@5.39.0": - version "5.39.0" - resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.39.0.tgz" - integrity sha512-gQMZrnfEBFXK38hYqt8Lkwt8f4U6yq+2H5VDSgP/qiTzC8Nw8JO3OuSUOQ2qW37S/dlwdkHDntkZM6SQhKyPhw== - -"@typescript-eslint/typescript-estree@4.33.0": - version "4.33.0" - resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.33.0.tgz" - integrity sha512-rkWRY1MPFzjwnEVHsxGemDzqqddw2QbTJlICPD9p9I9LfsO8fdmfQPOX3uKfUaGRDFJbfrtm/sXhVXN4E+bzCA== - dependencies: - "@typescript-eslint/types" "4.33.0" - "@typescript-eslint/visitor-keys" "4.33.0" - debug "^4.3.1" - globby "^11.0.3" - is-glob "^4.0.1" - semver "^7.3.5" + "@typescript-eslint/typescript-estree" "5.58.0" + "@typescript-eslint/utils" "5.58.0" + debug "^4.3.4" tsutils "^3.21.0" -"@typescript-eslint/typescript-estree@5.39.0": - version "5.39.0" - resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.39.0.tgz" - integrity sha512-qLFQP0f398sdnogJoLtd43pUgB18Q50QSA+BTE5h3sUxySzbWDpTSdgt4UyxNSozY/oDK2ta6HVAzvGgq8JYnA== +"@typescript-eslint/types@5.58.0": + version "5.58.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.58.0.tgz#54c490b8522c18986004df7674c644ffe2ed77d8" + integrity sha512-JYV4eITHPzVQMnHZcYJXl2ZloC7thuUHrcUmxtzvItyKPvQ50kb9QXBkgNAt90OYMqwaodQh2kHutWZl1fc+1g== + +"@typescript-eslint/typescript-estree@5.58.0": + version "5.58.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.58.0.tgz#4966e6ff57eaf6e0fce2586497edc097e2ab3e61" + integrity sha512-cRACvGTodA+UxnYM2uwA2KCwRL7VAzo45syNysqlMyNyjw0Z35Icc9ihPJZjIYuA5bXJYiJ2YGUB59BqlOZT1Q== dependencies: - "@typescript-eslint/types" "5.39.0" - "@typescript-eslint/visitor-keys" "5.39.0" + "@typescript-eslint/types" "5.58.0" + "@typescript-eslint/visitor-keys" "5.58.0" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" semver "^7.3.7" tsutils "^3.21.0" -"@typescript-eslint/visitor-keys@4.33.0": - version "4.33.0" - resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.33.0.tgz" - integrity sha512-uqi/2aSz9g2ftcHWf8uLPJA70rUv6yuMW5Bohw+bwcuzaxQIHaKFZCKGoGXIrc9vkTJ3+0txM73K0Hq3d5wgIg== - dependencies: - "@typescript-eslint/types" "4.33.0" - eslint-visitor-keys "^2.0.0" +"@typescript-eslint/utils@5.58.0": + version "5.58.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.58.0.tgz#430d7c95f23ec457b05be5520c1700a0dfd559d5" + integrity sha512-gAmLOTFXMXOC+zP1fsqm3VceKSBQJNzV385Ok3+yzlavNHZoedajjS4UyS21gabJYcobuigQPs/z71A9MdJFqQ== + dependencies: + "@eslint-community/eslint-utils" "^4.2.0" + "@types/json-schema" "^7.0.9" + "@types/semver" "^7.3.12" + "@typescript-eslint/scope-manager" "5.58.0" + "@typescript-eslint/types" "5.58.0" + "@typescript-eslint/typescript-estree" "5.58.0" + eslint-scope "^5.1.1" + semver "^7.3.7" -"@typescript-eslint/visitor-keys@5.39.0": - version "5.39.0" - resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.39.0.tgz" - integrity sha512-yyE3RPwOG+XJBLrhvsxAidUgybJVQ/hG8BhiJo0k8JSAYfk/CshVcxf0HwP4Jt7WZZ6vLmxdo1p6EyN3tzFTkg== +"@typescript-eslint/visitor-keys@5.58.0": + version "5.58.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.58.0.tgz#eb9de3a61d2331829e6761ce7fd13061781168b4" + integrity sha512-/fBraTlPj0jwdyTwLyrRTxv/3lnU2H96pNTVM6z3esTWLtA5MZ9ghSMJ7Rb+TtUAdtEw9EyJzJ0EydIMKxQ9gA== dependencies: - "@typescript-eslint/types" "5.39.0" + "@typescript-eslint/types" "5.58.0" eslint-visitor-keys "^3.3.0" -"@whatwg-node/fetch@^0.3.0": - version "0.3.2" - resolved "https://registry.npmjs.org/@whatwg-node/fetch/-/fetch-0.3.2.tgz" - integrity sha512-Bs5zAWQs0tXsLa4mRmLw7Psps1EN78vPtgcLpw3qPY8s6UYPUM67zFZ9cy+7tZ64PXhfwzxJn+m7RH2Lq48RNQ== +"@whatwg-node/events@^0.0.2": + version "0.0.2" + resolved "https://registry.yarnpkg.com/@whatwg-node/events/-/events-0.0.2.tgz#7b7107268d2982fc7b7aff5ee6803c64018f84dd" + integrity sha512-WKj/lI4QjnLuPrim0cfO7i+HsDSXHxNv1y0CrJhdntuO3hxWZmnXCwNDnwOvry11OjRin6cgWNF+j/9Pn8TN4w== + +"@whatwg-node/fetch@^0.6.0": + version "0.6.9" + resolved "https://registry.yarnpkg.com/@whatwg-node/fetch/-/fetch-0.6.9.tgz#6cc694cc0378e27b8dfed427c5bf633eda6972b9" + integrity sha512-JfrBCJdMu9n9OARc0e/hPHcD98/8Nz1CKSdGYDg6VbObDkV/Ys30xe5i/wPOatYbxuvatj1kfWeHf7iNX3i17w== dependencies: "@peculiar/webcrypto" "^1.4.0" - abort-controller "^3.0.0" + "@whatwg-node/node-fetch" "^0.0.5" busboy "^1.6.0" - event-target-polyfill "^0.0.3" - form-data-encoder "^1.7.1" - formdata-node "^4.3.1" - node-fetch "^2.6.7" - undici "^5.8.0" - web-streams-polyfill "^3.2.0" - -"@whatwg-node/fetch@^0.4.0": - version "0.4.7" - resolved "https://registry.npmjs.org/@whatwg-node/fetch/-/fetch-0.4.7.tgz" - integrity sha512-+oKDMGtmUJ7H37VDL5U2Vdk+ZxsIypZxO2q6y42ytu6W3PL6OIIUYZGliNqQgWtCdtxOZ9WPQvbIAuiLpnLlUw== + urlpattern-polyfill "^6.0.2" + web-streams-polyfill "^3.2.1" + +"@whatwg-node/fetch@^0.8.0", "@whatwg-node/fetch@^0.8.1", "@whatwg-node/fetch@^0.8.2": + version "0.8.4" + resolved "https://registry.yarnpkg.com/@whatwg-node/fetch/-/fetch-0.8.4.tgz#ae1c306d1e4f5ba5cf9badf070de259f04c2cda8" + integrity sha512-xK0NGWt49P+JmsdfN+8zmHzZoscENrV0KL1SyyncvWkc6vbFmSqGSpvItEBuhj1PAfTGFEUpyiRMCsut2hLy/Q== dependencies: "@peculiar/webcrypto" "^1.4.0" - abort-controller "^3.0.0" + "@whatwg-node/node-fetch" "^0.3.3" busboy "^1.6.0" - form-data-encoder "^1.7.1" - formdata-node "^4.3.1" - node-fetch "^2.6.7" - undici "^5.10.0" - web-streams-polyfill "^3.2.0" + urlpattern-polyfill "^6.0.2" + web-streams-polyfill "^3.2.1" -abort-controller@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz" - integrity sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg== +"@whatwg-node/node-fetch@^0.0.5": + version "0.0.5" + resolved "https://registry.yarnpkg.com/@whatwg-node/node-fetch/-/node-fetch-0.0.5.tgz#bebf18891088e5e2fc449dea8d1bc94af5ec38df" + integrity sha512-hbccmaSZaItdsRuBKBEEhLoO+5oXJPxiyd0kG2xXd0Dh3Rt+vZn4pADHxuSiSHLd9CM+S2z4+IxlEGbWUgiz9g== + dependencies: + "@whatwg-node/events" "^0.0.2" + busboy "^1.6.0" + tslib "^2.3.1" + +"@whatwg-node/node-fetch@^0.3.3": + version "0.3.4" + resolved "https://registry.yarnpkg.com/@whatwg-node/node-fetch/-/node-fetch-0.3.4.tgz#4beb88579c53ebd870e28d0f2f0376191b9fd6c3" + integrity sha512-gP1MN6DiHVbhkLWH1eCELhE2ZtLRxb+HRKu4eYze1Tijxz0uT1T2kk3lseZp94txzxCfbxGFU0jsWkxNdH3EXA== dependencies: - event-target-shim "^5.0.0" + "@whatwg-node/events" "^0.0.2" + busboy "^1.6.0" + fast-querystring "^1.1.1" + fast-url-parser "^1.1.3" + tslib "^2.3.1" -acorn-jsx@^5.3.1: +acorn-jsx@^5.3.2: version "5.3.2" - resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== acorn-walk@^8.0.0, acorn-walk@^8.1.1: @@ -2066,31 +2276,26 @@ acorn-walk@^8.0.0, acorn-walk@^8.1.1: resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz" integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA== -acorn@^7.4.0: - version "7.4.1" - resolved "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz" - integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== - acorn@^8.0.4: version "8.8.1" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.1.tgz#0a3f9cbecc4ec3bea6f0a80b66ae8dd2da250b73" integrity sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA== -acorn@^8.4.1: - version "8.8.0" - resolved "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz" - integrity sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w== +acorn@^8.4.1, acorn@^8.8.0: + version "8.8.2" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.2.tgz#1b2f25db02af965399b9776b0c2c391276d37c4a" + integrity sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw== agent-base@6: version "6.0.2" - resolved "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== dependencies: debug "4" aggregate-error@^3.0.0: version "3.1.0" - resolved "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== dependencies: clean-stack "^2.0.0" @@ -2106,33 +2311,43 @@ ajv@^6.10.0, ajv@^6.12.4: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -ajv@^8.0.1: - version "8.11.0" - resolved "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz" - integrity sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg== - dependencies: - fast-deep-equal "^3.1.1" - json-schema-traverse "^1.0.0" - require-from-string "^2.0.2" - uri-js "^4.2.2" - ansi-colors@^4.1.1, ansi-colors@^4.1.3: version "4.1.3" resolved "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz" integrity sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw== -ansi-escapes@^4.2.1, ansi-escapes@^4.3.0, ansi-escapes@^4.3.1: +ansi-escapes@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b" + integrity sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ== + +ansi-escapes@^4.2.1, ansi-escapes@^4.3.0: version "4.3.2" - resolved "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== dependencies: type-fest "^0.21.3" +ansi-regex@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" + integrity sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA== + +ansi-regex@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.1.tgz#123d6479e92ad45ad897d4054e3c7ca7db4944e1" + integrity sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw== + ansi-regex@^5.0.1: version "5.0.1" resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== +ansi-styles@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" + integrity sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA== + ansi-styles@^3.2.1: version "3.2.1" resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz" @@ -2147,6 +2362,11 @@ ansi-styles@^4.0.0, ansi-styles@^4.1.0: dependencies: color-convert "^2.0.1" +any-observable@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/any-observable/-/any-observable-0.3.0.tgz#af933475e5806a67d0d7df090dd5e8bef65d119b" + integrity sha512-/FQM1EDkTsf63Ub2C6O7GuYFDsSXUwsaZDurV0np41ocwq0jthUAYCmhBX9f+KwlaCgIuWyr/4WlUQUBfKfZog== + any-promise@^1.0.0: version "1.3.0" resolved "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz" @@ -2162,7 +2382,7 @@ anymatch@~3.1.2: arg@^4.1.0: version "4.1.3" - resolved "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz" + resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089" integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA== arg@^5.0.1: @@ -2179,7 +2399,7 @@ argparse@^1.0.7: argparse@^2.0.1: version "2.0.1" - resolved "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== aria-hidden@^1.1.1: @@ -2197,6 +2417,14 @@ aria-query@^4.2.2: "@babel/runtime" "^7.10.2" "@babel/runtime-corejs3" "^7.10.2" +array-buffer-byte-length@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz#fabe8bc193fea865f317fe7807085ee0dee5aead" + integrity sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A== + dependencies: + call-bind "^1.0.2" + is-array-buffer "^3.0.1" + array-includes@^3.1.4, array-includes@^3.1.5: version "3.1.5" resolved "https://registry.npmjs.org/array-includes/-/array-includes-3.1.5.tgz" @@ -2208,6 +2436,17 @@ array-includes@^3.1.4, array-includes@^3.1.5: get-intrinsic "^1.1.1" is-string "^1.0.7" +array-includes@^3.1.6: + version "3.1.6" + resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.6.tgz#9e9e720e194f198266ba9e18c29e6a9b0e4b225f" + integrity sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.4" + es-abstract "^1.20.4" + get-intrinsic "^1.1.3" + is-string "^1.0.7" + array-union@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz" @@ -2223,6 +2462,16 @@ array.prototype.flat@^1.2.3, array.prototype.flat@^1.2.5: es-abstract "^1.19.2" es-shim-unscopables "^1.0.0" +array.prototype.flat@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz#ffc6576a7ca3efc2f46a143b9d1dda9b4b3cf5e2" + integrity sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.4" + es-abstract "^1.20.4" + es-shim-unscopables "^1.0.0" + array.prototype.flatmap@^1.3.0: version "1.3.0" resolved "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.0.tgz" @@ -2233,6 +2482,27 @@ array.prototype.flatmap@^1.3.0: es-abstract "^1.19.2" es-shim-unscopables "^1.0.0" +array.prototype.flatmap@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz#1aae7903c2100433cb8261cd4ed310aab5c4a183" + integrity sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.4" + es-abstract "^1.20.4" + es-shim-unscopables "^1.0.0" + +array.prototype.tosorted@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/array.prototype.tosorted/-/array.prototype.tosorted-1.1.1.tgz#ccf44738aa2b5ac56578ffda97c03fd3e23dd532" + integrity sha512-pZYPXPRl2PqWcsUs6LOMn+1f1532nEoPTYowBtqLwAW+W8vSVhkIGnmOX1t/UQjD6YGI0vcD2B1U7ZFGQH9jnQ== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.4" + es-abstract "^1.20.4" + es-shim-unscopables "^1.0.0" + get-intrinsic "^1.1.3" + arrify@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz" @@ -2240,12 +2510,12 @@ arrify@^1.0.1: asap@~2.0.3: version "2.0.6" - resolved "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz" + resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" integrity sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA== asn1js@^3.0.1, asn1js@^3.0.5: version "3.0.5" - resolved "https://registry.npmjs.org/asn1js/-/asn1js-3.0.5.tgz" + resolved "https://registry.yarnpkg.com/asn1js/-/asn1js-3.0.5.tgz#5ea36820443dbefb51cc7f88a2ebb5b462114f38" integrity sha512-FVnvrKJwpt9LP2lAMl8qZswRNm3T4q9CON+bxldk2iwk3FFpuwhx2FfinyitizWHsVYyaY+y5JzDR0rCMV5yTQ== dependencies: pvtsutils "^1.3.2" @@ -2262,16 +2532,16 @@ astral-regex@^2.0.0: resolved "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz" integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== -asynckit@^0.4.0: - version "0.4.0" - resolved "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz" - integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== - auto-bind@~4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/auto-bind/-/auto-bind-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/auto-bind/-/auto-bind-4.0.0.tgz#e3589fc6c2da8f7ca43ba9f84fa52a744fc997fb" integrity sha512-Hdw8qdNiqdJ8LqT0iK0sVzkFbzg6fhnQqqfWhBDxcHZvU75+B+ayzTy8x+k5Ix0Y92XOhOUlx74ps+bA6BeYMQ== +available-typed-arrays@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7" + integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw== + axe-core@^4.4.3: version "4.4.3" resolved "https://registry.npmjs.org/axe-core/-/axe-core-4.4.3.tgz" @@ -2282,13 +2552,6 @@ axobject-query@^2.2.0: resolved "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz" integrity sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA== -babel-plugin-dynamic-import-node@^2.3.3: - version "2.3.3" - resolved "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz" - integrity sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ== - dependencies: - object.assign "^4.1.0" - "babel-plugin-styled-components@>= 1.12.0": version "2.0.7" resolved "https://registry.npmjs.org/babel-plugin-styled-components/-/babel-plugin-styled-components-2.0.7.tgz" @@ -2307,12 +2570,12 @@ babel-plugin-syntax-jsx@^6.18.0: babel-plugin-syntax-trailing-function-commas@^7.0.0-beta.0: version "7.0.0-beta.0" - resolved "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-7.0.0-beta.0.tgz" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-7.0.0-beta.0.tgz#aa213c1435e2bffeb6fca842287ef534ad05d5cf" integrity sha512-Xj9XuRuz3nTSbaTXWv3itLOcxyF4oPD8douBBmj7U9BBC6nEBYfyOJYQMf/8PJAFotC62UY5dFfIGEPr7WswzQ== babel-preset-fbjs@^3.4.0: version "3.4.0" - resolved "https://registry.npmjs.org/babel-preset-fbjs/-/babel-preset-fbjs-3.4.0.tgz" + resolved "https://registry.yarnpkg.com/babel-preset-fbjs/-/babel-preset-fbjs-3.4.0.tgz#38a14e5a7a3b285a3f3a86552d650dca5cf6111c" integrity sha512-9ywCsCvo1ojrw0b+XYk7aFvTH6D9064t0RIL1rtMf3nsa02Xw41MS7sZw216Im35xj/UY0PDBQsa1brUDDF1Ow== dependencies: "@babel/plugin-proposal-class-properties" "^7.0.0" @@ -2350,7 +2613,7 @@ balanced-match@^1.0.0: base64-js@^1.3.1: version "1.5.1" - resolved "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== better-path-resolve@1.0.0: @@ -2367,7 +2630,7 @@ binary-extensions@^2.0.0: bl@^4.1.0: version "4.1.0" - resolved "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz" + resolved "https://registry.yarnpkg.com/bl/-/bl-4.1.0.tgz#451535264182bec2fbbc83a62ab98cf11d9f7b3a" integrity sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w== dependencies: buffer "^5.5.0" @@ -2397,30 +2660,25 @@ breakword@^1.0.5: wcwidth "^1.0.1" browserslist@^4.21.3: - version "4.21.4" - resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz" - integrity sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw== + version "4.21.5" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.5.tgz#75c5dae60063ee641f977e00edd3cfb2fb7af6a7" + integrity sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w== dependencies: - caniuse-lite "^1.0.30001400" - electron-to-chromium "^1.4.251" - node-releases "^2.0.6" - update-browserslist-db "^1.0.9" + caniuse-lite "^1.0.30001449" + electron-to-chromium "^1.4.284" + node-releases "^2.0.8" + update-browserslist-db "^1.0.10" bser@2.1.1: version "2.1.1" - resolved "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz" + resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" integrity sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ== dependencies: node-int64 "^0.4.0" -buffer-equal-constant-time@1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz" - integrity sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA== - buffer@^5.5.0: version "5.7.1" - resolved "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ== dependencies: base64-js "^1.3.1" @@ -2465,7 +2723,7 @@ callsites@^3.0.0: camel-case@^4.1.2: version "4.1.2" - resolved "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz" + resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-4.1.2.tgz#9728072a954f805228225a6deea6b38461e1bd5a" integrity sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw== dependencies: pascal-case "^3.1.2" @@ -2490,26 +2748,37 @@ camelize@^1.0.0: resolved "https://registry.npmjs.org/camelize/-/camelize-1.0.1.tgz" integrity sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ== -caniuse-lite@^1.0.30001400: - version "1.0.30001418" - resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001418.tgz" - integrity sha512-oIs7+JL3K9JRQ3jPZjlH6qyYDp+nBTCais7hjh0s+fuBwufc7uZ7hPYMXrDOJhV360KGMTcczMRObk0/iMqZRg== - caniuse-lite@^1.0.30001406: version "1.0.30001427" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001427.tgz#d3a749f74be7ae0671fbec3a4eea18576e8ad646" integrity sha512-lfXQ73oB9c8DP5Suxaszm+Ta2sr/4tf8+381GkIm1MLj/YdLf+rEDyDSRCzeltuyTVGm+/s18gdZ0q+Wmp8VsQ== +caniuse-lite@^1.0.30001449: + version "1.0.30001478" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001478.tgz#0ef8a1cf8b16be47a0f9fc4ecfc952232724b32a" + integrity sha512-gMhDyXGItTHipJj2ApIvR+iVB5hd0KP3svMWWXDvZOmjzJJassGLMfxRkQCSYgGd2gtdL/ReeiyvMSFD1Ss6Mw== + capital-case@^1.0.4: version "1.0.4" - resolved "https://registry.npmjs.org/capital-case/-/capital-case-1.0.4.tgz" + resolved "https://registry.yarnpkg.com/capital-case/-/capital-case-1.0.4.tgz#9d130292353c9249f6b00fa5852bee38a717e669" integrity sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A== dependencies: no-case "^3.0.4" tslib "^2.0.3" upper-case-first "^2.0.2" -chalk@^2.0.0, chalk@^2.1.0: +chalk@^1.0.0, chalk@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" + integrity sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A== + dependencies: + ansi-styles "^2.2.1" + escape-string-regexp "^1.0.2" + has-ansi "^2.0.0" + strip-ansi "^3.0.0" + supports-color "^2.0.0" + +chalk@^2.0.0, chalk@^2.1.0, chalk@^2.4.1: version "2.4.2" resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -2528,7 +2797,7 @@ chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.1, chalk@^4.1.2: change-case-all@1.0.14: version "1.0.14" - resolved "https://registry.npmjs.org/change-case-all/-/change-case-all-1.0.14.tgz" + resolved "https://registry.yarnpkg.com/change-case-all/-/change-case-all-1.0.14.tgz#bac04da08ad143278d0ac3dda7eccd39280bfba1" integrity sha512-CWVm2uT7dmSHdO/z1CXT/n47mWonyypzBbuCy5tN7uMg22BsfkhwT6oHmFCAk+gL1LOOxhdbB9SZz3J1KTY3gA== dependencies: change-case "^4.1.2" @@ -2542,9 +2811,25 @@ change-case-all@1.0.14: upper-case "^2.0.2" upper-case-first "^2.0.2" +change-case-all@1.0.15: + version "1.0.15" + resolved "https://registry.yarnpkg.com/change-case-all/-/change-case-all-1.0.15.tgz#de29393167fc101d646cd76b0ef23e27d09756ad" + integrity sha512-3+GIFhk3sNuvFAJKU46o26OdzudQlPNBCu1ZQi3cMeMHhty1bhDxu2WrEilVNYaGvqUtR1VSigFcJOiS13dRhQ== + dependencies: + change-case "^4.1.2" + is-lower-case "^2.0.2" + is-upper-case "^2.0.2" + lower-case "^2.0.2" + lower-case-first "^2.0.2" + sponge-case "^1.0.1" + swap-case "^2.0.2" + title-case "^3.0.3" + upper-case "^2.0.2" + upper-case-first "^2.0.2" + change-case@^4.1.2: version "4.1.2" - resolved "https://registry.npmjs.org/change-case/-/change-case-4.1.2.tgz" + resolved "https://registry.yarnpkg.com/change-case/-/change-case-4.1.2.tgz#fedfc5f136045e2398c0410ee441f95704641e12" integrity sha512-bSxY2ws9OtviILG1EiY5K7NNxkqg/JnRnFxLtKQ96JaviiIxi7djMrSd0ECT9AC+lttClmYwKw53BWpOMblo7A== dependencies: camel-case "^4.1.2" @@ -2592,24 +2877,39 @@ ci-job-number@^1.2.2: clean-stack@^2.0.0: version "2.2.0" - resolved "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz" + resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== +cli-cursor@^2.0.0, cli-cursor@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" + integrity sha512-8lgKz8LmCRYZZQDpRyT2m5rKJ08TnU4tR9FFFW2rxpxR1FzWi4PQ/NfyODchAatHaUgnSPVcx/R5w6NuTBzFiw== + dependencies: + restore-cursor "^2.0.0" + cli-cursor@^3.1.0: version "3.1.0" - resolved "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw== dependencies: restore-cursor "^3.1.0" cli-spinners@^2.5.0: - version "2.7.0" - resolved "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.7.0.tgz" - integrity sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw== + version "2.8.0" + resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.8.0.tgz#e97a3e2bd00e6d85aa0c13d7f9e3ce236f7787fc" + integrity sha512-/eG5sJcvEIwxcdYM86k5tPwn0MUzkX5YY3eImTGpJOZgVe4SdTMY14vQpcxgBzJ0wXwAYrS8E+c3uHeK4JNyzQ== + +cli-truncate@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-0.2.1.tgz#9f15cfbb0705005369216c626ac7d05ab90dd574" + integrity sha512-f4r4yJnbT++qUPI9NR4XLDLq41gQ+uqnPItWG0F5ZkehuNiTTa3EY0S4AqTSUOeJ7/zU41oWPQSNkW5BqPL9bg== + dependencies: + slice-ansi "0.0.4" + string-width "^1.0.1" cli-truncate@^2.1.0: version "2.1.0" - resolved "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-2.1.0.tgz#c39e28bf05edcde5be3b98992a22deed5a2b93c7" integrity sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg== dependencies: slice-ansi "^3.0.0" @@ -2617,7 +2917,7 @@ cli-truncate@^2.1.0: cli-width@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-3.0.0.tgz#a2f48437a2caa9a22436e794bf071ec9e61cedf6" integrity sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw== client-only@0.0.1: @@ -2648,6 +2948,11 @@ clone@^1.0.2: resolved "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz" integrity sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg== +code-point-at@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" + integrity sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA== + color-convert@^1.9.0: version "1.9.3" resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz" @@ -2674,16 +2979,9 @@ color-name@~1.1.4: colorette@^2.0.16: version "2.0.19" - resolved "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz" + resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.19.tgz#cdf044f47ad41a0f4b56b3a0d5b4e6e1a2d5a798" integrity sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ== -combined-stream@^1.0.8: - version "1.0.8" - resolved "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz" - integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== - dependencies: - delayed-stream "~1.0.0" - commander@^4.0.0: version "4.1.1" resolved "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz" @@ -2696,7 +2994,7 @@ commander@^7.2.0: common-tags@1.8.2: version "1.8.2" - resolved "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz" + resolved "https://registry.yarnpkg.com/common-tags/-/common-tags-1.8.2.tgz#94ebb3c076d26032745fd54face7f688ef5ac9c6" integrity sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA== concat-map@0.0.1: @@ -2706,7 +3004,7 @@ concat-map@0.0.1: constant-case@^3.0.4: version "3.0.4" - resolved "https://registry.npmjs.org/constant-case/-/constant-case-3.0.4.tgz" + resolved "https://registry.yarnpkg.com/constant-case/-/constant-case-3.0.4.tgz#3b84a9aeaf4cf31ec45e6bf5de91bdfb0589faf1" integrity sha512-I2hSBi7Vvs7BEuJDr5dDHfzb/Ruj3FyvFyh7KLilAjNQw3Be+xgqUBA2W6scVEcL0hL1dwPRtIqEPVUCKkSsyQ== dependencies: no-case "^3.0.4" @@ -2714,33 +3012,34 @@ constant-case@^3.0.4: upper-case "^2.0.2" convert-source-map@^1.7.0: - version "1.8.0" - resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz" - integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA== - dependencies: - safe-buffer "~5.1.1" + version "1.9.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f" + integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== core-js-pure@^3.25.1: version "3.25.5" resolved "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.25.5.tgz" integrity sha512-oml3M22pHM+igfWHDfdLVq2ShWmjM2V4L+dQEBs0DWVIqEm9WHCwGAlZ6BmyBQGy5sFrJmcx+856D9lVKyGWYg== -cosmiconfig-toml-loader@1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/cosmiconfig-toml-loader/-/cosmiconfig-toml-loader-1.0.0.tgz" - integrity sha512-H/2gurFWVi7xXvCyvsWRLCMekl4tITJcX0QEsDMpzxtuxDyM59xLatYNg4s/k9AA/HdtCYfj2su8mgA0GSDLDA== - dependencies: - "@iarna/toml" "^2.2.5" +cosmiconfig-typescript-loader@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-4.3.0.tgz#c4259ce474c9df0f32274ed162c0447c951ef073" + integrity sha512-NTxV1MFfZDLPiBMjxbHRwSh5LaLcPMwNdCutmnHJCKoVnlvldPWlllonKwrsRJ5pYZBIBGRWWU2tfvzxgeSW5Q== -cosmiconfig-typescript-loader@4.1.1, cosmiconfig-typescript-loader@^4.0.0: - version "4.1.1" - resolved "https://registry.npmjs.org/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-4.1.1.tgz" - integrity sha512-9DHpa379Gp0o0Zefii35fcmuuin6q92FnLDffzdZ0l9tVd3nEobG3O+MZ06+kuBvFTSVScvNb/oHA13Nd4iipg== +cosmiconfig@8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-8.0.0.tgz#e9feae014eab580f858f8a0288f38997a7bebe97" + integrity sha512-da1EafcpH6b/TD8vDRaWV7xFINlHlF6zKsGwS1TsuVJTZRkquaS5HTMq7uq6h31619QjbsYl21gVDOm32KM1vQ== + dependencies: + import-fresh "^3.2.1" + js-yaml "^4.1.0" + parse-json "^5.0.0" + path-type "^4.0.0" -cosmiconfig@7.0.1, cosmiconfig@^7.0.0: - version "7.0.1" - resolved "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz" - integrity sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ== +cosmiconfig@^7.0.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.1.0.tgz#1443b9afa596b670082ea46cbd8f6a62b84635f6" + integrity sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA== dependencies: "@types/parse-json" "^4.0.0" import-fresh "^3.2.1" @@ -2750,7 +3049,7 @@ cosmiconfig@7.0.1, cosmiconfig@^7.0.0: create-require@^1.1.0: version "1.1.1" - resolved "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz" + resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333" integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ== cross-env@^7.0.3: @@ -2762,7 +3061,7 @@ cross-env@^7.0.3: cross-fetch@^3.1.5: version "3.1.5" - resolved "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz" + resolved "https://registry.yarnpkg.com/cross-fetch/-/cross-fetch-3.1.5.tgz#e1389f44d9e7ba767907f7af8454787952ab534f" integrity sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw== dependencies: node-fetch "2.6.7" @@ -2834,17 +3133,22 @@ damerau-levenshtein@^1.0.8: resolved "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz" integrity sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA== -dataloader@2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/dataloader/-/dataloader-2.1.0.tgz" - integrity sha512-qTcEYLen3r7ojZNgVUaRggOI+KM7jrKxXeSHhogh/TWxYMeONEMqY+hmkobiYQozsGIyg9OYVzO4ZIfoB4I0pQ== +dataloader@2.2.2, dataloader@^2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/dataloader/-/dataloader-2.2.2.tgz#216dc509b5abe39d43a9b9d97e6e5e473dfbe3e0" + integrity sha512-8YnDaaf7N3k/q5HnTJVuzSyLETjoZjVmHc4AeKAzOvKHEFQKcn64OKBfzHYtE9zGjctNM7V9I0MfnUVLpi7M5g== + +date-fns@^1.27.2: + version "1.30.1" + resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-1.30.1.tgz#2e71bf0b119153dbb4cc4e88d9ea5acfb50dc05c" + integrity sha512-hBSVCvSmWC+QypYObzwGOd9wqdDpOt+0wl0KbU+R+uuZBS1jN8VsD1ss3irQDknRj5NvxiTF6oj/nDRnN/UQNw== debounce@^1.2.0: version "1.2.1" - resolved "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz" + resolved "https://registry.yarnpkg.com/debounce/-/debounce-1.2.1.tgz#38881d8f4166a5c5848020c11827b834bcb3e0a5" integrity sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug== -debug@4, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.4: +debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4: version "4.3.4" resolved "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz" integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== @@ -2890,6 +3194,11 @@ defaults@^1.0.3: dependencies: clone "^1.0.2" +define-lazy-prop@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f" + integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og== + define-properties@^1.1.3, define-properties@^1.1.4: version "1.1.4" resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz" @@ -2898,14 +3207,9 @@ define-properties@^1.1.3, define-properties@^1.1.4: has-property-descriptors "^1.0.0" object-keys "^1.1.1" -delayed-stream@~1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz" - integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== - dependency-graph@^0.11.0: version "0.11.0" - resolved "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz" + resolved "https://registry.yarnpkg.com/dependency-graph/-/dependency-graph-0.11.0.tgz#ac0ce7ed68a54da22165a85e97a01d53f5eb2e27" integrity sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg== detect-indent@^6.0.0: @@ -2920,7 +3224,7 @@ detect-node-es@^1.1.0: diff@^4.0.1: version "4.0.2" - resolved "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz" + resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== dir-glob@^3.0.1: @@ -2946,7 +3250,7 @@ doctrine@^3.0.0: dot-case@^3.0.4: version "3.0.4" - resolved "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz" + resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-3.0.4.tgz#9b2b670d00a431667a8a75ba29cd1b98809ce751" integrity sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w== dependencies: no-case "^3.0.4" @@ -2959,7 +3263,7 @@ dotenv@^16.0.0: dset@^3.1.2: version "3.1.2" - resolved "https://registry.npmjs.org/dset/-/dset-3.1.2.tgz" + resolved "https://registry.yarnpkg.com/dset/-/dset-3.1.2.tgz#89c436ca6450398396dc6538ea00abc0c54cd45a" integrity sha512-g/M9sqy3oHe477Ar4voQxWtaPIFw1jTdKZuomOjhCcBx9nHUNn0pu6NopuFFrTh/TRZIKEj+76vLWFu9BNKk+Q== duplexer@^0.1.2: @@ -2967,17 +3271,15 @@ duplexer@^0.1.2: resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg== -ecdsa-sig-formatter@1.0.11: - version "1.0.11" - resolved "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz" - integrity sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ== - dependencies: - safe-buffer "^5.0.1" +electron-to-chromium@^1.4.284: + version "1.4.363" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.363.tgz#a3d51d16169d8f212f00bafb78cf0667e24c3647" + integrity sha512-ReX5qgmSU7ybhzMuMdlJAdYnRhT90UB3k9M05O5nF5WH3wR5wgdJjXw0uDeFyKNhmglmQiOxkAbzrP0hMKM59g== -electron-to-chromium@^1.4.251: - version "1.4.275" - resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.275.tgz" - integrity sha512-aJeQQ+Hl9Jyyzv4chBqYJwmVRY46N5i2BEX5Cuyk/5gFCUZ5F3i7Hnba6snZftWla7Gglwc5pIgcd+E7cW+rPg== +elegant-spinner@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/elegant-spinner/-/elegant-spinner-1.0.1.tgz#db043521c95d7e303fd8f345bedc3349cfb0729e" + integrity sha512-B+ZM+RXvRqQaAmkMlO/oSe5nMUOaUnyfGYCEHoR8wrXsZR2mA0XVibsxV1bvTwxdRWah1PkQqso2EzhILGHtEQ== emoji-regex@^8.0.0: version "8.0.0" @@ -2989,7 +3291,15 @@ emoji-regex@^9.2.2: resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz" integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== -enquirer@^2.3.0, enquirer@^2.3.5: +enhanced-resolve@^5.12.0: + version "5.12.0" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz#300e1c90228f5b570c4d35babf263f6da7155634" + integrity sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ== + dependencies: + graceful-fs "^4.2.4" + tapable "^2.2.0" + +enquirer@^2.3.0: version "2.3.6" resolved "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz" integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== @@ -3033,6 +3343,55 @@ es-abstract@^1.19.0, es-abstract@^1.19.1, es-abstract@^1.19.2, es-abstract@^1.19 string.prototype.trimstart "^1.0.5" unbox-primitive "^1.0.2" +es-abstract@^1.20.4: + version "1.21.2" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.21.2.tgz#a56b9695322c8a185dc25975aa3b8ec31d0e7eff" + integrity sha512-y/B5POM2iBnIxCiernH1G7rC9qQoM77lLIMQLuob0zhp8C56Po81+2Nj0WFKnd0pNReDTnkYryc+zhOzpEIROg== + dependencies: + array-buffer-byte-length "^1.0.0" + available-typed-arrays "^1.0.5" + call-bind "^1.0.2" + es-set-tostringtag "^2.0.1" + es-to-primitive "^1.2.1" + function.prototype.name "^1.1.5" + get-intrinsic "^1.2.0" + get-symbol-description "^1.0.0" + globalthis "^1.0.3" + gopd "^1.0.1" + has "^1.0.3" + has-property-descriptors "^1.0.0" + has-proto "^1.0.1" + has-symbols "^1.0.3" + internal-slot "^1.0.5" + is-array-buffer "^3.0.2" + is-callable "^1.2.7" + is-negative-zero "^2.0.2" + is-regex "^1.1.4" + is-shared-array-buffer "^1.0.2" + is-string "^1.0.7" + is-typed-array "^1.1.10" + is-weakref "^1.0.2" + object-inspect "^1.12.3" + object-keys "^1.1.1" + object.assign "^4.1.4" + regexp.prototype.flags "^1.4.3" + safe-regex-test "^1.0.0" + string.prototype.trim "^1.2.7" + string.prototype.trimend "^1.0.6" + string.prototype.trimstart "^1.0.6" + typed-array-length "^1.0.4" + unbox-primitive "^1.0.2" + which-typed-array "^1.1.9" + +es-set-tostringtag@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz#338d502f6f674301d710b80c8592de8a15f09cd8" + integrity sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg== + dependencies: + get-intrinsic "^1.1.3" + has "^1.0.3" + has-tostringtag "^1.0.0" + es-shim-unscopables@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz" @@ -3182,7 +3541,7 @@ escalade@^3.1.1: resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz" integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== -escape-string-regexp@^1.0.5: +escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== @@ -3192,25 +3551,25 @@ escape-string-regexp@^4.0.0: resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== -eslint-config-next@^12.0.8: - version "12.3.1" - resolved "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-12.3.1.tgz" - integrity sha512-EN/xwKPU6jz1G0Qi6Bd/BqMnHLyRAL0VsaQaWA7F3KkjAgZHi4f1uL1JKGWNxdQpHTW/sdGONBd0bzxUka/DJg== +eslint-config-next@^13.3.0: + version "13.3.0" + resolved "https://registry.yarnpkg.com/eslint-config-next/-/eslint-config-next-13.3.0.tgz#c302fbecfe2b976ea306f7622af637ef9d9e3802" + integrity sha512-6YEwmFBX0VjBd3ODGW9df0Is0FLaRFdMN8eAahQG9CN6LjQ28J8AFr19ngxqMSg7Qv6Uca/3VeeBosJh1bzu0w== dependencies: - "@next/eslint-plugin-next" "12.3.1" + "@next/eslint-plugin-next" "13.3.0" "@rushstack/eslint-patch" "^1.1.3" - "@typescript-eslint/parser" "^5.21.0" + "@typescript-eslint/parser" "^5.42.0" eslint-import-resolver-node "^0.3.6" - eslint-import-resolver-typescript "^2.7.1" + eslint-import-resolver-typescript "^3.5.2" eslint-plugin-import "^2.26.0" eslint-plugin-jsx-a11y "^6.5.1" eslint-plugin-react "^7.31.7" eslint-plugin-react-hooks "^4.5.0" -eslint-config-prettier@^8.3.0: - version "8.5.0" - resolved "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.5.0.tgz" - integrity sha512-obmWKLUNCnhtQRKc+tmnYuQl0pFU1ibYJQ5BGhTVB08bHe9wC8qUeG7c08dj9XX+AuPj1YSGSQIHl1pnDHZR0Q== +eslint-config-prettier@^8.8.0: + version "8.8.0" + resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.8.0.tgz#bfda738d412adc917fd7b038857110efe98c9348" + integrity sha512-wLbQiFre3tdGgpDv67NQKnJuTlcUVYHas3k+DZCc2U2BadthoEY4B7hLPvAxaqdyOGCzuLfii2fqGph10va7oA== eslint-config-turbo@latest: version "0.0.4" @@ -3227,43 +3586,36 @@ eslint-import-resolver-node@^0.3.6: debug "^3.2.7" resolve "^1.20.0" -eslint-import-resolver-typescript@^2.5.0, eslint-import-resolver-typescript@^2.7.1: - version "2.7.1" - resolved "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-2.7.1.tgz" - integrity sha512-00UbgGwV8bSgUv34igBDbTOtKhqoRMy9bFjNehT40bXg6585PNIct8HhXZ0SybqB9rWtXj9crcku8ndDn/gIqQ== +eslint-import-resolver-node@^0.3.7: + version "0.3.7" + resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.7.tgz#83b375187d412324a1963d84fa664377a23eb4d7" + integrity sha512-gozW2blMLJCeFpBwugLTGyvVjNoeo1knonXAcatC6bjPBZitotxdWf7Gimr25N4c0AAOo4eOUfaG82IJPDpqCA== + dependencies: + debug "^3.2.7" + is-core-module "^2.11.0" + resolve "^1.22.1" + +eslint-import-resolver-typescript@^3.5.2, eslint-import-resolver-typescript@^3.5.5: + version "3.5.5" + resolved "https://registry.yarnpkg.com/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.5.5.tgz#0a9034ae7ed94b254a360fbea89187b60ea7456d" + integrity sha512-TdJqPHs2lW5J9Zpe17DZNQuDnox4xo2o+0tE7Pggain9Rbc19ik8kFtXdxZ250FVx2kF4vlt2RSf4qlUpG7bhw== dependencies: debug "^4.3.4" - glob "^7.2.0" + enhanced-resolve "^5.12.0" + eslint-module-utils "^2.7.4" + get-tsconfig "^4.5.0" + globby "^13.1.3" + is-core-module "^2.11.0" is-glob "^4.0.3" - resolve "^1.22.0" - tsconfig-paths "^3.14.1" + synckit "^0.8.5" -eslint-module-utils@^2.7.2, eslint-module-utils@^2.7.3: +eslint-module-utils@^2.7.3, eslint-module-utils@^2.7.4: version "2.7.4" resolved "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.4.tgz" integrity sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA== dependencies: debug "^3.2.7" -eslint-plugin-import@2.25.4: - version "2.25.4" - resolved "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.25.4.tgz" - integrity sha512-/KJBASVFxpu0xg1kIBn9AUa8hQVnszpwgE7Ld0lKAlx7Ie87yzEzCgSkekt+le/YVhiaosO4Y14GDAOc41nfxA== - dependencies: - array-includes "^3.1.4" - array.prototype.flat "^1.2.5" - debug "^2.6.9" - doctrine "^2.1.0" - eslint-import-resolver-node "^0.3.6" - eslint-module-utils "^2.7.2" - has "^1.0.3" - is-core-module "^2.8.0" - is-glob "^4.0.3" - minimatch "^3.0.4" - object.values "^1.1.5" - resolve "^1.20.0" - tsconfig-paths "^3.12.0" - eslint-plugin-import@^2.26.0: version "2.26.0" resolved "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.26.0.tgz" @@ -3283,6 +3635,27 @@ eslint-plugin-import@^2.26.0: resolve "^1.22.0" tsconfig-paths "^3.14.1" +eslint-plugin-import@^2.27.5: + version "2.27.5" + resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.27.5.tgz#876a6d03f52608a3e5bb439c2550588e51dd6c65" + integrity sha512-LmEt3GVofgiGuiE+ORpnvP+kAm3h6MLZJ4Q5HCyHADofsb4VzXFsRiWj3c0OFiV+3DWFh0qg3v9gcPlfc3zRow== + dependencies: + array-includes "^3.1.6" + array.prototype.flat "^1.3.1" + array.prototype.flatmap "^1.3.1" + debug "^3.2.7" + doctrine "^2.1.0" + eslint-import-resolver-node "^0.3.7" + eslint-module-utils "^2.7.4" + has "^1.0.3" + is-core-module "^2.11.0" + is-glob "^4.0.3" + minimatch "^3.1.2" + object.values "^1.1.6" + resolve "^1.22.1" + semver "^6.3.0" + tsconfig-paths "^3.14.1" + eslint-plugin-jsx-a11y@^6.5.1: version "6.6.1" resolved "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.6.1.tgz" @@ -3307,7 +3680,7 @@ eslint-plugin-react-hooks@^4.5.0: resolved "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz" integrity sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g== -eslint-plugin-react@7.31.8, eslint-plugin-react@^7.31.7: +eslint-plugin-react@^7.31.7: version "7.31.8" resolved "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.31.8.tgz" integrity sha512-5lBTZmgQmARLLSYiwI71tiGVTLUuqXantZM6vlSY39OaDSV0M7+32K5DnLkmFrwTe+Ksz0ffuLUC91RUviVZfw== @@ -3327,6 +3700,27 @@ eslint-plugin-react@7.31.8, eslint-plugin-react@^7.31.7: semver "^6.3.0" string.prototype.matchall "^4.0.7" +eslint-plugin-react@^7.32.2: + version "7.32.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.32.2.tgz#e71f21c7c265ebce01bcbc9d0955170c55571f10" + integrity sha512-t2fBMa+XzonrrNkyVirzKlvn5RXzzPwRHtMvLAtVZrt8oxgnTQaYbU6SXTOO1mwQgp1y5+toMSKInnzGr0Knqg== + dependencies: + array-includes "^3.1.6" + array.prototype.flatmap "^1.3.1" + array.prototype.tosorted "^1.1.1" + doctrine "^2.1.0" + estraverse "^5.3.0" + jsx-ast-utils "^2.4.1 || ^3.0.0" + minimatch "^3.1.2" + object.entries "^1.1.6" + object.fromentries "^2.0.6" + object.hasown "^1.1.2" + object.values "^1.1.6" + prop-types "^15.8.1" + resolve "^2.0.0-next.4" + semver "^6.3.0" + string.prototype.matchall "^4.0.8" + eslint-plugin-turbo@0.0.4: version "0.0.4" resolved "https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-0.0.4.tgz" @@ -3340,99 +3734,88 @@ eslint-scope@^5.1.1: esrecurse "^4.3.0" estraverse "^4.1.1" -eslint-utils@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz" - integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== - dependencies: - eslint-visitor-keys "^1.1.0" - -eslint-utils@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz" - integrity sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA== +eslint-scope@^7.1.1: + version "7.2.0" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.2.0.tgz#f21ebdafda02352f103634b96dd47d9f81ca117b" + integrity sha512-DYj5deGlHBfMt15J7rdtyKNq/Nqlv5KfU4iodrQ019XESsRnwXH9KAE0y3cwtUHDo2ob7CypAnCqefh6vioWRw== dependencies: - eslint-visitor-keys "^2.0.0" - -eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0: - version "1.3.0" - resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz" - integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== - -eslint-visitor-keys@^2.0.0: - version "2.1.0" - resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz" - integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== + esrecurse "^4.3.0" + estraverse "^5.2.0" eslint-visitor-keys@^3.3.0: version "3.3.0" resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz" integrity sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA== -eslint@^7.23.0: - version "7.32.0" - resolved "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz" - integrity sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA== - dependencies: - "@babel/code-frame" "7.12.11" - "@eslint/eslintrc" "^0.4.3" - "@humanwhocodes/config-array" "^0.5.0" +eslint-visitor-keys@^3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.0.tgz#c7f0f956124ce677047ddbc192a68f999454dedc" + integrity sha512-HPpKPUBQcAsZOsHAFwTtIKcYlCje62XB7SEAcxjtmW6TD1WVpkS6i6/hOVtTZIl4zGj/mBqpFVGvaDneik+VoQ== + +eslint@^8.38.0: + version "8.38.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.38.0.tgz#a62c6f36e548a5574dd35728ac3c6209bd1e2f1a" + integrity sha512-pIdsD2jwlUGf/U38Jv97t8lq6HpaU/G9NKbYmpWpZGw3LdTNhZLbJePqxOXGB5+JEKfOPU/XLxYxFh03nr1KTg== + dependencies: + "@eslint-community/eslint-utils" "^4.2.0" + "@eslint-community/regexpp" "^4.4.0" + "@eslint/eslintrc" "^2.0.2" + "@eslint/js" "8.38.0" + "@humanwhocodes/config-array" "^0.11.8" + "@humanwhocodes/module-importer" "^1.0.1" + "@nodelib/fs.walk" "^1.2.8" ajv "^6.10.0" chalk "^4.0.0" cross-spawn "^7.0.2" - debug "^4.0.1" + debug "^4.3.2" doctrine "^3.0.0" - enquirer "^2.3.5" escape-string-regexp "^4.0.0" - eslint-scope "^5.1.1" - eslint-utils "^2.1.0" - eslint-visitor-keys "^2.0.0" - espree "^7.3.1" - esquery "^1.4.0" + eslint-scope "^7.1.1" + eslint-visitor-keys "^3.4.0" + espree "^9.5.1" + esquery "^1.4.2" esutils "^2.0.2" fast-deep-equal "^3.1.3" file-entry-cache "^6.0.1" - functional-red-black-tree "^1.0.1" - glob-parent "^5.1.2" - globals "^13.6.0" - ignore "^4.0.6" + find-up "^5.0.0" + glob-parent "^6.0.2" + globals "^13.19.0" + grapheme-splitter "^1.0.4" + ignore "^5.2.0" import-fresh "^3.0.0" imurmurhash "^0.1.4" is-glob "^4.0.0" - js-yaml "^3.13.1" + is-path-inside "^3.0.3" + js-sdsl "^4.1.4" + js-yaml "^4.1.0" json-stable-stringify-without-jsonify "^1.0.1" levn "^0.4.1" lodash.merge "^4.6.2" - minimatch "^3.0.4" + minimatch "^3.1.2" natural-compare "^1.4.0" optionator "^0.9.1" - progress "^2.0.0" - regexpp "^3.1.0" - semver "^7.2.1" - strip-ansi "^6.0.0" + strip-ansi "^6.0.1" strip-json-comments "^3.1.0" - table "^6.0.9" text-table "^0.2.0" - v8-compile-cache "^2.0.3" -espree@^7.3.0, espree@^7.3.1: - version "7.3.1" - resolved "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz" - integrity sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g== +espree@^9.5.1: + version "9.5.1" + resolved "https://registry.yarnpkg.com/espree/-/espree-9.5.1.tgz#4f26a4d5f18905bf4f2e0bd99002aab807e96dd4" + integrity sha512-5yxtHSZXRSW5pvv3hAlXM5+/Oswi1AUFqBmbibKb5s6bp3rGIDkyXU6xCoyuuLhijr4SFwPrXRoZjz0AZDN9tg== dependencies: - acorn "^7.4.0" - acorn-jsx "^5.3.1" - eslint-visitor-keys "^1.3.0" + acorn "^8.8.0" + acorn-jsx "^5.3.2" + eslint-visitor-keys "^3.4.0" esprima@^4.0.0: version "4.0.1" resolved "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== -esquery@^1.4.0: - version "1.4.0" - resolved "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz" - integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w== +esquery@^1.4.2: + version "1.5.0" + resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.5.0.tgz#6ce17738de8577694edd7361c57182ac8cb0db0b" + integrity sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg== dependencies: estraverse "^5.1.0" @@ -3458,16 +3841,6 @@ esutils@^2.0.2: resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz" integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== -event-target-polyfill@^0.0.3: - version "0.0.3" - resolved "https://registry.npmjs.org/event-target-polyfill/-/event-target-polyfill-0.0.3.tgz" - integrity sha512-ZMc6UuvmbinrCk4RzGyVmRyIsAyxMRlp4CqSrcQRO8Dy0A9ldbiRy5kdtBj4OtP7EClGdqGfIqo9JmOClMsGLQ== - -event-target-shim@^5.0.0: - version "5.0.1" - resolved "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz" - integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ== - execa@^5.0.0: version "5.1.1" resolved "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz" @@ -3499,20 +3872,20 @@ external-editor@^3.0.3, external-editor@^3.1.0: extract-files@^11.0.0: version "11.0.0" - resolved "https://registry.npmjs.org/extract-files/-/extract-files-11.0.0.tgz" + resolved "https://registry.yarnpkg.com/extract-files/-/extract-files-11.0.0.tgz#b72d428712f787eef1f5193aff8ab5351ca8469a" integrity sha512-FuoE1qtbJ4bBVvv94CC7s0oTnKUGvQs+Rjf1L2SJFfS+HTVVjhPFtehPdQ0JiGPqVNfSSZvL5yzHHQq2Z4WNhQ== -extract-files@^9.0.0: - version "9.0.0" - resolved "https://registry.npmjs.org/extract-files/-/extract-files-9.0.0.tgz" - integrity sha512-CvdFfHkC95B4bBBk36hcEmvdR2awOdhhVUYH6S/zrVj3477zven/fJMYg7121h4T1xHZC+tetUpubpAhxwI7hQ== +fast-decode-uri-component@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/fast-decode-uri-component/-/fast-decode-uri-component-1.0.1.tgz#46f8b6c22b30ff7a81357d4f59abfae938202543" + integrity sha512-WKgKWg5eUxvRZGwW8FvfbaH7AXSh2cL+3j5fMGzUMCxWBJ3dV3a7Wz8y2f/uQ0e3B6WmodD3oS54jTQ9HVTIIg== fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== -fast-glob@^3.2.9: +fast-glob@^3.2.11, fast-glob@^3.2.9: version "3.2.12" resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz" integrity sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w== @@ -3533,6 +3906,20 @@ fast-levenshtein@^2.0.6: resolved "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz" integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== +fast-querystring@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/fast-querystring/-/fast-querystring-1.1.1.tgz#f4c56ef56b1a954880cfd8c01b83f9e1a3d3fda2" + integrity sha512-qR2r+e3HvhEFmpdHMv//U8FnFlnYjaC6QKDuaXALDkw2kvHO8WDjxH+f/rHGR4Me4pnk8p9JAkRNTjYHAKRn2Q== + dependencies: + fast-decode-uri-component "^1.0.1" + +fast-url-parser@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/fast-url-parser/-/fast-url-parser-1.1.3.tgz#f4af3ea9f34d8a271cf58ad2b3759f431f0b318d" + integrity sha512-5jOCVXADYNuRkKFzNJ0dCCewsZiYo0dz8QNYljkOpFC6r2U4OBmKtvm/Tsuh4w1YYdDqDb31a8TVhBJ2OJKdqQ== + dependencies: + punycode "^1.3.2" + fastq@^1.6.0: version "1.13.0" resolved "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz" @@ -3542,19 +3929,19 @@ fastq@^1.6.0: fb-watchman@^2.0.0: version "2.0.2" - resolved "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.2.tgz#e9524ee6b5c77e9e5001af0f85f3adbb8623255c" integrity sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA== dependencies: bser "2.1.1" fbjs-css-vars@^1.0.0: version "1.0.2" - resolved "https://registry.npmjs.org/fbjs-css-vars/-/fbjs-css-vars-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/fbjs-css-vars/-/fbjs-css-vars-1.0.2.tgz#216551136ae02fe255932c3ec8775f18e2c078b8" integrity sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ== fbjs@^3.0.0: version "3.0.4" - resolved "https://registry.npmjs.org/fbjs/-/fbjs-3.0.4.tgz" + resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-3.0.4.tgz#e1871c6bd3083bac71ff2da868ad5067d37716c6" integrity sha512-ucV0tDODnGV3JCnnkmoszb5lf4bNpzjv80K41wd4k798Etq+UYD0y0TIfalLjZoKgjive6/adkRnszwapiDgBQ== dependencies: cross-fetch "^3.1.5" @@ -3565,9 +3952,24 @@ fbjs@^3.0.0: setimmediate "^1.0.5" ua-parser-js "^0.7.30" +figures@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e" + integrity sha512-UxKlfCRuCBxSXU4C6t9scbDyWZ4VlaFFdojKtzJuSkuOBQ5CNFum+zZXFwHjo+CxBC1t6zlYPgHIgFjL8ggoEQ== + dependencies: + escape-string-regexp "^1.0.5" + object-assign "^4.1.0" + +figures@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" + integrity sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA== + dependencies: + escape-string-regexp "^1.0.5" + figures@^3.0.0: version "3.2.0" - resolved "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz" + resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" integrity sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg== dependencies: escape-string-regexp "^1.0.5" @@ -3623,27 +4025,21 @@ flatted@^3.1.0: resolved "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz" integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ== -form-data-encoder@^1.7.1: - version "1.7.2" - resolved "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-1.7.2.tgz" - integrity sha512-qfqtYan3rxrnCk1VYaA4H+Ms9xdpPqvLZa6xmMgFvhO32x7/3J/ExcTd6qpxM0vH2GdMI+poehyBZvqfMTto8A== - -form-data@^3.0.0: - version "3.0.1" - resolved "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz" - integrity sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg== +for-each@^0.3.3: + version "0.3.3" + resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e" + integrity sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw== dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.8" - mime-types "^2.1.12" + is-callable "^1.1.3" -formdata-node@^4.3.1: - version "4.4.1" - resolved "https://registry.npmjs.org/formdata-node/-/formdata-node-4.4.1.tgz" - integrity sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ== +fs-extra@^10.1.0: + version "10.1.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf" + integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ== dependencies: - node-domexception "1.0.0" - web-streams-polyfill "4.0.0-beta.3" + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^2.0.0" fs-extra@^7.0.1: version "7.0.1" @@ -3688,11 +4084,6 @@ function.prototype.name@^1.1.5: es-abstract "^1.19.0" functions-have-names "^1.2.2" -functional-red-black-tree@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz" - integrity sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g== - functions-have-names@^1.2.2: version "1.2.3" resolved "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz" @@ -3700,7 +4091,7 @@ functions-have-names@^1.2.2: gensync@^1.0.0-beta.2: version "1.0.0-beta.2" - resolved "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz" + resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== get-caller-file@^2.0.1, get-caller-file@^2.0.5: @@ -3717,6 +4108,15 @@ get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1, get-intrinsic@ has "^1.0.3" has-symbols "^1.0.3" +get-intrinsic@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.0.tgz#7ad1dc0535f3a2904bba075772763e5051f6d05f" + integrity sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q== + dependencies: + function-bind "^1.1.1" + has "^1.0.3" + has-symbols "^1.0.3" + get-nonce@^1.0.0: version "1.0.1" resolved "https://registry.npmjs.org/get-nonce/-/get-nonce-1.0.1.tgz" @@ -3735,6 +4135,11 @@ get-symbol-description@^1.0.0: call-bind "^1.0.2" get-intrinsic "^1.1.1" +get-tsconfig@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/get-tsconfig/-/get-tsconfig-4.5.0.tgz#6d52d1c7b299bd3ee9cd7638561653399ac77b0f" + integrity sha512-MjhiaIWCJ1sAU4pIQ5i5OfOuHHxVo1oYeNsWTON7jxYkod8pHocXeh+SSbmu5OZZZK73B6cbJ2XADzXehLyovQ== + glob-parent@^5.1.2, glob-parent@~5.1.2: version "5.1.2" resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz" @@ -3742,6 +4147,13 @@ glob-parent@^5.1.2, glob-parent@~5.1.2: dependencies: is-glob "^4.0.1" +glob-parent@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3" + integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A== + dependencies: + is-glob "^4.0.3" + glob@7.1.6: version "7.1.6" resolved "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz" @@ -3766,7 +4178,7 @@ glob@7.1.7: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.1.1, glob@^7.1.3, glob@^7.2.0: +glob@^7.1.1, glob@^7.1.3: version "7.2.3" resolved "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== @@ -3783,13 +4195,25 @@ globals@^11.1.0: resolved "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== -globals@^13.6.0, globals@^13.9.0: - version "13.17.0" - resolved "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz" - integrity sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw== +globals@^13.19.0: + version "13.20.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-13.20.0.tgz#ea276a1e508ffd4f1612888f9d1bad1e2717bf82" + integrity sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ== dependencies: type-fest "^0.20.2" +globalthis@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.3.tgz#5852882a52b80dc301b0660273e1ed082f0b6ccf" + integrity sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA== + dependencies: + define-properties "^1.1.3" + +globalyzer@0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/globalyzer/-/globalyzer-0.1.0.tgz#cb76da79555669a1519d5a8edf093afaa0bf1465" + integrity sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q== + globby@^11.0.0, globby@^11.0.3, globby@^11.1.0: version "11.1.0" resolved "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz" @@ -3802,58 +4226,82 @@ globby@^11.0.0, globby@^11.0.3, globby@^11.1.0: merge2 "^1.4.1" slash "^3.0.0" +globby@^13.1.3: + version "13.1.4" + resolved "https://registry.yarnpkg.com/globby/-/globby-13.1.4.tgz#2f91c116066bcec152465ba36e5caa4a13c01317" + integrity sha512-iui/IiiW+QrJ1X1hKH5qwlMQyv34wJAYwH1vrf8b9kBA4sNiif3gKsMHa+BrdnOpEudWjpotfa7LrTzB1ERS/g== + dependencies: + dir-glob "^3.0.1" + fast-glob "^3.2.11" + ignore "^5.2.0" + merge2 "^1.4.1" + slash "^4.0.0" + +globrex@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/globrex/-/globrex-0.1.2.tgz#dd5d9ec826232730cd6793a5e33a9302985e6098" + integrity sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg== + +gopd@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c" + integrity sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA== + dependencies: + get-intrinsic "^1.1.3" + graceful-fs@^4.1.2, graceful-fs@^4.1.5, graceful-fs@^4.1.6, graceful-fs@^4.2.0: version "4.2.10" resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz" integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== +graceful-fs@^4.2.4: + version "4.2.11" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" + integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== + grapheme-splitter@^1.0.4: version "1.0.4" resolved "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz" integrity sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ== -graphql-config@4.3.6: - version "4.3.6" - resolved "https://registry.npmjs.org/graphql-config/-/graphql-config-4.3.6.tgz" - integrity sha512-i7mAPwc0LAZPnYu2bI8B6yXU5820Wy/ArvmOseDLZIu0OU1UTULEuexHo6ZcHXeT9NvGGaUPQZm8NV3z79YydA== +graphql-config@^4.4.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/graphql-config/-/graphql-config-4.5.0.tgz#257c2338950b8dce295a27f75c5f6c39f8f777b2" + integrity sha512-x6D0/cftpLUJ0Ch1e5sj1TZn6Wcxx4oMfmhaG9shM0DKajA9iR+j1z86GSTQ19fShbGvrSSvbIQsHku6aQ6BBw== dependencies: "@graphql-tools/graphql-file-loader" "^7.3.7" "@graphql-tools/json-file-loader" "^7.3.7" "@graphql-tools/load" "^7.5.5" "@graphql-tools/merge" "^8.2.6" "@graphql-tools/url-loader" "^7.9.7" - "@graphql-tools/utils" "^8.6.5" - cosmiconfig "7.0.1" - cosmiconfig-toml-loader "1.0.0" - cosmiconfig-typescript-loader "^4.0.0" - minimatch "4.2.1" + "@graphql-tools/utils" "^9.0.0" + cosmiconfig "8.0.0" + jiti "1.17.1" + minimatch "4.2.3" string-env-interpolation "1.0.1" - ts-node "^10.8.1" tslib "^2.4.0" -graphql-request@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/graphql-request/-/graphql-request-5.0.0.tgz" - integrity sha512-SpVEnIo2J5k2+Zf76cUkdvIRaq5FMZvGQYnA4lUWYbc99m+fHh4CZYRRO/Ff4tCLQ613fzCm3SiDT64ubW5Gyw== +graphql-request@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/graphql-request/-/graphql-request-6.0.0.tgz#9c8b6a0c341f289e049936d03cc9205300faae1c" + integrity sha512-2BmHTuglonjZvmNVw6ZzCfFlW/qkIPds0f+Qdi/Lvjsl3whJg2uvHmSvHnLWhUTEw6zcxPYAHiZoPvSVKOZ7Jw== dependencies: - "@graphql-typed-document-node/core" "^3.1.1" + "@graphql-typed-document-node/core" "^3.2.0" cross-fetch "^3.1.5" - extract-files "^9.0.0" - form-data "^3.0.0" graphql-tag@^2.11.0: version "2.12.6" - resolved "https://registry.npmjs.org/graphql-tag/-/graphql-tag-2.12.6.tgz" + resolved "https://registry.yarnpkg.com/graphql-tag/-/graphql-tag-2.12.6.tgz#d441a569c1d2537ef10ca3d1633b48725329b5f1" integrity sha512-FdSNcu2QQcWnM2VNvSCCDCVS5PpPqpzgFT8+GXzqJuoDd0CBncxCY278u4mhRO7tMgo2JjgJA5aZ+nWSQ/Z+xg== dependencies: tslib "^2.1.0" -graphql-ws@^5.4.1: - version "5.11.2" - resolved "https://registry.npmjs.org/graphql-ws/-/graphql-ws-5.11.2.tgz" - integrity sha512-4EiZ3/UXYcjm+xFGP544/yW1+DVI8ZpKASFbzrV5EDTFWJp0ZvLl4Dy2fSZAzz9imKp5pZMIcjB0x/H69Pv/6w== +graphql-ws@5.12.1: + version "5.12.1" + resolved "https://registry.yarnpkg.com/graphql-ws/-/graphql-ws-5.12.1.tgz#c62d5ac54dbd409cc6520b0b39de374b3d59d0dd" + integrity sha512-umt4f5NnMK46ChM2coO36PTFhHouBrK9stWWBczERguwYrGnPNxJ9dimU6IyOBfOkC6Izhkg4H8+F51W/8CYDg== -graphql@^16.3.0: +graphql@^16.3.0, graphql@^16.6.0: version "16.6.0" resolved "https://registry.npmjs.org/graphql/-/graphql-16.6.0.tgz" integrity sha512-KPIBPDlW7NxrbT/eh4qPXz5FiFdL5UbaA0XUNz2Rp3Z3hqBSkbj0GVjwFDztsWVauZUWsbKHgMg++sk8UX0bkw== @@ -3870,6 +4318,13 @@ hard-rejection@^2.1.0: resolved "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz" integrity sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA== +has-ansi@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" + integrity sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg== + dependencies: + ansi-regex "^2.0.0" + has-bigints@^1.0.1, has-bigints@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz" @@ -3892,6 +4347,11 @@ has-property-descriptors@^1.0.0: dependencies: get-intrinsic "^1.1.1" +has-proto@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.1.tgz#1885c1305538958aff469fef37937c22795408e0" + integrity sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg== + has-symbols@^1.0.2, has-symbols@^1.0.3: version "1.0.3" resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz" @@ -3913,7 +4373,7 @@ has@^1.0.3: header-case@^2.0.4: version "2.0.4" - resolved "https://registry.npmjs.org/header-case/-/header-case-2.0.4.tgz" + resolved "https://registry.yarnpkg.com/header-case/-/header-case-2.0.4.tgz#5a42e63b55177349cf405beb8d775acabb92c063" integrity sha512-H/vuk5TEEVZwrR0lp2zed9OCo1uAILMlx0JEMgC26rzyJJ3N1v6XkwHHXJQdR2doSjcGPM6OKPYoJgf0plJ11Q== dependencies: capital-case "^1.0.4" @@ -3933,7 +4393,7 @@ hosted-git-info@^2.1.4: http-proxy-agent@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz" + resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz#5129800203520d434f142bc78ff3c170800f2b43" integrity sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w== dependencies: "@tootallnate/once" "2" @@ -3942,7 +4402,7 @@ http-proxy-agent@^5.0.0: https-proxy-agent@^5.0.0: version "5.0.1" - resolved "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA== dependencies: agent-base "6" @@ -3967,22 +4427,17 @@ iconv-lite@^0.4.24: ieee754@^1.1.13: version "1.2.1" - resolved "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== -ignore@^4.0.6: - version "4.0.6" - resolved "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz" - integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== - -ignore@^5.1.8, ignore@^5.2.0: +ignore@^5.2.0: version "5.2.0" resolved "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz" integrity sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ== immutable@~3.7.6: version "3.7.6" - resolved "https://registry.npmjs.org/immutable/-/immutable-3.7.6.tgz" + resolved "https://registry.yarnpkg.com/immutable/-/immutable-3.7.6.tgz#13b4d3cb12befa15482a26fe1b2ebae640071e4b" integrity sha512-AizQPcaofEtO11RZhPPHBOJRdo/20MKQF9mBLnVkBoyHi1/zXK8fzVdnEpSV9gxqtnh6Qomfp3F0xT5qP/vThw== import-fresh@^3.0.0, import-fresh@^3.2.1: @@ -3995,7 +4450,7 @@ import-fresh@^3.0.0, import-fresh@^3.2.1: import-from@4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/import-from/-/import-from-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/import-from/-/import-from-4.0.0.tgz#2710b8d66817d232e16f4166e319248d3d5492e2" integrity sha512-P9J71vT5nLlDeV8FHs5nNxaLbrpfAV5cF5srvbZfpwpcJoM/xZR3hiv+q+SAnuSmuGbXMWud063iIMx/V/EWZQ== imurmurhash@^0.1.4: @@ -4003,6 +4458,11 @@ imurmurhash@^0.1.4: resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz" integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== +indent-string@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289" + integrity sha512-BYqTHXTGUIvg7t1r4sJNKcbDZkL92nkXA8YtRpbjFHRHGDL/NtUeiBJMeE60kIFN/Mg8ESaWQvftaYMGJzQZCQ== + indent-string@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz" @@ -4022,9 +4482,9 @@ inherits@2, inherits@^2.0.3, inherits@^2.0.4: integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== inquirer@^8.0.0: - version "8.2.4" - resolved "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz" - integrity sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg== + version "8.2.5" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-8.2.5.tgz#d8654a7542c35a9b9e069d27e2df4858784d54f8" + integrity sha512-QAgPDQMEgrDssk1XiwwHoOGYF9BAbUcc1+j+FhEvaOt8/cKRqyLn0U5qA6F74fGhTMGxf92pOvPBeh29jQJDTQ== dependencies: ansi-escapes "^4.2.1" chalk "^4.1.1" @@ -4051,6 +4511,15 @@ internal-slot@^1.0.3: has "^1.0.3" side-channel "^1.0.4" +internal-slot@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.5.tgz#f2a2ee21f668f8627a4667f309dc0f4fb6674986" + integrity sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ== + dependencies: + get-intrinsic "^1.2.0" + has "^1.0.3" + side-channel "^1.0.4" + invariant@^2.2.4: version "2.2.4" resolved "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz" @@ -4060,12 +4529,21 @@ invariant@^2.2.4: is-absolute@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/is-absolute/-/is-absolute-1.0.0.tgz#395e1ae84b11f26ad1795e73c17378e48a301576" integrity sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA== dependencies: is-relative "^1.0.0" is-windows "^1.0.1" +is-array-buffer@^3.0.1, is-array-buffer@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.2.tgz#f2653ced8412081638ecb0ebbd0c41c6e0aecbbe" + integrity sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w== + dependencies: + call-bind "^1.0.2" + get-intrinsic "^1.2.0" + is-typed-array "^1.1.10" + is-arrayish@^0.2.1: version "0.2.1" resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" @@ -4093,7 +4571,7 @@ is-boolean-object@^1.1.0: call-bind "^1.0.2" has-tostringtag "^1.0.0" -is-callable@^1.1.4, is-callable@^1.2.7: +is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: version "1.2.7" resolved "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz" integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== @@ -4105,7 +4583,14 @@ is-ci@^3.0.1: dependencies: ci-info "^3.2.0" -is-core-module@^2.8.0, is-core-module@^2.8.1, is-core-module@^2.9.0: +is-core-module@^2.11.0: + version "2.12.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.12.0.tgz#36ad62f6f73c8253fd6472517a12483cf03e7ec4" + integrity sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ== + dependencies: + has "^1.0.3" + +is-core-module@^2.8.1, is-core-module@^2.9.0: version "2.10.0" resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.10.0.tgz" integrity sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg== @@ -4119,11 +4604,28 @@ is-date-object@^1.0.1: dependencies: has-tostringtag "^1.0.0" +is-docker@^2.0.0, is-docker@^2.1.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" + integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== + is-extglob@^2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== +is-fullwidth-code-point@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" + integrity sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw== + dependencies: + number-is-nan "^1.0.0" + +is-fullwidth-code-point@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" + integrity sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w== + is-fullwidth-code-point@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz" @@ -4138,12 +4640,12 @@ is-glob@4.0.3, is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: is-interactive@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/is-interactive/-/is-interactive-1.0.0.tgz#cea6e6ae5c870a7b0a0004070b7b587e0252912e" integrity sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w== is-lower-case@^2.0.2: version "2.0.2" - resolved "https://registry.npmjs.org/is-lower-case/-/is-lower-case-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/is-lower-case/-/is-lower-case-2.0.2.tgz#1c0884d3012c841556243483aa5d522f47396d2a" integrity sha512-bVcMJy4X5Og6VZfdOZstSexlEy20Sr0k/p/b2IlQJlfdKAQuMpiv5w2Ccxb8sKdRUNAG1PnHVHjFSdRDVS6NlQ== dependencies: tslib "^2.0.3" @@ -4165,11 +4667,28 @@ is-number@^7.0.0: resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== +is-observable@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-observable/-/is-observable-1.1.0.tgz#b3e986c8f44de950867cab5403f5a3465005975e" + integrity sha512-NqCa4Sa2d+u7BWc6CukaObG3Fh+CU9bvixbpcXYhy2VvYS7vVGIdAgnIS5Ks3A/cqk4rebLJ9s8zBstT2aKnIA== + dependencies: + symbol-observable "^1.1.0" + +is-path-inside@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" + integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== + is-plain-obj@^1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz" integrity sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg== +is-promise@^2.1.0: + version "2.2.2" + resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.2.2.tgz#39ab959ccbf9a774cf079f7b40c7a26f763135f1" + integrity sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ== + is-regex@^1.1.4: version "1.1.4" resolved "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz" @@ -4180,7 +4699,7 @@ is-regex@^1.1.4: is-relative@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/is-relative/-/is-relative-1.0.0.tgz#a1bb6935ce8c5dba1e8b9754b9b2dcc020e2260d" integrity sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA== dependencies: is-unc-path "^1.0.0" @@ -4192,6 +4711,11 @@ is-shared-array-buffer@^1.0.2: dependencies: call-bind "^1.0.2" +is-stream@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" + integrity sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ== + is-stream@^2.0.0: version "2.0.1" resolved "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz" @@ -4218,21 +4742,32 @@ is-symbol@^1.0.2, is-symbol@^1.0.3: dependencies: has-symbols "^1.0.2" +is-typed-array@^1.1.10, is-typed-array@^1.1.9: + version "1.1.10" + resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.10.tgz#36a5b5cb4189b575d1a3e4b08536bfb485801e3f" + integrity sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A== + dependencies: + available-typed-arrays "^1.0.5" + call-bind "^1.0.2" + for-each "^0.3.3" + gopd "^1.0.1" + has-tostringtag "^1.0.0" + is-unc-path@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/is-unc-path/-/is-unc-path-1.0.0.tgz#d731e8898ed090a12c352ad2eaed5095ad322c9d" integrity sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ== dependencies: unc-path-regex "^0.1.2" is-unicode-supported@^0.1.0: version "0.1.0" - resolved "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz" + resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7" integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw== is-upper-case@^2.0.2: version "2.0.2" - resolved "https://registry.npmjs.org/is-upper-case/-/is-upper-case-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/is-upper-case/-/is-upper-case-2.0.2.tgz#f1105ced1fe4de906a5f39553e7d3803fd804649" integrity sha512-44pxmxAvnnAOwBg4tHPnkfvgjPwbc5QIsSstNU+YcJ1ovxVzCWpSGosPJOZh/a1tdl81fbgnLc9LLv+x2ywbPQ== dependencies: tslib "^2.0.3" @@ -4249,32 +4784,41 @@ is-windows@^1.0.0, is-windows@^1.0.1: resolved "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz" integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== +is-wsl@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" + integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== + dependencies: + is-docker "^2.0.0" + isexe@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== -isomorphic-fetch@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-3.0.0.tgz" - integrity sha512-qvUtwJ3j6qwsF3jLxkZ72qCgjMysPzDfeV240JHiGZsANBYd+EEuu35v7dfrJ9Up0Ak07D7GGSkGhCHTqg/5wA== - dependencies: - node-fetch "^2.6.1" - whatwg-fetch "^3.4.1" - isomorphic-unfetch@^3.1.0: version "3.1.0" - resolved "https://registry.npmjs.org/isomorphic-unfetch/-/isomorphic-unfetch-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/isomorphic-unfetch/-/isomorphic-unfetch-3.1.0.tgz#87341d5f4f7b63843d468438128cb087b7c3e98f" integrity sha512-geDJjpoZ8N0kWexiwkX8F9NkTsXhetLPVbZFQ+JTW239QNOwvB0gniuR1Wc6f0AMTn7/mFGyXvHTifrCp/GH8Q== dependencies: node-fetch "^2.6.1" unfetch "^4.2.0" -isomorphic-ws@^5.0.0: +isomorphic-ws@5.0.0, isomorphic-ws@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/isomorphic-ws/-/isomorphic-ws-5.0.0.tgz" + resolved "https://registry.yarnpkg.com/isomorphic-ws/-/isomorphic-ws-5.0.0.tgz#e5529148912ecb9b451b46ed44d53dae1ce04bbf" integrity sha512-muId7Zzn9ywDsyXgTIafTry2sV3nySZeUDe6YedVd1Hvuuep5AsIlqK+XefWpYTyJG5e503F2xIuT2lcU6rCSw== +jiti@1.17.1: + version "1.17.1" + resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.17.1.tgz#264daa43ee89a03e8be28c3d712ccc4eb9f1e8ed" + integrity sha512-NZIITw8uZQFuzQimqjUxIrIcEdxYDFIe/0xYfIlVXTkiBjjyBEvgasj5bb0/cHtPRD/NziPbT312sFrkI5ALpw== + +jose@^4.11.4: + version "4.13.2" + resolved "https://registry.yarnpkg.com/jose/-/jose-4.13.2.tgz#4db5b4a96742a252e6d3781ac73cc37ee2bd0fbc" + integrity sha512-GMUKtV+l05F6NY/06nM7rucHM6Ktvw6sxnyRqINBNWS/hCM/bBk7kanOEckRP8xtC/jzuGfTRVZvkjjuy+g4dA== + joycon@^3.0.1: version "3.1.1" resolved "https://registry.npmjs.org/joycon/-/joycon-3.1.1.tgz" @@ -4285,6 +4829,11 @@ js-cookie@^3.0.1: resolved "https://registry.yarnpkg.com/js-cookie/-/js-cookie-3.0.1.tgz#9e39b4c6c2f56563708d7d31f6f5f21873a92414" integrity sha512-+0rgsUXZu4ncpPxRL+lNEptWMOWl9etvPHc/koSRp6MPwpRYAhmk0dUG00J4bxVV3r9uUzfo24wW0knS07SKSw== +js-sdsl@^4.1.4: + version "4.4.0" + resolved "https://registry.yarnpkg.com/js-sdsl/-/js-sdsl-4.4.0.tgz#8b437dbe642daa95760400b602378ed8ffea8430" + integrity sha512-FfVSdx6pJ41Oa+CF7RDaFmTnCaFhua+SNYQX74riGOpl96x+2jQCqEfQ2bnXu/5DPCqlRuiqyvTJM0Qjz26IVg== + "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz" @@ -4298,9 +4847,9 @@ js-yaml@^3.13.0, js-yaml@^3.13.1, js-yaml@^3.6.1: argparse "^1.0.7" esprima "^4.0.0" -js-yaml@^4.0.0: +js-yaml@^4.0.0, js-yaml@^4.1.0: version "4.1.0" - resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== dependencies: argparse "^2.0.1" @@ -4320,26 +4869,21 @@ json-schema-traverse@^0.4.1: resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz" integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== -json-schema-traverse@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz" - integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== - json-stable-stringify-without-jsonify@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz" integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== json-stable-stringify@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz" - integrity sha512-i/J297TW6xyj7sDFa7AmBPkQvLIxWr2kKPWI26tXydnZrzVAocNqn5DMNT1Mzk0vit1V5UkRM7C1KdVNp7Lmcg== + version "1.0.2" + resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.2.tgz#e06f23128e0bbe342dc996ed5a19e28b57b580e0" + integrity sha512-eunSSaEnxV12z+Z73y/j5N37/In40GK4GmsSy+tEHJMxknvqnA7/djeYtAgW0GsWHUfg+847WJjKaEylk2y09g== dependencies: - jsonify "~0.0.0" + jsonify "^0.0.1" json-to-pretty-yaml@^1.2.2: version "1.2.2" - resolved "https://registry.npmjs.org/json-to-pretty-yaml/-/json-to-pretty-yaml-1.2.2.tgz" + resolved "https://registry.yarnpkg.com/json-to-pretty-yaml/-/json-to-pretty-yaml-1.2.2.tgz#f4cd0bd0a5e8fe1df25aaf5ba118b099fd992d5b" integrity sha512-rvm6hunfCcqegwYaG5T4yKJWxc9FXFgBVrcTZ4XfSVRwa5HA/Xs+vB/Eo9treYYHCeNM0nrSUr82V/M31Urc7A== dependencies: remedial "^1.0.7" @@ -4352,10 +4896,10 @@ json5@^1.0.1: dependencies: minimist "^1.2.0" -json5@^2.2.1: - version "2.2.1" - resolved "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz" - integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== +json5@^2.2.2: + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonfile@^4.0.0: version "4.0.0" @@ -4364,26 +4908,19 @@ jsonfile@^4.0.0: optionalDependencies: graceful-fs "^4.1.6" -jsonify@~0.0.0: - version "0.0.0" - resolved "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz" - integrity sha512-trvBk1ki43VZptdBI5rIlG4YOzyeH/WefQt5rj1grasPn4iiZWKet8nkgc4GlsAylaztn0qZfUYOiTsASJFdNA== - -jsonwebtoken@^8.5.1: - version "8.5.1" - resolved "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz" - integrity sha512-XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w== - dependencies: - jws "^3.2.2" - lodash.includes "^4.3.0" - lodash.isboolean "^3.0.3" - lodash.isinteger "^4.0.4" - lodash.isnumber "^3.0.3" - lodash.isplainobject "^4.0.6" - lodash.isstring "^4.0.1" - lodash.once "^4.0.0" - ms "^2.1.1" - semver "^5.6.0" +jsonfile@^6.0.1: + version "6.1.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" + integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== + dependencies: + universalify "^2.0.0" + optionalDependencies: + graceful-fs "^4.1.6" + +jsonify@^0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.1.tgz#2aa3111dae3d34a0f151c63f3a45d995d9420978" + integrity sha512-2/Ki0GcmuqSrgFyelQq9M05y7PS0mEwuIzrf3f1fPqkVDVRvZrPZtVSMHxdgo8Aq0sxAOb/cr2aqqA3LeWHVPg== "jsx-ast-utils@^2.4.1 || ^3.0.0", jsx-ast-utils@^3.3.2: version "3.3.3" @@ -4393,29 +4930,12 @@ jsonwebtoken@^8.5.1: array-includes "^3.1.5" object.assign "^4.1.3" -jwa@^1.4.1: - version "1.4.1" - resolved "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz" - integrity sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA== - dependencies: - buffer-equal-constant-time "1.0.1" - ecdsa-sig-formatter "1.0.11" - safe-buffer "^5.0.1" - -jws@^3.2.2: - version "3.2.2" - resolved "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz" - integrity sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA== - dependencies: - jwa "^1.4.1" - safe-buffer "^5.0.1" - kind-of@^6.0.3: version "6.0.3" resolved "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz" integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== -kleur@^4.1.4: +kleur@^4.1.4, kleur@^4.1.5: version "4.1.5" resolved "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz" integrity sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ== @@ -4450,9 +4970,38 @@ lines-and-columns@^1.1.6: resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz" integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== +listr-silent-renderer@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/listr-silent-renderer/-/listr-silent-renderer-1.1.1.tgz#924b5a3757153770bf1a8e3fbf74b8bbf3f9242e" + integrity sha512-L26cIFm7/oZeSNVhWB6faeorXhMg4HNlb/dS/7jHhr708jxlXrtrBWo4YUxZQkc6dGoxEAe6J/D3juTRBUzjtA== + +listr-update-renderer@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/listr-update-renderer/-/listr-update-renderer-0.5.0.tgz#4ea8368548a7b8aecb7e06d8c95cb45ae2ede6a2" + integrity sha512-tKRsZpKz8GSGqoI/+caPmfrypiaq+OQCbd+CovEC24uk1h952lVj5sC7SqyFUm+OaJ5HN/a1YLt5cit2FMNsFA== + dependencies: + chalk "^1.1.3" + cli-truncate "^0.2.1" + elegant-spinner "^1.0.1" + figures "^1.7.0" + indent-string "^3.0.0" + log-symbols "^1.0.2" + log-update "^2.3.0" + strip-ansi "^3.0.1" + +listr-verbose-renderer@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/listr-verbose-renderer/-/listr-verbose-renderer-0.5.0.tgz#f1132167535ea4c1261102b9f28dac7cba1e03db" + integrity sha512-04PDPqSlsqIOaaaGZ+41vq5FejI9auqTInicFRndCBgE3bXG8D6W1I+mWhk+1nqbHmyhla/6BUrd5OSiHwKRXw== + dependencies: + chalk "^2.4.1" + cli-cursor "^2.1.0" + date-fns "^1.27.2" + figures "^2.0.0" + listr2@^4.0.5: version "4.0.5" - resolved "https://registry.npmjs.org/listr2/-/listr2-4.0.5.tgz" + resolved "https://registry.yarnpkg.com/listr2/-/listr2-4.0.5.tgz#9dcc50221583e8b4c71c43f9c7dfd0ef546b75d5" integrity sha512-juGHV1doQdpNT3GSTs9IUN43QJb7KHdF9uqg7Vufs/tG9VTzpFphqF4pm/ICdAABGQxsyNn9CiYA3StkI6jpwA== dependencies: cli-truncate "^2.1.0" @@ -4464,6 +5013,21 @@ listr2@^4.0.5: through "^2.3.8" wrap-ansi "^7.0.0" +listr@^0.14.3: + version "0.14.3" + resolved "https://registry.yarnpkg.com/listr/-/listr-0.14.3.tgz#2fea909604e434be464c50bddba0d496928fa586" + integrity sha512-RmAl7su35BFd/xoMamRjpIE4j3v+L28o8CT5YhAXQJm1fD+1l9ngXY8JAQRJ+tFK2i5njvi0iRUKV09vPwA0iA== + dependencies: + "@samverschueren/stream-to-observable" "^0.3.0" + is-observable "^1.1.0" + is-promise "^2.1.0" + is-stream "^1.1.0" + listr-silent-renderer "^1.1.1" + listr-update-renderer "^0.5.0" + listr-verbose-renderer "^0.5.0" + p-map "^2.0.0" + rxjs "^6.3.3" + load-tsconfig@^0.2.0: version "0.2.3" resolved "https://registry.npmjs.org/load-tsconfig/-/load-tsconfig-0.2.3.tgz" @@ -4493,46 +5057,11 @@ locate-path@^6.0.0: dependencies: p-locate "^5.0.0" -lodash.includes@^4.3.0: - version "4.3.0" - resolved "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz" - integrity sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w== - -lodash.isboolean@^3.0.3: - version "3.0.3" - resolved "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz" - integrity sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg== - -lodash.isinteger@^4.0.4: - version "4.0.4" - resolved "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz" - integrity sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA== - -lodash.isnumber@^3.0.3: - version "3.0.3" - resolved "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz" - integrity sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw== - -lodash.isplainobject@^4.0.6: - version "4.0.6" - resolved "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz" - integrity sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA== - -lodash.isstring@^4.0.1: - version "4.0.1" - resolved "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz" - integrity sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw== - lodash.merge@^4.6.2: version "4.6.2" resolved "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz" integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== -lodash.once@^4.0.0: - version "4.1.1" - resolved "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz" - integrity sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg== - lodash.sortby@^4.7.0: version "4.7.0" resolved "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz" @@ -4543,27 +5072,38 @@ lodash.startcase@^4.4.0: resolved "https://registry.npmjs.org/lodash.startcase/-/lodash.startcase-4.4.0.tgz" integrity sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg== -lodash.truncate@^4.4.2: - version "4.4.2" - resolved "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz" - integrity sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw== - lodash@^4.17.11, lodash@^4.17.20, lodash@^4.17.21, lodash@~4.17.0: version "4.17.21" resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== +log-symbols@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-1.0.2.tgz#376ff7b58ea3086a0f09facc74617eca501e1a18" + integrity sha512-mmPrW0Fh2fxOzdBbFv4g1m6pR72haFLPJ2G5SJEELf1y+iaQrDG6cWCPjy54RHYbZAt7X+ls690Kw62AdWXBzQ== + dependencies: + chalk "^1.0.0" + log-symbols@^4.0.0, log-symbols@^4.1.0: version "4.1.0" - resolved "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.1.0.tgz#3fbdbb95b4683ac9fc785111e792e558d4abd503" integrity sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg== dependencies: chalk "^4.1.0" is-unicode-supported "^0.1.0" +log-update@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/log-update/-/log-update-2.3.0.tgz#88328fd7d1ce7938b29283746f0b1bc126b24708" + integrity sha512-vlP11XfFGyeNQlmEn9tJ66rEW1coA/79m5z6BCkudjbAGE83uhAcGYrBFwfs3AdLiLzGRusRPAbSPK9xZteCmg== + dependencies: + ansi-escapes "^3.0.0" + cli-cursor "^2.0.0" + wrap-ansi "^3.0.1" + log-update@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/log-update/-/log-update-4.0.0.tgz#589ecd352471f2a1c0c570287543a64dfd20e0a1" integrity sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg== dependencies: ansi-escapes "^4.3.0" @@ -4580,14 +5120,14 @@ loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.4.0: lower-case-first@^2.0.2: version "2.0.2" - resolved "https://registry.npmjs.org/lower-case-first/-/lower-case-first-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/lower-case-first/-/lower-case-first-2.0.2.tgz#64c2324a2250bf7c37c5901e76a5b5309301160b" integrity sha512-EVm/rR94FJTZi3zefZ82fLWab+GX14LJN4HrWBcuo6Evmsl9hEfnqxgcHCKb9q+mNf6EVdsjx/qucYFIIB84pg== dependencies: tslib "^2.0.3" lower-case@^2.0.2: version "2.0.2" - resolved "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28" integrity sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg== dependencies: tslib "^2.0.3" @@ -4600,6 +5140,13 @@ lru-cache@^4.0.1: pseudomap "^1.0.2" yallist "^2.1.2" +lru-cache@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" + integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== + dependencies: + yallist "^3.0.2" + lru-cache@^6.0.0: version "6.0.0" resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz" @@ -4609,12 +5156,12 @@ lru-cache@^6.0.0: make-error@^1.1.1: version "1.3.6" - resolved "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz" + resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== map-cache@^0.2.0: version "0.2.2" - resolved "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz" + resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" integrity sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg== map-obj@^1.0.0: @@ -4654,9 +5201,9 @@ merge2@^1.3.0, merge2@^1.4.1: resolved "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== -meros@^1.1.4: +meros@^1.2.1: version "1.2.1" - resolved "https://registry.npmjs.org/meros/-/meros-1.2.1.tgz" + resolved "https://registry.yarnpkg.com/meros/-/meros-1.2.1.tgz#056f7a76e8571d0aaf3c7afcbe7eb6407ff7329e" integrity sha512-R2f/jxYqCAGI19KhAvaxSOxALBMkaXWH2a7rOyqQw+ZmizX5bKkEYWLzdhC+U82ZVVPVp6MCXe3EkVligh+12g== micromatch@^4.0.2, micromatch@^4.0.4: @@ -4667,17 +5214,10 @@ micromatch@^4.0.2, micromatch@^4.0.4: braces "^3.0.2" picomatch "^2.3.1" -mime-db@1.52.0: - version "1.52.0" - resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz" - integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== - -mime-types@^2.1.12: - version "2.1.35" - resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz" - integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== - dependencies: - mime-db "1.52.0" +mimic-fn@^1.0.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022" + integrity sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ== mimic-fn@^2.1.0: version "2.1.0" @@ -4689,14 +5229,14 @@ min-indent@^1.0.0: resolved "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz" integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== -minimatch@4.2.1: - version "4.2.1" - resolved "https://registry.npmjs.org/minimatch/-/minimatch-4.2.1.tgz" - integrity sha512-9Uq1ChtSZO+Mxa/CL1eGizn2vRn3MlLgzhT0Iz8zaY8NdvxvB0d5QdPFmCKf7JKA9Lerx5vRrnwO03jsSfGG9g== +minimatch@4.2.3: + version "4.2.3" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-4.2.3.tgz#b4dcece1d674dee104bb0fb833ebb85a78cbbca6" + integrity sha512-lIUdtK5hdofgCTu3aT0sOaHsYR37viUuIc0rwnnDXImbwFRcumyLMeZaM0t0I/fgxS6s6JMfu0rLD1Wz9pv1ng== dependencies: brace-expansion "^1.1.7" -minimatch@^3.0.4, minimatch@^3.1.1, minimatch@^3.1.2: +minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: version "3.1.2" resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz" integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== @@ -4722,6 +5262,13 @@ mixme@^0.5.1: resolved "https://registry.npmjs.org/mixme/-/mixme-0.5.4.tgz" integrity sha512-3KYa4m4Vlqx98GPdOHghxSdNtTvcP8E0kkaJ5Dlh+h2DRzF7zpuVVcA8B0QpKd11YJeP9QQ7ASkKzOeu195Wzw== +mkdirp@^0.5.1: + version "0.5.6" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" + integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== + dependencies: + minimist "^1.2.6" + mkdirp@^1.0.4: version "1.0.4" resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz" @@ -4749,7 +5296,7 @@ ms@^2.1.1: mute-stream@0.0.8: version "0.0.8" - resolved "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz" + resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== mz@^2.7.0: @@ -4773,6 +5320,16 @@ nanospinner@^1.0.0: dependencies: picocolors "^1.0.0" +native-fetch@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/native-fetch/-/native-fetch-4.0.2.tgz#75c8a44c5f3bb021713e5e24f2846750883e49af" + integrity sha512-4QcVlKFtv2EYVS5MBgsGX5+NWKtbDbIECdUXDBGDMAZXq3Jkv9zf+y8iS7Ub8fEdga3GpYeazp9gauNqXHJOCg== + +natural-compare-lite@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz#17b09581988979fddafe0201e931ba933c96cbb4" + integrity sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g== + natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz" @@ -4831,33 +5388,35 @@ next@^13.1.6: no-case@^3.0.4: version "3.0.4" - resolved "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz" + resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.4.tgz#d361fd5c9800f558551a8369fc0dcd4662b6124d" integrity sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg== dependencies: lower-case "^2.0.2" tslib "^2.0.3" -node-domexception@1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz" - integrity sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ== - -node-fetch@2.6.7, node-fetch@^2.6.1, node-fetch@^2.6.7: +node-fetch@2.6.7: version "2.6.7" - resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad" integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ== dependencies: whatwg-url "^5.0.0" +node-fetch@^2.6.1: + version "2.6.9" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.9.tgz#7c7f744b5cc6eb5fd404e0c7a9fec630a55657e6" + integrity sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg== + dependencies: + whatwg-url "^5.0.0" + node-int64@^0.4.0: version "0.4.0" - resolved "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz" + resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== -node-releases@^2.0.6: - version "2.0.6" - resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz" - integrity sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg== +node-releases@^2.0.8: + version "2.0.10" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.10.tgz#c311ebae3b6a148c89b1813fd7c4d3c024ef537f" + integrity sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w== normalize-package-data@^2.5.0: version "2.5.0" @@ -4890,9 +5449,14 @@ npm-run-path@^4.0.1: nullthrows@^1.1.1: version "1.1.1" - resolved "https://registry.npmjs.org/nullthrows/-/nullthrows-1.1.1.tgz" + resolved "https://registry.yarnpkg.com/nullthrows/-/nullthrows-1.1.1.tgz#7818258843856ae971eae4208ad7d7eb19a431b1" integrity sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw== +number-is-nan@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" + integrity sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ== + object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: version "4.1.1" resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" @@ -4903,12 +5467,17 @@ object-inspect@^1.12.2, object-inspect@^1.9.0: resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz" integrity sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ== +object-inspect@^1.12.3: + version "1.12.3" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.3.tgz#ba62dffd67ee256c8c086dfae69e016cd1f198b9" + integrity sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g== + object-keys@^1.1.1: version "1.1.1" resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== -object.assign@^4.1.0, object.assign@^4.1.3, object.assign@^4.1.4: +object.assign@^4.1.3, object.assign@^4.1.4: version "4.1.4" resolved "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz" integrity sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ== @@ -4927,6 +5496,15 @@ object.entries@^1.1.5: define-properties "^1.1.3" es-abstract "^1.19.1" +object.entries@^1.1.6: + version "1.1.6" + resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.6.tgz#9737d0e5b8291edd340a3e3264bb8a3b00d5fa23" + integrity sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.4" + es-abstract "^1.20.4" + object.fromentries@^2.0.5: version "2.0.5" resolved "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.5.tgz" @@ -4936,6 +5514,15 @@ object.fromentries@^2.0.5: define-properties "^1.1.3" es-abstract "^1.19.1" +object.fromentries@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.6.tgz#cdb04da08c539cffa912dcd368b886e0904bfa73" + integrity sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.4" + es-abstract "^1.20.4" + object.hasown@^1.1.1: version "1.1.1" resolved "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.1.tgz" @@ -4944,6 +5531,14 @@ object.hasown@^1.1.1: define-properties "^1.1.4" es-abstract "^1.19.5" +object.hasown@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/object.hasown/-/object.hasown-1.1.2.tgz#f919e21fad4eb38a57bc6345b3afd496515c3f92" + integrity sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw== + dependencies: + define-properties "^1.1.4" + es-abstract "^1.20.4" + object.values@^1.1.5: version "1.1.5" resolved "https://registry.npmjs.org/object.values/-/object.values-1.1.5.tgz" @@ -4953,6 +5548,15 @@ object.values@^1.1.5: define-properties "^1.1.3" es-abstract "^1.19.1" +object.values@^1.1.6: + version "1.1.6" + resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.6.tgz#4abbaa71eba47d63589d402856f908243eea9b1d" + integrity sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.4" + es-abstract "^1.20.4" + once@^1.3.0: version "1.4.0" resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz" @@ -4960,6 +5564,13 @@ once@^1.3.0: dependencies: wrappy "1" +onetime@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" + integrity sha512-oyyPpiMaKARvvcgip+JV+7zci5L8D1W9RZIz2l1o08AM3pfspitVWnPt3mzHcBPp12oYMTy0pqrFs/C+m3EwsQ== + dependencies: + mimic-fn "^1.0.0" + onetime@^5.1.0, onetime@^5.1.2: version "5.1.2" resolved "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz" @@ -4967,6 +5578,15 @@ onetime@^5.1.0, onetime@^5.1.2: dependencies: mimic-fn "^2.1.0" +open@^8.4.0: + version "8.4.2" + resolved "https://registry.yarnpkg.com/open/-/open-8.4.2.tgz#5b5ffe2a8f793dcd2aad73e550cb87b59cb084f9" + integrity sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ== + dependencies: + define-lazy-prop "^2.0.0" + is-docker "^2.1.1" + is-wsl "^2.2.0" + opener@^1.5.2: version "1.5.2" resolved "https://registry.yarnpkg.com/opener/-/opener-1.5.2.tgz#5d37e1f35077b9dcac4301372271afdeb2a13598" @@ -4986,7 +5606,7 @@ optionator@^0.9.1: ora@^5.4.1: version "5.4.1" - resolved "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz" + resolved "https://registry.yarnpkg.com/ora/-/ora-5.4.1.tgz#1b2678426af4ac4a509008e5e4ac9e9959db9e18" integrity sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ== dependencies: bl "^4.1.0" @@ -5051,7 +5671,7 @@ p-map@^2.0.0: p-map@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== dependencies: aggregate-error "^3.0.0" @@ -5063,7 +5683,7 @@ p-try@^2.0.0: param-case@^3.0.4: version "3.0.4" - resolved "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz" + resolved "https://registry.yarnpkg.com/param-case/-/param-case-3.0.4.tgz#7d17fe4aa12bde34d4a77d91acfb6219caad01c5" integrity sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A== dependencies: dot-case "^3.0.4" @@ -5078,7 +5698,7 @@ parent-module@^1.0.0: parse-filepath@^1.0.2: version "1.0.2" - resolved "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/parse-filepath/-/parse-filepath-1.0.2.tgz#a632127f53aaf3d15876f5872f3ffac763d6c891" integrity sha512-FwdRXKCohSVeXqwtYonZTXtbGJKrn+HNyWDYVcp5yuJlesTwNH4rsmRZ+GrKAPJ5bLpRxESMeS+Rl0VCHRvB2Q== dependencies: is-absolute "^1.0.0" @@ -5097,7 +5717,7 @@ parse-json@^5.0.0: pascal-case@^3.1.2: version "3.1.2" - resolved "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz" + resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.2.tgz#b48e0ef2b98e205e7c1dae747d0b1508237660eb" integrity sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g== dependencies: no-case "^3.0.4" @@ -5105,7 +5725,7 @@ pascal-case@^3.1.2: path-case@^3.0.4: version "3.0.4" - resolved "https://registry.npmjs.org/path-case/-/path-case-3.0.4.tgz" + resolved "https://registry.yarnpkg.com/path-case/-/path-case-3.0.4.tgz#9168645334eb942658375c56f80b4c0cb5f82c6f" integrity sha512-qO4qCFjXqVTrcbPt/hQfhTQ+VhFsqNKOPtytgNKkKxSoEp3XPUQ8ObFuePylOIok5gjn69ry8XiULxCwot3Wfg== dependencies: dot-case "^3.0.4" @@ -5133,12 +5753,12 @@ path-parse@^1.0.7: path-root-regex@^0.1.0: version "0.1.2" - resolved "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz" + resolved "https://registry.yarnpkg.com/path-root-regex/-/path-root-regex-0.1.2.tgz#bfccdc8df5b12dc52c8b43ec38d18d72c04ba96d" integrity sha512-4GlJ6rZDhQZFE0DPVKh0e9jmZ5egZfxTkp7bcRDuPlJXbAwhxcl2dINPUAsjLdejqaLsCeg8axcLjIbvBjN4pQ== path-root@^0.1.1: version "0.1.1" - resolved "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz" + resolved "https://registry.yarnpkg.com/path-root/-/path-root-0.1.1.tgz#9a4a6814cac1c0cd73360a95f32083c8ea4745b7" integrity sha512-QLcPegTHF11axjfojBIoDygmS2E3Lf+8+jI6wOVmNVenrKSo3mFdSGiIgdSHenczw3wPtlVMQaFVwGmM7BJdtg== dependencies: path-root-regex "^0.1.0" @@ -5217,14 +5837,14 @@ prettier@^2.7.1, prettier@latest: resolved "https://registry.npmjs.org/prettier/-/prettier-2.7.1.tgz" integrity sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g== -progress@^2.0.0: - version "2.0.3" - resolved "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz" - integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== +prettier@^2.8.0: + version "2.8.7" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.7.tgz#bb79fc8729308549d28fe3a98fce73d2c0656450" + integrity sha512-yPngTo3aXUUmyuTjeTUT75txrf+aMh9FiD7q9ZE/i6r0bPb22g4FsE6Y338PQX1bmfy08i9QQCB7/rcUAVntfw== promise@^7.1.1: version "7.3.1" - resolved "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz" + resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" integrity sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg== dependencies: asap "~2.0.3" @@ -5243,6 +5863,11 @@ pseudomap@^1.0.2: resolved "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz" integrity sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ== +punycode@^1.3.2: + version "1.4.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" + integrity sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ== + punycode@^2.1.0: version "2.1.1" resolved "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz" @@ -5250,16 +5875,23 @@ punycode@^2.1.0: pvtsutils@^1.3.2: version "1.3.2" - resolved "https://registry.npmjs.org/pvtsutils/-/pvtsutils-1.3.2.tgz" + resolved "https://registry.yarnpkg.com/pvtsutils/-/pvtsutils-1.3.2.tgz#9f8570d132cdd3c27ab7d51a2799239bf8d8d5de" integrity sha512-+Ipe2iNUyrZz+8K/2IOo+kKikdtfhRKzNpQbruF2URmqPtoqAs8g3xS7TJvFF2GcPXjh7DkqMnpVveRFq4PgEQ== dependencies: tslib "^2.4.0" pvutils@^1.1.3: version "1.1.3" - resolved "https://registry.npmjs.org/pvutils/-/pvutils-1.1.3.tgz" + resolved "https://registry.yarnpkg.com/pvutils/-/pvutils-1.1.3.tgz#f35fc1d27e7cd3dfbd39c0826d173e806a03f5a3" integrity sha512-pMpnA0qRdFp32b1sJl1wOJNxZLQ2cbQx+k6tjNtZ8CpvVhNqEPRgivZ2WOUev2YMajecdH7ctUPDvEe87nariQ== +qs@^6.11.0: + version "6.11.1" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.1.tgz#6c29dff97f0c0060765911ba65cbc9764186109f" + integrity sha512-0wsrzgTz/kAVIeuxSjnpGC56rzYtr6JT/2BwEvMaPhFIoYa1aGO8LbzuU1R0uUYQkLpWBTOj0l/CLAJB64J6nQ== + dependencies: + side-channel "^1.0.4" + queue-microtask@^1.2.2: version "1.2.3" resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz" @@ -5348,9 +5980,9 @@ read-yaml-file@^1.1.0: strip-bom "^3.0.0" readable-stream@^3.4.0: - version "3.6.0" - resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz" - integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== + version "3.6.2" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" + integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== dependencies: inherits "^2.0.3" string_decoder "^1.1.1" @@ -5371,6 +6003,11 @@ redent@^3.0.0: indent-string "^4.0.0" strip-indent "^3.0.0" +regenerator-runtime@^0.13.11: + version "0.13.11" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#f6dca3e7ceec20590d07ada785636a90cdca17f9" + integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg== + regenerator-runtime@^0.13.4: version "0.13.9" resolved "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz" @@ -5385,14 +6022,9 @@ regexp.prototype.flags@^1.4.1, regexp.prototype.flags@^1.4.3: define-properties "^1.1.3" functions-have-names "^1.2.2" -regexpp@^3.1.0: - version "3.2.0" - resolved "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz" - integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== - relay-runtime@12.0.0: version "12.0.0" - resolved "https://registry.npmjs.org/relay-runtime/-/relay-runtime-12.0.0.tgz" + resolved "https://registry.yarnpkg.com/relay-runtime/-/relay-runtime-12.0.0.tgz#1e039282bdb5e0c1b9a7dc7f6b9a09d4f4ff8237" integrity sha512-QU6JKr1tMsry22DXNy9Whsq5rmvwr3LSZiiWV/9+DFpuTWvp+WFhobWMc8TC4OjKFfNhEZy7mOiqUAn5atQtug== dependencies: "@babel/runtime" "^7.0.0" @@ -5401,7 +6033,7 @@ relay-runtime@12.0.0: remedial@^1.0.7: version "1.0.8" - resolved "https://registry.npmjs.org/remedial/-/remedial-1.0.8.tgz" + resolved "https://registry.yarnpkg.com/remedial/-/remedial-1.0.8.tgz#a5e4fd52a0e4956adbaf62da63a5a46a78c578a0" integrity sha512-/62tYiOe6DzS5BqVsNpH/nkGlX45C/Sp6V+NtiN6JQNS1Viay7cWkazmRkrQrdFj2eshDe96SIQNIoMxqhzBOg== remove-trailing-separator@^1.0.1: @@ -5411,7 +6043,7 @@ remove-trailing-separator@^1.0.1: remove-trailing-spaces@^1.0.6: version "1.0.8" - resolved "https://registry.npmjs.org/remove-trailing-spaces/-/remove-trailing-spaces-1.0.8.tgz" + resolved "https://registry.yarnpkg.com/remove-trailing-spaces/-/remove-trailing-spaces-1.0.8.tgz#4354d22f3236374702f58ee373168f6d6887ada7" integrity sha512-O3vsMYfWighyFbTd8hk8VaSj9UAGENxAtX+//ugIst2RMk5e03h6RoIS+0ylsFxY1gvmPuAY/PO4It+gPEeySA== require-directory@^2.1.1: @@ -5419,11 +6051,6 @@ require-directory@^2.1.1: resolved "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz" integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== -require-from-string@^2.0.2: - version "2.0.2" - resolved "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz" - integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== - require-main-filename@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz" @@ -5448,7 +6075,16 @@ resolve@^1.10.0, resolve@^1.20.0, resolve@^1.22.0: path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" -resolve@^2.0.0-next.3: +resolve@^1.22.1: + version "1.22.2" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.2.tgz#0ed0943d4e301867955766c9f3e1ae6d01c6845f" + integrity sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g== + dependencies: + is-core-module "^2.11.0" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" + +resolve@^2.0.0-next.3, resolve@^2.0.0-next.4: version "2.0.0-next.4" resolved "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.4.tgz" integrity sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ== @@ -5457,9 +6093,17 @@ resolve@^2.0.0-next.3: path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" +restore-cursor@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" + integrity sha512-6IzJLuGi4+R14vwagDHX+JrXmPVtPpn4mffDJ1UdR7/Edm87fl6yi8mMBIVvFtJaNTUvjughmW4hwLhRG7gC1Q== + dependencies: + onetime "^2.0.0" + signal-exit "^3.0.2" + restore-cursor@^3.1.0: version "3.1.0" - resolved "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA== dependencies: onetime "^5.1.0" @@ -5472,9 +6116,16 @@ reusify@^1.0.4: rfdc@^1.3.0: version "1.3.0" - resolved "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz" + resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.3.0.tgz#d0b7c441ab2720d05dc4cf26e01c89631d9da08b" integrity sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA== +rimraf@^2.6.3: + version "2.7.1" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" + integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== + dependencies: + glob "^7.1.3" + rimraf@^3.0.2: version "3.0.2" resolved "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz" @@ -5491,7 +6142,7 @@ rollup@^2.74.1: run-async@^2.4.0: version "2.4.1" - resolved "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz" + resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ== run-parallel@^1.1.9: @@ -5501,23 +6152,25 @@ run-parallel@^1.1.9: dependencies: queue-microtask "^1.2.2" +rxjs@^6.3.3: + version "6.6.7" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9" + integrity sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ== + dependencies: + tslib "^1.9.0" + rxjs@^7.5.5: - version "7.5.7" - resolved "https://registry.npmjs.org/rxjs/-/rxjs-7.5.7.tgz" - integrity sha512-z9MzKh/UcOqB3i20H6rtrlaE/CgjLOvheWK/9ILrbhROGTweAi1BaFsTT9FbwZi5Trr1qNRs+MXkhmR06awzQA== + version "7.8.0" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.8.0.tgz#90a938862a82888ff4c7359811a595e14e1e09a4" + integrity sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg== dependencies: tslib "^2.1.0" -safe-buffer@^5.0.1, safe-buffer@~5.2.0: +safe-buffer@~5.2.0: version "5.2.1" - resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== -safe-buffer@~5.1.1: - version "5.1.2" - resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz" - integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== - safe-regex-test@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz" @@ -5541,10 +6194,10 @@ scheduler@^0.23.0: scuid@^1.1.0: version "1.1.0" - resolved "https://registry.npmjs.org/scuid/-/scuid-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/scuid/-/scuid-1.1.0.tgz#d3f9f920956e737a60f72d0e4ad280bf324d5dab" integrity sha512-MuCAyrGZcTLfQoH2XoBlQ8C6bzwN88XT/0slOGz0pn8+gIP85BOAfYa44ZXQUTOwRwPU0QvgU+V+OSajl/59Xg== -"semver@2 || 3 || 4 || 5", semver@^5.4.1, semver@^5.6.0: +"semver@2 || 3 || 4 || 5", semver@^5.4.1: version "5.7.1" resolved "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== @@ -5554,7 +6207,7 @@ semver@^6.3.0: resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== -semver@^7.2.1, semver@^7.3.5, semver@^7.3.7: +semver@^7.3.7: version "7.3.8" resolved "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz" integrity sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A== @@ -5563,7 +6216,7 @@ semver@^7.2.1, semver@^7.3.5, semver@^7.3.7: sentence-case@^3.0.4: version "3.0.4" - resolved "https://registry.npmjs.org/sentence-case/-/sentence-case-3.0.4.tgz" + resolved "https://registry.yarnpkg.com/sentence-case/-/sentence-case-3.0.4.tgz#3645a7b8c117c787fde8702056225bb62a45131f" integrity sha512-8LS0JInaQMCRoQ7YUytAo/xUu5W2XnQxV2HI/6uM6U7CITS1RqPElr30V6uIqyMKM9lJGRVFy5/4CuzcixNYSg== dependencies: no-case "^3.0.4" @@ -5577,7 +6230,7 @@ set-blocking@^2.0.0: setimmediate@^1.0.5: version "1.0.5" - resolved "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz" + resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" integrity sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA== shallowequal@^1.1.0: @@ -5609,6 +6262,11 @@ shebang-regex@^3.0.0: resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== +shell-quote@^1.7.3: + version "1.8.1" + resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.8.1.tgz#6dbf4db75515ad5bac63b4f1894c3a154c766680" + integrity sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA== + side-channel@^1.0.4: version "1.0.4" resolved "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz" @@ -5625,7 +6283,7 @@ signal-exit@^3.0.2, signal-exit@^3.0.3: signedsource@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/signedsource/-/signedsource-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/signedsource/-/signedsource-1.0.0.tgz#1ddace4981798f93bd833973803d80d52e93ad6a" integrity sha512-6+eerH9fEnNmi/hyM1DXcRK3pWdoMQtlkQ+ns0ntzunjKqp5i3sKCc80ym8Fib3iaYhdJUOPdhlJWj1tvge2Ww== sirv@^1.0.7: @@ -5656,9 +6314,19 @@ slash@^3.0.0: resolved "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz" integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== +slash@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-4.0.0.tgz#2422372176c4c6c5addb5e2ada885af984b396a7" + integrity sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew== + +slice-ansi@0.0.4: + version "0.0.4" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35" + integrity sha512-up04hB2hR92PgjpyU3y/eg91yIBILyjVY26NvvciY3EVVPjybkMszMpXQ9QAkcS3I5rtJBDLoTxxg+qvW8c7rw== + slice-ansi@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-3.0.0.tgz#31ddc10930a1b7e0b67b08c96c2f49b77a789787" integrity sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ== dependencies: ansi-styles "^4.0.0" @@ -5688,7 +6356,7 @@ smartwrap@^2.0.2: snake-case@^3.0.4: version "3.0.4" - resolved "https://registry.npmjs.org/snake-case/-/snake-case-3.0.4.tgz" + resolved "https://registry.yarnpkg.com/snake-case/-/snake-case-3.0.4.tgz#4f2bbd568e9935abdfd593f34c691dadb49c452c" integrity sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg== dependencies: dot-case "^3.0.4" @@ -5742,7 +6410,7 @@ spdx-license-ids@^3.0.0: sponge-case@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/sponge-case/-/sponge-case-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/sponge-case/-/sponge-case-1.0.1.tgz#260833b86453883d974f84854cdb63aecc5aef4c" integrity sha512-dblb9Et4DAtiZ5YSUZHLl4XhH4uK80GhAZrVXdN4O2P4gQ40Wa5UIOPUHlA/nFd2PLblBZWUioLMMAVrgpoYcA== dependencies: tslib "^2.0.3" @@ -5766,9 +6434,26 @@ streamsearch@^1.1.0: string-env-interpolation@1.0.1, string-env-interpolation@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/string-env-interpolation/-/string-env-interpolation-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/string-env-interpolation/-/string-env-interpolation-1.0.1.tgz#ad4397ae4ac53fe6c91d1402ad6f6a52862c7152" integrity sha512-78lwMoCcn0nNu8LszbP1UA7g55OeE4v7rCeWnM5B453rnNr4aq+5it3FEYtZrSEiMvHZOZ9Jlqb0OD0M2VInqg== +string-width@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" + integrity sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw== + dependencies: + code-point-at "^1.0.0" + is-fullwidth-code-point "^1.0.0" + strip-ansi "^3.0.0" + +string-width@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" + integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== + dependencies: + is-fullwidth-code-point "^2.0.0" + strip-ansi "^4.0.0" + string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz" @@ -5792,6 +6477,29 @@ string.prototype.matchall@^4.0.7: regexp.prototype.flags "^1.4.1" side-channel "^1.0.4" +string.prototype.matchall@^4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz#3bf85722021816dcd1bf38bb714915887ca79fd3" + integrity sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.4" + es-abstract "^1.20.4" + get-intrinsic "^1.1.3" + has-symbols "^1.0.3" + internal-slot "^1.0.3" + regexp.prototype.flags "^1.4.3" + side-channel "^1.0.4" + +string.prototype.trim@^1.2.7: + version "1.2.7" + resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.7.tgz#a68352740859f6893f14ce3ef1bb3037f7a90533" + integrity sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.4" + es-abstract "^1.20.4" + string.prototype.trimend@^1.0.5: version "1.0.5" resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz" @@ -5801,6 +6509,15 @@ string.prototype.trimend@^1.0.5: define-properties "^1.1.4" es-abstract "^1.19.5" +string.prototype.trimend@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz#c4a27fa026d979d79c04f17397f250a462944533" + integrity sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.4" + es-abstract "^1.20.4" + string.prototype.trimstart@^1.0.5: version "1.0.5" resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz" @@ -5810,13 +6527,36 @@ string.prototype.trimstart@^1.0.5: define-properties "^1.1.4" es-abstract "^1.19.5" +string.prototype.trimstart@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz#e90ab66aa8e4007d92ef591bbf3cd422c56bdcf4" + integrity sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.4" + es-abstract "^1.20.4" + string_decoder@^1.1.1: version "1.3.0" - resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== dependencies: safe-buffer "~5.2.0" +strip-ansi@^3.0.0, strip-ansi@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" + integrity sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg== + dependencies: + ansi-regex "^2.0.0" + +strip-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" + integrity sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow== + dependencies: + ansi-regex "^3.0.0" + strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz" @@ -5886,6 +6626,11 @@ sucrase@^3.20.3: pirates "^4.0.1" ts-interface-checker "^0.1.9" +supports-color@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" + integrity sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g== + supports-color@^5.3.0, supports-color@^5.5.0: version "5.5.0" resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" @@ -5907,21 +6652,28 @@ supports-preserve-symlinks-flag@^1.0.0: swap-case@^2.0.2: version "2.0.2" - resolved "https://registry.npmjs.org/swap-case/-/swap-case-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/swap-case/-/swap-case-2.0.2.tgz#671aedb3c9c137e2985ef51c51f9e98445bf70d9" integrity sha512-kc6S2YS/2yXbtkSMunBtKdah4VFETZ8Oh6ONSmSd9bRxhqTrtARUCBUiWXH3xVPpvR7tz2CSnkuXVE42EcGnMw== dependencies: tslib "^2.0.3" -table@^6.0.9: - version "6.8.0" - resolved "https://registry.npmjs.org/table/-/table-6.8.0.tgz" - integrity sha512-s/fitrbVeEyHKFa7mFdkuQMWlH1Wgw/yEXMt5xACT4ZpzWFluehAxRtUUQKPuWhaLAWhFcVx6w3oC8VKaUfPGA== +symbol-observable@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.2.0.tgz#c22688aed4eab3cdc2dfeacbb561660560a00804" + integrity sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ== + +synckit@^0.8.5: + version "0.8.5" + resolved "https://registry.yarnpkg.com/synckit/-/synckit-0.8.5.tgz#b7f4358f9bb559437f9f167eb6bc46b3c9818fa3" + integrity sha512-L1dapNV6vu2s/4Sputv8xGsCdAVlb5nRDMFU/E27D44l5U6cw1g0dGd45uLc+OXjNMmF4ntiMdCimzcjFKQI8Q== dependencies: - ajv "^8.0.1" - lodash.truncate "^4.4.2" - slice-ansi "^4.0.0" - string-width "^4.2.3" - strip-ansi "^6.0.1" + "@pkgr/utils" "^2.3.1" + tslib "^2.5.0" + +tapable@^2.2.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" + integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ== term-size@^2.1.0: version "2.2.1" @@ -5949,12 +6701,20 @@ thenify-all@^1.0.0: through@^2.3.6, through@^2.3.8: version "2.3.8" - resolved "https://registry.npmjs.org/through/-/through-2.3.8.tgz" + resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg== +tiny-glob@^0.2.9: + version "0.2.9" + resolved "https://registry.yarnpkg.com/tiny-glob/-/tiny-glob-0.2.9.tgz#2212d441ac17928033b110f8b3640683129d31e2" + integrity sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg== + dependencies: + globalyzer "0.1.0" + globrex "^0.1.2" + title-case@^3.0.3: version "3.0.3" - resolved "https://registry.npmjs.org/title-case/-/title-case-3.0.3.tgz" + resolved "https://registry.yarnpkg.com/title-case/-/title-case-3.0.3.tgz#bc689b46f02e411f1d1e1d081f7c3deca0489982" integrity sha512-e1zGYRvbffpcHIrnuqT0Dh+gEJtDaxDSoG4JAIpq4oDFyooziLBIiYQv0GBT4FUAnUop5uZ1hiIAj7oAF6sOCA== dependencies: tslib "^2.0.3" @@ -5992,7 +6752,7 @@ tr46@^1.0.1: tr46@~0.0.3: version "0.0.3" - resolved "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== tree-kill@^1.2.2: @@ -6012,12 +6772,12 @@ ts-interface-checker@^0.1.9: ts-log@^2.2.3: version "2.2.5" - resolved "https://registry.npmjs.org/ts-log/-/ts-log-2.2.5.tgz" + resolved "https://registry.yarnpkg.com/ts-log/-/ts-log-2.2.5.tgz#aef3252f1143d11047e2cb6f7cfaac7408d96623" integrity sha512-PGcnJoTBnVGy6yYNFxWVNkdcAuAMstvutN9MgDJIV6L0oG8fB+ZNNy1T+wJzah8RPGor1mZuPQkVfXNDpy9eHA== -ts-node@^10.8.1: +ts-node@^10.9.1: version "10.9.1" - resolved "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz" + resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.9.1.tgz#e73de9102958af9e1f0b168a6ff320e25adcff4b" integrity sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw== dependencies: "@cspotcode/source-map-support" "^0.8.0" @@ -6034,7 +6794,7 @@ ts-node@^10.8.1: v8-compile-cache-lib "^3.0.1" yn "3.1.1" -tsconfig-paths@^3.12.0, tsconfig-paths@^3.14.1: +tsconfig-paths@^3.14.1: version "3.14.1" resolved "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz" integrity sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ== @@ -6044,16 +6804,26 @@ tsconfig-paths@^3.12.0, tsconfig-paths@^3.14.1: minimist "^1.2.6" strip-bom "^3.0.0" -tslib@^1.8.1: +tslib@^1.8.1, tslib@^1.9.0: version "1.14.1" resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@^2.0.0, tslib@^2.0.3, tslib@^2.1.0, tslib@^2.3.1, tslib@^2.4.0, tslib@~2.4.0: +tslib@^2.0.0, tslib@^2.1.0, tslib@^2.3.1, tslib@^2.4.0: version "2.4.0" resolved "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz" integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ== +tslib@^2.0.3, tslib@^2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.5.0.tgz#42bfed86f5787aeb41d031866c8f402429e0fddf" + integrity sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg== + +tslib@~2.4.0: + version "2.4.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.4.1.tgz#0d0bfbaac2880b91e22df0768e55be9753a5b17e" + integrity sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA== + tsup@^6.2.3: version "6.2.3" resolved "https://registry.npmjs.org/tsup/-/tsup-6.2.3.tgz" @@ -6155,7 +6925,7 @@ type-fest@^0.20.2: type-fest@^0.21.3: version "0.21.3" - resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== type-fest@^0.6.0: @@ -6173,7 +6943,16 @@ type-fest@^3.0.0: resolved "https://registry.npmjs.org/type-fest/-/type-fest-3.0.0.tgz" integrity sha512-MINvUN5ug9u+0hJDzSZNSnuKXI8M4F5Yvb6SQZ2CYqe7SgKXKOosEcU5R7tRgo85I6eAVBbkVF7TCvB4AUK2xQ== -typescript@^4.7.4, typescript@^4.8.4: +typed-array-length@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.4.tgz#89d83785e5c4098bec72e08b319651f0eac9c1bb" + integrity sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng== + dependencies: + call-bind "^1.0.2" + for-each "^0.3.3" + is-typed-array "^1.1.9" + +typescript@^4.8.4: version "4.8.4" resolved "https://registry.npmjs.org/typescript/-/typescript-4.8.4.tgz" integrity sha512-QCh+85mCy+h0IGff8r5XWzOVSbBO+KfeYrMQh7NJ58QujwcE22u+NUSmUxqF+un70P9GXKxa2HCNiTTMJknyjQ== @@ -6184,9 +6963,9 @@ typescript@^4.9.5: integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g== ua-parser-js@^0.7.30: - version "0.7.31" - resolved "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.31.tgz" - integrity sha512-qLK/Xe9E2uzmYI3qLeOmI0tEOt+TBBQyUIAh4aAgU05FVYzeZrKUdkAZfBNVGRaHVgV0TDkdEngJSw/SyQchkQ== + version "0.7.35" + resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.35.tgz#8bda4827be4f0b1dda91699a29499575a1f1d307" + integrity sha512-veRf7dawaj9xaWEu9HoTVn5Pggtc/qj+kqTOFvNiN1l0YdxwC1kvel57UCjThjGa3BHBihE8/UJAHI+uQHmd/g== unbox-primitive@^1.0.2: version "1.0.2" @@ -6200,19 +6979,19 @@ unbox-primitive@^1.0.2: unc-path-regex@^0.1.2: version "0.1.2" - resolved "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz" + resolved "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa" integrity sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg== -undici@^5.10.0, undici@^5.8.0: - version "5.11.0" - resolved "https://registry.npmjs.org/undici/-/undici-5.11.0.tgz" - integrity sha512-oWjWJHzFet0Ow4YZBkyiJwiK5vWqEYoH7BINzJAJOLedZ++JpAlCbUktW2GQ2DS2FpKmxD/JMtWUUWl1BtghGw== +undici@^5.18.0: + version "5.21.2" + resolved "https://registry.yarnpkg.com/undici/-/undici-5.21.2.tgz#329f628aaea3f1539a28b9325dccc72097d29acd" + integrity sha512-f6pTQ9RF4DQtwoWSaC42P/NKlUjvezVvd9r155ohqkwFNRyBKM3f3pcty3ouusefNRyM25XhIQEbeQ46sZDJfQ== dependencies: busboy "^1.6.0" unfetch@^4.2.0: version "4.2.0" - resolved "https://registry.npmjs.org/unfetch/-/unfetch-4.2.0.tgz" + resolved "https://registry.yarnpkg.com/unfetch/-/unfetch-4.2.0.tgz#7e21b0ef7d363d8d9af0fb929a5555f6ef97a3be" integrity sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA== universalify@^0.1.0: @@ -6220,6 +6999,11 @@ universalify@^0.1.0: resolved "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz" integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== +universalify@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" + integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ== + unixify@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/unixify/-/unixify-1.0.0.tgz" @@ -6227,9 +7011,9 @@ unixify@^1.0.0: dependencies: normalize-path "^2.1.1" -update-browserslist-db@^1.0.9: +update-browserslist-db@^1.0.10: version "1.0.10" - resolved "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz#0f54b876545726f17d00cd9a2561e6dade943ff3" integrity sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ== dependencies: escalade "^3.1.1" @@ -6237,14 +7021,14 @@ update-browserslist-db@^1.0.9: upper-case-first@^2.0.2: version "2.0.2" - resolved "https://registry.npmjs.org/upper-case-first/-/upper-case-first-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/upper-case-first/-/upper-case-first-2.0.2.tgz#992c3273f882abd19d1e02894cc147117f844324" integrity sha512-514ppYHBaKwfJRK/pNC6c/OxfGa0obSnAl106u97Ed0I625Nin96KAjttZF6ZL3e1XLtphxnqrOi9iWgm+u+bg== dependencies: tslib "^2.0.3" upper-case@^2.0.2: version "2.0.2" - resolved "https://registry.npmjs.org/upper-case/-/upper-case-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-2.0.2.tgz#d89810823faab1df1549b7d97a76f8662bae6f7a" integrity sha512-KgdgDGJt2TpuwBUIjgG6lzw2GWFRCW9Qkfkiv0DxqHHLYJHmtmdUIKcZd8rHgFSjopVTlw6ggzCm1b8MFQwikg== dependencies: tslib "^2.0.3" @@ -6256,6 +7040,13 @@ uri-js@^4.2.2: dependencies: punycode "^2.1.0" +urlpattern-polyfill@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/urlpattern-polyfill/-/urlpattern-polyfill-6.0.2.tgz#a193fe773459865a2a5c93b246bb794b13d07256" + integrity sha512-5vZjFlH9ofROmuWmXM9yj2wljYKgWstGwe8YTyiqM7hVum/g9LyCizPZtb3UqsuppVwety9QJmfc42VggLpTgg== + dependencies: + braces "^3.0.2" + use-callback-ref@^1.3.0: version "1.3.0" resolved "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.0.tgz" @@ -6283,19 +7074,14 @@ use-sync-external-store@1.2.0, use-sync-external-store@^1.2.0: util-deprecate@^1.0.1: version "1.0.2" - resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== v8-compile-cache-lib@^3.0.1: version "3.0.1" - resolved "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz" + resolved "https://registry.yarnpkg.com/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf" integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg== -v8-compile-cache@^2.0.3: - version "2.3.0" - resolved "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz" - integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== - validate-npm-package-license@^3.0.1: version "3.0.4" resolved "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz" @@ -6304,10 +7090,10 @@ validate-npm-package-license@^3.0.1: spdx-correct "^3.0.0" spdx-expression-parse "^3.0.0" -value-or-promise@1.0.11, value-or-promise@^1.0.11: - version "1.0.11" - resolved "https://registry.npmjs.org/value-or-promise/-/value-or-promise-1.0.11.tgz" - integrity sha512-41BrgH+dIbCFXClcSapVs5M6GkENd3gQOJpEfPDNa71LsUGMXDL0jMWpI/Rh7WhX+Aalfz2TTS3Zt5pUsbnhLg== +value-or-promise@1.0.12, value-or-promise@^1.0.11, value-or-promise@^1.0.12: + version "1.0.12" + resolved "https://registry.yarnpkg.com/value-or-promise/-/value-or-promise-1.0.12.tgz#0e5abfeec70148c78460a849f6b003ea7986f15c" + integrity sha512-Z6Uz+TYwEqE7ZN50gwn+1LCVo9ZVrpxRPOhOLnncYkY1ZzOYtrX8Fwf/rFktZ8R5mJms6EZf5TqNOMeZmnPq9Q== wcwidth@^1.0.1: version "1.0.1" @@ -6316,22 +7102,17 @@ wcwidth@^1.0.1: dependencies: defaults "^1.0.3" -web-streams-polyfill@4.0.0-beta.3: - version "4.0.0-beta.3" - resolved "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-4.0.0-beta.3.tgz" - integrity sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug== - -web-streams-polyfill@^3.2.0: +web-streams-polyfill@^3.2.1: version "3.2.1" - resolved "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz" + resolved "https://registry.yarnpkg.com/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz#71c2718c52b45fd49dbeee88634b3a60ceab42a6" integrity sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q== -webcrypto-core@^1.7.4: - version "1.7.5" - resolved "https://registry.npmjs.org/webcrypto-core/-/webcrypto-core-1.7.5.tgz" - integrity sha512-gaExY2/3EHQlRNNNVSrbG2Cg94Rutl7fAaKILS1w8ZDhGxdFOaw6EbCfHIxPy9vt/xwp5o0VQAx9aySPF6hU1A== +webcrypto-core@^1.7.7: + version "1.7.7" + resolved "https://registry.yarnpkg.com/webcrypto-core/-/webcrypto-core-1.7.7.tgz#06f24b3498463e570fed64d7cab149e5437b162c" + integrity sha512-7FjigXNsBfopEj+5DV2nhNpfic2vumtjjgPmeDKk45z+MJwXKKfhPB7118Pfzrmh4jqOMST6Ch37iPAHoImg5g== dependencies: - "@peculiar/asn1-schema" "^2.1.6" + "@peculiar/asn1-schema" "^2.3.6" "@peculiar/json-schema" "^1.1.12" asn1js "^3.0.1" pvtsutils "^1.3.2" @@ -6339,7 +7120,7 @@ webcrypto-core@^1.7.4: webidl-conversions@^3.0.0: version "3.0.1" - resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== webidl-conversions@^4.0.2: @@ -6362,14 +7143,9 @@ webpack-bundle-analyzer@4.7.0: sirv "^1.0.7" ws "^7.3.1" -whatwg-fetch@^3.4.1: - version "3.6.2" - resolved "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz" - integrity sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA== - whatwg-url@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw== dependencies: tr46 "~0.0.3" @@ -6408,6 +7184,18 @@ which-pm@2.0.0: load-yaml-file "^0.2.0" path-exists "^4.0.0" +which-typed-array@^1.1.9: + version "1.1.9" + resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.9.tgz#307cf898025848cf995e795e8423c7f337efbde6" + integrity sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA== + dependencies: + available-typed-arrays "^1.0.5" + call-bind "^1.0.2" + for-each "^0.3.3" + gopd "^1.0.1" + has-tostringtag "^1.0.0" + is-typed-array "^1.1.10" + which@^1.2.9: version "1.3.1" resolved "https://registry.npmjs.org/which/-/which-1.3.1.tgz" @@ -6427,6 +7215,14 @@ word-wrap@^1.2.3: resolved "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz" integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== +wrap-ansi@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-3.0.1.tgz#288a04d87eda5c286e060dfe8f135ce8d007f8ba" + integrity sha512-iXR3tDXpbnTpzjKSylUJRkLuOrEC7hwEB221cgn6wtF8wpmz28puFXAEfPT5zrjM3wahygB//VuWEr1vTkDcNQ== + dependencies: + string-width "^2.1.1" + strip-ansi "^4.0.0" + wrap-ansi@^6.2.0: version "6.2.0" resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz" @@ -6450,16 +7246,16 @@ wrappy@1: resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== +ws@8.13.0, ws@^8.12.0: + version "8.13.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.13.0.tgz#9a9fb92f93cf41512a0735c8f4dd09b8a1211cd0" + integrity sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA== + ws@^7.3.1: version "7.5.9" resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591" integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q== -ws@^8.3.0: - version "8.9.0" - resolved "https://registry.npmjs.org/ws/-/ws-8.9.0.tgz" - integrity sha512-Ja7nszREasGaYUYCI2k4lCKIRTt+y7XuqVoHR44YpI49TtryyqbqvDMn5eqfW7e6HzTukDRIsXqzVHScqRcafg== - y18n@^4.0.0: version "4.0.3" resolved "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz" @@ -6475,6 +7271,11 @@ yallist@^2.1.2: resolved "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz" integrity sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A== +yallist@^3.0.2: + version "3.1.1" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" + integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== + yallist@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz" @@ -6482,7 +7283,7 @@ yallist@^4.0.0: yaml-ast-parser@^0.0.43: version "0.0.43" - resolved "https://registry.npmjs.org/yaml-ast-parser/-/yaml-ast-parser-0.0.43.tgz" + resolved "https://registry.yarnpkg.com/yaml-ast-parser/-/yaml-ast-parser-0.0.43.tgz#e8a23e6fb4c38076ab92995c5dca33f3d3d7c9bb" integrity sha512-2PTINUwsRqSd+s8XxKaJWQlUuEMHJQyEuh2edBbW8KNJz0SJPwUSD2zRWqezFEdN7IzAgeuYHFUCF7o8zRdZ0A== yaml@^1.10.0, yaml@^1.10.2: @@ -6498,7 +7299,7 @@ yargs-parser@^18.1.2, yargs-parser@^18.1.3: camelcase "^5.0.0" decamelize "^1.2.0" -yargs-parser@^21.0.0: +yargs-parser@^21.0.0, yargs-parser@^21.1.1: version "21.1.1" resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz" integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== @@ -6520,7 +7321,20 @@ yargs@^15.1.0, yargs@^15.3.1: y18n "^4.0.0" yargs-parser "^18.1.2" -yargs@^17.0.0, yargs@^17.1.1: +yargs@^17.0.0: + version "17.7.1" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.1.tgz#34a77645201d1a8fc5213ace787c220eabbd0967" + integrity sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw== + dependencies: + cliui "^8.0.1" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.3" + y18n "^5.0.5" + yargs-parser "^21.1.1" + +yargs@^17.1.1: version "17.6.0" resolved "https://registry.npmjs.org/yargs/-/yargs-17.6.0.tgz" integrity sha512-8H/wTDqlSwoSnScvV2N/JHfLWOKuh5MVla9hqLjK3nsfyy6Y4kDSYSvkU5YCUEPOSnRXfIyx3Sq+B/IWudTo4g== @@ -6535,7 +7349,7 @@ yargs@^17.0.0, yargs@^17.1.1: yn@3.1.1: version "3.1.1" - resolved "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz" + resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50" integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q== yocto-queue@^0.1.0: