diff --git a/.oxfmtrc.json b/.oxfmtrc.json new file mode 100644 index 0000000..3fa1e9f --- /dev/null +++ b/.oxfmtrc.json @@ -0,0 +1,19 @@ +{ + "arrowParens": "avoid", + "singleQuote": false, + "trailingComma": "all", + "bracketSpacing": false, + "semi": true, + "tabWidth": 2, + "printWidth": 80, + "jsxSingleQuote": false, + "bracketSameLine": false, + "sortPackageJson": false, + "ignorePatterns": [ + "**/dist/**", + "**/node_modules/**", + "**/.shopify/**", + "**/generated/**", + "**/package.json" + ] +} diff --git a/.oxlintrc.json b/.oxlintrc.json new file mode 100644 index 0000000..dec4241 --- /dev/null +++ b/.oxlintrc.json @@ -0,0 +1,27 @@ +{ + "$schema": "./node_modules/oxlint/configuration_schema.json", + "categories": { + "correctness": "off", + "suspicious": "off", + "pedantic": "off", + "perf": "off", + "style": "off", + "restriction": "off" + }, + "ignorePatterns": [ + "**/node_modules/**", + "**/dist/**", + "**/.shopify/**", + "**/generated/**", + "examples/mock-http-server/**" + ], + "overrides": [ + { + "files": ["**/*.{js,jsx}"], + "rules": { + "no-console": ["error", {"allow": ["error"]}], + "no-debugger": "error" + } + } + ] +} diff --git a/docs/reference/components/DiscountClasses.jsx b/docs/reference/components/DiscountClasses.jsx index 9e1ff50..bb467d6 100644 --- a/docs/reference/components/DiscountClasses.jsx +++ b/docs/reference/components/DiscountClasses.jsx @@ -1,5 +1,5 @@ -import { Card, Checkbox, Text, BlockStack, Box } from "@shopify/polaris"; -import React, { useState, useCallback } from "react"; +import {Card, Checkbox, Text, BlockStack, Box} from "@shopify/polaris"; +import React, {useState, useCallback} from "react"; const DiscountClass = { Product: "PRODUCT", @@ -25,7 +25,7 @@ const DISCOUNT_CLASS_LABELS = { * @returns A Polaris Card containing discount class selection checkboxes */ function DiscountClasses(props) { - const { discountClasses = [DiscountClass.Product], onChange } = props; + const {discountClasses = [DiscountClass.Product], onChange} = props; const [selectedClasses, setSelectedClasses] = useState( discountClasses.length > 0 ? discountClasses : [DiscountClass.Product], @@ -35,7 +35,7 @@ function DiscountClasses(props) { (checked, discountClass) => { const updatedClasses = checked ? [...selectedClasses, discountClass] - : selectedClasses.filter((cls) => cls !== discountClass); + : selectedClasses.filter(cls => cls !== discountClass); if (updatedClasses.length === 0) { return; @@ -62,7 +62,7 @@ function DiscountClasses(props) { - {Object.values(DiscountClass).map((discountClass) => { + {Object.values(DiscountClass).map(discountClass => { const isChecked = selectedClasses.includes(discountClass); const isDisabled = isChecked && selectedClasses.length === 1; return ( @@ -71,7 +71,7 @@ function DiscountClasses(props) { label={DISCOUNT_CLASS_LABELS[discountClass]} checked={isChecked} disabled={isDisabled} - onChange={(checked) => handleChange(checked, discountClass)} + onChange={checked => handleChange(checked, discountClass)} /> ); })} diff --git a/docs/reference/shopify/javascript/create-intent-schema.json b/docs/reference/shopify/javascript/create-intent-schema.json new file mode 100644 index 0000000..5a9e012 --- /dev/null +++ b/docs/reference/shopify/javascript/create-intent-schema.json @@ -0,0 +1,21 @@ +{ + "$schema": "https://extensions.shopifycdn.com/shopifycloud/schemas/v1/shopify-intent.json", + "inputSchema": { + "type": "object", + "$ref": "https://extensions.shopifycdn.com/shopifycloud/schemas/v1/shopify/discount.json", + "additionalProperties": true, + "properties": { + "functionId": { + "matchValue": "YOUR_FUNCTION_ID" + } + } + }, + "outputSchema": { + "type": "object", + "properties": { + "id": { + "$ref": "https://extensions.shopifycdn.com/shopifycloud/schemas/v1/shopify/discount/gid.json" + } + } + } +} diff --git a/docs/reference/shopify/javascript/edit-intent-schema.json b/docs/reference/shopify/javascript/edit-intent-schema.json new file mode 100644 index 0000000..6714d2f --- /dev/null +++ b/docs/reference/shopify/javascript/edit-intent-schema.json @@ -0,0 +1,26 @@ +{ + "$schema": "https://extensions.shopifycdn.com/shopifycloud/schemas/v1/shopify-intent.json", + "value": { + "$ref": "https://extensions.shopifycdn.com/shopifycloud/schemas/v1/shopify/discount/gid.json", + "mapTo": "param", + "fieldName": "id" + }, + "inputSchema": { + "type": "object", + "$ref": "https://extensions.shopifycdn.com/shopifycloud/schemas/v1/shopify/discount.json", + "additionalProperties": true, + "properties": { + "functionId": { + "matchValue": "YOUR_FUNCTION_ID" + } + } + }, + "outputSchema": { + "type": "object", + "properties": { + "id": { + "$ref": "https://extensions.shopifycdn.com/shopifycloud/schemas/v1/shopify/discount/gid.json" + } + } + } +} diff --git a/docs/reference/shopify/javascript/instructions.md b/docs/reference/shopify/javascript/instructions.md new file mode 100644 index 0000000..5a42c43 --- /dev/null +++ b/docs/reference/shopify/javascript/instructions.md @@ -0,0 +1,5 @@ +Use this app when the merchant wants to create or edit a metafield-configured discount powered by this app's Shopify Function. + +When invoking `create:shopify/Discount`, pass `functionId: "YOUR_FUNCTION_ID"` so Shopify resolves directly to this app's create flow. + +When invoking `edit:shopify/Discount`, pass the discount's GID (default to the canonical `gid://shopify/DiscountNode/{id}`) and `functionId: "YOUR_FUNCTION_ID"` so Shopify resolves the edit directly to this app. diff --git a/docs/reference/shopify/javascript/shopify.extension.toml b/docs/reference/shopify/javascript/shopify.extension.toml index e94d045..5e39e61 100644 --- a/docs/reference/shopify/javascript/shopify.extension.toml +++ b/docs/reference/shopify/javascript/shopify.extension.toml @@ -38,3 +38,42 @@ handle = "ui-multiclass-metafield-js" create = "/app/discount/:functionId/new" details = "/app/discount/:functionId/:id" # [END discount-function.ui-paths] + +# [START discount-function.app-intent-link] +# Register app intent links so Sidekick can create and edit discounts backed by +# this app's Function. Each admin.app.intent.link target maps a shopify/Discount +# action (create or edit) to a page in your app. +[[extensions]] +name = "Create discount" +description = "Create a metafield-configured discount powered by this app's Shopify Function." +handle = "discount-app-intent-link-create" +type = "admin_link" + + [[extensions.targeting]] + target = "admin.app.intent.link" + # Hardcode your deployed Function's ID (see "Set your Function ID" below). + url = "/app/discount/YOUR_FUNCTION_ID/new" + instructions = "./instructions.md" + + [[extensions.targeting.intents]] + type = "shopify/Discount" + action = "create" + schema = "./create-intent-schema.json" + +[[extensions]] +name = "Edit discount" +description = "Edit a metafield-configured discount powered by this app's Shopify Function." +handle = "discount-app-intent-link-edit" +type = "admin_link" + + [[extensions.targeting]] + target = "admin.app.intent.link" + # {id} receives the discount ID; the Function ID stays hardcoded. + url = "/app/discount/YOUR_FUNCTION_ID/{id}" + instructions = "./instructions.md" + + [[extensions.targeting.intents]] + type = "shopify/Discount" + action = "edit" + schema = "./edit-intent-schema.json" +# [END discount-function.app-intent-link] diff --git a/docs/reference/shopify/pnpm-workspace.yaml b/docs/reference/shopify/pnpm-workspace.yaml index e8a5c94..2115b27 100644 --- a/docs/reference/shopify/pnpm-workspace.yaml +++ b/docs/reference/shopify/pnpm-workspace.yaml @@ -1,2 +1,2 @@ packages: - - "extensions/*" + - 'extensions/*' diff --git a/docs/reference/shopify/rust/create-intent-schema.json b/docs/reference/shopify/rust/create-intent-schema.json new file mode 100644 index 0000000..5a9e012 --- /dev/null +++ b/docs/reference/shopify/rust/create-intent-schema.json @@ -0,0 +1,21 @@ +{ + "$schema": "https://extensions.shopifycdn.com/shopifycloud/schemas/v1/shopify-intent.json", + "inputSchema": { + "type": "object", + "$ref": "https://extensions.shopifycdn.com/shopifycloud/schemas/v1/shopify/discount.json", + "additionalProperties": true, + "properties": { + "functionId": { + "matchValue": "YOUR_FUNCTION_ID" + } + } + }, + "outputSchema": { + "type": "object", + "properties": { + "id": { + "$ref": "https://extensions.shopifycdn.com/shopifycloud/schemas/v1/shopify/discount/gid.json" + } + } + } +} diff --git a/docs/reference/shopify/rust/edit-intent-schema.json b/docs/reference/shopify/rust/edit-intent-schema.json new file mode 100644 index 0000000..6714d2f --- /dev/null +++ b/docs/reference/shopify/rust/edit-intent-schema.json @@ -0,0 +1,26 @@ +{ + "$schema": "https://extensions.shopifycdn.com/shopifycloud/schemas/v1/shopify-intent.json", + "value": { + "$ref": "https://extensions.shopifycdn.com/shopifycloud/schemas/v1/shopify/discount/gid.json", + "mapTo": "param", + "fieldName": "id" + }, + "inputSchema": { + "type": "object", + "$ref": "https://extensions.shopifycdn.com/shopifycloud/schemas/v1/shopify/discount.json", + "additionalProperties": true, + "properties": { + "functionId": { + "matchValue": "YOUR_FUNCTION_ID" + } + } + }, + "outputSchema": { + "type": "object", + "properties": { + "id": { + "$ref": "https://extensions.shopifycdn.com/shopifycloud/schemas/v1/shopify/discount/gid.json" + } + } + } +} diff --git a/docs/reference/shopify/rust/instructions.md b/docs/reference/shopify/rust/instructions.md new file mode 100644 index 0000000..5a42c43 --- /dev/null +++ b/docs/reference/shopify/rust/instructions.md @@ -0,0 +1,5 @@ +Use this app when the merchant wants to create or edit a metafield-configured discount powered by this app's Shopify Function. + +When invoking `create:shopify/Discount`, pass `functionId: "YOUR_FUNCTION_ID"` so Shopify resolves directly to this app's create flow. + +When invoking `edit:shopify/Discount`, pass the discount's GID (default to the canonical `gid://shopify/DiscountNode/{id}`) and `functionId: "YOUR_FUNCTION_ID"` so Shopify resolves the edit directly to this app. diff --git a/docs/reference/shopify/rust/shopify.extension.toml b/docs/reference/shopify/rust/shopify.extension.toml index 306442e..babdbc5 100644 --- a/docs/reference/shopify/rust/shopify.extension.toml +++ b/docs/reference/shopify/rust/shopify.extension.toml @@ -33,3 +33,42 @@ key = "function-configuration" create = "/app/discount/:functionId/new" details = "/app/discount/:functionId/:id" # [END discount-function.ui-paths] + +# [START discount-function.app-intent-link] +# Register app intent links so Sidekick can create and edit discounts backed by +# this app's Function. Each admin.app.intent.link target maps a shopify/Discount +# action (create or edit) to a page in your app. +[[extensions]] +name = "Create discount" +description = "Create a metafield-configured discount powered by this app's Shopify Function." +handle = "discount-app-intent-link-create" +type = "admin_link" + + [[extensions.targeting]] + target = "admin.app.intent.link" + # Hardcode your deployed Function's ID (see "Set your Function ID" below). + url = "/app/discount/YOUR_FUNCTION_ID/new" + instructions = "./instructions.md" + + [[extensions.targeting.intents]] + type = "shopify/Discount" + action = "create" + schema = "./create-intent-schema.json" + +[[extensions]] +name = "Edit discount" +description = "Edit a metafield-configured discount powered by this app's Shopify Function." +handle = "discount-app-intent-link-edit" +type = "admin_link" + + [[extensions.targeting]] + target = "admin.app.intent.link" + # {id} receives the discount ID; the Function ID stays hardcoded. + url = "/app/discount/YOUR_FUNCTION_ID/{id}" + instructions = "./instructions.md" + + [[extensions.targeting.intents]] + type = "shopify/Discount" + action = "edit" + schema = "./edit-intent-schema.json" +# [END discount-function.app-intent-link] diff --git a/examples/javascript/default/extensions/discount-function/README.md b/examples/javascript/default/extensions/discount-function/README.md index c7d5fb2..0abb9b5 100644 --- a/examples/javascript/default/extensions/discount-function/README.md +++ b/examples/javascript/default/extensions/discount-function/README.md @@ -1,5 +1,5 @@ --- -name: "How to build a combined Discount Function applying 10% off orders, 20% off the most expensive product, and free shipping" +name: 'How to build a combined Discount Function applying 10% off orders, 20% off the most expensive product, and free shipping' api_name: discount api_version: 2025-04 api_type: functions diff --git a/examples/javascript/default/extensions/discount-function/generated/api.ts b/examples/javascript/default/extensions/discount-function/generated/api.ts index fd74c91..be46395 100644 --- a/examples/javascript/default/extensions/discount-function/generated/api.ts +++ b/examples/javascript/default/extensions/discount-function/generated/api.ts @@ -1,60 +1,47 @@ 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; -}; -export type MakeEmpty< - T extends { [key: string]: unknown }, - K extends keyof T, -> = { [_ in K]?: never }; -export type Incremental = - | T - | { - [P in keyof T]?: P extends " $fragmentName" | "__typename" ? T[P] : never; - }; +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 }; +export type MakeEmpty = { [_ in K]?: never }; +export type Incremental = T | { [P in keyof T]?: P extends ' $fragmentName' | '__typename' ? T[P] : never }; /** All built-in and custom scalars, mapped to their actual values */ export type Scalars = { - ID: { input: string; output: string }; - String: { input: string; output: string }; - Boolean: { input: boolean; output: boolean }; - Int: { input: number; output: number }; - Float: { input: number; output: number }; + ID: { input: string; output: string; } + String: { input: string; output: string; } + Boolean: { input: boolean; output: boolean; } + Int: { input: number; output: number; } + Float: { input: number; output: number; } /** * Represents an [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)-encoded date string. * For example, September 7, 2019 is represented as `"2019-07-16"`. */ - Date: { input: any; output: any }; + Date: { input: any; output: any; } /** * Represents an [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)-encoded date and time string. * For example, 3:50 pm on September 7, 2019 in the time zone of UTC (Coordinated Universal Time) is * represented as `"2019-09-07T15:50:00Z`". */ - DateTime: { input: any; output: any }; + DateTime: { input: any; output: any; } /** * A subset of the [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format that * includes the date and time but not the timezone which is determined from context. * * For example, "2018-01-01T00:00:00". */ - DateTimeWithoutTimezone: { input: any; output: any }; + DateTimeWithoutTimezone: { input: any; output: any; } /** * A signed decimal number, which supports arbitrary precision and is serialized as a string. * * Example values: `"29.99"`, `"29.999"`. */ - Decimal: { input: any; output: any }; + Decimal: { input: any; output: any; } /** * A function-scoped handle to a refer a resource. * The Handle type appears in a JSON response as a String, but it is not intended to be human-readable. * Example value: `"10079785100"` */ - Handle: { input: any; output: any }; + Handle: { input: any; output: any; } /** * A [JSON](https://www.json.org/json-en.html) object. * @@ -70,13 +57,13 @@ export type Scalars = { * } * }` */ - JSON: { input: any; output: any }; + JSON: { input: any; output: any; } /** * A subset of the [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format that * includes the time but not the date or timezone which is determined from context. * For example, "05:43:21". */ - TimeWithoutTimezone: { input: any; output: any }; + TimeWithoutTimezone: { input: any; output: any; } /** * Represents an [RFC 3986](https://datatracker.ietf.org/doc/html/rfc3986) and * [RFC 3987](https://datatracker.ietf.org/doc/html/rfc3987)-compliant URI string. @@ -84,15 +71,15 @@ export type Scalars = { * For example, `"https://example.myshopify.com"` is a valid URL. It includes a scheme (`https`) and a host * (`example.myshopify.com`). */ - URL: { input: any; output: any }; + URL: { input: any; output: any; } /** A void type that can be used to return a null value from a mutation. */ - Void: { input: any; output: any }; + Void: { input: any; output: any; } }; /** A discount code that is associated with a discount candidate. */ export type AssociatedDiscountCode = { /** The discount code. */ - code: Scalars["String"]["input"]; + code: Scalars['String']['input']; }; /** @@ -105,11 +92,11 @@ export type AssociatedDiscountCode = { * notes provided by the customer (`"customer_notes": "Please leave at the front door"`). */ export type Attribute = { - __typename?: "Attribute"; + __typename?: 'Attribute'; /** The key or name of the attribute. For example, `"customer_first_order"`. */ - key: Scalars["String"]["output"]; + key: Scalars['String']['output']; /** The value of the attribute. For example, `"true"`. */ - value?: Maybe; + value?: Maybe; }; /** @@ -119,18 +106,18 @@ export type Attribute = { * are displayed to customers. */ export type BuyerIdentity = { - __typename?: "BuyerIdentity"; + __typename?: 'BuyerIdentity'; /** The [customer](https://help.shopify.com/manual/customers/manage-customers) that's interacting with the cart. */ customer?: Maybe; /** The email address of the customer that's interacting with the cart. */ - email?: Maybe; + email?: Maybe; /** * Whether the customer is authenticated through their * [customer account](https://help.shopify.com/manual/customers/customer-accounts). */ - isAuthenticated: Scalars["Boolean"]["output"]; + isAuthenticated: Scalars['Boolean']['output']; /** The phone number of the customer that's interacting with the cart. */ - phone?: Maybe; + phone?: Maybe; /** * The company of a B2B customer that's interacting with the cart. * Used to manage and track purchases made by businesses rather than individual customers. @@ -143,7 +130,7 @@ export type BuyerIdentity = { * and information about the customer, such as the customer's email address and phone number. */ export type Cart = HasMetafields & { - __typename?: "Cart"; + __typename?: 'Cart'; /** * The custom attributes associated with a cart to store additional information. Cart attributes * allow you to collect specific information from customers on the **Cart** page, such as order notes, @@ -201,14 +188,16 @@ export type Cart = HasMetafields & { retailLocation?: Maybe; }; + /** * The cart where the Function is running. A cart contains the merchandise that a customer intends to purchase * and information about the customer, such as the customer's email address and phone number. */ export type CartAttributeArgs = { - key?: InputMaybe; + key?: InputMaybe; }; + /** * The cart where the Function is running. A cart contains the merchandise that a customer intends to purchase * and information about the customer, such as the customer's email address and phone number. @@ -217,13 +206,14 @@ export type CartLocalizedFieldsArgs = { keys?: Array; }; + /** * The cart where the Function is running. A cart contains the merchandise that a customer intends to purchase * and information about the customer, such as the customer's email address and phone number. */ export type CartMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** @@ -231,7 +221,7 @@ export type CartMetafieldArgs = { * the subtotal before taxes and duties, the tax amount, and duty charges. */ export type CartCost = { - __typename?: "CartCost"; + __typename?: 'CartCost'; /** The amount, before taxes and cart-level discounts, for the customer to pay. */ subtotalAmount: MoneyV2; /** The total amount for the customer to pay at checkout. */ @@ -249,7 +239,7 @@ export type CartCost = { * together, then the items are included in the same delivery group. */ export type CartDeliveryGroup = { - __typename?: "CartDeliveryGroup"; + __typename?: 'CartDeliveryGroup'; /** * Information about items in a cart that a customer intends to purchase. A cart line is an entry in the * customer's cart that represents a single unit of a product variant. For example, if a customer adds two @@ -269,7 +259,7 @@ export type CartDeliveryGroup = { * A [globally-unique ID](https://shopify.dev/docs/api/usage/gids) * for the delivery group. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** Information about the delivery option that the customer has selected. */ selectedDeliveryOption?: Maybe; }; @@ -280,9 +270,9 @@ export enum CartDeliveryGroupType { * The delivery group only contains merchandise that is either a one time purchase or a first delivery of * subscription merchandise. */ - OneTimePurchase = "ONE_TIME_PURCHASE", + OneTimePurchase = 'ONE_TIME_PURCHASE', /** The delivery group only contains subscription merchandise. */ - Subscription = "SUBSCRIPTION", + Subscription = 'SUBSCRIPTION' } /** @@ -291,12 +281,12 @@ export enum CartDeliveryGroupType { * shipping. */ export type CartDeliveryOption = { - __typename?: "CartDeliveryOption"; + __typename?: 'CartDeliveryOption'; /** * A unique identifier that represents the delivery option offered to customers. * For example, `Canada Post Expedited`. */ - code?: Maybe; + code?: Maybe; /** The amount that the customer pays if they select the delivery option. */ cost: MoneyV2; /** @@ -308,19 +298,19 @@ export type CartDeliveryOption = { */ deliveryMethodType: DeliveryMethod; /** A single-line description of the delivery option, with HTML tags removed. */ - description?: Maybe; + description?: Maybe; /** * A unique, human-readable identifier of the delivery option's title. * A handle can contain letters, hyphens (`-`), and numbers, but not spaces. * For example, `standard-shipping`. */ - handle: Scalars["Handle"]["output"]; + handle: Scalars['Handle']['output']; /** * The name of the delivery option that displays to customers. The title is used to construct the delivery * option's handle. For example, if a delivery option is titled "Standard Shipping", then the handle is * `standard-shipping`. */ - title?: Maybe; + title?: Maybe; }; /** @@ -344,7 +334,7 @@ export type CartDeliveryOptionsDiscountsGenerateRunResult = { * different sizes of the same t-shirt to their cart, then each size is represented as a separate cart line. */ export type CartLine = { - __typename?: "CartLine"; + __typename?: 'CartLine'; /** * The custom attributes associated with a cart to store additional information. Cart attributes * allow you to collect specific information from customers on the **Cart** page, such as order notes, @@ -362,7 +352,7 @@ export type CartLine = { */ cost: CartLineCost; /** The ID of the cart line. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** The item that the customer intends to purchase. */ merchandise: Merchandise; /** @@ -371,7 +361,7 @@ export type CartLine = { */ parentRelationship?: Maybe; /** The quantity of the item that the customer intends to purchase. */ - quantity: Scalars["Int"]["output"]; + quantity: Scalars['Int']['output']; /** * The [selling plan](https://shopify.dev/docs/apps/build/purchase-options/subscriptions/selling-plans) * associated with the cart line, including information about how a product variant can be sold and purchased. @@ -379,13 +369,14 @@ export type CartLine = { sellingPlanAllocation?: Maybe; }; + /** * Information about an item in a cart that a customer intends to purchase. A cart line is an entry in the * customer's cart that represents a single unit of a product variant. For example, if a customer adds two * different sizes of the same t-shirt to their cart, then each size is represented as a separate cart line. */ export type CartLineAttributeArgs = { - key?: InputMaybe; + key?: InputMaybe; }; /** @@ -394,7 +385,7 @@ export type CartLineAttributeArgs = { * the same t-shirt to their cart, then each size is represented as a separate cart line. */ export type CartLineCost = { - __typename?: "CartLineCost"; + __typename?: 'CartLineCost'; /** * The cost of a single unit. For example, if a customer purchases three units of a product * that are priced at $10 each, then the `amountPerQuantity` is $10. @@ -423,9 +414,9 @@ export type CartLineMinimumQuantity = { * Cart line IDs with a merchandise line price that's included to calculate the * minimum quantity purchased to receive the discount. */ - ids: Array; + ids: Array; /** The minimum quantity of a cart line to be eligible for a discount candidate. */ - minimumQuantity: Scalars["Int"]["input"]; + minimumQuantity: Scalars['Int']['input']; }; /** The condition for checking the minimum subtotal of products across a group of cart lines. */ @@ -434,14 +425,14 @@ export type CartLineMinimumSubtotal = { * Cart line IDs with a merchandise line price that's included to calculate the * minimum subtotal purchased to receive the discount. */ - ids: Array; + ids: Array; /** The minimum subtotal amount of the cart line to be eligible for a discount candidate in the shop's currency. */ - minimumAmount: Scalars["Decimal"]["input"]; + minimumAmount: Scalars['Decimal']['input']; }; /** Represents the relationship between a cart line and its parent line. */ export type CartLineParentRelationship = { - __typename?: "CartLineParentRelationship"; + __typename?: 'CartLineParentRelationship'; /** The parent line in the relationship. */ parent: CartLine; }; @@ -453,14 +444,14 @@ export type CartLineParentRelationship = { */ export type CartLineTarget = { /** The ID of the targeted cart line. */ - id: Scalars["ID"]["input"]; + id: Scalars['ID']['input']; /** * The number of line items that are being discounted. * The default value is `null`, which represents the quantity of the matching line items. * * The value is validated against: > 0. */ - quantity?: InputMaybe; + quantity?: InputMaybe; }; /** @@ -484,34 +475,17 @@ export type CartOperation = * An operation that selects which entered discount codes to accept. Use this to * validate discount codes from external systems. */ - | { - enteredDiscountCodesAccept: EnteredDiscountCodesAcceptOperation; - enteredDiscountCodesReject?: never; - orderDiscountsAdd?: never; - productDiscountsAdd?: never; - } /** + { enteredDiscountCodesAccept: EnteredDiscountCodesAcceptOperation; enteredDiscountCodesReject?: never; orderDiscountsAdd?: never; productDiscountsAdd?: never; } + | /** * An operation that rejects entered discount codes with a custom message. Use * this to conditionally reject discount codes based on business logic. This * operation can only be used if the function is backed by an automatic discount. */ - | { - enteredDiscountCodesAccept?: never; - enteredDiscountCodesReject: EnteredDiscountCodesRejectOperation; - orderDiscountsAdd?: never; - productDiscountsAdd?: never; - } /** An operation that applies order discounts to a cart that share a selection strategy. */ - | { - enteredDiscountCodesAccept?: never; - enteredDiscountCodesReject?: never; - orderDiscountsAdd: OrderDiscountsAddOperation; - productDiscountsAdd?: never; - } /** An operation that applies product discounts to a cart that share a selection strategy. */ - | { - enteredDiscountCodesAccept?: never; - enteredDiscountCodesReject?: never; - orderDiscountsAdd?: never; - productDiscountsAdd: ProductDiscountsAddOperation; - }; + { enteredDiscountCodesAccept?: never; enteredDiscountCodesReject: EnteredDiscountCodesRejectOperation; orderDiscountsAdd?: never; productDiscountsAdd?: never; } + | /** An operation that applies order discounts to a cart that share a selection strategy. */ + { enteredDiscountCodesAccept?: never; enteredDiscountCodesReject?: never; orderDiscountsAdd: OrderDiscountsAddOperation; productDiscountsAdd?: never; } + | /** An operation that applies product discounts to a cart that share a selection strategy. */ + { enteredDiscountCodesAccept?: never; enteredDiscountCodesReject?: never; orderDiscountsAdd?: never; productDiscountsAdd: ProductDiscountsAddOperation; }; /** * Whether the product is in the specified collection. @@ -521,25 +495,25 @@ export type CartOperation = * different collections for running attire and accessories. */ export type CollectionMembership = { - __typename?: "CollectionMembership"; + __typename?: 'CollectionMembership'; /** * A [globally-unique ID](https://shopify.dev/docs/api/usage/gids) * for the collection. */ - collectionId: Scalars["ID"]["output"]; + collectionId: Scalars['ID']['output']; /** Whether the product is in the specified collection. */ - isMember: Scalars["Boolean"]["output"]; + isMember: Scalars['Boolean']['output']; }; /** Represents information about a company which is also a customer of the shop. */ export type Company = HasMetafields & { - __typename?: "Company"; + __typename?: 'Company'; /** The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) at which the company was created in Shopify. */ - createdAt: Scalars["DateTime"]["output"]; + createdAt: Scalars['DateTime']['output']; /** A unique externally-supplied ID for the company. */ - externalId?: Maybe; + externalId?: Maybe; /** The ID of the company. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -549,52 +523,53 @@ export type Company = HasMetafields & { */ metafield?: Maybe; /** The name of the company. */ - name: Scalars["String"]["output"]; + name: Scalars['String']['output']; /** The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) at which the company was last modified. */ - updatedAt: Scalars["DateTime"]["output"]; + updatedAt: Scalars['DateTime']['output']; }; + /** Represents information about a company which is also a customer of the shop. */ export type CompanyMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** A company's main point of contact. */ export type CompanyContact = { - __typename?: "CompanyContact"; + __typename?: 'CompanyContact'; /** * The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) * at which the company contact was created in Shopify. */ - createdAt: Scalars["DateTime"]["output"]; + createdAt: Scalars['DateTime']['output']; /** The ID of the company. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** The company contact's locale (language). */ - locale?: Maybe; + locale?: Maybe; /** The company contact's job title. */ - title?: Maybe; + title?: Maybe; /** * The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) * at which the company contact was last modified. */ - updatedAt: Scalars["DateTime"]["output"]; + updatedAt: Scalars['DateTime']['output']; }; /** A company's location. */ export type CompanyLocation = HasMetafields & { - __typename?: "CompanyLocation"; + __typename?: 'CompanyLocation'; /** * The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) * at which the company location was created in Shopify. */ - createdAt: Scalars["DateTime"]["output"]; + createdAt: Scalars['DateTime']['output']; /** A unique externally-supplied ID for the company. */ - externalId?: Maybe; + externalId?: Maybe; /** The ID of the company. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** The preferred locale of the company location. */ - locale?: Maybe; + locale?: Maybe; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -604,42 +579,33 @@ export type CompanyLocation = HasMetafields & { */ metafield?: Maybe; /** The name of the company location. */ - name: Scalars["String"]["output"]; + name: Scalars['String']['output']; /** The number of orders placed at this company location. */ - ordersCount: Scalars["Int"]["output"]; + ordersCount: Scalars['Int']['output']; /** The total amount spent at this company location. */ totalSpent: MoneyV2; /** * The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) * at which the company location was last modified. */ - updatedAt: Scalars["DateTime"]["output"]; + updatedAt: Scalars['DateTime']['output']; }; + /** A company's location. */ export type CompanyLocationMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** The conditions that satisfy the discount candidate to be applied to a cart line. */ export type Condition = /** The condition for checking the minimum quantity of products across a group of cart lines. */ - | { - cartLineMinimumQuantity: CartLineMinimumQuantity; - cartLineMinimumSubtotal?: never; - orderMinimumSubtotal?: never; - } /** The condition for checking the minimum subtotal of products across a group of cart lines. */ - | { - cartLineMinimumQuantity?: never; - cartLineMinimumSubtotal: CartLineMinimumSubtotal; - orderMinimumSubtotal?: never; - } /** The condition for checking the minimum subtotal amount of the order. */ - | { - cartLineMinimumQuantity?: never; - cartLineMinimumSubtotal?: never; - orderMinimumSubtotal: OrderMinimumSubtotal; - }; + { cartLineMinimumQuantity: CartLineMinimumQuantity; cartLineMinimumSubtotal?: never; orderMinimumSubtotal?: never; } + | /** The condition for checking the minimum subtotal of products across a group of cart lines. */ + { cartLineMinimumQuantity?: never; cartLineMinimumSubtotal: CartLineMinimumSubtotal; orderMinimumSubtotal?: never; } + | /** The condition for checking the minimum subtotal amount of the order. */ + { cartLineMinimumQuantity?: never; cartLineMinimumSubtotal?: never; orderMinimumSubtotal: OrderMinimumSubtotal; }; /** * The country for which the store is customized, reflecting local preferences and regulations. @@ -647,7 +613,7 @@ export type Condition = * the shopping experience for customers in that region. */ export type Country = { - __typename?: "Country"; + __typename?: 'Country'; /** The ISO code of the country. */ isoCode: CountryCode; }; @@ -660,495 +626,495 @@ export type Country = { */ export enum CountryCode { /** Ascension Island. */ - Ac = "AC", + Ac = 'AC', /** Andorra. */ - Ad = "AD", + Ad = 'AD', /** United Arab Emirates. */ - Ae = "AE", + Ae = 'AE', /** Afghanistan. */ - Af = "AF", + Af = 'AF', /** Antigua & Barbuda. */ - Ag = "AG", + Ag = 'AG', /** Anguilla. */ - Ai = "AI", + Ai = 'AI', /** Albania. */ - Al = "AL", + Al = 'AL', /** Armenia. */ - Am = "AM", + Am = 'AM', /** Netherlands Antilles. */ - An = "AN", + An = 'AN', /** Angola. */ - Ao = "AO", + Ao = 'AO', /** Argentina. */ - Ar = "AR", + Ar = 'AR', /** Austria. */ - At = "AT", + At = 'AT', /** Australia. */ - Au = "AU", + Au = 'AU', /** Aruba. */ - Aw = "AW", + Aw = 'AW', /** Åland Islands. */ - Ax = "AX", + Ax = 'AX', /** Azerbaijan. */ - Az = "AZ", + Az = 'AZ', /** Bosnia & Herzegovina. */ - Ba = "BA", + Ba = 'BA', /** Barbados. */ - Bb = "BB", + Bb = 'BB', /** Bangladesh. */ - Bd = "BD", + Bd = 'BD', /** Belgium. */ - Be = "BE", + Be = 'BE', /** Burkina Faso. */ - Bf = "BF", + Bf = 'BF', /** Bulgaria. */ - Bg = "BG", + Bg = 'BG', /** Bahrain. */ - Bh = "BH", + Bh = 'BH', /** Burundi. */ - Bi = "BI", + Bi = 'BI', /** Benin. */ - Bj = "BJ", + Bj = 'BJ', /** St. Barthélemy. */ - Bl = "BL", + Bl = 'BL', /** Bermuda. */ - Bm = "BM", + Bm = 'BM', /** Brunei. */ - Bn = "BN", + Bn = 'BN', /** Bolivia. */ - Bo = "BO", + Bo = 'BO', /** Caribbean Netherlands. */ - Bq = "BQ", + Bq = 'BQ', /** Brazil. */ - Br = "BR", + Br = 'BR', /** Bahamas. */ - Bs = "BS", + Bs = 'BS', /** Bhutan. */ - Bt = "BT", + Bt = 'BT', /** Bouvet Island. */ - Bv = "BV", + Bv = 'BV', /** Botswana. */ - Bw = "BW", + Bw = 'BW', /** Belarus. */ - By = "BY", + By = 'BY', /** Belize. */ - Bz = "BZ", + Bz = 'BZ', /** Canada. */ - Ca = "CA", + Ca = 'CA', /** Cocos (Keeling) Islands. */ - Cc = "CC", + Cc = 'CC', /** Congo - Kinshasa. */ - Cd = "CD", + Cd = 'CD', /** Central African Republic. */ - Cf = "CF", + Cf = 'CF', /** Congo - Brazzaville. */ - Cg = "CG", + Cg = 'CG', /** Switzerland. */ - Ch = "CH", + Ch = 'CH', /** Côte d’Ivoire. */ - Ci = "CI", + Ci = 'CI', /** Cook Islands. */ - Ck = "CK", + Ck = 'CK', /** Chile. */ - Cl = "CL", + Cl = 'CL', /** Cameroon. */ - Cm = "CM", + Cm = 'CM', /** China. */ - Cn = "CN", + Cn = 'CN', /** Colombia. */ - Co = "CO", + Co = 'CO', /** Costa Rica. */ - Cr = "CR", + Cr = 'CR', /** Cuba. */ - Cu = "CU", + Cu = 'CU', /** Cape Verde. */ - Cv = "CV", + Cv = 'CV', /** Curaçao. */ - Cw = "CW", + Cw = 'CW', /** Christmas Island. */ - Cx = "CX", + Cx = 'CX', /** Cyprus. */ - Cy = "CY", + Cy = 'CY', /** Czechia. */ - Cz = "CZ", + Cz = 'CZ', /** Germany. */ - De = "DE", + De = 'DE', /** Djibouti. */ - Dj = "DJ", + Dj = 'DJ', /** Denmark. */ - Dk = "DK", + Dk = 'DK', /** Dominica. */ - Dm = "DM", + Dm = 'DM', /** Dominican Republic. */ - Do = "DO", + Do = 'DO', /** Algeria. */ - Dz = "DZ", + Dz = 'DZ', /** Ecuador. */ - Ec = "EC", + Ec = 'EC', /** Estonia. */ - Ee = "EE", + Ee = 'EE', /** Egypt. */ - Eg = "EG", + Eg = 'EG', /** Western Sahara. */ - Eh = "EH", + Eh = 'EH', /** Eritrea. */ - Er = "ER", + Er = 'ER', /** Spain. */ - Es = "ES", + Es = 'ES', /** Ethiopia. */ - Et = "ET", + Et = 'ET', /** Finland. */ - Fi = "FI", + Fi = 'FI', /** Fiji. */ - Fj = "FJ", + Fj = 'FJ', /** Falkland Islands. */ - Fk = "FK", + Fk = 'FK', /** Faroe Islands. */ - Fo = "FO", + Fo = 'FO', /** France. */ - Fr = "FR", + Fr = 'FR', /** Gabon. */ - Ga = "GA", + Ga = 'GA', /** United Kingdom. */ - Gb = "GB", + Gb = 'GB', /** Grenada. */ - Gd = "GD", + Gd = 'GD', /** Georgia. */ - Ge = "GE", + Ge = 'GE', /** French Guiana. */ - Gf = "GF", + Gf = 'GF', /** Guernsey. */ - Gg = "GG", + Gg = 'GG', /** Ghana. */ - Gh = "GH", + Gh = 'GH', /** Gibraltar. */ - Gi = "GI", + Gi = 'GI', /** Greenland. */ - Gl = "GL", + Gl = 'GL', /** Gambia. */ - Gm = "GM", + Gm = 'GM', /** Guinea. */ - Gn = "GN", + Gn = 'GN', /** Guadeloupe. */ - Gp = "GP", + Gp = 'GP', /** Equatorial Guinea. */ - Gq = "GQ", + Gq = 'GQ', /** Greece. */ - Gr = "GR", + Gr = 'GR', /** South Georgia & South Sandwich Islands. */ - Gs = "GS", + Gs = 'GS', /** Guatemala. */ - Gt = "GT", + Gt = 'GT', /** Guinea-Bissau. */ - Gw = "GW", + Gw = 'GW', /** Guyana. */ - Gy = "GY", + Gy = 'GY', /** Hong Kong SAR. */ - Hk = "HK", + Hk = 'HK', /** Heard & McDonald Islands. */ - Hm = "HM", + Hm = 'HM', /** Honduras. */ - Hn = "HN", + Hn = 'HN', /** Croatia. */ - Hr = "HR", + Hr = 'HR', /** Haiti. */ - Ht = "HT", + Ht = 'HT', /** Hungary. */ - Hu = "HU", + Hu = 'HU', /** Indonesia. */ - Id = "ID", + Id = 'ID', /** Ireland. */ - Ie = "IE", + Ie = 'IE', /** Israel. */ - Il = "IL", + Il = 'IL', /** Isle of Man. */ - Im = "IM", + Im = 'IM', /** India. */ - In = "IN", + In = 'IN', /** British Indian Ocean Territory. */ - Io = "IO", + Io = 'IO', /** Iraq. */ - Iq = "IQ", + Iq = 'IQ', /** Iran. */ - Ir = "IR", + Ir = 'IR', /** Iceland. */ - Is = "IS", + Is = 'IS', /** Italy. */ - It = "IT", + It = 'IT', /** Jersey. */ - Je = "JE", + Je = 'JE', /** Jamaica. */ - Jm = "JM", + Jm = 'JM', /** Jordan. */ - Jo = "JO", + Jo = 'JO', /** Japan. */ - Jp = "JP", + Jp = 'JP', /** Kenya. */ - Ke = "KE", + Ke = 'KE', /** Kyrgyzstan. */ - Kg = "KG", + Kg = 'KG', /** Cambodia. */ - Kh = "KH", + Kh = 'KH', /** Kiribati. */ - Ki = "KI", + Ki = 'KI', /** Comoros. */ - Km = "KM", + Km = 'KM', /** St. Kitts & Nevis. */ - Kn = "KN", + Kn = 'KN', /** North Korea. */ - Kp = "KP", + Kp = 'KP', /** South Korea. */ - Kr = "KR", + Kr = 'KR', /** Kuwait. */ - Kw = "KW", + Kw = 'KW', /** Cayman Islands. */ - Ky = "KY", + Ky = 'KY', /** Kazakhstan. */ - Kz = "KZ", + Kz = 'KZ', /** Laos. */ - La = "LA", + La = 'LA', /** Lebanon. */ - Lb = "LB", + Lb = 'LB', /** St. Lucia. */ - Lc = "LC", + Lc = 'LC', /** Liechtenstein. */ - Li = "LI", + Li = 'LI', /** Sri Lanka. */ - Lk = "LK", + Lk = 'LK', /** Liberia. */ - Lr = "LR", + Lr = 'LR', /** Lesotho. */ - Ls = "LS", + Ls = 'LS', /** Lithuania. */ - Lt = "LT", + Lt = 'LT', /** Luxembourg. */ - Lu = "LU", + Lu = 'LU', /** Latvia. */ - Lv = "LV", + Lv = 'LV', /** Libya. */ - Ly = "LY", + Ly = 'LY', /** Morocco. */ - Ma = "MA", + Ma = 'MA', /** Monaco. */ - Mc = "MC", + Mc = 'MC', /** Moldova. */ - Md = "MD", + Md = 'MD', /** Montenegro. */ - Me = "ME", + Me = 'ME', /** St. Martin. */ - Mf = "MF", + Mf = 'MF', /** Madagascar. */ - Mg = "MG", + Mg = 'MG', /** North Macedonia. */ - Mk = "MK", + Mk = 'MK', /** Mali. */ - Ml = "ML", + Ml = 'ML', /** Myanmar (Burma). */ - Mm = "MM", + Mm = 'MM', /** Mongolia. */ - Mn = "MN", + Mn = 'MN', /** Macao SAR. */ - Mo = "MO", + Mo = 'MO', /** Martinique. */ - Mq = "MQ", + Mq = 'MQ', /** Mauritania. */ - Mr = "MR", + Mr = 'MR', /** Montserrat. */ - Ms = "MS", + Ms = 'MS', /** Malta. */ - Mt = "MT", + Mt = 'MT', /** Mauritius. */ - Mu = "MU", + Mu = 'MU', /** Maldives. */ - Mv = "MV", + Mv = 'MV', /** Malawi. */ - Mw = "MW", + Mw = 'MW', /** Mexico. */ - Mx = "MX", + Mx = 'MX', /** Malaysia. */ - My = "MY", + My = 'MY', /** Mozambique. */ - Mz = "MZ", + Mz = 'MZ', /** Namibia. */ - Na = "NA", + Na = 'NA', /** New Caledonia. */ - Nc = "NC", + Nc = 'NC', /** Niger. */ - Ne = "NE", + Ne = 'NE', /** Norfolk Island. */ - Nf = "NF", + Nf = 'NF', /** Nigeria. */ - Ng = "NG", + Ng = 'NG', /** Nicaragua. */ - Ni = "NI", + Ni = 'NI', /** Netherlands. */ - Nl = "NL", + Nl = 'NL', /** Norway. */ - No = "NO", + No = 'NO', /** Nepal. */ - Np = "NP", + Np = 'NP', /** Nauru. */ - Nr = "NR", + Nr = 'NR', /** Niue. */ - Nu = "NU", + Nu = 'NU', /** New Zealand. */ - Nz = "NZ", + Nz = 'NZ', /** Oman. */ - Om = "OM", + Om = 'OM', /** Panama. */ - Pa = "PA", + Pa = 'PA', /** Peru. */ - Pe = "PE", + Pe = 'PE', /** French Polynesia. */ - Pf = "PF", + Pf = 'PF', /** Papua New Guinea. */ - Pg = "PG", + Pg = 'PG', /** Philippines. */ - Ph = "PH", + Ph = 'PH', /** Pakistan. */ - Pk = "PK", + Pk = 'PK', /** Poland. */ - Pl = "PL", + Pl = 'PL', /** St. Pierre & Miquelon. */ - Pm = "PM", + Pm = 'PM', /** Pitcairn Islands. */ - Pn = "PN", + Pn = 'PN', /** Palestinian Territories. */ - Ps = "PS", + Ps = 'PS', /** Portugal. */ - Pt = "PT", + Pt = 'PT', /** Paraguay. */ - Py = "PY", + Py = 'PY', /** Qatar. */ - Qa = "QA", + Qa = 'QA', /** Réunion. */ - Re = "RE", + Re = 'RE', /** Romania. */ - Ro = "RO", + Ro = 'RO', /** Serbia. */ - Rs = "RS", + Rs = 'RS', /** Russia. */ - Ru = "RU", + Ru = 'RU', /** Rwanda. */ - Rw = "RW", + Rw = 'RW', /** Saudi Arabia. */ - Sa = "SA", + Sa = 'SA', /** Solomon Islands. */ - Sb = "SB", + Sb = 'SB', /** Seychelles. */ - Sc = "SC", + Sc = 'SC', /** Sudan. */ - Sd = "SD", + Sd = 'SD', /** Sweden. */ - Se = "SE", + Se = 'SE', /** Singapore. */ - Sg = "SG", + Sg = 'SG', /** St. Helena. */ - Sh = "SH", + Sh = 'SH', /** Slovenia. */ - Si = "SI", + Si = 'SI', /** Svalbard & Jan Mayen. */ - Sj = "SJ", + Sj = 'SJ', /** Slovakia. */ - Sk = "SK", + Sk = 'SK', /** Sierra Leone. */ - Sl = "SL", + Sl = 'SL', /** San Marino. */ - Sm = "SM", + Sm = 'SM', /** Senegal. */ - Sn = "SN", + Sn = 'SN', /** Somalia. */ - So = "SO", + So = 'SO', /** Suriname. */ - Sr = "SR", + Sr = 'SR', /** South Sudan. */ - Ss = "SS", + Ss = 'SS', /** São Tomé & Príncipe. */ - St = "ST", + St = 'ST', /** El Salvador. */ - Sv = "SV", + Sv = 'SV', /** Sint Maarten. */ - Sx = "SX", + Sx = 'SX', /** Syria. */ - Sy = "SY", + Sy = 'SY', /** Eswatini. */ - Sz = "SZ", + Sz = 'SZ', /** Tristan da Cunha. */ - Ta = "TA", + Ta = 'TA', /** Turks & Caicos Islands. */ - Tc = "TC", + Tc = 'TC', /** Chad. */ - Td = "TD", + Td = 'TD', /** French Southern Territories. */ - Tf = "TF", + Tf = 'TF', /** Togo. */ - Tg = "TG", + Tg = 'TG', /** Thailand. */ - Th = "TH", + Th = 'TH', /** Tajikistan. */ - Tj = "TJ", + Tj = 'TJ', /** Tokelau. */ - Tk = "TK", + Tk = 'TK', /** Timor-Leste. */ - Tl = "TL", + Tl = 'TL', /** Turkmenistan. */ - Tm = "TM", + Tm = 'TM', /** Tunisia. */ - Tn = "TN", + Tn = 'TN', /** Tonga. */ - To = "TO", + To = 'TO', /** Türkiye. */ - Tr = "TR", + Tr = 'TR', /** Trinidad & Tobago. */ - Tt = "TT", + Tt = 'TT', /** Tuvalu. */ - Tv = "TV", + Tv = 'TV', /** Taiwan. */ - Tw = "TW", + Tw = 'TW', /** Tanzania. */ - Tz = "TZ", + Tz = 'TZ', /** Ukraine. */ - Ua = "UA", + Ua = 'UA', /** Uganda. */ - Ug = "UG", + Ug = 'UG', /** U.S. Outlying Islands. */ - Um = "UM", + Um = 'UM', /** United States. */ - Us = "US", + Us = 'US', /** Uruguay. */ - Uy = "UY", + Uy = 'UY', /** Uzbekistan. */ - Uz = "UZ", + Uz = 'UZ', /** Vatican City. */ - Va = "VA", + Va = 'VA', /** St. Vincent & Grenadines. */ - Vc = "VC", + Vc = 'VC', /** Venezuela. */ - Ve = "VE", + Ve = 'VE', /** British Virgin Islands. */ - Vg = "VG", + Vg = 'VG', /** Vietnam. */ - Vn = "VN", + Vn = 'VN', /** Vanuatu. */ - Vu = "VU", + Vu = 'VU', /** Wallis & Futuna. */ - Wf = "WF", + Wf = 'WF', /** Samoa. */ - Ws = "WS", + Ws = 'WS', /** Kosovo. */ - Xk = "XK", + Xk = 'XK', /** Yemen. */ - Ye = "YE", + Ye = 'YE', /** Mayotte. */ - Yt = "YT", + Yt = 'YT', /** South Africa. */ - Za = "ZA", + Za = 'ZA', /** Zambia. */ - Zm = "ZM", + Zm = 'ZM', /** Zimbabwe. */ - Zw = "ZW", + Zw = 'ZW', /** Unknown Region. */ - Zz = "ZZ", + Zz = 'ZZ' } /** @@ -1158,338 +1124,338 @@ export enum CountryCode { */ export enum CurrencyCode { /** United Arab Emirates Dirham (AED). */ - Aed = "AED", + Aed = 'AED', /** Afghan Afghani (AFN). */ - Afn = "AFN", + Afn = 'AFN', /** Albanian Lek (ALL). */ - All = "ALL", + All = 'ALL', /** Armenian Dram (AMD). */ - Amd = "AMD", + Amd = 'AMD', /** Netherlands Antillean Guilder. */ - Ang = "ANG", + Ang = 'ANG', /** Angolan Kwanza (AOA). */ - Aoa = "AOA", + Aoa = 'AOA', /** Argentine Pesos (ARS). */ - Ars = "ARS", + Ars = 'ARS', /** Australian Dollars (AUD). */ - Aud = "AUD", + Aud = 'AUD', /** Aruban Florin (AWG). */ - Awg = "AWG", + Awg = 'AWG', /** Azerbaijani Manat (AZN). */ - Azn = "AZN", + Azn = 'AZN', /** Bosnia and Herzegovina Convertible Mark (BAM). */ - Bam = "BAM", + Bam = 'BAM', /** Barbadian Dollar (BBD). */ - Bbd = "BBD", + Bbd = 'BBD', /** Bangladesh Taka (BDT). */ - Bdt = "BDT", + Bdt = 'BDT', /** Bulgarian Lev (BGN). */ - Bgn = "BGN", + Bgn = 'BGN', /** Bahraini Dinar (BHD). */ - Bhd = "BHD", + Bhd = 'BHD', /** Burundian Franc (BIF). */ - Bif = "BIF", + Bif = 'BIF', /** Bermudian Dollar (BMD). */ - Bmd = "BMD", + Bmd = 'BMD', /** Brunei Dollar (BND). */ - Bnd = "BND", + Bnd = 'BND', /** Bolivian Boliviano (BOB). */ - Bob = "BOB", + Bob = 'BOB', /** Brazilian Real (BRL). */ - Brl = "BRL", + Brl = 'BRL', /** Bahamian Dollar (BSD). */ - Bsd = "BSD", + Bsd = 'BSD', /** Bhutanese Ngultrum (BTN). */ - Btn = "BTN", + Btn = 'BTN', /** Botswana Pula (BWP). */ - Bwp = "BWP", + Bwp = 'BWP', /** Belarusian Ruble (BYN). */ - Byn = "BYN", + Byn = 'BYN', /** * Belarusian Ruble (BYR). * @deprecated Use `BYN` instead. */ - Byr = "BYR", + Byr = 'BYR', /** Belize Dollar (BZD). */ - Bzd = "BZD", + Bzd = 'BZD', /** Canadian Dollars (CAD). */ - Cad = "CAD", + Cad = 'CAD', /** Congolese franc (CDF). */ - Cdf = "CDF", + Cdf = 'CDF', /** Swiss Francs (CHF). */ - Chf = "CHF", + Chf = 'CHF', /** Chilean Peso (CLP). */ - Clp = "CLP", + Clp = 'CLP', /** Chinese Yuan Renminbi (CNY). */ - Cny = "CNY", + Cny = 'CNY', /** Colombian Peso (COP). */ - Cop = "COP", + Cop = 'COP', /** Costa Rican Colones (CRC). */ - Crc = "CRC", + Crc = 'CRC', /** Cape Verdean escudo (CVE). */ - Cve = "CVE", + Cve = 'CVE', /** Czech Koruny (CZK). */ - Czk = "CZK", + Czk = 'CZK', /** Djiboutian Franc (DJF). */ - Djf = "DJF", + Djf = 'DJF', /** Danish Kroner (DKK). */ - Dkk = "DKK", + Dkk = 'DKK', /** Dominican Peso (DOP). */ - Dop = "DOP", + Dop = 'DOP', /** Algerian Dinar (DZD). */ - Dzd = "DZD", + Dzd = 'DZD', /** Egyptian Pound (EGP). */ - Egp = "EGP", + Egp = 'EGP', /** Eritrean Nakfa (ERN). */ - Ern = "ERN", + Ern = 'ERN', /** Ethiopian Birr (ETB). */ - Etb = "ETB", + Etb = 'ETB', /** Euro (EUR). */ - Eur = "EUR", + Eur = 'EUR', /** Fijian Dollars (FJD). */ - Fjd = "FJD", + Fjd = 'FJD', /** Falkland Islands Pounds (FKP). */ - Fkp = "FKP", + Fkp = 'FKP', /** United Kingdom Pounds (GBP). */ - Gbp = "GBP", + Gbp = 'GBP', /** Georgian Lari (GEL). */ - Gel = "GEL", + Gel = 'GEL', /** Ghanaian Cedi (GHS). */ - Ghs = "GHS", + Ghs = 'GHS', /** Gibraltar Pounds (GIP). */ - Gip = "GIP", + Gip = 'GIP', /** Gambian Dalasi (GMD). */ - Gmd = "GMD", + Gmd = 'GMD', /** Guinean Franc (GNF). */ - Gnf = "GNF", + Gnf = 'GNF', /** Guatemalan Quetzal (GTQ). */ - Gtq = "GTQ", + Gtq = 'GTQ', /** Guyanese Dollar (GYD). */ - Gyd = "GYD", + Gyd = 'GYD', /** Hong Kong Dollars (HKD). */ - Hkd = "HKD", + Hkd = 'HKD', /** Honduran Lempira (HNL). */ - Hnl = "HNL", + Hnl = 'HNL', /** Croatian Kuna (HRK). */ - Hrk = "HRK", + Hrk = 'HRK', /** Haitian Gourde (HTG). */ - Htg = "HTG", + Htg = 'HTG', /** Hungarian Forint (HUF). */ - Huf = "HUF", + Huf = 'HUF', /** Indonesian Rupiah (IDR). */ - Idr = "IDR", + Idr = 'IDR', /** Israeli New Shekel (NIS). */ - Ils = "ILS", + Ils = 'ILS', /** Indian Rupees (INR). */ - Inr = "INR", + Inr = 'INR', /** Iraqi Dinar (IQD). */ - Iqd = "IQD", + Iqd = 'IQD', /** Iranian Rial (IRR). */ - Irr = "IRR", + Irr = 'IRR', /** Icelandic Kronur (ISK). */ - Isk = "ISK", + Isk = 'ISK', /** Jersey Pound. */ - Jep = "JEP", + Jep = 'JEP', /** Jamaican Dollars (JMD). */ - Jmd = "JMD", + Jmd = 'JMD', /** Jordanian Dinar (JOD). */ - Jod = "JOD", + Jod = 'JOD', /** Japanese Yen (JPY). */ - Jpy = "JPY", + Jpy = 'JPY', /** Kenyan Shilling (KES). */ - Kes = "KES", + Kes = 'KES', /** Kyrgyzstani Som (KGS). */ - Kgs = "KGS", + Kgs = 'KGS', /** Cambodian Riel. */ - Khr = "KHR", + Khr = 'KHR', /** Kiribati Dollar (KID). */ - Kid = "KID", + Kid = 'KID', /** Comorian Franc (KMF). */ - Kmf = "KMF", + Kmf = 'KMF', /** South Korean Won (KRW). */ - Krw = "KRW", + Krw = 'KRW', /** Kuwaiti Dinar (KWD). */ - Kwd = "KWD", + Kwd = 'KWD', /** Cayman Dollars (KYD). */ - Kyd = "KYD", + Kyd = 'KYD', /** Kazakhstani Tenge (KZT). */ - Kzt = "KZT", + Kzt = 'KZT', /** Laotian Kip (LAK). */ - Lak = "LAK", + Lak = 'LAK', /** Lebanese Pounds (LBP). */ - Lbp = "LBP", + Lbp = 'LBP', /** Sri Lankan Rupees (LKR). */ - Lkr = "LKR", + Lkr = 'LKR', /** Liberian Dollar (LRD). */ - Lrd = "LRD", + Lrd = 'LRD', /** Lesotho Loti (LSL). */ - Lsl = "LSL", + Lsl = 'LSL', /** Lithuanian Litai (LTL). */ - Ltl = "LTL", + Ltl = 'LTL', /** Latvian Lati (LVL). */ - Lvl = "LVL", + Lvl = 'LVL', /** Libyan Dinar (LYD). */ - Lyd = "LYD", + Lyd = 'LYD', /** Moroccan Dirham. */ - Mad = "MAD", + Mad = 'MAD', /** Moldovan Leu (MDL). */ - Mdl = "MDL", + Mdl = 'MDL', /** Malagasy Ariary (MGA). */ - Mga = "MGA", + Mga = 'MGA', /** Macedonia Denar (MKD). */ - Mkd = "MKD", + Mkd = 'MKD', /** Burmese Kyat (MMK). */ - Mmk = "MMK", + Mmk = 'MMK', /** Mongolian Tugrik. */ - Mnt = "MNT", + Mnt = 'MNT', /** Macanese Pataca (MOP). */ - Mop = "MOP", + Mop = 'MOP', /** Mauritanian Ouguiya (MRU). */ - Mru = "MRU", + Mru = 'MRU', /** Mauritian Rupee (MUR). */ - Mur = "MUR", + Mur = 'MUR', /** Maldivian Rufiyaa (MVR). */ - Mvr = "MVR", + Mvr = 'MVR', /** Malawian Kwacha (MWK). */ - Mwk = "MWK", + Mwk = 'MWK', /** Mexican Pesos (MXN). */ - Mxn = "MXN", + Mxn = 'MXN', /** Malaysian Ringgits (MYR). */ - Myr = "MYR", + Myr = 'MYR', /** Mozambican Metical. */ - Mzn = "MZN", + Mzn = 'MZN', /** Namibian Dollar. */ - Nad = "NAD", + Nad = 'NAD', /** Nigerian Naira (NGN). */ - Ngn = "NGN", + Ngn = 'NGN', /** Nicaraguan Córdoba (NIO). */ - Nio = "NIO", + Nio = 'NIO', /** Norwegian Kroner (NOK). */ - Nok = "NOK", + Nok = 'NOK', /** Nepalese Rupee (NPR). */ - Npr = "NPR", + Npr = 'NPR', /** New Zealand Dollars (NZD). */ - Nzd = "NZD", + Nzd = 'NZD', /** Omani Rial (OMR). */ - Omr = "OMR", + Omr = 'OMR', /** Panamian Balboa (PAB). */ - Pab = "PAB", + Pab = 'PAB', /** Peruvian Nuevo Sol (PEN). */ - Pen = "PEN", + Pen = 'PEN', /** Papua New Guinean Kina (PGK). */ - Pgk = "PGK", + Pgk = 'PGK', /** Philippine Peso (PHP). */ - Php = "PHP", + Php = 'PHP', /** Pakistani Rupee (PKR). */ - Pkr = "PKR", + Pkr = 'PKR', /** Polish Zlotych (PLN). */ - Pln = "PLN", + Pln = 'PLN', /** Paraguayan Guarani (PYG). */ - Pyg = "PYG", + Pyg = 'PYG', /** Qatari Rial (QAR). */ - Qar = "QAR", + Qar = 'QAR', /** Romanian Lei (RON). */ - Ron = "RON", + Ron = 'RON', /** Serbian dinar (RSD). */ - Rsd = "RSD", + Rsd = 'RSD', /** Russian Rubles (RUB). */ - Rub = "RUB", + Rub = 'RUB', /** Rwandan Franc (RWF). */ - Rwf = "RWF", + Rwf = 'RWF', /** Saudi Riyal (SAR). */ - Sar = "SAR", + Sar = 'SAR', /** Solomon Islands Dollar (SBD). */ - Sbd = "SBD", + Sbd = 'SBD', /** Seychellois Rupee (SCR). */ - Scr = "SCR", + Scr = 'SCR', /** Sudanese Pound (SDG). */ - Sdg = "SDG", + Sdg = 'SDG', /** Swedish Kronor (SEK). */ - Sek = "SEK", + Sek = 'SEK', /** Singapore Dollars (SGD). */ - Sgd = "SGD", + Sgd = 'SGD', /** Saint Helena Pounds (SHP). */ - Shp = "SHP", + Shp = 'SHP', /** Sierra Leonean Leone (SLL). */ - Sll = "SLL", + Sll = 'SLL', /** Somali Shilling (SOS). */ - Sos = "SOS", + Sos = 'SOS', /** Surinamese Dollar (SRD). */ - Srd = "SRD", + Srd = 'SRD', /** South Sudanese Pound (SSP). */ - Ssp = "SSP", + Ssp = 'SSP', /** * Sao Tome And Principe Dobra (STD). * @deprecated Use `STN` instead. */ - Std = "STD", + Std = 'STD', /** Sao Tome And Principe Dobra (STN). */ - Stn = "STN", + Stn = 'STN', /** Syrian Pound (SYP). */ - Syp = "SYP", + Syp = 'SYP', /** Swazi Lilangeni (SZL). */ - Szl = "SZL", + Szl = 'SZL', /** Thai baht (THB). */ - Thb = "THB", + Thb = 'THB', /** Tajikistani Somoni (TJS). */ - Tjs = "TJS", + Tjs = 'TJS', /** Turkmenistani Manat (TMT). */ - Tmt = "TMT", + Tmt = 'TMT', /** Tunisian Dinar (TND). */ - Tnd = "TND", + Tnd = 'TND', /** Tongan Pa'anga (TOP). */ - Top = "TOP", + Top = 'TOP', /** Turkish Lira (TRY). */ - Try = "TRY", + Try = 'TRY', /** Trinidad and Tobago Dollars (TTD). */ - Ttd = "TTD", + Ttd = 'TTD', /** Taiwan Dollars (TWD). */ - Twd = "TWD", + Twd = 'TWD', /** Tanzanian Shilling (TZS). */ - Tzs = "TZS", + Tzs = 'TZS', /** Ukrainian Hryvnia (UAH). */ - Uah = "UAH", + Uah = 'UAH', /** Ugandan Shilling (UGX). */ - Ugx = "UGX", + Ugx = 'UGX', /** United States Dollars (USD). */ - Usd = "USD", + Usd = 'USD', /** United States Dollars Coin (USDC). */ - Usdc = "USDC", + Usdc = 'USDC', /** Uruguayan Pesos (UYU). */ - Uyu = "UYU", + Uyu = 'UYU', /** Uzbekistan som (UZS). */ - Uzs = "UZS", + Uzs = 'UZS', /** Venezuelan Bolivares (VED). */ - Ved = "VED", + Ved = 'VED', /** * Venezuelan Bolivares (VEF). * @deprecated Use `VES` instead. */ - Vef = "VEF", + Vef = 'VEF', /** Venezuelan Bolivares Soberanos (VES). */ - Ves = "VES", + Ves = 'VES', /** Vietnamese đồng (VND). */ - Vnd = "VND", + Vnd = 'VND', /** Vanuatu Vatu (VUV). */ - Vuv = "VUV", + Vuv = 'VUV', /** Samoan Tala (WST). */ - Wst = "WST", + Wst = 'WST', /** Central African CFA Franc (XAF). */ - Xaf = "XAF", + Xaf = 'XAF', /** East Caribbean Dollar (XCD). */ - Xcd = "XCD", + Xcd = 'XCD', /** West African CFA franc (XOF). */ - Xof = "XOF", + Xof = 'XOF', /** CFP Franc (XPF). */ - Xpf = "XPF", + Xpf = 'XPF', /** Unrecognized currency. */ - Xxx = "XXX", + Xxx = 'XXX', /** Yemeni Rial (YER). */ - Yer = "YER", + Yer = 'YER', /** South African Rand (ZAR). */ - Zar = "ZAR", + Zar = 'ZAR', /** Zambian Kwacha (ZMW). */ - Zmw = "ZMW", + Zmw = 'ZMW' } /** @@ -1499,23 +1465,23 @@ export enum CurrencyCode { * information, or weight measurements and conversions. */ export type CustomProduct = { - __typename?: "CustomProduct"; + __typename?: 'CustomProduct'; /** Whether the merchandise is a gift card. */ - isGiftCard: Scalars["Boolean"]["output"]; + isGiftCard: Scalars['Boolean']['output']; /** * Whether the item needs to be shipped to the customer. For example, a * digital gift card doesn't need to be shipped, but a t-shirt does * need to be shipped. */ - requiresShipping: Scalars["Boolean"]["output"]; + requiresShipping: Scalars['Boolean']['output']; /** * The localized name for the product that displays to customers. The title is used to construct the product's * handle, which is a unique, human-readable string of the product's title. For example, if a product is titled * "Black Sunglasses", then the handle is `black-sunglasses`. */ - title: Scalars["String"]["output"]; + title: Scalars['String']['output']; /** The product variant's weight, in the system of measurement set in the `weightUnit` field. */ - weight?: Maybe; + weight?: Maybe; /** The unit of measurement for weight. */ weightUnit: WeightUnit; }; @@ -1525,7 +1491,7 @@ export type CustomProduct = { * `Customer` returns data including the customer's contact information and order history. */ export type Customer = HasMetafields & { - __typename?: "Customer"; + __typename?: 'Customer'; /** * The total amount that the customer has spent on orders. * The amount is converted from the shop's currency to the currency of the cart using a market rate. @@ -1536,25 +1502,25 @@ export type Customer = HasMetafields & { * If `firstName` and `lastName` aren't specified, then the value is the customer's email address. * If the email address isn't specified, then the value is the customer's phone number. */ - displayName: Scalars["String"]["output"]; + displayName: Scalars['String']['output']; /** The customer's email address. */ - email?: Maybe; + email?: Maybe; /** The customer's first name. */ - firstName?: Maybe; + firstName?: Maybe; /** * Whether the customer is associated with any of the specified tags. The customer must have at least one tag * from the list to return `true`. */ - hasAnyTag: Scalars["Boolean"]["output"]; + hasAnyTag: Scalars['Boolean']['output']; /** Whether the customer is associated with the specified tags. */ hasTags: Array; /** * A [globally-unique ID](https://shopify.dev/docs/api/usage/gids) * for the customer. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** The customer's last name. */ - lastName?: Maybe; + lastName?: Maybe; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -1564,37 +1530,40 @@ export type Customer = HasMetafields & { */ metafield?: Maybe; /** The total number of orders that the customer has made at the store. */ - numberOfOrders: Scalars["Int"]["output"]; + numberOfOrders: Scalars['Int']['output']; }; + /** * Represents a [customer](https://help.shopify.com/manual/customers/manage-customers). * `Customer` returns data including the customer's contact information and order history. */ export type CustomerHasAnyTagArgs = { - tags?: Array; + tags?: Array; }; + /** * Represents a [customer](https://help.shopify.com/manual/customers/manage-customers). * `Customer` returns data including the customer's contact information and order history. */ export type CustomerHasTagsArgs = { - tags?: Array; + tags?: Array; }; + /** * Represents a [customer](https://help.shopify.com/manual/customers/manage-customers). * `Customer` returns data including the customer's contact information and order history. */ export type CustomerMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** Represents information about the merchandise in the cart. */ export type DeliverableCartLine = { - __typename?: "DeliverableCartLine"; + __typename?: 'DeliverableCartLine'; /** * The custom attributes associated with a cart to store additional information. Cart attributes * allow you to collect specific information from customers on the **Cart** page, such as order notes, @@ -1606,16 +1575,17 @@ export type DeliverableCartLine = { */ attribute?: Maybe; /** The ID of the cart line. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** The item that the customer intends to purchase. */ merchandise: Merchandise; /** The quantity of the item that the customer intends to purchase. */ - quantity: Scalars["Int"]["output"]; + quantity: Scalars['Int']['output']; }; + /** Represents information about the merchandise in the cart. */ export type DeliverableCartLineAttributeArgs = { - key?: InputMaybe; + key?: InputMaybe; }; /** The discount that's eligible to be applied to a delivery. */ @@ -1632,7 +1602,7 @@ export type DeliveryDiscountCandidate = { * message, such as "Save 20% on all t-shirts." If a discount code is entered, * the notification displays the code instead. */ - message?: InputMaybe; + message?: InputMaybe; /** The targets of the discount that are eligible to be applied to a delivery. */ targets: Array; /** The value of the discount that's eligible to be applied to a delivery. */ @@ -1647,18 +1617,20 @@ export type DeliveryDiscountCandidateTarget = * For example, if a customer orders a t-shirt and a pair of shoes that can be shipped together, then the * items are included in the same delivery group. */ - | { deliveryGroup: DeliveryGroupTarget; deliveryOption?: never } /** + { deliveryGroup: DeliveryGroupTarget; deliveryOption?: never; } + | /** * A method for applying a discount to a delivery option within a delivery group. * Delivery options are the different ways that customers can choose to have their * orders shipped. Examples of delivery options include express shipping or standard shipping. */ - | { deliveryGroup?: never; deliveryOption: DeliveryOptionTarget }; + { deliveryGroup?: never; deliveryOption: DeliveryOptionTarget; }; /** The value of the eligible delivery discount. */ export type DeliveryDiscountCandidateValue = /** A fixed amount value. */ - | { fixedAmount: FixedAmount; percentage?: never } /** A percentage value. */ - | { fixedAmount?: never; percentage: Percentage }; + { fixedAmount: FixedAmount; percentage?: never; } + | /** A percentage value. */ + { fixedAmount?: never; percentage: Percentage; }; /** The strategy that's applied to the list of discounts that are eligible to be applied to a delivery. */ export enum DeliveryDiscountSelectionStrategy { @@ -1667,7 +1639,7 @@ export enum DeliveryDiscountSelectionStrategy { * conditions that are satisfied. This doesn't override * discount combination or stacking rules. */ - All = "ALL", + All = 'ALL' } /** @@ -1696,23 +1668,23 @@ export type DeliveryDiscountsAddOperation = { */ export type DeliveryGroupTarget = { /** The ID of the target delivery group. */ - id: Scalars["ID"]["input"]; + id: Scalars['ID']['input']; }; /** List of different delivery method types. */ export enum DeliveryMethod { /** Local Delivery. */ - Local = "LOCAL", + Local = 'LOCAL', /** None. */ - None = "NONE", + None = 'NONE', /** Shipping to a Pickup Point. */ - PickupPoint = "PICKUP_POINT", + PickupPoint = 'PICKUP_POINT', /** Local Pickup. */ - PickUp = "PICK_UP", + PickUp = 'PICK_UP', /** Retail. */ - Retail = "RETAIL", + Retail = 'RETAIL', /** Shipping. */ - Shipping = "SHIPPING", + Shipping = 'SHIPPING' } /** @@ -1727,28 +1699,18 @@ export type DeliveryOperation = * Applies delivery discounts to a cart that share a method for determining which * shipping and delivery discounts to apply when multiple discounts are eligible. */ - | { - deliveryDiscountsAdd: DeliveryDiscountsAddOperation; - enteredDiscountCodesAccept?: never; - enteredDiscountCodesReject?: never; - } /** + { deliveryDiscountsAdd: DeliveryDiscountsAddOperation; enteredDiscountCodesAccept?: never; enteredDiscountCodesReject?: never; } + | /** * An operation that selects which entered discount codes to accept. Use this to * validate discount codes from external systems. */ - | { - deliveryDiscountsAdd?: never; - enteredDiscountCodesAccept: EnteredDiscountCodesAcceptOperation; - enteredDiscountCodesReject?: never; - } /** + { deliveryDiscountsAdd?: never; enteredDiscountCodesAccept: EnteredDiscountCodesAcceptOperation; enteredDiscountCodesReject?: never; } + | /** * An operation that rejects entered discount codes with a custom message. Use * this to conditionally reject discount codes based on business logic. This * operation can only be used if the function is backed by an automatic discount. */ - | { - deliveryDiscountsAdd?: never; - enteredDiscountCodesAccept?: never; - enteredDiscountCodesReject: EnteredDiscountCodesRejectOperation; - }; + { deliveryDiscountsAdd?: never; enteredDiscountCodesAccept?: never; enteredDiscountCodesReject: EnteredDiscountCodesRejectOperation; }; /** * A method for applying a discount to a delivery option within a delivery group. @@ -1757,12 +1719,12 @@ export type DeliveryOperation = */ export type DeliveryOptionTarget = { /** The handle of the target delivery option. */ - handle: Scalars["Handle"]["input"]; + handle: Scalars['Handle']['input']; }; /** The discount that invoked the [Discount Function](https://shopify.dev/docs/apps/build/discounts#build-with-shopify-functions)). */ export type Discount = HasMetafields & { - __typename?: "Discount"; + __typename?: 'Discount'; /** The [discount classes](https://shopify.dev/docs/apps/build/discounts/#discount-classes) that the [discountNode](https://shopify.dev/docs/api/admin-graphql/latest/queries/discountNode) supports. */ discountClasses: Array; /** @@ -1775,10 +1737,11 @@ export type Discount = HasMetafields & { metafield?: Maybe; }; + /** The discount that invoked the [Discount Function](https://shopify.dev/docs/apps/build/discounts#build-with-shopify-functions)). */ export type DiscountMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** @@ -1791,38 +1754,38 @@ export enum DiscountClass { * [order discount](https://help.shopify.com/manual/discounts/combining-discounts/discount-combinations) * class. */ - Order = "ORDER", + Order = 'ORDER', /** * The discount is combined with a * [product discount](https://help.shopify.com/manual/discounts/combining-discounts/discount-combinations) * class. */ - Product = "PRODUCT", + Product = 'PRODUCT', /** * The discount is combined with a * [shipping discount](https://help.shopify.com/manual/discounts/combining-discounts/discount-combinations) * class. */ - Shipping = "SHIPPING", + Shipping = 'SHIPPING' } /** A discount code used by the buyer to add a discount to the cart. */ export type DiscountCode = { /** The discount code. */ - code: Scalars["String"]["input"]; + code: Scalars['String']['input']; }; /** A discount code entered by the customer. */ export type EnteredDiscountCode = { - __typename?: "EnteredDiscountCode"; + __typename?: 'EnteredDiscountCode'; /** The discount code. */ - code: Scalars["String"]["output"]; + code: Scalars['String']['output']; /** * Indicates whether the entered discount code can be rejected. * * A discount code can't be rejected if it's associated with a discount that has already been applied to the cart. */ - rejectable: Scalars["Boolean"]["output"]; + rejectable: Scalars['Boolean']['output']; }; /** An operation that selects which entered discount codes to accept. Use this to validate discount codes from external systems. */ @@ -1840,7 +1803,7 @@ export type EnteredDiscountCodesRejectOperation = { /** The list of discount codes to reject. */ codes: Array; /** The custom message to display to the customer when the discount codes are rejected. */ - message: Scalars["String"]["input"]; + message: Scalars['String']['input']; }; /** A fixed amount value. */ @@ -1850,7 +1813,7 @@ export type FixedAmount = { * * The amount must be greater than or equal to 0. */ - amount: Scalars["Decimal"]["input"]; + amount: Scalars['Decimal']['input']; }; /** Represents information about the metafields associated to the specified resource. */ @@ -1865,23 +1828,24 @@ export type HasMetafields = { metafield?: Maybe; }; + /** Represents information about the metafields associated to the specified resource. */ export type HasMetafieldsMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** Whether a Shopify resource, such as a product or customer, has a specified tag. */ export type HasTagResponse = { - __typename?: "HasTagResponse"; + __typename?: 'HasTagResponse'; /** Whether the Shopify resource has the tag. */ - hasTag: Scalars["Boolean"]["output"]; + hasTag: Scalars['Boolean']['output']; /** * A searchable keyword that's associated with a Shopify resource, such as a product or customer. For example, * a merchant might apply the `sports` and `summer` tags to products that are associated with sportswear for * summer. */ - tag: Scalars["String"]["output"]; + tag: Scalars['String']['output']; }; /** The attributes associated with an HTTP request. */ @@ -1890,7 +1854,7 @@ export type HttpRequest = { * The HTTP request body as a plain string. * Use this field when the body isn't in JSON format. */ - body?: InputMaybe; + body?: InputMaybe; /** The HTTP headers. */ headers: Array; /** @@ -1902,45 +1866,45 @@ export type HttpRequest = { * If this field is specified and no `Content-Type` header is included, then the header will * automatically be set to `application/json`. */ - jsonBody?: InputMaybe; + jsonBody?: InputMaybe; /** The HTTP method. */ method: HttpRequestMethod; /** Policy attached to the HTTP request. */ policy: HttpRequestPolicy; /** The HTTP url (eg.: https://example.com). The scheme needs to be HTTPS. */ - url: Scalars["URL"]["input"]; + url: Scalars['URL']['input']; }; /** The attributes associated with an HTTP request header. */ export type HttpRequestHeader = { /** Header name. */ - name: Scalars["String"]["input"]; + name: Scalars['String']['input']; /** Header value. */ - value: Scalars["String"]["input"]; + value: Scalars['String']['input']; }; /** The HTTP request available methods. */ export enum HttpRequestMethod { /** Http GET. */ - Get = "GET", + Get = 'GET', /** Http POST. */ - Post = "POST", + Post = 'POST' } /** The attributes associated with an HTTP request policy. */ export type HttpRequestPolicy = { /** Read timeout in milliseconds. */ - readTimeoutMs: Scalars["Int"]["input"]; + readTimeoutMs: Scalars['Int']['input']; }; /** The attributes associated with an HTTP response. */ export type HttpResponse = { - __typename?: "HttpResponse"; + __typename?: 'HttpResponse'; /** * The HTTP response body as a plain string. * Use this field when the body is not in JSON format. */ - body?: Maybe; + body?: Maybe; /** An HTTP header. */ header?: Maybe; /** @@ -1958,28 +1922,29 @@ export type HttpResponse = { * To prevent increasing the function target input size unnecessarily, avoid querying * both `body` and `jsonBody` simultaneously. */ - jsonBody?: Maybe; + jsonBody?: Maybe; /** The HTTP status code. */ - status: Scalars["Int"]["output"]; + status: Scalars['Int']['output']; }; + /** The attributes associated with an HTTP response. */ export type HttpResponseHeaderArgs = { - name: Scalars["String"]["input"]; + name: Scalars['String']['input']; }; /** The attributes associated with an HTTP response header. */ export type HttpResponseHeader = { - __typename?: "HttpResponseHeader"; + __typename?: 'HttpResponseHeader'; /** Header name. */ - name: Scalars["String"]["output"]; + name: Scalars['String']['output']; /** Header value. */ - value: Scalars["String"]["output"]; + value: Scalars['String']['output']; }; /** The input object for the Function. */ export type Input = { - __typename?: "Input"; + __typename?: 'Input'; /** * The cart where the Function is running. A cart contains the merchandise that a customer intends to purchase * and information about the customer, such as the customer's email address and phone number. @@ -2020,7 +1985,7 @@ export type Input = { * For example, if a store operates in USD but a customer is viewing discounts in EUR, * then the presentment currency rate handles this conversion for accurate pricing. */ - presentmentCurrencyRate: Scalars["Decimal"]["output"]; + presentmentCurrencyRate: Scalars['Decimal']['output']; /** * Information about the shop where the Function is running, including the shop's timezone * setting and associated [metafields](https://shopify.dev/docs/apps/build/custom-data). @@ -2031,7 +1996,7 @@ export type Input = { * This input is only available in the `cart.lines.discounts.generate.run` and * `cart.delivery-options.discounts.generate.run` extension targets. */ - triggeringDiscountCode?: Maybe; + triggeringDiscountCode?: Maybe; }; /** @@ -2039,7 +2004,7 @@ export type Input = { * This includes product descriptions and customer communications that resonate with the target audience. */ export type Language = { - __typename?: "Language"; + __typename?: 'Language'; /** The ISO code. */ isoCode: LanguageCode; }; @@ -2047,287 +2012,287 @@ export type Language = { /** Language codes supported by Shopify. */ export enum LanguageCode { /** Afrikaans. */ - Af = "AF", + Af = 'AF', /** Akan. */ - Ak = "AK", + Ak = 'AK', /** Amharic. */ - Am = "AM", + Am = 'AM', /** Arabic. */ - Ar = "AR", + Ar = 'AR', /** Assamese. */ - As = "AS", + As = 'AS', /** Azerbaijani. */ - Az = "AZ", + Az = 'AZ', /** Belarusian. */ - Be = "BE", + Be = 'BE', /** Bulgarian. */ - Bg = "BG", + Bg = 'BG', /** Bambara. */ - Bm = "BM", + Bm = 'BM', /** Bangla. */ - Bn = "BN", + Bn = 'BN', /** Tibetan. */ - Bo = "BO", + Bo = 'BO', /** Breton. */ - Br = "BR", + Br = 'BR', /** Bosnian. */ - Bs = "BS", + Bs = 'BS', /** Catalan. */ - Ca = "CA", + Ca = 'CA', /** Chechen. */ - Ce = "CE", + Ce = 'CE', /** Central Kurdish. */ - Ckb = "CKB", + Ckb = 'CKB', /** Czech. */ - Cs = "CS", + Cs = 'CS', /** Church Slavic. */ - Cu = "CU", + Cu = 'CU', /** Welsh. */ - Cy = "CY", + Cy = 'CY', /** Danish. */ - Da = "DA", + Da = 'DA', /** German. */ - De = "DE", + De = 'DE', /** Dzongkha. */ - Dz = "DZ", + Dz = 'DZ', /** Ewe. */ - Ee = "EE", + Ee = 'EE', /** Greek. */ - El = "EL", + El = 'EL', /** English. */ - En = "EN", + En = 'EN', /** Esperanto. */ - Eo = "EO", + Eo = 'EO', /** Spanish. */ - Es = "ES", + Es = 'ES', /** Estonian. */ - Et = "ET", + Et = 'ET', /** Basque. */ - Eu = "EU", + Eu = 'EU', /** Persian. */ - Fa = "FA", + Fa = 'FA', /** Fulah. */ - Ff = "FF", + Ff = 'FF', /** Finnish. */ - Fi = "FI", + Fi = 'FI', /** Filipino. */ - Fil = "FIL", + Fil = 'FIL', /** Faroese. */ - Fo = "FO", + Fo = 'FO', /** French. */ - Fr = "FR", + Fr = 'FR', /** Western Frisian. */ - Fy = "FY", + Fy = 'FY', /** Irish. */ - Ga = "GA", + Ga = 'GA', /** Scottish Gaelic. */ - Gd = "GD", + Gd = 'GD', /** Galician. */ - Gl = "GL", + Gl = 'GL', /** Gujarati. */ - Gu = "GU", + Gu = 'GU', /** Manx. */ - Gv = "GV", + Gv = 'GV', /** Hausa. */ - Ha = "HA", + Ha = 'HA', /** Hebrew. */ - He = "HE", + He = 'HE', /** Hindi. */ - Hi = "HI", + Hi = 'HI', /** Croatian. */ - Hr = "HR", + Hr = 'HR', /** Hungarian. */ - Hu = "HU", + Hu = 'HU', /** Armenian. */ - Hy = "HY", + Hy = 'HY', /** Interlingua. */ - Ia = "IA", + Ia = 'IA', /** Indonesian. */ - Id = "ID", + Id = 'ID', /** Igbo. */ - Ig = "IG", + Ig = 'IG', /** Sichuan Yi. */ - Ii = "II", + Ii = 'II', /** Icelandic. */ - Is = "IS", + Is = 'IS', /** Italian. */ - It = "IT", + It = 'IT', /** Japanese. */ - Ja = "JA", + Ja = 'JA', /** Javanese. */ - Jv = "JV", + Jv = 'JV', /** Georgian. */ - Ka = "KA", + Ka = 'KA', /** Kikuyu. */ - Ki = "KI", + Ki = 'KI', /** Kazakh. */ - Kk = "KK", + Kk = 'KK', /** Kalaallisut. */ - Kl = "KL", + Kl = 'KL', /** Khmer. */ - Km = "KM", + Km = 'KM', /** Kannada. */ - Kn = "KN", + Kn = 'KN', /** Korean. */ - Ko = "KO", + Ko = 'KO', /** Kashmiri. */ - Ks = "KS", + Ks = 'KS', /** Kurdish. */ - Ku = "KU", + Ku = 'KU', /** Cornish. */ - Kw = "KW", + Kw = 'KW', /** Kyrgyz. */ - Ky = "KY", + Ky = 'KY', /** Luxembourgish. */ - Lb = "LB", + Lb = 'LB', /** Ganda. */ - Lg = "LG", + Lg = 'LG', /** Lingala. */ - Ln = "LN", + Ln = 'LN', /** Lao. */ - Lo = "LO", + Lo = 'LO', /** Lithuanian. */ - Lt = "LT", + Lt = 'LT', /** Luba-Katanga. */ - Lu = "LU", + Lu = 'LU', /** Latvian. */ - Lv = "LV", + Lv = 'LV', /** Malagasy. */ - Mg = "MG", + Mg = 'MG', /** Māori. */ - Mi = "MI", + Mi = 'MI', /** Macedonian. */ - Mk = "MK", + Mk = 'MK', /** Malayalam. */ - Ml = "ML", + Ml = 'ML', /** Mongolian. */ - Mn = "MN", + Mn = 'MN', /** Marathi. */ - Mr = "MR", + Mr = 'MR', /** Malay. */ - Ms = "MS", + Ms = 'MS', /** Maltese. */ - Mt = "MT", + Mt = 'MT', /** Burmese. */ - My = "MY", + My = 'MY', /** Norwegian (Bokmål). */ - Nb = "NB", + Nb = 'NB', /** North Ndebele. */ - Nd = "ND", + Nd = 'ND', /** Nepali. */ - Ne = "NE", + Ne = 'NE', /** Dutch. */ - Nl = "NL", + Nl = 'NL', /** Norwegian Nynorsk. */ - Nn = "NN", + Nn = 'NN', /** Norwegian. */ - No = "NO", + No = 'NO', /** Oromo. */ - Om = "OM", + Om = 'OM', /** Odia. */ - Or = "OR", + Or = 'OR', /** Ossetic. */ - Os = "OS", + Os = 'OS', /** Punjabi. */ - Pa = "PA", + Pa = 'PA', /** Polish. */ - Pl = "PL", + Pl = 'PL', /** Pashto. */ - Ps = "PS", + Ps = 'PS', /** Portuguese. */ - Pt = "PT", + Pt = 'PT', /** Portuguese (Brazil). */ - PtBr = "PT_BR", + PtBr = 'PT_BR', /** Portuguese (Portugal). */ - PtPt = "PT_PT", + PtPt = 'PT_PT', /** Quechua. */ - Qu = "QU", + Qu = 'QU', /** Romansh. */ - Rm = "RM", + Rm = 'RM', /** Rundi. */ - Rn = "RN", + Rn = 'RN', /** Romanian. */ - Ro = "RO", + Ro = 'RO', /** Russian. */ - Ru = "RU", + Ru = 'RU', /** Kinyarwanda. */ - Rw = "RW", + Rw = 'RW', /** Sanskrit. */ - Sa = "SA", + Sa = 'SA', /** Sardinian. */ - Sc = "SC", + Sc = 'SC', /** Sindhi. */ - Sd = "SD", + Sd = 'SD', /** Northern Sami. */ - Se = "SE", + Se = 'SE', /** Sango. */ - Sg = "SG", + Sg = 'SG', /** Sinhala. */ - Si = "SI", + Si = 'SI', /** Slovak. */ - Sk = "SK", + Sk = 'SK', /** Slovenian. */ - Sl = "SL", + Sl = 'SL', /** Shona. */ - Sn = "SN", + Sn = 'SN', /** Somali. */ - So = "SO", + So = 'SO', /** Albanian. */ - Sq = "SQ", + Sq = 'SQ', /** Serbian. */ - Sr = "SR", + Sr = 'SR', /** Sundanese. */ - Su = "SU", + Su = 'SU', /** Swedish. */ - Sv = "SV", + Sv = 'SV', /** Swahili. */ - Sw = "SW", + Sw = 'SW', /** Tamil. */ - Ta = "TA", + Ta = 'TA', /** Telugu. */ - Te = "TE", + Te = 'TE', /** Tajik. */ - Tg = "TG", + Tg = 'TG', /** Thai. */ - Th = "TH", + Th = 'TH', /** Tigrinya. */ - Ti = "TI", + Ti = 'TI', /** Turkmen. */ - Tk = "TK", + Tk = 'TK', /** Tongan. */ - To = "TO", + To = 'TO', /** Turkish. */ - Tr = "TR", + Tr = 'TR', /** Tatar. */ - Tt = "TT", + Tt = 'TT', /** Uyghur. */ - Ug = "UG", + Ug = 'UG', /** Ukrainian. */ - Uk = "UK", + Uk = 'UK', /** Urdu. */ - Ur = "UR", + Ur = 'UR', /** Uzbek. */ - Uz = "UZ", + Uz = 'UZ', /** Vietnamese. */ - Vi = "VI", + Vi = 'VI', /** Volapük. */ - Vo = "VO", + Vo = 'VO', /** Wolof. */ - Wo = "WO", + Wo = 'WO', /** Xhosa. */ - Xh = "XH", + Xh = 'XH', /** Yiddish. */ - Yi = "YI", + Yi = 'YI', /** Yoruba. */ - Yo = "YO", + Yo = 'YO', /** Chinese. */ - Zh = "ZH", + Zh = 'ZH', /** Chinese (Simplified). */ - ZhCn = "ZH_CN", + ZhCn = 'ZH_CN', /** Chinese (Traditional). */ - ZhTw = "ZH_TW", + ZhTw = 'ZH_TW', /** Zulu. */ - Zu = "ZU", + Zu = 'ZU' } /** @@ -2335,71 +2300,77 @@ export enum LanguageCode { * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTime = { - __typename?: "LocalTime"; + __typename?: 'LocalTime'; /** The current date relative to the parent object. */ - date: Scalars["Date"]["output"]; + date: Scalars['Date']['output']; /** Returns true if the current date and time is at or past the given date and time, and false otherwise. */ - dateTimeAfter: Scalars["Boolean"]["output"]; + dateTimeAfter: Scalars['Boolean']['output']; /** Returns true if the current date and time is before the given date and time, and false otherwise. */ - dateTimeBefore: Scalars["Boolean"]["output"]; + dateTimeBefore: Scalars['Boolean']['output']; /** Returns true if the current date and time is between the two given date and times, and false otherwise. */ - dateTimeBetween: Scalars["Boolean"]["output"]; + dateTimeBetween: Scalars['Boolean']['output']; /** Returns true if the current time is at or past the given time, and false otherwise. */ - timeAfter: Scalars["Boolean"]["output"]; + timeAfter: Scalars['Boolean']['output']; /** Returns true if the current time is at or past the given time, and false otherwise. */ - timeBefore: Scalars["Boolean"]["output"]; + timeBefore: Scalars['Boolean']['output']; /** Returns true if the current time is between the two given times, and false otherwise. */ - timeBetween: Scalars["Boolean"]["output"]; + timeBetween: Scalars['Boolean']['output']; }; + /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTimeDateTimeAfterArgs = { - dateTime: Scalars["DateTimeWithoutTimezone"]["input"]; + dateTime: Scalars['DateTimeWithoutTimezone']['input']; }; + /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTimeDateTimeBeforeArgs = { - dateTime: Scalars["DateTimeWithoutTimezone"]["input"]; + dateTime: Scalars['DateTimeWithoutTimezone']['input']; }; + /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTimeDateTimeBetweenArgs = { - endDateTime: Scalars["DateTimeWithoutTimezone"]["input"]; - startDateTime: Scalars["DateTimeWithoutTimezone"]["input"]; + endDateTime: Scalars['DateTimeWithoutTimezone']['input']; + startDateTime: Scalars['DateTimeWithoutTimezone']['input']; }; + /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTimeTimeAfterArgs = { - time: Scalars["TimeWithoutTimezone"]["input"]; + time: Scalars['TimeWithoutTimezone']['input']; }; + /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTimeTimeBeforeArgs = { - time: Scalars["TimeWithoutTimezone"]["input"]; + time: Scalars['TimeWithoutTimezone']['input']; }; + /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTimeTimeBetweenArgs = { - endTime: Scalars["TimeWithoutTimezone"]["input"]; - startTime: Scalars["TimeWithoutTimezone"]["input"]; + endTime: Scalars['TimeWithoutTimezone']['input']; + startTime: Scalars['TimeWithoutTimezone']['input']; }; /** @@ -2409,7 +2380,7 @@ export type LocalTimeTimeBetweenArgs = { * products in a store. */ export type Localization = { - __typename?: "Localization"; + __typename?: 'Localization'; /** * The country for which the store is customized, reflecting local preferences and regulations. * Localization might influence the language, currency, and product offerings available in a store to enhance @@ -2435,102 +2406,102 @@ export type Localization = { * identification numbers. */ export type LocalizedField = { - __typename?: "LocalizedField"; + __typename?: 'LocalizedField'; /** The key of the localized field. */ key: LocalizedFieldKey; /** The title of the localized field. */ - title: Scalars["String"]["output"]; + title: Scalars['String']['output']; /** The value of the localized field. */ - value?: Maybe; + value?: Maybe; }; /** Unique key identifying localized fields. */ export enum LocalizedFieldKey { /** Localized field key 'shipping_credential_br' for country Brazil. */ - ShippingCredentialBr = "SHIPPING_CREDENTIAL_BR", + ShippingCredentialBr = 'SHIPPING_CREDENTIAL_BR', /** Localized field key 'shipping_credential_cl' for country Chile. */ - ShippingCredentialCl = "SHIPPING_CREDENTIAL_CL", + ShippingCredentialCl = 'SHIPPING_CREDENTIAL_CL', /** Localized field key 'shipping_credential_cn' for country China. */ - ShippingCredentialCn = "SHIPPING_CREDENTIAL_CN", + ShippingCredentialCn = 'SHIPPING_CREDENTIAL_CN', /** Localized field key 'shipping_credential_co' for country Colombia. */ - ShippingCredentialCo = "SHIPPING_CREDENTIAL_CO", + ShippingCredentialCo = 'SHIPPING_CREDENTIAL_CO', /** Localized field key 'shipping_credential_cr' for country Costa Rica. */ - ShippingCredentialCr = "SHIPPING_CREDENTIAL_CR", + ShippingCredentialCr = 'SHIPPING_CREDENTIAL_CR', /** Localized field key 'shipping_credential_ec' for country Ecuador. */ - ShippingCredentialEc = "SHIPPING_CREDENTIAL_EC", + ShippingCredentialEc = 'SHIPPING_CREDENTIAL_EC', /** Localized field key 'shipping_credential_es' for country Spain. */ - ShippingCredentialEs = "SHIPPING_CREDENTIAL_ES", + ShippingCredentialEs = 'SHIPPING_CREDENTIAL_ES', /** Localized field key 'shipping_credential_gt' for country Guatemala. */ - ShippingCredentialGt = "SHIPPING_CREDENTIAL_GT", + ShippingCredentialGt = 'SHIPPING_CREDENTIAL_GT', /** Localized field key 'shipping_credential_id' for country Indonesia. */ - ShippingCredentialId = "SHIPPING_CREDENTIAL_ID", + ShippingCredentialId = 'SHIPPING_CREDENTIAL_ID', /** Localized field key 'shipping_credential_kr' for country South Korea. */ - ShippingCredentialKr = "SHIPPING_CREDENTIAL_KR", + ShippingCredentialKr = 'SHIPPING_CREDENTIAL_KR', /** Localized field key 'shipping_credential_mx' for country Mexico. */ - ShippingCredentialMx = "SHIPPING_CREDENTIAL_MX", + ShippingCredentialMx = 'SHIPPING_CREDENTIAL_MX', /** Localized field key 'shipping_credential_my' for country Malaysia. */ - ShippingCredentialMy = "SHIPPING_CREDENTIAL_MY", + ShippingCredentialMy = 'SHIPPING_CREDENTIAL_MY', /** Localized field key 'shipping_credential_pe' for country Peru. */ - ShippingCredentialPe = "SHIPPING_CREDENTIAL_PE", + ShippingCredentialPe = 'SHIPPING_CREDENTIAL_PE', /** Localized field key 'shipping_credential_pt' for country Portugal. */ - ShippingCredentialPt = "SHIPPING_CREDENTIAL_PT", + ShippingCredentialPt = 'SHIPPING_CREDENTIAL_PT', /** Localized field key 'shipping_credential_py' for country Paraguay. */ - ShippingCredentialPy = "SHIPPING_CREDENTIAL_PY", + ShippingCredentialPy = 'SHIPPING_CREDENTIAL_PY', /** Localized field key 'shipping_credential_tr' for country Turkey. */ - ShippingCredentialTr = "SHIPPING_CREDENTIAL_TR", + ShippingCredentialTr = 'SHIPPING_CREDENTIAL_TR', /** Localized field key 'shipping_credential_tw' for country Taiwan. */ - ShippingCredentialTw = "SHIPPING_CREDENTIAL_TW", + ShippingCredentialTw = 'SHIPPING_CREDENTIAL_TW', /** Localized field key 'shipping_credential_type_co' for country Colombia. */ - ShippingCredentialTypeCo = "SHIPPING_CREDENTIAL_TYPE_CO", + ShippingCredentialTypeCo = 'SHIPPING_CREDENTIAL_TYPE_CO', /** Localized field key 'tax_credential_br' for country Brazil. */ - TaxCredentialBr = "TAX_CREDENTIAL_BR", + TaxCredentialBr = 'TAX_CREDENTIAL_BR', /** Localized field key 'tax_credential_cl' for country Chile. */ - TaxCredentialCl = "TAX_CREDENTIAL_CL", + TaxCredentialCl = 'TAX_CREDENTIAL_CL', /** Localized field key 'tax_credential_co' for country Colombia. */ - TaxCredentialCo = "TAX_CREDENTIAL_CO", + TaxCredentialCo = 'TAX_CREDENTIAL_CO', /** Localized field key 'tax_credential_cr' for country Costa Rica. */ - TaxCredentialCr = "TAX_CREDENTIAL_CR", + TaxCredentialCr = 'TAX_CREDENTIAL_CR', /** Localized field key 'tax_credential_ec' for country Ecuador. */ - TaxCredentialEc = "TAX_CREDENTIAL_EC", + TaxCredentialEc = 'TAX_CREDENTIAL_EC', /** Localized field key 'tax_credential_es' for country Spain. */ - TaxCredentialEs = "TAX_CREDENTIAL_ES", + TaxCredentialEs = 'TAX_CREDENTIAL_ES', /** Localized field key 'tax_credential_gt' for country Guatemala. */ - TaxCredentialGt = "TAX_CREDENTIAL_GT", + TaxCredentialGt = 'TAX_CREDENTIAL_GT', /** Localized field key 'tax_credential_id' for country Indonesia. */ - TaxCredentialId = "TAX_CREDENTIAL_ID", + TaxCredentialId = 'TAX_CREDENTIAL_ID', /** Localized field key 'tax_credential_it' for country Italy. */ - TaxCredentialIt = "TAX_CREDENTIAL_IT", + TaxCredentialIt = 'TAX_CREDENTIAL_IT', /** Localized field key 'tax_credential_mx' for country Mexico. */ - TaxCredentialMx = "TAX_CREDENTIAL_MX", + TaxCredentialMx = 'TAX_CREDENTIAL_MX', /** Localized field key 'tax_credential_my' for country Malaysia. */ - TaxCredentialMy = "TAX_CREDENTIAL_MY", + TaxCredentialMy = 'TAX_CREDENTIAL_MY', /** Localized field key 'tax_credential_pe' for country Peru. */ - TaxCredentialPe = "TAX_CREDENTIAL_PE", + TaxCredentialPe = 'TAX_CREDENTIAL_PE', /** Localized field key 'tax_credential_pt' for country Portugal. */ - TaxCredentialPt = "TAX_CREDENTIAL_PT", + TaxCredentialPt = 'TAX_CREDENTIAL_PT', /** Localized field key 'tax_credential_py' for country Paraguay. */ - TaxCredentialPy = "TAX_CREDENTIAL_PY", + TaxCredentialPy = 'TAX_CREDENTIAL_PY', /** Localized field key 'tax_credential_tr' for country Turkey. */ - TaxCredentialTr = "TAX_CREDENTIAL_TR", + TaxCredentialTr = 'TAX_CREDENTIAL_TR', /** Localized field key 'tax_credential_type_co' for country Colombia. */ - TaxCredentialTypeCo = "TAX_CREDENTIAL_TYPE_CO", + TaxCredentialTypeCo = 'TAX_CREDENTIAL_TYPE_CO', /** Localized field key 'tax_credential_type_mx' for country Mexico. */ - TaxCredentialTypeMx = "TAX_CREDENTIAL_TYPE_MX", + TaxCredentialTypeMx = 'TAX_CREDENTIAL_TYPE_MX', /** Localized field key 'tax_credential_use_mx' for country Mexico. */ - TaxCredentialUseMx = "TAX_CREDENTIAL_USE_MX", + TaxCredentialUseMx = 'TAX_CREDENTIAL_USE_MX', /** Localized field key 'tax_email_it' for country Italy. */ - TaxEmailIt = "TAX_EMAIL_IT", + TaxEmailIt = 'TAX_EMAIL_IT' } /** Represents the location where the inventory resides. */ export type Location = HasMetafields & { - __typename?: "Location"; + __typename?: 'Location'; /** The address of this location. */ address: LocationAddress; /** The location handle. */ - handle: Scalars["Handle"]["output"]; + handle: Scalars['Handle']['output']; /** The location id. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -2540,78 +2511,79 @@ export type Location = HasMetafields & { */ metafield?: Maybe; /** The name of the location. */ - name: Scalars["String"]["output"]; + name: Scalars['String']['output']; }; + /** Represents the location where the inventory resides. */ export type LocationMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** Represents the address of a location. */ export type LocationAddress = { - __typename?: "LocationAddress"; + __typename?: 'LocationAddress'; /** The first line of the address for the location. */ - address1?: Maybe; + address1?: Maybe; /** The second line of the address for the location. */ - address2?: Maybe; + address2?: Maybe; /** The city of the location. */ - city?: Maybe; + city?: Maybe; /** The country of the location. */ - country?: Maybe; + country?: Maybe; /** The country code of the location. */ - countryCode?: Maybe; + countryCode?: Maybe; /** A formatted version of the address for the location. */ - formatted: Array; + formatted: Array; /** The approximate latitude coordinates of the location. */ - latitude?: Maybe; + latitude?: Maybe; /** The approximate longitude coordinates of the location. */ - longitude?: Maybe; + longitude?: Maybe; /** The phone number of the location. */ - phone?: Maybe; + phone?: Maybe; /** The province of the location. */ - province?: Maybe; + province?: Maybe; /** The code for the province, state, or district of the address of the location. */ - provinceCode?: Maybe; + provinceCode?: Maybe; /** The ZIP code of the location. */ - zip?: Maybe; + zip?: Maybe; }; /** Represents a mailing address. */ export type MailingAddress = { - __typename?: "MailingAddress"; + __typename?: 'MailingAddress'; /** The first line of the address. Typically the street address or PO Box number. */ - address1?: Maybe; + address1?: Maybe; /** The second line of the address. Typically the number of the apartment, suite, or unit. */ - address2?: Maybe; + address2?: Maybe; /** The name of the city, district, village, or town. */ - city?: Maybe; + city?: Maybe; /** The name of the customer's company or organization. */ - company?: Maybe; + company?: Maybe; /** The two-letter code for the country of the address. For example, US. */ countryCode?: Maybe; /** The first name of the customer. */ - firstName?: Maybe; + firstName?: Maybe; /** The last name of the customer. */ - lastName?: Maybe; + lastName?: Maybe; /** The approximate latitude of the address. */ - latitude?: Maybe; + latitude?: Maybe; /** The approximate longitude of the address. */ - longitude?: Maybe; + longitude?: Maybe; /** * The market of the address. * @deprecated This `market` field will be removed in a future version of the API. */ market?: Maybe; /** The full name of the customer, based on firstName and lastName. */ - name?: Maybe; + name?: Maybe; /** A unique phone number for the customer. Formatted using E.164 standard. For example, +16135551111. */ - phone?: Maybe; + phone?: Maybe; /** The alphanumeric code for the region. For example, ON. */ - provinceCode?: Maybe; + provinceCode?: Maybe; /** The zip or postal code of the address. */ - zip?: Maybe; + zip?: Maybe; }; /** @@ -2623,11 +2595,11 @@ export type MailingAddress = { * or [add market-specific domains or subfolders](https://shopify.dev/api/admin-graphql/current/objects/MarketWebPresence). */ export type Market = HasMetafields & { - __typename?: "Market"; + __typename?: 'Market'; /** A human-readable unique string for the market automatically generated from its title. */ - handle: Scalars["Handle"]["output"]; + handle: Scalars['Handle']['output']; /** A globally-unique identifier. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -2640,6 +2612,7 @@ export type Market = HasMetafields & { regions: Array; }; + /** * A market is a group of one or more regions that you want to target for international sales. * By creating a market, you can configure a distinct, localized shopping experience for @@ -2649,23 +2622,23 @@ export type Market = HasMetafields & { * or [add market-specific domains or subfolders](https://shopify.dev/api/admin-graphql/current/objects/MarketWebPresence). */ export type MarketMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** Represents a region. */ export type MarketRegion = { /** The name of the region in the language of the current localization. */ - name?: Maybe; + name?: Maybe; }; /** A country which comprises a market. */ export type MarketRegionCountry = MarketRegion & { - __typename?: "MarketRegionCountry"; + __typename?: 'MarketRegionCountry'; /** The two-letter code for the country. */ code: CountryCode; /** The country name in the language of the current localization. */ - name: Scalars["String"]["output"]; + name: Scalars['String']['output']; }; /** @@ -2691,19 +2664,19 @@ export type Merchandise = CustomProduct | ProductVariant; * enables you to customize the checkout experience. */ export type Metafield = { - __typename?: "Metafield"; + __typename?: 'Metafield'; /** The data that's stored in the metafield, using JSON format. */ - jsonValue: Scalars["JSON"]["output"]; + jsonValue: Scalars['JSON']['output']; /** * The [type of data](https://shopify.dev/apps/metafields/types) that the metafield stores in * the `value` field. */ - type: Scalars["String"]["output"]; + type: Scalars['String']['output']; /** * The data that's stored in the metafield. The data is always stored as a string, * regardless of the [metafield's type](https://shopify.dev/apps/metafields/types). */ - value: Scalars["String"]["output"]; + value: Scalars['String']['output']; }; /** @@ -2712,12 +2685,12 @@ export type Metafield = { * values throughout the API. For example, 12.99 USD. */ export type MoneyV2 = { - __typename?: "MoneyV2"; + __typename?: 'MoneyV2'; /** * A monetary value in decimal format, allowing for precise representation of cents or fractional * currency. For example, 12.99. */ - amount: Scalars["Decimal"]["output"]; + amount: Scalars['Decimal']['output']; /** * The three-letter currency code that represents a world currency used in a store. Currency codes * include standard [standard ISO 4217 codes](https://en.wikipedia.org/wiki/ISO_4217), legacy codes, @@ -2728,32 +2701,36 @@ export type MoneyV2 = { /** The root mutation for the API. */ export type MutationRoot = { - __typename?: "MutationRoot"; + __typename?: 'MutationRoot'; /** Handles the Function result for the cart.delivery-options.discounts.generate.fetch target. */ - cartDeliveryOptionsDiscountsGenerateFetch: Scalars["Void"]["output"]; + cartDeliveryOptionsDiscountsGenerateFetch: Scalars['Void']['output']; /** Handles the Function result for the cart.delivery-options.discounts.generate.run target. */ - cartDeliveryOptionsDiscountsGenerateRun: Scalars["Void"]["output"]; + cartDeliveryOptionsDiscountsGenerateRun: Scalars['Void']['output']; /** Handles the Function result for the cart.lines.discounts.generate.fetch target. */ - cartLinesDiscountsGenerateFetch: Scalars["Void"]["output"]; + cartLinesDiscountsGenerateFetch: Scalars['Void']['output']; /** Handles the Function result for the cart.lines.discounts.generate.run target. */ - cartLinesDiscountsGenerateRun: Scalars["Void"]["output"]; + cartLinesDiscountsGenerateRun: Scalars['Void']['output']; }; + /** The root mutation for the API. */ export type MutationRootCartDeliveryOptionsDiscountsGenerateFetchArgs = { result: CartDeliveryOptionsDiscountsGenerateFetchResult; }; + /** The root mutation for the API. */ export type MutationRootCartDeliveryOptionsDiscountsGenerateRunArgs = { result: CartDeliveryOptionsDiscountsGenerateRunResult; }; + /** The root mutation for the API. */ export type MutationRootCartLinesDiscountsGenerateFetchArgs = { result: CartLinesDiscountsGenerateFetchResult; }; + /** The root mutation for the API. */ export type MutationRootCartLinesDiscountsGenerateRunArgs = { result: CartLinesDiscountsGenerateRunResult; @@ -2775,7 +2752,7 @@ export type OrderDiscountCandidate = { * message, such as "Save 20% on all t-shirts." If a discount code is entered, * the notification displays the code instead. */ - message?: InputMaybe; + message?: InputMaybe; /** The targets of the order discount candidate. */ targets: Array; /** The value of the order discount candidate. */ @@ -2789,20 +2766,21 @@ export type OrderDiscountCandidateTarget = * order before any taxes, shipping fees, or discounts are applied. For example, if a customer places an order * for a t-shirt and a pair of shoes, then the subtotal is the sum of the prices of those items. */ - { orderSubtotal: OrderSubtotalTarget }; + { orderSubtotal: OrderSubtotalTarget; }; /** The value of the order discount candidate. */ export type OrderDiscountCandidateValue = /** A fixed amount value. */ - | { fixedAmount: FixedAmount; percentage?: never } /** A percentage value. */ - | { fixedAmount?: never; percentage: Percentage }; + { fixedAmount: FixedAmount; percentage?: never; } + | /** A percentage value. */ + { fixedAmount?: never; percentage: Percentage; }; /** The strategy that's applied to the list of order discount candidates. */ export enum OrderDiscountSelectionStrategy { /** Only apply the first order discount candidate with conditions that are satisfied. */ - First = "FIRST", + First = 'FIRST', /** Only apply the order discount candidate that offers the maximum reduction. */ - Maximum = "MAXIMUM", + Maximum = 'MAXIMUM' } /** An operation that applies order discounts to a cart that share a selection strategy. */ @@ -2816,9 +2794,9 @@ export type OrderDiscountsAddOperation = { /** The condition for checking the minimum subtotal amount of the order. */ export type OrderMinimumSubtotal = { /** Cart line IDs with a merchandise line price that's excluded to calculate the minimum subtotal amount of the order. */ - excludedCartLineIds: Array; + excludedCartLineIds: Array; /** The minimum subtotal amount of the order to be eligible for the discount in the shop's currency. */ - minimumAmount: Scalars["Decimal"]["input"]; + minimumAmount: Scalars['Decimal']['input']; }; /** @@ -2831,7 +2809,7 @@ export type OrderSubtotalTarget = { * The list of excluded cart line IDs. These cart lines are excluded from the order * subtotal calculation when calculating the maximum value of the discount. */ - excludedCartLineIds: Array; + excludedCartLineIds: Array; }; /** A percentage value. */ @@ -2841,7 +2819,7 @@ export type Percentage = { * * The value is validated against: >= 0 and <= 100. */ - value: Scalars["Decimal"]["input"]; + value: Scalars['Decimal']['input']; }; /** @@ -2852,25 +2830,25 @@ export type Percentage = { * Learn more about [managing products in a merchant's store](https://help.shopify.com/manual/products). */ export type Product = HasMetafields & { - __typename?: "Product"; + __typename?: 'Product'; /** * A unique, human-readable string of the product's title. A handle can contain letters, hyphens (`-`), and * numbers, but not spaces. The handle is used in the online store URL for the product. For example, if a product * is titled "Black Sunglasses", then the handle is `black-sunglasses`. */ - handle: Scalars["Handle"]["output"]; + handle: Scalars['Handle']['output']; /** * Whether the product is associated with any of the specified tags. The product must have at least one tag * from the list to return `true`. */ - hasAnyTag: Scalars["Boolean"]["output"]; + hasAnyTag: Scalars['Boolean']['output']; /** Whether the product is associated with the specified tags. */ hasTags: Array; /** * A [globally-unique ID](https://shopify.dev/docs/api/usage/gids) * for the product. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** * Whether the product is in any of the specified collections. The product must be in at least one collection * from the list to return `true`. @@ -2879,7 +2857,7 @@ export type Product = HasMetafields & { * categories, which makes it easy for customers to find them. For example, an athletics store might create * different collections for running attire and accessories. */ - inAnyCollection: Scalars["Boolean"]["output"]; + inAnyCollection: Scalars['Boolean']['output']; /** * Whether the product is in the specified collections. The product must be in all of the collections in the * list to return `true`. @@ -2890,7 +2868,7 @@ export type Product = HasMetafields & { */ inCollections: Array; /** Whether the product is a gift card. */ - isGiftCard: Scalars["Boolean"]["output"]; + isGiftCard: Scalars['Boolean']['output']; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -2904,17 +2882,18 @@ export type Product = HasMetafields & { * ones available in Shopify's * [standard product categories](https://help.shopify.com/manual/products/details/product-type). */ - productType?: Maybe; + productType?: Maybe; /** * The localized name for the product that displays to customers. The title is used to construct the product's * handle, which is a unique, human-readable string of the product's title. For example, if a product is titled * "Black Sunglasses", then the handle is `black-sunglasses`. */ - title: Scalars["String"]["output"]; + title: Scalars['String']['output']; /** The name of the product's vendor. */ - vendor?: Maybe; + vendor?: Maybe; }; + /** * The goods and services that merchants offer to customers. Products can include details such as * title, vendor, and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). @@ -2923,9 +2902,10 @@ export type Product = HasMetafields & { * Learn more about [managing products in a merchant's store](https://help.shopify.com/manual/products). */ export type ProductHasAnyTagArgs = { - tags?: Array; + tags?: Array; }; + /** * The goods and services that merchants offer to customers. Products can include details such as * title, vendor, and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). @@ -2934,9 +2914,10 @@ export type ProductHasAnyTagArgs = { * Learn more about [managing products in a merchant's store](https://help.shopify.com/manual/products). */ export type ProductHasTagsArgs = { - tags?: Array; + tags?: Array; }; + /** * The goods and services that merchants offer to customers. Products can include details such as * title, vendor, and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). @@ -2945,9 +2926,10 @@ export type ProductHasTagsArgs = { * Learn more about [managing products in a merchant's store](https://help.shopify.com/manual/products). */ export type ProductInAnyCollectionArgs = { - ids?: Array; + ids?: Array; }; + /** * The goods and services that merchants offer to customers. Products can include details such as * title, vendor, and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). @@ -2956,9 +2938,10 @@ export type ProductInAnyCollectionArgs = { * Learn more about [managing products in a merchant's store](https://help.shopify.com/manual/products). */ export type ProductInCollectionsArgs = { - ids?: Array; + ids?: Array; }; + /** * The goods and services that merchants offer to customers. Products can include details such as * title, vendor, and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). @@ -2967,8 +2950,8 @@ export type ProductInCollectionsArgs = { * Learn more about [managing products in a merchant's store](https://help.shopify.com/manual/products). */ export type ProductMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** The target and value of the discount to be applied to a cart line. */ @@ -2985,7 +2968,7 @@ export type ProductDiscountCandidate = { * message, such as "Save 20% on all t-shirts." If a discount code is entered, * the notification displays the code instead. */ - message?: InputMaybe; + message?: InputMaybe; /** The targets of the discount to be applied to a cart line. */ targets: Array; /** @@ -3005,14 +2988,14 @@ export type ProductDiscountCandidateFixedAmount = { * The [fixed-amount](https://help.shopify.com/manual/international/pricing/discounts) value of the discount to be applied to a cart line, in the currency of the * cart. The amount must be greater than or equal to 0. */ - amount: Scalars["Decimal"]["input"]; + amount: Scalars['Decimal']['input']; /** * Whether to apply the value of each eligible discount to each eligible cart line. * * The default value is `false`, which causes the value to be applied once across the entitled items. * When the value is `true`, the value will be applied to each of the entitled items. */ - appliesToEachItem?: InputMaybe; + appliesToEachItem?: InputMaybe; }; /** @@ -3030,7 +3013,7 @@ export type ProductDiscountCandidateTarget = * customer's cart that represents a single unit of a product variant. For example, if a customer adds two * different sizes of the same t-shirt to their cart, then each size is represented as a separate cart line. */ - { cartLine: CartLineTarget }; + { cartLine: CartLineTarget; }; /** The value of the discount candidate to be applied to a cart line. */ export type ProductDiscountCandidateValue = @@ -3038,20 +3021,18 @@ export type ProductDiscountCandidateValue = * The [fixed-amount](https://help.shopify.com/manual/international/pricing/discounts) value of the discount to be applied to a cart line. For example, if the cart * total is $100 and the discount is $10, then the fixed amount is $10. */ - | { - fixedAmount: ProductDiscountCandidateFixedAmount; - percentage?: never; - } /** A percentage value. */ - | { fixedAmount?: never; percentage: Percentage }; + { fixedAmount: ProductDiscountCandidateFixedAmount; percentage?: never; } + | /** A percentage value. */ + { fixedAmount?: never; percentage: Percentage; }; /** The selection strategy that's applied to the list of discounts that are eligible for cart lines. */ export enum ProductDiscountSelectionStrategy { /** Apply all the discount candidates to eligible cart lines. This doesn't override discount combination or stacking rules. */ - All = "ALL", + All = 'ALL', /** Apply the first discount candidate to cart lines that satisfies conditions. */ - First = "FIRST", + First = 'FIRST', /** Apply the discount to the cart line that offers the maximum reduction. */ - Maximum = "MAXIMUM", + Maximum = 'MAXIMUM' } /** An operation that applies product discounts to a cart that share a selection strategy. */ @@ -3068,12 +3049,12 @@ export type ProductDiscountsAddOperation = { * product variant and a large, blue t-shirt would be another. */ export type ProductVariant = HasMetafields & { - __typename?: "ProductVariant"; + __typename?: 'ProductVariant'; /** * A [globally-unique ID](https://shopify.dev/docs/api/usage/gids) * for the product variant. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -3094,29 +3075,30 @@ export type ProductVariant = HasMetafields & { * digital gift card doesn't need to be shipped, but a t-shirt does * need to be shipped. */ - requiresShipping: Scalars["Boolean"]["output"]; + requiresShipping: Scalars['Boolean']['output']; /** * A case-sensitive identifier for the product variant in the merchant's store. For example, `"BBC-1"`. * A product variant must have a SKU to be connected to a * [fulfillment service](https://shopify.dev/docs/apps/build/orders-fulfillment/fulfillment-service-apps/build-for-fulfillment-services). */ - sku?: Maybe; + sku?: Maybe; /** The localized name for the product variant that displays to customers. */ - title?: Maybe; + title?: Maybe; /** The product variant's weight, in the system of measurement set in the `weightUnit` field. */ - weight?: Maybe; + weight?: Maybe; /** The unit of measurement for weight. */ weightUnit: WeightUnit; }; + /** * A specific version of a product that comes in more than one option, such as size or color. For example, * if a merchant sells t-shirts with options for size and color, then a small, blue t-shirt would be one * product variant and a large, blue t-shirt would be another. */ export type ProductVariantMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** @@ -3124,7 +3106,7 @@ export type ProductVariantMetafieldArgs = { * Used to manage and track purchases made by businesses rather than individual customers. */ export type PurchasingCompany = { - __typename?: "PurchasingCompany"; + __typename?: 'PurchasingCompany'; /** The company associated to the order or draft order. */ company: Company; /** The company contact associated to the order or draft order. */ @@ -3136,16 +3118,16 @@ export type PurchasingCompany = { /** A discount code to be rejected. */ export type RejectedDiscountCode = { /** The discount code to reject. */ - code: Scalars["String"]["input"]; + code: Scalars['String']['input']; }; /** Represents how products and variants can be sold and purchased. */ export type SellingPlan = HasMetafields & { - __typename?: "SellingPlan"; + __typename?: 'SellingPlan'; /** The description of the selling plan. */ - description?: Maybe; + description?: Maybe; /** A globally-unique identifier. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -3155,15 +3137,16 @@ export type SellingPlan = HasMetafields & { */ metafield?: Maybe; /** The name of the selling plan. For example, '6 weeks of prepaid granola, delivered weekly'. */ - name: Scalars["String"]["output"]; + name: Scalars['String']['output']; /** Whether purchasing the selling plan will result in multiple deliveries. */ - recurringDeliveries: Scalars["Boolean"]["output"]; + recurringDeliveries: Scalars['Boolean']['output']; }; + /** Represents how products and variants can be sold and purchased. */ export type SellingPlanMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** @@ -3172,7 +3155,7 @@ export type SellingPlanMetafieldArgs = { * variant when purchased with a selling plan. */ export type SellingPlanAllocation = { - __typename?: "SellingPlanAllocation"; + __typename?: 'SellingPlanAllocation'; /** * 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 @@ -3192,7 +3175,7 @@ export type SellingPlanAllocation = { /** The resulting prices for variants when they're purchased with a specific selling plan. */ export type SellingPlanAllocationPriceAdjustment = { - __typename?: "SellingPlanAllocationPriceAdjustment"; + __typename?: 'SellingPlanAllocationPriceAdjustment'; /** * 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 @@ -3212,7 +3195,7 @@ export type SellingPlanAllocationPriceAdjustment = { * and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). */ export type Shop = HasMetafields & { - __typename?: "Shop"; + __typename?: 'Shop'; /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). @@ -3228,52 +3211,34 @@ export type Shop = HasMetafields & { metafield?: Maybe; }; + /** * Information about the store, including the store's timezone setting * and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). */ export type ShopMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** Units of measurement for weight. */ export enum WeightUnit { /** Metric system unit of mass. */ - Grams = "GRAMS", + Grams = 'GRAMS', /** 1 kilogram equals 1000 grams. */ - Kilograms = "KILOGRAMS", + Kilograms = 'KILOGRAMS', /** Imperial system unit of mass. */ - Ounces = "OUNCES", + Ounces = 'OUNCES', /** 1 pound equals 16 ounces. */ - Pounds = "POUNDS", + Pounds = 'POUNDS' } -export type DeliveryInputVariables = Exact<{ [key: string]: never }>; - -export type DeliveryInput = { - __typename?: "Input"; - cart: { - __typename?: "Cart"; - deliveryGroups: Array<{ __typename?: "CartDeliveryGroup"; id: string }>; - }; - discount: { __typename?: "Discount"; discountClasses: Array }; -}; - -export type CartInputVariables = Exact<{ [key: string]: never }>; - -export type CartInput = { - __typename?: "Input"; - cart: { - __typename?: "Cart"; - lines: Array<{ - __typename?: "CartLine"; - id: string; - cost: { - __typename?: "CartLineCost"; - subtotalAmount: { __typename?: "MoneyV2"; amount: any }; - }; - }>; - }; - discount: { __typename?: "Discount"; discountClasses: Array }; -}; +export type DeliveryInputVariables = Exact<{ [key: string]: never; }>; + + +export type DeliveryInput = { __typename?: 'Input', cart: { __typename?: 'Cart', deliveryGroups: Array<{ __typename?: 'CartDeliveryGroup', id: string }> }, discount: { __typename?: 'Discount', discountClasses: Array } }; + +export type CartInputVariables = Exact<{ [key: string]: never; }>; + + +export type CartInput = { __typename?: 'Input', cart: { __typename?: 'Cart', lines: Array<{ __typename?: 'CartLine', id: string, cost: { __typename?: 'CartLineCost', subtotalAmount: { __typename?: 'MoneyV2', amount: any } } }> }, discount: { __typename?: 'Discount', discountClasses: Array } }; diff --git a/examples/javascript/default/extensions/discount-function/locales/en.default.json b/examples/javascript/default/extensions/discount-function/locales/en.default.json index 0edbdc9..21ab0a7 100644 --- a/examples/javascript/default/extensions/discount-function/locales/en.default.json +++ b/examples/javascript/default/extensions/discount-function/locales/en.default.json @@ -1,4 +1,4 @@ { - "name": "[Example] Discount Function (JavaScript)", - "description": "Discount Function (JavaScript)" + "name": "[Example] Multiclass discounts (JavaScript)", + "description": "Uses multiclass discounts to apply 10% off the order, 20% off the most expensive product, and free shipping." } diff --git a/examples/javascript/default/extensions/discount-function/package.json b/examples/javascript/default/extensions/discount-function/package.json index 72ccd6c..c35014c 100644 --- a/examples/javascript/default/extensions/discount-function/package.json +++ b/examples/javascript/default/extensions/discount-function/package.json @@ -3,10 +3,10 @@ "version": "0.0.1", "license": "UNLICENSED", "scripts": { - "shopify": "npm exec -- shopify", - "typegen": "npm exec -- shopify app function typegen", - "build": "npm exec -- shopify app function build", - "preview": "npm exec -- shopify app function run", + "shopify": "pnpm exec -- shopify", + "typegen": "pnpm exec -- shopify app function typegen", + "build": "pnpm exec -- shopify app function build", + "preview": "pnpm exec -- shopify app function run", "test": "vitest run" }, "codegen": { @@ -25,9 +25,9 @@ } }, "devDependencies": { - "vitest": "4.0.9" + "vitest": "4.1.4" }, "dependencies": { - "@shopify/shopify_function": "2.0.0" + "@shopify/shopify_function": "2.0.1" } } diff --git a/examples/javascript/default/extensions/discount-function/schema.graphql b/examples/javascript/default/extensions/discount-function/schema.graphql index 720f8f8..24263f3 100644 --- a/examples/javascript/default/extensions/discount-function/schema.graphql +++ b/examples/javascript/default/extensions/discount-function/schema.graphql @@ -3528,13 +3528,7 @@ type Input { `cart.lines.discounts.generate.run` and `cart.delivery-options.discounts.generate.run` extension targets. """ - fetchResult: HttpResponse - @restrictTarget( - only: [ - "cart.lines.discounts.generate.run" - "cart.delivery-options.discounts.generate.run" - ] - ) + fetchResult: HttpResponse @restrictTarget(only: ["cart.lines.discounts.generate.run", "cart.delivery-options.discounts.generate.run"]) """ The regional and language settings that determine how the Function @@ -3563,13 +3557,7 @@ type Input { This input is only available in the `cart.lines.discounts.generate.run` and `cart.delivery-options.discounts.generate.run` extension targets. """ - triggeringDiscountCode: String - @restrictTarget( - only: [ - "cart.lines.discounts.generate.run" - "cart.delivery-options.discounts.generate.run" - ] - ) + triggeringDiscountCode: String @restrictTarget(only: ["cart.lines.discounts.generate.run", "cart.delivery-options.discounts.generate.run"]) } """ @@ -4414,10 +4402,7 @@ type Localization { """ The market of the active localized experience. """ - market: Market! - @deprecated( - reason: "This `market` field will be removed in a future version of the API." - ) + market: Market! @deprecated(reason: "This `market` field will be removed in a future version of the API.") } """ @@ -4798,10 +4783,7 @@ type MailingAddress { """ The market of the address. """ - market: Market - @deprecated( - reason: "This `market` field will be removed in a future version of the API." - ) + market: Market @deprecated(reason: "This `market` field will be removed in a future version of the API.") """ The full name of the customer, based on firstName and lastName. diff --git a/examples/javascript/default/extensions/discount-function/src/cart_delivery_options_discounts_generate_run.js b/examples/javascript/default/extensions/discount-function/src/cart_delivery_options_discounts_generate_run.js index 5eb7936..e258971 100644 --- a/examples/javascript/default/extensions/discount-function/src/cart_delivery_options_discounts_generate_run.js +++ b/examples/javascript/default/extensions/discount-function/src/cart_delivery_options_discounts_generate_run.js @@ -15,7 +15,7 @@ export function cartDeliveryOptionsDiscountsGenerateRun(input) { ); if (!hasShippingDiscountClass) { - return { operations: [] }; + return {operations: []}; } return { diff --git a/examples/javascript/default/extensions/discount-function/src/cart_delivery_options_discounts_generate_run.test.js b/examples/javascript/default/extensions/discount-function/src/cart_delivery_options_discounts_generate_run.test.js index c3c6f86..f55c633 100644 --- a/examples/javascript/default/extensions/discount-function/src/cart_delivery_options_discounts_generate_run.test.js +++ b/examples/javascript/default/extensions/discount-function/src/cart_delivery_options_discounts_generate_run.test.js @@ -1,11 +1,11 @@ -import { describe, it, expect } from "vitest"; +import {describe, it, expect} from "vitest"; import { DeliveryDiscountSelectionStrategy, DiscountClass, } from "../generated/api"; -import { cartDeliveryOptionsDiscountsGenerateRun } from "./cart_delivery_options_discounts_generate_run"; +import {cartDeliveryOptionsDiscountsGenerateRun} from "./cart_delivery_options_discounts_generate_run"; /** * @typedef {import("../generated/api").CartDeliveryOptionsDiscountsGenerateRunResult} CartDeliveryOptionsDiscountsGenerateRunResult diff --git a/examples/javascript/default/extensions/discount-function/src/cart_lines_discounts_generate_run.js b/examples/javascript/default/extensions/discount-function/src/cart_lines_discounts_generate_run.js index 5729221..b9dc75d 100644 --- a/examples/javascript/default/extensions/discount-function/src/cart_lines_discounts_generate_run.js +++ b/examples/javascript/default/extensions/discount-function/src/cart_lines_discounts_generate_run.js @@ -18,7 +18,7 @@ export function cartLinesDiscountsGenerateRun(input) { ); if (!hasOrderDiscountClass && !hasProductDiscountClass) { - return { operations: [] }; + return {operations: []}; } const maxCartLine = input.cart.lines.reduce((maxLine, line) => { diff --git a/examples/javascript/default/extensions/discount-function/src/cart_lines_discounts_generate_run.test.js b/examples/javascript/default/extensions/discount-function/src/cart_lines_discounts_generate_run.test.js index ddbe3ed..123d663 100644 --- a/examples/javascript/default/extensions/discount-function/src/cart_lines_discounts_generate_run.test.js +++ b/examples/javascript/default/extensions/discount-function/src/cart_lines_discounts_generate_run.test.js @@ -1,4 +1,4 @@ -import { describe, it, expect } from "vitest"; +import {describe, it, expect} from "vitest"; import { OrderDiscountSelectionStrategy, @@ -6,7 +6,7 @@ import { DiscountClass, } from "../generated/api"; -import { cartLinesDiscountsGenerateRun } from "./cart_lines_discounts_generate_run"; +import {cartLinesDiscountsGenerateRun} from "./cart_lines_discounts_generate_run"; /** * @typedef {import("../generated/api").CartLinesDiscountsGenerateRunResult} CartLinesDiscountsGenerateRunResult diff --git a/examples/javascript/default/pnpm-workspace.yaml b/examples/javascript/default/pnpm-workspace.yaml index e8a5c94..2115b27 100644 --- a/examples/javascript/default/pnpm-workspace.yaml +++ b/examples/javascript/default/pnpm-workspace.yaml @@ -1,2 +1,2 @@ packages: - - "extensions/*" + - 'extensions/*' diff --git a/examples/javascript/discount-rejection/extensions/discount-function/README.md b/examples/javascript/discount-rejection/extensions/discount-function/README.md index d273ba0..7501abe 100644 --- a/examples/javascript/discount-rejection/extensions/discount-function/README.md +++ b/examples/javascript/discount-rejection/extensions/discount-function/README.md @@ -1,9 +1,9 @@ --- -name: "How to build a discount function that rejects discount codes with custom messages" +name: 'How to build a discount function that rejects discount codes with custom messages' api_name: discount api_version: 2026-01 api_type: functions url: /docs/api/functions/reference/discount --- -A Shopify function that rejects entered discount codes with a custom message. The Function allows only one influencer code that begins with `INF-`. The last entered discount code is kept while the remaining ones are all rejected with a message. +A Shopify Function that rejects entered discount codes with a custom message. The Function allows only one influencer code that begins with `INF-`. The last entered discount code is kept while the remaining ones are all rejected with a message. diff --git a/examples/javascript/discount-rejection/extensions/discount-function/generated/api.ts b/examples/javascript/discount-rejection/extensions/discount-function/generated/api.ts index bf9d5bc..bc1083a 100644 --- a/examples/javascript/discount-rejection/extensions/discount-function/generated/api.ts +++ b/examples/javascript/discount-rejection/extensions/discount-function/generated/api.ts @@ -1,60 +1,47 @@ 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; -}; -export type MakeEmpty< - T extends { [key: string]: unknown }, - K extends keyof T, -> = { [_ in K]?: never }; -export type Incremental = - | T - | { - [P in keyof T]?: P extends " $fragmentName" | "__typename" ? T[P] : never; - }; +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 }; +export type MakeEmpty = { [_ in K]?: never }; +export type Incremental = T | { [P in keyof T]?: P extends ' $fragmentName' | '__typename' ? T[P] : never }; /** All built-in and custom scalars, mapped to their actual values */ export type Scalars = { - ID: { input: string; output: string }; - String: { input: string; output: string }; - Boolean: { input: boolean; output: boolean }; - Int: { input: number; output: number }; - Float: { input: number; output: number }; + ID: { input: string; output: string; } + String: { input: string; output: string; } + Boolean: { input: boolean; output: boolean; } + Int: { input: number; output: number; } + Float: { input: number; output: number; } /** * Represents an [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)-encoded date string. * For example, September 7, 2019 is represented as `"2019-07-16"`. */ - Date: { input: any; output: any }; + Date: { input: any; output: any; } /** * Represents an [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)-encoded date and time string. * For example, 3:50 pm on September 7, 2019 in the time zone of UTC (Coordinated Universal Time) is * represented as `"2019-09-07T15:50:00Z`". */ - DateTime: { input: any; output: any }; + DateTime: { input: any; output: any; } /** * A subset of the [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format that * includes the date and time but not the timezone which is determined from context. * * For example, "2018-01-01T00:00:00". */ - DateTimeWithoutTimezone: { input: any; output: any }; + DateTimeWithoutTimezone: { input: any; output: any; } /** * A signed decimal number, which supports arbitrary precision and is serialized as a string. * * Example values: `"29.99"`, `"29.999"`. */ - Decimal: { input: any; output: any }; + Decimal: { input: any; output: any; } /** * A function-scoped handle to a refer a resource. * The Handle type appears in a JSON response as a String, but it is not intended to be human-readable. * Example value: `"10079785100"` */ - Handle: { input: any; output: any }; + Handle: { input: any; output: any; } /** * A [JSON](https://www.json.org/json-en.html) object. * @@ -70,13 +57,13 @@ export type Scalars = { * } * }` */ - JSON: { input: any; output: any }; + JSON: { input: any; output: any; } /** * A subset of the [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format that * includes the time but not the date or timezone which is determined from context. * For example, "05:43:21". */ - TimeWithoutTimezone: { input: any; output: any }; + TimeWithoutTimezone: { input: any; output: any; } /** * Represents an [RFC 3986](https://datatracker.ietf.org/doc/html/rfc3986) and * [RFC 3987](https://datatracker.ietf.org/doc/html/rfc3987)-compliant URI string. @@ -84,15 +71,15 @@ export type Scalars = { * For example, `"https://example.myshopify.com"` is a valid URL. It includes a scheme (`https`) and a host * (`example.myshopify.com`). */ - URL: { input: any; output: any }; + URL: { input: any; output: any; } /** A void type that can be used to return a null value from a mutation. */ - Void: { input: any; output: any }; + Void: { input: any; output: any; } }; /** A discount code that is associated with a discount candidate. */ export type AssociatedDiscountCode = { /** The discount code. */ - code: Scalars["String"]["input"]; + code: Scalars['String']['input']; }; /** @@ -105,11 +92,11 @@ export type AssociatedDiscountCode = { * notes provided by the customer (`"customer_notes": "Please leave at the front door"`). */ export type Attribute = { - __typename?: "Attribute"; + __typename?: 'Attribute'; /** The key or name of the attribute. For example, `"customer_first_order"`. */ - key: Scalars["String"]["output"]; + key: Scalars['String']['output']; /** The value of the attribute. For example, `"true"`. */ - value?: Maybe; + value?: Maybe; }; /** @@ -119,18 +106,18 @@ export type Attribute = { * are displayed to customers. */ export type BuyerIdentity = { - __typename?: "BuyerIdentity"; + __typename?: 'BuyerIdentity'; /** The [customer](https://help.shopify.com/manual/customers/manage-customers) that's interacting with the cart. */ customer?: Maybe; /** The email address of the customer that's interacting with the cart. */ - email?: Maybe; + email?: Maybe; /** * Whether the customer is authenticated through their * [customer account](https://help.shopify.com/manual/customers/customer-accounts). */ - isAuthenticated: Scalars["Boolean"]["output"]; + isAuthenticated: Scalars['Boolean']['output']; /** The phone number of the customer that's interacting with the cart. */ - phone?: Maybe; + phone?: Maybe; /** * The company of a B2B customer that's interacting with the cart. * Used to manage and track purchases made by businesses rather than individual customers. @@ -143,7 +130,7 @@ export type BuyerIdentity = { * and information about the customer, such as the customer's email address and phone number. */ export type Cart = HasMetafields & { - __typename?: "Cart"; + __typename?: 'Cart'; /** * The custom attributes associated with a cart to store additional information. Cart attributes * allow you to collect specific information from customers on the **Cart** page, such as order notes, @@ -201,14 +188,16 @@ export type Cart = HasMetafields & { retailLocation?: Maybe; }; + /** * The cart where the Function is running. A cart contains the merchandise that a customer intends to purchase * and information about the customer, such as the customer's email address and phone number. */ export type CartAttributeArgs = { - key?: InputMaybe; + key?: InputMaybe; }; + /** * The cart where the Function is running. A cart contains the merchandise that a customer intends to purchase * and information about the customer, such as the customer's email address and phone number. @@ -217,13 +206,14 @@ export type CartLocalizedFieldsArgs = { keys?: Array; }; + /** * The cart where the Function is running. A cart contains the merchandise that a customer intends to purchase * and information about the customer, such as the customer's email address and phone number. */ export type CartMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** @@ -231,7 +221,7 @@ export type CartMetafieldArgs = { * the subtotal before taxes and duties, the tax amount, and duty charges. */ export type CartCost = { - __typename?: "CartCost"; + __typename?: 'CartCost'; /** The amount, before taxes and cart-level discounts, for the customer to pay. */ subtotalAmount: MoneyV2; /** The total amount for the customer to pay at checkout. */ @@ -249,7 +239,7 @@ export type CartCost = { * together, then the items are included in the same delivery group. */ export type CartDeliveryGroup = { - __typename?: "CartDeliveryGroup"; + __typename?: 'CartDeliveryGroup'; /** * Information about items in a cart that a customer intends to purchase. A cart line is an entry in the * customer's cart that represents a single unit of a product variant. For example, if a customer adds two @@ -269,7 +259,7 @@ export type CartDeliveryGroup = { * A [globally-unique ID](https://shopify.dev/docs/api/usage/gids) * for the delivery group. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** Information about the delivery option that the customer has selected. */ selectedDeliveryOption?: Maybe; }; @@ -280,9 +270,9 @@ export enum CartDeliveryGroupType { * The delivery group only contains merchandise that is either a one time purchase or a first delivery of * subscription merchandise. */ - OneTimePurchase = "ONE_TIME_PURCHASE", + OneTimePurchase = 'ONE_TIME_PURCHASE', /** The delivery group only contains subscription merchandise. */ - Subscription = "SUBSCRIPTION", + Subscription = 'SUBSCRIPTION' } /** @@ -291,12 +281,12 @@ export enum CartDeliveryGroupType { * shipping. */ export type CartDeliveryOption = { - __typename?: "CartDeliveryOption"; + __typename?: 'CartDeliveryOption'; /** * A unique identifier that represents the delivery option offered to customers. * For example, `Canada Post Expedited`. */ - code?: Maybe; + code?: Maybe; /** The amount that the customer pays if they select the delivery option. */ cost: MoneyV2; /** @@ -308,19 +298,19 @@ export type CartDeliveryOption = { */ deliveryMethodType: DeliveryMethod; /** A single-line description of the delivery option, with HTML tags removed. */ - description?: Maybe; + description?: Maybe; /** * A unique, human-readable identifier of the delivery option's title. * A handle can contain letters, hyphens (`-`), and numbers, but not spaces. * For example, `standard-shipping`. */ - handle: Scalars["Handle"]["output"]; + handle: Scalars['Handle']['output']; /** * The name of the delivery option that displays to customers. The title is used to construct the delivery * option's handle. For example, if a delivery option is titled "Standard Shipping", then the handle is * `standard-shipping`. */ - title?: Maybe; + title?: Maybe; }; /** @@ -344,7 +334,7 @@ export type CartDeliveryOptionsDiscountsGenerateRunResult = { * different sizes of the same t-shirt to their cart, then each size is represented as a separate cart line. */ export type CartLine = { - __typename?: "CartLine"; + __typename?: 'CartLine'; /** * The custom attributes associated with a cart to store additional information. Cart attributes * allow you to collect specific information from customers on the **Cart** page, such as order notes, @@ -362,7 +352,7 @@ export type CartLine = { */ cost: CartLineCost; /** The ID of the cart line. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** The item that the customer intends to purchase. */ merchandise: Merchandise; /** @@ -371,7 +361,7 @@ export type CartLine = { */ parentRelationship?: Maybe; /** The quantity of the item that the customer intends to purchase. */ - quantity: Scalars["Int"]["output"]; + quantity: Scalars['Int']['output']; /** * The [selling plan](https://shopify.dev/docs/apps/build/purchase-options/subscriptions/selling-plans) * associated with the cart line, including information about how a product variant can be sold and purchased. @@ -379,13 +369,14 @@ export type CartLine = { sellingPlanAllocation?: Maybe; }; + /** * Information about an item in a cart that a customer intends to purchase. A cart line is an entry in the * customer's cart that represents a single unit of a product variant. For example, if a customer adds two * different sizes of the same t-shirt to their cart, then each size is represented as a separate cart line. */ export type CartLineAttributeArgs = { - key?: InputMaybe; + key?: InputMaybe; }; /** @@ -394,7 +385,7 @@ export type CartLineAttributeArgs = { * the same t-shirt to their cart, then each size is represented as a separate cart line. */ export type CartLineCost = { - __typename?: "CartLineCost"; + __typename?: 'CartLineCost'; /** * The cost of a single unit. For example, if a customer purchases three units of a product * that are priced at $10 each, then the `amountPerQuantity` is $10. @@ -423,9 +414,9 @@ export type CartLineMinimumQuantity = { * Cart line IDs with a merchandise line price that's included to calculate the * minimum quantity purchased to receive the discount. */ - ids: Array; + ids: Array; /** The minimum quantity of a cart line to be eligible for a discount candidate. */ - minimumQuantity: Scalars["Int"]["input"]; + minimumQuantity: Scalars['Int']['input']; }; /** The condition for checking the minimum subtotal of products across a group of cart lines. */ @@ -434,14 +425,14 @@ export type CartLineMinimumSubtotal = { * Cart line IDs with a merchandise line price that's included to calculate the * minimum subtotal purchased to receive the discount. */ - ids: Array; + ids: Array; /** The minimum subtotal amount of the cart line to be eligible for a discount candidate in the shop's currency. */ - minimumAmount: Scalars["Decimal"]["input"]; + minimumAmount: Scalars['Decimal']['input']; }; /** Represents the relationship between a cart line and its parent line. */ export type CartLineParentRelationship = { - __typename?: "CartLineParentRelationship"; + __typename?: 'CartLineParentRelationship'; /** The parent line in the relationship. */ parent: CartLine; }; @@ -453,14 +444,14 @@ export type CartLineParentRelationship = { */ export type CartLineTarget = { /** The ID of the targeted cart line. */ - id: Scalars["ID"]["input"]; + id: Scalars['ID']['input']; /** * The number of line items that are being discounted. * The default value is `null`, which represents the quantity of the matching line items. * * The value is validated against: > 0. */ - quantity?: InputMaybe; + quantity?: InputMaybe; }; /** @@ -484,34 +475,17 @@ export type CartOperation = * An operation that selects which entered discount codes to accept. Use this to * validate discount codes from external systems. */ - | { - enteredDiscountCodesAccept: EnteredDiscountCodesAcceptOperation; - enteredDiscountCodesReject?: never; - orderDiscountsAdd?: never; - productDiscountsAdd?: never; - } /** + { enteredDiscountCodesAccept: EnteredDiscountCodesAcceptOperation; enteredDiscountCodesReject?: never; orderDiscountsAdd?: never; productDiscountsAdd?: never; } + | /** * An operation that rejects entered discount codes with a custom message. Use * this to conditionally reject discount codes based on business logic. This * operation can only be used if the function is backed by an automatic discount. */ - | { - enteredDiscountCodesAccept?: never; - enteredDiscountCodesReject: EnteredDiscountCodesRejectOperation; - orderDiscountsAdd?: never; - productDiscountsAdd?: never; - } /** An operation that applies order discounts to a cart that share a selection strategy. */ - | { - enteredDiscountCodesAccept?: never; - enteredDiscountCodesReject?: never; - orderDiscountsAdd: OrderDiscountsAddOperation; - productDiscountsAdd?: never; - } /** An operation that applies product discounts to a cart that share a selection strategy. */ - | { - enteredDiscountCodesAccept?: never; - enteredDiscountCodesReject?: never; - orderDiscountsAdd?: never; - productDiscountsAdd: ProductDiscountsAddOperation; - }; + { enteredDiscountCodesAccept?: never; enteredDiscountCodesReject: EnteredDiscountCodesRejectOperation; orderDiscountsAdd?: never; productDiscountsAdd?: never; } + | /** An operation that applies order discounts to a cart that share a selection strategy. */ + { enteredDiscountCodesAccept?: never; enteredDiscountCodesReject?: never; orderDiscountsAdd: OrderDiscountsAddOperation; productDiscountsAdd?: never; } + | /** An operation that applies product discounts to a cart that share a selection strategy. */ + { enteredDiscountCodesAccept?: never; enteredDiscountCodesReject?: never; orderDiscountsAdd?: never; productDiscountsAdd: ProductDiscountsAddOperation; }; /** * Whether the product is in the specified collection. @@ -521,25 +495,25 @@ export type CartOperation = * different collections for running attire and accessories. */ export type CollectionMembership = { - __typename?: "CollectionMembership"; + __typename?: 'CollectionMembership'; /** * A [globally-unique ID](https://shopify.dev/docs/api/usage/gids) * for the collection. */ - collectionId: Scalars["ID"]["output"]; + collectionId: Scalars['ID']['output']; /** Whether the product is in the specified collection. */ - isMember: Scalars["Boolean"]["output"]; + isMember: Scalars['Boolean']['output']; }; /** Represents information about a company which is also a customer of the shop. */ export type Company = HasMetafields & { - __typename?: "Company"; + __typename?: 'Company'; /** The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) at which the company was created in Shopify. */ - createdAt: Scalars["DateTime"]["output"]; + createdAt: Scalars['DateTime']['output']; /** A unique externally-supplied ID for the company. */ - externalId?: Maybe; + externalId?: Maybe; /** The ID of the company. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -549,52 +523,53 @@ export type Company = HasMetafields & { */ metafield?: Maybe; /** The name of the company. */ - name: Scalars["String"]["output"]; + name: Scalars['String']['output']; /** The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) at which the company was last modified. */ - updatedAt: Scalars["DateTime"]["output"]; + updatedAt: Scalars['DateTime']['output']; }; + /** Represents information about a company which is also a customer of the shop. */ export type CompanyMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** A company's main point of contact. */ export type CompanyContact = { - __typename?: "CompanyContact"; + __typename?: 'CompanyContact'; /** * The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) * at which the company contact was created in Shopify. */ - createdAt: Scalars["DateTime"]["output"]; + createdAt: Scalars['DateTime']['output']; /** The ID of the company. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** The company contact's locale (language). */ - locale?: Maybe; + locale?: Maybe; /** The company contact's job title. */ - title?: Maybe; + title?: Maybe; /** * The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) * at which the company contact was last modified. */ - updatedAt: Scalars["DateTime"]["output"]; + updatedAt: Scalars['DateTime']['output']; }; /** A company's location. */ export type CompanyLocation = HasMetafields & { - __typename?: "CompanyLocation"; + __typename?: 'CompanyLocation'; /** * The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) * at which the company location was created in Shopify. */ - createdAt: Scalars["DateTime"]["output"]; + createdAt: Scalars['DateTime']['output']; /** A unique externally-supplied ID for the company. */ - externalId?: Maybe; + externalId?: Maybe; /** The ID of the company. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** The preferred locale of the company location. */ - locale?: Maybe; + locale?: Maybe; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -604,42 +579,33 @@ export type CompanyLocation = HasMetafields & { */ metafield?: Maybe; /** The name of the company location. */ - name: Scalars["String"]["output"]; + name: Scalars['String']['output']; /** The number of orders placed at this company location. */ - ordersCount: Scalars["Int"]["output"]; + ordersCount: Scalars['Int']['output']; /** The total amount spent at this company location. */ totalSpent: MoneyV2; /** * The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) * at which the company location was last modified. */ - updatedAt: Scalars["DateTime"]["output"]; + updatedAt: Scalars['DateTime']['output']; }; + /** A company's location. */ export type CompanyLocationMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** The conditions that satisfy the discount candidate to be applied to a cart line. */ export type Condition = /** The condition for checking the minimum quantity of products across a group of cart lines. */ - | { - cartLineMinimumQuantity: CartLineMinimumQuantity; - cartLineMinimumSubtotal?: never; - orderMinimumSubtotal?: never; - } /** The condition for checking the minimum subtotal of products across a group of cart lines. */ - | { - cartLineMinimumQuantity?: never; - cartLineMinimumSubtotal: CartLineMinimumSubtotal; - orderMinimumSubtotal?: never; - } /** The condition for checking the minimum subtotal amount of the order. */ - | { - cartLineMinimumQuantity?: never; - cartLineMinimumSubtotal?: never; - orderMinimumSubtotal: OrderMinimumSubtotal; - }; + { cartLineMinimumQuantity: CartLineMinimumQuantity; cartLineMinimumSubtotal?: never; orderMinimumSubtotal?: never; } + | /** The condition for checking the minimum subtotal of products across a group of cart lines. */ + { cartLineMinimumQuantity?: never; cartLineMinimumSubtotal: CartLineMinimumSubtotal; orderMinimumSubtotal?: never; } + | /** The condition for checking the minimum subtotal amount of the order. */ + { cartLineMinimumQuantity?: never; cartLineMinimumSubtotal?: never; orderMinimumSubtotal: OrderMinimumSubtotal; }; /** * The country for which the store is customized, reflecting local preferences and regulations. @@ -647,7 +613,7 @@ export type Condition = * the shopping experience for customers in that region. */ export type Country = { - __typename?: "Country"; + __typename?: 'Country'; /** The ISO code of the country. */ isoCode: CountryCode; }; @@ -660,495 +626,495 @@ export type Country = { */ export enum CountryCode { /** Ascension Island. */ - Ac = "AC", + Ac = 'AC', /** Andorra. */ - Ad = "AD", + Ad = 'AD', /** United Arab Emirates. */ - Ae = "AE", + Ae = 'AE', /** Afghanistan. */ - Af = "AF", + Af = 'AF', /** Antigua & Barbuda. */ - Ag = "AG", + Ag = 'AG', /** Anguilla. */ - Ai = "AI", + Ai = 'AI', /** Albania. */ - Al = "AL", + Al = 'AL', /** Armenia. */ - Am = "AM", + Am = 'AM', /** Netherlands Antilles. */ - An = "AN", + An = 'AN', /** Angola. */ - Ao = "AO", + Ao = 'AO', /** Argentina. */ - Ar = "AR", + Ar = 'AR', /** Austria. */ - At = "AT", + At = 'AT', /** Australia. */ - Au = "AU", + Au = 'AU', /** Aruba. */ - Aw = "AW", + Aw = 'AW', /** Åland Islands. */ - Ax = "AX", + Ax = 'AX', /** Azerbaijan. */ - Az = "AZ", + Az = 'AZ', /** Bosnia & Herzegovina. */ - Ba = "BA", + Ba = 'BA', /** Barbados. */ - Bb = "BB", + Bb = 'BB', /** Bangladesh. */ - Bd = "BD", + Bd = 'BD', /** Belgium. */ - Be = "BE", + Be = 'BE', /** Burkina Faso. */ - Bf = "BF", + Bf = 'BF', /** Bulgaria. */ - Bg = "BG", + Bg = 'BG', /** Bahrain. */ - Bh = "BH", + Bh = 'BH', /** Burundi. */ - Bi = "BI", + Bi = 'BI', /** Benin. */ - Bj = "BJ", + Bj = 'BJ', /** St. Barthélemy. */ - Bl = "BL", + Bl = 'BL', /** Bermuda. */ - Bm = "BM", + Bm = 'BM', /** Brunei. */ - Bn = "BN", + Bn = 'BN', /** Bolivia. */ - Bo = "BO", + Bo = 'BO', /** Caribbean Netherlands. */ - Bq = "BQ", + Bq = 'BQ', /** Brazil. */ - Br = "BR", + Br = 'BR', /** Bahamas. */ - Bs = "BS", + Bs = 'BS', /** Bhutan. */ - Bt = "BT", + Bt = 'BT', /** Bouvet Island. */ - Bv = "BV", + Bv = 'BV', /** Botswana. */ - Bw = "BW", + Bw = 'BW', /** Belarus. */ - By = "BY", + By = 'BY', /** Belize. */ - Bz = "BZ", + Bz = 'BZ', /** Canada. */ - Ca = "CA", + Ca = 'CA', /** Cocos (Keeling) Islands. */ - Cc = "CC", + Cc = 'CC', /** Congo - Kinshasa. */ - Cd = "CD", + Cd = 'CD', /** Central African Republic. */ - Cf = "CF", + Cf = 'CF', /** Congo - Brazzaville. */ - Cg = "CG", + Cg = 'CG', /** Switzerland. */ - Ch = "CH", + Ch = 'CH', /** Côte d’Ivoire. */ - Ci = "CI", + Ci = 'CI', /** Cook Islands. */ - Ck = "CK", + Ck = 'CK', /** Chile. */ - Cl = "CL", + Cl = 'CL', /** Cameroon. */ - Cm = "CM", + Cm = 'CM', /** China. */ - Cn = "CN", + Cn = 'CN', /** Colombia. */ - Co = "CO", + Co = 'CO', /** Costa Rica. */ - Cr = "CR", + Cr = 'CR', /** Cuba. */ - Cu = "CU", + Cu = 'CU', /** Cape Verde. */ - Cv = "CV", + Cv = 'CV', /** Curaçao. */ - Cw = "CW", + Cw = 'CW', /** Christmas Island. */ - Cx = "CX", + Cx = 'CX', /** Cyprus. */ - Cy = "CY", + Cy = 'CY', /** Czechia. */ - Cz = "CZ", + Cz = 'CZ', /** Germany. */ - De = "DE", + De = 'DE', /** Djibouti. */ - Dj = "DJ", + Dj = 'DJ', /** Denmark. */ - Dk = "DK", + Dk = 'DK', /** Dominica. */ - Dm = "DM", + Dm = 'DM', /** Dominican Republic. */ - Do = "DO", + Do = 'DO', /** Algeria. */ - Dz = "DZ", + Dz = 'DZ', /** Ecuador. */ - Ec = "EC", + Ec = 'EC', /** Estonia. */ - Ee = "EE", + Ee = 'EE', /** Egypt. */ - Eg = "EG", + Eg = 'EG', /** Western Sahara. */ - Eh = "EH", + Eh = 'EH', /** Eritrea. */ - Er = "ER", + Er = 'ER', /** Spain. */ - Es = "ES", + Es = 'ES', /** Ethiopia. */ - Et = "ET", + Et = 'ET', /** Finland. */ - Fi = "FI", + Fi = 'FI', /** Fiji. */ - Fj = "FJ", + Fj = 'FJ', /** Falkland Islands. */ - Fk = "FK", + Fk = 'FK', /** Faroe Islands. */ - Fo = "FO", + Fo = 'FO', /** France. */ - Fr = "FR", + Fr = 'FR', /** Gabon. */ - Ga = "GA", + Ga = 'GA', /** United Kingdom. */ - Gb = "GB", + Gb = 'GB', /** Grenada. */ - Gd = "GD", + Gd = 'GD', /** Georgia. */ - Ge = "GE", + Ge = 'GE', /** French Guiana. */ - Gf = "GF", + Gf = 'GF', /** Guernsey. */ - Gg = "GG", + Gg = 'GG', /** Ghana. */ - Gh = "GH", + Gh = 'GH', /** Gibraltar. */ - Gi = "GI", + Gi = 'GI', /** Greenland. */ - Gl = "GL", + Gl = 'GL', /** Gambia. */ - Gm = "GM", + Gm = 'GM', /** Guinea. */ - Gn = "GN", + Gn = 'GN', /** Guadeloupe. */ - Gp = "GP", + Gp = 'GP', /** Equatorial Guinea. */ - Gq = "GQ", + Gq = 'GQ', /** Greece. */ - Gr = "GR", + Gr = 'GR', /** South Georgia & South Sandwich Islands. */ - Gs = "GS", + Gs = 'GS', /** Guatemala. */ - Gt = "GT", + Gt = 'GT', /** Guinea-Bissau. */ - Gw = "GW", + Gw = 'GW', /** Guyana. */ - Gy = "GY", + Gy = 'GY', /** Hong Kong SAR. */ - Hk = "HK", + Hk = 'HK', /** Heard & McDonald Islands. */ - Hm = "HM", + Hm = 'HM', /** Honduras. */ - Hn = "HN", + Hn = 'HN', /** Croatia. */ - Hr = "HR", + Hr = 'HR', /** Haiti. */ - Ht = "HT", + Ht = 'HT', /** Hungary. */ - Hu = "HU", + Hu = 'HU', /** Indonesia. */ - Id = "ID", + Id = 'ID', /** Ireland. */ - Ie = "IE", + Ie = 'IE', /** Israel. */ - Il = "IL", + Il = 'IL', /** Isle of Man. */ - Im = "IM", + Im = 'IM', /** India. */ - In = "IN", + In = 'IN', /** British Indian Ocean Territory. */ - Io = "IO", + Io = 'IO', /** Iraq. */ - Iq = "IQ", + Iq = 'IQ', /** Iran. */ - Ir = "IR", + Ir = 'IR', /** Iceland. */ - Is = "IS", + Is = 'IS', /** Italy. */ - It = "IT", + It = 'IT', /** Jersey. */ - Je = "JE", + Je = 'JE', /** Jamaica. */ - Jm = "JM", + Jm = 'JM', /** Jordan. */ - Jo = "JO", + Jo = 'JO', /** Japan. */ - Jp = "JP", + Jp = 'JP', /** Kenya. */ - Ke = "KE", + Ke = 'KE', /** Kyrgyzstan. */ - Kg = "KG", + Kg = 'KG', /** Cambodia. */ - Kh = "KH", + Kh = 'KH', /** Kiribati. */ - Ki = "KI", + Ki = 'KI', /** Comoros. */ - Km = "KM", + Km = 'KM', /** St. Kitts & Nevis. */ - Kn = "KN", + Kn = 'KN', /** North Korea. */ - Kp = "KP", + Kp = 'KP', /** South Korea. */ - Kr = "KR", + Kr = 'KR', /** Kuwait. */ - Kw = "KW", + Kw = 'KW', /** Cayman Islands. */ - Ky = "KY", + Ky = 'KY', /** Kazakhstan. */ - Kz = "KZ", + Kz = 'KZ', /** Laos. */ - La = "LA", + La = 'LA', /** Lebanon. */ - Lb = "LB", + Lb = 'LB', /** St. Lucia. */ - Lc = "LC", + Lc = 'LC', /** Liechtenstein. */ - Li = "LI", + Li = 'LI', /** Sri Lanka. */ - Lk = "LK", + Lk = 'LK', /** Liberia. */ - Lr = "LR", + Lr = 'LR', /** Lesotho. */ - Ls = "LS", + Ls = 'LS', /** Lithuania. */ - Lt = "LT", + Lt = 'LT', /** Luxembourg. */ - Lu = "LU", + Lu = 'LU', /** Latvia. */ - Lv = "LV", + Lv = 'LV', /** Libya. */ - Ly = "LY", + Ly = 'LY', /** Morocco. */ - Ma = "MA", + Ma = 'MA', /** Monaco. */ - Mc = "MC", + Mc = 'MC', /** Moldova. */ - Md = "MD", + Md = 'MD', /** Montenegro. */ - Me = "ME", + Me = 'ME', /** St. Martin. */ - Mf = "MF", + Mf = 'MF', /** Madagascar. */ - Mg = "MG", + Mg = 'MG', /** North Macedonia. */ - Mk = "MK", + Mk = 'MK', /** Mali. */ - Ml = "ML", + Ml = 'ML', /** Myanmar (Burma). */ - Mm = "MM", + Mm = 'MM', /** Mongolia. */ - Mn = "MN", + Mn = 'MN', /** Macao SAR. */ - Mo = "MO", + Mo = 'MO', /** Martinique. */ - Mq = "MQ", + Mq = 'MQ', /** Mauritania. */ - Mr = "MR", + Mr = 'MR', /** Montserrat. */ - Ms = "MS", + Ms = 'MS', /** Malta. */ - Mt = "MT", + Mt = 'MT', /** Mauritius. */ - Mu = "MU", + Mu = 'MU', /** Maldives. */ - Mv = "MV", + Mv = 'MV', /** Malawi. */ - Mw = "MW", + Mw = 'MW', /** Mexico. */ - Mx = "MX", + Mx = 'MX', /** Malaysia. */ - My = "MY", + My = 'MY', /** Mozambique. */ - Mz = "MZ", + Mz = 'MZ', /** Namibia. */ - Na = "NA", + Na = 'NA', /** New Caledonia. */ - Nc = "NC", + Nc = 'NC', /** Niger. */ - Ne = "NE", + Ne = 'NE', /** Norfolk Island. */ - Nf = "NF", + Nf = 'NF', /** Nigeria. */ - Ng = "NG", + Ng = 'NG', /** Nicaragua. */ - Ni = "NI", + Ni = 'NI', /** Netherlands. */ - Nl = "NL", + Nl = 'NL', /** Norway. */ - No = "NO", + No = 'NO', /** Nepal. */ - Np = "NP", + Np = 'NP', /** Nauru. */ - Nr = "NR", + Nr = 'NR', /** Niue. */ - Nu = "NU", + Nu = 'NU', /** New Zealand. */ - Nz = "NZ", + Nz = 'NZ', /** Oman. */ - Om = "OM", + Om = 'OM', /** Panama. */ - Pa = "PA", + Pa = 'PA', /** Peru. */ - Pe = "PE", + Pe = 'PE', /** French Polynesia. */ - Pf = "PF", + Pf = 'PF', /** Papua New Guinea. */ - Pg = "PG", + Pg = 'PG', /** Philippines. */ - Ph = "PH", + Ph = 'PH', /** Pakistan. */ - Pk = "PK", + Pk = 'PK', /** Poland. */ - Pl = "PL", + Pl = 'PL', /** St. Pierre & Miquelon. */ - Pm = "PM", + Pm = 'PM', /** Pitcairn Islands. */ - Pn = "PN", + Pn = 'PN', /** Palestinian Territories. */ - Ps = "PS", + Ps = 'PS', /** Portugal. */ - Pt = "PT", + Pt = 'PT', /** Paraguay. */ - Py = "PY", + Py = 'PY', /** Qatar. */ - Qa = "QA", + Qa = 'QA', /** Réunion. */ - Re = "RE", + Re = 'RE', /** Romania. */ - Ro = "RO", + Ro = 'RO', /** Serbia. */ - Rs = "RS", + Rs = 'RS', /** Russia. */ - Ru = "RU", + Ru = 'RU', /** Rwanda. */ - Rw = "RW", + Rw = 'RW', /** Saudi Arabia. */ - Sa = "SA", + Sa = 'SA', /** Solomon Islands. */ - Sb = "SB", + Sb = 'SB', /** Seychelles. */ - Sc = "SC", + Sc = 'SC', /** Sudan. */ - Sd = "SD", + Sd = 'SD', /** Sweden. */ - Se = "SE", + Se = 'SE', /** Singapore. */ - Sg = "SG", + Sg = 'SG', /** St. Helena. */ - Sh = "SH", + Sh = 'SH', /** Slovenia. */ - Si = "SI", + Si = 'SI', /** Svalbard & Jan Mayen. */ - Sj = "SJ", + Sj = 'SJ', /** Slovakia. */ - Sk = "SK", + Sk = 'SK', /** Sierra Leone. */ - Sl = "SL", + Sl = 'SL', /** San Marino. */ - Sm = "SM", + Sm = 'SM', /** Senegal. */ - Sn = "SN", + Sn = 'SN', /** Somalia. */ - So = "SO", + So = 'SO', /** Suriname. */ - Sr = "SR", + Sr = 'SR', /** South Sudan. */ - Ss = "SS", + Ss = 'SS', /** São Tomé & Príncipe. */ - St = "ST", + St = 'ST', /** El Salvador. */ - Sv = "SV", + Sv = 'SV', /** Sint Maarten. */ - Sx = "SX", + Sx = 'SX', /** Syria. */ - Sy = "SY", + Sy = 'SY', /** Eswatini. */ - Sz = "SZ", + Sz = 'SZ', /** Tristan da Cunha. */ - Ta = "TA", + Ta = 'TA', /** Turks & Caicos Islands. */ - Tc = "TC", + Tc = 'TC', /** Chad. */ - Td = "TD", + Td = 'TD', /** French Southern Territories. */ - Tf = "TF", + Tf = 'TF', /** Togo. */ - Tg = "TG", + Tg = 'TG', /** Thailand. */ - Th = "TH", + Th = 'TH', /** Tajikistan. */ - Tj = "TJ", + Tj = 'TJ', /** Tokelau. */ - Tk = "TK", + Tk = 'TK', /** Timor-Leste. */ - Tl = "TL", + Tl = 'TL', /** Turkmenistan. */ - Tm = "TM", + Tm = 'TM', /** Tunisia. */ - Tn = "TN", + Tn = 'TN', /** Tonga. */ - To = "TO", + To = 'TO', /** Türkiye. */ - Tr = "TR", + Tr = 'TR', /** Trinidad & Tobago. */ - Tt = "TT", + Tt = 'TT', /** Tuvalu. */ - Tv = "TV", + Tv = 'TV', /** Taiwan. */ - Tw = "TW", + Tw = 'TW', /** Tanzania. */ - Tz = "TZ", + Tz = 'TZ', /** Ukraine. */ - Ua = "UA", + Ua = 'UA', /** Uganda. */ - Ug = "UG", + Ug = 'UG', /** U.S. Outlying Islands. */ - Um = "UM", + Um = 'UM', /** United States. */ - Us = "US", + Us = 'US', /** Uruguay. */ - Uy = "UY", + Uy = 'UY', /** Uzbekistan. */ - Uz = "UZ", + Uz = 'UZ', /** Vatican City. */ - Va = "VA", + Va = 'VA', /** St. Vincent & Grenadines. */ - Vc = "VC", + Vc = 'VC', /** Venezuela. */ - Ve = "VE", + Ve = 'VE', /** British Virgin Islands. */ - Vg = "VG", + Vg = 'VG', /** Vietnam. */ - Vn = "VN", + Vn = 'VN', /** Vanuatu. */ - Vu = "VU", + Vu = 'VU', /** Wallis & Futuna. */ - Wf = "WF", + Wf = 'WF', /** Samoa. */ - Ws = "WS", + Ws = 'WS', /** Kosovo. */ - Xk = "XK", + Xk = 'XK', /** Yemen. */ - Ye = "YE", + Ye = 'YE', /** Mayotte. */ - Yt = "YT", + Yt = 'YT', /** South Africa. */ - Za = "ZA", + Za = 'ZA', /** Zambia. */ - Zm = "ZM", + Zm = 'ZM', /** Zimbabwe. */ - Zw = "ZW", + Zw = 'ZW', /** Unknown Region. */ - Zz = "ZZ", + Zz = 'ZZ' } /** @@ -1158,338 +1124,338 @@ export enum CountryCode { */ export enum CurrencyCode { /** United Arab Emirates Dirham (AED). */ - Aed = "AED", + Aed = 'AED', /** Afghan Afghani (AFN). */ - Afn = "AFN", + Afn = 'AFN', /** Albanian Lek (ALL). */ - All = "ALL", + All = 'ALL', /** Armenian Dram (AMD). */ - Amd = "AMD", + Amd = 'AMD', /** Netherlands Antillean Guilder. */ - Ang = "ANG", + Ang = 'ANG', /** Angolan Kwanza (AOA). */ - Aoa = "AOA", + Aoa = 'AOA', /** Argentine Pesos (ARS). */ - Ars = "ARS", + Ars = 'ARS', /** Australian Dollars (AUD). */ - Aud = "AUD", + Aud = 'AUD', /** Aruban Florin (AWG). */ - Awg = "AWG", + Awg = 'AWG', /** Azerbaijani Manat (AZN). */ - Azn = "AZN", + Azn = 'AZN', /** Bosnia and Herzegovina Convertible Mark (BAM). */ - Bam = "BAM", + Bam = 'BAM', /** Barbadian Dollar (BBD). */ - Bbd = "BBD", + Bbd = 'BBD', /** Bangladesh Taka (BDT). */ - Bdt = "BDT", + Bdt = 'BDT', /** Bulgarian Lev (BGN). */ - Bgn = "BGN", + Bgn = 'BGN', /** Bahraini Dinar (BHD). */ - Bhd = "BHD", + Bhd = 'BHD', /** Burundian Franc (BIF). */ - Bif = "BIF", + Bif = 'BIF', /** Bermudian Dollar (BMD). */ - Bmd = "BMD", + Bmd = 'BMD', /** Brunei Dollar (BND). */ - Bnd = "BND", + Bnd = 'BND', /** Bolivian Boliviano (BOB). */ - Bob = "BOB", + Bob = 'BOB', /** Brazilian Real (BRL). */ - Brl = "BRL", + Brl = 'BRL', /** Bahamian Dollar (BSD). */ - Bsd = "BSD", + Bsd = 'BSD', /** Bhutanese Ngultrum (BTN). */ - Btn = "BTN", + Btn = 'BTN', /** Botswana Pula (BWP). */ - Bwp = "BWP", + Bwp = 'BWP', /** Belarusian Ruble (BYN). */ - Byn = "BYN", + Byn = 'BYN', /** * Belarusian Ruble (BYR). * @deprecated Use `BYN` instead. */ - Byr = "BYR", + Byr = 'BYR', /** Belize Dollar (BZD). */ - Bzd = "BZD", + Bzd = 'BZD', /** Canadian Dollars (CAD). */ - Cad = "CAD", + Cad = 'CAD', /** Congolese franc (CDF). */ - Cdf = "CDF", + Cdf = 'CDF', /** Swiss Francs (CHF). */ - Chf = "CHF", + Chf = 'CHF', /** Chilean Peso (CLP). */ - Clp = "CLP", + Clp = 'CLP', /** Chinese Yuan Renminbi (CNY). */ - Cny = "CNY", + Cny = 'CNY', /** Colombian Peso (COP). */ - Cop = "COP", + Cop = 'COP', /** Costa Rican Colones (CRC). */ - Crc = "CRC", + Crc = 'CRC', /** Cape Verdean escudo (CVE). */ - Cve = "CVE", + Cve = 'CVE', /** Czech Koruny (CZK). */ - Czk = "CZK", + Czk = 'CZK', /** Djiboutian Franc (DJF). */ - Djf = "DJF", + Djf = 'DJF', /** Danish Kroner (DKK). */ - Dkk = "DKK", + Dkk = 'DKK', /** Dominican Peso (DOP). */ - Dop = "DOP", + Dop = 'DOP', /** Algerian Dinar (DZD). */ - Dzd = "DZD", + Dzd = 'DZD', /** Egyptian Pound (EGP). */ - Egp = "EGP", + Egp = 'EGP', /** Eritrean Nakfa (ERN). */ - Ern = "ERN", + Ern = 'ERN', /** Ethiopian Birr (ETB). */ - Etb = "ETB", + Etb = 'ETB', /** Euro (EUR). */ - Eur = "EUR", + Eur = 'EUR', /** Fijian Dollars (FJD). */ - Fjd = "FJD", + Fjd = 'FJD', /** Falkland Islands Pounds (FKP). */ - Fkp = "FKP", + Fkp = 'FKP', /** United Kingdom Pounds (GBP). */ - Gbp = "GBP", + Gbp = 'GBP', /** Georgian Lari (GEL). */ - Gel = "GEL", + Gel = 'GEL', /** Ghanaian Cedi (GHS). */ - Ghs = "GHS", + Ghs = 'GHS', /** Gibraltar Pounds (GIP). */ - Gip = "GIP", + Gip = 'GIP', /** Gambian Dalasi (GMD). */ - Gmd = "GMD", + Gmd = 'GMD', /** Guinean Franc (GNF). */ - Gnf = "GNF", + Gnf = 'GNF', /** Guatemalan Quetzal (GTQ). */ - Gtq = "GTQ", + Gtq = 'GTQ', /** Guyanese Dollar (GYD). */ - Gyd = "GYD", + Gyd = 'GYD', /** Hong Kong Dollars (HKD). */ - Hkd = "HKD", + Hkd = 'HKD', /** Honduran Lempira (HNL). */ - Hnl = "HNL", + Hnl = 'HNL', /** Croatian Kuna (HRK). */ - Hrk = "HRK", + Hrk = 'HRK', /** Haitian Gourde (HTG). */ - Htg = "HTG", + Htg = 'HTG', /** Hungarian Forint (HUF). */ - Huf = "HUF", + Huf = 'HUF', /** Indonesian Rupiah (IDR). */ - Idr = "IDR", + Idr = 'IDR', /** Israeli New Shekel (NIS). */ - Ils = "ILS", + Ils = 'ILS', /** Indian Rupees (INR). */ - Inr = "INR", + Inr = 'INR', /** Iraqi Dinar (IQD). */ - Iqd = "IQD", + Iqd = 'IQD', /** Iranian Rial (IRR). */ - Irr = "IRR", + Irr = 'IRR', /** Icelandic Kronur (ISK). */ - Isk = "ISK", + Isk = 'ISK', /** Jersey Pound. */ - Jep = "JEP", + Jep = 'JEP', /** Jamaican Dollars (JMD). */ - Jmd = "JMD", + Jmd = 'JMD', /** Jordanian Dinar (JOD). */ - Jod = "JOD", + Jod = 'JOD', /** Japanese Yen (JPY). */ - Jpy = "JPY", + Jpy = 'JPY', /** Kenyan Shilling (KES). */ - Kes = "KES", + Kes = 'KES', /** Kyrgyzstani Som (KGS). */ - Kgs = "KGS", + Kgs = 'KGS', /** Cambodian Riel. */ - Khr = "KHR", + Khr = 'KHR', /** Kiribati Dollar (KID). */ - Kid = "KID", + Kid = 'KID', /** Comorian Franc (KMF). */ - Kmf = "KMF", + Kmf = 'KMF', /** South Korean Won (KRW). */ - Krw = "KRW", + Krw = 'KRW', /** Kuwaiti Dinar (KWD). */ - Kwd = "KWD", + Kwd = 'KWD', /** Cayman Dollars (KYD). */ - Kyd = "KYD", + Kyd = 'KYD', /** Kazakhstani Tenge (KZT). */ - Kzt = "KZT", + Kzt = 'KZT', /** Laotian Kip (LAK). */ - Lak = "LAK", + Lak = 'LAK', /** Lebanese Pounds (LBP). */ - Lbp = "LBP", + Lbp = 'LBP', /** Sri Lankan Rupees (LKR). */ - Lkr = "LKR", + Lkr = 'LKR', /** Liberian Dollar (LRD). */ - Lrd = "LRD", + Lrd = 'LRD', /** Lesotho Loti (LSL). */ - Lsl = "LSL", + Lsl = 'LSL', /** Lithuanian Litai (LTL). */ - Ltl = "LTL", + Ltl = 'LTL', /** Latvian Lati (LVL). */ - Lvl = "LVL", + Lvl = 'LVL', /** Libyan Dinar (LYD). */ - Lyd = "LYD", + Lyd = 'LYD', /** Moroccan Dirham. */ - Mad = "MAD", + Mad = 'MAD', /** Moldovan Leu (MDL). */ - Mdl = "MDL", + Mdl = 'MDL', /** Malagasy Ariary (MGA). */ - Mga = "MGA", + Mga = 'MGA', /** Macedonia Denar (MKD). */ - Mkd = "MKD", + Mkd = 'MKD', /** Burmese Kyat (MMK). */ - Mmk = "MMK", + Mmk = 'MMK', /** Mongolian Tugrik. */ - Mnt = "MNT", + Mnt = 'MNT', /** Macanese Pataca (MOP). */ - Mop = "MOP", + Mop = 'MOP', /** Mauritanian Ouguiya (MRU). */ - Mru = "MRU", + Mru = 'MRU', /** Mauritian Rupee (MUR). */ - Mur = "MUR", + Mur = 'MUR', /** Maldivian Rufiyaa (MVR). */ - Mvr = "MVR", + Mvr = 'MVR', /** Malawian Kwacha (MWK). */ - Mwk = "MWK", + Mwk = 'MWK', /** Mexican Pesos (MXN). */ - Mxn = "MXN", + Mxn = 'MXN', /** Malaysian Ringgits (MYR). */ - Myr = "MYR", + Myr = 'MYR', /** Mozambican Metical. */ - Mzn = "MZN", + Mzn = 'MZN', /** Namibian Dollar. */ - Nad = "NAD", + Nad = 'NAD', /** Nigerian Naira (NGN). */ - Ngn = "NGN", + Ngn = 'NGN', /** Nicaraguan Córdoba (NIO). */ - Nio = "NIO", + Nio = 'NIO', /** Norwegian Kroner (NOK). */ - Nok = "NOK", + Nok = 'NOK', /** Nepalese Rupee (NPR). */ - Npr = "NPR", + Npr = 'NPR', /** New Zealand Dollars (NZD). */ - Nzd = "NZD", + Nzd = 'NZD', /** Omani Rial (OMR). */ - Omr = "OMR", + Omr = 'OMR', /** Panamian Balboa (PAB). */ - Pab = "PAB", + Pab = 'PAB', /** Peruvian Nuevo Sol (PEN). */ - Pen = "PEN", + Pen = 'PEN', /** Papua New Guinean Kina (PGK). */ - Pgk = "PGK", + Pgk = 'PGK', /** Philippine Peso (PHP). */ - Php = "PHP", + Php = 'PHP', /** Pakistani Rupee (PKR). */ - Pkr = "PKR", + Pkr = 'PKR', /** Polish Zlotych (PLN). */ - Pln = "PLN", + Pln = 'PLN', /** Paraguayan Guarani (PYG). */ - Pyg = "PYG", + Pyg = 'PYG', /** Qatari Rial (QAR). */ - Qar = "QAR", + Qar = 'QAR', /** Romanian Lei (RON). */ - Ron = "RON", + Ron = 'RON', /** Serbian dinar (RSD). */ - Rsd = "RSD", + Rsd = 'RSD', /** Russian Rubles (RUB). */ - Rub = "RUB", + Rub = 'RUB', /** Rwandan Franc (RWF). */ - Rwf = "RWF", + Rwf = 'RWF', /** Saudi Riyal (SAR). */ - Sar = "SAR", + Sar = 'SAR', /** Solomon Islands Dollar (SBD). */ - Sbd = "SBD", + Sbd = 'SBD', /** Seychellois Rupee (SCR). */ - Scr = "SCR", + Scr = 'SCR', /** Sudanese Pound (SDG). */ - Sdg = "SDG", + Sdg = 'SDG', /** Swedish Kronor (SEK). */ - Sek = "SEK", + Sek = 'SEK', /** Singapore Dollars (SGD). */ - Sgd = "SGD", + Sgd = 'SGD', /** Saint Helena Pounds (SHP). */ - Shp = "SHP", + Shp = 'SHP', /** Sierra Leonean Leone (SLL). */ - Sll = "SLL", + Sll = 'SLL', /** Somali Shilling (SOS). */ - Sos = "SOS", + Sos = 'SOS', /** Surinamese Dollar (SRD). */ - Srd = "SRD", + Srd = 'SRD', /** South Sudanese Pound (SSP). */ - Ssp = "SSP", + Ssp = 'SSP', /** * Sao Tome And Principe Dobra (STD). * @deprecated Use `STN` instead. */ - Std = "STD", + Std = 'STD', /** Sao Tome And Principe Dobra (STN). */ - Stn = "STN", + Stn = 'STN', /** Syrian Pound (SYP). */ - Syp = "SYP", + Syp = 'SYP', /** Swazi Lilangeni (SZL). */ - Szl = "SZL", + Szl = 'SZL', /** Thai baht (THB). */ - Thb = "THB", + Thb = 'THB', /** Tajikistani Somoni (TJS). */ - Tjs = "TJS", + Tjs = 'TJS', /** Turkmenistani Manat (TMT). */ - Tmt = "TMT", + Tmt = 'TMT', /** Tunisian Dinar (TND). */ - Tnd = "TND", + Tnd = 'TND', /** Tongan Pa'anga (TOP). */ - Top = "TOP", + Top = 'TOP', /** Turkish Lira (TRY). */ - Try = "TRY", + Try = 'TRY', /** Trinidad and Tobago Dollars (TTD). */ - Ttd = "TTD", + Ttd = 'TTD', /** Taiwan Dollars (TWD). */ - Twd = "TWD", + Twd = 'TWD', /** Tanzanian Shilling (TZS). */ - Tzs = "TZS", + Tzs = 'TZS', /** Ukrainian Hryvnia (UAH). */ - Uah = "UAH", + Uah = 'UAH', /** Ugandan Shilling (UGX). */ - Ugx = "UGX", + Ugx = 'UGX', /** United States Dollars (USD). */ - Usd = "USD", + Usd = 'USD', /** United States Dollars Coin (USDC). */ - Usdc = "USDC", + Usdc = 'USDC', /** Uruguayan Pesos (UYU). */ - Uyu = "UYU", + Uyu = 'UYU', /** Uzbekistan som (UZS). */ - Uzs = "UZS", + Uzs = 'UZS', /** Venezuelan Bolivares (VED). */ - Ved = "VED", + Ved = 'VED', /** * Venezuelan Bolivares (VEF). * @deprecated Use `VES` instead. */ - Vef = "VEF", + Vef = 'VEF', /** Venezuelan Bolivares Soberanos (VES). */ - Ves = "VES", + Ves = 'VES', /** Vietnamese đồng (VND). */ - Vnd = "VND", + Vnd = 'VND', /** Vanuatu Vatu (VUV). */ - Vuv = "VUV", + Vuv = 'VUV', /** Samoan Tala (WST). */ - Wst = "WST", + Wst = 'WST', /** Central African CFA Franc (XAF). */ - Xaf = "XAF", + Xaf = 'XAF', /** East Caribbean Dollar (XCD). */ - Xcd = "XCD", + Xcd = 'XCD', /** West African CFA franc (XOF). */ - Xof = "XOF", + Xof = 'XOF', /** CFP Franc (XPF). */ - Xpf = "XPF", + Xpf = 'XPF', /** Unrecognized currency. */ - Xxx = "XXX", + Xxx = 'XXX', /** Yemeni Rial (YER). */ - Yer = "YER", + Yer = 'YER', /** South African Rand (ZAR). */ - Zar = "ZAR", + Zar = 'ZAR', /** Zambian Kwacha (ZMW). */ - Zmw = "ZMW", + Zmw = 'ZMW' } /** @@ -1499,23 +1465,23 @@ export enum CurrencyCode { * information, or weight measurements and conversions. */ export type CustomProduct = { - __typename?: "CustomProduct"; + __typename?: 'CustomProduct'; /** Whether the merchandise is a gift card. */ - isGiftCard: Scalars["Boolean"]["output"]; + isGiftCard: Scalars['Boolean']['output']; /** * Whether the item needs to be shipped to the customer. For example, a * digital gift card doesn't need to be shipped, but a t-shirt does * need to be shipped. */ - requiresShipping: Scalars["Boolean"]["output"]; + requiresShipping: Scalars['Boolean']['output']; /** * The localized name for the product that displays to customers. The title is used to construct the product's * handle, which is a unique, human-readable string of the product's title. For example, if a product is titled * "Black Sunglasses", then the handle is `black-sunglasses`. */ - title: Scalars["String"]["output"]; + title: Scalars['String']['output']; /** The product variant's weight, in the system of measurement set in the `weightUnit` field. */ - weight?: Maybe; + weight?: Maybe; /** The unit of measurement for weight. */ weightUnit: WeightUnit; }; @@ -1525,7 +1491,7 @@ export type CustomProduct = { * `Customer` returns data including the customer's contact information and order history. */ export type Customer = HasMetafields & { - __typename?: "Customer"; + __typename?: 'Customer'; /** * The total amount that the customer has spent on orders. * The amount is converted from the shop's currency to the currency of the cart using a market rate. @@ -1536,25 +1502,25 @@ export type Customer = HasMetafields & { * If `firstName` and `lastName` aren't specified, then the value is the customer's email address. * If the email address isn't specified, then the value is the customer's phone number. */ - displayName: Scalars["String"]["output"]; + displayName: Scalars['String']['output']; /** The customer's email address. */ - email?: Maybe; + email?: Maybe; /** The customer's first name. */ - firstName?: Maybe; + firstName?: Maybe; /** * Whether the customer is associated with any of the specified tags. The customer must have at least one tag * from the list to return `true`. */ - hasAnyTag: Scalars["Boolean"]["output"]; + hasAnyTag: Scalars['Boolean']['output']; /** Whether the customer is associated with the specified tags. */ hasTags: Array; /** * A [globally-unique ID](https://shopify.dev/docs/api/usage/gids) * for the customer. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** The customer's last name. */ - lastName?: Maybe; + lastName?: Maybe; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -1564,37 +1530,40 @@ export type Customer = HasMetafields & { */ metafield?: Maybe; /** The total number of orders that the customer has made at the store. */ - numberOfOrders: Scalars["Int"]["output"]; + numberOfOrders: Scalars['Int']['output']; }; + /** * Represents a [customer](https://help.shopify.com/manual/customers/manage-customers). * `Customer` returns data including the customer's contact information and order history. */ export type CustomerHasAnyTagArgs = { - tags?: Array; + tags?: Array; }; + /** * Represents a [customer](https://help.shopify.com/manual/customers/manage-customers). * `Customer` returns data including the customer's contact information and order history. */ export type CustomerHasTagsArgs = { - tags?: Array; + tags?: Array; }; + /** * Represents a [customer](https://help.shopify.com/manual/customers/manage-customers). * `Customer` returns data including the customer's contact information and order history. */ export type CustomerMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** Represents information about the merchandise in the cart. */ export type DeliverableCartLine = { - __typename?: "DeliverableCartLine"; + __typename?: 'DeliverableCartLine'; /** * The custom attributes associated with a cart to store additional information. Cart attributes * allow you to collect specific information from customers on the **Cart** page, such as order notes, @@ -1606,16 +1575,17 @@ export type DeliverableCartLine = { */ attribute?: Maybe; /** The ID of the cart line. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** The item that the customer intends to purchase. */ merchandise: Merchandise; /** The quantity of the item that the customer intends to purchase. */ - quantity: Scalars["Int"]["output"]; + quantity: Scalars['Int']['output']; }; + /** Represents information about the merchandise in the cart. */ export type DeliverableCartLineAttributeArgs = { - key?: InputMaybe; + key?: InputMaybe; }; /** The discount that's eligible to be applied to a delivery. */ @@ -1632,7 +1602,7 @@ export type DeliveryDiscountCandidate = { * message, such as "Save 20% on all t-shirts." If a discount code is entered, * the notification displays the code instead. */ - message?: InputMaybe; + message?: InputMaybe; /** The targets of the discount that are eligible to be applied to a delivery. */ targets: Array; /** The value of the discount that's eligible to be applied to a delivery. */ @@ -1647,18 +1617,20 @@ export type DeliveryDiscountCandidateTarget = * For example, if a customer orders a t-shirt and a pair of shoes that can be shipped together, then the * items are included in the same delivery group. */ - | { deliveryGroup: DeliveryGroupTarget; deliveryOption?: never } /** + { deliveryGroup: DeliveryGroupTarget; deliveryOption?: never; } + | /** * A method for applying a discount to a delivery option within a delivery group. * Delivery options are the different ways that customers can choose to have their * orders shipped. Examples of delivery options include express shipping or standard shipping. */ - | { deliveryGroup?: never; deliveryOption: DeliveryOptionTarget }; + { deliveryGroup?: never; deliveryOption: DeliveryOptionTarget; }; /** The value of the eligible delivery discount. */ export type DeliveryDiscountCandidateValue = /** A fixed amount value. */ - | { fixedAmount: FixedAmount; percentage?: never } /** A percentage value. */ - | { fixedAmount?: never; percentage: Percentage }; + { fixedAmount: FixedAmount; percentage?: never; } + | /** A percentage value. */ + { fixedAmount?: never; percentage: Percentage; }; /** The strategy that's applied to the list of discounts that are eligible to be applied to a delivery. */ export enum DeliveryDiscountSelectionStrategy { @@ -1667,7 +1639,7 @@ export enum DeliveryDiscountSelectionStrategy { * conditions that are satisfied. This doesn't override * discount combination or stacking rules. */ - All = "ALL", + All = 'ALL' } /** @@ -1696,23 +1668,23 @@ export type DeliveryDiscountsAddOperation = { */ export type DeliveryGroupTarget = { /** The ID of the target delivery group. */ - id: Scalars["ID"]["input"]; + id: Scalars['ID']['input']; }; /** List of different delivery method types. */ export enum DeliveryMethod { /** Local Delivery. */ - Local = "LOCAL", + Local = 'LOCAL', /** None. */ - None = "NONE", + None = 'NONE', /** Shipping to a Pickup Point. */ - PickupPoint = "PICKUP_POINT", + PickupPoint = 'PICKUP_POINT', /** Local Pickup. */ - PickUp = "PICK_UP", + PickUp = 'PICK_UP', /** Retail. */ - Retail = "RETAIL", + Retail = 'RETAIL', /** Shipping. */ - Shipping = "SHIPPING", + Shipping = 'SHIPPING' } /** @@ -1727,28 +1699,18 @@ export type DeliveryOperation = * Applies delivery discounts to a cart that share a method for determining which * shipping and delivery discounts to apply when multiple discounts are eligible. */ - | { - deliveryDiscountsAdd: DeliveryDiscountsAddOperation; - enteredDiscountCodesAccept?: never; - enteredDiscountCodesReject?: never; - } /** + { deliveryDiscountsAdd: DeliveryDiscountsAddOperation; enteredDiscountCodesAccept?: never; enteredDiscountCodesReject?: never; } + | /** * An operation that selects which entered discount codes to accept. Use this to * validate discount codes from external systems. */ - | { - deliveryDiscountsAdd?: never; - enteredDiscountCodesAccept: EnteredDiscountCodesAcceptOperation; - enteredDiscountCodesReject?: never; - } /** + { deliveryDiscountsAdd?: never; enteredDiscountCodesAccept: EnteredDiscountCodesAcceptOperation; enteredDiscountCodesReject?: never; } + | /** * An operation that rejects entered discount codes with a custom message. Use * this to conditionally reject discount codes based on business logic. This * operation can only be used if the function is backed by an automatic discount. */ - | { - deliveryDiscountsAdd?: never; - enteredDiscountCodesAccept?: never; - enteredDiscountCodesReject: EnteredDiscountCodesRejectOperation; - }; + { deliveryDiscountsAdd?: never; enteredDiscountCodesAccept?: never; enteredDiscountCodesReject: EnteredDiscountCodesRejectOperation; }; /** * A method for applying a discount to a delivery option within a delivery group. @@ -1757,12 +1719,12 @@ export type DeliveryOperation = */ export type DeliveryOptionTarget = { /** The handle of the target delivery option. */ - handle: Scalars["Handle"]["input"]; + handle: Scalars['Handle']['input']; }; /** The discount that invoked the [Discount Function](https://shopify.dev/docs/apps/build/discounts#build-with-shopify-functions)). */ export type Discount = HasMetafields & { - __typename?: "Discount"; + __typename?: 'Discount'; /** The [discount classes](https://shopify.dev/docs/apps/build/discounts/#discount-classes) that the [discountNode](https://shopify.dev/docs/api/admin-graphql/latest/queries/discountNode) supports. */ discountClasses: Array; /** @@ -1775,10 +1737,11 @@ export type Discount = HasMetafields & { metafield?: Maybe; }; + /** The discount that invoked the [Discount Function](https://shopify.dev/docs/apps/build/discounts#build-with-shopify-functions)). */ export type DiscountMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** @@ -1791,38 +1754,38 @@ export enum DiscountClass { * [order discount](https://help.shopify.com/manual/discounts/combining-discounts/discount-combinations) * class. */ - Order = "ORDER", + Order = 'ORDER', /** * The discount is combined with a * [product discount](https://help.shopify.com/manual/discounts/combining-discounts/discount-combinations) * class. */ - Product = "PRODUCT", + Product = 'PRODUCT', /** * The discount is combined with a * [shipping discount](https://help.shopify.com/manual/discounts/combining-discounts/discount-combinations) * class. */ - Shipping = "SHIPPING", + Shipping = 'SHIPPING' } /** A discount code used by the buyer to add a discount to the cart. */ export type DiscountCode = { /** The discount code. */ - code: Scalars["String"]["input"]; + code: Scalars['String']['input']; }; /** A discount code entered by the customer. */ export type EnteredDiscountCode = { - __typename?: "EnteredDiscountCode"; + __typename?: 'EnteredDiscountCode'; /** The discount code. */ - code: Scalars["String"]["output"]; + code: Scalars['String']['output']; /** * Indicates whether the entered discount code can be rejected. * * A discount code can't be rejected if it's associated with a discount that has already been applied to the cart. */ - rejectable: Scalars["Boolean"]["output"]; + rejectable: Scalars['Boolean']['output']; }; /** An operation that selects which entered discount codes to accept. Use this to validate discount codes from external systems. */ @@ -1840,7 +1803,7 @@ export type EnteredDiscountCodesRejectOperation = { /** The list of discount codes to reject. */ codes: Array; /** The custom message to display to the customer when the discount codes are rejected. */ - message: Scalars["String"]["input"]; + message: Scalars['String']['input']; }; /** A fixed amount value. */ @@ -1850,7 +1813,7 @@ export type FixedAmount = { * * The amount must be greater than or equal to 0. */ - amount: Scalars["Decimal"]["input"]; + amount: Scalars['Decimal']['input']; }; /** Represents information about the metafields associated to the specified resource. */ @@ -1865,23 +1828,24 @@ export type HasMetafields = { metafield?: Maybe; }; + /** Represents information about the metafields associated to the specified resource. */ export type HasMetafieldsMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** Whether a Shopify resource, such as a product or customer, has a specified tag. */ export type HasTagResponse = { - __typename?: "HasTagResponse"; + __typename?: 'HasTagResponse'; /** Whether the Shopify resource has the tag. */ - hasTag: Scalars["Boolean"]["output"]; + hasTag: Scalars['Boolean']['output']; /** * A searchable keyword that's associated with a Shopify resource, such as a product or customer. For example, * a merchant might apply the `sports` and `summer` tags to products that are associated with sportswear for * summer. */ - tag: Scalars["String"]["output"]; + tag: Scalars['String']['output']; }; /** The attributes associated with an HTTP request. */ @@ -1890,7 +1854,7 @@ export type HttpRequest = { * The HTTP request body as a plain string. * Use this field when the body isn't in JSON format. */ - body?: InputMaybe; + body?: InputMaybe; /** The HTTP headers. */ headers: Array; /** @@ -1902,45 +1866,45 @@ export type HttpRequest = { * If this field is specified and no `Content-Type` header is included, then the header will * automatically be set to `application/json`. */ - jsonBody?: InputMaybe; + jsonBody?: InputMaybe; /** The HTTP method. */ method: HttpRequestMethod; /** Policy attached to the HTTP request. */ policy: HttpRequestPolicy; /** The HTTP url (eg.: https://example.com). The scheme needs to be HTTPS. */ - url: Scalars["URL"]["input"]; + url: Scalars['URL']['input']; }; /** The attributes associated with an HTTP request header. */ export type HttpRequestHeader = { /** Header name. */ - name: Scalars["String"]["input"]; + name: Scalars['String']['input']; /** Header value. */ - value: Scalars["String"]["input"]; + value: Scalars['String']['input']; }; /** The HTTP request available methods. */ export enum HttpRequestMethod { /** Http GET. */ - Get = "GET", + Get = 'GET', /** Http POST. */ - Post = "POST", + Post = 'POST' } /** The attributes associated with an HTTP request policy. */ export type HttpRequestPolicy = { /** Read timeout in milliseconds. */ - readTimeoutMs: Scalars["Int"]["input"]; + readTimeoutMs: Scalars['Int']['input']; }; /** The attributes associated with an HTTP response. */ export type HttpResponse = { - __typename?: "HttpResponse"; + __typename?: 'HttpResponse'; /** * The HTTP response body as a plain string. * Use this field when the body is not in JSON format. */ - body?: Maybe; + body?: Maybe; /** An HTTP header. */ header?: Maybe; /** @@ -1958,28 +1922,29 @@ export type HttpResponse = { * To prevent increasing the function target input size unnecessarily, avoid querying * both `body` and `jsonBody` simultaneously. */ - jsonBody?: Maybe; + jsonBody?: Maybe; /** The HTTP status code. */ - status: Scalars["Int"]["output"]; + status: Scalars['Int']['output']; }; + /** The attributes associated with an HTTP response. */ export type HttpResponseHeaderArgs = { - name: Scalars["String"]["input"]; + name: Scalars['String']['input']; }; /** The attributes associated with an HTTP response header. */ export type HttpResponseHeader = { - __typename?: "HttpResponseHeader"; + __typename?: 'HttpResponseHeader'; /** Header name. */ - name: Scalars["String"]["output"]; + name: Scalars['String']['output']; /** Header value. */ - value: Scalars["String"]["output"]; + value: Scalars['String']['output']; }; /** The input object for the Function. */ export type Input = { - __typename?: "Input"; + __typename?: 'Input'; /** * The cart where the Function is running. A cart contains the merchandise that a customer intends to purchase * and information about the customer, such as the customer's email address and phone number. @@ -2020,7 +1985,7 @@ export type Input = { * For example, if a store operates in USD but a customer is viewing discounts in EUR, * then the presentment currency rate handles this conversion for accurate pricing. */ - presentmentCurrencyRate: Scalars["Decimal"]["output"]; + presentmentCurrencyRate: Scalars['Decimal']['output']; /** * Information about the shop where the Function is running, including the shop's timezone * setting and associated [metafields](https://shopify.dev/docs/apps/build/custom-data). @@ -2031,7 +1996,7 @@ export type Input = { * This input is only available in the `cart.lines.discounts.generate.run` and * `cart.delivery-options.discounts.generate.run` extension targets. */ - triggeringDiscountCode?: Maybe; + triggeringDiscountCode?: Maybe; }; /** @@ -2039,7 +2004,7 @@ export type Input = { * This includes product descriptions and customer communications that resonate with the target audience. */ export type Language = { - __typename?: "Language"; + __typename?: 'Language'; /** The ISO code. */ isoCode: LanguageCode; }; @@ -2047,287 +2012,287 @@ export type Language = { /** Language codes supported by Shopify. */ export enum LanguageCode { /** Afrikaans. */ - Af = "AF", + Af = 'AF', /** Akan. */ - Ak = "AK", + Ak = 'AK', /** Amharic. */ - Am = "AM", + Am = 'AM', /** Arabic. */ - Ar = "AR", + Ar = 'AR', /** Assamese. */ - As = "AS", + As = 'AS', /** Azerbaijani. */ - Az = "AZ", + Az = 'AZ', /** Belarusian. */ - Be = "BE", + Be = 'BE', /** Bulgarian. */ - Bg = "BG", + Bg = 'BG', /** Bambara. */ - Bm = "BM", + Bm = 'BM', /** Bangla. */ - Bn = "BN", + Bn = 'BN', /** Tibetan. */ - Bo = "BO", + Bo = 'BO', /** Breton. */ - Br = "BR", + Br = 'BR', /** Bosnian. */ - Bs = "BS", + Bs = 'BS', /** Catalan. */ - Ca = "CA", + Ca = 'CA', /** Chechen. */ - Ce = "CE", + Ce = 'CE', /** Central Kurdish. */ - Ckb = "CKB", + Ckb = 'CKB', /** Czech. */ - Cs = "CS", + Cs = 'CS', /** Church Slavic. */ - Cu = "CU", + Cu = 'CU', /** Welsh. */ - Cy = "CY", + Cy = 'CY', /** Danish. */ - Da = "DA", + Da = 'DA', /** German. */ - De = "DE", + De = 'DE', /** Dzongkha. */ - Dz = "DZ", + Dz = 'DZ', /** Ewe. */ - Ee = "EE", + Ee = 'EE', /** Greek. */ - El = "EL", + El = 'EL', /** English. */ - En = "EN", + En = 'EN', /** Esperanto. */ - Eo = "EO", + Eo = 'EO', /** Spanish. */ - Es = "ES", + Es = 'ES', /** Estonian. */ - Et = "ET", + Et = 'ET', /** Basque. */ - Eu = "EU", + Eu = 'EU', /** Persian. */ - Fa = "FA", + Fa = 'FA', /** Fulah. */ - Ff = "FF", + Ff = 'FF', /** Finnish. */ - Fi = "FI", + Fi = 'FI', /** Filipino. */ - Fil = "FIL", + Fil = 'FIL', /** Faroese. */ - Fo = "FO", + Fo = 'FO', /** French. */ - Fr = "FR", + Fr = 'FR', /** Western Frisian. */ - Fy = "FY", + Fy = 'FY', /** Irish. */ - Ga = "GA", + Ga = 'GA', /** Scottish Gaelic. */ - Gd = "GD", + Gd = 'GD', /** Galician. */ - Gl = "GL", + Gl = 'GL', /** Gujarati. */ - Gu = "GU", + Gu = 'GU', /** Manx. */ - Gv = "GV", + Gv = 'GV', /** Hausa. */ - Ha = "HA", + Ha = 'HA', /** Hebrew. */ - He = "HE", + He = 'HE', /** Hindi. */ - Hi = "HI", + Hi = 'HI', /** Croatian. */ - Hr = "HR", + Hr = 'HR', /** Hungarian. */ - Hu = "HU", + Hu = 'HU', /** Armenian. */ - Hy = "HY", + Hy = 'HY', /** Interlingua. */ - Ia = "IA", + Ia = 'IA', /** Indonesian. */ - Id = "ID", + Id = 'ID', /** Igbo. */ - Ig = "IG", + Ig = 'IG', /** Sichuan Yi. */ - Ii = "II", + Ii = 'II', /** Icelandic. */ - Is = "IS", + Is = 'IS', /** Italian. */ - It = "IT", + It = 'IT', /** Japanese. */ - Ja = "JA", + Ja = 'JA', /** Javanese. */ - Jv = "JV", + Jv = 'JV', /** Georgian. */ - Ka = "KA", + Ka = 'KA', /** Kikuyu. */ - Ki = "KI", + Ki = 'KI', /** Kazakh. */ - Kk = "KK", + Kk = 'KK', /** Kalaallisut. */ - Kl = "KL", + Kl = 'KL', /** Khmer. */ - Km = "KM", + Km = 'KM', /** Kannada. */ - Kn = "KN", + Kn = 'KN', /** Korean. */ - Ko = "KO", + Ko = 'KO', /** Kashmiri. */ - Ks = "KS", + Ks = 'KS', /** Kurdish. */ - Ku = "KU", + Ku = 'KU', /** Cornish. */ - Kw = "KW", + Kw = 'KW', /** Kyrgyz. */ - Ky = "KY", + Ky = 'KY', /** Luxembourgish. */ - Lb = "LB", + Lb = 'LB', /** Ganda. */ - Lg = "LG", + Lg = 'LG', /** Lingala. */ - Ln = "LN", + Ln = 'LN', /** Lao. */ - Lo = "LO", + Lo = 'LO', /** Lithuanian. */ - Lt = "LT", + Lt = 'LT', /** Luba-Katanga. */ - Lu = "LU", + Lu = 'LU', /** Latvian. */ - Lv = "LV", + Lv = 'LV', /** Malagasy. */ - Mg = "MG", + Mg = 'MG', /** Māori. */ - Mi = "MI", + Mi = 'MI', /** Macedonian. */ - Mk = "MK", + Mk = 'MK', /** Malayalam. */ - Ml = "ML", + Ml = 'ML', /** Mongolian. */ - Mn = "MN", + Mn = 'MN', /** Marathi. */ - Mr = "MR", + Mr = 'MR', /** Malay. */ - Ms = "MS", + Ms = 'MS', /** Maltese. */ - Mt = "MT", + Mt = 'MT', /** Burmese. */ - My = "MY", + My = 'MY', /** Norwegian (Bokmål). */ - Nb = "NB", + Nb = 'NB', /** North Ndebele. */ - Nd = "ND", + Nd = 'ND', /** Nepali. */ - Ne = "NE", + Ne = 'NE', /** Dutch. */ - Nl = "NL", + Nl = 'NL', /** Norwegian Nynorsk. */ - Nn = "NN", + Nn = 'NN', /** Norwegian. */ - No = "NO", + No = 'NO', /** Oromo. */ - Om = "OM", + Om = 'OM', /** Odia. */ - Or = "OR", + Or = 'OR', /** Ossetic. */ - Os = "OS", + Os = 'OS', /** Punjabi. */ - Pa = "PA", + Pa = 'PA', /** Polish. */ - Pl = "PL", + Pl = 'PL', /** Pashto. */ - Ps = "PS", + Ps = 'PS', /** Portuguese. */ - Pt = "PT", + Pt = 'PT', /** Portuguese (Brazil). */ - PtBr = "PT_BR", + PtBr = 'PT_BR', /** Portuguese (Portugal). */ - PtPt = "PT_PT", + PtPt = 'PT_PT', /** Quechua. */ - Qu = "QU", + Qu = 'QU', /** Romansh. */ - Rm = "RM", + Rm = 'RM', /** Rundi. */ - Rn = "RN", + Rn = 'RN', /** Romanian. */ - Ro = "RO", + Ro = 'RO', /** Russian. */ - Ru = "RU", + Ru = 'RU', /** Kinyarwanda. */ - Rw = "RW", + Rw = 'RW', /** Sanskrit. */ - Sa = "SA", + Sa = 'SA', /** Sardinian. */ - Sc = "SC", + Sc = 'SC', /** Sindhi. */ - Sd = "SD", + Sd = 'SD', /** Northern Sami. */ - Se = "SE", + Se = 'SE', /** Sango. */ - Sg = "SG", + Sg = 'SG', /** Sinhala. */ - Si = "SI", + Si = 'SI', /** Slovak. */ - Sk = "SK", + Sk = 'SK', /** Slovenian. */ - Sl = "SL", + Sl = 'SL', /** Shona. */ - Sn = "SN", + Sn = 'SN', /** Somali. */ - So = "SO", + So = 'SO', /** Albanian. */ - Sq = "SQ", + Sq = 'SQ', /** Serbian. */ - Sr = "SR", + Sr = 'SR', /** Sundanese. */ - Su = "SU", + Su = 'SU', /** Swedish. */ - Sv = "SV", + Sv = 'SV', /** Swahili. */ - Sw = "SW", + Sw = 'SW', /** Tamil. */ - Ta = "TA", + Ta = 'TA', /** Telugu. */ - Te = "TE", + Te = 'TE', /** Tajik. */ - Tg = "TG", + Tg = 'TG', /** Thai. */ - Th = "TH", + Th = 'TH', /** Tigrinya. */ - Ti = "TI", + Ti = 'TI', /** Turkmen. */ - Tk = "TK", + Tk = 'TK', /** Tongan. */ - To = "TO", + To = 'TO', /** Turkish. */ - Tr = "TR", + Tr = 'TR', /** Tatar. */ - Tt = "TT", + Tt = 'TT', /** Uyghur. */ - Ug = "UG", + Ug = 'UG', /** Ukrainian. */ - Uk = "UK", + Uk = 'UK', /** Urdu. */ - Ur = "UR", + Ur = 'UR', /** Uzbek. */ - Uz = "UZ", + Uz = 'UZ', /** Vietnamese. */ - Vi = "VI", + Vi = 'VI', /** Volapük. */ - Vo = "VO", + Vo = 'VO', /** Wolof. */ - Wo = "WO", + Wo = 'WO', /** Xhosa. */ - Xh = "XH", + Xh = 'XH', /** Yiddish. */ - Yi = "YI", + Yi = 'YI', /** Yoruba. */ - Yo = "YO", + Yo = 'YO', /** Chinese. */ - Zh = "ZH", + Zh = 'ZH', /** Chinese (Simplified). */ - ZhCn = "ZH_CN", + ZhCn = 'ZH_CN', /** Chinese (Traditional). */ - ZhTw = "ZH_TW", + ZhTw = 'ZH_TW', /** Zulu. */ - Zu = "ZU", + Zu = 'ZU' } /** @@ -2335,71 +2300,77 @@ export enum LanguageCode { * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTime = { - __typename?: "LocalTime"; + __typename?: 'LocalTime'; /** The current date relative to the parent object. */ - date: Scalars["Date"]["output"]; + date: Scalars['Date']['output']; /** Returns true if the current date and time is at or past the given date and time, and false otherwise. */ - dateTimeAfter: Scalars["Boolean"]["output"]; + dateTimeAfter: Scalars['Boolean']['output']; /** Returns true if the current date and time is before the given date and time, and false otherwise. */ - dateTimeBefore: Scalars["Boolean"]["output"]; + dateTimeBefore: Scalars['Boolean']['output']; /** Returns true if the current date and time is between the two given date and times, and false otherwise. */ - dateTimeBetween: Scalars["Boolean"]["output"]; + dateTimeBetween: Scalars['Boolean']['output']; /** Returns true if the current time is at or past the given time, and false otherwise. */ - timeAfter: Scalars["Boolean"]["output"]; + timeAfter: Scalars['Boolean']['output']; /** Returns true if the current time is at or past the given time, and false otherwise. */ - timeBefore: Scalars["Boolean"]["output"]; + timeBefore: Scalars['Boolean']['output']; /** Returns true if the current time is between the two given times, and false otherwise. */ - timeBetween: Scalars["Boolean"]["output"]; + timeBetween: Scalars['Boolean']['output']; }; + /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTimeDateTimeAfterArgs = { - dateTime: Scalars["DateTimeWithoutTimezone"]["input"]; + dateTime: Scalars['DateTimeWithoutTimezone']['input']; }; + /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTimeDateTimeBeforeArgs = { - dateTime: Scalars["DateTimeWithoutTimezone"]["input"]; + dateTime: Scalars['DateTimeWithoutTimezone']['input']; }; + /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTimeDateTimeBetweenArgs = { - endDateTime: Scalars["DateTimeWithoutTimezone"]["input"]; - startDateTime: Scalars["DateTimeWithoutTimezone"]["input"]; + endDateTime: Scalars['DateTimeWithoutTimezone']['input']; + startDateTime: Scalars['DateTimeWithoutTimezone']['input']; }; + /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTimeTimeAfterArgs = { - time: Scalars["TimeWithoutTimezone"]["input"]; + time: Scalars['TimeWithoutTimezone']['input']; }; + /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTimeTimeBeforeArgs = { - time: Scalars["TimeWithoutTimezone"]["input"]; + time: Scalars['TimeWithoutTimezone']['input']; }; + /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTimeTimeBetweenArgs = { - endTime: Scalars["TimeWithoutTimezone"]["input"]; - startTime: Scalars["TimeWithoutTimezone"]["input"]; + endTime: Scalars['TimeWithoutTimezone']['input']; + startTime: Scalars['TimeWithoutTimezone']['input']; }; /** @@ -2409,7 +2380,7 @@ export type LocalTimeTimeBetweenArgs = { * products in a store. */ export type Localization = { - __typename?: "Localization"; + __typename?: 'Localization'; /** * The country for which the store is customized, reflecting local preferences and regulations. * Localization might influence the language, currency, and product offerings available in a store to enhance @@ -2435,102 +2406,102 @@ export type Localization = { * identification numbers. */ export type LocalizedField = { - __typename?: "LocalizedField"; + __typename?: 'LocalizedField'; /** The key of the localized field. */ key: LocalizedFieldKey; /** The title of the localized field. */ - title: Scalars["String"]["output"]; + title: Scalars['String']['output']; /** The value of the localized field. */ - value?: Maybe; + value?: Maybe; }; /** Unique key identifying localized fields. */ export enum LocalizedFieldKey { /** Localized field key 'shipping_credential_br' for country Brazil. */ - ShippingCredentialBr = "SHIPPING_CREDENTIAL_BR", + ShippingCredentialBr = 'SHIPPING_CREDENTIAL_BR', /** Localized field key 'shipping_credential_cl' for country Chile. */ - ShippingCredentialCl = "SHIPPING_CREDENTIAL_CL", + ShippingCredentialCl = 'SHIPPING_CREDENTIAL_CL', /** Localized field key 'shipping_credential_cn' for country China. */ - ShippingCredentialCn = "SHIPPING_CREDENTIAL_CN", + ShippingCredentialCn = 'SHIPPING_CREDENTIAL_CN', /** Localized field key 'shipping_credential_co' for country Colombia. */ - ShippingCredentialCo = "SHIPPING_CREDENTIAL_CO", + ShippingCredentialCo = 'SHIPPING_CREDENTIAL_CO', /** Localized field key 'shipping_credential_cr' for country Costa Rica. */ - ShippingCredentialCr = "SHIPPING_CREDENTIAL_CR", + ShippingCredentialCr = 'SHIPPING_CREDENTIAL_CR', /** Localized field key 'shipping_credential_ec' for country Ecuador. */ - ShippingCredentialEc = "SHIPPING_CREDENTIAL_EC", + ShippingCredentialEc = 'SHIPPING_CREDENTIAL_EC', /** Localized field key 'shipping_credential_es' for country Spain. */ - ShippingCredentialEs = "SHIPPING_CREDENTIAL_ES", + ShippingCredentialEs = 'SHIPPING_CREDENTIAL_ES', /** Localized field key 'shipping_credential_gt' for country Guatemala. */ - ShippingCredentialGt = "SHIPPING_CREDENTIAL_GT", + ShippingCredentialGt = 'SHIPPING_CREDENTIAL_GT', /** Localized field key 'shipping_credential_id' for country Indonesia. */ - ShippingCredentialId = "SHIPPING_CREDENTIAL_ID", + ShippingCredentialId = 'SHIPPING_CREDENTIAL_ID', /** Localized field key 'shipping_credential_kr' for country South Korea. */ - ShippingCredentialKr = "SHIPPING_CREDENTIAL_KR", + ShippingCredentialKr = 'SHIPPING_CREDENTIAL_KR', /** Localized field key 'shipping_credential_mx' for country Mexico. */ - ShippingCredentialMx = "SHIPPING_CREDENTIAL_MX", + ShippingCredentialMx = 'SHIPPING_CREDENTIAL_MX', /** Localized field key 'shipping_credential_my' for country Malaysia. */ - ShippingCredentialMy = "SHIPPING_CREDENTIAL_MY", + ShippingCredentialMy = 'SHIPPING_CREDENTIAL_MY', /** Localized field key 'shipping_credential_pe' for country Peru. */ - ShippingCredentialPe = "SHIPPING_CREDENTIAL_PE", + ShippingCredentialPe = 'SHIPPING_CREDENTIAL_PE', /** Localized field key 'shipping_credential_pt' for country Portugal. */ - ShippingCredentialPt = "SHIPPING_CREDENTIAL_PT", + ShippingCredentialPt = 'SHIPPING_CREDENTIAL_PT', /** Localized field key 'shipping_credential_py' for country Paraguay. */ - ShippingCredentialPy = "SHIPPING_CREDENTIAL_PY", + ShippingCredentialPy = 'SHIPPING_CREDENTIAL_PY', /** Localized field key 'shipping_credential_tr' for country Turkey. */ - ShippingCredentialTr = "SHIPPING_CREDENTIAL_TR", + ShippingCredentialTr = 'SHIPPING_CREDENTIAL_TR', /** Localized field key 'shipping_credential_tw' for country Taiwan. */ - ShippingCredentialTw = "SHIPPING_CREDENTIAL_TW", + ShippingCredentialTw = 'SHIPPING_CREDENTIAL_TW', /** Localized field key 'shipping_credential_type_co' for country Colombia. */ - ShippingCredentialTypeCo = "SHIPPING_CREDENTIAL_TYPE_CO", + ShippingCredentialTypeCo = 'SHIPPING_CREDENTIAL_TYPE_CO', /** Localized field key 'tax_credential_br' for country Brazil. */ - TaxCredentialBr = "TAX_CREDENTIAL_BR", + TaxCredentialBr = 'TAX_CREDENTIAL_BR', /** Localized field key 'tax_credential_cl' for country Chile. */ - TaxCredentialCl = "TAX_CREDENTIAL_CL", + TaxCredentialCl = 'TAX_CREDENTIAL_CL', /** Localized field key 'tax_credential_co' for country Colombia. */ - TaxCredentialCo = "TAX_CREDENTIAL_CO", + TaxCredentialCo = 'TAX_CREDENTIAL_CO', /** Localized field key 'tax_credential_cr' for country Costa Rica. */ - TaxCredentialCr = "TAX_CREDENTIAL_CR", + TaxCredentialCr = 'TAX_CREDENTIAL_CR', /** Localized field key 'tax_credential_ec' for country Ecuador. */ - TaxCredentialEc = "TAX_CREDENTIAL_EC", + TaxCredentialEc = 'TAX_CREDENTIAL_EC', /** Localized field key 'tax_credential_es' for country Spain. */ - TaxCredentialEs = "TAX_CREDENTIAL_ES", + TaxCredentialEs = 'TAX_CREDENTIAL_ES', /** Localized field key 'tax_credential_gt' for country Guatemala. */ - TaxCredentialGt = "TAX_CREDENTIAL_GT", + TaxCredentialGt = 'TAX_CREDENTIAL_GT', /** Localized field key 'tax_credential_id' for country Indonesia. */ - TaxCredentialId = "TAX_CREDENTIAL_ID", + TaxCredentialId = 'TAX_CREDENTIAL_ID', /** Localized field key 'tax_credential_it' for country Italy. */ - TaxCredentialIt = "TAX_CREDENTIAL_IT", + TaxCredentialIt = 'TAX_CREDENTIAL_IT', /** Localized field key 'tax_credential_mx' for country Mexico. */ - TaxCredentialMx = "TAX_CREDENTIAL_MX", + TaxCredentialMx = 'TAX_CREDENTIAL_MX', /** Localized field key 'tax_credential_my' for country Malaysia. */ - TaxCredentialMy = "TAX_CREDENTIAL_MY", + TaxCredentialMy = 'TAX_CREDENTIAL_MY', /** Localized field key 'tax_credential_pe' for country Peru. */ - TaxCredentialPe = "TAX_CREDENTIAL_PE", + TaxCredentialPe = 'TAX_CREDENTIAL_PE', /** Localized field key 'tax_credential_pt' for country Portugal. */ - TaxCredentialPt = "TAX_CREDENTIAL_PT", + TaxCredentialPt = 'TAX_CREDENTIAL_PT', /** Localized field key 'tax_credential_py' for country Paraguay. */ - TaxCredentialPy = "TAX_CREDENTIAL_PY", + TaxCredentialPy = 'TAX_CREDENTIAL_PY', /** Localized field key 'tax_credential_tr' for country Turkey. */ - TaxCredentialTr = "TAX_CREDENTIAL_TR", + TaxCredentialTr = 'TAX_CREDENTIAL_TR', /** Localized field key 'tax_credential_type_co' for country Colombia. */ - TaxCredentialTypeCo = "TAX_CREDENTIAL_TYPE_CO", + TaxCredentialTypeCo = 'TAX_CREDENTIAL_TYPE_CO', /** Localized field key 'tax_credential_type_mx' for country Mexico. */ - TaxCredentialTypeMx = "TAX_CREDENTIAL_TYPE_MX", + TaxCredentialTypeMx = 'TAX_CREDENTIAL_TYPE_MX', /** Localized field key 'tax_credential_use_mx' for country Mexico. */ - TaxCredentialUseMx = "TAX_CREDENTIAL_USE_MX", + TaxCredentialUseMx = 'TAX_CREDENTIAL_USE_MX', /** Localized field key 'tax_email_it' for country Italy. */ - TaxEmailIt = "TAX_EMAIL_IT", + TaxEmailIt = 'TAX_EMAIL_IT' } /** Represents the location where the inventory resides. */ export type Location = HasMetafields & { - __typename?: "Location"; + __typename?: 'Location'; /** The address of this location. */ address: LocationAddress; /** The location handle. */ - handle: Scalars["Handle"]["output"]; + handle: Scalars['Handle']['output']; /** The location id. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -2540,78 +2511,79 @@ export type Location = HasMetafields & { */ metafield?: Maybe; /** The name of the location. */ - name: Scalars["String"]["output"]; + name: Scalars['String']['output']; }; + /** Represents the location where the inventory resides. */ export type LocationMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** Represents the address of a location. */ export type LocationAddress = { - __typename?: "LocationAddress"; + __typename?: 'LocationAddress'; /** The first line of the address for the location. */ - address1?: Maybe; + address1?: Maybe; /** The second line of the address for the location. */ - address2?: Maybe; + address2?: Maybe; /** The city of the location. */ - city?: Maybe; + city?: Maybe; /** The country of the location. */ - country?: Maybe; + country?: Maybe; /** The country code of the location. */ - countryCode?: Maybe; + countryCode?: Maybe; /** A formatted version of the address for the location. */ - formatted: Array; + formatted: Array; /** The approximate latitude coordinates of the location. */ - latitude?: Maybe; + latitude?: Maybe; /** The approximate longitude coordinates of the location. */ - longitude?: Maybe; + longitude?: Maybe; /** The phone number of the location. */ - phone?: Maybe; + phone?: Maybe; /** The province of the location. */ - province?: Maybe; + province?: Maybe; /** The code for the province, state, or district of the address of the location. */ - provinceCode?: Maybe; + provinceCode?: Maybe; /** The ZIP code of the location. */ - zip?: Maybe; + zip?: Maybe; }; /** Represents a mailing address. */ export type MailingAddress = { - __typename?: "MailingAddress"; + __typename?: 'MailingAddress'; /** The first line of the address. Typically the street address or PO Box number. */ - address1?: Maybe; + address1?: Maybe; /** The second line of the address. Typically the number of the apartment, suite, or unit. */ - address2?: Maybe; + address2?: Maybe; /** The name of the city, district, village, or town. */ - city?: Maybe; + city?: Maybe; /** The name of the customer's company or organization. */ - company?: Maybe; + company?: Maybe; /** The two-letter code for the country of the address. For example, US. */ countryCode?: Maybe; /** The first name of the customer. */ - firstName?: Maybe; + firstName?: Maybe; /** The last name of the customer. */ - lastName?: Maybe; + lastName?: Maybe; /** The approximate latitude of the address. */ - latitude?: Maybe; + latitude?: Maybe; /** The approximate longitude of the address. */ - longitude?: Maybe; + longitude?: Maybe; /** * The market of the address. * @deprecated This `market` field will be removed in a future version of the API. */ market?: Maybe; /** The full name of the customer, based on firstName and lastName. */ - name?: Maybe; + name?: Maybe; /** A unique phone number for the customer. Formatted using E.164 standard. For example, +16135551111. */ - phone?: Maybe; + phone?: Maybe; /** The alphanumeric code for the region. For example, ON. */ - provinceCode?: Maybe; + provinceCode?: Maybe; /** The zip or postal code of the address. */ - zip?: Maybe; + zip?: Maybe; }; /** @@ -2623,11 +2595,11 @@ export type MailingAddress = { * or [add market-specific domains or subfolders](https://shopify.dev/api/admin-graphql/current/objects/MarketWebPresence). */ export type Market = HasMetafields & { - __typename?: "Market"; + __typename?: 'Market'; /** A human-readable unique string for the market automatically generated from its title. */ - handle: Scalars["Handle"]["output"]; + handle: Scalars['Handle']['output']; /** A globally-unique identifier. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -2640,6 +2612,7 @@ export type Market = HasMetafields & { regions: Array; }; + /** * A market is a group of one or more regions that you want to target for international sales. * By creating a market, you can configure a distinct, localized shopping experience for @@ -2649,23 +2622,23 @@ export type Market = HasMetafields & { * or [add market-specific domains or subfolders](https://shopify.dev/api/admin-graphql/current/objects/MarketWebPresence). */ export type MarketMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** Represents a region. */ export type MarketRegion = { /** The name of the region in the language of the current localization. */ - name?: Maybe; + name?: Maybe; }; /** A country which comprises a market. */ export type MarketRegionCountry = MarketRegion & { - __typename?: "MarketRegionCountry"; + __typename?: 'MarketRegionCountry'; /** The two-letter code for the country. */ code: CountryCode; /** The country name in the language of the current localization. */ - name: Scalars["String"]["output"]; + name: Scalars['String']['output']; }; /** @@ -2691,19 +2664,19 @@ export type Merchandise = CustomProduct | ProductVariant; * enables you to customize the checkout experience. */ export type Metafield = { - __typename?: "Metafield"; + __typename?: 'Metafield'; /** The data that's stored in the metafield, using JSON format. */ - jsonValue: Scalars["JSON"]["output"]; + jsonValue: Scalars['JSON']['output']; /** * The [type of data](https://shopify.dev/apps/metafields/types) that the metafield stores in * the `value` field. */ - type: Scalars["String"]["output"]; + type: Scalars['String']['output']; /** * The data that's stored in the metafield. The data is always stored as a string, * regardless of the [metafield's type](https://shopify.dev/apps/metafields/types). */ - value: Scalars["String"]["output"]; + value: Scalars['String']['output']; }; /** @@ -2712,12 +2685,12 @@ export type Metafield = { * values throughout the API. For example, 12.99 USD. */ export type MoneyV2 = { - __typename?: "MoneyV2"; + __typename?: 'MoneyV2'; /** * A monetary value in decimal format, allowing for precise representation of cents or fractional * currency. For example, 12.99. */ - amount: Scalars["Decimal"]["output"]; + amount: Scalars['Decimal']['output']; /** * The three-letter currency code that represents a world currency used in a store. Currency codes * include standard [standard ISO 4217 codes](https://en.wikipedia.org/wiki/ISO_4217), legacy codes, @@ -2728,32 +2701,36 @@ export type MoneyV2 = { /** The root mutation for the API. */ export type MutationRoot = { - __typename?: "MutationRoot"; + __typename?: 'MutationRoot'; /** Handles the Function result for the cart.delivery-options.discounts.generate.fetch target. */ - cartDeliveryOptionsDiscountsGenerateFetch: Scalars["Void"]["output"]; + cartDeliveryOptionsDiscountsGenerateFetch: Scalars['Void']['output']; /** Handles the Function result for the cart.delivery-options.discounts.generate.run target. */ - cartDeliveryOptionsDiscountsGenerateRun: Scalars["Void"]["output"]; + cartDeliveryOptionsDiscountsGenerateRun: Scalars['Void']['output']; /** Handles the Function result for the cart.lines.discounts.generate.fetch target. */ - cartLinesDiscountsGenerateFetch: Scalars["Void"]["output"]; + cartLinesDiscountsGenerateFetch: Scalars['Void']['output']; /** Handles the Function result for the cart.lines.discounts.generate.run target. */ - cartLinesDiscountsGenerateRun: Scalars["Void"]["output"]; + cartLinesDiscountsGenerateRun: Scalars['Void']['output']; }; + /** The root mutation for the API. */ export type MutationRootCartDeliveryOptionsDiscountsGenerateFetchArgs = { result: CartDeliveryOptionsDiscountsGenerateFetchResult; }; + /** The root mutation for the API. */ export type MutationRootCartDeliveryOptionsDiscountsGenerateRunArgs = { result: CartDeliveryOptionsDiscountsGenerateRunResult; }; + /** The root mutation for the API. */ export type MutationRootCartLinesDiscountsGenerateFetchArgs = { result: CartLinesDiscountsGenerateFetchResult; }; + /** The root mutation for the API. */ export type MutationRootCartLinesDiscountsGenerateRunArgs = { result: CartLinesDiscountsGenerateRunResult; @@ -2775,7 +2752,7 @@ export type OrderDiscountCandidate = { * message, such as "Save 20% on all t-shirts." If a discount code is entered, * the notification displays the code instead. */ - message?: InputMaybe; + message?: InputMaybe; /** The targets of the order discount candidate. */ targets: Array; /** The value of the order discount candidate. */ @@ -2789,20 +2766,21 @@ export type OrderDiscountCandidateTarget = * order before any taxes, shipping fees, or discounts are applied. For example, if a customer places an order * for a t-shirt and a pair of shoes, then the subtotal is the sum of the prices of those items. */ - { orderSubtotal: OrderSubtotalTarget }; + { orderSubtotal: OrderSubtotalTarget; }; /** The value of the order discount candidate. */ export type OrderDiscountCandidateValue = /** A fixed amount value. */ - | { fixedAmount: FixedAmount; percentage?: never } /** A percentage value. */ - | { fixedAmount?: never; percentage: Percentage }; + { fixedAmount: FixedAmount; percentage?: never; } + | /** A percentage value. */ + { fixedAmount?: never; percentage: Percentage; }; /** The strategy that's applied to the list of order discount candidates. */ export enum OrderDiscountSelectionStrategy { /** Only apply the first order discount candidate with conditions that are satisfied. */ - First = "FIRST", + First = 'FIRST', /** Only apply the order discount candidate that offers the maximum reduction. */ - Maximum = "MAXIMUM", + Maximum = 'MAXIMUM' } /** An operation that applies order discounts to a cart that share a selection strategy. */ @@ -2816,9 +2794,9 @@ export type OrderDiscountsAddOperation = { /** The condition for checking the minimum subtotal amount of the order. */ export type OrderMinimumSubtotal = { /** Cart line IDs with a merchandise line price that's excluded to calculate the minimum subtotal amount of the order. */ - excludedCartLineIds: Array; + excludedCartLineIds: Array; /** The minimum subtotal amount of the order to be eligible for the discount in the shop's currency. */ - minimumAmount: Scalars["Decimal"]["input"]; + minimumAmount: Scalars['Decimal']['input']; }; /** @@ -2831,7 +2809,7 @@ export type OrderSubtotalTarget = { * The list of excluded cart line IDs. These cart lines are excluded from the order * subtotal calculation when calculating the maximum value of the discount. */ - excludedCartLineIds: Array; + excludedCartLineIds: Array; }; /** A percentage value. */ @@ -2841,7 +2819,7 @@ export type Percentage = { * * The value is validated against: >= 0 and <= 100. */ - value: Scalars["Decimal"]["input"]; + value: Scalars['Decimal']['input']; }; /** @@ -2852,25 +2830,25 @@ export type Percentage = { * Learn more about [managing products in a merchant's store](https://help.shopify.com/manual/products). */ export type Product = HasMetafields & { - __typename?: "Product"; + __typename?: 'Product'; /** * A unique, human-readable string of the product's title. A handle can contain letters, hyphens (`-`), and * numbers, but not spaces. The handle is used in the online store URL for the product. For example, if a product * is titled "Black Sunglasses", then the handle is `black-sunglasses`. */ - handle: Scalars["Handle"]["output"]; + handle: Scalars['Handle']['output']; /** * Whether the product is associated with any of the specified tags. The product must have at least one tag * from the list to return `true`. */ - hasAnyTag: Scalars["Boolean"]["output"]; + hasAnyTag: Scalars['Boolean']['output']; /** Whether the product is associated with the specified tags. */ hasTags: Array; /** * A [globally-unique ID](https://shopify.dev/docs/api/usage/gids) * for the product. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** * Whether the product is in any of the specified collections. The product must be in at least one collection * from the list to return `true`. @@ -2879,7 +2857,7 @@ export type Product = HasMetafields & { * categories, which makes it easy for customers to find them. For example, an athletics store might create * different collections for running attire and accessories. */ - inAnyCollection: Scalars["Boolean"]["output"]; + inAnyCollection: Scalars['Boolean']['output']; /** * Whether the product is in the specified collections. The product must be in all of the collections in the * list to return `true`. @@ -2890,7 +2868,7 @@ export type Product = HasMetafields & { */ inCollections: Array; /** Whether the product is a gift card. */ - isGiftCard: Scalars["Boolean"]["output"]; + isGiftCard: Scalars['Boolean']['output']; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -2904,17 +2882,18 @@ export type Product = HasMetafields & { * ones available in Shopify's * [standard product categories](https://help.shopify.com/manual/products/details/product-type). */ - productType?: Maybe; + productType?: Maybe; /** * The localized name for the product that displays to customers. The title is used to construct the product's * handle, which is a unique, human-readable string of the product's title. For example, if a product is titled * "Black Sunglasses", then the handle is `black-sunglasses`. */ - title: Scalars["String"]["output"]; + title: Scalars['String']['output']; /** The name of the product's vendor. */ - vendor?: Maybe; + vendor?: Maybe; }; + /** * The goods and services that merchants offer to customers. Products can include details such as * title, vendor, and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). @@ -2923,9 +2902,10 @@ export type Product = HasMetafields & { * Learn more about [managing products in a merchant's store](https://help.shopify.com/manual/products). */ export type ProductHasAnyTagArgs = { - tags?: Array; + tags?: Array; }; + /** * The goods and services that merchants offer to customers. Products can include details such as * title, vendor, and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). @@ -2934,9 +2914,10 @@ export type ProductHasAnyTagArgs = { * Learn more about [managing products in a merchant's store](https://help.shopify.com/manual/products). */ export type ProductHasTagsArgs = { - tags?: Array; + tags?: Array; }; + /** * The goods and services that merchants offer to customers. Products can include details such as * title, vendor, and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). @@ -2945,9 +2926,10 @@ export type ProductHasTagsArgs = { * Learn more about [managing products in a merchant's store](https://help.shopify.com/manual/products). */ export type ProductInAnyCollectionArgs = { - ids?: Array; + ids?: Array; }; + /** * The goods and services that merchants offer to customers. Products can include details such as * title, vendor, and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). @@ -2956,9 +2938,10 @@ export type ProductInAnyCollectionArgs = { * Learn more about [managing products in a merchant's store](https://help.shopify.com/manual/products). */ export type ProductInCollectionsArgs = { - ids?: Array; + ids?: Array; }; + /** * The goods and services that merchants offer to customers. Products can include details such as * title, vendor, and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). @@ -2967,8 +2950,8 @@ export type ProductInCollectionsArgs = { * Learn more about [managing products in a merchant's store](https://help.shopify.com/manual/products). */ export type ProductMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** The target and value of the discount to be applied to a cart line. */ @@ -2985,7 +2968,7 @@ export type ProductDiscountCandidate = { * message, such as "Save 20% on all t-shirts." If a discount code is entered, * the notification displays the code instead. */ - message?: InputMaybe; + message?: InputMaybe; /** The targets of the discount to be applied to a cart line. */ targets: Array; /** @@ -3005,14 +2988,14 @@ export type ProductDiscountCandidateFixedAmount = { * The [fixed-amount](https://help.shopify.com/manual/international/pricing/discounts) value of the discount to be applied to a cart line, in the currency of the * cart. The amount must be greater than or equal to 0. */ - amount: Scalars["Decimal"]["input"]; + amount: Scalars['Decimal']['input']; /** * Whether to apply the value of each eligible discount to each eligible cart line. * * The default value is `false`, which causes the value to be applied once across the entitled items. * When the value is `true`, the value will be applied to each of the entitled items. */ - appliesToEachItem?: InputMaybe; + appliesToEachItem?: InputMaybe; }; /** @@ -3030,7 +3013,7 @@ export type ProductDiscountCandidateTarget = * customer's cart that represents a single unit of a product variant. For example, if a customer adds two * different sizes of the same t-shirt to their cart, then each size is represented as a separate cart line. */ - { cartLine: CartLineTarget }; + { cartLine: CartLineTarget; }; /** The value of the discount candidate to be applied to a cart line. */ export type ProductDiscountCandidateValue = @@ -3038,20 +3021,18 @@ export type ProductDiscountCandidateValue = * The [fixed-amount](https://help.shopify.com/manual/international/pricing/discounts) value of the discount to be applied to a cart line. For example, if the cart * total is $100 and the discount is $10, then the fixed amount is $10. */ - | { - fixedAmount: ProductDiscountCandidateFixedAmount; - percentage?: never; - } /** A percentage value. */ - | { fixedAmount?: never; percentage: Percentage }; + { fixedAmount: ProductDiscountCandidateFixedAmount; percentage?: never; } + | /** A percentage value. */ + { fixedAmount?: never; percentage: Percentage; }; /** The selection strategy that's applied to the list of discounts that are eligible for cart lines. */ export enum ProductDiscountSelectionStrategy { /** Apply all the discount candidates to eligible cart lines. This doesn't override discount combination or stacking rules. */ - All = "ALL", + All = 'ALL', /** Apply the first discount candidate to cart lines that satisfies conditions. */ - First = "FIRST", + First = 'FIRST', /** Apply the discount to the cart line that offers the maximum reduction. */ - Maximum = "MAXIMUM", + Maximum = 'MAXIMUM' } /** An operation that applies product discounts to a cart that share a selection strategy. */ @@ -3068,12 +3049,12 @@ export type ProductDiscountsAddOperation = { * product variant and a large, blue t-shirt would be another. */ export type ProductVariant = HasMetafields & { - __typename?: "ProductVariant"; + __typename?: 'ProductVariant'; /** * A [globally-unique ID](https://shopify.dev/docs/api/usage/gids) * for the product variant. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -3094,29 +3075,30 @@ export type ProductVariant = HasMetafields & { * digital gift card doesn't need to be shipped, but a t-shirt does * need to be shipped. */ - requiresShipping: Scalars["Boolean"]["output"]; + requiresShipping: Scalars['Boolean']['output']; /** * A case-sensitive identifier for the product variant in the merchant's store. For example, `"BBC-1"`. * A product variant must have a SKU to be connected to a * [fulfillment service](https://shopify.dev/docs/apps/build/orders-fulfillment/fulfillment-service-apps/build-for-fulfillment-services). */ - sku?: Maybe; + sku?: Maybe; /** The localized name for the product variant that displays to customers. */ - title?: Maybe; + title?: Maybe; /** The product variant's weight, in the system of measurement set in the `weightUnit` field. */ - weight?: Maybe; + weight?: Maybe; /** The unit of measurement for weight. */ weightUnit: WeightUnit; }; + /** * A specific version of a product that comes in more than one option, such as size or color. For example, * if a merchant sells t-shirts with options for size and color, then a small, blue t-shirt would be one * product variant and a large, blue t-shirt would be another. */ export type ProductVariantMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** @@ -3124,7 +3106,7 @@ export type ProductVariantMetafieldArgs = { * Used to manage and track purchases made by businesses rather than individual customers. */ export type PurchasingCompany = { - __typename?: "PurchasingCompany"; + __typename?: 'PurchasingCompany'; /** The company associated to the order or draft order. */ company: Company; /** The company contact associated to the order or draft order. */ @@ -3136,16 +3118,16 @@ export type PurchasingCompany = { /** A discount code to be rejected. */ export type RejectedDiscountCode = { /** The discount code to reject. */ - code: Scalars["String"]["input"]; + code: Scalars['String']['input']; }; /** Represents how products and variants can be sold and purchased. */ export type SellingPlan = HasMetafields & { - __typename?: "SellingPlan"; + __typename?: 'SellingPlan'; /** The description of the selling plan. */ - description?: Maybe; + description?: Maybe; /** A globally-unique identifier. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -3155,15 +3137,16 @@ export type SellingPlan = HasMetafields & { */ metafield?: Maybe; /** The name of the selling plan. For example, '6 weeks of prepaid granola, delivered weekly'. */ - name: Scalars["String"]["output"]; + name: Scalars['String']['output']; /** Whether purchasing the selling plan will result in multiple deliveries. */ - recurringDeliveries: Scalars["Boolean"]["output"]; + recurringDeliveries: Scalars['Boolean']['output']; }; + /** Represents how products and variants can be sold and purchased. */ export type SellingPlanMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** @@ -3172,7 +3155,7 @@ export type SellingPlanMetafieldArgs = { * variant when purchased with a selling plan. */ export type SellingPlanAllocation = { - __typename?: "SellingPlanAllocation"; + __typename?: 'SellingPlanAllocation'; /** * 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 @@ -3192,7 +3175,7 @@ export type SellingPlanAllocation = { /** The resulting prices for variants when they're purchased with a specific selling plan. */ export type SellingPlanAllocationPriceAdjustment = { - __typename?: "SellingPlanAllocationPriceAdjustment"; + __typename?: 'SellingPlanAllocationPriceAdjustment'; /** * 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 @@ -3212,7 +3195,7 @@ export type SellingPlanAllocationPriceAdjustment = { * and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). */ export type Shop = HasMetafields & { - __typename?: "Shop"; + __typename?: 'Shop'; /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). @@ -3228,34 +3211,29 @@ export type Shop = HasMetafields & { metafield?: Maybe; }; + /** * Information about the store, including the store's timezone setting * and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). */ export type ShopMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** Units of measurement for weight. */ export enum WeightUnit { /** Metric system unit of mass. */ - Grams = "GRAMS", + Grams = 'GRAMS', /** 1 kilogram equals 1000 grams. */ - Kilograms = "KILOGRAMS", + Kilograms = 'KILOGRAMS', /** Imperial system unit of mass. */ - Ounces = "OUNCES", + Ounces = 'OUNCES', /** 1 pound equals 16 ounces. */ - Pounds = "POUNDS", + Pounds = 'POUNDS' } -export type CartInputVariables = Exact<{ [key: string]: never }>; +export type CartInputVariables = Exact<{ [key: string]: never; }>; -export type CartInput = { - __typename?: "Input"; - enteredDiscountCodes: Array<{ - __typename?: "EnteredDiscountCode"; - code: string; - rejectable: boolean; - }>; -}; + +export type CartInput = { __typename?: 'Input', enteredDiscountCodes: Array<{ __typename?: 'EnteredDiscountCode', code: string, rejectable: boolean }> }; diff --git a/examples/javascript/discount-rejection/extensions/discount-function/locales/en.default.json b/examples/javascript/discount-rejection/extensions/discount-function/locales/en.default.json index 8e5ac9b..ef0a280 100644 --- a/examples/javascript/discount-rejection/extensions/discount-function/locales/en.default.json +++ b/examples/javascript/discount-rejection/extensions/discount-function/locales/en.default.json @@ -1,4 +1,4 @@ { - "name": "ex-discount-rejection-js", - "description": "ex-discount-rejection-js" + "name": "[Example] Discount code rejection (JavaScript)", + "description": "Uses discount code rejection to allow one INF- influencer code and reject additional rejectable influencer codes." } diff --git a/examples/javascript/discount-rejection/extensions/discount-function/package.json b/examples/javascript/discount-rejection/extensions/discount-function/package.json index 72ccd6c..c35014c 100644 --- a/examples/javascript/discount-rejection/extensions/discount-function/package.json +++ b/examples/javascript/discount-rejection/extensions/discount-function/package.json @@ -3,10 +3,10 @@ "version": "0.0.1", "license": "UNLICENSED", "scripts": { - "shopify": "npm exec -- shopify", - "typegen": "npm exec -- shopify app function typegen", - "build": "npm exec -- shopify app function build", - "preview": "npm exec -- shopify app function run", + "shopify": "pnpm exec -- shopify", + "typegen": "pnpm exec -- shopify app function typegen", + "build": "pnpm exec -- shopify app function build", + "preview": "pnpm exec -- shopify app function run", "test": "vitest run" }, "codegen": { @@ -25,9 +25,9 @@ } }, "devDependencies": { - "vitest": "4.0.9" + "vitest": "4.1.4" }, "dependencies": { - "@shopify/shopify_function": "2.0.0" + "@shopify/shopify_function": "2.0.1" } } diff --git a/examples/javascript/discount-rejection/extensions/discount-function/schema.graphql b/examples/javascript/discount-rejection/extensions/discount-function/schema.graphql index a3a9fd4..c954f54 100644 --- a/examples/javascript/discount-rejection/extensions/discount-function/schema.graphql +++ b/examples/javascript/discount-rejection/extensions/discount-function/schema.graphql @@ -3528,13 +3528,7 @@ type Input { `cart.lines.discounts.generate.run` and `cart.delivery-options.discounts.generate.run` extension targets. """ - fetchResult: HttpResponse - @restrictTarget( - only: [ - "cart.lines.discounts.generate.run" - "cart.delivery-options.discounts.generate.run" - ] - ) + fetchResult: HttpResponse @restrictTarget(only: ["cart.lines.discounts.generate.run", "cart.delivery-options.discounts.generate.run"]) """ The regional and language settings that determine how the Function @@ -3563,13 +3557,7 @@ type Input { This input is only available in the `cart.lines.discounts.generate.run` and `cart.delivery-options.discounts.generate.run` extension targets. """ - triggeringDiscountCode: String - @restrictTarget( - only: [ - "cart.lines.discounts.generate.run" - "cart.delivery-options.discounts.generate.run" - ] - ) + triggeringDiscountCode: String @restrictTarget(only: ["cart.lines.discounts.generate.run", "cart.delivery-options.discounts.generate.run"]) } """ @@ -4414,10 +4402,7 @@ type Localization { """ The market of the active localized experience. """ - market: Market! - @deprecated( - reason: "This `market` field will be removed in a future version of the API." - ) + market: Market! @deprecated(reason: "This `market` field will be removed in a future version of the API.") } """ @@ -4798,10 +4783,7 @@ type MailingAddress { """ The market of the address. """ - market: Market - @deprecated( - reason: "This `market` field will be removed in a future version of the API." - ) + market: Market @deprecated(reason: "This `market` field will be removed in a future version of the API.") """ The full name of the customer, based on firstName and lastName. diff --git a/examples/javascript/discount-rejection/extensions/discount-function/shopify.extension.toml b/examples/javascript/discount-rejection/extensions/discount-function/shopify.extension.toml index 7a22826..d9de8e0 100644 --- a/examples/javascript/discount-rejection/extensions/discount-function/shopify.extension.toml +++ b/examples/javascript/discount-rejection/extensions/discount-function/shopify.extension.toml @@ -18,3 +18,7 @@ description = "t:description" [extensions.build] command = "" path = "dist/function.wasm" + +[extensions.ui.paths] +create = "/app/discount/:functionId/new" +details = "/app/discount/:functionId/:id" diff --git a/examples/javascript/discount-rejection/extensions/discount-function/src/cart_lines_discounts_generate_run.js b/examples/javascript/discount-rejection/extensions/discount-function/src/cart_lines_discounts_generate_run.js index 29e7052..cc23139 100644 --- a/examples/javascript/discount-rejection/extensions/discount-function/src/cart_lines_discounts_generate_run.js +++ b/examples/javascript/discount-rejection/extensions/discount-function/src/cart_lines_discounts_generate_run.js @@ -10,16 +10,16 @@ export function cartLinesDiscountsGenerateRun(input) { // [START discount-rejections.run] - const allInfluencerCodes = input.enteredDiscountCodes.filter(({ code }) => + const allInfluencerCodes = input.enteredDiscountCodes.filter(({code}) => code.toLowerCase().startsWith("inf-"), ); const rejectableInfluencerCodes = allInfluencerCodes.filter( - ({ rejectable }) => rejectable, + ({rejectable}) => rejectable, ); const hasNonRejectable = allInfluencerCodes.some( - ({ rejectable }) => !rejectable, + ({rejectable}) => !rejectable, ); const codesToReject = hasNonRejectable @@ -27,15 +27,15 @@ export function cartLinesDiscountsGenerateRun(input) { : rejectableInfluencerCodes.slice(0, -1); if (codesToReject.length === 0) { - return { operations: [] }; + return {operations: []}; } return { operations: [ { enteredDiscountCodesReject: { - codes: codesToReject.map(({ code }) => ({ code })), - message: `Only one influencer code allowed. Rejected: ${codesToReject.map((c) => c.code).join(", ")}`, + codes: codesToReject.map(({code}) => ({code})), + message: `Only one influencer code allowed. Rejected: ${codesToReject.map(c => c.code).join(", ")}`, }, }, ], diff --git a/examples/javascript/discount-rejection/pnpm-workspace.yaml b/examples/javascript/discount-rejection/pnpm-workspace.yaml index e8a5c94..2115b27 100644 --- a/examples/javascript/discount-rejection/pnpm-workspace.yaml +++ b/examples/javascript/discount-rejection/pnpm-workspace.yaml @@ -1,2 +1,2 @@ packages: - - "extensions/*" + - 'extensions/*' diff --git a/examples/javascript/metafield/extensions/discount-function/README.md b/examples/javascript/metafield/extensions/discount-function/README.md index c981b1e..c6703d7 100644 --- a/examples/javascript/metafield/extensions/discount-function/README.md +++ b/examples/javascript/metafield/extensions/discount-function/README.md @@ -1,5 +1,5 @@ --- -name: "How to build a configurable Discount Function using metafields for flexible promotions" +name: 'How to build a configurable Discount Function using metafields for flexible promotions' api_name: discount api_version: 2025-04 api_type: functions diff --git a/examples/javascript/metafield/extensions/discount-function/generated/api.ts b/examples/javascript/metafield/extensions/discount-function/generated/api.ts index a343069..c62cd65 100644 --- a/examples/javascript/metafield/extensions/discount-function/generated/api.ts +++ b/examples/javascript/metafield/extensions/discount-function/generated/api.ts @@ -1,60 +1,47 @@ 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; -}; -export type MakeEmpty< - T extends { [key: string]: unknown }, - K extends keyof T, -> = { [_ in K]?: never }; -export type Incremental = - | T - | { - [P in keyof T]?: P extends " $fragmentName" | "__typename" ? T[P] : never; - }; +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 }; +export type MakeEmpty = { [_ in K]?: never }; +export type Incremental = T | { [P in keyof T]?: P extends ' $fragmentName' | '__typename' ? T[P] : never }; /** All built-in and custom scalars, mapped to their actual values */ export type Scalars = { - ID: { input: string; output: string }; - String: { input: string; output: string }; - Boolean: { input: boolean; output: boolean }; - Int: { input: number; output: number }; - Float: { input: number; output: number }; + ID: { input: string; output: string; } + String: { input: string; output: string; } + Boolean: { input: boolean; output: boolean; } + Int: { input: number; output: number; } + Float: { input: number; output: number; } /** * Represents an [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)-encoded date string. * For example, September 7, 2019 is represented as `"2019-07-16"`. */ - Date: { input: any; output: any }; + Date: { input: any; output: any; } /** * Represents an [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)-encoded date and time string. * For example, 3:50 pm on September 7, 2019 in the time zone of UTC (Coordinated Universal Time) is * represented as `"2019-09-07T15:50:00Z`". */ - DateTime: { input: any; output: any }; + DateTime: { input: any; output: any; } /** * A subset of the [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format that * includes the date and time but not the timezone which is determined from context. * * For example, "2018-01-01T00:00:00". */ - DateTimeWithoutTimezone: { input: any; output: any }; + DateTimeWithoutTimezone: { input: any; output: any; } /** * A signed decimal number, which supports arbitrary precision and is serialized as a string. * * Example values: `"29.99"`, `"29.999"`. */ - Decimal: { input: any; output: any }; + Decimal: { input: any; output: any; } /** * A function-scoped handle to a refer a resource. * The Handle type appears in a JSON response as a String, but it is not intended to be human-readable. * Example value: `"10079785100"` */ - Handle: { input: any; output: any }; + Handle: { input: any; output: any; } /** * A [JSON](https://www.json.org/json-en.html) object. * @@ -70,13 +57,13 @@ export type Scalars = { * } * }` */ - JSON: { input: any; output: any }; + JSON: { input: any; output: any; } /** * A subset of the [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format that * includes the time but not the date or timezone which is determined from context. * For example, "05:43:21". */ - TimeWithoutTimezone: { input: any; output: any }; + TimeWithoutTimezone: { input: any; output: any; } /** * Represents an [RFC 3986](https://datatracker.ietf.org/doc/html/rfc3986) and * [RFC 3987](https://datatracker.ietf.org/doc/html/rfc3987)-compliant URI string. @@ -84,15 +71,15 @@ export type Scalars = { * For example, `"https://example.myshopify.com"` is a valid URL. It includes a scheme (`https`) and a host * (`example.myshopify.com`). */ - URL: { input: any; output: any }; + URL: { input: any; output: any; } /** A void type that can be used to return a null value from a mutation. */ - Void: { input: any; output: any }; + Void: { input: any; output: any; } }; /** A discount code that is associated with a discount candidate. */ export type AssociatedDiscountCode = { /** The discount code. */ - code: Scalars["String"]["input"]; + code: Scalars['String']['input']; }; /** @@ -105,11 +92,11 @@ export type AssociatedDiscountCode = { * notes provided by the customer (`"customer_notes": "Please leave at the front door"`). */ export type Attribute = { - __typename?: "Attribute"; + __typename?: 'Attribute'; /** The key or name of the attribute. For example, `"customer_first_order"`. */ - key: Scalars["String"]["output"]; + key: Scalars['String']['output']; /** The value of the attribute. For example, `"true"`. */ - value?: Maybe; + value?: Maybe; }; /** @@ -119,18 +106,18 @@ export type Attribute = { * are displayed to customers. */ export type BuyerIdentity = { - __typename?: "BuyerIdentity"; + __typename?: 'BuyerIdentity'; /** The [customer](https://help.shopify.com/manual/customers/manage-customers) that's interacting with the cart. */ customer?: Maybe; /** The email address of the customer that's interacting with the cart. */ - email?: Maybe; + email?: Maybe; /** * Whether the customer is authenticated through their * [customer account](https://help.shopify.com/manual/customers/customer-accounts). */ - isAuthenticated: Scalars["Boolean"]["output"]; + isAuthenticated: Scalars['Boolean']['output']; /** The phone number of the customer that's interacting with the cart. */ - phone?: Maybe; + phone?: Maybe; /** * The company of a B2B customer that's interacting with the cart. * Used to manage and track purchases made by businesses rather than individual customers. @@ -143,7 +130,7 @@ export type BuyerIdentity = { * and information about the customer, such as the customer's email address and phone number. */ export type Cart = HasMetafields & { - __typename?: "Cart"; + __typename?: 'Cart'; /** * The custom attributes associated with a cart to store additional information. Cart attributes * allow you to collect specific information from customers on the **Cart** page, such as order notes, @@ -201,14 +188,16 @@ export type Cart = HasMetafields & { retailLocation?: Maybe; }; + /** * The cart where the Function is running. A cart contains the merchandise that a customer intends to purchase * and information about the customer, such as the customer's email address and phone number. */ export type CartAttributeArgs = { - key?: InputMaybe; + key?: InputMaybe; }; + /** * The cart where the Function is running. A cart contains the merchandise that a customer intends to purchase * and information about the customer, such as the customer's email address and phone number. @@ -217,13 +206,14 @@ export type CartLocalizedFieldsArgs = { keys?: Array; }; + /** * The cart where the Function is running. A cart contains the merchandise that a customer intends to purchase * and information about the customer, such as the customer's email address and phone number. */ export type CartMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** @@ -231,7 +221,7 @@ export type CartMetafieldArgs = { * the subtotal before taxes and duties, the tax amount, and duty charges. */ export type CartCost = { - __typename?: "CartCost"; + __typename?: 'CartCost'; /** The amount, before taxes and cart-level discounts, for the customer to pay. */ subtotalAmount: MoneyV2; /** The total amount for the customer to pay at checkout. */ @@ -249,7 +239,7 @@ export type CartCost = { * together, then the items are included in the same delivery group. */ export type CartDeliveryGroup = { - __typename?: "CartDeliveryGroup"; + __typename?: 'CartDeliveryGroup'; /** * Information about items in a cart that a customer intends to purchase. A cart line is an entry in the * customer's cart that represents a single unit of a product variant. For example, if a customer adds two @@ -269,7 +259,7 @@ export type CartDeliveryGroup = { * A [globally-unique ID](https://shopify.dev/docs/api/usage/gids) * for the delivery group. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** Information about the delivery option that the customer has selected. */ selectedDeliveryOption?: Maybe; }; @@ -280,9 +270,9 @@ export enum CartDeliveryGroupType { * The delivery group only contains merchandise that is either a one time purchase or a first delivery of * subscription merchandise. */ - OneTimePurchase = "ONE_TIME_PURCHASE", + OneTimePurchase = 'ONE_TIME_PURCHASE', /** The delivery group only contains subscription merchandise. */ - Subscription = "SUBSCRIPTION", + Subscription = 'SUBSCRIPTION' } /** @@ -291,12 +281,12 @@ export enum CartDeliveryGroupType { * shipping. */ export type CartDeliveryOption = { - __typename?: "CartDeliveryOption"; + __typename?: 'CartDeliveryOption'; /** * A unique identifier that represents the delivery option offered to customers. * For example, `Canada Post Expedited`. */ - code?: Maybe; + code?: Maybe; /** The amount that the customer pays if they select the delivery option. */ cost: MoneyV2; /** @@ -308,19 +298,19 @@ export type CartDeliveryOption = { */ deliveryMethodType: DeliveryMethod; /** A single-line description of the delivery option, with HTML tags removed. */ - description?: Maybe; + description?: Maybe; /** * A unique, human-readable identifier of the delivery option's title. * A handle can contain letters, hyphens (`-`), and numbers, but not spaces. * For example, `standard-shipping`. */ - handle: Scalars["Handle"]["output"]; + handle: Scalars['Handle']['output']; /** * The name of the delivery option that displays to customers. The title is used to construct the delivery * option's handle. For example, if a delivery option is titled "Standard Shipping", then the handle is * `standard-shipping`. */ - title?: Maybe; + title?: Maybe; }; /** @@ -344,7 +334,7 @@ export type CartDeliveryOptionsDiscountsGenerateRunResult = { * different sizes of the same t-shirt to their cart, then each size is represented as a separate cart line. */ export type CartLine = { - __typename?: "CartLine"; + __typename?: 'CartLine'; /** * The custom attributes associated with a cart to store additional information. Cart attributes * allow you to collect specific information from customers on the **Cart** page, such as order notes, @@ -362,7 +352,7 @@ export type CartLine = { */ cost: CartLineCost; /** The ID of the cart line. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** The item that the customer intends to purchase. */ merchandise: Merchandise; /** @@ -371,7 +361,7 @@ export type CartLine = { */ parentRelationship?: Maybe; /** The quantity of the item that the customer intends to purchase. */ - quantity: Scalars["Int"]["output"]; + quantity: Scalars['Int']['output']; /** * The [selling plan](https://shopify.dev/docs/apps/build/purchase-options/subscriptions/selling-plans) * associated with the cart line, including information about how a product variant can be sold and purchased. @@ -379,13 +369,14 @@ export type CartLine = { sellingPlanAllocation?: Maybe; }; + /** * Information about an item in a cart that a customer intends to purchase. A cart line is an entry in the * customer's cart that represents a single unit of a product variant. For example, if a customer adds two * different sizes of the same t-shirt to their cart, then each size is represented as a separate cart line. */ export type CartLineAttributeArgs = { - key?: InputMaybe; + key?: InputMaybe; }; /** @@ -394,7 +385,7 @@ export type CartLineAttributeArgs = { * the same t-shirt to their cart, then each size is represented as a separate cart line. */ export type CartLineCost = { - __typename?: "CartLineCost"; + __typename?: 'CartLineCost'; /** * The cost of a single unit. For example, if a customer purchases three units of a product * that are priced at $10 each, then the `amountPerQuantity` is $10. @@ -423,9 +414,9 @@ export type CartLineMinimumQuantity = { * Cart line IDs with a merchandise line price that's included to calculate the * minimum quantity purchased to receive the discount. */ - ids: Array; + ids: Array; /** The minimum quantity of a cart line to be eligible for a discount candidate. */ - minimumQuantity: Scalars["Int"]["input"]; + minimumQuantity: Scalars['Int']['input']; }; /** The condition for checking the minimum subtotal of products across a group of cart lines. */ @@ -434,14 +425,14 @@ export type CartLineMinimumSubtotal = { * Cart line IDs with a merchandise line price that's included to calculate the * minimum subtotal purchased to receive the discount. */ - ids: Array; + ids: Array; /** The minimum subtotal amount of the cart line to be eligible for a discount candidate in the shop's currency. */ - minimumAmount: Scalars["Decimal"]["input"]; + minimumAmount: Scalars['Decimal']['input']; }; /** Represents the relationship between a cart line and its parent line. */ export type CartLineParentRelationship = { - __typename?: "CartLineParentRelationship"; + __typename?: 'CartLineParentRelationship'; /** The parent line in the relationship. */ parent: CartLine; }; @@ -453,14 +444,14 @@ export type CartLineParentRelationship = { */ export type CartLineTarget = { /** The ID of the targeted cart line. */ - id: Scalars["ID"]["input"]; + id: Scalars['ID']['input']; /** * The number of line items that are being discounted. * The default value is `null`, which represents the quantity of the matching line items. * * The value is validated against: > 0. */ - quantity?: InputMaybe; + quantity?: InputMaybe; }; /** @@ -484,34 +475,17 @@ export type CartOperation = * An operation that selects which entered discount codes to accept. Use this to * validate discount codes from external systems. */ - | { - enteredDiscountCodesAccept: EnteredDiscountCodesAcceptOperation; - enteredDiscountCodesReject?: never; - orderDiscountsAdd?: never; - productDiscountsAdd?: never; - } /** + { enteredDiscountCodesAccept: EnteredDiscountCodesAcceptOperation; enteredDiscountCodesReject?: never; orderDiscountsAdd?: never; productDiscountsAdd?: never; } + | /** * An operation that rejects entered discount codes with a custom message. Use * this to conditionally reject discount codes based on business logic. This * operation can only be used if the function is backed by an automatic discount. */ - | { - enteredDiscountCodesAccept?: never; - enteredDiscountCodesReject: EnteredDiscountCodesRejectOperation; - orderDiscountsAdd?: never; - productDiscountsAdd?: never; - } /** An operation that applies order discounts to a cart that share a selection strategy. */ - | { - enteredDiscountCodesAccept?: never; - enteredDiscountCodesReject?: never; - orderDiscountsAdd: OrderDiscountsAddOperation; - productDiscountsAdd?: never; - } /** An operation that applies product discounts to a cart that share a selection strategy. */ - | { - enteredDiscountCodesAccept?: never; - enteredDiscountCodesReject?: never; - orderDiscountsAdd?: never; - productDiscountsAdd: ProductDiscountsAddOperation; - }; + { enteredDiscountCodesAccept?: never; enteredDiscountCodesReject: EnteredDiscountCodesRejectOperation; orderDiscountsAdd?: never; productDiscountsAdd?: never; } + | /** An operation that applies order discounts to a cart that share a selection strategy. */ + { enteredDiscountCodesAccept?: never; enteredDiscountCodesReject?: never; orderDiscountsAdd: OrderDiscountsAddOperation; productDiscountsAdd?: never; } + | /** An operation that applies product discounts to a cart that share a selection strategy. */ + { enteredDiscountCodesAccept?: never; enteredDiscountCodesReject?: never; orderDiscountsAdd?: never; productDiscountsAdd: ProductDiscountsAddOperation; }; /** * Whether the product is in the specified collection. @@ -521,25 +495,25 @@ export type CartOperation = * different collections for running attire and accessories. */ export type CollectionMembership = { - __typename?: "CollectionMembership"; + __typename?: 'CollectionMembership'; /** * A [globally-unique ID](https://shopify.dev/docs/api/usage/gids) * for the collection. */ - collectionId: Scalars["ID"]["output"]; + collectionId: Scalars['ID']['output']; /** Whether the product is in the specified collection. */ - isMember: Scalars["Boolean"]["output"]; + isMember: Scalars['Boolean']['output']; }; /** Represents information about a company which is also a customer of the shop. */ export type Company = HasMetafields & { - __typename?: "Company"; + __typename?: 'Company'; /** The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) at which the company was created in Shopify. */ - createdAt: Scalars["DateTime"]["output"]; + createdAt: Scalars['DateTime']['output']; /** A unique externally-supplied ID for the company. */ - externalId?: Maybe; + externalId?: Maybe; /** The ID of the company. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -549,52 +523,53 @@ export type Company = HasMetafields & { */ metafield?: Maybe; /** The name of the company. */ - name: Scalars["String"]["output"]; + name: Scalars['String']['output']; /** The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) at which the company was last modified. */ - updatedAt: Scalars["DateTime"]["output"]; + updatedAt: Scalars['DateTime']['output']; }; + /** Represents information about a company which is also a customer of the shop. */ export type CompanyMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** A company's main point of contact. */ export type CompanyContact = { - __typename?: "CompanyContact"; + __typename?: 'CompanyContact'; /** * The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) * at which the company contact was created in Shopify. */ - createdAt: Scalars["DateTime"]["output"]; + createdAt: Scalars['DateTime']['output']; /** The ID of the company. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** The company contact's locale (language). */ - locale?: Maybe; + locale?: Maybe; /** The company contact's job title. */ - title?: Maybe; + title?: Maybe; /** * The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) * at which the company contact was last modified. */ - updatedAt: Scalars["DateTime"]["output"]; + updatedAt: Scalars['DateTime']['output']; }; /** A company's location. */ export type CompanyLocation = HasMetafields & { - __typename?: "CompanyLocation"; + __typename?: 'CompanyLocation'; /** * The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) * at which the company location was created in Shopify. */ - createdAt: Scalars["DateTime"]["output"]; + createdAt: Scalars['DateTime']['output']; /** A unique externally-supplied ID for the company. */ - externalId?: Maybe; + externalId?: Maybe; /** The ID of the company. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** The preferred locale of the company location. */ - locale?: Maybe; + locale?: Maybe; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -604,42 +579,33 @@ export type CompanyLocation = HasMetafields & { */ metafield?: Maybe; /** The name of the company location. */ - name: Scalars["String"]["output"]; + name: Scalars['String']['output']; /** The number of orders placed at this company location. */ - ordersCount: Scalars["Int"]["output"]; + ordersCount: Scalars['Int']['output']; /** The total amount spent at this company location. */ totalSpent: MoneyV2; /** * The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) * at which the company location was last modified. */ - updatedAt: Scalars["DateTime"]["output"]; + updatedAt: Scalars['DateTime']['output']; }; + /** A company's location. */ export type CompanyLocationMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** The conditions that satisfy the discount candidate to be applied to a cart line. */ export type Condition = /** The condition for checking the minimum quantity of products across a group of cart lines. */ - | { - cartLineMinimumQuantity: CartLineMinimumQuantity; - cartLineMinimumSubtotal?: never; - orderMinimumSubtotal?: never; - } /** The condition for checking the minimum subtotal of products across a group of cart lines. */ - | { - cartLineMinimumQuantity?: never; - cartLineMinimumSubtotal: CartLineMinimumSubtotal; - orderMinimumSubtotal?: never; - } /** The condition for checking the minimum subtotal amount of the order. */ - | { - cartLineMinimumQuantity?: never; - cartLineMinimumSubtotal?: never; - orderMinimumSubtotal: OrderMinimumSubtotal; - }; + { cartLineMinimumQuantity: CartLineMinimumQuantity; cartLineMinimumSubtotal?: never; orderMinimumSubtotal?: never; } + | /** The condition for checking the minimum subtotal of products across a group of cart lines. */ + { cartLineMinimumQuantity?: never; cartLineMinimumSubtotal: CartLineMinimumSubtotal; orderMinimumSubtotal?: never; } + | /** The condition for checking the minimum subtotal amount of the order. */ + { cartLineMinimumQuantity?: never; cartLineMinimumSubtotal?: never; orderMinimumSubtotal: OrderMinimumSubtotal; }; /** * The country for which the store is customized, reflecting local preferences and regulations. @@ -647,7 +613,7 @@ export type Condition = * the shopping experience for customers in that region. */ export type Country = { - __typename?: "Country"; + __typename?: 'Country'; /** The ISO code of the country. */ isoCode: CountryCode; }; @@ -660,495 +626,495 @@ export type Country = { */ export enum CountryCode { /** Ascension Island. */ - Ac = "AC", + Ac = 'AC', /** Andorra. */ - Ad = "AD", + Ad = 'AD', /** United Arab Emirates. */ - Ae = "AE", + Ae = 'AE', /** Afghanistan. */ - Af = "AF", + Af = 'AF', /** Antigua & Barbuda. */ - Ag = "AG", + Ag = 'AG', /** Anguilla. */ - Ai = "AI", + Ai = 'AI', /** Albania. */ - Al = "AL", + Al = 'AL', /** Armenia. */ - Am = "AM", + Am = 'AM', /** Netherlands Antilles. */ - An = "AN", + An = 'AN', /** Angola. */ - Ao = "AO", + Ao = 'AO', /** Argentina. */ - Ar = "AR", + Ar = 'AR', /** Austria. */ - At = "AT", + At = 'AT', /** Australia. */ - Au = "AU", + Au = 'AU', /** Aruba. */ - Aw = "AW", + Aw = 'AW', /** Åland Islands. */ - Ax = "AX", + Ax = 'AX', /** Azerbaijan. */ - Az = "AZ", + Az = 'AZ', /** Bosnia & Herzegovina. */ - Ba = "BA", + Ba = 'BA', /** Barbados. */ - Bb = "BB", + Bb = 'BB', /** Bangladesh. */ - Bd = "BD", + Bd = 'BD', /** Belgium. */ - Be = "BE", + Be = 'BE', /** Burkina Faso. */ - Bf = "BF", + Bf = 'BF', /** Bulgaria. */ - Bg = "BG", + Bg = 'BG', /** Bahrain. */ - Bh = "BH", + Bh = 'BH', /** Burundi. */ - Bi = "BI", + Bi = 'BI', /** Benin. */ - Bj = "BJ", + Bj = 'BJ', /** St. Barthélemy. */ - Bl = "BL", + Bl = 'BL', /** Bermuda. */ - Bm = "BM", + Bm = 'BM', /** Brunei. */ - Bn = "BN", + Bn = 'BN', /** Bolivia. */ - Bo = "BO", + Bo = 'BO', /** Caribbean Netherlands. */ - Bq = "BQ", + Bq = 'BQ', /** Brazil. */ - Br = "BR", + Br = 'BR', /** Bahamas. */ - Bs = "BS", + Bs = 'BS', /** Bhutan. */ - Bt = "BT", + Bt = 'BT', /** Bouvet Island. */ - Bv = "BV", + Bv = 'BV', /** Botswana. */ - Bw = "BW", + Bw = 'BW', /** Belarus. */ - By = "BY", + By = 'BY', /** Belize. */ - Bz = "BZ", + Bz = 'BZ', /** Canada. */ - Ca = "CA", + Ca = 'CA', /** Cocos (Keeling) Islands. */ - Cc = "CC", + Cc = 'CC', /** Congo - Kinshasa. */ - Cd = "CD", + Cd = 'CD', /** Central African Republic. */ - Cf = "CF", + Cf = 'CF', /** Congo - Brazzaville. */ - Cg = "CG", + Cg = 'CG', /** Switzerland. */ - Ch = "CH", + Ch = 'CH', /** Côte d’Ivoire. */ - Ci = "CI", + Ci = 'CI', /** Cook Islands. */ - Ck = "CK", + Ck = 'CK', /** Chile. */ - Cl = "CL", + Cl = 'CL', /** Cameroon. */ - Cm = "CM", + Cm = 'CM', /** China. */ - Cn = "CN", + Cn = 'CN', /** Colombia. */ - Co = "CO", + Co = 'CO', /** Costa Rica. */ - Cr = "CR", + Cr = 'CR', /** Cuba. */ - Cu = "CU", + Cu = 'CU', /** Cape Verde. */ - Cv = "CV", + Cv = 'CV', /** Curaçao. */ - Cw = "CW", + Cw = 'CW', /** Christmas Island. */ - Cx = "CX", + Cx = 'CX', /** Cyprus. */ - Cy = "CY", + Cy = 'CY', /** Czechia. */ - Cz = "CZ", + Cz = 'CZ', /** Germany. */ - De = "DE", + De = 'DE', /** Djibouti. */ - Dj = "DJ", + Dj = 'DJ', /** Denmark. */ - Dk = "DK", + Dk = 'DK', /** Dominica. */ - Dm = "DM", + Dm = 'DM', /** Dominican Republic. */ - Do = "DO", + Do = 'DO', /** Algeria. */ - Dz = "DZ", + Dz = 'DZ', /** Ecuador. */ - Ec = "EC", + Ec = 'EC', /** Estonia. */ - Ee = "EE", + Ee = 'EE', /** Egypt. */ - Eg = "EG", + Eg = 'EG', /** Western Sahara. */ - Eh = "EH", + Eh = 'EH', /** Eritrea. */ - Er = "ER", + Er = 'ER', /** Spain. */ - Es = "ES", + Es = 'ES', /** Ethiopia. */ - Et = "ET", + Et = 'ET', /** Finland. */ - Fi = "FI", + Fi = 'FI', /** Fiji. */ - Fj = "FJ", + Fj = 'FJ', /** Falkland Islands. */ - Fk = "FK", + Fk = 'FK', /** Faroe Islands. */ - Fo = "FO", + Fo = 'FO', /** France. */ - Fr = "FR", + Fr = 'FR', /** Gabon. */ - Ga = "GA", + Ga = 'GA', /** United Kingdom. */ - Gb = "GB", + Gb = 'GB', /** Grenada. */ - Gd = "GD", + Gd = 'GD', /** Georgia. */ - Ge = "GE", + Ge = 'GE', /** French Guiana. */ - Gf = "GF", + Gf = 'GF', /** Guernsey. */ - Gg = "GG", + Gg = 'GG', /** Ghana. */ - Gh = "GH", + Gh = 'GH', /** Gibraltar. */ - Gi = "GI", + Gi = 'GI', /** Greenland. */ - Gl = "GL", + Gl = 'GL', /** Gambia. */ - Gm = "GM", + Gm = 'GM', /** Guinea. */ - Gn = "GN", + Gn = 'GN', /** Guadeloupe. */ - Gp = "GP", + Gp = 'GP', /** Equatorial Guinea. */ - Gq = "GQ", + Gq = 'GQ', /** Greece. */ - Gr = "GR", + Gr = 'GR', /** South Georgia & South Sandwich Islands. */ - Gs = "GS", + Gs = 'GS', /** Guatemala. */ - Gt = "GT", + Gt = 'GT', /** Guinea-Bissau. */ - Gw = "GW", + Gw = 'GW', /** Guyana. */ - Gy = "GY", + Gy = 'GY', /** Hong Kong SAR. */ - Hk = "HK", + Hk = 'HK', /** Heard & McDonald Islands. */ - Hm = "HM", + Hm = 'HM', /** Honduras. */ - Hn = "HN", + Hn = 'HN', /** Croatia. */ - Hr = "HR", + Hr = 'HR', /** Haiti. */ - Ht = "HT", + Ht = 'HT', /** Hungary. */ - Hu = "HU", + Hu = 'HU', /** Indonesia. */ - Id = "ID", + Id = 'ID', /** Ireland. */ - Ie = "IE", + Ie = 'IE', /** Israel. */ - Il = "IL", + Il = 'IL', /** Isle of Man. */ - Im = "IM", + Im = 'IM', /** India. */ - In = "IN", + In = 'IN', /** British Indian Ocean Territory. */ - Io = "IO", + Io = 'IO', /** Iraq. */ - Iq = "IQ", + Iq = 'IQ', /** Iran. */ - Ir = "IR", + Ir = 'IR', /** Iceland. */ - Is = "IS", + Is = 'IS', /** Italy. */ - It = "IT", + It = 'IT', /** Jersey. */ - Je = "JE", + Je = 'JE', /** Jamaica. */ - Jm = "JM", + Jm = 'JM', /** Jordan. */ - Jo = "JO", + Jo = 'JO', /** Japan. */ - Jp = "JP", + Jp = 'JP', /** Kenya. */ - Ke = "KE", + Ke = 'KE', /** Kyrgyzstan. */ - Kg = "KG", + Kg = 'KG', /** Cambodia. */ - Kh = "KH", + Kh = 'KH', /** Kiribati. */ - Ki = "KI", + Ki = 'KI', /** Comoros. */ - Km = "KM", + Km = 'KM', /** St. Kitts & Nevis. */ - Kn = "KN", + Kn = 'KN', /** North Korea. */ - Kp = "KP", + Kp = 'KP', /** South Korea. */ - Kr = "KR", + Kr = 'KR', /** Kuwait. */ - Kw = "KW", + Kw = 'KW', /** Cayman Islands. */ - Ky = "KY", + Ky = 'KY', /** Kazakhstan. */ - Kz = "KZ", + Kz = 'KZ', /** Laos. */ - La = "LA", + La = 'LA', /** Lebanon. */ - Lb = "LB", + Lb = 'LB', /** St. Lucia. */ - Lc = "LC", + Lc = 'LC', /** Liechtenstein. */ - Li = "LI", + Li = 'LI', /** Sri Lanka. */ - Lk = "LK", + Lk = 'LK', /** Liberia. */ - Lr = "LR", + Lr = 'LR', /** Lesotho. */ - Ls = "LS", + Ls = 'LS', /** Lithuania. */ - Lt = "LT", + Lt = 'LT', /** Luxembourg. */ - Lu = "LU", + Lu = 'LU', /** Latvia. */ - Lv = "LV", + Lv = 'LV', /** Libya. */ - Ly = "LY", + Ly = 'LY', /** Morocco. */ - Ma = "MA", + Ma = 'MA', /** Monaco. */ - Mc = "MC", + Mc = 'MC', /** Moldova. */ - Md = "MD", + Md = 'MD', /** Montenegro. */ - Me = "ME", + Me = 'ME', /** St. Martin. */ - Mf = "MF", + Mf = 'MF', /** Madagascar. */ - Mg = "MG", + Mg = 'MG', /** North Macedonia. */ - Mk = "MK", + Mk = 'MK', /** Mali. */ - Ml = "ML", + Ml = 'ML', /** Myanmar (Burma). */ - Mm = "MM", + Mm = 'MM', /** Mongolia. */ - Mn = "MN", + Mn = 'MN', /** Macao SAR. */ - Mo = "MO", + Mo = 'MO', /** Martinique. */ - Mq = "MQ", + Mq = 'MQ', /** Mauritania. */ - Mr = "MR", + Mr = 'MR', /** Montserrat. */ - Ms = "MS", + Ms = 'MS', /** Malta. */ - Mt = "MT", + Mt = 'MT', /** Mauritius. */ - Mu = "MU", + Mu = 'MU', /** Maldives. */ - Mv = "MV", + Mv = 'MV', /** Malawi. */ - Mw = "MW", + Mw = 'MW', /** Mexico. */ - Mx = "MX", + Mx = 'MX', /** Malaysia. */ - My = "MY", + My = 'MY', /** Mozambique. */ - Mz = "MZ", + Mz = 'MZ', /** Namibia. */ - Na = "NA", + Na = 'NA', /** New Caledonia. */ - Nc = "NC", + Nc = 'NC', /** Niger. */ - Ne = "NE", + Ne = 'NE', /** Norfolk Island. */ - Nf = "NF", + Nf = 'NF', /** Nigeria. */ - Ng = "NG", + Ng = 'NG', /** Nicaragua. */ - Ni = "NI", + Ni = 'NI', /** Netherlands. */ - Nl = "NL", + Nl = 'NL', /** Norway. */ - No = "NO", + No = 'NO', /** Nepal. */ - Np = "NP", + Np = 'NP', /** Nauru. */ - Nr = "NR", + Nr = 'NR', /** Niue. */ - Nu = "NU", + Nu = 'NU', /** New Zealand. */ - Nz = "NZ", + Nz = 'NZ', /** Oman. */ - Om = "OM", + Om = 'OM', /** Panama. */ - Pa = "PA", + Pa = 'PA', /** Peru. */ - Pe = "PE", + Pe = 'PE', /** French Polynesia. */ - Pf = "PF", + Pf = 'PF', /** Papua New Guinea. */ - Pg = "PG", + Pg = 'PG', /** Philippines. */ - Ph = "PH", + Ph = 'PH', /** Pakistan. */ - Pk = "PK", + Pk = 'PK', /** Poland. */ - Pl = "PL", + Pl = 'PL', /** St. Pierre & Miquelon. */ - Pm = "PM", + Pm = 'PM', /** Pitcairn Islands. */ - Pn = "PN", + Pn = 'PN', /** Palestinian Territories. */ - Ps = "PS", + Ps = 'PS', /** Portugal. */ - Pt = "PT", + Pt = 'PT', /** Paraguay. */ - Py = "PY", + Py = 'PY', /** Qatar. */ - Qa = "QA", + Qa = 'QA', /** Réunion. */ - Re = "RE", + Re = 'RE', /** Romania. */ - Ro = "RO", + Ro = 'RO', /** Serbia. */ - Rs = "RS", + Rs = 'RS', /** Russia. */ - Ru = "RU", + Ru = 'RU', /** Rwanda. */ - Rw = "RW", + Rw = 'RW', /** Saudi Arabia. */ - Sa = "SA", + Sa = 'SA', /** Solomon Islands. */ - Sb = "SB", + Sb = 'SB', /** Seychelles. */ - Sc = "SC", + Sc = 'SC', /** Sudan. */ - Sd = "SD", + Sd = 'SD', /** Sweden. */ - Se = "SE", + Se = 'SE', /** Singapore. */ - Sg = "SG", + Sg = 'SG', /** St. Helena. */ - Sh = "SH", + Sh = 'SH', /** Slovenia. */ - Si = "SI", + Si = 'SI', /** Svalbard & Jan Mayen. */ - Sj = "SJ", + Sj = 'SJ', /** Slovakia. */ - Sk = "SK", + Sk = 'SK', /** Sierra Leone. */ - Sl = "SL", + Sl = 'SL', /** San Marino. */ - Sm = "SM", + Sm = 'SM', /** Senegal. */ - Sn = "SN", + Sn = 'SN', /** Somalia. */ - So = "SO", + So = 'SO', /** Suriname. */ - Sr = "SR", + Sr = 'SR', /** South Sudan. */ - Ss = "SS", + Ss = 'SS', /** São Tomé & Príncipe. */ - St = "ST", + St = 'ST', /** El Salvador. */ - Sv = "SV", + Sv = 'SV', /** Sint Maarten. */ - Sx = "SX", + Sx = 'SX', /** Syria. */ - Sy = "SY", + Sy = 'SY', /** Eswatini. */ - Sz = "SZ", + Sz = 'SZ', /** Tristan da Cunha. */ - Ta = "TA", + Ta = 'TA', /** Turks & Caicos Islands. */ - Tc = "TC", + Tc = 'TC', /** Chad. */ - Td = "TD", + Td = 'TD', /** French Southern Territories. */ - Tf = "TF", + Tf = 'TF', /** Togo. */ - Tg = "TG", + Tg = 'TG', /** Thailand. */ - Th = "TH", + Th = 'TH', /** Tajikistan. */ - Tj = "TJ", + Tj = 'TJ', /** Tokelau. */ - Tk = "TK", + Tk = 'TK', /** Timor-Leste. */ - Tl = "TL", + Tl = 'TL', /** Turkmenistan. */ - Tm = "TM", + Tm = 'TM', /** Tunisia. */ - Tn = "TN", + Tn = 'TN', /** Tonga. */ - To = "TO", + To = 'TO', /** Türkiye. */ - Tr = "TR", + Tr = 'TR', /** Trinidad & Tobago. */ - Tt = "TT", + Tt = 'TT', /** Tuvalu. */ - Tv = "TV", + Tv = 'TV', /** Taiwan. */ - Tw = "TW", + Tw = 'TW', /** Tanzania. */ - Tz = "TZ", + Tz = 'TZ', /** Ukraine. */ - Ua = "UA", + Ua = 'UA', /** Uganda. */ - Ug = "UG", + Ug = 'UG', /** U.S. Outlying Islands. */ - Um = "UM", + Um = 'UM', /** United States. */ - Us = "US", + Us = 'US', /** Uruguay. */ - Uy = "UY", + Uy = 'UY', /** Uzbekistan. */ - Uz = "UZ", + Uz = 'UZ', /** Vatican City. */ - Va = "VA", + Va = 'VA', /** St. Vincent & Grenadines. */ - Vc = "VC", + Vc = 'VC', /** Venezuela. */ - Ve = "VE", + Ve = 'VE', /** British Virgin Islands. */ - Vg = "VG", + Vg = 'VG', /** Vietnam. */ - Vn = "VN", + Vn = 'VN', /** Vanuatu. */ - Vu = "VU", + Vu = 'VU', /** Wallis & Futuna. */ - Wf = "WF", + Wf = 'WF', /** Samoa. */ - Ws = "WS", + Ws = 'WS', /** Kosovo. */ - Xk = "XK", + Xk = 'XK', /** Yemen. */ - Ye = "YE", + Ye = 'YE', /** Mayotte. */ - Yt = "YT", + Yt = 'YT', /** South Africa. */ - Za = "ZA", + Za = 'ZA', /** Zambia. */ - Zm = "ZM", + Zm = 'ZM', /** Zimbabwe. */ - Zw = "ZW", + Zw = 'ZW', /** Unknown Region. */ - Zz = "ZZ", + Zz = 'ZZ' } /** @@ -1158,338 +1124,338 @@ export enum CountryCode { */ export enum CurrencyCode { /** United Arab Emirates Dirham (AED). */ - Aed = "AED", + Aed = 'AED', /** Afghan Afghani (AFN). */ - Afn = "AFN", + Afn = 'AFN', /** Albanian Lek (ALL). */ - All = "ALL", + All = 'ALL', /** Armenian Dram (AMD). */ - Amd = "AMD", + Amd = 'AMD', /** Netherlands Antillean Guilder. */ - Ang = "ANG", + Ang = 'ANG', /** Angolan Kwanza (AOA). */ - Aoa = "AOA", + Aoa = 'AOA', /** Argentine Pesos (ARS). */ - Ars = "ARS", + Ars = 'ARS', /** Australian Dollars (AUD). */ - Aud = "AUD", + Aud = 'AUD', /** Aruban Florin (AWG). */ - Awg = "AWG", + Awg = 'AWG', /** Azerbaijani Manat (AZN). */ - Azn = "AZN", + Azn = 'AZN', /** Bosnia and Herzegovina Convertible Mark (BAM). */ - Bam = "BAM", + Bam = 'BAM', /** Barbadian Dollar (BBD). */ - Bbd = "BBD", + Bbd = 'BBD', /** Bangladesh Taka (BDT). */ - Bdt = "BDT", + Bdt = 'BDT', /** Bulgarian Lev (BGN). */ - Bgn = "BGN", + Bgn = 'BGN', /** Bahraini Dinar (BHD). */ - Bhd = "BHD", + Bhd = 'BHD', /** Burundian Franc (BIF). */ - Bif = "BIF", + Bif = 'BIF', /** Bermudian Dollar (BMD). */ - Bmd = "BMD", + Bmd = 'BMD', /** Brunei Dollar (BND). */ - Bnd = "BND", + Bnd = 'BND', /** Bolivian Boliviano (BOB). */ - Bob = "BOB", + Bob = 'BOB', /** Brazilian Real (BRL). */ - Brl = "BRL", + Brl = 'BRL', /** Bahamian Dollar (BSD). */ - Bsd = "BSD", + Bsd = 'BSD', /** Bhutanese Ngultrum (BTN). */ - Btn = "BTN", + Btn = 'BTN', /** Botswana Pula (BWP). */ - Bwp = "BWP", + Bwp = 'BWP', /** Belarusian Ruble (BYN). */ - Byn = "BYN", + Byn = 'BYN', /** * Belarusian Ruble (BYR). * @deprecated Use `BYN` instead. */ - Byr = "BYR", + Byr = 'BYR', /** Belize Dollar (BZD). */ - Bzd = "BZD", + Bzd = 'BZD', /** Canadian Dollars (CAD). */ - Cad = "CAD", + Cad = 'CAD', /** Congolese franc (CDF). */ - Cdf = "CDF", + Cdf = 'CDF', /** Swiss Francs (CHF). */ - Chf = "CHF", + Chf = 'CHF', /** Chilean Peso (CLP). */ - Clp = "CLP", + Clp = 'CLP', /** Chinese Yuan Renminbi (CNY). */ - Cny = "CNY", + Cny = 'CNY', /** Colombian Peso (COP). */ - Cop = "COP", + Cop = 'COP', /** Costa Rican Colones (CRC). */ - Crc = "CRC", + Crc = 'CRC', /** Cape Verdean escudo (CVE). */ - Cve = "CVE", + Cve = 'CVE', /** Czech Koruny (CZK). */ - Czk = "CZK", + Czk = 'CZK', /** Djiboutian Franc (DJF). */ - Djf = "DJF", + Djf = 'DJF', /** Danish Kroner (DKK). */ - Dkk = "DKK", + Dkk = 'DKK', /** Dominican Peso (DOP). */ - Dop = "DOP", + Dop = 'DOP', /** Algerian Dinar (DZD). */ - Dzd = "DZD", + Dzd = 'DZD', /** Egyptian Pound (EGP). */ - Egp = "EGP", + Egp = 'EGP', /** Eritrean Nakfa (ERN). */ - Ern = "ERN", + Ern = 'ERN', /** Ethiopian Birr (ETB). */ - Etb = "ETB", + Etb = 'ETB', /** Euro (EUR). */ - Eur = "EUR", + Eur = 'EUR', /** Fijian Dollars (FJD). */ - Fjd = "FJD", + Fjd = 'FJD', /** Falkland Islands Pounds (FKP). */ - Fkp = "FKP", + Fkp = 'FKP', /** United Kingdom Pounds (GBP). */ - Gbp = "GBP", + Gbp = 'GBP', /** Georgian Lari (GEL). */ - Gel = "GEL", + Gel = 'GEL', /** Ghanaian Cedi (GHS). */ - Ghs = "GHS", + Ghs = 'GHS', /** Gibraltar Pounds (GIP). */ - Gip = "GIP", + Gip = 'GIP', /** Gambian Dalasi (GMD). */ - Gmd = "GMD", + Gmd = 'GMD', /** Guinean Franc (GNF). */ - Gnf = "GNF", + Gnf = 'GNF', /** Guatemalan Quetzal (GTQ). */ - Gtq = "GTQ", + Gtq = 'GTQ', /** Guyanese Dollar (GYD). */ - Gyd = "GYD", + Gyd = 'GYD', /** Hong Kong Dollars (HKD). */ - Hkd = "HKD", + Hkd = 'HKD', /** Honduran Lempira (HNL). */ - Hnl = "HNL", + Hnl = 'HNL', /** Croatian Kuna (HRK). */ - Hrk = "HRK", + Hrk = 'HRK', /** Haitian Gourde (HTG). */ - Htg = "HTG", + Htg = 'HTG', /** Hungarian Forint (HUF). */ - Huf = "HUF", + Huf = 'HUF', /** Indonesian Rupiah (IDR). */ - Idr = "IDR", + Idr = 'IDR', /** Israeli New Shekel (NIS). */ - Ils = "ILS", + Ils = 'ILS', /** Indian Rupees (INR). */ - Inr = "INR", + Inr = 'INR', /** Iraqi Dinar (IQD). */ - Iqd = "IQD", + Iqd = 'IQD', /** Iranian Rial (IRR). */ - Irr = "IRR", + Irr = 'IRR', /** Icelandic Kronur (ISK). */ - Isk = "ISK", + Isk = 'ISK', /** Jersey Pound. */ - Jep = "JEP", + Jep = 'JEP', /** Jamaican Dollars (JMD). */ - Jmd = "JMD", + Jmd = 'JMD', /** Jordanian Dinar (JOD). */ - Jod = "JOD", + Jod = 'JOD', /** Japanese Yen (JPY). */ - Jpy = "JPY", + Jpy = 'JPY', /** Kenyan Shilling (KES). */ - Kes = "KES", + Kes = 'KES', /** Kyrgyzstani Som (KGS). */ - Kgs = "KGS", + Kgs = 'KGS', /** Cambodian Riel. */ - Khr = "KHR", + Khr = 'KHR', /** Kiribati Dollar (KID). */ - Kid = "KID", + Kid = 'KID', /** Comorian Franc (KMF). */ - Kmf = "KMF", + Kmf = 'KMF', /** South Korean Won (KRW). */ - Krw = "KRW", + Krw = 'KRW', /** Kuwaiti Dinar (KWD). */ - Kwd = "KWD", + Kwd = 'KWD', /** Cayman Dollars (KYD). */ - Kyd = "KYD", + Kyd = 'KYD', /** Kazakhstani Tenge (KZT). */ - Kzt = "KZT", + Kzt = 'KZT', /** Laotian Kip (LAK). */ - Lak = "LAK", + Lak = 'LAK', /** Lebanese Pounds (LBP). */ - Lbp = "LBP", + Lbp = 'LBP', /** Sri Lankan Rupees (LKR). */ - Lkr = "LKR", + Lkr = 'LKR', /** Liberian Dollar (LRD). */ - Lrd = "LRD", + Lrd = 'LRD', /** Lesotho Loti (LSL). */ - Lsl = "LSL", + Lsl = 'LSL', /** Lithuanian Litai (LTL). */ - Ltl = "LTL", + Ltl = 'LTL', /** Latvian Lati (LVL). */ - Lvl = "LVL", + Lvl = 'LVL', /** Libyan Dinar (LYD). */ - Lyd = "LYD", + Lyd = 'LYD', /** Moroccan Dirham. */ - Mad = "MAD", + Mad = 'MAD', /** Moldovan Leu (MDL). */ - Mdl = "MDL", + Mdl = 'MDL', /** Malagasy Ariary (MGA). */ - Mga = "MGA", + Mga = 'MGA', /** Macedonia Denar (MKD). */ - Mkd = "MKD", + Mkd = 'MKD', /** Burmese Kyat (MMK). */ - Mmk = "MMK", + Mmk = 'MMK', /** Mongolian Tugrik. */ - Mnt = "MNT", + Mnt = 'MNT', /** Macanese Pataca (MOP). */ - Mop = "MOP", + Mop = 'MOP', /** Mauritanian Ouguiya (MRU). */ - Mru = "MRU", + Mru = 'MRU', /** Mauritian Rupee (MUR). */ - Mur = "MUR", + Mur = 'MUR', /** Maldivian Rufiyaa (MVR). */ - Mvr = "MVR", + Mvr = 'MVR', /** Malawian Kwacha (MWK). */ - Mwk = "MWK", + Mwk = 'MWK', /** Mexican Pesos (MXN). */ - Mxn = "MXN", + Mxn = 'MXN', /** Malaysian Ringgits (MYR). */ - Myr = "MYR", + Myr = 'MYR', /** Mozambican Metical. */ - Mzn = "MZN", + Mzn = 'MZN', /** Namibian Dollar. */ - Nad = "NAD", + Nad = 'NAD', /** Nigerian Naira (NGN). */ - Ngn = "NGN", + Ngn = 'NGN', /** Nicaraguan Córdoba (NIO). */ - Nio = "NIO", + Nio = 'NIO', /** Norwegian Kroner (NOK). */ - Nok = "NOK", + Nok = 'NOK', /** Nepalese Rupee (NPR). */ - Npr = "NPR", + Npr = 'NPR', /** New Zealand Dollars (NZD). */ - Nzd = "NZD", + Nzd = 'NZD', /** Omani Rial (OMR). */ - Omr = "OMR", + Omr = 'OMR', /** Panamian Balboa (PAB). */ - Pab = "PAB", + Pab = 'PAB', /** Peruvian Nuevo Sol (PEN). */ - Pen = "PEN", + Pen = 'PEN', /** Papua New Guinean Kina (PGK). */ - Pgk = "PGK", + Pgk = 'PGK', /** Philippine Peso (PHP). */ - Php = "PHP", + Php = 'PHP', /** Pakistani Rupee (PKR). */ - Pkr = "PKR", + Pkr = 'PKR', /** Polish Zlotych (PLN). */ - Pln = "PLN", + Pln = 'PLN', /** Paraguayan Guarani (PYG). */ - Pyg = "PYG", + Pyg = 'PYG', /** Qatari Rial (QAR). */ - Qar = "QAR", + Qar = 'QAR', /** Romanian Lei (RON). */ - Ron = "RON", + Ron = 'RON', /** Serbian dinar (RSD). */ - Rsd = "RSD", + Rsd = 'RSD', /** Russian Rubles (RUB). */ - Rub = "RUB", + Rub = 'RUB', /** Rwandan Franc (RWF). */ - Rwf = "RWF", + Rwf = 'RWF', /** Saudi Riyal (SAR). */ - Sar = "SAR", + Sar = 'SAR', /** Solomon Islands Dollar (SBD). */ - Sbd = "SBD", + Sbd = 'SBD', /** Seychellois Rupee (SCR). */ - Scr = "SCR", + Scr = 'SCR', /** Sudanese Pound (SDG). */ - Sdg = "SDG", + Sdg = 'SDG', /** Swedish Kronor (SEK). */ - Sek = "SEK", + Sek = 'SEK', /** Singapore Dollars (SGD). */ - Sgd = "SGD", + Sgd = 'SGD', /** Saint Helena Pounds (SHP). */ - Shp = "SHP", + Shp = 'SHP', /** Sierra Leonean Leone (SLL). */ - Sll = "SLL", + Sll = 'SLL', /** Somali Shilling (SOS). */ - Sos = "SOS", + Sos = 'SOS', /** Surinamese Dollar (SRD). */ - Srd = "SRD", + Srd = 'SRD', /** South Sudanese Pound (SSP). */ - Ssp = "SSP", + Ssp = 'SSP', /** * Sao Tome And Principe Dobra (STD). * @deprecated Use `STN` instead. */ - Std = "STD", + Std = 'STD', /** Sao Tome And Principe Dobra (STN). */ - Stn = "STN", + Stn = 'STN', /** Syrian Pound (SYP). */ - Syp = "SYP", + Syp = 'SYP', /** Swazi Lilangeni (SZL). */ - Szl = "SZL", + Szl = 'SZL', /** Thai baht (THB). */ - Thb = "THB", + Thb = 'THB', /** Tajikistani Somoni (TJS). */ - Tjs = "TJS", + Tjs = 'TJS', /** Turkmenistani Manat (TMT). */ - Tmt = "TMT", + Tmt = 'TMT', /** Tunisian Dinar (TND). */ - Tnd = "TND", + Tnd = 'TND', /** Tongan Pa'anga (TOP). */ - Top = "TOP", + Top = 'TOP', /** Turkish Lira (TRY). */ - Try = "TRY", + Try = 'TRY', /** Trinidad and Tobago Dollars (TTD). */ - Ttd = "TTD", + Ttd = 'TTD', /** Taiwan Dollars (TWD). */ - Twd = "TWD", + Twd = 'TWD', /** Tanzanian Shilling (TZS). */ - Tzs = "TZS", + Tzs = 'TZS', /** Ukrainian Hryvnia (UAH). */ - Uah = "UAH", + Uah = 'UAH', /** Ugandan Shilling (UGX). */ - Ugx = "UGX", + Ugx = 'UGX', /** United States Dollars (USD). */ - Usd = "USD", + Usd = 'USD', /** United States Dollars Coin (USDC). */ - Usdc = "USDC", + Usdc = 'USDC', /** Uruguayan Pesos (UYU). */ - Uyu = "UYU", + Uyu = 'UYU', /** Uzbekistan som (UZS). */ - Uzs = "UZS", + Uzs = 'UZS', /** Venezuelan Bolivares (VED). */ - Ved = "VED", + Ved = 'VED', /** * Venezuelan Bolivares (VEF). * @deprecated Use `VES` instead. */ - Vef = "VEF", + Vef = 'VEF', /** Venezuelan Bolivares Soberanos (VES). */ - Ves = "VES", + Ves = 'VES', /** Vietnamese đồng (VND). */ - Vnd = "VND", + Vnd = 'VND', /** Vanuatu Vatu (VUV). */ - Vuv = "VUV", + Vuv = 'VUV', /** Samoan Tala (WST). */ - Wst = "WST", + Wst = 'WST', /** Central African CFA Franc (XAF). */ - Xaf = "XAF", + Xaf = 'XAF', /** East Caribbean Dollar (XCD). */ - Xcd = "XCD", + Xcd = 'XCD', /** West African CFA franc (XOF). */ - Xof = "XOF", + Xof = 'XOF', /** CFP Franc (XPF). */ - Xpf = "XPF", + Xpf = 'XPF', /** Unrecognized currency. */ - Xxx = "XXX", + Xxx = 'XXX', /** Yemeni Rial (YER). */ - Yer = "YER", + Yer = 'YER', /** South African Rand (ZAR). */ - Zar = "ZAR", + Zar = 'ZAR', /** Zambian Kwacha (ZMW). */ - Zmw = "ZMW", + Zmw = 'ZMW' } /** @@ -1499,23 +1465,23 @@ export enum CurrencyCode { * information, or weight measurements and conversions. */ export type CustomProduct = { - __typename?: "CustomProduct"; + __typename?: 'CustomProduct'; /** Whether the merchandise is a gift card. */ - isGiftCard: Scalars["Boolean"]["output"]; + isGiftCard: Scalars['Boolean']['output']; /** * Whether the item needs to be shipped to the customer. For example, a * digital gift card doesn't need to be shipped, but a t-shirt does * need to be shipped. */ - requiresShipping: Scalars["Boolean"]["output"]; + requiresShipping: Scalars['Boolean']['output']; /** * The localized name for the product that displays to customers. The title is used to construct the product's * handle, which is a unique, human-readable string of the product's title. For example, if a product is titled * "Black Sunglasses", then the handle is `black-sunglasses`. */ - title: Scalars["String"]["output"]; + title: Scalars['String']['output']; /** The product variant's weight, in the system of measurement set in the `weightUnit` field. */ - weight?: Maybe; + weight?: Maybe; /** The unit of measurement for weight. */ weightUnit: WeightUnit; }; @@ -1525,7 +1491,7 @@ export type CustomProduct = { * `Customer` returns data including the customer's contact information and order history. */ export type Customer = HasMetafields & { - __typename?: "Customer"; + __typename?: 'Customer'; /** * The total amount that the customer has spent on orders. * The amount is converted from the shop's currency to the currency of the cart using a market rate. @@ -1536,25 +1502,25 @@ export type Customer = HasMetafields & { * If `firstName` and `lastName` aren't specified, then the value is the customer's email address. * If the email address isn't specified, then the value is the customer's phone number. */ - displayName: Scalars["String"]["output"]; + displayName: Scalars['String']['output']; /** The customer's email address. */ - email?: Maybe; + email?: Maybe; /** The customer's first name. */ - firstName?: Maybe; + firstName?: Maybe; /** * Whether the customer is associated with any of the specified tags. The customer must have at least one tag * from the list to return `true`. */ - hasAnyTag: Scalars["Boolean"]["output"]; + hasAnyTag: Scalars['Boolean']['output']; /** Whether the customer is associated with the specified tags. */ hasTags: Array; /** * A [globally-unique ID](https://shopify.dev/docs/api/usage/gids) * for the customer. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** The customer's last name. */ - lastName?: Maybe; + lastName?: Maybe; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -1564,37 +1530,40 @@ export type Customer = HasMetafields & { */ metafield?: Maybe; /** The total number of orders that the customer has made at the store. */ - numberOfOrders: Scalars["Int"]["output"]; + numberOfOrders: Scalars['Int']['output']; }; + /** * Represents a [customer](https://help.shopify.com/manual/customers/manage-customers). * `Customer` returns data including the customer's contact information and order history. */ export type CustomerHasAnyTagArgs = { - tags?: Array; + tags?: Array; }; + /** * Represents a [customer](https://help.shopify.com/manual/customers/manage-customers). * `Customer` returns data including the customer's contact information and order history. */ export type CustomerHasTagsArgs = { - tags?: Array; + tags?: Array; }; + /** * Represents a [customer](https://help.shopify.com/manual/customers/manage-customers). * `Customer` returns data including the customer's contact information and order history. */ export type CustomerMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** Represents information about the merchandise in the cart. */ export type DeliverableCartLine = { - __typename?: "DeliverableCartLine"; + __typename?: 'DeliverableCartLine'; /** * The custom attributes associated with a cart to store additional information. Cart attributes * allow you to collect specific information from customers on the **Cart** page, such as order notes, @@ -1606,16 +1575,17 @@ export type DeliverableCartLine = { */ attribute?: Maybe; /** The ID of the cart line. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** The item that the customer intends to purchase. */ merchandise: Merchandise; /** The quantity of the item that the customer intends to purchase. */ - quantity: Scalars["Int"]["output"]; + quantity: Scalars['Int']['output']; }; + /** Represents information about the merchandise in the cart. */ export type DeliverableCartLineAttributeArgs = { - key?: InputMaybe; + key?: InputMaybe; }; /** The discount that's eligible to be applied to a delivery. */ @@ -1632,7 +1602,7 @@ export type DeliveryDiscountCandidate = { * message, such as "Save 20% on all t-shirts." If a discount code is entered, * the notification displays the code instead. */ - message?: InputMaybe; + message?: InputMaybe; /** The targets of the discount that are eligible to be applied to a delivery. */ targets: Array; /** The value of the discount that's eligible to be applied to a delivery. */ @@ -1647,18 +1617,20 @@ export type DeliveryDiscountCandidateTarget = * For example, if a customer orders a t-shirt and a pair of shoes that can be shipped together, then the * items are included in the same delivery group. */ - | { deliveryGroup: DeliveryGroupTarget; deliveryOption?: never } /** + { deliveryGroup: DeliveryGroupTarget; deliveryOption?: never; } + | /** * A method for applying a discount to a delivery option within a delivery group. * Delivery options are the different ways that customers can choose to have their * orders shipped. Examples of delivery options include express shipping or standard shipping. */ - | { deliveryGroup?: never; deliveryOption: DeliveryOptionTarget }; + { deliveryGroup?: never; deliveryOption: DeliveryOptionTarget; }; /** The value of the eligible delivery discount. */ export type DeliveryDiscountCandidateValue = /** A fixed amount value. */ - | { fixedAmount: FixedAmount; percentage?: never } /** A percentage value. */ - | { fixedAmount?: never; percentage: Percentage }; + { fixedAmount: FixedAmount; percentage?: never; } + | /** A percentage value. */ + { fixedAmount?: never; percentage: Percentage; }; /** The strategy that's applied to the list of discounts that are eligible to be applied to a delivery. */ export enum DeliveryDiscountSelectionStrategy { @@ -1667,7 +1639,7 @@ export enum DeliveryDiscountSelectionStrategy { * conditions that are satisfied. This doesn't override * discount combination or stacking rules. */ - All = "ALL", + All = 'ALL' } /** @@ -1696,23 +1668,23 @@ export type DeliveryDiscountsAddOperation = { */ export type DeliveryGroupTarget = { /** The ID of the target delivery group. */ - id: Scalars["ID"]["input"]; + id: Scalars['ID']['input']; }; /** List of different delivery method types. */ export enum DeliveryMethod { /** Local Delivery. */ - Local = "LOCAL", + Local = 'LOCAL', /** None. */ - None = "NONE", + None = 'NONE', /** Shipping to a Pickup Point. */ - PickupPoint = "PICKUP_POINT", + PickupPoint = 'PICKUP_POINT', /** Local Pickup. */ - PickUp = "PICK_UP", + PickUp = 'PICK_UP', /** Retail. */ - Retail = "RETAIL", + Retail = 'RETAIL', /** Shipping. */ - Shipping = "SHIPPING", + Shipping = 'SHIPPING' } /** @@ -1727,28 +1699,18 @@ export type DeliveryOperation = * Applies delivery discounts to a cart that share a method for determining which * shipping and delivery discounts to apply when multiple discounts are eligible. */ - | { - deliveryDiscountsAdd: DeliveryDiscountsAddOperation; - enteredDiscountCodesAccept?: never; - enteredDiscountCodesReject?: never; - } /** + { deliveryDiscountsAdd: DeliveryDiscountsAddOperation; enteredDiscountCodesAccept?: never; enteredDiscountCodesReject?: never; } + | /** * An operation that selects which entered discount codes to accept. Use this to * validate discount codes from external systems. */ - | { - deliveryDiscountsAdd?: never; - enteredDiscountCodesAccept: EnteredDiscountCodesAcceptOperation; - enteredDiscountCodesReject?: never; - } /** + { deliveryDiscountsAdd?: never; enteredDiscountCodesAccept: EnteredDiscountCodesAcceptOperation; enteredDiscountCodesReject?: never; } + | /** * An operation that rejects entered discount codes with a custom message. Use * this to conditionally reject discount codes based on business logic. This * operation can only be used if the function is backed by an automatic discount. */ - | { - deliveryDiscountsAdd?: never; - enteredDiscountCodesAccept?: never; - enteredDiscountCodesReject: EnteredDiscountCodesRejectOperation; - }; + { deliveryDiscountsAdd?: never; enteredDiscountCodesAccept?: never; enteredDiscountCodesReject: EnteredDiscountCodesRejectOperation; }; /** * A method for applying a discount to a delivery option within a delivery group. @@ -1757,12 +1719,12 @@ export type DeliveryOperation = */ export type DeliveryOptionTarget = { /** The handle of the target delivery option. */ - handle: Scalars["Handle"]["input"]; + handle: Scalars['Handle']['input']; }; /** The discount that invoked the [Discount Function](https://shopify.dev/docs/apps/build/discounts#build-with-shopify-functions)). */ export type Discount = HasMetafields & { - __typename?: "Discount"; + __typename?: 'Discount'; /** The [discount classes](https://shopify.dev/docs/apps/build/discounts/#discount-classes) that the [discountNode](https://shopify.dev/docs/api/admin-graphql/latest/queries/discountNode) supports. */ discountClasses: Array; /** @@ -1775,10 +1737,11 @@ export type Discount = HasMetafields & { metafield?: Maybe; }; + /** The discount that invoked the [Discount Function](https://shopify.dev/docs/apps/build/discounts#build-with-shopify-functions)). */ export type DiscountMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** @@ -1791,38 +1754,38 @@ export enum DiscountClass { * [order discount](https://help.shopify.com/manual/discounts/combining-discounts/discount-combinations) * class. */ - Order = "ORDER", + Order = 'ORDER', /** * The discount is combined with a * [product discount](https://help.shopify.com/manual/discounts/combining-discounts/discount-combinations) * class. */ - Product = "PRODUCT", + Product = 'PRODUCT', /** * The discount is combined with a * [shipping discount](https://help.shopify.com/manual/discounts/combining-discounts/discount-combinations) * class. */ - Shipping = "SHIPPING", + Shipping = 'SHIPPING' } /** A discount code used by the buyer to add a discount to the cart. */ export type DiscountCode = { /** The discount code. */ - code: Scalars["String"]["input"]; + code: Scalars['String']['input']; }; /** A discount code entered by the customer. */ export type EnteredDiscountCode = { - __typename?: "EnteredDiscountCode"; + __typename?: 'EnteredDiscountCode'; /** The discount code. */ - code: Scalars["String"]["output"]; + code: Scalars['String']['output']; /** * Indicates whether the entered discount code can be rejected. * * A discount code can't be rejected if it's associated with a discount that has already been applied to the cart. */ - rejectable: Scalars["Boolean"]["output"]; + rejectable: Scalars['Boolean']['output']; }; /** An operation that selects which entered discount codes to accept. Use this to validate discount codes from external systems. */ @@ -1840,7 +1803,7 @@ export type EnteredDiscountCodesRejectOperation = { /** The list of discount codes to reject. */ codes: Array; /** The custom message to display to the customer when the discount codes are rejected. */ - message: Scalars["String"]["input"]; + message: Scalars['String']['input']; }; /** A fixed amount value. */ @@ -1850,7 +1813,7 @@ export type FixedAmount = { * * The amount must be greater than or equal to 0. */ - amount: Scalars["Decimal"]["input"]; + amount: Scalars['Decimal']['input']; }; /** Represents information about the metafields associated to the specified resource. */ @@ -1865,23 +1828,24 @@ export type HasMetafields = { metafield?: Maybe; }; + /** Represents information about the metafields associated to the specified resource. */ export type HasMetafieldsMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** Whether a Shopify resource, such as a product or customer, has a specified tag. */ export type HasTagResponse = { - __typename?: "HasTagResponse"; + __typename?: 'HasTagResponse'; /** Whether the Shopify resource has the tag. */ - hasTag: Scalars["Boolean"]["output"]; + hasTag: Scalars['Boolean']['output']; /** * A searchable keyword that's associated with a Shopify resource, such as a product or customer. For example, * a merchant might apply the `sports` and `summer` tags to products that are associated with sportswear for * summer. */ - tag: Scalars["String"]["output"]; + tag: Scalars['String']['output']; }; /** The attributes associated with an HTTP request. */ @@ -1890,7 +1854,7 @@ export type HttpRequest = { * The HTTP request body as a plain string. * Use this field when the body isn't in JSON format. */ - body?: InputMaybe; + body?: InputMaybe; /** The HTTP headers. */ headers: Array; /** @@ -1902,45 +1866,45 @@ export type HttpRequest = { * If this field is specified and no `Content-Type` header is included, then the header will * automatically be set to `application/json`. */ - jsonBody?: InputMaybe; + jsonBody?: InputMaybe; /** The HTTP method. */ method: HttpRequestMethod; /** Policy attached to the HTTP request. */ policy: HttpRequestPolicy; /** The HTTP url (eg.: https://example.com). The scheme needs to be HTTPS. */ - url: Scalars["URL"]["input"]; + url: Scalars['URL']['input']; }; /** The attributes associated with an HTTP request header. */ export type HttpRequestHeader = { /** Header name. */ - name: Scalars["String"]["input"]; + name: Scalars['String']['input']; /** Header value. */ - value: Scalars["String"]["input"]; + value: Scalars['String']['input']; }; /** The HTTP request available methods. */ export enum HttpRequestMethod { /** Http GET. */ - Get = "GET", + Get = 'GET', /** Http POST. */ - Post = "POST", + Post = 'POST' } /** The attributes associated with an HTTP request policy. */ export type HttpRequestPolicy = { /** Read timeout in milliseconds. */ - readTimeoutMs: Scalars["Int"]["input"]; + readTimeoutMs: Scalars['Int']['input']; }; /** The attributes associated with an HTTP response. */ export type HttpResponse = { - __typename?: "HttpResponse"; + __typename?: 'HttpResponse'; /** * The HTTP response body as a plain string. * Use this field when the body is not in JSON format. */ - body?: Maybe; + body?: Maybe; /** An HTTP header. */ header?: Maybe; /** @@ -1958,28 +1922,29 @@ export type HttpResponse = { * To prevent increasing the function target input size unnecessarily, avoid querying * both `body` and `jsonBody` simultaneously. */ - jsonBody?: Maybe; + jsonBody?: Maybe; /** The HTTP status code. */ - status: Scalars["Int"]["output"]; + status: Scalars['Int']['output']; }; + /** The attributes associated with an HTTP response. */ export type HttpResponseHeaderArgs = { - name: Scalars["String"]["input"]; + name: Scalars['String']['input']; }; /** The attributes associated with an HTTP response header. */ export type HttpResponseHeader = { - __typename?: "HttpResponseHeader"; + __typename?: 'HttpResponseHeader'; /** Header name. */ - name: Scalars["String"]["output"]; + name: Scalars['String']['output']; /** Header value. */ - value: Scalars["String"]["output"]; + value: Scalars['String']['output']; }; /** The input object for the Function. */ export type Input = { - __typename?: "Input"; + __typename?: 'Input'; /** * The cart where the Function is running. A cart contains the merchandise that a customer intends to purchase * and information about the customer, such as the customer's email address and phone number. @@ -2020,7 +1985,7 @@ export type Input = { * For example, if a store operates in USD but a customer is viewing discounts in EUR, * then the presentment currency rate handles this conversion for accurate pricing. */ - presentmentCurrencyRate: Scalars["Decimal"]["output"]; + presentmentCurrencyRate: Scalars['Decimal']['output']; /** * Information about the shop where the Function is running, including the shop's timezone * setting and associated [metafields](https://shopify.dev/docs/apps/build/custom-data). @@ -2031,7 +1996,7 @@ export type Input = { * This input is only available in the `cart.lines.discounts.generate.run` and * `cart.delivery-options.discounts.generate.run` extension targets. */ - triggeringDiscountCode?: Maybe; + triggeringDiscountCode?: Maybe; }; /** @@ -2039,7 +2004,7 @@ export type Input = { * This includes product descriptions and customer communications that resonate with the target audience. */ export type Language = { - __typename?: "Language"; + __typename?: 'Language'; /** The ISO code. */ isoCode: LanguageCode; }; @@ -2047,287 +2012,287 @@ export type Language = { /** Language codes supported by Shopify. */ export enum LanguageCode { /** Afrikaans. */ - Af = "AF", + Af = 'AF', /** Akan. */ - Ak = "AK", + Ak = 'AK', /** Amharic. */ - Am = "AM", + Am = 'AM', /** Arabic. */ - Ar = "AR", + Ar = 'AR', /** Assamese. */ - As = "AS", + As = 'AS', /** Azerbaijani. */ - Az = "AZ", + Az = 'AZ', /** Belarusian. */ - Be = "BE", + Be = 'BE', /** Bulgarian. */ - Bg = "BG", + Bg = 'BG', /** Bambara. */ - Bm = "BM", + Bm = 'BM', /** Bangla. */ - Bn = "BN", + Bn = 'BN', /** Tibetan. */ - Bo = "BO", + Bo = 'BO', /** Breton. */ - Br = "BR", + Br = 'BR', /** Bosnian. */ - Bs = "BS", + Bs = 'BS', /** Catalan. */ - Ca = "CA", + Ca = 'CA', /** Chechen. */ - Ce = "CE", + Ce = 'CE', /** Central Kurdish. */ - Ckb = "CKB", + Ckb = 'CKB', /** Czech. */ - Cs = "CS", + Cs = 'CS', /** Church Slavic. */ - Cu = "CU", + Cu = 'CU', /** Welsh. */ - Cy = "CY", + Cy = 'CY', /** Danish. */ - Da = "DA", + Da = 'DA', /** German. */ - De = "DE", + De = 'DE', /** Dzongkha. */ - Dz = "DZ", + Dz = 'DZ', /** Ewe. */ - Ee = "EE", + Ee = 'EE', /** Greek. */ - El = "EL", + El = 'EL', /** English. */ - En = "EN", + En = 'EN', /** Esperanto. */ - Eo = "EO", + Eo = 'EO', /** Spanish. */ - Es = "ES", + Es = 'ES', /** Estonian. */ - Et = "ET", + Et = 'ET', /** Basque. */ - Eu = "EU", + Eu = 'EU', /** Persian. */ - Fa = "FA", + Fa = 'FA', /** Fulah. */ - Ff = "FF", + Ff = 'FF', /** Finnish. */ - Fi = "FI", + Fi = 'FI', /** Filipino. */ - Fil = "FIL", + Fil = 'FIL', /** Faroese. */ - Fo = "FO", + Fo = 'FO', /** French. */ - Fr = "FR", + Fr = 'FR', /** Western Frisian. */ - Fy = "FY", + Fy = 'FY', /** Irish. */ - Ga = "GA", + Ga = 'GA', /** Scottish Gaelic. */ - Gd = "GD", + Gd = 'GD', /** Galician. */ - Gl = "GL", + Gl = 'GL', /** Gujarati. */ - Gu = "GU", + Gu = 'GU', /** Manx. */ - Gv = "GV", + Gv = 'GV', /** Hausa. */ - Ha = "HA", + Ha = 'HA', /** Hebrew. */ - He = "HE", + He = 'HE', /** Hindi. */ - Hi = "HI", + Hi = 'HI', /** Croatian. */ - Hr = "HR", + Hr = 'HR', /** Hungarian. */ - Hu = "HU", + Hu = 'HU', /** Armenian. */ - Hy = "HY", + Hy = 'HY', /** Interlingua. */ - Ia = "IA", + Ia = 'IA', /** Indonesian. */ - Id = "ID", + Id = 'ID', /** Igbo. */ - Ig = "IG", + Ig = 'IG', /** Sichuan Yi. */ - Ii = "II", + Ii = 'II', /** Icelandic. */ - Is = "IS", + Is = 'IS', /** Italian. */ - It = "IT", + It = 'IT', /** Japanese. */ - Ja = "JA", + Ja = 'JA', /** Javanese. */ - Jv = "JV", + Jv = 'JV', /** Georgian. */ - Ka = "KA", + Ka = 'KA', /** Kikuyu. */ - Ki = "KI", + Ki = 'KI', /** Kazakh. */ - Kk = "KK", + Kk = 'KK', /** Kalaallisut. */ - Kl = "KL", + Kl = 'KL', /** Khmer. */ - Km = "KM", + Km = 'KM', /** Kannada. */ - Kn = "KN", + Kn = 'KN', /** Korean. */ - Ko = "KO", + Ko = 'KO', /** Kashmiri. */ - Ks = "KS", + Ks = 'KS', /** Kurdish. */ - Ku = "KU", + Ku = 'KU', /** Cornish. */ - Kw = "KW", + Kw = 'KW', /** Kyrgyz. */ - Ky = "KY", + Ky = 'KY', /** Luxembourgish. */ - Lb = "LB", + Lb = 'LB', /** Ganda. */ - Lg = "LG", + Lg = 'LG', /** Lingala. */ - Ln = "LN", + Ln = 'LN', /** Lao. */ - Lo = "LO", + Lo = 'LO', /** Lithuanian. */ - Lt = "LT", + Lt = 'LT', /** Luba-Katanga. */ - Lu = "LU", + Lu = 'LU', /** Latvian. */ - Lv = "LV", + Lv = 'LV', /** Malagasy. */ - Mg = "MG", + Mg = 'MG', /** Māori. */ - Mi = "MI", + Mi = 'MI', /** Macedonian. */ - Mk = "MK", + Mk = 'MK', /** Malayalam. */ - Ml = "ML", + Ml = 'ML', /** Mongolian. */ - Mn = "MN", + Mn = 'MN', /** Marathi. */ - Mr = "MR", + Mr = 'MR', /** Malay. */ - Ms = "MS", + Ms = 'MS', /** Maltese. */ - Mt = "MT", + Mt = 'MT', /** Burmese. */ - My = "MY", + My = 'MY', /** Norwegian (Bokmål). */ - Nb = "NB", + Nb = 'NB', /** North Ndebele. */ - Nd = "ND", + Nd = 'ND', /** Nepali. */ - Ne = "NE", + Ne = 'NE', /** Dutch. */ - Nl = "NL", + Nl = 'NL', /** Norwegian Nynorsk. */ - Nn = "NN", + Nn = 'NN', /** Norwegian. */ - No = "NO", + No = 'NO', /** Oromo. */ - Om = "OM", + Om = 'OM', /** Odia. */ - Or = "OR", + Or = 'OR', /** Ossetic. */ - Os = "OS", + Os = 'OS', /** Punjabi. */ - Pa = "PA", + Pa = 'PA', /** Polish. */ - Pl = "PL", + Pl = 'PL', /** Pashto. */ - Ps = "PS", + Ps = 'PS', /** Portuguese. */ - Pt = "PT", + Pt = 'PT', /** Portuguese (Brazil). */ - PtBr = "PT_BR", + PtBr = 'PT_BR', /** Portuguese (Portugal). */ - PtPt = "PT_PT", + PtPt = 'PT_PT', /** Quechua. */ - Qu = "QU", + Qu = 'QU', /** Romansh. */ - Rm = "RM", + Rm = 'RM', /** Rundi. */ - Rn = "RN", + Rn = 'RN', /** Romanian. */ - Ro = "RO", + Ro = 'RO', /** Russian. */ - Ru = "RU", + Ru = 'RU', /** Kinyarwanda. */ - Rw = "RW", + Rw = 'RW', /** Sanskrit. */ - Sa = "SA", + Sa = 'SA', /** Sardinian. */ - Sc = "SC", + Sc = 'SC', /** Sindhi. */ - Sd = "SD", + Sd = 'SD', /** Northern Sami. */ - Se = "SE", + Se = 'SE', /** Sango. */ - Sg = "SG", + Sg = 'SG', /** Sinhala. */ - Si = "SI", + Si = 'SI', /** Slovak. */ - Sk = "SK", + Sk = 'SK', /** Slovenian. */ - Sl = "SL", + Sl = 'SL', /** Shona. */ - Sn = "SN", + Sn = 'SN', /** Somali. */ - So = "SO", + So = 'SO', /** Albanian. */ - Sq = "SQ", + Sq = 'SQ', /** Serbian. */ - Sr = "SR", + Sr = 'SR', /** Sundanese. */ - Su = "SU", + Su = 'SU', /** Swedish. */ - Sv = "SV", + Sv = 'SV', /** Swahili. */ - Sw = "SW", + Sw = 'SW', /** Tamil. */ - Ta = "TA", + Ta = 'TA', /** Telugu. */ - Te = "TE", + Te = 'TE', /** Tajik. */ - Tg = "TG", + Tg = 'TG', /** Thai. */ - Th = "TH", + Th = 'TH', /** Tigrinya. */ - Ti = "TI", + Ti = 'TI', /** Turkmen. */ - Tk = "TK", + Tk = 'TK', /** Tongan. */ - To = "TO", + To = 'TO', /** Turkish. */ - Tr = "TR", + Tr = 'TR', /** Tatar. */ - Tt = "TT", + Tt = 'TT', /** Uyghur. */ - Ug = "UG", + Ug = 'UG', /** Ukrainian. */ - Uk = "UK", + Uk = 'UK', /** Urdu. */ - Ur = "UR", + Ur = 'UR', /** Uzbek. */ - Uz = "UZ", + Uz = 'UZ', /** Vietnamese. */ - Vi = "VI", + Vi = 'VI', /** Volapük. */ - Vo = "VO", + Vo = 'VO', /** Wolof. */ - Wo = "WO", + Wo = 'WO', /** Xhosa. */ - Xh = "XH", + Xh = 'XH', /** Yiddish. */ - Yi = "YI", + Yi = 'YI', /** Yoruba. */ - Yo = "YO", + Yo = 'YO', /** Chinese. */ - Zh = "ZH", + Zh = 'ZH', /** Chinese (Simplified). */ - ZhCn = "ZH_CN", + ZhCn = 'ZH_CN', /** Chinese (Traditional). */ - ZhTw = "ZH_TW", + ZhTw = 'ZH_TW', /** Zulu. */ - Zu = "ZU", + Zu = 'ZU' } /** @@ -2335,71 +2300,77 @@ export enum LanguageCode { * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTime = { - __typename?: "LocalTime"; + __typename?: 'LocalTime'; /** The current date relative to the parent object. */ - date: Scalars["Date"]["output"]; + date: Scalars['Date']['output']; /** Returns true if the current date and time is at or past the given date and time, and false otherwise. */ - dateTimeAfter: Scalars["Boolean"]["output"]; + dateTimeAfter: Scalars['Boolean']['output']; /** Returns true if the current date and time is before the given date and time, and false otherwise. */ - dateTimeBefore: Scalars["Boolean"]["output"]; + dateTimeBefore: Scalars['Boolean']['output']; /** Returns true if the current date and time is between the two given date and times, and false otherwise. */ - dateTimeBetween: Scalars["Boolean"]["output"]; + dateTimeBetween: Scalars['Boolean']['output']; /** Returns true if the current time is at or past the given time, and false otherwise. */ - timeAfter: Scalars["Boolean"]["output"]; + timeAfter: Scalars['Boolean']['output']; /** Returns true if the current time is at or past the given time, and false otherwise. */ - timeBefore: Scalars["Boolean"]["output"]; + timeBefore: Scalars['Boolean']['output']; /** Returns true if the current time is between the two given times, and false otherwise. */ - timeBetween: Scalars["Boolean"]["output"]; + timeBetween: Scalars['Boolean']['output']; }; + /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTimeDateTimeAfterArgs = { - dateTime: Scalars["DateTimeWithoutTimezone"]["input"]; + dateTime: Scalars['DateTimeWithoutTimezone']['input']; }; + /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTimeDateTimeBeforeArgs = { - dateTime: Scalars["DateTimeWithoutTimezone"]["input"]; + dateTime: Scalars['DateTimeWithoutTimezone']['input']; }; + /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTimeDateTimeBetweenArgs = { - endDateTime: Scalars["DateTimeWithoutTimezone"]["input"]; - startDateTime: Scalars["DateTimeWithoutTimezone"]["input"]; + endDateTime: Scalars['DateTimeWithoutTimezone']['input']; + startDateTime: Scalars['DateTimeWithoutTimezone']['input']; }; + /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTimeTimeAfterArgs = { - time: Scalars["TimeWithoutTimezone"]["input"]; + time: Scalars['TimeWithoutTimezone']['input']; }; + /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTimeTimeBeforeArgs = { - time: Scalars["TimeWithoutTimezone"]["input"]; + time: Scalars['TimeWithoutTimezone']['input']; }; + /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTimeTimeBetweenArgs = { - endTime: Scalars["TimeWithoutTimezone"]["input"]; - startTime: Scalars["TimeWithoutTimezone"]["input"]; + endTime: Scalars['TimeWithoutTimezone']['input']; + startTime: Scalars['TimeWithoutTimezone']['input']; }; /** @@ -2409,7 +2380,7 @@ export type LocalTimeTimeBetweenArgs = { * products in a store. */ export type Localization = { - __typename?: "Localization"; + __typename?: 'Localization'; /** * The country for which the store is customized, reflecting local preferences and regulations. * Localization might influence the language, currency, and product offerings available in a store to enhance @@ -2435,102 +2406,102 @@ export type Localization = { * identification numbers. */ export type LocalizedField = { - __typename?: "LocalizedField"; + __typename?: 'LocalizedField'; /** The key of the localized field. */ key: LocalizedFieldKey; /** The title of the localized field. */ - title: Scalars["String"]["output"]; + title: Scalars['String']['output']; /** The value of the localized field. */ - value?: Maybe; + value?: Maybe; }; /** Unique key identifying localized fields. */ export enum LocalizedFieldKey { /** Localized field key 'shipping_credential_br' for country Brazil. */ - ShippingCredentialBr = "SHIPPING_CREDENTIAL_BR", + ShippingCredentialBr = 'SHIPPING_CREDENTIAL_BR', /** Localized field key 'shipping_credential_cl' for country Chile. */ - ShippingCredentialCl = "SHIPPING_CREDENTIAL_CL", + ShippingCredentialCl = 'SHIPPING_CREDENTIAL_CL', /** Localized field key 'shipping_credential_cn' for country China. */ - ShippingCredentialCn = "SHIPPING_CREDENTIAL_CN", + ShippingCredentialCn = 'SHIPPING_CREDENTIAL_CN', /** Localized field key 'shipping_credential_co' for country Colombia. */ - ShippingCredentialCo = "SHIPPING_CREDENTIAL_CO", + ShippingCredentialCo = 'SHIPPING_CREDENTIAL_CO', /** Localized field key 'shipping_credential_cr' for country Costa Rica. */ - ShippingCredentialCr = "SHIPPING_CREDENTIAL_CR", + ShippingCredentialCr = 'SHIPPING_CREDENTIAL_CR', /** Localized field key 'shipping_credential_ec' for country Ecuador. */ - ShippingCredentialEc = "SHIPPING_CREDENTIAL_EC", + ShippingCredentialEc = 'SHIPPING_CREDENTIAL_EC', /** Localized field key 'shipping_credential_es' for country Spain. */ - ShippingCredentialEs = "SHIPPING_CREDENTIAL_ES", + ShippingCredentialEs = 'SHIPPING_CREDENTIAL_ES', /** Localized field key 'shipping_credential_gt' for country Guatemala. */ - ShippingCredentialGt = "SHIPPING_CREDENTIAL_GT", + ShippingCredentialGt = 'SHIPPING_CREDENTIAL_GT', /** Localized field key 'shipping_credential_id' for country Indonesia. */ - ShippingCredentialId = "SHIPPING_CREDENTIAL_ID", + ShippingCredentialId = 'SHIPPING_CREDENTIAL_ID', /** Localized field key 'shipping_credential_kr' for country South Korea. */ - ShippingCredentialKr = "SHIPPING_CREDENTIAL_KR", + ShippingCredentialKr = 'SHIPPING_CREDENTIAL_KR', /** Localized field key 'shipping_credential_mx' for country Mexico. */ - ShippingCredentialMx = "SHIPPING_CREDENTIAL_MX", + ShippingCredentialMx = 'SHIPPING_CREDENTIAL_MX', /** Localized field key 'shipping_credential_my' for country Malaysia. */ - ShippingCredentialMy = "SHIPPING_CREDENTIAL_MY", + ShippingCredentialMy = 'SHIPPING_CREDENTIAL_MY', /** Localized field key 'shipping_credential_pe' for country Peru. */ - ShippingCredentialPe = "SHIPPING_CREDENTIAL_PE", + ShippingCredentialPe = 'SHIPPING_CREDENTIAL_PE', /** Localized field key 'shipping_credential_pt' for country Portugal. */ - ShippingCredentialPt = "SHIPPING_CREDENTIAL_PT", + ShippingCredentialPt = 'SHIPPING_CREDENTIAL_PT', /** Localized field key 'shipping_credential_py' for country Paraguay. */ - ShippingCredentialPy = "SHIPPING_CREDENTIAL_PY", + ShippingCredentialPy = 'SHIPPING_CREDENTIAL_PY', /** Localized field key 'shipping_credential_tr' for country Turkey. */ - ShippingCredentialTr = "SHIPPING_CREDENTIAL_TR", + ShippingCredentialTr = 'SHIPPING_CREDENTIAL_TR', /** Localized field key 'shipping_credential_tw' for country Taiwan. */ - ShippingCredentialTw = "SHIPPING_CREDENTIAL_TW", + ShippingCredentialTw = 'SHIPPING_CREDENTIAL_TW', /** Localized field key 'shipping_credential_type_co' for country Colombia. */ - ShippingCredentialTypeCo = "SHIPPING_CREDENTIAL_TYPE_CO", + ShippingCredentialTypeCo = 'SHIPPING_CREDENTIAL_TYPE_CO', /** Localized field key 'tax_credential_br' for country Brazil. */ - TaxCredentialBr = "TAX_CREDENTIAL_BR", + TaxCredentialBr = 'TAX_CREDENTIAL_BR', /** Localized field key 'tax_credential_cl' for country Chile. */ - TaxCredentialCl = "TAX_CREDENTIAL_CL", + TaxCredentialCl = 'TAX_CREDENTIAL_CL', /** Localized field key 'tax_credential_co' for country Colombia. */ - TaxCredentialCo = "TAX_CREDENTIAL_CO", + TaxCredentialCo = 'TAX_CREDENTIAL_CO', /** Localized field key 'tax_credential_cr' for country Costa Rica. */ - TaxCredentialCr = "TAX_CREDENTIAL_CR", + TaxCredentialCr = 'TAX_CREDENTIAL_CR', /** Localized field key 'tax_credential_ec' for country Ecuador. */ - TaxCredentialEc = "TAX_CREDENTIAL_EC", + TaxCredentialEc = 'TAX_CREDENTIAL_EC', /** Localized field key 'tax_credential_es' for country Spain. */ - TaxCredentialEs = "TAX_CREDENTIAL_ES", + TaxCredentialEs = 'TAX_CREDENTIAL_ES', /** Localized field key 'tax_credential_gt' for country Guatemala. */ - TaxCredentialGt = "TAX_CREDENTIAL_GT", + TaxCredentialGt = 'TAX_CREDENTIAL_GT', /** Localized field key 'tax_credential_id' for country Indonesia. */ - TaxCredentialId = "TAX_CREDENTIAL_ID", + TaxCredentialId = 'TAX_CREDENTIAL_ID', /** Localized field key 'tax_credential_it' for country Italy. */ - TaxCredentialIt = "TAX_CREDENTIAL_IT", + TaxCredentialIt = 'TAX_CREDENTIAL_IT', /** Localized field key 'tax_credential_mx' for country Mexico. */ - TaxCredentialMx = "TAX_CREDENTIAL_MX", + TaxCredentialMx = 'TAX_CREDENTIAL_MX', /** Localized field key 'tax_credential_my' for country Malaysia. */ - TaxCredentialMy = "TAX_CREDENTIAL_MY", + TaxCredentialMy = 'TAX_CREDENTIAL_MY', /** Localized field key 'tax_credential_pe' for country Peru. */ - TaxCredentialPe = "TAX_CREDENTIAL_PE", + TaxCredentialPe = 'TAX_CREDENTIAL_PE', /** Localized field key 'tax_credential_pt' for country Portugal. */ - TaxCredentialPt = "TAX_CREDENTIAL_PT", + TaxCredentialPt = 'TAX_CREDENTIAL_PT', /** Localized field key 'tax_credential_py' for country Paraguay. */ - TaxCredentialPy = "TAX_CREDENTIAL_PY", + TaxCredentialPy = 'TAX_CREDENTIAL_PY', /** Localized field key 'tax_credential_tr' for country Turkey. */ - TaxCredentialTr = "TAX_CREDENTIAL_TR", + TaxCredentialTr = 'TAX_CREDENTIAL_TR', /** Localized field key 'tax_credential_type_co' for country Colombia. */ - TaxCredentialTypeCo = "TAX_CREDENTIAL_TYPE_CO", + TaxCredentialTypeCo = 'TAX_CREDENTIAL_TYPE_CO', /** Localized field key 'tax_credential_type_mx' for country Mexico. */ - TaxCredentialTypeMx = "TAX_CREDENTIAL_TYPE_MX", + TaxCredentialTypeMx = 'TAX_CREDENTIAL_TYPE_MX', /** Localized field key 'tax_credential_use_mx' for country Mexico. */ - TaxCredentialUseMx = "TAX_CREDENTIAL_USE_MX", + TaxCredentialUseMx = 'TAX_CREDENTIAL_USE_MX', /** Localized field key 'tax_email_it' for country Italy. */ - TaxEmailIt = "TAX_EMAIL_IT", + TaxEmailIt = 'TAX_EMAIL_IT' } /** Represents the location where the inventory resides. */ export type Location = HasMetafields & { - __typename?: "Location"; + __typename?: 'Location'; /** The address of this location. */ address: LocationAddress; /** The location handle. */ - handle: Scalars["Handle"]["output"]; + handle: Scalars['Handle']['output']; /** The location id. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -2540,78 +2511,79 @@ export type Location = HasMetafields & { */ metafield?: Maybe; /** The name of the location. */ - name: Scalars["String"]["output"]; + name: Scalars['String']['output']; }; + /** Represents the location where the inventory resides. */ export type LocationMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** Represents the address of a location. */ export type LocationAddress = { - __typename?: "LocationAddress"; + __typename?: 'LocationAddress'; /** The first line of the address for the location. */ - address1?: Maybe; + address1?: Maybe; /** The second line of the address for the location. */ - address2?: Maybe; + address2?: Maybe; /** The city of the location. */ - city?: Maybe; + city?: Maybe; /** The country of the location. */ - country?: Maybe; + country?: Maybe; /** The country code of the location. */ - countryCode?: Maybe; + countryCode?: Maybe; /** A formatted version of the address for the location. */ - formatted: Array; + formatted: Array; /** The approximate latitude coordinates of the location. */ - latitude?: Maybe; + latitude?: Maybe; /** The approximate longitude coordinates of the location. */ - longitude?: Maybe; + longitude?: Maybe; /** The phone number of the location. */ - phone?: Maybe; + phone?: Maybe; /** The province of the location. */ - province?: Maybe; + province?: Maybe; /** The code for the province, state, or district of the address of the location. */ - provinceCode?: Maybe; + provinceCode?: Maybe; /** The ZIP code of the location. */ - zip?: Maybe; + zip?: Maybe; }; /** Represents a mailing address. */ export type MailingAddress = { - __typename?: "MailingAddress"; + __typename?: 'MailingAddress'; /** The first line of the address. Typically the street address or PO Box number. */ - address1?: Maybe; + address1?: Maybe; /** The second line of the address. Typically the number of the apartment, suite, or unit. */ - address2?: Maybe; + address2?: Maybe; /** The name of the city, district, village, or town. */ - city?: Maybe; + city?: Maybe; /** The name of the customer's company or organization. */ - company?: Maybe; + company?: Maybe; /** The two-letter code for the country of the address. For example, US. */ countryCode?: Maybe; /** The first name of the customer. */ - firstName?: Maybe; + firstName?: Maybe; /** The last name of the customer. */ - lastName?: Maybe; + lastName?: Maybe; /** The approximate latitude of the address. */ - latitude?: Maybe; + latitude?: Maybe; /** The approximate longitude of the address. */ - longitude?: Maybe; + longitude?: Maybe; /** * The market of the address. * @deprecated This `market` field will be removed in a future version of the API. */ market?: Maybe; /** The full name of the customer, based on firstName and lastName. */ - name?: Maybe; + name?: Maybe; /** A unique phone number for the customer. Formatted using E.164 standard. For example, +16135551111. */ - phone?: Maybe; + phone?: Maybe; /** The alphanumeric code for the region. For example, ON. */ - provinceCode?: Maybe; + provinceCode?: Maybe; /** The zip or postal code of the address. */ - zip?: Maybe; + zip?: Maybe; }; /** @@ -2623,11 +2595,11 @@ export type MailingAddress = { * or [add market-specific domains or subfolders](https://shopify.dev/api/admin-graphql/current/objects/MarketWebPresence). */ export type Market = HasMetafields & { - __typename?: "Market"; + __typename?: 'Market'; /** A human-readable unique string for the market automatically generated from its title. */ - handle: Scalars["Handle"]["output"]; + handle: Scalars['Handle']['output']; /** A globally-unique identifier. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -2640,6 +2612,7 @@ export type Market = HasMetafields & { regions: Array; }; + /** * A market is a group of one or more regions that you want to target for international sales. * By creating a market, you can configure a distinct, localized shopping experience for @@ -2649,23 +2622,23 @@ export type Market = HasMetafields & { * or [add market-specific domains or subfolders](https://shopify.dev/api/admin-graphql/current/objects/MarketWebPresence). */ export type MarketMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** Represents a region. */ export type MarketRegion = { /** The name of the region in the language of the current localization. */ - name?: Maybe; + name?: Maybe; }; /** A country which comprises a market. */ export type MarketRegionCountry = MarketRegion & { - __typename?: "MarketRegionCountry"; + __typename?: 'MarketRegionCountry'; /** The two-letter code for the country. */ code: CountryCode; /** The country name in the language of the current localization. */ - name: Scalars["String"]["output"]; + name: Scalars['String']['output']; }; /** @@ -2691,19 +2664,19 @@ export type Merchandise = CustomProduct | ProductVariant; * enables you to customize the checkout experience. */ export type Metafield = { - __typename?: "Metafield"; + __typename?: 'Metafield'; /** The data that's stored in the metafield, using JSON format. */ - jsonValue: Scalars["JSON"]["output"]; + jsonValue: Scalars['JSON']['output']; /** * The [type of data](https://shopify.dev/apps/metafields/types) that the metafield stores in * the `value` field. */ - type: Scalars["String"]["output"]; + type: Scalars['String']['output']; /** * The data that's stored in the metafield. The data is always stored as a string, * regardless of the [metafield's type](https://shopify.dev/apps/metafields/types). */ - value: Scalars["String"]["output"]; + value: Scalars['String']['output']; }; /** @@ -2712,12 +2685,12 @@ export type Metafield = { * values throughout the API. For example, 12.99 USD. */ export type MoneyV2 = { - __typename?: "MoneyV2"; + __typename?: 'MoneyV2'; /** * A monetary value in decimal format, allowing for precise representation of cents or fractional * currency. For example, 12.99. */ - amount: Scalars["Decimal"]["output"]; + amount: Scalars['Decimal']['output']; /** * The three-letter currency code that represents a world currency used in a store. Currency codes * include standard [standard ISO 4217 codes](https://en.wikipedia.org/wiki/ISO_4217), legacy codes, @@ -2728,32 +2701,36 @@ export type MoneyV2 = { /** The root mutation for the API. */ export type MutationRoot = { - __typename?: "MutationRoot"; + __typename?: 'MutationRoot'; /** Handles the Function result for the cart.delivery-options.discounts.generate.fetch target. */ - cartDeliveryOptionsDiscountsGenerateFetch: Scalars["Void"]["output"]; + cartDeliveryOptionsDiscountsGenerateFetch: Scalars['Void']['output']; /** Handles the Function result for the cart.delivery-options.discounts.generate.run target. */ - cartDeliveryOptionsDiscountsGenerateRun: Scalars["Void"]["output"]; + cartDeliveryOptionsDiscountsGenerateRun: Scalars['Void']['output']; /** Handles the Function result for the cart.lines.discounts.generate.fetch target. */ - cartLinesDiscountsGenerateFetch: Scalars["Void"]["output"]; + cartLinesDiscountsGenerateFetch: Scalars['Void']['output']; /** Handles the Function result for the cart.lines.discounts.generate.run target. */ - cartLinesDiscountsGenerateRun: Scalars["Void"]["output"]; + cartLinesDiscountsGenerateRun: Scalars['Void']['output']; }; + /** The root mutation for the API. */ export type MutationRootCartDeliveryOptionsDiscountsGenerateFetchArgs = { result: CartDeliveryOptionsDiscountsGenerateFetchResult; }; + /** The root mutation for the API. */ export type MutationRootCartDeliveryOptionsDiscountsGenerateRunArgs = { result: CartDeliveryOptionsDiscountsGenerateRunResult; }; + /** The root mutation for the API. */ export type MutationRootCartLinesDiscountsGenerateFetchArgs = { result: CartLinesDiscountsGenerateFetchResult; }; + /** The root mutation for the API. */ export type MutationRootCartLinesDiscountsGenerateRunArgs = { result: CartLinesDiscountsGenerateRunResult; @@ -2775,7 +2752,7 @@ export type OrderDiscountCandidate = { * message, such as "Save 20% on all t-shirts." If a discount code is entered, * the notification displays the code instead. */ - message?: InputMaybe; + message?: InputMaybe; /** The targets of the order discount candidate. */ targets: Array; /** The value of the order discount candidate. */ @@ -2789,20 +2766,21 @@ export type OrderDiscountCandidateTarget = * order before any taxes, shipping fees, or discounts are applied. For example, if a customer places an order * for a t-shirt and a pair of shoes, then the subtotal is the sum of the prices of those items. */ - { orderSubtotal: OrderSubtotalTarget }; + { orderSubtotal: OrderSubtotalTarget; }; /** The value of the order discount candidate. */ export type OrderDiscountCandidateValue = /** A fixed amount value. */ - | { fixedAmount: FixedAmount; percentage?: never } /** A percentage value. */ - | { fixedAmount?: never; percentage: Percentage }; + { fixedAmount: FixedAmount; percentage?: never; } + | /** A percentage value. */ + { fixedAmount?: never; percentage: Percentage; }; /** The strategy that's applied to the list of order discount candidates. */ export enum OrderDiscountSelectionStrategy { /** Only apply the first order discount candidate with conditions that are satisfied. */ - First = "FIRST", + First = 'FIRST', /** Only apply the order discount candidate that offers the maximum reduction. */ - Maximum = "MAXIMUM", + Maximum = 'MAXIMUM' } /** An operation that applies order discounts to a cart that share a selection strategy. */ @@ -2816,9 +2794,9 @@ export type OrderDiscountsAddOperation = { /** The condition for checking the minimum subtotal amount of the order. */ export type OrderMinimumSubtotal = { /** Cart line IDs with a merchandise line price that's excluded to calculate the minimum subtotal amount of the order. */ - excludedCartLineIds: Array; + excludedCartLineIds: Array; /** The minimum subtotal amount of the order to be eligible for the discount in the shop's currency. */ - minimumAmount: Scalars["Decimal"]["input"]; + minimumAmount: Scalars['Decimal']['input']; }; /** @@ -2831,7 +2809,7 @@ export type OrderSubtotalTarget = { * The list of excluded cart line IDs. These cart lines are excluded from the order * subtotal calculation when calculating the maximum value of the discount. */ - excludedCartLineIds: Array; + excludedCartLineIds: Array; }; /** A percentage value. */ @@ -2841,7 +2819,7 @@ export type Percentage = { * * The value is validated against: >= 0 and <= 100. */ - value: Scalars["Decimal"]["input"]; + value: Scalars['Decimal']['input']; }; /** @@ -2852,25 +2830,25 @@ export type Percentage = { * Learn more about [managing products in a merchant's store](https://help.shopify.com/manual/products). */ export type Product = HasMetafields & { - __typename?: "Product"; + __typename?: 'Product'; /** * A unique, human-readable string of the product's title. A handle can contain letters, hyphens (`-`), and * numbers, but not spaces. The handle is used in the online store URL for the product. For example, if a product * is titled "Black Sunglasses", then the handle is `black-sunglasses`. */ - handle: Scalars["Handle"]["output"]; + handle: Scalars['Handle']['output']; /** * Whether the product is associated with any of the specified tags. The product must have at least one tag * from the list to return `true`. */ - hasAnyTag: Scalars["Boolean"]["output"]; + hasAnyTag: Scalars['Boolean']['output']; /** Whether the product is associated with the specified tags. */ hasTags: Array; /** * A [globally-unique ID](https://shopify.dev/docs/api/usage/gids) * for the product. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** * Whether the product is in any of the specified collections. The product must be in at least one collection * from the list to return `true`. @@ -2879,7 +2857,7 @@ export type Product = HasMetafields & { * categories, which makes it easy for customers to find them. For example, an athletics store might create * different collections for running attire and accessories. */ - inAnyCollection: Scalars["Boolean"]["output"]; + inAnyCollection: Scalars['Boolean']['output']; /** * Whether the product is in the specified collections. The product must be in all of the collections in the * list to return `true`. @@ -2890,7 +2868,7 @@ export type Product = HasMetafields & { */ inCollections: Array; /** Whether the product is a gift card. */ - isGiftCard: Scalars["Boolean"]["output"]; + isGiftCard: Scalars['Boolean']['output']; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -2904,17 +2882,18 @@ export type Product = HasMetafields & { * ones available in Shopify's * [standard product categories](https://help.shopify.com/manual/products/details/product-type). */ - productType?: Maybe; + productType?: Maybe; /** * The localized name for the product that displays to customers. The title is used to construct the product's * handle, which is a unique, human-readable string of the product's title. For example, if a product is titled * "Black Sunglasses", then the handle is `black-sunglasses`. */ - title: Scalars["String"]["output"]; + title: Scalars['String']['output']; /** The name of the product's vendor. */ - vendor?: Maybe; + vendor?: Maybe; }; + /** * The goods and services that merchants offer to customers. Products can include details such as * title, vendor, and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). @@ -2923,9 +2902,10 @@ export type Product = HasMetafields & { * Learn more about [managing products in a merchant's store](https://help.shopify.com/manual/products). */ export type ProductHasAnyTagArgs = { - tags?: Array; + tags?: Array; }; + /** * The goods and services that merchants offer to customers. Products can include details such as * title, vendor, and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). @@ -2934,9 +2914,10 @@ export type ProductHasAnyTagArgs = { * Learn more about [managing products in a merchant's store](https://help.shopify.com/manual/products). */ export type ProductHasTagsArgs = { - tags?: Array; + tags?: Array; }; + /** * The goods and services that merchants offer to customers. Products can include details such as * title, vendor, and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). @@ -2945,9 +2926,10 @@ export type ProductHasTagsArgs = { * Learn more about [managing products in a merchant's store](https://help.shopify.com/manual/products). */ export type ProductInAnyCollectionArgs = { - ids?: Array; + ids?: Array; }; + /** * The goods and services that merchants offer to customers. Products can include details such as * title, vendor, and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). @@ -2956,9 +2938,10 @@ export type ProductInAnyCollectionArgs = { * Learn more about [managing products in a merchant's store](https://help.shopify.com/manual/products). */ export type ProductInCollectionsArgs = { - ids?: Array; + ids?: Array; }; + /** * The goods and services that merchants offer to customers. Products can include details such as * title, vendor, and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). @@ -2967,8 +2950,8 @@ export type ProductInCollectionsArgs = { * Learn more about [managing products in a merchant's store](https://help.shopify.com/manual/products). */ export type ProductMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** The target and value of the discount to be applied to a cart line. */ @@ -2985,7 +2968,7 @@ export type ProductDiscountCandidate = { * message, such as "Save 20% on all t-shirts." If a discount code is entered, * the notification displays the code instead. */ - message?: InputMaybe; + message?: InputMaybe; /** The targets of the discount to be applied to a cart line. */ targets: Array; /** @@ -3005,14 +2988,14 @@ export type ProductDiscountCandidateFixedAmount = { * The [fixed-amount](https://help.shopify.com/manual/international/pricing/discounts) value of the discount to be applied to a cart line, in the currency of the * cart. The amount must be greater than or equal to 0. */ - amount: Scalars["Decimal"]["input"]; + amount: Scalars['Decimal']['input']; /** * Whether to apply the value of each eligible discount to each eligible cart line. * * The default value is `false`, which causes the value to be applied once across the entitled items. * When the value is `true`, the value will be applied to each of the entitled items. */ - appliesToEachItem?: InputMaybe; + appliesToEachItem?: InputMaybe; }; /** @@ -3030,7 +3013,7 @@ export type ProductDiscountCandidateTarget = * customer's cart that represents a single unit of a product variant. For example, if a customer adds two * different sizes of the same t-shirt to their cart, then each size is represented as a separate cart line. */ - { cartLine: CartLineTarget }; + { cartLine: CartLineTarget; }; /** The value of the discount candidate to be applied to a cart line. */ export type ProductDiscountCandidateValue = @@ -3038,20 +3021,18 @@ export type ProductDiscountCandidateValue = * The [fixed-amount](https://help.shopify.com/manual/international/pricing/discounts) value of the discount to be applied to a cart line. For example, if the cart * total is $100 and the discount is $10, then the fixed amount is $10. */ - | { - fixedAmount: ProductDiscountCandidateFixedAmount; - percentage?: never; - } /** A percentage value. */ - | { fixedAmount?: never; percentage: Percentage }; + { fixedAmount: ProductDiscountCandidateFixedAmount; percentage?: never; } + | /** A percentage value. */ + { fixedAmount?: never; percentage: Percentage; }; /** The selection strategy that's applied to the list of discounts that are eligible for cart lines. */ export enum ProductDiscountSelectionStrategy { /** Apply all the discount candidates to eligible cart lines. This doesn't override discount combination or stacking rules. */ - All = "ALL", + All = 'ALL', /** Apply the first discount candidate to cart lines that satisfies conditions. */ - First = "FIRST", + First = 'FIRST', /** Apply the discount to the cart line that offers the maximum reduction. */ - Maximum = "MAXIMUM", + Maximum = 'MAXIMUM' } /** An operation that applies product discounts to a cart that share a selection strategy. */ @@ -3068,12 +3049,12 @@ export type ProductDiscountsAddOperation = { * product variant and a large, blue t-shirt would be another. */ export type ProductVariant = HasMetafields & { - __typename?: "ProductVariant"; + __typename?: 'ProductVariant'; /** * A [globally-unique ID](https://shopify.dev/docs/api/usage/gids) * for the product variant. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -3094,29 +3075,30 @@ export type ProductVariant = HasMetafields & { * digital gift card doesn't need to be shipped, but a t-shirt does * need to be shipped. */ - requiresShipping: Scalars["Boolean"]["output"]; + requiresShipping: Scalars['Boolean']['output']; /** * A case-sensitive identifier for the product variant in the merchant's store. For example, `"BBC-1"`. * A product variant must have a SKU to be connected to a * [fulfillment service](https://shopify.dev/docs/apps/build/orders-fulfillment/fulfillment-service-apps/build-for-fulfillment-services). */ - sku?: Maybe; + sku?: Maybe; /** The localized name for the product variant that displays to customers. */ - title?: Maybe; + title?: Maybe; /** The product variant's weight, in the system of measurement set in the `weightUnit` field. */ - weight?: Maybe; + weight?: Maybe; /** The unit of measurement for weight. */ weightUnit: WeightUnit; }; + /** * A specific version of a product that comes in more than one option, such as size or color. For example, * if a merchant sells t-shirts with options for size and color, then a small, blue t-shirt would be one * product variant and a large, blue t-shirt would be another. */ export type ProductVariantMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** @@ -3124,7 +3106,7 @@ export type ProductVariantMetafieldArgs = { * Used to manage and track purchases made by businesses rather than individual customers. */ export type PurchasingCompany = { - __typename?: "PurchasingCompany"; + __typename?: 'PurchasingCompany'; /** The company associated to the order or draft order. */ company: Company; /** The company contact associated to the order or draft order. */ @@ -3136,16 +3118,16 @@ export type PurchasingCompany = { /** A discount code to be rejected. */ export type RejectedDiscountCode = { /** The discount code to reject. */ - code: Scalars["String"]["input"]; + code: Scalars['String']['input']; }; /** Represents how products and variants can be sold and purchased. */ export type SellingPlan = HasMetafields & { - __typename?: "SellingPlan"; + __typename?: 'SellingPlan'; /** The description of the selling plan. */ - description?: Maybe; + description?: Maybe; /** A globally-unique identifier. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -3155,15 +3137,16 @@ export type SellingPlan = HasMetafields & { */ metafield?: Maybe; /** The name of the selling plan. For example, '6 weeks of prepaid granola, delivered weekly'. */ - name: Scalars["String"]["output"]; + name: Scalars['String']['output']; /** Whether purchasing the selling plan will result in multiple deliveries. */ - recurringDeliveries: Scalars["Boolean"]["output"]; + recurringDeliveries: Scalars['Boolean']['output']; }; + /** Represents how products and variants can be sold and purchased. */ export type SellingPlanMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** @@ -3172,7 +3155,7 @@ export type SellingPlanMetafieldArgs = { * variant when purchased with a selling plan. */ export type SellingPlanAllocation = { - __typename?: "SellingPlanAllocation"; + __typename?: 'SellingPlanAllocation'; /** * 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 @@ -3192,7 +3175,7 @@ export type SellingPlanAllocation = { /** The resulting prices for variants when they're purchased with a specific selling plan. */ export type SellingPlanAllocationPriceAdjustment = { - __typename?: "SellingPlanAllocationPriceAdjustment"; + __typename?: 'SellingPlanAllocationPriceAdjustment'; /** * 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 @@ -3212,7 +3195,7 @@ export type SellingPlanAllocationPriceAdjustment = { * and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). */ export type Shop = HasMetafields & { - __typename?: "Shop"; + __typename?: 'Shop'; /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). @@ -3228,70 +3211,39 @@ export type Shop = HasMetafields & { metafield?: Maybe; }; + /** * Information about the store, including the store's timezone setting * and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). */ export type ShopMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** Units of measurement for weight. */ export enum WeightUnit { /** Metric system unit of mass. */ - Grams = "GRAMS", + Grams = 'GRAMS', /** 1 kilogram equals 1000 grams. */ - Kilograms = "KILOGRAMS", + Kilograms = 'KILOGRAMS', /** Imperial system unit of mass. */ - Ounces = "OUNCES", + Ounces = 'OUNCES', /** 1 pound equals 16 ounces. */ - Pounds = "POUNDS", + Pounds = 'POUNDS' } -export type DeliveryInputVariables = Exact<{ [key: string]: never }>; +export type DeliveryInputVariables = Exact<{ [key: string]: never; }>; -export type DeliveryInput = { - __typename?: "Input"; - cart: { - __typename?: "Cart"; - deliveryGroups: Array<{ __typename?: "CartDeliveryGroup"; id: string }>; - }; - discount: { - __typename?: "Discount"; - discountClasses: Array; - metafield?: { __typename?: "Metafield"; value: string } | null; - }; -}; + +export type DeliveryInput = { __typename?: 'Input', cart: { __typename?: 'Cart', deliveryGroups: Array<{ __typename?: 'CartDeliveryGroup', id: string }> }, discount: { __typename?: 'Discount', discountClasses: Array, metafield?: { __typename?: 'Metafield', value: string } | null } }; export type CartInputVariables = Exact<{ - collectionIds?: InputMaybe< - Array | Scalars["ID"]["input"] - >; + collectionIds?: InputMaybe | Scalars['ID']['input']>; }>; -export type CartInput = { - __typename?: "Input"; - cart: { - __typename?: "Cart"; - lines: Array<{ - __typename?: "CartLine"; - id: string; - cost: { - __typename?: "CartLineCost"; - subtotalAmount: { __typename?: "MoneyV2"; amount: any }; - }; - merchandise: - | { __typename: "CustomProduct" } - | { - __typename: "ProductVariant"; - product: { __typename?: "Product"; inAnyCollection: boolean }; - }; - }>; - }; - discount: { - __typename?: "Discount"; - discountClasses: Array; - metafield?: { __typename?: "Metafield"; value: string } | null; - }; -}; + +export type CartInput = { __typename?: 'Input', cart: { __typename?: 'Cart', lines: Array<{ __typename?: 'CartLine', id: string, cost: { __typename?: 'CartLineCost', subtotalAmount: { __typename?: 'MoneyV2', amount: any } }, merchandise: + | { __typename: 'CustomProduct' } + | { __typename: 'ProductVariant', product: { __typename?: 'Product', inAnyCollection: boolean } } + }> }, discount: { __typename?: 'Discount', discountClasses: Array, metafield?: { __typename?: 'Metafield', value: string } | null } }; diff --git a/examples/javascript/metafield/extensions/discount-function/locales/en.default.json b/examples/javascript/metafield/extensions/discount-function/locales/en.default.json index 6778180..2017dbe 100644 --- a/examples/javascript/metafield/extensions/discount-function/locales/en.default.json +++ b/examples/javascript/metafield/extensions/discount-function/locales/en.default.json @@ -1,4 +1,4 @@ { - "name": "[Example] Discount Function with Metafield (JavaScript)", - "description": "Discount Function with Metafield (JavaScript)" + "name": "[Example] Metafield-configured multiclass discounts (JavaScript)", + "description": "Uses metafields to configure multiclass product, order, and shipping discounts with collection targeting." } diff --git a/examples/javascript/metafield/extensions/discount-function/package.json b/examples/javascript/metafield/extensions/discount-function/package.json index 72ccd6c..c35014c 100644 --- a/examples/javascript/metafield/extensions/discount-function/package.json +++ b/examples/javascript/metafield/extensions/discount-function/package.json @@ -3,10 +3,10 @@ "version": "0.0.1", "license": "UNLICENSED", "scripts": { - "shopify": "npm exec -- shopify", - "typegen": "npm exec -- shopify app function typegen", - "build": "npm exec -- shopify app function build", - "preview": "npm exec -- shopify app function run", + "shopify": "pnpm exec -- shopify", + "typegen": "pnpm exec -- shopify app function typegen", + "build": "pnpm exec -- shopify app function build", + "preview": "pnpm exec -- shopify app function run", "test": "vitest run" }, "codegen": { @@ -25,9 +25,9 @@ } }, "devDependencies": { - "vitest": "4.0.9" + "vitest": "4.1.4" }, "dependencies": { - "@shopify/shopify_function": "2.0.0" + "@shopify/shopify_function": "2.0.1" } } diff --git a/examples/javascript/metafield/extensions/discount-function/schema.graphql b/examples/javascript/metafield/extensions/discount-function/schema.graphql index 720f8f8..24263f3 100644 --- a/examples/javascript/metafield/extensions/discount-function/schema.graphql +++ b/examples/javascript/metafield/extensions/discount-function/schema.graphql @@ -3528,13 +3528,7 @@ type Input { `cart.lines.discounts.generate.run` and `cart.delivery-options.discounts.generate.run` extension targets. """ - fetchResult: HttpResponse - @restrictTarget( - only: [ - "cart.lines.discounts.generate.run" - "cart.delivery-options.discounts.generate.run" - ] - ) + fetchResult: HttpResponse @restrictTarget(only: ["cart.lines.discounts.generate.run", "cart.delivery-options.discounts.generate.run"]) """ The regional and language settings that determine how the Function @@ -3563,13 +3557,7 @@ type Input { This input is only available in the `cart.lines.discounts.generate.run` and `cart.delivery-options.discounts.generate.run` extension targets. """ - triggeringDiscountCode: String - @restrictTarget( - only: [ - "cart.lines.discounts.generate.run" - "cart.delivery-options.discounts.generate.run" - ] - ) + triggeringDiscountCode: String @restrictTarget(only: ["cart.lines.discounts.generate.run", "cart.delivery-options.discounts.generate.run"]) } """ @@ -4414,10 +4402,7 @@ type Localization { """ The market of the active localized experience. """ - market: Market! - @deprecated( - reason: "This `market` field will be removed in a future version of the API." - ) + market: Market! @deprecated(reason: "This `market` field will be removed in a future version of the API.") } """ @@ -4798,10 +4783,7 @@ type MailingAddress { """ The market of the address. """ - market: Market - @deprecated( - reason: "This `market` field will be removed in a future version of the API." - ) + market: Market @deprecated(reason: "This `market` field will be removed in a future version of the API.") """ The full name of the customer, based on firstName and lastName. diff --git a/examples/javascript/metafield/extensions/discount-function/src/cart_delivery_options_discounts_generate_run.graphql b/examples/javascript/metafield/extensions/discount-function/src/cart_delivery_options_discounts_generate_run.graphql index c4370b3..bdf9879 100644 --- a/examples/javascript/metafield/extensions/discount-function/src/cart_delivery_options_discounts_generate_run.graphql +++ b/examples/javascript/metafield/extensions/discount-function/src/cart_delivery_options_discounts_generate_run.graphql @@ -8,7 +8,10 @@ query DeliveryInput { # [START discount-function.graphql.delivery.discount] discount { discountClasses - metafield(namespace: "$app", key: "function-configuration") { + metafield( + namespace: "$app" + key: "function-configuration" + ) { value } } diff --git a/examples/javascript/metafield/extensions/discount-function/src/cart_delivery_options_discounts_generate_run.js b/examples/javascript/metafield/extensions/discount-function/src/cart_delivery_options_discounts_generate_run.js index e071a0c..ccaa0df 100644 --- a/examples/javascript/metafield/extensions/discount-function/src/cart_delivery_options_discounts_generate_run.js +++ b/examples/javascript/metafield/extensions/discount-function/src/cart_delivery_options_discounts_generate_run.js @@ -10,12 +10,12 @@ export function cartDeliveryOptionsDiscountsGenerateRun(input) { throw new Error("No delivery groups found"); } - const { deliveryPercentage } = parseMetafield(input.discount.metafield); + const {deliveryPercentage} = parseMetafield(input.discount.metafield); const hasShippingDiscountClass = input.discount.discountClasses.includes( DiscountClass.Shipping, ); if (!hasShippingDiscountClass) { - return { operations: [] }; + return {operations: []}; } const operations = []; @@ -45,17 +45,17 @@ export function cartDeliveryOptionsDiscountsGenerateRun(input) { }); } // [END discount-function.run.delivery.add-operations] - return { operations }; + return {operations}; } // [START discount-function.run.delivery.parse-metafield] function parseMetafield(metafield) { try { const value = JSON.parse(metafield.value); - return { deliveryPercentage: value.deliveryPercentage || 0 }; + return {deliveryPercentage: value.deliveryPercentage || 0}; } catch (error) { console.error("Error parsing metafield", error); - return { deliveryPercentage: 0 }; + return {deliveryPercentage: 0}; } } // [END discount-function.run.delivery.parse-metafield] diff --git a/examples/javascript/metafield/extensions/discount-function/src/cart_lines_discounts_generate_run.graphql b/examples/javascript/metafield/extensions/discount-function/src/cart_lines_discounts_generate_run.graphql index de3cf4b..47811a1 100644 --- a/examples/javascript/metafield/extensions/discount-function/src/cart_lines_discounts_generate_run.graphql +++ b/examples/javascript/metafield/extensions/discount-function/src/cart_lines_discounts_generate_run.graphql @@ -25,7 +25,10 @@ query CartInput($collectionIds: [ID!]) { # [START discount-function.graphql.cart.discount] discount { discountClasses - metafield(namespace: "$app", key: "function-configuration") { + metafield( + namespace: "$app" + key: "function-configuration" + ) { value } } diff --git a/examples/javascript/metafield/extensions/discount-function/src/cart_lines_discounts_generate_run.js b/examples/javascript/metafield/extensions/discount-function/src/cart_lines_discounts_generate_run.js index bcca9c3..b976839 100644 --- a/examples/javascript/metafield/extensions/discount-function/src/cart_lines_discounts_generate_run.js +++ b/examples/javascript/metafield/extensions/discount-function/src/cart_lines_discounts_generate_run.js @@ -10,7 +10,7 @@ export function cartLinesDiscountsGenerateRun(input) { throw new Error("No cart lines found"); } - const { cartLinePercentage, orderPercentage, collectionIds } = parseMetafield( + const {cartLinePercentage, orderPercentage, collectionIds} = parseMetafield( input.discount.metafield, ); @@ -22,7 +22,7 @@ export function cartLinesDiscountsGenerateRun(input) { ); if (!hasOrderDiscountClass && !hasProductDiscountClass) { - return { operations: [] }; + return {operations: []}; } const operations = []; @@ -92,7 +92,7 @@ export function cartLinesDiscountsGenerateRun(input) { // [END discount-function.run.cart.add-operations] } - return { operations }; + return {operations}; } // [START discount-function.run.cart.parse-metafield] diff --git a/examples/javascript/metafield/extensions/ui-extension/locales/en.default.json b/examples/javascript/metafield/extensions/ui-extension/locales/en.default.json index 4e5e210..21a648d 100644 --- a/examples/javascript/metafield/extensions/ui-extension/locales/en.default.json +++ b/examples/javascript/metafield/extensions/ui-extension/locales/en.default.json @@ -1,6 +1,6 @@ { - "name": "[Example] Discount UI extension", - "description": "Discount UI extension", + "name": "[Example] Metafield multiclass discounts (JavaScript function)", + "description": "Configures metafield-driven multiclass discounts, including percentages and collection targeting.", "title": "Select which discount types to apply at checkout", "loading": "Loading...", "label": "Percentage off", diff --git a/examples/javascript/metafield/extensions/ui-extension/package.json b/examples/javascript/metafield/extensions/ui-extension/package.json index 5976a84..7f1abd0 100644 --- a/examples/javascript/metafield/extensions/ui-extension/package.json +++ b/examples/javascript/metafield/extensions/ui-extension/package.json @@ -4,8 +4,8 @@ "version": "1.0.0", "license": "UNLICENSED", "dependencies": { - "preact": "10.10.x", - "@preact/signals": "2.3.x", - "@shopify/ui-extensions": "2026.01.0" + "@preact/signals": "2.9.0", + "@shopify/ui-extensions": "2026.7.0-rc.3", + "preact": "10.29.2" } } diff --git a/examples/javascript/metafield/extensions/ui-extension/src/DiscountFunctionSettings.jsx b/examples/javascript/metafield/extensions/ui-extension/src/DiscountFunctionSettings.jsx index 1ebb13e..15cbe06 100644 --- a/examples/javascript/metafield/extensions/ui-extension/src/DiscountFunctionSettings.jsx +++ b/examples/javascript/metafield/extensions/ui-extension/src/DiscountFunctionSettings.jsx @@ -1,8 +1,8 @@ // [START discount-ui-extension.ui-extension] // [START discount-ui-extension.ui-components] import "@shopify/ui-extensions/preact"; -import { render } from "preact"; -import { useState, useEffect, useMemo } from "preact/hooks"; +import {render} from "preact"; +import {useState, useEffect, useMemo} from "preact/hooks"; // [END discount-ui-extension.ui-components] // [START discount-ui-extension.target] @@ -26,10 +26,10 @@ function AppliesToCollections({ {/* [START discount-ui-extension.hidden-box] */} id).join(",")} + value={value.map(({id}) => id).join(",")} label="" name="collectionsIds" - defaultValue={defaultValue.map(({ id }) => id).join(",")} + defaultValue={defaultValue.map(({id}) => id).join(",")} /> {/* [END discount-ui-extension.hidden-box] */} @@ -39,7 +39,7 @@ function AppliesToCollections({ label={i18n.translate("collections.appliesTo")} name="appliesTo" value={appliesTo} - onChange={(event) => onAppliesToChange(event.currentTarget.value)} + onChange={event => onAppliesToChange(event.currentTarget.value)} > {i18n.translate("collections.allProducts")} @@ -64,12 +64,12 @@ function AppliesToCollections({ } // [END discount-ui-extension.collections-section] -function CollectionsSection({ collections, onClickRemove }) { +function CollectionsSection({collections, onClickRemove}) { if (collections.length === 0) { return null; } - return collections.map((collection) => ( + return collections.map(collection => ( { + const handleToggleDiscountClass = async nextValue => { const nextDiscountClasses = discountClassesSignalValue.includes(nextValue) - ? discountClassesSignalValue.filter((c) => c !== nextValue) + ? discountClassesSignalValue.filter(c => c !== nextValue) : [...discountClassesSignalValue, nextValue]; const result = @@ -138,7 +138,7 @@ function App() { // [START discount-ui-extension.discount-classes-conditional-rendering] return ( { + onSubmit={event => { event.waitUntil?.(applyExtensionMetafieldChange()); }} onReset={resetForm} @@ -167,7 +167,7 @@ function App() { defaultValue={String(initialPercentages.product)} min={0} max={100} - onChange={(event) => + onChange={event => onPercentageValueChange( "product", event.currentTarget.value, @@ -210,7 +210,7 @@ function App() { defaultValue={String(initialPercentages.order)} min={0} max={100} - onChange={(event) => + onChange={event => onPercentageValueChange("order", event.currentTarget.value) } suffix="%" @@ -239,7 +239,7 @@ function App() { defaultValue={String(initialPercentages.shipping)} min={0} max={100} - onChange={(event) => + onChange={event => onPercentageValueChange("shipping", event.currentTarget.value) } suffix="%" @@ -257,13 +257,13 @@ function App() { // [START discount-ui-extension.use-extension-data] function useExtensionData() { - const { applyMetafieldChange, i18n, data, resourcePicker, query } = shopify; + const {applyMetafieldChange, i18n, data, resourcePicker, query} = shopify; const metafieldConfig = useMemo( () => parseMetafield( data?.metafields?.find( - (metafield) => metafield.key === "function-configuration", + metafield => metafield.key === "function-configuration", )?.value, ), [data?.metafields], @@ -291,13 +291,13 @@ function useExtensionData() { }, [metafieldConfig.collectionIds, query]); const onPercentageValueChange = async (type, value) => { - setPercentages((prev) => ({ + setPercentages(prev => ({ ...prev, [type]: Number(value), })); }; - const onAppliesToChange = (value) => { + const onAppliesToChange = value => { setAppliesTo(value); if (value === "all") { setCollections([]); @@ -314,7 +314,7 @@ function useExtensionData() { cartLinePercentage: percentages.product, orderPercentage: percentages.order, deliveryPercentage: percentages.shipping, - collectionIds: collections.map(({ id }) => id), + collectionIds: collections.map(({id}) => id), }), valueType: "json", }); @@ -331,7 +331,7 @@ function useExtensionData() { const onSelectedCollections = async () => { const selection = await resourcePicker({ type: "collection", - selectionIds: collections.map(({ id }) => ({ id })), + selectionIds: collections.map(({id}) => ({id})), action: "select", multiple: true, filter: { @@ -342,8 +342,8 @@ function useExtensionData() { setCollections(selection ?? []); }; - const removeCollection = (id) => { - setCollections((prev) => prev.filter((collection) => collection.id !== id)); + const removeCollection = id => { + setCollections(prev => prev.filter(collection => collection.id !== id)); }; return { @@ -377,7 +377,7 @@ function parseMetafield(value) { }; } catch { return { - percentages: { product: 0, order: 0, shipping: 0 }, + percentages: {product: 0, order: 0, shipping: 0}, collectionIds: [], }; } @@ -394,9 +394,7 @@ async function getCollections(collectionGids, adminApiQuery) { } } `; - const result = await adminApiQuery(query, { - variables: { ids: collectionGids }, - }); + const result = await adminApiQuery(query, {variables: {ids: collectionGids}}); return result?.data?.collections ?? []; } // [END discount-ui-extension.ui-extension] diff --git a/examples/javascript/metafield/pnpm-workspace.yaml b/examples/javascript/metafield/pnpm-workspace.yaml index e8a5c94..2115b27 100644 --- a/examples/javascript/metafield/pnpm-workspace.yaml +++ b/examples/javascript/metafield/pnpm-workspace.yaml @@ -1,2 +1,2 @@ packages: - - "extensions/*" + - 'extensions/*' diff --git a/examples/javascript/network-access/extensions/discount-function/README.md b/examples/javascript/network-access/extensions/discount-function/README.md index d9c8701..8dd96f9 100644 --- a/examples/javascript/network-access/extensions/discount-function/README.md +++ b/examples/javascript/network-access/extensions/discount-function/README.md @@ -1,5 +1,5 @@ --- -name: "How to build a Discount Function that retrieves external data through network requests" +name: 'How to build a Discount Function that retrieves external data through network requests' api_name: discount api_version: 2025-04 api_type: functions diff --git a/examples/javascript/network-access/extensions/discount-function/generated/api.ts b/examples/javascript/network-access/extensions/discount-function/generated/api.ts index 5e62f10..4a2df33 100644 --- a/examples/javascript/network-access/extensions/discount-function/generated/api.ts +++ b/examples/javascript/network-access/extensions/discount-function/generated/api.ts @@ -1,60 +1,47 @@ 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; -}; -export type MakeEmpty< - T extends { [key: string]: unknown }, - K extends keyof T, -> = { [_ in K]?: never }; -export type Incremental = - | T - | { - [P in keyof T]?: P extends " $fragmentName" | "__typename" ? T[P] : never; - }; +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 }; +export type MakeEmpty = { [_ in K]?: never }; +export type Incremental = T | { [P in keyof T]?: P extends ' $fragmentName' | '__typename' ? T[P] : never }; /** All built-in and custom scalars, mapped to their actual values */ export type Scalars = { - ID: { input: string; output: string }; - String: { input: string; output: string }; - Boolean: { input: boolean; output: boolean }; - Int: { input: number; output: number }; - Float: { input: number; output: number }; + ID: { input: string; output: string; } + String: { input: string; output: string; } + Boolean: { input: boolean; output: boolean; } + Int: { input: number; output: number; } + Float: { input: number; output: number; } /** * Represents an [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)-encoded date string. * For example, September 7, 2019 is represented as `"2019-07-16"`. */ - Date: { input: any; output: any }; + Date: { input: any; output: any; } /** * Represents an [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)-encoded date and time string. * For example, 3:50 pm on September 7, 2019 in the time zone of UTC (Coordinated Universal Time) is * represented as `"2019-09-07T15:50:00Z`". */ - DateTime: { input: any; output: any }; + DateTime: { input: any; output: any; } /** * A subset of the [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format that * includes the date and time but not the timezone which is determined from context. * * For example, "2018-01-01T00:00:00". */ - DateTimeWithoutTimezone: { input: any; output: any }; + DateTimeWithoutTimezone: { input: any; output: any; } /** * A signed decimal number, which supports arbitrary precision and is serialized as a string. * * Example values: `"29.99"`, `"29.999"`. */ - Decimal: { input: any; output: any }; + Decimal: { input: any; output: any; } /** * A function-scoped handle to a refer a resource. * The Handle type appears in a JSON response as a String, but it is not intended to be human-readable. * Example value: `"10079785100"` */ - Handle: { input: any; output: any }; + Handle: { input: any; output: any; } /** * A [JSON](https://www.json.org/json-en.html) object. * @@ -70,13 +57,13 @@ export type Scalars = { * } * }` */ - JSON: { input: any; output: any }; + JSON: { input: any; output: any; } /** * A subset of the [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format that * includes the time but not the date or timezone which is determined from context. * For example, "05:43:21". */ - TimeWithoutTimezone: { input: any; output: any }; + TimeWithoutTimezone: { input: any; output: any; } /** * Represents an [RFC 3986](https://datatracker.ietf.org/doc/html/rfc3986) and * [RFC 3987](https://datatracker.ietf.org/doc/html/rfc3987)-compliant URI string. @@ -84,15 +71,15 @@ export type Scalars = { * For example, `"https://example.myshopify.com"` is a valid URL. It includes a scheme (`https`) and a host * (`example.myshopify.com`). */ - URL: { input: any; output: any }; + URL: { input: any; output: any; } /** A void type that can be used to return a null value from a mutation. */ - Void: { input: any; output: any }; + Void: { input: any; output: any; } }; /** A discount code that is associated with a discount candidate. */ export type AssociatedDiscountCode = { /** The discount code. */ - code: Scalars["String"]["input"]; + code: Scalars['String']['input']; }; /** @@ -105,11 +92,11 @@ export type AssociatedDiscountCode = { * notes provided by the customer (`"customer_notes": "Please leave at the front door"`). */ export type Attribute = { - __typename?: "Attribute"; + __typename?: 'Attribute'; /** The key or name of the attribute. For example, `"customer_first_order"`. */ - key: Scalars["String"]["output"]; + key: Scalars['String']['output']; /** The value of the attribute. For example, `"true"`. */ - value?: Maybe; + value?: Maybe; }; /** @@ -119,18 +106,18 @@ export type Attribute = { * are displayed to customers. */ export type BuyerIdentity = { - __typename?: "BuyerIdentity"; + __typename?: 'BuyerIdentity'; /** The [customer](https://help.shopify.com/manual/customers/manage-customers) that's interacting with the cart. */ customer?: Maybe; /** The email address of the customer that's interacting with the cart. */ - email?: Maybe; + email?: Maybe; /** * Whether the customer is authenticated through their * [customer account](https://help.shopify.com/manual/customers/customer-accounts). */ - isAuthenticated: Scalars["Boolean"]["output"]; + isAuthenticated: Scalars['Boolean']['output']; /** The phone number of the customer that's interacting with the cart. */ - phone?: Maybe; + phone?: Maybe; /** * The company of a B2B customer that's interacting with the cart. * Used to manage and track purchases made by businesses rather than individual customers. @@ -143,7 +130,7 @@ export type BuyerIdentity = { * and information about the customer, such as the customer's email address and phone number. */ export type Cart = HasMetafields & { - __typename?: "Cart"; + __typename?: 'Cart'; /** * The custom attributes associated with a cart to store additional information. Cart attributes * allow you to collect specific information from customers on the **Cart** page, such as order notes, @@ -201,14 +188,16 @@ export type Cart = HasMetafields & { retailLocation?: Maybe; }; + /** * The cart where the Function is running. A cart contains the merchandise that a customer intends to purchase * and information about the customer, such as the customer's email address and phone number. */ export type CartAttributeArgs = { - key?: InputMaybe; + key?: InputMaybe; }; + /** * The cart where the Function is running. A cart contains the merchandise that a customer intends to purchase * and information about the customer, such as the customer's email address and phone number. @@ -217,13 +206,14 @@ export type CartLocalizedFieldsArgs = { keys?: Array; }; + /** * The cart where the Function is running. A cart contains the merchandise that a customer intends to purchase * and information about the customer, such as the customer's email address and phone number. */ export type CartMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** @@ -231,7 +221,7 @@ export type CartMetafieldArgs = { * the subtotal before taxes and duties, the tax amount, and duty charges. */ export type CartCost = { - __typename?: "CartCost"; + __typename?: 'CartCost'; /** The amount, before taxes and cart-level discounts, for the customer to pay. */ subtotalAmount: MoneyV2; /** The total amount for the customer to pay at checkout. */ @@ -249,7 +239,7 @@ export type CartCost = { * together, then the items are included in the same delivery group. */ export type CartDeliveryGroup = { - __typename?: "CartDeliveryGroup"; + __typename?: 'CartDeliveryGroup'; /** * Information about items in a cart that a customer intends to purchase. A cart line is an entry in the * customer's cart that represents a single unit of a product variant. For example, if a customer adds two @@ -269,7 +259,7 @@ export type CartDeliveryGroup = { * A [globally-unique ID](https://shopify.dev/docs/api/usage/gids) * for the delivery group. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** Information about the delivery option that the customer has selected. */ selectedDeliveryOption?: Maybe; }; @@ -280,9 +270,9 @@ export enum CartDeliveryGroupType { * The delivery group only contains merchandise that is either a one time purchase or a first delivery of * subscription merchandise. */ - OneTimePurchase = "ONE_TIME_PURCHASE", + OneTimePurchase = 'ONE_TIME_PURCHASE', /** The delivery group only contains subscription merchandise. */ - Subscription = "SUBSCRIPTION", + Subscription = 'SUBSCRIPTION' } /** @@ -291,12 +281,12 @@ export enum CartDeliveryGroupType { * shipping. */ export type CartDeliveryOption = { - __typename?: "CartDeliveryOption"; + __typename?: 'CartDeliveryOption'; /** * A unique identifier that represents the delivery option offered to customers. * For example, `Canada Post Expedited`. */ - code?: Maybe; + code?: Maybe; /** The amount that the customer pays if they select the delivery option. */ cost: MoneyV2; /** @@ -308,19 +298,19 @@ export type CartDeliveryOption = { */ deliveryMethodType: DeliveryMethod; /** A single-line description of the delivery option, with HTML tags removed. */ - description?: Maybe; + description?: Maybe; /** * A unique, human-readable identifier of the delivery option's title. * A handle can contain letters, hyphens (`-`), and numbers, but not spaces. * For example, `standard-shipping`. */ - handle: Scalars["Handle"]["output"]; + handle: Scalars['Handle']['output']; /** * The name of the delivery option that displays to customers. The title is used to construct the delivery * option's handle. For example, if a delivery option is titled "Standard Shipping", then the handle is * `standard-shipping`. */ - title?: Maybe; + title?: Maybe; }; /** @@ -344,7 +334,7 @@ export type CartDeliveryOptionsDiscountsGenerateRunResult = { * different sizes of the same t-shirt to their cart, then each size is represented as a separate cart line. */ export type CartLine = { - __typename?: "CartLine"; + __typename?: 'CartLine'; /** * The custom attributes associated with a cart to store additional information. Cart attributes * allow you to collect specific information from customers on the **Cart** page, such as order notes, @@ -362,7 +352,7 @@ export type CartLine = { */ cost: CartLineCost; /** The ID of the cart line. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** The item that the customer intends to purchase. */ merchandise: Merchandise; /** @@ -371,7 +361,7 @@ export type CartLine = { */ parentRelationship?: Maybe; /** The quantity of the item that the customer intends to purchase. */ - quantity: Scalars["Int"]["output"]; + quantity: Scalars['Int']['output']; /** * The [selling plan](https://shopify.dev/docs/apps/build/purchase-options/subscriptions/selling-plans) * associated with the cart line, including information about how a product variant can be sold and purchased. @@ -379,13 +369,14 @@ export type CartLine = { sellingPlanAllocation?: Maybe; }; + /** * Information about an item in a cart that a customer intends to purchase. A cart line is an entry in the * customer's cart that represents a single unit of a product variant. For example, if a customer adds two * different sizes of the same t-shirt to their cart, then each size is represented as a separate cart line. */ export type CartLineAttributeArgs = { - key?: InputMaybe; + key?: InputMaybe; }; /** @@ -394,7 +385,7 @@ export type CartLineAttributeArgs = { * the same t-shirt to their cart, then each size is represented as a separate cart line. */ export type CartLineCost = { - __typename?: "CartLineCost"; + __typename?: 'CartLineCost'; /** * The cost of a single unit. For example, if a customer purchases three units of a product * that are priced at $10 each, then the `amountPerQuantity` is $10. @@ -423,9 +414,9 @@ export type CartLineMinimumQuantity = { * Cart line IDs with a merchandise line price that's included to calculate the * minimum quantity purchased to receive the discount. */ - ids: Array; + ids: Array; /** The minimum quantity of a cart line to be eligible for a discount candidate. */ - minimumQuantity: Scalars["Int"]["input"]; + minimumQuantity: Scalars['Int']['input']; }; /** The condition for checking the minimum subtotal of products across a group of cart lines. */ @@ -434,14 +425,14 @@ export type CartLineMinimumSubtotal = { * Cart line IDs with a merchandise line price that's included to calculate the * minimum subtotal purchased to receive the discount. */ - ids: Array; + ids: Array; /** The minimum subtotal amount of the cart line to be eligible for a discount candidate in the shop's currency. */ - minimumAmount: Scalars["Decimal"]["input"]; + minimumAmount: Scalars['Decimal']['input']; }; /** Represents the relationship between a cart line and its parent line. */ export type CartLineParentRelationship = { - __typename?: "CartLineParentRelationship"; + __typename?: 'CartLineParentRelationship'; /** The parent line in the relationship. */ parent: CartLine; }; @@ -453,14 +444,14 @@ export type CartLineParentRelationship = { */ export type CartLineTarget = { /** The ID of the targeted cart line. */ - id: Scalars["ID"]["input"]; + id: Scalars['ID']['input']; /** * The number of line items that are being discounted. * The default value is `null`, which represents the quantity of the matching line items. * * The value is validated against: > 0. */ - quantity?: InputMaybe; + quantity?: InputMaybe; }; /** @@ -484,21 +475,11 @@ export type CartOperation = * An operation that selects which entered discount codes to accept. Use this to * validate discount codes from external systems. */ - | { - enteredDiscountCodesAccept: EnteredDiscountCodesAcceptOperation; - orderDiscountsAdd?: never; - productDiscountsAdd?: never; - } /** An operation that applies order discounts to a cart that share a selection strategy. */ - | { - enteredDiscountCodesAccept?: never; - orderDiscountsAdd: OrderDiscountsAddOperation; - productDiscountsAdd?: never; - } /** An operation that applies product discounts to a cart that share a selection strategy. */ - | { - enteredDiscountCodesAccept?: never; - orderDiscountsAdd?: never; - productDiscountsAdd: ProductDiscountsAddOperation; - }; + { enteredDiscountCodesAccept: EnteredDiscountCodesAcceptOperation; orderDiscountsAdd?: never; productDiscountsAdd?: never; } + | /** An operation that applies order discounts to a cart that share a selection strategy. */ + { enteredDiscountCodesAccept?: never; orderDiscountsAdd: OrderDiscountsAddOperation; productDiscountsAdd?: never; } + | /** An operation that applies product discounts to a cart that share a selection strategy. */ + { enteredDiscountCodesAccept?: never; orderDiscountsAdd?: never; productDiscountsAdd: ProductDiscountsAddOperation; }; /** * Whether the product is in the specified collection. @@ -508,25 +489,25 @@ export type CartOperation = * different collections for running attire and accessories. */ export type CollectionMembership = { - __typename?: "CollectionMembership"; + __typename?: 'CollectionMembership'; /** * A [globally-unique ID](https://shopify.dev/docs/api/usage/gids) * for the collection. */ - collectionId: Scalars["ID"]["output"]; + collectionId: Scalars['ID']['output']; /** Whether the product is in the specified collection. */ - isMember: Scalars["Boolean"]["output"]; + isMember: Scalars['Boolean']['output']; }; /** Represents information about a company which is also a customer of the shop. */ export type Company = HasMetafields & { - __typename?: "Company"; + __typename?: 'Company'; /** The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) at which the company was created in Shopify. */ - createdAt: Scalars["DateTime"]["output"]; + createdAt: Scalars['DateTime']['output']; /** A unique externally-supplied ID for the company. */ - externalId?: Maybe; + externalId?: Maybe; /** The ID of the company. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -536,52 +517,53 @@ export type Company = HasMetafields & { */ metafield?: Maybe; /** The name of the company. */ - name: Scalars["String"]["output"]; + name: Scalars['String']['output']; /** The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) at which the company was last modified. */ - updatedAt: Scalars["DateTime"]["output"]; + updatedAt: Scalars['DateTime']['output']; }; + /** Represents information about a company which is also a customer of the shop. */ export type CompanyMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** A company's main point of contact. */ export type CompanyContact = { - __typename?: "CompanyContact"; + __typename?: 'CompanyContact'; /** * The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) * at which the company contact was created in Shopify. */ - createdAt: Scalars["DateTime"]["output"]; + createdAt: Scalars['DateTime']['output']; /** The ID of the company. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** The company contact's locale (language). */ - locale?: Maybe; + locale?: Maybe; /** The company contact's job title. */ - title?: Maybe; + title?: Maybe; /** * The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) * at which the company contact was last modified. */ - updatedAt: Scalars["DateTime"]["output"]; + updatedAt: Scalars['DateTime']['output']; }; /** A company's location. */ export type CompanyLocation = HasMetafields & { - __typename?: "CompanyLocation"; + __typename?: 'CompanyLocation'; /** * The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) * at which the company location was created in Shopify. */ - createdAt: Scalars["DateTime"]["output"]; + createdAt: Scalars['DateTime']['output']; /** A unique externally-supplied ID for the company. */ - externalId?: Maybe; + externalId?: Maybe; /** The ID of the company. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** The preferred locale of the company location. */ - locale?: Maybe; + locale?: Maybe; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -591,42 +573,33 @@ export type CompanyLocation = HasMetafields & { */ metafield?: Maybe; /** The name of the company location. */ - name: Scalars["String"]["output"]; + name: Scalars['String']['output']; /** The number of orders placed at this company location. */ - ordersCount: Scalars["Int"]["output"]; + ordersCount: Scalars['Int']['output']; /** The total amount spent at this company location. */ totalSpent: MoneyV2; /** * The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) * at which the company location was last modified. */ - updatedAt: Scalars["DateTime"]["output"]; + updatedAt: Scalars['DateTime']['output']; }; + /** A company's location. */ export type CompanyLocationMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** The conditions that satisfy the discount candidate to be applied to a cart line. */ export type Condition = /** The condition for checking the minimum quantity of products across a group of cart lines. */ - | { - cartLineMinimumQuantity: CartLineMinimumQuantity; - cartLineMinimumSubtotal?: never; - orderMinimumSubtotal?: never; - } /** The condition for checking the minimum subtotal of products across a group of cart lines. */ - | { - cartLineMinimumQuantity?: never; - cartLineMinimumSubtotal: CartLineMinimumSubtotal; - orderMinimumSubtotal?: never; - } /** The condition for checking the minimum subtotal amount of the order. */ - | { - cartLineMinimumQuantity?: never; - cartLineMinimumSubtotal?: never; - orderMinimumSubtotal: OrderMinimumSubtotal; - }; + { cartLineMinimumQuantity: CartLineMinimumQuantity; cartLineMinimumSubtotal?: never; orderMinimumSubtotal?: never; } + | /** The condition for checking the minimum subtotal of products across a group of cart lines. */ + { cartLineMinimumQuantity?: never; cartLineMinimumSubtotal: CartLineMinimumSubtotal; orderMinimumSubtotal?: never; } + | /** The condition for checking the minimum subtotal amount of the order. */ + { cartLineMinimumQuantity?: never; cartLineMinimumSubtotal?: never; orderMinimumSubtotal: OrderMinimumSubtotal; }; /** * The country for which the store is customized, reflecting local preferences and regulations. @@ -634,7 +607,7 @@ export type Condition = * the shopping experience for customers in that region. */ export type Country = { - __typename?: "Country"; + __typename?: 'Country'; /** The ISO code of the country. */ isoCode: CountryCode; }; @@ -647,495 +620,495 @@ export type Country = { */ export enum CountryCode { /** Ascension Island. */ - Ac = "AC", + Ac = 'AC', /** Andorra. */ - Ad = "AD", + Ad = 'AD', /** United Arab Emirates. */ - Ae = "AE", + Ae = 'AE', /** Afghanistan. */ - Af = "AF", + Af = 'AF', /** Antigua & Barbuda. */ - Ag = "AG", + Ag = 'AG', /** Anguilla. */ - Ai = "AI", + Ai = 'AI', /** Albania. */ - Al = "AL", + Al = 'AL', /** Armenia. */ - Am = "AM", + Am = 'AM', /** Netherlands Antilles. */ - An = "AN", + An = 'AN', /** Angola. */ - Ao = "AO", + Ao = 'AO', /** Argentina. */ - Ar = "AR", + Ar = 'AR', /** Austria. */ - At = "AT", + At = 'AT', /** Australia. */ - Au = "AU", + Au = 'AU', /** Aruba. */ - Aw = "AW", + Aw = 'AW', /** Åland Islands. */ - Ax = "AX", + Ax = 'AX', /** Azerbaijan. */ - Az = "AZ", + Az = 'AZ', /** Bosnia & Herzegovina. */ - Ba = "BA", + Ba = 'BA', /** Barbados. */ - Bb = "BB", + Bb = 'BB', /** Bangladesh. */ - Bd = "BD", + Bd = 'BD', /** Belgium. */ - Be = "BE", + Be = 'BE', /** Burkina Faso. */ - Bf = "BF", + Bf = 'BF', /** Bulgaria. */ - Bg = "BG", + Bg = 'BG', /** Bahrain. */ - Bh = "BH", + Bh = 'BH', /** Burundi. */ - Bi = "BI", + Bi = 'BI', /** Benin. */ - Bj = "BJ", + Bj = 'BJ', /** St. Barthélemy. */ - Bl = "BL", + Bl = 'BL', /** Bermuda. */ - Bm = "BM", + Bm = 'BM', /** Brunei. */ - Bn = "BN", + Bn = 'BN', /** Bolivia. */ - Bo = "BO", + Bo = 'BO', /** Caribbean Netherlands. */ - Bq = "BQ", + Bq = 'BQ', /** Brazil. */ - Br = "BR", + Br = 'BR', /** Bahamas. */ - Bs = "BS", + Bs = 'BS', /** Bhutan. */ - Bt = "BT", + Bt = 'BT', /** Bouvet Island. */ - Bv = "BV", + Bv = 'BV', /** Botswana. */ - Bw = "BW", + Bw = 'BW', /** Belarus. */ - By = "BY", + By = 'BY', /** Belize. */ - Bz = "BZ", + Bz = 'BZ', /** Canada. */ - Ca = "CA", + Ca = 'CA', /** Cocos (Keeling) Islands. */ - Cc = "CC", + Cc = 'CC', /** Congo - Kinshasa. */ - Cd = "CD", + Cd = 'CD', /** Central African Republic. */ - Cf = "CF", + Cf = 'CF', /** Congo - Brazzaville. */ - Cg = "CG", + Cg = 'CG', /** Switzerland. */ - Ch = "CH", + Ch = 'CH', /** Côte d’Ivoire. */ - Ci = "CI", + Ci = 'CI', /** Cook Islands. */ - Ck = "CK", + Ck = 'CK', /** Chile. */ - Cl = "CL", + Cl = 'CL', /** Cameroon. */ - Cm = "CM", + Cm = 'CM', /** China. */ - Cn = "CN", + Cn = 'CN', /** Colombia. */ - Co = "CO", + Co = 'CO', /** Costa Rica. */ - Cr = "CR", + Cr = 'CR', /** Cuba. */ - Cu = "CU", + Cu = 'CU', /** Cape Verde. */ - Cv = "CV", + Cv = 'CV', /** Curaçao. */ - Cw = "CW", + Cw = 'CW', /** Christmas Island. */ - Cx = "CX", + Cx = 'CX', /** Cyprus. */ - Cy = "CY", + Cy = 'CY', /** Czechia. */ - Cz = "CZ", + Cz = 'CZ', /** Germany. */ - De = "DE", + De = 'DE', /** Djibouti. */ - Dj = "DJ", + Dj = 'DJ', /** Denmark. */ - Dk = "DK", + Dk = 'DK', /** Dominica. */ - Dm = "DM", + Dm = 'DM', /** Dominican Republic. */ - Do = "DO", + Do = 'DO', /** Algeria. */ - Dz = "DZ", + Dz = 'DZ', /** Ecuador. */ - Ec = "EC", + Ec = 'EC', /** Estonia. */ - Ee = "EE", + Ee = 'EE', /** Egypt. */ - Eg = "EG", + Eg = 'EG', /** Western Sahara. */ - Eh = "EH", + Eh = 'EH', /** Eritrea. */ - Er = "ER", + Er = 'ER', /** Spain. */ - Es = "ES", + Es = 'ES', /** Ethiopia. */ - Et = "ET", + Et = 'ET', /** Finland. */ - Fi = "FI", + Fi = 'FI', /** Fiji. */ - Fj = "FJ", + Fj = 'FJ', /** Falkland Islands. */ - Fk = "FK", + Fk = 'FK', /** Faroe Islands. */ - Fo = "FO", + Fo = 'FO', /** France. */ - Fr = "FR", + Fr = 'FR', /** Gabon. */ - Ga = "GA", + Ga = 'GA', /** United Kingdom. */ - Gb = "GB", + Gb = 'GB', /** Grenada. */ - Gd = "GD", + Gd = 'GD', /** Georgia. */ - Ge = "GE", + Ge = 'GE', /** French Guiana. */ - Gf = "GF", + Gf = 'GF', /** Guernsey. */ - Gg = "GG", + Gg = 'GG', /** Ghana. */ - Gh = "GH", + Gh = 'GH', /** Gibraltar. */ - Gi = "GI", + Gi = 'GI', /** Greenland. */ - Gl = "GL", + Gl = 'GL', /** Gambia. */ - Gm = "GM", + Gm = 'GM', /** Guinea. */ - Gn = "GN", + Gn = 'GN', /** Guadeloupe. */ - Gp = "GP", + Gp = 'GP', /** Equatorial Guinea. */ - Gq = "GQ", + Gq = 'GQ', /** Greece. */ - Gr = "GR", + Gr = 'GR', /** South Georgia & South Sandwich Islands. */ - Gs = "GS", + Gs = 'GS', /** Guatemala. */ - Gt = "GT", + Gt = 'GT', /** Guinea-Bissau. */ - Gw = "GW", + Gw = 'GW', /** Guyana. */ - Gy = "GY", + Gy = 'GY', /** Hong Kong SAR. */ - Hk = "HK", + Hk = 'HK', /** Heard & McDonald Islands. */ - Hm = "HM", + Hm = 'HM', /** Honduras. */ - Hn = "HN", + Hn = 'HN', /** Croatia. */ - Hr = "HR", + Hr = 'HR', /** Haiti. */ - Ht = "HT", + Ht = 'HT', /** Hungary. */ - Hu = "HU", + Hu = 'HU', /** Indonesia. */ - Id = "ID", + Id = 'ID', /** Ireland. */ - Ie = "IE", + Ie = 'IE', /** Israel. */ - Il = "IL", + Il = 'IL', /** Isle of Man. */ - Im = "IM", + Im = 'IM', /** India. */ - In = "IN", + In = 'IN', /** British Indian Ocean Territory. */ - Io = "IO", + Io = 'IO', /** Iraq. */ - Iq = "IQ", + Iq = 'IQ', /** Iran. */ - Ir = "IR", + Ir = 'IR', /** Iceland. */ - Is = "IS", + Is = 'IS', /** Italy. */ - It = "IT", + It = 'IT', /** Jersey. */ - Je = "JE", + Je = 'JE', /** Jamaica. */ - Jm = "JM", + Jm = 'JM', /** Jordan. */ - Jo = "JO", + Jo = 'JO', /** Japan. */ - Jp = "JP", + Jp = 'JP', /** Kenya. */ - Ke = "KE", + Ke = 'KE', /** Kyrgyzstan. */ - Kg = "KG", + Kg = 'KG', /** Cambodia. */ - Kh = "KH", + Kh = 'KH', /** Kiribati. */ - Ki = "KI", + Ki = 'KI', /** Comoros. */ - Km = "KM", + Km = 'KM', /** St. Kitts & Nevis. */ - Kn = "KN", + Kn = 'KN', /** North Korea. */ - Kp = "KP", + Kp = 'KP', /** South Korea. */ - Kr = "KR", + Kr = 'KR', /** Kuwait. */ - Kw = "KW", + Kw = 'KW', /** Cayman Islands. */ - Ky = "KY", + Ky = 'KY', /** Kazakhstan. */ - Kz = "KZ", + Kz = 'KZ', /** Laos. */ - La = "LA", + La = 'LA', /** Lebanon. */ - Lb = "LB", + Lb = 'LB', /** St. Lucia. */ - Lc = "LC", + Lc = 'LC', /** Liechtenstein. */ - Li = "LI", + Li = 'LI', /** Sri Lanka. */ - Lk = "LK", + Lk = 'LK', /** Liberia. */ - Lr = "LR", + Lr = 'LR', /** Lesotho. */ - Ls = "LS", + Ls = 'LS', /** Lithuania. */ - Lt = "LT", + Lt = 'LT', /** Luxembourg. */ - Lu = "LU", + Lu = 'LU', /** Latvia. */ - Lv = "LV", + Lv = 'LV', /** Libya. */ - Ly = "LY", + Ly = 'LY', /** Morocco. */ - Ma = "MA", + Ma = 'MA', /** Monaco. */ - Mc = "MC", + Mc = 'MC', /** Moldova. */ - Md = "MD", + Md = 'MD', /** Montenegro. */ - Me = "ME", + Me = 'ME', /** St. Martin. */ - Mf = "MF", + Mf = 'MF', /** Madagascar. */ - Mg = "MG", + Mg = 'MG', /** North Macedonia. */ - Mk = "MK", + Mk = 'MK', /** Mali. */ - Ml = "ML", + Ml = 'ML', /** Myanmar (Burma). */ - Mm = "MM", + Mm = 'MM', /** Mongolia. */ - Mn = "MN", + Mn = 'MN', /** Macao SAR. */ - Mo = "MO", + Mo = 'MO', /** Martinique. */ - Mq = "MQ", + Mq = 'MQ', /** Mauritania. */ - Mr = "MR", + Mr = 'MR', /** Montserrat. */ - Ms = "MS", + Ms = 'MS', /** Malta. */ - Mt = "MT", + Mt = 'MT', /** Mauritius. */ - Mu = "MU", + Mu = 'MU', /** Maldives. */ - Mv = "MV", + Mv = 'MV', /** Malawi. */ - Mw = "MW", + Mw = 'MW', /** Mexico. */ - Mx = "MX", + Mx = 'MX', /** Malaysia. */ - My = "MY", + My = 'MY', /** Mozambique. */ - Mz = "MZ", + Mz = 'MZ', /** Namibia. */ - Na = "NA", + Na = 'NA', /** New Caledonia. */ - Nc = "NC", + Nc = 'NC', /** Niger. */ - Ne = "NE", + Ne = 'NE', /** Norfolk Island. */ - Nf = "NF", + Nf = 'NF', /** Nigeria. */ - Ng = "NG", + Ng = 'NG', /** Nicaragua. */ - Ni = "NI", + Ni = 'NI', /** Netherlands. */ - Nl = "NL", + Nl = 'NL', /** Norway. */ - No = "NO", + No = 'NO', /** Nepal. */ - Np = "NP", + Np = 'NP', /** Nauru. */ - Nr = "NR", + Nr = 'NR', /** Niue. */ - Nu = "NU", + Nu = 'NU', /** New Zealand. */ - Nz = "NZ", + Nz = 'NZ', /** Oman. */ - Om = "OM", + Om = 'OM', /** Panama. */ - Pa = "PA", + Pa = 'PA', /** Peru. */ - Pe = "PE", + Pe = 'PE', /** French Polynesia. */ - Pf = "PF", + Pf = 'PF', /** Papua New Guinea. */ - Pg = "PG", + Pg = 'PG', /** Philippines. */ - Ph = "PH", + Ph = 'PH', /** Pakistan. */ - Pk = "PK", + Pk = 'PK', /** Poland. */ - Pl = "PL", + Pl = 'PL', /** St. Pierre & Miquelon. */ - Pm = "PM", + Pm = 'PM', /** Pitcairn Islands. */ - Pn = "PN", + Pn = 'PN', /** Palestinian Territories. */ - Ps = "PS", + Ps = 'PS', /** Portugal. */ - Pt = "PT", + Pt = 'PT', /** Paraguay. */ - Py = "PY", + Py = 'PY', /** Qatar. */ - Qa = "QA", + Qa = 'QA', /** Réunion. */ - Re = "RE", + Re = 'RE', /** Romania. */ - Ro = "RO", + Ro = 'RO', /** Serbia. */ - Rs = "RS", + Rs = 'RS', /** Russia. */ - Ru = "RU", + Ru = 'RU', /** Rwanda. */ - Rw = "RW", + Rw = 'RW', /** Saudi Arabia. */ - Sa = "SA", + Sa = 'SA', /** Solomon Islands. */ - Sb = "SB", + Sb = 'SB', /** Seychelles. */ - Sc = "SC", + Sc = 'SC', /** Sudan. */ - Sd = "SD", + Sd = 'SD', /** Sweden. */ - Se = "SE", + Se = 'SE', /** Singapore. */ - Sg = "SG", + Sg = 'SG', /** St. Helena. */ - Sh = "SH", + Sh = 'SH', /** Slovenia. */ - Si = "SI", + Si = 'SI', /** Svalbard & Jan Mayen. */ - Sj = "SJ", + Sj = 'SJ', /** Slovakia. */ - Sk = "SK", + Sk = 'SK', /** Sierra Leone. */ - Sl = "SL", + Sl = 'SL', /** San Marino. */ - Sm = "SM", + Sm = 'SM', /** Senegal. */ - Sn = "SN", + Sn = 'SN', /** Somalia. */ - So = "SO", + So = 'SO', /** Suriname. */ - Sr = "SR", + Sr = 'SR', /** South Sudan. */ - Ss = "SS", + Ss = 'SS', /** São Tomé & Príncipe. */ - St = "ST", + St = 'ST', /** El Salvador. */ - Sv = "SV", + Sv = 'SV', /** Sint Maarten. */ - Sx = "SX", + Sx = 'SX', /** Syria. */ - Sy = "SY", + Sy = 'SY', /** Eswatini. */ - Sz = "SZ", + Sz = 'SZ', /** Tristan da Cunha. */ - Ta = "TA", + Ta = 'TA', /** Turks & Caicos Islands. */ - Tc = "TC", + Tc = 'TC', /** Chad. */ - Td = "TD", + Td = 'TD', /** French Southern Territories. */ - Tf = "TF", + Tf = 'TF', /** Togo. */ - Tg = "TG", + Tg = 'TG', /** Thailand. */ - Th = "TH", + Th = 'TH', /** Tajikistan. */ - Tj = "TJ", + Tj = 'TJ', /** Tokelau. */ - Tk = "TK", + Tk = 'TK', /** Timor-Leste. */ - Tl = "TL", + Tl = 'TL', /** Turkmenistan. */ - Tm = "TM", + Tm = 'TM', /** Tunisia. */ - Tn = "TN", + Tn = 'TN', /** Tonga. */ - To = "TO", + To = 'TO', /** Türkiye. */ - Tr = "TR", + Tr = 'TR', /** Trinidad & Tobago. */ - Tt = "TT", + Tt = 'TT', /** Tuvalu. */ - Tv = "TV", + Tv = 'TV', /** Taiwan. */ - Tw = "TW", + Tw = 'TW', /** Tanzania. */ - Tz = "TZ", + Tz = 'TZ', /** Ukraine. */ - Ua = "UA", + Ua = 'UA', /** Uganda. */ - Ug = "UG", + Ug = 'UG', /** U.S. Outlying Islands. */ - Um = "UM", + Um = 'UM', /** United States. */ - Us = "US", + Us = 'US', /** Uruguay. */ - Uy = "UY", + Uy = 'UY', /** Uzbekistan. */ - Uz = "UZ", + Uz = 'UZ', /** Vatican City. */ - Va = "VA", + Va = 'VA', /** St. Vincent & Grenadines. */ - Vc = "VC", + Vc = 'VC', /** Venezuela. */ - Ve = "VE", + Ve = 'VE', /** British Virgin Islands. */ - Vg = "VG", + Vg = 'VG', /** Vietnam. */ - Vn = "VN", + Vn = 'VN', /** Vanuatu. */ - Vu = "VU", + Vu = 'VU', /** Wallis & Futuna. */ - Wf = "WF", + Wf = 'WF', /** Samoa. */ - Ws = "WS", + Ws = 'WS', /** Kosovo. */ - Xk = "XK", + Xk = 'XK', /** Yemen. */ - Ye = "YE", + Ye = 'YE', /** Mayotte. */ - Yt = "YT", + Yt = 'YT', /** South Africa. */ - Za = "ZA", + Za = 'ZA', /** Zambia. */ - Zm = "ZM", + Zm = 'ZM', /** Zimbabwe. */ - Zw = "ZW", + Zw = 'ZW', /** Unknown Region. */ - Zz = "ZZ", + Zz = 'ZZ' } /** @@ -1145,338 +1118,338 @@ export enum CountryCode { */ export enum CurrencyCode { /** United Arab Emirates Dirham (AED). */ - Aed = "AED", + Aed = 'AED', /** Afghan Afghani (AFN). */ - Afn = "AFN", + Afn = 'AFN', /** Albanian Lek (ALL). */ - All = "ALL", + All = 'ALL', /** Armenian Dram (AMD). */ - Amd = "AMD", + Amd = 'AMD', /** Netherlands Antillean Guilder. */ - Ang = "ANG", + Ang = 'ANG', /** Angolan Kwanza (AOA). */ - Aoa = "AOA", + Aoa = 'AOA', /** Argentine Pesos (ARS). */ - Ars = "ARS", + Ars = 'ARS', /** Australian Dollars (AUD). */ - Aud = "AUD", + Aud = 'AUD', /** Aruban Florin (AWG). */ - Awg = "AWG", + Awg = 'AWG', /** Azerbaijani Manat (AZN). */ - Azn = "AZN", + Azn = 'AZN', /** Bosnia and Herzegovina Convertible Mark (BAM). */ - Bam = "BAM", + Bam = 'BAM', /** Barbadian Dollar (BBD). */ - Bbd = "BBD", + Bbd = 'BBD', /** Bangladesh Taka (BDT). */ - Bdt = "BDT", + Bdt = 'BDT', /** Bulgarian Lev (BGN). */ - Bgn = "BGN", + Bgn = 'BGN', /** Bahraini Dinar (BHD). */ - Bhd = "BHD", + Bhd = 'BHD', /** Burundian Franc (BIF). */ - Bif = "BIF", + Bif = 'BIF', /** Bermudian Dollar (BMD). */ - Bmd = "BMD", + Bmd = 'BMD', /** Brunei Dollar (BND). */ - Bnd = "BND", + Bnd = 'BND', /** Bolivian Boliviano (BOB). */ - Bob = "BOB", + Bob = 'BOB', /** Brazilian Real (BRL). */ - Brl = "BRL", + Brl = 'BRL', /** Bahamian Dollar (BSD). */ - Bsd = "BSD", + Bsd = 'BSD', /** Bhutanese Ngultrum (BTN). */ - Btn = "BTN", + Btn = 'BTN', /** Botswana Pula (BWP). */ - Bwp = "BWP", + Bwp = 'BWP', /** Belarusian Ruble (BYN). */ - Byn = "BYN", + Byn = 'BYN', /** * Belarusian Ruble (BYR). * @deprecated Use `BYN` instead. */ - Byr = "BYR", + Byr = 'BYR', /** Belize Dollar (BZD). */ - Bzd = "BZD", + Bzd = 'BZD', /** Canadian Dollars (CAD). */ - Cad = "CAD", + Cad = 'CAD', /** Congolese franc (CDF). */ - Cdf = "CDF", + Cdf = 'CDF', /** Swiss Francs (CHF). */ - Chf = "CHF", + Chf = 'CHF', /** Chilean Peso (CLP). */ - Clp = "CLP", + Clp = 'CLP', /** Chinese Yuan Renminbi (CNY). */ - Cny = "CNY", + Cny = 'CNY', /** Colombian Peso (COP). */ - Cop = "COP", + Cop = 'COP', /** Costa Rican Colones (CRC). */ - Crc = "CRC", + Crc = 'CRC', /** Cape Verdean escudo (CVE). */ - Cve = "CVE", + Cve = 'CVE', /** Czech Koruny (CZK). */ - Czk = "CZK", + Czk = 'CZK', /** Djiboutian Franc (DJF). */ - Djf = "DJF", + Djf = 'DJF', /** Danish Kroner (DKK). */ - Dkk = "DKK", + Dkk = 'DKK', /** Dominican Peso (DOP). */ - Dop = "DOP", + Dop = 'DOP', /** Algerian Dinar (DZD). */ - Dzd = "DZD", + Dzd = 'DZD', /** Egyptian Pound (EGP). */ - Egp = "EGP", + Egp = 'EGP', /** Eritrean Nakfa (ERN). */ - Ern = "ERN", + Ern = 'ERN', /** Ethiopian Birr (ETB). */ - Etb = "ETB", + Etb = 'ETB', /** Euro (EUR). */ - Eur = "EUR", + Eur = 'EUR', /** Fijian Dollars (FJD). */ - Fjd = "FJD", + Fjd = 'FJD', /** Falkland Islands Pounds (FKP). */ - Fkp = "FKP", + Fkp = 'FKP', /** United Kingdom Pounds (GBP). */ - Gbp = "GBP", + Gbp = 'GBP', /** Georgian Lari (GEL). */ - Gel = "GEL", + Gel = 'GEL', /** Ghanaian Cedi (GHS). */ - Ghs = "GHS", + Ghs = 'GHS', /** Gibraltar Pounds (GIP). */ - Gip = "GIP", + Gip = 'GIP', /** Gambian Dalasi (GMD). */ - Gmd = "GMD", + Gmd = 'GMD', /** Guinean Franc (GNF). */ - Gnf = "GNF", + Gnf = 'GNF', /** Guatemalan Quetzal (GTQ). */ - Gtq = "GTQ", + Gtq = 'GTQ', /** Guyanese Dollar (GYD). */ - Gyd = "GYD", + Gyd = 'GYD', /** Hong Kong Dollars (HKD). */ - Hkd = "HKD", + Hkd = 'HKD', /** Honduran Lempira (HNL). */ - Hnl = "HNL", + Hnl = 'HNL', /** Croatian Kuna (HRK). */ - Hrk = "HRK", + Hrk = 'HRK', /** Haitian Gourde (HTG). */ - Htg = "HTG", + Htg = 'HTG', /** Hungarian Forint (HUF). */ - Huf = "HUF", + Huf = 'HUF', /** Indonesian Rupiah (IDR). */ - Idr = "IDR", + Idr = 'IDR', /** Israeli New Shekel (NIS). */ - Ils = "ILS", + Ils = 'ILS', /** Indian Rupees (INR). */ - Inr = "INR", + Inr = 'INR', /** Iraqi Dinar (IQD). */ - Iqd = "IQD", + Iqd = 'IQD', /** Iranian Rial (IRR). */ - Irr = "IRR", + Irr = 'IRR', /** Icelandic Kronur (ISK). */ - Isk = "ISK", + Isk = 'ISK', /** Jersey Pound. */ - Jep = "JEP", + Jep = 'JEP', /** Jamaican Dollars (JMD). */ - Jmd = "JMD", + Jmd = 'JMD', /** Jordanian Dinar (JOD). */ - Jod = "JOD", + Jod = 'JOD', /** Japanese Yen (JPY). */ - Jpy = "JPY", + Jpy = 'JPY', /** Kenyan Shilling (KES). */ - Kes = "KES", + Kes = 'KES', /** Kyrgyzstani Som (KGS). */ - Kgs = "KGS", + Kgs = 'KGS', /** Cambodian Riel. */ - Khr = "KHR", + Khr = 'KHR', /** Kiribati Dollar (KID). */ - Kid = "KID", + Kid = 'KID', /** Comorian Franc (KMF). */ - Kmf = "KMF", + Kmf = 'KMF', /** South Korean Won (KRW). */ - Krw = "KRW", + Krw = 'KRW', /** Kuwaiti Dinar (KWD). */ - Kwd = "KWD", + Kwd = 'KWD', /** Cayman Dollars (KYD). */ - Kyd = "KYD", + Kyd = 'KYD', /** Kazakhstani Tenge (KZT). */ - Kzt = "KZT", + Kzt = 'KZT', /** Laotian Kip (LAK). */ - Lak = "LAK", + Lak = 'LAK', /** Lebanese Pounds (LBP). */ - Lbp = "LBP", + Lbp = 'LBP', /** Sri Lankan Rupees (LKR). */ - Lkr = "LKR", + Lkr = 'LKR', /** Liberian Dollar (LRD). */ - Lrd = "LRD", + Lrd = 'LRD', /** Lesotho Loti (LSL). */ - Lsl = "LSL", + Lsl = 'LSL', /** Lithuanian Litai (LTL). */ - Ltl = "LTL", + Ltl = 'LTL', /** Latvian Lati (LVL). */ - Lvl = "LVL", + Lvl = 'LVL', /** Libyan Dinar (LYD). */ - Lyd = "LYD", + Lyd = 'LYD', /** Moroccan Dirham. */ - Mad = "MAD", + Mad = 'MAD', /** Moldovan Leu (MDL). */ - Mdl = "MDL", + Mdl = 'MDL', /** Malagasy Ariary (MGA). */ - Mga = "MGA", + Mga = 'MGA', /** Macedonia Denar (MKD). */ - Mkd = "MKD", + Mkd = 'MKD', /** Burmese Kyat (MMK). */ - Mmk = "MMK", + Mmk = 'MMK', /** Mongolian Tugrik. */ - Mnt = "MNT", + Mnt = 'MNT', /** Macanese Pataca (MOP). */ - Mop = "MOP", + Mop = 'MOP', /** Mauritanian Ouguiya (MRU). */ - Mru = "MRU", + Mru = 'MRU', /** Mauritian Rupee (MUR). */ - Mur = "MUR", + Mur = 'MUR', /** Maldivian Rufiyaa (MVR). */ - Mvr = "MVR", + Mvr = 'MVR', /** Malawian Kwacha (MWK). */ - Mwk = "MWK", + Mwk = 'MWK', /** Mexican Pesos (MXN). */ - Mxn = "MXN", + Mxn = 'MXN', /** Malaysian Ringgits (MYR). */ - Myr = "MYR", + Myr = 'MYR', /** Mozambican Metical. */ - Mzn = "MZN", + Mzn = 'MZN', /** Namibian Dollar. */ - Nad = "NAD", + Nad = 'NAD', /** Nigerian Naira (NGN). */ - Ngn = "NGN", + Ngn = 'NGN', /** Nicaraguan Córdoba (NIO). */ - Nio = "NIO", + Nio = 'NIO', /** Norwegian Kroner (NOK). */ - Nok = "NOK", + Nok = 'NOK', /** Nepalese Rupee (NPR). */ - Npr = "NPR", + Npr = 'NPR', /** New Zealand Dollars (NZD). */ - Nzd = "NZD", + Nzd = 'NZD', /** Omani Rial (OMR). */ - Omr = "OMR", + Omr = 'OMR', /** Panamian Balboa (PAB). */ - Pab = "PAB", + Pab = 'PAB', /** Peruvian Nuevo Sol (PEN). */ - Pen = "PEN", + Pen = 'PEN', /** Papua New Guinean Kina (PGK). */ - Pgk = "PGK", + Pgk = 'PGK', /** Philippine Peso (PHP). */ - Php = "PHP", + Php = 'PHP', /** Pakistani Rupee (PKR). */ - Pkr = "PKR", + Pkr = 'PKR', /** Polish Zlotych (PLN). */ - Pln = "PLN", + Pln = 'PLN', /** Paraguayan Guarani (PYG). */ - Pyg = "PYG", + Pyg = 'PYG', /** Qatari Rial (QAR). */ - Qar = "QAR", + Qar = 'QAR', /** Romanian Lei (RON). */ - Ron = "RON", + Ron = 'RON', /** Serbian dinar (RSD). */ - Rsd = "RSD", + Rsd = 'RSD', /** Russian Rubles (RUB). */ - Rub = "RUB", + Rub = 'RUB', /** Rwandan Franc (RWF). */ - Rwf = "RWF", + Rwf = 'RWF', /** Saudi Riyal (SAR). */ - Sar = "SAR", + Sar = 'SAR', /** Solomon Islands Dollar (SBD). */ - Sbd = "SBD", + Sbd = 'SBD', /** Seychellois Rupee (SCR). */ - Scr = "SCR", + Scr = 'SCR', /** Sudanese Pound (SDG). */ - Sdg = "SDG", + Sdg = 'SDG', /** Swedish Kronor (SEK). */ - Sek = "SEK", + Sek = 'SEK', /** Singapore Dollars (SGD). */ - Sgd = "SGD", + Sgd = 'SGD', /** Saint Helena Pounds (SHP). */ - Shp = "SHP", + Shp = 'SHP', /** Sierra Leonean Leone (SLL). */ - Sll = "SLL", + Sll = 'SLL', /** Somali Shilling (SOS). */ - Sos = "SOS", + Sos = 'SOS', /** Surinamese Dollar (SRD). */ - Srd = "SRD", + Srd = 'SRD', /** South Sudanese Pound (SSP). */ - Ssp = "SSP", + Ssp = 'SSP', /** * Sao Tome And Principe Dobra (STD). * @deprecated Use `STN` instead. */ - Std = "STD", + Std = 'STD', /** Sao Tome And Principe Dobra (STN). */ - Stn = "STN", + Stn = 'STN', /** Syrian Pound (SYP). */ - Syp = "SYP", + Syp = 'SYP', /** Swazi Lilangeni (SZL). */ - Szl = "SZL", + Szl = 'SZL', /** Thai baht (THB). */ - Thb = "THB", + Thb = 'THB', /** Tajikistani Somoni (TJS). */ - Tjs = "TJS", + Tjs = 'TJS', /** Turkmenistani Manat (TMT). */ - Tmt = "TMT", + Tmt = 'TMT', /** Tunisian Dinar (TND). */ - Tnd = "TND", + Tnd = 'TND', /** Tongan Pa'anga (TOP). */ - Top = "TOP", + Top = 'TOP', /** Turkish Lira (TRY). */ - Try = "TRY", + Try = 'TRY', /** Trinidad and Tobago Dollars (TTD). */ - Ttd = "TTD", + Ttd = 'TTD', /** Taiwan Dollars (TWD). */ - Twd = "TWD", + Twd = 'TWD', /** Tanzanian Shilling (TZS). */ - Tzs = "TZS", + Tzs = 'TZS', /** Ukrainian Hryvnia (UAH). */ - Uah = "UAH", + Uah = 'UAH', /** Ugandan Shilling (UGX). */ - Ugx = "UGX", + Ugx = 'UGX', /** United States Dollars (USD). */ - Usd = "USD", + Usd = 'USD', /** United States Dollars Coin (USDC). */ - Usdc = "USDC", + Usdc = 'USDC', /** Uruguayan Pesos (UYU). */ - Uyu = "UYU", + Uyu = 'UYU', /** Uzbekistan som (UZS). */ - Uzs = "UZS", + Uzs = 'UZS', /** Venezuelan Bolivares (VED). */ - Ved = "VED", + Ved = 'VED', /** * Venezuelan Bolivares (VEF). * @deprecated Use `VES` instead. */ - Vef = "VEF", + Vef = 'VEF', /** Venezuelan Bolivares Soberanos (VES). */ - Ves = "VES", + Ves = 'VES', /** Vietnamese đồng (VND). */ - Vnd = "VND", + Vnd = 'VND', /** Vanuatu Vatu (VUV). */ - Vuv = "VUV", + Vuv = 'VUV', /** Samoan Tala (WST). */ - Wst = "WST", + Wst = 'WST', /** Central African CFA Franc (XAF). */ - Xaf = "XAF", + Xaf = 'XAF', /** East Caribbean Dollar (XCD). */ - Xcd = "XCD", + Xcd = 'XCD', /** West African CFA franc (XOF). */ - Xof = "XOF", + Xof = 'XOF', /** CFP Franc (XPF). */ - Xpf = "XPF", + Xpf = 'XPF', /** Unrecognized currency. */ - Xxx = "XXX", + Xxx = 'XXX', /** Yemeni Rial (YER). */ - Yer = "YER", + Yer = 'YER', /** South African Rand (ZAR). */ - Zar = "ZAR", + Zar = 'ZAR', /** Zambian Kwacha (ZMW). */ - Zmw = "ZMW", + Zmw = 'ZMW' } /** @@ -1486,23 +1459,23 @@ export enum CurrencyCode { * information, or weight measurements and conversions. */ export type CustomProduct = { - __typename?: "CustomProduct"; + __typename?: 'CustomProduct'; /** Whether the merchandise is a gift card. */ - isGiftCard: Scalars["Boolean"]["output"]; + isGiftCard: Scalars['Boolean']['output']; /** * Whether the item needs to be shipped to the customer. For example, a * digital gift card doesn't need to be shipped, but a t-shirt does * need to be shipped. */ - requiresShipping: Scalars["Boolean"]["output"]; + requiresShipping: Scalars['Boolean']['output']; /** * The localized name for the product that displays to customers. The title is used to construct the product's * handle, which is a unique, human-readable string of the product's title. For example, if a product is titled * "Black Sunglasses", then the handle is `black-sunglasses`. */ - title: Scalars["String"]["output"]; + title: Scalars['String']['output']; /** The product variant's weight, in the system of measurement set in the `weightUnit` field. */ - weight?: Maybe; + weight?: Maybe; /** The unit of measurement for weight. */ weightUnit: WeightUnit; }; @@ -1512,7 +1485,7 @@ export type CustomProduct = { * `Customer` returns data including the customer's contact information and order history. */ export type Customer = HasMetafields & { - __typename?: "Customer"; + __typename?: 'Customer'; /** * The total amount that the customer has spent on orders. * The amount is converted from the shop's currency to the currency of the cart using a market rate. @@ -1523,25 +1496,25 @@ export type Customer = HasMetafields & { * If `firstName` and `lastName` aren't specified, then the value is the customer's email address. * If the email address isn't specified, then the value is the customer's phone number. */ - displayName: Scalars["String"]["output"]; + displayName: Scalars['String']['output']; /** The customer's email address. */ - email?: Maybe; + email?: Maybe; /** The customer's first name. */ - firstName?: Maybe; + firstName?: Maybe; /** * Whether the customer is associated with any of the specified tags. The customer must have at least one tag * from the list to return `true`. */ - hasAnyTag: Scalars["Boolean"]["output"]; + hasAnyTag: Scalars['Boolean']['output']; /** Whether the customer is associated with the specified tags. */ hasTags: Array; /** * A [globally-unique ID](https://shopify.dev/docs/api/usage/gids) * for the customer. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** The customer's last name. */ - lastName?: Maybe; + lastName?: Maybe; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -1551,37 +1524,40 @@ export type Customer = HasMetafields & { */ metafield?: Maybe; /** The total number of orders that the customer has made at the store. */ - numberOfOrders: Scalars["Int"]["output"]; + numberOfOrders: Scalars['Int']['output']; }; + /** * Represents a [customer](https://help.shopify.com/manual/customers/manage-customers). * `Customer` returns data including the customer's contact information and order history. */ export type CustomerHasAnyTagArgs = { - tags?: Array; + tags?: Array; }; + /** * Represents a [customer](https://help.shopify.com/manual/customers/manage-customers). * `Customer` returns data including the customer's contact information and order history. */ export type CustomerHasTagsArgs = { - tags?: Array; + tags?: Array; }; + /** * Represents a [customer](https://help.shopify.com/manual/customers/manage-customers). * `Customer` returns data including the customer's contact information and order history. */ export type CustomerMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** Represents information about the merchandise in the cart. */ export type DeliverableCartLine = { - __typename?: "DeliverableCartLine"; + __typename?: 'DeliverableCartLine'; /** * The custom attributes associated with a cart to store additional information. Cart attributes * allow you to collect specific information from customers on the **Cart** page, such as order notes, @@ -1593,16 +1569,17 @@ export type DeliverableCartLine = { */ attribute?: Maybe; /** The ID of the cart line. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** The item that the customer intends to purchase. */ merchandise: Merchandise; /** The quantity of the item that the customer intends to purchase. */ - quantity: Scalars["Int"]["output"]; + quantity: Scalars['Int']['output']; }; + /** Represents information about the merchandise in the cart. */ export type DeliverableCartLineAttributeArgs = { - key?: InputMaybe; + key?: InputMaybe; }; /** The discount that's eligible to be applied to a delivery. */ @@ -1619,7 +1596,7 @@ export type DeliveryDiscountCandidate = { * message, such as "Save 20% on all t-shirts." If a discount code is entered, * the notification displays the code instead. */ - message?: InputMaybe; + message?: InputMaybe; /** The targets of the discount that are eligible to be applied to a delivery. */ targets: Array; /** The value of the discount that's eligible to be applied to a delivery. */ @@ -1634,18 +1611,20 @@ export type DeliveryDiscountCandidateTarget = * For example, if a customer orders a t-shirt and a pair of shoes that can be shipped together, then the * items are included in the same delivery group. */ - | { deliveryGroup: DeliveryGroupTarget; deliveryOption?: never } /** + { deliveryGroup: DeliveryGroupTarget; deliveryOption?: never; } + | /** * A method for applying a discount to a delivery option within a delivery group. * Delivery options are the different ways that customers can choose to have their * orders shipped. Examples of delivery options include express shipping or standard shipping. */ - | { deliveryGroup?: never; deliveryOption: DeliveryOptionTarget }; + { deliveryGroup?: never; deliveryOption: DeliveryOptionTarget; }; /** The value of the eligible delivery discount. */ export type DeliveryDiscountCandidateValue = /** A fixed amount value. */ - | { fixedAmount: FixedAmount; percentage?: never } /** A percentage value. */ - | { fixedAmount?: never; percentage: Percentage }; + { fixedAmount: FixedAmount; percentage?: never; } + | /** A percentage value. */ + { fixedAmount?: never; percentage: Percentage; }; /** The strategy that's applied to the list of discounts that are eligible to be applied to a delivery. */ export enum DeliveryDiscountSelectionStrategy { @@ -1654,7 +1633,7 @@ export enum DeliveryDiscountSelectionStrategy { * conditions that are satisfied. This doesn't override * discount combination or stacking rules. */ - All = "ALL", + All = 'ALL' } /** @@ -1683,23 +1662,23 @@ export type DeliveryDiscountsAddOperation = { */ export type DeliveryGroupTarget = { /** The ID of the target delivery group. */ - id: Scalars["ID"]["input"]; + id: Scalars['ID']['input']; }; /** List of different delivery method types. */ export enum DeliveryMethod { /** Local Delivery. */ - Local = "LOCAL", + Local = 'LOCAL', /** None. */ - None = "NONE", + None = 'NONE', /** Shipping to a Pickup Point. */ - PickupPoint = "PICKUP_POINT", + PickupPoint = 'PICKUP_POINT', /** Local Pickup. */ - PickUp = "PICK_UP", + PickUp = 'PICK_UP', /** Retail. */ - Retail = "RETAIL", + Retail = 'RETAIL', /** Shipping. */ - Shipping = "SHIPPING", + Shipping = 'SHIPPING' } /** @@ -1714,17 +1693,12 @@ export type DeliveryOperation = * Applies delivery discounts to a cart that share a method for determining which * shipping and delivery discounts to apply when multiple discounts are eligible. */ - | { - deliveryDiscountsAdd: DeliveryDiscountsAddOperation; - enteredDiscountCodesAccept?: never; - } /** + { deliveryDiscountsAdd: DeliveryDiscountsAddOperation; enteredDiscountCodesAccept?: never; } + | /** * An operation that selects which entered discount codes to accept. Use this to * validate discount codes from external systems. */ - | { - deliveryDiscountsAdd?: never; - enteredDiscountCodesAccept: EnteredDiscountCodesAcceptOperation; - }; + { deliveryDiscountsAdd?: never; enteredDiscountCodesAccept: EnteredDiscountCodesAcceptOperation; }; /** * A method for applying a discount to a delivery option within a delivery group. @@ -1733,12 +1707,12 @@ export type DeliveryOperation = */ export type DeliveryOptionTarget = { /** The handle of the target delivery option. */ - handle: Scalars["Handle"]["input"]; + handle: Scalars['Handle']['input']; }; /** The discount that invoked the [Discount Function](https://shopify.dev/docs/apps/build/discounts#build-with-shopify-functions)). */ export type Discount = HasMetafields & { - __typename?: "Discount"; + __typename?: 'Discount'; /** The [discount classes](https://shopify.dev/docs/apps/build/discounts/#discount-classes) that the [discountNode](https://shopify.dev/docs/api/admin-graphql/latest/queries/discountNode) supports. */ discountClasses: Array; /** @@ -1751,10 +1725,11 @@ export type Discount = HasMetafields & { metafield?: Maybe; }; + /** The discount that invoked the [Discount Function](https://shopify.dev/docs/apps/build/discounts#build-with-shopify-functions)). */ export type DiscountMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** @@ -1767,32 +1742,32 @@ export enum DiscountClass { * [order discount](https://help.shopify.com/manual/discounts/combining-discounts/discount-combinations) * class. */ - Order = "ORDER", + Order = 'ORDER', /** * The discount is combined with a * [product discount](https://help.shopify.com/manual/discounts/combining-discounts/discount-combinations) * class. */ - Product = "PRODUCT", + Product = 'PRODUCT', /** * The discount is combined with a * [shipping discount](https://help.shopify.com/manual/discounts/combining-discounts/discount-combinations) * class. */ - Shipping = "SHIPPING", + Shipping = 'SHIPPING' } /** A discount code used by the buyer to add a discount to the cart. */ export type DiscountCode = { /** The discount code. */ - code: Scalars["String"]["input"]; + code: Scalars['String']['input']; }; /** A discount code entered by the customer. */ export type EnteredDiscountCode = { - __typename?: "EnteredDiscountCode"; + __typename?: 'EnteredDiscountCode'; /** The discount code. */ - code: Scalars["String"]["output"]; + code: Scalars['String']['output']; }; /** An operation that selects which entered discount codes to accept. Use this to validate discount codes from external systems. */ @@ -1808,7 +1783,7 @@ export type FixedAmount = { * * The amount must be greater than or equal to 0. */ - amount: Scalars["Decimal"]["input"]; + amount: Scalars['Decimal']['input']; }; /** Represents information about the metafields associated to the specified resource. */ @@ -1823,23 +1798,24 @@ export type HasMetafields = { metafield?: Maybe; }; + /** Represents information about the metafields associated to the specified resource. */ export type HasMetafieldsMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** Whether a Shopify resource, such as a product or customer, has a specified tag. */ export type HasTagResponse = { - __typename?: "HasTagResponse"; + __typename?: 'HasTagResponse'; /** Whether the Shopify resource has the tag. */ - hasTag: Scalars["Boolean"]["output"]; + hasTag: Scalars['Boolean']['output']; /** * A searchable keyword that's associated with a Shopify resource, such as a product or customer. For example, * a merchant might apply the `sports` and `summer` tags to products that are associated with sportswear for * summer. */ - tag: Scalars["String"]["output"]; + tag: Scalars['String']['output']; }; /** The attributes associated with an HTTP request. */ @@ -1848,7 +1824,7 @@ export type HttpRequest = { * The HTTP request body as a plain string. * Use this field when the body isn't in JSON format. */ - body?: InputMaybe; + body?: InputMaybe; /** The HTTP headers. */ headers: Array; /** @@ -1860,45 +1836,45 @@ export type HttpRequest = { * If this field is specified and no `Content-Type` header is included, then the header will * automatically be set to `application/json`. */ - jsonBody?: InputMaybe; + jsonBody?: InputMaybe; /** The HTTP method. */ method: HttpRequestMethod; /** Policy attached to the HTTP request. */ policy: HttpRequestPolicy; /** The HTTP url (eg.: https://example.com). The scheme needs to be HTTPS. */ - url: Scalars["URL"]["input"]; + url: Scalars['URL']['input']; }; /** The attributes associated with an HTTP request header. */ export type HttpRequestHeader = { /** Header name. */ - name: Scalars["String"]["input"]; + name: Scalars['String']['input']; /** Header value. */ - value: Scalars["String"]["input"]; + value: Scalars['String']['input']; }; /** The HTTP request available methods. */ export enum HttpRequestMethod { /** Http GET. */ - Get = "GET", + Get = 'GET', /** Http POST. */ - Post = "POST", + Post = 'POST' } /** The attributes associated with an HTTP request policy. */ export type HttpRequestPolicy = { /** Read timeout in milliseconds. */ - readTimeoutMs: Scalars["Int"]["input"]; + readTimeoutMs: Scalars['Int']['input']; }; /** The attributes associated with an HTTP response. */ export type HttpResponse = { - __typename?: "HttpResponse"; + __typename?: 'HttpResponse'; /** * The HTTP response body as a plain string. * Use this field when the body is not in JSON format. */ - body?: Maybe; + body?: Maybe; /** An HTTP header. */ header?: Maybe; /** @@ -1916,28 +1892,29 @@ export type HttpResponse = { * To prevent increasing the function target input size unnecessarily, avoid querying * both `body` and `jsonBody` simultaneously. */ - jsonBody?: Maybe; + jsonBody?: Maybe; /** The HTTP status code. */ - status: Scalars["Int"]["output"]; + status: Scalars['Int']['output']; }; + /** The attributes associated with an HTTP response. */ export type HttpResponseHeaderArgs = { - name: Scalars["String"]["input"]; + name: Scalars['String']['input']; }; /** The attributes associated with an HTTP response header. */ export type HttpResponseHeader = { - __typename?: "HttpResponseHeader"; + __typename?: 'HttpResponseHeader'; /** Header name. */ - name: Scalars["String"]["output"]; + name: Scalars['String']['output']; /** Header value. */ - value: Scalars["String"]["output"]; + value: Scalars['String']['output']; }; /** The input object for the Function. */ export type Input = { - __typename?: "Input"; + __typename?: 'Input'; /** * The cart where the Function is running. A cart contains the merchandise that a customer intends to purchase * and information about the customer, such as the customer's email address and phone number. @@ -1978,7 +1955,7 @@ export type Input = { * For example, if a store operates in USD but a customer is viewing discounts in EUR, * then the presentment currency rate handles this conversion for accurate pricing. */ - presentmentCurrencyRate: Scalars["Decimal"]["output"]; + presentmentCurrencyRate: Scalars['Decimal']['output']; /** * Information about the shop where the Function is running, including the shop's timezone * setting and associated [metafields](https://shopify.dev/docs/apps/build/custom-data). @@ -1989,7 +1966,7 @@ export type Input = { * This input is only available in the `cart.lines.discounts.generate.run` and * `cart.delivery-options.discounts.generate.run` extension targets. */ - triggeringDiscountCode?: Maybe; + triggeringDiscountCode?: Maybe; }; /** @@ -1997,7 +1974,7 @@ export type Input = { * This includes product descriptions and customer communications that resonate with the target audience. */ export type Language = { - __typename?: "Language"; + __typename?: 'Language'; /** The ISO code. */ isoCode: LanguageCode; }; @@ -2005,287 +1982,287 @@ export type Language = { /** Language codes supported by Shopify. */ export enum LanguageCode { /** Afrikaans. */ - Af = "AF", + Af = 'AF', /** Akan. */ - Ak = "AK", + Ak = 'AK', /** Amharic. */ - Am = "AM", + Am = 'AM', /** Arabic. */ - Ar = "AR", + Ar = 'AR', /** Assamese. */ - As = "AS", + As = 'AS', /** Azerbaijani. */ - Az = "AZ", + Az = 'AZ', /** Belarusian. */ - Be = "BE", + Be = 'BE', /** Bulgarian. */ - Bg = "BG", + Bg = 'BG', /** Bambara. */ - Bm = "BM", + Bm = 'BM', /** Bangla. */ - Bn = "BN", + Bn = 'BN', /** Tibetan. */ - Bo = "BO", + Bo = 'BO', /** Breton. */ - Br = "BR", + Br = 'BR', /** Bosnian. */ - Bs = "BS", + Bs = 'BS', /** Catalan. */ - Ca = "CA", + Ca = 'CA', /** Chechen. */ - Ce = "CE", + Ce = 'CE', /** Central Kurdish. */ - Ckb = "CKB", + Ckb = 'CKB', /** Czech. */ - Cs = "CS", + Cs = 'CS', /** Church Slavic. */ - Cu = "CU", + Cu = 'CU', /** Welsh. */ - Cy = "CY", + Cy = 'CY', /** Danish. */ - Da = "DA", + Da = 'DA', /** German. */ - De = "DE", + De = 'DE', /** Dzongkha. */ - Dz = "DZ", + Dz = 'DZ', /** Ewe. */ - Ee = "EE", + Ee = 'EE', /** Greek. */ - El = "EL", + El = 'EL', /** English. */ - En = "EN", + En = 'EN', /** Esperanto. */ - Eo = "EO", + Eo = 'EO', /** Spanish. */ - Es = "ES", + Es = 'ES', /** Estonian. */ - Et = "ET", + Et = 'ET', /** Basque. */ - Eu = "EU", + Eu = 'EU', /** Persian. */ - Fa = "FA", + Fa = 'FA', /** Fulah. */ - Ff = "FF", + Ff = 'FF', /** Finnish. */ - Fi = "FI", + Fi = 'FI', /** Filipino. */ - Fil = "FIL", + Fil = 'FIL', /** Faroese. */ - Fo = "FO", + Fo = 'FO', /** French. */ - Fr = "FR", + Fr = 'FR', /** Western Frisian. */ - Fy = "FY", + Fy = 'FY', /** Irish. */ - Ga = "GA", + Ga = 'GA', /** Scottish Gaelic. */ - Gd = "GD", + Gd = 'GD', /** Galician. */ - Gl = "GL", + Gl = 'GL', /** Gujarati. */ - Gu = "GU", + Gu = 'GU', /** Manx. */ - Gv = "GV", + Gv = 'GV', /** Hausa. */ - Ha = "HA", + Ha = 'HA', /** Hebrew. */ - He = "HE", + He = 'HE', /** Hindi. */ - Hi = "HI", + Hi = 'HI', /** Croatian. */ - Hr = "HR", + Hr = 'HR', /** Hungarian. */ - Hu = "HU", + Hu = 'HU', /** Armenian. */ - Hy = "HY", + Hy = 'HY', /** Interlingua. */ - Ia = "IA", + Ia = 'IA', /** Indonesian. */ - Id = "ID", + Id = 'ID', /** Igbo. */ - Ig = "IG", + Ig = 'IG', /** Sichuan Yi. */ - Ii = "II", + Ii = 'II', /** Icelandic. */ - Is = "IS", + Is = 'IS', /** Italian. */ - It = "IT", + It = 'IT', /** Japanese. */ - Ja = "JA", + Ja = 'JA', /** Javanese. */ - Jv = "JV", + Jv = 'JV', /** Georgian. */ - Ka = "KA", + Ka = 'KA', /** Kikuyu. */ - Ki = "KI", + Ki = 'KI', /** Kazakh. */ - Kk = "KK", + Kk = 'KK', /** Kalaallisut. */ - Kl = "KL", + Kl = 'KL', /** Khmer. */ - Km = "KM", + Km = 'KM', /** Kannada. */ - Kn = "KN", + Kn = 'KN', /** Korean. */ - Ko = "KO", + Ko = 'KO', /** Kashmiri. */ - Ks = "KS", + Ks = 'KS', /** Kurdish. */ - Ku = "KU", + Ku = 'KU', /** Cornish. */ - Kw = "KW", + Kw = 'KW', /** Kyrgyz. */ - Ky = "KY", + Ky = 'KY', /** Luxembourgish. */ - Lb = "LB", + Lb = 'LB', /** Ganda. */ - Lg = "LG", + Lg = 'LG', /** Lingala. */ - Ln = "LN", + Ln = 'LN', /** Lao. */ - Lo = "LO", + Lo = 'LO', /** Lithuanian. */ - Lt = "LT", + Lt = 'LT', /** Luba-Katanga. */ - Lu = "LU", + Lu = 'LU', /** Latvian. */ - Lv = "LV", + Lv = 'LV', /** Malagasy. */ - Mg = "MG", + Mg = 'MG', /** Māori. */ - Mi = "MI", + Mi = 'MI', /** Macedonian. */ - Mk = "MK", + Mk = 'MK', /** Malayalam. */ - Ml = "ML", + Ml = 'ML', /** Mongolian. */ - Mn = "MN", + Mn = 'MN', /** Marathi. */ - Mr = "MR", + Mr = 'MR', /** Malay. */ - Ms = "MS", + Ms = 'MS', /** Maltese. */ - Mt = "MT", + Mt = 'MT', /** Burmese. */ - My = "MY", + My = 'MY', /** Norwegian (Bokmål). */ - Nb = "NB", + Nb = 'NB', /** North Ndebele. */ - Nd = "ND", + Nd = 'ND', /** Nepali. */ - Ne = "NE", + Ne = 'NE', /** Dutch. */ - Nl = "NL", + Nl = 'NL', /** Norwegian Nynorsk. */ - Nn = "NN", + Nn = 'NN', /** Norwegian. */ - No = "NO", + No = 'NO', /** Oromo. */ - Om = "OM", + Om = 'OM', /** Odia. */ - Or = "OR", + Or = 'OR', /** Ossetic. */ - Os = "OS", + Os = 'OS', /** Punjabi. */ - Pa = "PA", + Pa = 'PA', /** Polish. */ - Pl = "PL", + Pl = 'PL', /** Pashto. */ - Ps = "PS", + Ps = 'PS', /** Portuguese. */ - Pt = "PT", + Pt = 'PT', /** Portuguese (Brazil). */ - PtBr = "PT_BR", + PtBr = 'PT_BR', /** Portuguese (Portugal). */ - PtPt = "PT_PT", + PtPt = 'PT_PT', /** Quechua. */ - Qu = "QU", + Qu = 'QU', /** Romansh. */ - Rm = "RM", + Rm = 'RM', /** Rundi. */ - Rn = "RN", + Rn = 'RN', /** Romanian. */ - Ro = "RO", + Ro = 'RO', /** Russian. */ - Ru = "RU", + Ru = 'RU', /** Kinyarwanda. */ - Rw = "RW", + Rw = 'RW', /** Sanskrit. */ - Sa = "SA", + Sa = 'SA', /** Sardinian. */ - Sc = "SC", + Sc = 'SC', /** Sindhi. */ - Sd = "SD", + Sd = 'SD', /** Northern Sami. */ - Se = "SE", + Se = 'SE', /** Sango. */ - Sg = "SG", + Sg = 'SG', /** Sinhala. */ - Si = "SI", + Si = 'SI', /** Slovak. */ - Sk = "SK", + Sk = 'SK', /** Slovenian. */ - Sl = "SL", + Sl = 'SL', /** Shona. */ - Sn = "SN", + Sn = 'SN', /** Somali. */ - So = "SO", + So = 'SO', /** Albanian. */ - Sq = "SQ", + Sq = 'SQ', /** Serbian. */ - Sr = "SR", + Sr = 'SR', /** Sundanese. */ - Su = "SU", + Su = 'SU', /** Swedish. */ - Sv = "SV", + Sv = 'SV', /** Swahili. */ - Sw = "SW", + Sw = 'SW', /** Tamil. */ - Ta = "TA", + Ta = 'TA', /** Telugu. */ - Te = "TE", + Te = 'TE', /** Tajik. */ - Tg = "TG", + Tg = 'TG', /** Thai. */ - Th = "TH", + Th = 'TH', /** Tigrinya. */ - Ti = "TI", + Ti = 'TI', /** Turkmen. */ - Tk = "TK", + Tk = 'TK', /** Tongan. */ - To = "TO", + To = 'TO', /** Turkish. */ - Tr = "TR", + Tr = 'TR', /** Tatar. */ - Tt = "TT", + Tt = 'TT', /** Uyghur. */ - Ug = "UG", + Ug = 'UG', /** Ukrainian. */ - Uk = "UK", + Uk = 'UK', /** Urdu. */ - Ur = "UR", + Ur = 'UR', /** Uzbek. */ - Uz = "UZ", + Uz = 'UZ', /** Vietnamese. */ - Vi = "VI", + Vi = 'VI', /** Volapük. */ - Vo = "VO", + Vo = 'VO', /** Wolof. */ - Wo = "WO", + Wo = 'WO', /** Xhosa. */ - Xh = "XH", + Xh = 'XH', /** Yiddish. */ - Yi = "YI", + Yi = 'YI', /** Yoruba. */ - Yo = "YO", + Yo = 'YO', /** Chinese. */ - Zh = "ZH", + Zh = 'ZH', /** Chinese (Simplified). */ - ZhCn = "ZH_CN", + ZhCn = 'ZH_CN', /** Chinese (Traditional). */ - ZhTw = "ZH_TW", + ZhTw = 'ZH_TW', /** Zulu. */ - Zu = "ZU", + Zu = 'ZU' } /** @@ -2293,71 +2270,77 @@ export enum LanguageCode { * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTime = { - __typename?: "LocalTime"; + __typename?: 'LocalTime'; /** The current date relative to the parent object. */ - date: Scalars["Date"]["output"]; + date: Scalars['Date']['output']; /** Returns true if the current date and time is at or past the given date and time, and false otherwise. */ - dateTimeAfter: Scalars["Boolean"]["output"]; + dateTimeAfter: Scalars['Boolean']['output']; /** Returns true if the current date and time is before the given date and time, and false otherwise. */ - dateTimeBefore: Scalars["Boolean"]["output"]; + dateTimeBefore: Scalars['Boolean']['output']; /** Returns true if the current date and time is between the two given date and times, and false otherwise. */ - dateTimeBetween: Scalars["Boolean"]["output"]; + dateTimeBetween: Scalars['Boolean']['output']; /** Returns true if the current time is at or past the given time, and false otherwise. */ - timeAfter: Scalars["Boolean"]["output"]; + timeAfter: Scalars['Boolean']['output']; /** Returns true if the current time is at or past the given time, and false otherwise. */ - timeBefore: Scalars["Boolean"]["output"]; + timeBefore: Scalars['Boolean']['output']; /** Returns true if the current time is between the two given times, and false otherwise. */ - timeBetween: Scalars["Boolean"]["output"]; + timeBetween: Scalars['Boolean']['output']; }; + /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTimeDateTimeAfterArgs = { - dateTime: Scalars["DateTimeWithoutTimezone"]["input"]; + dateTime: Scalars['DateTimeWithoutTimezone']['input']; }; + /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTimeDateTimeBeforeArgs = { - dateTime: Scalars["DateTimeWithoutTimezone"]["input"]; + dateTime: Scalars['DateTimeWithoutTimezone']['input']; }; + /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTimeDateTimeBetweenArgs = { - endDateTime: Scalars["DateTimeWithoutTimezone"]["input"]; - startDateTime: Scalars["DateTimeWithoutTimezone"]["input"]; + endDateTime: Scalars['DateTimeWithoutTimezone']['input']; + startDateTime: Scalars['DateTimeWithoutTimezone']['input']; }; + /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTimeTimeAfterArgs = { - time: Scalars["TimeWithoutTimezone"]["input"]; + time: Scalars['TimeWithoutTimezone']['input']; }; + /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTimeTimeBeforeArgs = { - time: Scalars["TimeWithoutTimezone"]["input"]; + time: Scalars['TimeWithoutTimezone']['input']; }; + /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). */ export type LocalTimeTimeBetweenArgs = { - endTime: Scalars["TimeWithoutTimezone"]["input"]; - startTime: Scalars["TimeWithoutTimezone"]["input"]; + endTime: Scalars['TimeWithoutTimezone']['input']; + startTime: Scalars['TimeWithoutTimezone']['input']; }; /** @@ -2367,7 +2350,7 @@ export type LocalTimeTimeBetweenArgs = { * products in a store. */ export type Localization = { - __typename?: "Localization"; + __typename?: 'Localization'; /** * The country for which the store is customized, reflecting local preferences and regulations. * Localization might influence the language, currency, and product offerings available in a store to enhance @@ -2393,102 +2376,102 @@ export type Localization = { * identification numbers. */ export type LocalizedField = { - __typename?: "LocalizedField"; + __typename?: 'LocalizedField'; /** The key of the localized field. */ key: LocalizedFieldKey; /** The title of the localized field. */ - title: Scalars["String"]["output"]; + title: Scalars['String']['output']; /** The value of the localized field. */ - value?: Maybe; + value?: Maybe; }; /** Unique key identifying localized fields. */ export enum LocalizedFieldKey { /** Localized field key 'shipping_credential_br' for country Brazil. */ - ShippingCredentialBr = "SHIPPING_CREDENTIAL_BR", + ShippingCredentialBr = 'SHIPPING_CREDENTIAL_BR', /** Localized field key 'shipping_credential_cl' for country Chile. */ - ShippingCredentialCl = "SHIPPING_CREDENTIAL_CL", + ShippingCredentialCl = 'SHIPPING_CREDENTIAL_CL', /** Localized field key 'shipping_credential_cn' for country China. */ - ShippingCredentialCn = "SHIPPING_CREDENTIAL_CN", + ShippingCredentialCn = 'SHIPPING_CREDENTIAL_CN', /** Localized field key 'shipping_credential_co' for country Colombia. */ - ShippingCredentialCo = "SHIPPING_CREDENTIAL_CO", + ShippingCredentialCo = 'SHIPPING_CREDENTIAL_CO', /** Localized field key 'shipping_credential_cr' for country Costa Rica. */ - ShippingCredentialCr = "SHIPPING_CREDENTIAL_CR", + ShippingCredentialCr = 'SHIPPING_CREDENTIAL_CR', /** Localized field key 'shipping_credential_ec' for country Ecuador. */ - ShippingCredentialEc = "SHIPPING_CREDENTIAL_EC", + ShippingCredentialEc = 'SHIPPING_CREDENTIAL_EC', /** Localized field key 'shipping_credential_es' for country Spain. */ - ShippingCredentialEs = "SHIPPING_CREDENTIAL_ES", + ShippingCredentialEs = 'SHIPPING_CREDENTIAL_ES', /** Localized field key 'shipping_credential_gt' for country Guatemala. */ - ShippingCredentialGt = "SHIPPING_CREDENTIAL_GT", + ShippingCredentialGt = 'SHIPPING_CREDENTIAL_GT', /** Localized field key 'shipping_credential_id' for country Indonesia. */ - ShippingCredentialId = "SHIPPING_CREDENTIAL_ID", + ShippingCredentialId = 'SHIPPING_CREDENTIAL_ID', /** Localized field key 'shipping_credential_kr' for country South Korea. */ - ShippingCredentialKr = "SHIPPING_CREDENTIAL_KR", + ShippingCredentialKr = 'SHIPPING_CREDENTIAL_KR', /** Localized field key 'shipping_credential_mx' for country Mexico. */ - ShippingCredentialMx = "SHIPPING_CREDENTIAL_MX", + ShippingCredentialMx = 'SHIPPING_CREDENTIAL_MX', /** Localized field key 'shipping_credential_my' for country Malaysia. */ - ShippingCredentialMy = "SHIPPING_CREDENTIAL_MY", + ShippingCredentialMy = 'SHIPPING_CREDENTIAL_MY', /** Localized field key 'shipping_credential_pe' for country Peru. */ - ShippingCredentialPe = "SHIPPING_CREDENTIAL_PE", + ShippingCredentialPe = 'SHIPPING_CREDENTIAL_PE', /** Localized field key 'shipping_credential_pt' for country Portugal. */ - ShippingCredentialPt = "SHIPPING_CREDENTIAL_PT", + ShippingCredentialPt = 'SHIPPING_CREDENTIAL_PT', /** Localized field key 'shipping_credential_py' for country Paraguay. */ - ShippingCredentialPy = "SHIPPING_CREDENTIAL_PY", + ShippingCredentialPy = 'SHIPPING_CREDENTIAL_PY', /** Localized field key 'shipping_credential_tr' for country Turkey. */ - ShippingCredentialTr = "SHIPPING_CREDENTIAL_TR", + ShippingCredentialTr = 'SHIPPING_CREDENTIAL_TR', /** Localized field key 'shipping_credential_tw' for country Taiwan. */ - ShippingCredentialTw = "SHIPPING_CREDENTIAL_TW", + ShippingCredentialTw = 'SHIPPING_CREDENTIAL_TW', /** Localized field key 'shipping_credential_type_co' for country Colombia. */ - ShippingCredentialTypeCo = "SHIPPING_CREDENTIAL_TYPE_CO", + ShippingCredentialTypeCo = 'SHIPPING_CREDENTIAL_TYPE_CO', /** Localized field key 'tax_credential_br' for country Brazil. */ - TaxCredentialBr = "TAX_CREDENTIAL_BR", + TaxCredentialBr = 'TAX_CREDENTIAL_BR', /** Localized field key 'tax_credential_cl' for country Chile. */ - TaxCredentialCl = "TAX_CREDENTIAL_CL", + TaxCredentialCl = 'TAX_CREDENTIAL_CL', /** Localized field key 'tax_credential_co' for country Colombia. */ - TaxCredentialCo = "TAX_CREDENTIAL_CO", + TaxCredentialCo = 'TAX_CREDENTIAL_CO', /** Localized field key 'tax_credential_cr' for country Costa Rica. */ - TaxCredentialCr = "TAX_CREDENTIAL_CR", + TaxCredentialCr = 'TAX_CREDENTIAL_CR', /** Localized field key 'tax_credential_ec' for country Ecuador. */ - TaxCredentialEc = "TAX_CREDENTIAL_EC", + TaxCredentialEc = 'TAX_CREDENTIAL_EC', /** Localized field key 'tax_credential_es' for country Spain. */ - TaxCredentialEs = "TAX_CREDENTIAL_ES", + TaxCredentialEs = 'TAX_CREDENTIAL_ES', /** Localized field key 'tax_credential_gt' for country Guatemala. */ - TaxCredentialGt = "TAX_CREDENTIAL_GT", + TaxCredentialGt = 'TAX_CREDENTIAL_GT', /** Localized field key 'tax_credential_id' for country Indonesia. */ - TaxCredentialId = "TAX_CREDENTIAL_ID", + TaxCredentialId = 'TAX_CREDENTIAL_ID', /** Localized field key 'tax_credential_it' for country Italy. */ - TaxCredentialIt = "TAX_CREDENTIAL_IT", + TaxCredentialIt = 'TAX_CREDENTIAL_IT', /** Localized field key 'tax_credential_mx' for country Mexico. */ - TaxCredentialMx = "TAX_CREDENTIAL_MX", + TaxCredentialMx = 'TAX_CREDENTIAL_MX', /** Localized field key 'tax_credential_my' for country Malaysia. */ - TaxCredentialMy = "TAX_CREDENTIAL_MY", + TaxCredentialMy = 'TAX_CREDENTIAL_MY', /** Localized field key 'tax_credential_pe' for country Peru. */ - TaxCredentialPe = "TAX_CREDENTIAL_PE", + TaxCredentialPe = 'TAX_CREDENTIAL_PE', /** Localized field key 'tax_credential_pt' for country Portugal. */ - TaxCredentialPt = "TAX_CREDENTIAL_PT", + TaxCredentialPt = 'TAX_CREDENTIAL_PT', /** Localized field key 'tax_credential_py' for country Paraguay. */ - TaxCredentialPy = "TAX_CREDENTIAL_PY", + TaxCredentialPy = 'TAX_CREDENTIAL_PY', /** Localized field key 'tax_credential_tr' for country Turkey. */ - TaxCredentialTr = "TAX_CREDENTIAL_TR", + TaxCredentialTr = 'TAX_CREDENTIAL_TR', /** Localized field key 'tax_credential_type_co' for country Colombia. */ - TaxCredentialTypeCo = "TAX_CREDENTIAL_TYPE_CO", + TaxCredentialTypeCo = 'TAX_CREDENTIAL_TYPE_CO', /** Localized field key 'tax_credential_type_mx' for country Mexico. */ - TaxCredentialTypeMx = "TAX_CREDENTIAL_TYPE_MX", + TaxCredentialTypeMx = 'TAX_CREDENTIAL_TYPE_MX', /** Localized field key 'tax_credential_use_mx' for country Mexico. */ - TaxCredentialUseMx = "TAX_CREDENTIAL_USE_MX", + TaxCredentialUseMx = 'TAX_CREDENTIAL_USE_MX', /** Localized field key 'tax_email_it' for country Italy. */ - TaxEmailIt = "TAX_EMAIL_IT", + TaxEmailIt = 'TAX_EMAIL_IT' } /** Represents the location where the inventory resides. */ export type Location = HasMetafields & { - __typename?: "Location"; + __typename?: 'Location'; /** The address of this location. */ address: LocationAddress; /** The location handle. */ - handle: Scalars["Handle"]["output"]; + handle: Scalars['Handle']['output']; /** The location id. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -2498,78 +2481,79 @@ export type Location = HasMetafields & { */ metafield?: Maybe; /** The name of the location. */ - name: Scalars["String"]["output"]; + name: Scalars['String']['output']; }; + /** Represents the location where the inventory resides. */ export type LocationMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** Represents the address of a location. */ export type LocationAddress = { - __typename?: "LocationAddress"; + __typename?: 'LocationAddress'; /** The first line of the address for the location. */ - address1?: Maybe; + address1?: Maybe; /** The second line of the address for the location. */ - address2?: Maybe; + address2?: Maybe; /** The city of the location. */ - city?: Maybe; + city?: Maybe; /** The country of the location. */ - country?: Maybe; + country?: Maybe; /** The country code of the location. */ - countryCode?: Maybe; + countryCode?: Maybe; /** A formatted version of the address for the location. */ - formatted: Array; + formatted: Array; /** The approximate latitude coordinates of the location. */ - latitude?: Maybe; + latitude?: Maybe; /** The approximate longitude coordinates of the location. */ - longitude?: Maybe; + longitude?: Maybe; /** The phone number of the location. */ - phone?: Maybe; + phone?: Maybe; /** The province of the location. */ - province?: Maybe; + province?: Maybe; /** The code for the province, state, or district of the address of the location. */ - provinceCode?: Maybe; + provinceCode?: Maybe; /** The ZIP code of the location. */ - zip?: Maybe; + zip?: Maybe; }; /** Represents a mailing address. */ export type MailingAddress = { - __typename?: "MailingAddress"; + __typename?: 'MailingAddress'; /** The first line of the address. Typically the street address or PO Box number. */ - address1?: Maybe; + address1?: Maybe; /** The second line of the address. Typically the number of the apartment, suite, or unit. */ - address2?: Maybe; + address2?: Maybe; /** The name of the city, district, village, or town. */ - city?: Maybe; + city?: Maybe; /** The name of the customer's company or organization. */ - company?: Maybe; + company?: Maybe; /** The two-letter code for the country of the address. For example, US. */ countryCode?: Maybe; /** The first name of the customer. */ - firstName?: Maybe; + firstName?: Maybe; /** The last name of the customer. */ - lastName?: Maybe; + lastName?: Maybe; /** The approximate latitude of the address. */ - latitude?: Maybe; + latitude?: Maybe; /** The approximate longitude of the address. */ - longitude?: Maybe; + longitude?: Maybe; /** * The market of the address. * @deprecated This `market` field will be removed in a future version of the API. */ market?: Maybe; /** The full name of the customer, based on firstName and lastName. */ - name?: Maybe; + name?: Maybe; /** A unique phone number for the customer. Formatted using E.164 standard. For example, +16135551111. */ - phone?: Maybe; + phone?: Maybe; /** The alphanumeric code for the region. For example, ON. */ - provinceCode?: Maybe; + provinceCode?: Maybe; /** The zip or postal code of the address. */ - zip?: Maybe; + zip?: Maybe; }; /** @@ -2581,11 +2565,11 @@ export type MailingAddress = { * or [add market-specific domains or subfolders](https://shopify.dev/api/admin-graphql/current/objects/MarketWebPresence). */ export type Market = HasMetafields & { - __typename?: "Market"; + __typename?: 'Market'; /** A human-readable unique string for the market automatically generated from its title. */ - handle: Scalars["Handle"]["output"]; + handle: Scalars['Handle']['output']; /** A globally-unique identifier. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -2598,6 +2582,7 @@ export type Market = HasMetafields & { regions: Array; }; + /** * A market is a group of one or more regions that you want to target for international sales. * By creating a market, you can configure a distinct, localized shopping experience for @@ -2607,23 +2592,23 @@ export type Market = HasMetafields & { * or [add market-specific domains or subfolders](https://shopify.dev/api/admin-graphql/current/objects/MarketWebPresence). */ export type MarketMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** Represents a region. */ export type MarketRegion = { /** The name of the region in the language of the current localization. */ - name?: Maybe; + name?: Maybe; }; /** A country which comprises a market. */ export type MarketRegionCountry = MarketRegion & { - __typename?: "MarketRegionCountry"; + __typename?: 'MarketRegionCountry'; /** The two-letter code for the country. */ code: CountryCode; /** The country name in the language of the current localization. */ - name: Scalars["String"]["output"]; + name: Scalars['String']['output']; }; /** @@ -2649,19 +2634,19 @@ export type Merchandise = CustomProduct | ProductVariant; * enables you to customize the checkout experience. */ export type Metafield = { - __typename?: "Metafield"; + __typename?: 'Metafield'; /** The data that's stored in the metafield, using JSON format. */ - jsonValue: Scalars["JSON"]["output"]; + jsonValue: Scalars['JSON']['output']; /** * The [type of data](https://shopify.dev/apps/metafields/types) that the metafield stores in * the `value` field. */ - type: Scalars["String"]["output"]; + type: Scalars['String']['output']; /** * The data that's stored in the metafield. The data is always stored as a string, * regardless of the [metafield's type](https://shopify.dev/apps/metafields/types). */ - value: Scalars["String"]["output"]; + value: Scalars['String']['output']; }; /** @@ -2670,12 +2655,12 @@ export type Metafield = { * values throughout the API. For example, 12.99 USD. */ export type MoneyV2 = { - __typename?: "MoneyV2"; + __typename?: 'MoneyV2'; /** * A monetary value in decimal format, allowing for precise representation of cents or fractional * currency. For example, 12.99. */ - amount: Scalars["Decimal"]["output"]; + amount: Scalars['Decimal']['output']; /** * The three-letter currency code that represents a world currency used in a store. Currency codes * include standard [standard ISO 4217 codes](https://en.wikipedia.org/wiki/ISO_4217), legacy codes, @@ -2686,32 +2671,36 @@ export type MoneyV2 = { /** The root mutation for the API. */ export type MutationRoot = { - __typename?: "MutationRoot"; + __typename?: 'MutationRoot'; /** Handles the Function result for the cart.delivery-options.discounts.generate.fetch target. */ - cartDeliveryOptionsDiscountsGenerateFetch: Scalars["Void"]["output"]; + cartDeliveryOptionsDiscountsGenerateFetch: Scalars['Void']['output']; /** Handles the Function result for the cart.delivery-options.discounts.generate.run target. */ - cartDeliveryOptionsDiscountsGenerateRun: Scalars["Void"]["output"]; + cartDeliveryOptionsDiscountsGenerateRun: Scalars['Void']['output']; /** Handles the Function result for the cart.lines.discounts.generate.fetch target. */ - cartLinesDiscountsGenerateFetch: Scalars["Void"]["output"]; + cartLinesDiscountsGenerateFetch: Scalars['Void']['output']; /** Handles the Function result for the cart.lines.discounts.generate.run target. */ - cartLinesDiscountsGenerateRun: Scalars["Void"]["output"]; + cartLinesDiscountsGenerateRun: Scalars['Void']['output']; }; + /** The root mutation for the API. */ export type MutationRootCartDeliveryOptionsDiscountsGenerateFetchArgs = { result: CartDeliveryOptionsDiscountsGenerateFetchResult; }; + /** The root mutation for the API. */ export type MutationRootCartDeliveryOptionsDiscountsGenerateRunArgs = { result: CartDeliveryOptionsDiscountsGenerateRunResult; }; + /** The root mutation for the API. */ export type MutationRootCartLinesDiscountsGenerateFetchArgs = { result: CartLinesDiscountsGenerateFetchResult; }; + /** The root mutation for the API. */ export type MutationRootCartLinesDiscountsGenerateRunArgs = { result: CartLinesDiscountsGenerateRunResult; @@ -2733,7 +2722,7 @@ export type OrderDiscountCandidate = { * message, such as "Save 20% on all t-shirts." If a discount code is entered, * the notification displays the code instead. */ - message?: InputMaybe; + message?: InputMaybe; /** The targets of the order discount candidate. */ targets: Array; /** The value of the order discount candidate. */ @@ -2747,20 +2736,21 @@ export type OrderDiscountCandidateTarget = * order before any taxes, shipping fees, or discounts are applied. For example, if a customer places an order * for a t-shirt and a pair of shoes, then the subtotal is the sum of the prices of those items. */ - { orderSubtotal: OrderSubtotalTarget }; + { orderSubtotal: OrderSubtotalTarget; }; /** The value of the order discount candidate. */ export type OrderDiscountCandidateValue = /** A fixed amount value. */ - | { fixedAmount: FixedAmount; percentage?: never } /** A percentage value. */ - | { fixedAmount?: never; percentage: Percentage }; + { fixedAmount: FixedAmount; percentage?: never; } + | /** A percentage value. */ + { fixedAmount?: never; percentage: Percentage; }; /** The strategy that's applied to the list of order discount candidates. */ export enum OrderDiscountSelectionStrategy { /** Only apply the first order discount candidate with conditions that are satisfied. */ - First = "FIRST", + First = 'FIRST', /** Only apply the order discount candidate that offers the maximum reduction. */ - Maximum = "MAXIMUM", + Maximum = 'MAXIMUM' } /** An operation that applies order discounts to a cart that share a selection strategy. */ @@ -2774,9 +2764,9 @@ export type OrderDiscountsAddOperation = { /** The condition for checking the minimum subtotal amount of the order. */ export type OrderMinimumSubtotal = { /** Cart line IDs with a merchandise line price that's excluded to calculate the minimum subtotal amount of the order. */ - excludedCartLineIds: Array; + excludedCartLineIds: Array; /** The minimum subtotal amount of the order to be eligible for the discount in the shop's currency. */ - minimumAmount: Scalars["Decimal"]["input"]; + minimumAmount: Scalars['Decimal']['input']; }; /** @@ -2789,7 +2779,7 @@ export type OrderSubtotalTarget = { * The list of excluded cart line IDs. These cart lines are excluded from the order * subtotal calculation when calculating the maximum value of the discount. */ - excludedCartLineIds: Array; + excludedCartLineIds: Array; }; /** A percentage value. */ @@ -2799,7 +2789,7 @@ export type Percentage = { * * The value is validated against: >= 0 and <= 100. */ - value: Scalars["Decimal"]["input"]; + value: Scalars['Decimal']['input']; }; /** @@ -2810,25 +2800,25 @@ export type Percentage = { * Learn more about [managing products in a merchant's store](https://help.shopify.com/manual/products). */ export type Product = HasMetafields & { - __typename?: "Product"; + __typename?: 'Product'; /** * A unique, human-readable string of the product's title. A handle can contain letters, hyphens (`-`), and * numbers, but not spaces. The handle is used in the online store URL for the product. For example, if a product * is titled "Black Sunglasses", then the handle is `black-sunglasses`. */ - handle: Scalars["Handle"]["output"]; + handle: Scalars['Handle']['output']; /** * Whether the product is associated with any of the specified tags. The product must have at least one tag * from the list to return `true`. */ - hasAnyTag: Scalars["Boolean"]["output"]; + hasAnyTag: Scalars['Boolean']['output']; /** Whether the product is associated with the specified tags. */ hasTags: Array; /** * A [globally-unique ID](https://shopify.dev/docs/api/usage/gids) * for the product. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** * Whether the product is in any of the specified collections. The product must be in at least one collection * from the list to return `true`. @@ -2837,7 +2827,7 @@ export type Product = HasMetafields & { * categories, which makes it easy for customers to find them. For example, an athletics store might create * different collections for running attire and accessories. */ - inAnyCollection: Scalars["Boolean"]["output"]; + inAnyCollection: Scalars['Boolean']['output']; /** * Whether the product is in the specified collections. The product must be in all of the collections in the * list to return `true`. @@ -2848,7 +2838,7 @@ export type Product = HasMetafields & { */ inCollections: Array; /** Whether the product is a gift card. */ - isGiftCard: Scalars["Boolean"]["output"]; + isGiftCard: Scalars['Boolean']['output']; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -2862,17 +2852,18 @@ export type Product = HasMetafields & { * ones available in Shopify's * [standard product categories](https://help.shopify.com/manual/products/details/product-type). */ - productType?: Maybe; + productType?: Maybe; /** * The localized name for the product that displays to customers. The title is used to construct the product's * handle, which is a unique, human-readable string of the product's title. For example, if a product is titled * "Black Sunglasses", then the handle is `black-sunglasses`. */ - title: Scalars["String"]["output"]; + title: Scalars['String']['output']; /** The name of the product's vendor. */ - vendor?: Maybe; + vendor?: Maybe; }; + /** * The goods and services that merchants offer to customers. Products can include details such as * title, vendor, and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). @@ -2881,9 +2872,10 @@ export type Product = HasMetafields & { * Learn more about [managing products in a merchant's store](https://help.shopify.com/manual/products). */ export type ProductHasAnyTagArgs = { - tags?: Array; + tags?: Array; }; + /** * The goods and services that merchants offer to customers. Products can include details such as * title, vendor, and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). @@ -2892,9 +2884,10 @@ export type ProductHasAnyTagArgs = { * Learn more about [managing products in a merchant's store](https://help.shopify.com/manual/products). */ export type ProductHasTagsArgs = { - tags?: Array; + tags?: Array; }; + /** * The goods and services that merchants offer to customers. Products can include details such as * title, vendor, and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). @@ -2903,9 +2896,10 @@ export type ProductHasTagsArgs = { * Learn more about [managing products in a merchant's store](https://help.shopify.com/manual/products). */ export type ProductInAnyCollectionArgs = { - ids?: Array; + ids?: Array; }; + /** * The goods and services that merchants offer to customers. Products can include details such as * title, vendor, and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). @@ -2914,9 +2908,10 @@ export type ProductInAnyCollectionArgs = { * Learn more about [managing products in a merchant's store](https://help.shopify.com/manual/products). */ export type ProductInCollectionsArgs = { - ids?: Array; + ids?: Array; }; + /** * The goods and services that merchants offer to customers. Products can include details such as * title, vendor, and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). @@ -2925,8 +2920,8 @@ export type ProductInCollectionsArgs = { * Learn more about [managing products in a merchant's store](https://help.shopify.com/manual/products). */ export type ProductMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** The target and value of the discount to be applied to a cart line. */ @@ -2943,7 +2938,7 @@ export type ProductDiscountCandidate = { * message, such as "Save 20% on all t-shirts." If a discount code is entered, * the notification displays the code instead. */ - message?: InputMaybe; + message?: InputMaybe; /** The targets of the discount to be applied to a cart line. */ targets: Array; /** @@ -2963,14 +2958,14 @@ export type ProductDiscountCandidateFixedAmount = { * The [fixed-amount](https://help.shopify.com/manual/international/pricing/discounts) value of the discount to be applied to a cart line, in the currency of the * cart. The amount must be greater than or equal to 0. */ - amount: Scalars["Decimal"]["input"]; + amount: Scalars['Decimal']['input']; /** * Whether to apply the value of each eligible discount to each eligible cart line. * * The default value is `false`, which causes the value to be applied once across the entitled items. * When the value is `true`, the value will be applied to each of the entitled items. */ - appliesToEachItem?: InputMaybe; + appliesToEachItem?: InputMaybe; }; /** @@ -2988,7 +2983,7 @@ export type ProductDiscountCandidateTarget = * customer's cart that represents a single unit of a product variant. For example, if a customer adds two * different sizes of the same t-shirt to their cart, then each size is represented as a separate cart line. */ - { cartLine: CartLineTarget }; + { cartLine: CartLineTarget; }; /** The value of the discount candidate to be applied to a cart line. */ export type ProductDiscountCandidateValue = @@ -2996,20 +2991,18 @@ export type ProductDiscountCandidateValue = * The [fixed-amount](https://help.shopify.com/manual/international/pricing/discounts) value of the discount to be applied to a cart line. For example, if the cart * total is $100 and the discount is $10, then the fixed amount is $10. */ - | { - fixedAmount: ProductDiscountCandidateFixedAmount; - percentage?: never; - } /** A percentage value. */ - | { fixedAmount?: never; percentage: Percentage }; + { fixedAmount: ProductDiscountCandidateFixedAmount; percentage?: never; } + | /** A percentage value. */ + { fixedAmount?: never; percentage: Percentage; }; /** The selection strategy that's applied to the list of discounts that are eligible for cart lines. */ export enum ProductDiscountSelectionStrategy { /** Apply all the discount candidates to eligible cart lines. This doesn't override discount combination or stacking rules. */ - All = "ALL", + All = 'ALL', /** Apply the first discount candidate to cart lines that satisfies conditions. */ - First = "FIRST", + First = 'FIRST', /** Apply the discount to the cart line that offers the maximum reduction. */ - Maximum = "MAXIMUM", + Maximum = 'MAXIMUM' } /** An operation that applies product discounts to a cart that share a selection strategy. */ @@ -3026,12 +3019,12 @@ export type ProductDiscountsAddOperation = { * product variant and a large, blue t-shirt would be another. */ export type ProductVariant = HasMetafields & { - __typename?: "ProductVariant"; + __typename?: 'ProductVariant'; /** * A [globally-unique ID](https://shopify.dev/docs/api/usage/gids) * for the product variant. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -3052,29 +3045,30 @@ export type ProductVariant = HasMetafields & { * digital gift card doesn't need to be shipped, but a t-shirt does * need to be shipped. */ - requiresShipping: Scalars["Boolean"]["output"]; + requiresShipping: Scalars['Boolean']['output']; /** * A case-sensitive identifier for the product variant in the merchant's store. For example, `"BBC-1"`. * A product variant must have a SKU to be connected to a * [fulfillment service](https://shopify.dev/docs/apps/build/orders-fulfillment/fulfillment-service-apps/build-for-fulfillment-services). */ - sku?: Maybe; + sku?: Maybe; /** The localized name for the product variant that displays to customers. */ - title?: Maybe; + title?: Maybe; /** The product variant's weight, in the system of measurement set in the `weightUnit` field. */ - weight?: Maybe; + weight?: Maybe; /** The unit of measurement for weight. */ weightUnit: WeightUnit; }; + /** * A specific version of a product that comes in more than one option, such as size or color. For example, * if a merchant sells t-shirts with options for size and color, then a small, blue t-shirt would be one * product variant and a large, blue t-shirt would be another. */ export type ProductVariantMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** @@ -3082,7 +3076,7 @@ export type ProductVariantMetafieldArgs = { * Used to manage and track purchases made by businesses rather than individual customers. */ export type PurchasingCompany = { - __typename?: "PurchasingCompany"; + __typename?: 'PurchasingCompany'; /** The company associated to the order or draft order. */ company: Company; /** The company contact associated to the order or draft order. */ @@ -3093,11 +3087,11 @@ export type PurchasingCompany = { /** Represents how products and variants can be sold and purchased. */ export type SellingPlan = HasMetafields & { - __typename?: "SellingPlan"; + __typename?: 'SellingPlan'; /** The description of the selling plan. */ - description?: Maybe; + description?: Maybe; /** A globally-unique identifier. */ - id: Scalars["ID"]["output"]; + id: Scalars['ID']['output']; /** * A [custom field](https://shopify.dev/docs/apps/build/custom-data) that stores additional information * about a Shopify resource, such as products, orders, and @@ -3107,15 +3101,16 @@ export type SellingPlan = HasMetafields & { */ metafield?: Maybe; /** The name of the selling plan. For example, '6 weeks of prepaid granola, delivered weekly'. */ - name: Scalars["String"]["output"]; + name: Scalars['String']['output']; /** Whether purchasing the selling plan will result in multiple deliveries. */ - recurringDeliveries: Scalars["Boolean"]["output"]; + recurringDeliveries: Scalars['Boolean']['output']; }; + /** Represents how products and variants can be sold and purchased. */ export type SellingPlanMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** @@ -3124,7 +3119,7 @@ export type SellingPlanMetafieldArgs = { * variant when purchased with a selling plan. */ export type SellingPlanAllocation = { - __typename?: "SellingPlanAllocation"; + __typename?: 'SellingPlanAllocation'; /** * 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 @@ -3144,7 +3139,7 @@ export type SellingPlanAllocation = { /** The resulting prices for variants when they're purchased with a specific selling plan. */ export type SellingPlanAllocationPriceAdjustment = { - __typename?: "SellingPlanAllocationPriceAdjustment"; + __typename?: 'SellingPlanAllocationPriceAdjustment'; /** * 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 @@ -3164,7 +3159,7 @@ export type SellingPlanAllocationPriceAdjustment = { * and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). */ export type Shop = HasMetafields & { - __typename?: "Shop"; + __typename?: 'Shop'; /** * The current time based on the * [store's timezone setting](https://help.shopify.com/manual/intro-to-shopify/initial-setup/setup-business-settings). @@ -3180,90 +3175,44 @@ export type Shop = HasMetafields & { metafield?: Maybe; }; + /** * Information about the store, including the store's timezone setting * and custom data stored in [metafields](https://shopify.dev/docs/apps/build/custom-data). */ export type ShopMetafieldArgs = { - key: Scalars["String"]["input"]; - namespace?: InputMaybe; + key: Scalars['String']['input']; + namespace?: InputMaybe; }; /** Units of measurement for weight. */ export enum WeightUnit { /** Metric system unit of mass. */ - Grams = "GRAMS", + Grams = 'GRAMS', /** 1 kilogram equals 1000 grams. */ - Kilograms = "KILOGRAMS", + Kilograms = 'KILOGRAMS', /** Imperial system unit of mass. */ - Ounces = "OUNCES", + Ounces = 'OUNCES', /** 1 pound equals 16 ounces. */ - Pounds = "POUNDS", + Pounds = 'POUNDS' } -export type InputDeliveryFetchVariables = Exact<{ [key: string]: never }>; - -export type InputDeliveryFetch = { - __typename?: "Input"; - enteredDiscountCodes: Array<{ - __typename?: "EnteredDiscountCode"; - code: string; - }>; -}; - -export type InputDeliveryRunVariables = Exact<{ [key: string]: never }>; - -export type InputDeliveryRun = { - __typename?: "Input"; - fetchResult?: { - __typename?: "HttpResponse"; - jsonBody?: any | null; - status: number; - } | null; - cart: { - __typename?: "Cart"; - buyerIdentity?: { - __typename?: "BuyerIdentity"; - email?: string | null; - } | null; - deliveryGroups: Array<{ __typename?: "CartDeliveryGroup"; id: string }>; - }; - discount: { __typename?: "Discount"; discountClasses: Array }; -}; - -export type InputCartFetchVariables = Exact<{ [key: string]: never }>; - -export type InputCartFetch = { - __typename?: "Input"; - enteredDiscountCodes: Array<{ - __typename?: "EnteredDiscountCode"; - code: string; - }>; -}; - -export type InputCartRunVariables = Exact<{ [key: string]: never }>; - -export type InputCartRun = { - __typename?: "Input"; - fetchResult?: { - __typename?: "HttpResponse"; - jsonBody?: any | null; - status: number; - } | null; - cart: { - __typename?: "Cart"; - buyerIdentity?: { - __typename?: "BuyerIdentity"; - email?: string | null; - } | null; - lines: Array<{ - __typename?: "CartLine"; - id: string; - cost: { - __typename?: "CartLineCost"; - subtotalAmount: { __typename?: "MoneyV2"; amount: any }; - }; - }>; - }; - discount: { __typename?: "Discount"; discountClasses: Array }; -}; +export type InputDeliveryFetchVariables = Exact<{ [key: string]: never; }>; + + +export type InputDeliveryFetch = { __typename?: 'Input', enteredDiscountCodes: Array<{ __typename?: 'EnteredDiscountCode', code: string }> }; + +export type InputDeliveryRunVariables = Exact<{ [key: string]: never; }>; + + +export type InputDeliveryRun = { __typename?: 'Input', fetchResult?: { __typename?: 'HttpResponse', jsonBody?: any | null, status: number } | null, cart: { __typename?: 'Cart', buyerIdentity?: { __typename?: 'BuyerIdentity', email?: string | null } | null, deliveryGroups: Array<{ __typename?: 'CartDeliveryGroup', id: string }> }, discount: { __typename?: 'Discount', discountClasses: Array } }; + +export type InputCartFetchVariables = Exact<{ [key: string]: never; }>; + + +export type InputCartFetch = { __typename?: 'Input', enteredDiscountCodes: Array<{ __typename?: 'EnteredDiscountCode', code: string }> }; + +export type InputCartRunVariables = Exact<{ [key: string]: never; }>; + + +export type InputCartRun = { __typename?: 'Input', fetchResult?: { __typename?: 'HttpResponse', jsonBody?: any | null, status: number } | null, cart: { __typename?: 'Cart', buyerIdentity?: { __typename?: 'BuyerIdentity', email?: string | null } | null, lines: Array<{ __typename?: 'CartLine', id: string, cost: { __typename?: 'CartLineCost', subtotalAmount: { __typename?: 'MoneyV2', amount: any } } }> }, discount: { __typename?: 'Discount', discountClasses: Array } }; diff --git a/examples/javascript/network-access/extensions/discount-function/locales/en.default.json b/examples/javascript/network-access/extensions/discount-function/locales/en.default.json index 890eb71..c7d3eb2 100644 --- a/examples/javascript/network-access/extensions/discount-function/locales/en.default.json +++ b/examples/javascript/network-access/extensions/discount-function/locales/en.default.json @@ -1,4 +1,4 @@ { - "name": "[Example] Discount Function with Network Access (Javascript)", - "description": "Discount Function with Network Access (Javascript)" + "name": "[Example] Discounts with network access (JavaScript)", + "description": "Uses network access to fetch discount operations from an external API using entered discount codes." } diff --git a/examples/javascript/network-access/extensions/discount-function/package.json b/examples/javascript/network-access/extensions/discount-function/package.json index 72ccd6c..c35014c 100644 --- a/examples/javascript/network-access/extensions/discount-function/package.json +++ b/examples/javascript/network-access/extensions/discount-function/package.json @@ -3,10 +3,10 @@ "version": "0.0.1", "license": "UNLICENSED", "scripts": { - "shopify": "npm exec -- shopify", - "typegen": "npm exec -- shopify app function typegen", - "build": "npm exec -- shopify app function build", - "preview": "npm exec -- shopify app function run", + "shopify": "pnpm exec -- shopify", + "typegen": "pnpm exec -- shopify app function typegen", + "build": "pnpm exec -- shopify app function build", + "preview": "pnpm exec -- shopify app function run", "test": "vitest run" }, "codegen": { @@ -25,9 +25,9 @@ } }, "devDependencies": { - "vitest": "4.0.9" + "vitest": "4.1.4" }, "dependencies": { - "@shopify/shopify_function": "2.0.0" + "@shopify/shopify_function": "2.0.1" } } diff --git a/examples/javascript/network-access/extensions/discount-function/schema.graphql b/examples/javascript/network-access/extensions/discount-function/schema.graphql index 9ac6de1..01fb64c 100644 --- a/examples/javascript/network-access/extensions/discount-function/schema.graphql +++ b/examples/javascript/network-access/extensions/discount-function/schema.graphql @@ -3482,13 +3482,7 @@ type Input { This input is only available in the `cart.lines.discounts.generate.fetch` and `cart.delivery-options.discounts.generate.fetch` extension targets. """ - enteredDiscountCodes: [EnteredDiscountCode!]! - @restrictTarget( - only: [ - "cart.lines.discounts.generate.fetch" - "cart.delivery-options.discounts.generate.fetch" - ] - ) + enteredDiscountCodes: [EnteredDiscountCode!]! @restrictTarget(only: ["cart.lines.discounts.generate.fetch", "cart.delivery-options.discounts.generate.fetch"]) """ The result of the fetch target. Refer to [network access](https://shopify.dev/apps/build/functions/input-output/network-access/graphql) @@ -3496,13 +3490,7 @@ type Input { `cart.lines.discounts.generate.run` and `cart.delivery-options.discounts.generate.run` extension targets. """ - fetchResult: HttpResponse - @restrictTarget( - only: [ - "cart.lines.discounts.generate.run" - "cart.delivery-options.discounts.generate.run" - ] - ) + fetchResult: HttpResponse @restrictTarget(only: ["cart.lines.discounts.generate.run", "cart.delivery-options.discounts.generate.run"]) """ The regional and language settings that determine how the Function @@ -3531,13 +3519,7 @@ type Input { This input is only available in the `cart.lines.discounts.generate.run` and `cart.delivery-options.discounts.generate.run` extension targets. """ - triggeringDiscountCode: String - @restrictTarget( - only: [ - "cart.lines.discounts.generate.run" - "cart.delivery-options.discounts.generate.run" - ] - ) + triggeringDiscountCode: String @restrictTarget(only: ["cart.lines.discounts.generate.run", "cart.delivery-options.discounts.generate.run"]) } """ @@ -4382,10 +4364,7 @@ type Localization { """ The market of the active localized experience. """ - market: Market! - @deprecated( - reason: "This `market` field will be removed in a future version of the API." - ) + market: Market! @deprecated(reason: "This `market` field will be removed in a future version of the API.") } """ @@ -4766,10 +4745,7 @@ type MailingAddress { """ The market of the address. """ - market: Market - @deprecated( - reason: "This `market` field will be removed in a future version of the API." - ) + market: Market @deprecated(reason: "This `market` field will be removed in a future version of the API.") """ The full name of the customer, based on firstName and lastName. diff --git a/examples/javascript/network-access/extensions/discount-function/src/cart_delivery_options_discounts_generate_fetch.js b/examples/javascript/network-access/extensions/discount-function/src/cart_delivery_options_discounts_generate_fetch.js index 483f99f..fab54b2 100644 --- a/examples/javascript/network-access/extensions/discount-function/src/cart_delivery_options_discounts_generate_fetch.js +++ b/examples/javascript/network-access/extensions/discount-function/src/cart_delivery_options_discounts_generate_fetch.js @@ -1,10 +1,10 @@ -import { HttpRequestMethod } from "../generated/api"; +import {HttpRequestMethod} from "../generated/api"; // [START discount-function.delivery.fetch] export function cartDeliveryOptionsDiscountsGenerateFetch(input) { - const { enteredDiscountCodes } = input; + const {enteredDiscountCodes} = input; const jsonBody = { - enteredDiscountCodes: enteredDiscountCodes.map(({ code }) => code), + enteredDiscountCodes: enteredDiscountCodes.map(({code}) => code), }; const request = { @@ -29,6 +29,6 @@ export function cartDeliveryOptionsDiscountsGenerateFetch(input) { jsonBody, }; - return { request }; + return {request}; } // [END discount-function.delivery.fetch] diff --git a/examples/javascript/network-access/extensions/discount-function/src/cart_delivery_options_discounts_generate_run.js b/examples/javascript/network-access/extensions/discount-function/src/cart_delivery_options_discounts_generate_run.js index e8bf03b..b3b431f 100644 --- a/examples/javascript/network-access/extensions/discount-function/src/cart_delivery_options_discounts_generate_run.js +++ b/examples/javascript/network-access/extensions/discount-function/src/cart_delivery_options_discounts_generate_run.js @@ -3,7 +3,7 @@ export function cartDeliveryOptionsDiscountsGenerateRun(input) { // [START discount-function.delivery.run.body] const { fetchResult, - discount: { discountClasses }, + discount: {discountClasses}, } = input; const body = fetchResult?.jsonBody; @@ -19,17 +19,17 @@ export function cartDeliveryOptionsDiscountsGenerateRun(input) { // If shipping discount class is not set, return an empty operations array if (!hasShippingDiscountClass) { - return { operations: [] }; + return {operations: []}; } // Filter operations to only include enteredDiscountCodesAccept and delivery operations - const filteredOperations = operations.filter((operation) => { + const filteredOperations = operations.filter(operation => { return ( operation.enteredDiscountCodesAccept || operation.deliveryDiscountsAdd ); }); - return { operations: filteredOperations }; + return {operations: filteredOperations}; // [END discount-function.delivery.run.body] } // [END discount-function.delivery.run] diff --git a/examples/javascript/network-access/extensions/discount-function/src/cart_lines_discounts_generate_fetch.js b/examples/javascript/network-access/extensions/discount-function/src/cart_lines_discounts_generate_fetch.js index ef4b5ef..a911645 100644 --- a/examples/javascript/network-access/extensions/discount-function/src/cart_lines_discounts_generate_fetch.js +++ b/examples/javascript/network-access/extensions/discount-function/src/cart_lines_discounts_generate_fetch.js @@ -1,10 +1,10 @@ -import { HttpRequestMethod } from "../generated/api"; +import {HttpRequestMethod} from "../generated/api"; // [START discount-function.cart.fetch] export function cartLinesDiscountsGenerateFetch(input) { - const { enteredDiscountCodes } = input; + const {enteredDiscountCodes} = input; const jsonBody = { - enteredDiscountCodes: enteredDiscountCodes.map(({ code }) => code), + enteredDiscountCodes: enteredDiscountCodes.map(({code}) => code), }; const request = { headers: [ @@ -28,6 +28,6 @@ export function cartLinesDiscountsGenerateFetch(input) { jsonBody, }; - return { request }; + return {request}; } // [END discount-function.fetch.cart] diff --git a/examples/javascript/network-access/extensions/discount-function/src/cart_lines_discounts_generate_run.js b/examples/javascript/network-access/extensions/discount-function/src/cart_lines_discounts_generate_run.js index 28833ef..735e989 100644 --- a/examples/javascript/network-access/extensions/discount-function/src/cart_lines_discounts_generate_run.js +++ b/examples/javascript/network-access/extensions/discount-function/src/cart_lines_discounts_generate_run.js @@ -3,7 +3,7 @@ export function cartLinesDiscountsGenerateRun(input) { // [START discount-function.cart.run.body] const { fetchResult, - discount: { discountClasses }, + discount: {discountClasses}, } = input; const body = fetchResult?.jsonBody; @@ -20,11 +20,11 @@ export function cartLinesDiscountsGenerateRun(input) { // If no relevant discount classes are set, return an empty operations array if (!hasOrderDiscountClass && !hasProductDiscountClass) { - return { operations: [] }; + return {operations: []}; } // Filter operations to include appropriate discounts based on set discount classes - const filteredOperations = operations.filter((operation) => { + const filteredOperations = operations.filter(operation => { // Always include discount code operations if (operation.enteredDiscountCodesAccept) { return true; @@ -43,7 +43,7 @@ export function cartLinesDiscountsGenerateRun(input) { return false; }); - return { operations: filteredOperations }; + return {operations: filteredOperations}; // [END discount-function.cart.run.body] } // [END discount-function.cart.run] diff --git a/examples/javascript/network-access/pnpm-workspace.yaml b/examples/javascript/network-access/pnpm-workspace.yaml index e8a5c94..2115b27 100644 --- a/examples/javascript/network-access/pnpm-workspace.yaml +++ b/examples/javascript/network-access/pnpm-workspace.yaml @@ -1,2 +1,2 @@ packages: - - "extensions/*" + - 'extensions/*' diff --git a/examples/mock-http-server/app/root.jsx b/examples/mock-http-server/app/root.jsx index c654044..9a23162 100644 --- a/examples/mock-http-server/app/root.jsx +++ b/examples/mock-http-server/app/root.jsx @@ -10,7 +10,7 @@ import { import "./app.css"; export const links = () => [ - { rel: "preconnect", href: "https://fonts.googleapis.com" }, + {rel: "preconnect", href: "https://fonts.googleapis.com"}, { rel: "preconnect", href: "https://fonts.gstatic.com", @@ -22,7 +22,7 @@ export const links = () => [ }, ]; -export function Layout({ children }) { +export function Layout({children}) { return ( @@ -44,7 +44,7 @@ export default function App() { return ; } -export function ErrorBoundary({ error }) { +export function ErrorBoundary({error}) { let message = "Oops!"; let details = "An unexpected error occurred."; let stack; diff --git a/examples/mock-http-server/app/routes.js b/examples/mock-http-server/app/routes.js index 7bf3a0d..7b68560 100644 --- a/examples/mock-http-server/app/routes.js +++ b/examples/mock-http-server/app/routes.js @@ -1,3 +1,3 @@ -import { index, route } from "@react-router/dev/routes"; +import {index, route} from "@react-router/dev/routes"; export default [index("routes/home.jsx"), route("api", "routes/api.js")]; diff --git a/examples/mock-http-server/app/routes/api.js b/examples/mock-http-server/app/routes/api.js index be7d6e3..6ed89d7 100644 --- a/examples/mock-http-server/app/routes/api.js +++ b/examples/mock-http-server/app/routes/api.js @@ -1,5 +1,5 @@ -import { subtle } from "crypto"; -import { TextEncoder } from "util"; +import {subtle} from "crypto"; +import {TextEncoder} from "util"; import jwt from "jsonwebtoken"; const selectionStrategy = { @@ -12,7 +12,7 @@ const PRODUCT_DISCOUNT_CODE = "10OFFPRODUCT"; const ORDER_DISCOUNT_CODE = "20OFFORDER"; const SHIPPING_DISCOUNT_CODE = "FREESHIPPING"; -export const action = async ({ request }) => { +export const action = async ({request}) => { if (request.method.toUpperCase() !== "POST") { return { error: "Invalid request method. Only POST requests are allowed.", @@ -24,12 +24,12 @@ export const action = async ({ request }) => { try { body = await authenticate(request); } catch (err) { - return { error: err.message }; + return {error: err.message}; } return handle(body); }; -const authenticate = async (request) => { +const authenticate = async request => { const requestJwtHeader = request.headers.get("x-shopify-request-jwt"); const requestIdHeader = request.headers.get("x-shopify-request-id"); @@ -93,21 +93,19 @@ const authenticate = async (request) => { return body; }; -const hashWithSHA256 = async (input) => { +const hashWithSHA256 = async input => { const encoder = new TextEncoder(); const data = encoder.encode(input); const hashBuffer = await subtle.digest("SHA-256", data); const hashArray = Array.from(new Uint8Array(hashBuffer)); - const hashHex = hashArray - .map((b) => b.toString(16).padStart(2, "0")) - .join(""); + const hashHex = hashArray.map(b => b.toString(16).padStart(2, "0")).join(""); return hashHex; }; -const handle = (body) => { - const { enteredDiscountCodes } = JSON.parse(body); +const handle = body => { + const {enteredDiscountCodes} = JSON.parse(body); // [START mock-http-server.results] - const validDiscountCodes = enteredDiscountCodes.filter((code) => + const validDiscountCodes = enteredDiscountCodes.filter(code => [ PRODUCT_DISCOUNT_CODE, ORDER_DISCOUNT_CODE, @@ -123,7 +121,7 @@ const handle = (body) => { // Add valid discount codes to cart operations validationOperations.push({ enteredDiscountCodesAccept: { - codes: validDiscountCodes.map((code) => ({ code })), + codes: validDiscountCodes.map(code => ({code})), }, }); @@ -133,7 +131,7 @@ const handle = (body) => { selectionStrategy: selectionStrategy.First, candidates: [ { - associatedDiscountCode: { code: PRODUCT_DISCOUNT_CODE }, + associatedDiscountCode: {code: PRODUCT_DISCOUNT_CODE}, targets: [ { cartLine: { @@ -158,7 +156,7 @@ const handle = (body) => { selectionStrategy: selectionStrategy.First, candidates: [ { - associatedDiscountCode: { code: ORDER_DISCOUNT_CODE }, + associatedDiscountCode: {code: ORDER_DISCOUNT_CODE}, targets: [ { orderSubtotal: { @@ -183,7 +181,7 @@ const handle = (body) => { selectionStrategy: selectionStrategy.All, candidates: [ { - associatedDiscountCode: { code: SHIPPING_DISCOUNT_CODE }, + associatedDiscountCode: {code: SHIPPING_DISCOUNT_CODE}, value: { percentage: { value: "100", diff --git a/examples/mock-http-server/app/routes/home.jsx b/examples/mock-http-server/app/routes/home.jsx index 9b35959..4b079d9 100644 --- a/examples/mock-http-server/app/routes/home.jsx +++ b/examples/mock-http-server/app/routes/home.jsx @@ -1,9 +1,9 @@ -import { Welcome } from "../welcome/welcome"; +import {Welcome} from "../welcome/welcome"; export function meta() { return [ - { title: "New React Router App" }, - { name: "description", content: "Welcome to React Router!" }, + {title: "New React Router App"}, + {name: "description", content: "Welcome to React Router!"}, ]; } diff --git a/examples/mock-http-server/app/welcome/welcome.jsx b/examples/mock-http-server/app/welcome/welcome.jsx index 8ac6e1d..c9be602 100644 --- a/examples/mock-http-server/app/welcome/welcome.jsx +++ b/examples/mock-http-server/app/welcome/welcome.jsx @@ -25,7 +25,7 @@ export function Welcome() { What's next?