@shopify/ui-extensions 2026.4.0-rc.3 → 2026.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cjs/surfaces/checkout/preact/api.js +2 -0
- package/build/cjs/surfaces/checkout/preact/app-metafields.js +1 -0
- package/build/cjs/surfaces/checkout/preact/attributes.js +3 -0
- package/build/cjs/surfaces/checkout/preact/billing-address.js +1 -0
- package/build/cjs/surfaces/checkout/preact/buyer-identity.js +4 -0
- package/build/cjs/surfaces/checkout/preact/buyer-journey.js +5 -0
- package/build/cjs/surfaces/checkout/preact/capabilities.js +2 -0
- package/build/cjs/surfaces/checkout/preact/cart-line-target.js +1 -0
- package/build/cjs/surfaces/checkout/preact/cart-lines.js +2 -0
- package/build/cjs/surfaces/checkout/preact/checkout-settings.js +1 -0
- package/build/cjs/surfaces/checkout/preact/checkout-token.js +1 -0
- package/build/cjs/surfaces/checkout/preact/cost.js +4 -0
- package/build/cjs/surfaces/checkout/preact/country.js +1 -0
- package/build/cjs/surfaces/checkout/preact/currency.js +1 -0
- package/build/cjs/surfaces/checkout/preact/customer-privacy.js +1 -0
- package/build/cjs/surfaces/checkout/preact/delivery-group-list-target.js +1 -0
- package/build/cjs/surfaces/checkout/preact/delivery-group-target.js +1 -0
- package/build/cjs/surfaces/checkout/preact/delivery-group.js +1 -0
- package/build/cjs/surfaces/checkout/preact/delivery-groups.js +1 -0
- package/build/cjs/surfaces/checkout/preact/delivery-selection-groups.js +1 -0
- package/build/cjs/surfaces/checkout/preact/discounts.js +3 -0
- package/build/cjs/surfaces/checkout/preact/extension-editor.js +1 -0
- package/build/cjs/surfaces/checkout/preact/extension-language.js +1 -0
- package/build/cjs/surfaces/checkout/preact/extension.js +2 -0
- package/build/cjs/surfaces/checkout/preact/gift-cards.js +2 -0
- package/build/cjs/surfaces/checkout/preact/instructions.js +1 -0
- package/build/cjs/surfaces/checkout/preact/language.js +1 -0
- package/build/cjs/surfaces/checkout/preact/localized-fields.js +2 -0
- package/build/cjs/surfaces/checkout/preact/market.js +1 -0
- package/build/cjs/surfaces/checkout/preact/metafields.js +1 -0
- package/build/cjs/surfaces/checkout/preact/note.js +2 -0
- package/build/cjs/surfaces/checkout/preact/payment-method.js +3 -0
- package/build/cjs/surfaces/checkout/preact/payment-options.js +2 -0
- package/build/cjs/surfaces/checkout/preact/pickup-location-option-target.js +1 -0
- package/build/cjs/surfaces/checkout/preact/redeemable.js +1 -0
- package/build/cjs/surfaces/checkout/preact/session-token.js +1 -0
- package/build/cjs/surfaces/checkout/preact/settings.js +1 -0
- package/build/cjs/surfaces/checkout/preact/shipping-address.js +2 -0
- package/build/cjs/surfaces/checkout/preact/shipping-option-target.js +1 -0
- package/build/cjs/surfaces/checkout/preact/shop.js +1 -0
- package/build/cjs/surfaces/checkout/preact/storage.js +1 -0
- package/build/cjs/surfaces/checkout/preact/subscription.js +1 -0
- package/build/cjs/surfaces/checkout/preact/target.js +1 -0
- package/build/cjs/surfaces/checkout/preact/timezone.js +1 -0
- package/build/cjs/surfaces/checkout/preact/translate.js +1 -0
- package/build/cjs/surfaces/checkout/shared.js +3 -16
- package/build/cjs/surfaces/checkout/style/style.js +1 -0
- package/build/cjs/surfaces/point-of-sale/types/storage.js +4 -0
- package/build/esm/surfaces/checkout/preact/api.mjs +2 -0
- package/build/esm/surfaces/checkout/preact/app-metafields.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/attributes.mjs +3 -0
- package/build/esm/surfaces/checkout/preact/billing-address.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/buyer-identity.mjs +4 -0
- package/build/esm/surfaces/checkout/preact/buyer-journey.mjs +5 -0
- package/build/esm/surfaces/checkout/preact/capabilities.mjs +2 -0
- package/build/esm/surfaces/checkout/preact/cart-line-target.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/cart-lines.mjs +2 -0
- package/build/esm/surfaces/checkout/preact/checkout-settings.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/checkout-token.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/cost.mjs +4 -0
- package/build/esm/surfaces/checkout/preact/country.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/currency.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/customer-privacy.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/delivery-group-list-target.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/delivery-group-target.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/delivery-group.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/delivery-groups.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/delivery-selection-groups.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/discounts.mjs +3 -0
- package/build/esm/surfaces/checkout/preact/extension-editor.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/extension-language.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/extension.mjs +2 -0
- package/build/esm/surfaces/checkout/preact/gift-cards.mjs +2 -0
- package/build/esm/surfaces/checkout/preact/instructions.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/language.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/localized-fields.mjs +2 -0
- package/build/esm/surfaces/checkout/preact/market.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/metafields.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/note.mjs +2 -0
- package/build/esm/surfaces/checkout/preact/payment-method.mjs +3 -0
- package/build/esm/surfaces/checkout/preact/payment-options.mjs +2 -0
- package/build/esm/surfaces/checkout/preact/pickup-location-option-target.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/redeemable.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/session-token.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/settings.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/shipping-address.mjs +2 -0
- package/build/esm/surfaces/checkout/preact/shipping-option-target.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/shop.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/storage.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/subscription.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/target.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/timezone.mjs +1 -0
- package/build/esm/surfaces/checkout/preact/translate.mjs +1 -0
- package/build/esm/surfaces/checkout/shared.mjs +3 -16
- package/build/esm/surfaces/checkout/style/style.mjs +1 -0
- package/build/esm/surfaces/point-of-sale/types/storage.mjs +4 -0
- package/build/esnext/surfaces/checkout/preact/api.esnext +2 -0
- package/build/esnext/surfaces/checkout/preact/app-metafields.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/attributes.esnext +3 -0
- package/build/esnext/surfaces/checkout/preact/billing-address.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/buyer-identity.esnext +4 -0
- package/build/esnext/surfaces/checkout/preact/buyer-journey.esnext +5 -0
- package/build/esnext/surfaces/checkout/preact/capabilities.esnext +2 -0
- package/build/esnext/surfaces/checkout/preact/cart-line-target.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/cart-lines.esnext +2 -0
- package/build/esnext/surfaces/checkout/preact/checkout-settings.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/checkout-token.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/cost.esnext +4 -0
- package/build/esnext/surfaces/checkout/preact/country.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/currency.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/customer-privacy.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/delivery-group-list-target.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/delivery-group-target.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/delivery-group.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/delivery-groups.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/delivery-selection-groups.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/discounts.esnext +3 -0
- package/build/esnext/surfaces/checkout/preact/extension-editor.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/extension-language.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/extension.esnext +2 -0
- package/build/esnext/surfaces/checkout/preact/gift-cards.esnext +2 -0
- package/build/esnext/surfaces/checkout/preact/instructions.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/language.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/localized-fields.esnext +2 -0
- package/build/esnext/surfaces/checkout/preact/market.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/metafields.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/note.esnext +2 -0
- package/build/esnext/surfaces/checkout/preact/payment-method.esnext +3 -0
- package/build/esnext/surfaces/checkout/preact/payment-options.esnext +2 -0
- package/build/esnext/surfaces/checkout/preact/pickup-location-option-target.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/redeemable.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/session-token.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/settings.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/shipping-address.esnext +2 -0
- package/build/esnext/surfaces/checkout/preact/shipping-option-target.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/shop.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/storage.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/subscription.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/target.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/timezone.esnext +1 -0
- package/build/esnext/surfaces/checkout/preact/translate.esnext +1 -0
- package/build/esnext/surfaces/checkout/shared.esnext +3 -16
- package/build/esnext/surfaces/checkout/style/style.esnext +1 -0
- package/build/esnext/surfaces/point-of-sale/types/storage.esnext +4 -0
- package/build/ts/shared.d.ts +32 -12
- package/build/ts/shared.d.ts.map +1 -1
- package/build/ts/surfaces/admin/api/action/action.d.ts +1 -0
- package/build/ts/surfaces/admin/api/action/action.d.ts.map +1 -1
- package/build/ts/surfaces/admin/api/block/block.d.ts +2 -0
- package/build/ts/surfaces/admin/api/block/block.d.ts.map +1 -1
- package/build/ts/surfaces/admin/api/checkout-rules/launch-options.d.ts +7 -4
- package/build/ts/surfaces/admin/api/checkout-rules/launch-options.d.ts.map +1 -1
- package/build/ts/surfaces/admin/api/checkout-rules/metafields.d.ts +13 -7
- package/build/ts/surfaces/admin/api/checkout-rules/metafields.d.ts.map +1 -1
- package/build/ts/surfaces/admin/api/checkout-rules/validation-settings.d.ts +1 -0
- package/build/ts/surfaces/admin/api/checkout-rules/validation-settings.d.ts.map +1 -1
- package/build/ts/surfaces/admin/api/customer-segment-template/customer-segment-template.d.ts +3 -0
- package/build/ts/surfaces/admin/api/customer-segment-template/customer-segment-template.d.ts.map +1 -1
- package/build/ts/surfaces/admin/api/discount-function-settings/discount-function-settings.d.ts +1 -0
- package/build/ts/surfaces/admin/api/discount-function-settings/discount-function-settings.d.ts.map +1 -1
- package/build/ts/surfaces/admin/api/discount-function-settings/launch-options.d.ts +7 -3
- package/build/ts/surfaces/admin/api/discount-function-settings/launch-options.d.ts.map +1 -1
- package/build/ts/surfaces/admin/api/discount-function-settings/metafields.d.ts +13 -7
- package/build/ts/surfaces/admin/api/discount-function-settings/metafields.d.ts.map +1 -1
- package/build/ts/surfaces/admin/api/generated/generated.d.ts +62 -0
- package/build/ts/surfaces/admin/api/generated/generated.d.ts.map +1 -0
- package/build/ts/surfaces/admin/api/intents/intent-render.d.ts +24 -0
- package/build/ts/surfaces/admin/api/intents/intent-render.d.ts.map +1 -0
- package/build/ts/surfaces/admin/api/intents/intents.d.ts +44 -8
- package/build/ts/surfaces/admin/api/intents/intents.d.ts.map +1 -1
- package/build/ts/surfaces/admin/api/order-routing-rule/data.d.ts +5 -3
- package/build/ts/surfaces/admin/api/order-routing-rule/data.d.ts.map +1 -1
- package/build/ts/surfaces/admin/api/order-routing-rule/metafields.d.ts +8 -3
- package/build/ts/surfaces/admin/api/order-routing-rule/metafields.d.ts.map +1 -1
- package/build/ts/surfaces/admin/api/order-routing-rule/order-routing-rule.d.ts +1 -0
- package/build/ts/surfaces/admin/api/order-routing-rule/order-routing-rule.d.ts.map +1 -1
- package/build/ts/surfaces/admin/api/picker/picker.d.ts +15 -7
- package/build/ts/surfaces/admin/api/picker/picker.d.ts.map +1 -1
- package/build/ts/surfaces/admin/api/print-action/print-action.d.ts +1 -0
- package/build/ts/surfaces/admin/api/print-action/print-action.d.ts.map +1 -1
- package/build/ts/surfaces/admin/api/product-configuration/product-details-configuration.d.ts +4 -2
- package/build/ts/surfaces/admin/api/product-configuration/product-details-configuration.d.ts.map +1 -1
- package/build/ts/surfaces/admin/api/product-configuration/product-variant-details-configuration.d.ts +4 -2
- package/build/ts/surfaces/admin/api/product-configuration/product-variant-details-configuration.d.ts.map +1 -1
- package/build/ts/surfaces/admin/api/purchase-options-card-action.d.ts +1 -0
- package/build/ts/surfaces/admin/api/purchase-options-card-action.d.ts.map +1 -1
- package/build/ts/surfaces/admin/api/resource-picker/resource-picker.d.ts +36 -17
- package/build/ts/surfaces/admin/api/resource-picker/resource-picker.d.ts.map +1 -1
- package/build/ts/surfaces/admin/api/shared.d.ts +2 -0
- package/build/ts/surfaces/admin/api/shared.d.ts.map +1 -1
- package/build/ts/surfaces/admin/api/standard/standard-rendering.d.ts +3 -0
- package/build/ts/surfaces/admin/api/standard/standard-rendering.d.ts.map +1 -1
- package/build/ts/surfaces/admin/api/standard/standard.d.ts +4 -1
- package/build/ts/surfaces/admin/api/standard/standard.d.ts.map +1 -1
- package/build/ts/surfaces/admin/api/standard/storage.d.ts +4 -0
- package/build/ts/surfaces/admin/api/standard/storage.d.ts.map +1 -1
- package/build/ts/surfaces/admin/api.d.ts +2 -0
- package/build/ts/surfaces/admin/api.d.ts.map +1 -1
- package/build/ts/surfaces/admin/components/AdminAction.d.ts +6 -0
- package/build/ts/surfaces/admin/components/AdminBlock.d.ts +6 -0
- package/build/ts/surfaces/admin/components/AdminPrintAction.d.ts +6 -0
- package/build/ts/surfaces/admin/components/Avatar.d.ts +9 -0
- package/build/ts/surfaces/admin/components/Badge.d.ts +9 -0
- package/build/ts/surfaces/admin/components/Banner.d.ts +11 -0
- package/build/ts/surfaces/admin/components/Box.d.ts +14 -0
- package/build/ts/surfaces/admin/components/Button.d.ts +14 -0
- package/build/ts/surfaces/admin/components/ButtonGroup.d.ts +8 -0
- package/build/ts/surfaces/admin/components/Checkbox.d.ts +12 -1
- package/build/ts/surfaces/admin/components/Chip.d.ts +4 -2
- package/build/ts/surfaces/admin/components/Choice.d.ts +10 -2
- package/build/ts/surfaces/admin/components/ChoiceList.d.ts +12 -2
- package/build/ts/surfaces/admin/components/Clickable.d.ts +16 -4
- package/build/ts/surfaces/admin/components/ClickableChip.d.ts +11 -0
- package/build/ts/surfaces/admin/components/ColorField.d.ts +12 -0
- package/build/ts/surfaces/admin/components/ColorPicker.d.ts +9 -0
- package/build/ts/surfaces/admin/components/DateField.d.ts +11 -0
- package/build/ts/surfaces/admin/components/DatePicker.d.ts +10 -1
- package/build/ts/surfaces/admin/components/Divider.d.ts +7 -0
- package/build/ts/surfaces/admin/components/DropZone.d.ts +8 -4
- package/build/ts/surfaces/admin/components/EmailField.d.ts +12 -0
- package/build/ts/surfaces/admin/components/Form.d.ts +10 -0
- package/build/ts/surfaces/admin/components/FunctionSettings.d.ts +12 -0
- package/build/ts/surfaces/admin/components/Grid.d.ts +16 -0
- package/build/ts/surfaces/admin/components/GridItem.d.ts +15 -0
- package/build/ts/surfaces/admin/components/Heading.d.ts +8 -0
- package/build/ts/surfaces/admin/components/Icon.d.ts +6 -3
- package/build/ts/surfaces/admin/components/Image.d.ts +15 -0
- package/build/ts/surfaces/admin/components/Link.d.ts +13 -3
- package/build/ts/surfaces/admin/components/ListItem.d.ts +8 -0
- package/build/ts/surfaces/admin/components/Menu.d.ts +11 -0
- package/build/ts/surfaces/admin/components/Modal.d.ts +8 -4
- package/build/ts/surfaces/admin/components/MoneyField.d.ts +13 -0
- package/build/ts/surfaces/admin/components/NumberField.d.ts +12 -0
- package/build/ts/surfaces/admin/components/Option.d.ts +10 -2
- package/build/ts/surfaces/admin/components/OptionGroup.d.ts +10 -2
- package/build/ts/surfaces/admin/components/OrderedList.d.ts +8 -0
- package/build/ts/surfaces/admin/components/Page.d.ts +4 -2
- package/build/ts/surfaces/admin/components/Paragraph.d.ts +8 -0
- package/build/ts/surfaces/admin/components/PasswordField.d.ts +12 -0
- package/build/ts/surfaces/admin/components/QueryContainer.d.ts +8 -0
- package/build/ts/surfaces/admin/components/SearchField.d.ts +13 -1
- package/build/ts/surfaces/admin/components/Section.d.ts +9 -0
- package/build/ts/surfaces/admin/components/Select.d.ts +14 -2
- package/build/ts/surfaces/admin/components/Spinner.d.ts +7 -0
- package/build/ts/surfaces/admin/components/Stack.d.ts +16 -0
- package/build/ts/surfaces/admin/components/Switch.d.ts +12 -1
- package/build/ts/surfaces/admin/components/Table.d.ts +15 -0
- package/build/ts/surfaces/admin/components/TableBody.d.ts +8 -0
- package/build/ts/surfaces/admin/components/TableCell.d.ts +9 -0
- package/build/ts/surfaces/admin/components/TableHeader.d.ts +9 -0
- package/build/ts/surfaces/admin/components/TableHeaderRow.d.ts +8 -0
- package/build/ts/surfaces/admin/components/TableRow.d.ts +8 -0
- package/build/ts/surfaces/admin/components/Text.d.ts +19 -0
- package/build/ts/surfaces/admin/components/TextArea.d.ts +12 -0
- package/build/ts/surfaces/admin/components/TextField.d.ts +13 -0
- package/build/ts/surfaces/admin/components/Thumbnail.d.ts +9 -0
- package/build/ts/surfaces/admin/components/Tooltip.d.ts +11 -0
- package/build/ts/surfaces/admin/components/URLField.d.ts +12 -0
- package/build/ts/surfaces/admin/components/UnorderedList.d.ts +14 -0
- package/build/ts/surfaces/admin/components/shared.d.ts +267 -0
- package/build/ts/surfaces/admin/extension-targets.d.ts +8 -1
- package/build/ts/surfaces/admin/extension-targets.d.ts.map +1 -1
- package/build/ts/surfaces/admin/targets/admin.app.intent.render.d.ts +61 -0
- package/build/ts/surfaces/checkout/api/address-autocomplete/format-suggestion.d.ts +2 -0
- package/build/ts/surfaces/checkout/api/address-autocomplete/format-suggestion.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/api/address-autocomplete/shared.d.ts +3 -0
- package/build/ts/surfaces/checkout/api/address-autocomplete/shared.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/api/address-autocomplete/standard.d.ts +2 -1
- package/build/ts/surfaces/checkout/api/address-autocomplete/standard.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/api/address-autocomplete/suggest.d.ts +2 -0
- package/build/ts/surfaces/checkout/api/address-autocomplete/suggest.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/api/announcement/announcement.d.ts +1 -0
- package/build/ts/surfaces/checkout/api/announcement/announcement.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/api/cart-line/cart-line-item.d.ts +5 -1
- package/build/ts/surfaces/checkout/api/cart-line/cart-line-item.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/api/checkout/checkout.d.ts +258 -122
- package/build/ts/surfaces/checkout/api/checkout/checkout.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/api/docs.d.ts +33 -6
- package/build/ts/surfaces/checkout/api/docs.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/api/order-confirmation/order-confirmation.d.ts +12 -5
- package/build/ts/surfaces/checkout/api/order-confirmation/order-confirmation.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/api/payment/payment-option-item.d.ts +7 -0
- package/build/ts/surfaces/checkout/api/payment/payment-option-item.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/api/pickup/pickup-location-item.d.ts +3 -2
- package/build/ts/surfaces/checkout/api/pickup/pickup-location-item.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/api/pickup/pickup-location-list.d.ts +4 -1
- package/build/ts/surfaces/checkout/api/pickup/pickup-location-list.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/api/pickup/pickup-point-list.d.ts +4 -1
- package/build/ts/surfaces/checkout/api/pickup/pickup-point-list.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/api/redeemable/redeemable.d.ts +7 -0
- package/build/ts/surfaces/checkout/api/redeemable/redeemable.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/api/shared.d.ts +79 -31
- package/build/ts/surfaces/checkout/api/shared.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/api/shipping/shipping-option-item.d.ts +6 -4
- package/build/ts/surfaces/checkout/api/shipping/shipping-option-item.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/api/shipping/shipping-option-list.d.ts +18 -12
- package/build/ts/surfaces/checkout/api/shipping/shipping-option-list.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/api/standard/standard.d.ts +659 -425
- package/build/ts/surfaces/checkout/api/standard/standard.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/components/Abbreviation.d.ts +1 -0
- package/build/ts/surfaces/checkout/components/Announcement.d.ts +34 -9
- package/build/ts/surfaces/checkout/components/Badge.d.ts +44 -3
- package/build/ts/surfaces/checkout/components/Banner.d.ts +60 -9
- package/build/ts/surfaces/checkout/components/Box.d.ts +50 -0
- package/build/ts/surfaces/checkout/components/Button.d.ts +10 -3
- package/build/ts/surfaces/checkout/components/Chat.d.ts +20 -0
- package/build/ts/surfaces/checkout/components/Checkbox.d.ts +10 -2
- package/build/ts/surfaces/checkout/components/Chip.d.ts +3 -3
- package/build/ts/surfaces/checkout/components/Choice.d.ts +2 -0
- package/build/ts/surfaces/checkout/components/ChoiceList.d.ts +10 -2
- package/build/ts/surfaces/checkout/components/Clickable.d.ts +31 -7
- package/build/ts/surfaces/checkout/components/ClickableChip.d.ts +15 -8
- package/build/ts/surfaces/checkout/components/ClipboardItem.d.ts +10 -2
- package/build/ts/surfaces/checkout/components/ConsentCheckbox.d.ts +16 -2
- package/build/ts/surfaces/checkout/components/ConsentPhoneField.d.ts +24 -10
- package/build/ts/surfaces/checkout/components/DateField.d.ts +24 -6
- package/build/ts/surfaces/checkout/components/DatePicker.d.ts +21 -5
- package/build/ts/surfaces/checkout/components/Details.d.ts +13 -8
- package/build/ts/surfaces/checkout/components/Divider.d.ts +1 -0
- package/build/ts/surfaces/checkout/components/DropZone.d.ts +15 -3
- package/build/ts/surfaces/checkout/components/EmailField.d.ts +18 -10
- package/build/ts/surfaces/checkout/components/Form.d.ts +9 -1
- package/build/ts/surfaces/checkout/components/Grid.d.ts +137 -0
- package/build/ts/surfaces/checkout/components/GridItem.d.ts +55 -0
- package/build/ts/surfaces/checkout/components/Heading.d.ts +1 -0
- package/build/ts/surfaces/checkout/components/Icon.d.ts +49 -4
- package/build/ts/surfaces/checkout/components/Image.d.ts +43 -1
- package/build/ts/surfaces/checkout/components/Link.d.ts +10 -3
- package/build/ts/surfaces/checkout/components/ListItem.d.ts +1 -0
- package/build/ts/surfaces/checkout/components/Map.d.ts +68 -6
- package/build/ts/surfaces/checkout/components/MapMarker.d.ts +36 -8
- package/build/ts/surfaces/checkout/components/Modal.d.ts +52 -8
- package/build/ts/surfaces/checkout/components/MoneyField.d.ts +16 -8
- package/build/ts/surfaces/checkout/components/NumberField.d.ts +18 -10
- package/build/ts/surfaces/checkout/components/Option.d.ts +1 -0
- package/build/ts/surfaces/checkout/components/OrderedList.d.ts +1 -0
- package/build/ts/surfaces/checkout/components/Paragraph.d.ts +12 -0
- package/build/ts/surfaces/checkout/components/PasswordField.d.ts +18 -10
- package/build/ts/surfaces/checkout/components/PaymentIcon.d.ts +17 -1
- package/build/ts/surfaces/checkout/components/PhoneField.d.ts +18 -10
- package/build/ts/surfaces/checkout/components/Popover.d.ts +39 -22
- package/build/ts/surfaces/checkout/components/PressButton.d.ts +14 -6
- package/build/ts/surfaces/checkout/components/ProductThumbnail.d.ts +26 -1
- package/build/ts/surfaces/checkout/components/Progress.d.ts +27 -0
- package/build/ts/surfaces/checkout/components/QRCode.d.ts +28 -3
- package/build/ts/surfaces/checkout/components/QueryContainer.d.ts +1 -0
- package/build/ts/surfaces/checkout/components/ScrollBox.d.ts +55 -0
- package/build/ts/surfaces/checkout/components/Section.d.ts +4 -0
- package/build/ts/surfaces/checkout/components/Select.d.ts +14 -6
- package/build/ts/surfaces/checkout/components/Sheet.d.ts +40 -13
- package/build/ts/surfaces/checkout/components/SkeletonParagraph.d.ts +1 -0
- package/build/ts/surfaces/checkout/components/Spinner.d.ts +16 -0
- package/build/ts/surfaces/checkout/components/Stack.d.ts +110 -0
- package/build/ts/surfaces/checkout/components/Summary.d.ts +1 -0
- package/build/ts/surfaces/checkout/components/Switch.d.ts +10 -2
- package/build/ts/surfaces/checkout/components/Text.d.ts +18 -1
- package/build/ts/surfaces/checkout/components/TextArea.d.ts +16 -8
- package/build/ts/surfaces/checkout/components/TextField.d.ts +18 -10
- package/build/ts/surfaces/checkout/components/Time.d.ts +1 -0
- package/build/ts/surfaces/checkout/components/Tooltip.d.ts +21 -2
- package/build/ts/surfaces/checkout/components/UnorderedList.d.ts +1 -0
- package/build/ts/surfaces/checkout/components/UrlField.d.ts +18 -10
- package/build/ts/surfaces/checkout/components/components-shared.d.ts +728 -718
- package/build/ts/surfaces/checkout/components/components.d.ts +575 -297
- package/build/ts/surfaces/checkout/extension-targets.d.ts +13 -0
- package/build/ts/surfaces/checkout/extension-targets.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/globals.d.ts +1 -0
- package/build/ts/surfaces/checkout/globals.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/api.d.ts +2 -0
- package/build/ts/surfaces/checkout/preact/api.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/app-metafields.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/app-metafields.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/attributes.d.ts +3 -0
- package/build/ts/surfaces/checkout/preact/attributes.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/billing-address.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/billing-address.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/buyer-identity.d.ts +4 -0
- package/build/ts/surfaces/checkout/preact/buyer-identity.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/buyer-journey.d.ts +5 -0
- package/build/ts/surfaces/checkout/preact/buyer-journey.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/capabilities.d.ts +2 -0
- package/build/ts/surfaces/checkout/preact/capabilities.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/cart-line-target.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/cart-line-target.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/cart-lines.d.ts +2 -0
- package/build/ts/surfaces/checkout/preact/cart-lines.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/checkout-settings.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/checkout-settings.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/checkout-token.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/checkout-token.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/cost.d.ts +4 -0
- package/build/ts/surfaces/checkout/preact/cost.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/country.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/country.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/currency.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/currency.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/customer-privacy.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/customer-privacy.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/delivery-group-list-target.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/delivery-group-list-target.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/delivery-group-target.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/delivery-group-target.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/delivery-group.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/delivery-group.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/delivery-groups.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/delivery-groups.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/delivery-selection-groups.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/delivery-selection-groups.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/discounts.d.ts +3 -0
- package/build/ts/surfaces/checkout/preact/discounts.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/extension-editor.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/extension-editor.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/extension-language.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/extension-language.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/extension.d.ts +2 -0
- package/build/ts/surfaces/checkout/preact/extension.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/gift-cards.d.ts +2 -0
- package/build/ts/surfaces/checkout/preact/gift-cards.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/instructions.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/instructions.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/language.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/language.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/localized-fields.d.ts +2 -0
- package/build/ts/surfaces/checkout/preact/localized-fields.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/market.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/market.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/metafields.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/metafields.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/note.d.ts +2 -0
- package/build/ts/surfaces/checkout/preact/note.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/payment-method.d.ts +3 -0
- package/build/ts/surfaces/checkout/preact/payment-method.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/payment-options.d.ts +2 -0
- package/build/ts/surfaces/checkout/preact/payment-options.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/pickup-location-option-target.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/pickup-location-option-target.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/redeemable.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/redeemable.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/session-token.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/session-token.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/settings.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/settings.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/shipping-address.d.ts +2 -0
- package/build/ts/surfaces/checkout/preact/shipping-address.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/shipping-option-target.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/shipping-option-target.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/shop.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/shop.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/storage.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/storage.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/subscription.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/subscription.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/target.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/target.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/timezone.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/timezone.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/preact/translate.d.ts +1 -0
- package/build/ts/surfaces/checkout/preact/translate.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/shared.d.ts +11 -19
- package/build/ts/surfaces/checkout/shared.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/style/style.d.ts +1 -0
- package/build/ts/surfaces/checkout/style/style.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/style/types.d.ts +20 -8
- package/build/ts/surfaces/checkout/style/types.d.ts.map +1 -1
- package/build/ts/surfaces/checkout/targets/purchase.cart-line-item.line-components.render.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.checkout.actions.render-before.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.checkout.block.render.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.checkout.cart-line-item.render-after.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.checkout.cart-line-list.render-after.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.checkout.chat.render.d.ts +2 -1
- package/build/ts/surfaces/checkout/targets/purchase.checkout.contact.render-after.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.checkout.delivery-address.render-after.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.checkout.delivery-address.render-before.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.checkout.footer.render-after.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.checkout.gift-card.render.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.checkout.header.render-after.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.checkout.payment-method-list.render-after.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.checkout.payment-method-list.render-before.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.checkout.payment-option-item.action-required.render.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.checkout.payment-option-item.details.render.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.checkout.payment-option-item.hosted-fields.render-after.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.checkout.pickup-location-list.render-after.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.checkout.pickup-location-list.render-before.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.checkout.pickup-location-option-item.render-after.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.checkout.pickup-point-list.render-after.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.checkout.pickup-point-list.render-before.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.checkout.reductions.render-after.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.checkout.reductions.render-before.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.checkout.shipping-option-item.details.render.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.checkout.shipping-option-item.render-after.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.checkout.shipping-option-list.render-after.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.checkout.shipping-option-list.render-before.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.thank-you.announcement.render.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.thank-you.block.render.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.thank-you.cart-line-item.render-after.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.thank-you.cart-line-list.render-after.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.thank-you.chat.render.d.ts +2 -1
- package/build/ts/surfaces/checkout/targets/purchase.thank-you.customer-information.render-after.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.thank-you.footer.render-after.d.ts +1 -0
- package/build/ts/surfaces/checkout/targets/purchase.thank-you.header.render-after.d.ts +1 -0
- package/build/ts/surfaces/customer-account/api/cart-line/cart-line-item.d.ts +3 -0
- package/build/ts/surfaces/customer-account/api/cart-line/cart-line-item.d.ts.map +1 -1
- package/build/ts/surfaces/customer-account/api/docs.d.ts +239 -17
- package/build/ts/surfaces/customer-account/api/docs.d.ts.map +1 -1
- package/build/ts/surfaces/customer-account/api/order-status/order-status.d.ts +453 -296
- package/build/ts/surfaces/customer-account/api/order-status/order-status.d.ts.map +1 -1
- package/build/ts/surfaces/customer-account/api/shared.d.ts +209 -138
- package/build/ts/surfaces/customer-account/api/shared.d.ts.map +1 -1
- package/build/ts/surfaces/customer-account/api/standard-api/standard-api.d.ts +84 -68
- package/build/ts/surfaces/customer-account/api/standard-api/standard-api.d.ts.map +1 -1
- package/build/ts/surfaces/customer-account/components/Abbreviation.d.ts +1 -0
- package/build/ts/surfaces/customer-account/components/Announcement.d.ts +34 -9
- package/build/ts/surfaces/customer-account/components/Avatar.d.ts +43 -15
- package/build/ts/surfaces/customer-account/components/Badge.d.ts +44 -3
- package/build/ts/surfaces/customer-account/components/Banner.d.ts +60 -9
- package/build/ts/surfaces/customer-account/components/Box.d.ts +50 -0
- package/build/ts/surfaces/customer-account/components/Button.d.ts +10 -3
- package/build/ts/surfaces/customer-account/components/ButtonGroup.d.ts +3 -3
- package/build/ts/surfaces/customer-account/components/Chat.d.ts +20 -0
- package/build/ts/surfaces/customer-account/components/Checkbox.d.ts +10 -2
- package/build/ts/surfaces/customer-account/components/Chip.d.ts +3 -3
- package/build/ts/surfaces/customer-account/components/Choice.d.ts +2 -0
- package/build/ts/surfaces/customer-account/components/ChoiceList.d.ts +10 -2
- package/build/ts/surfaces/customer-account/components/Clickable.d.ts +31 -7
- package/build/ts/surfaces/customer-account/components/ClickableChip.d.ts +15 -8
- package/build/ts/surfaces/customer-account/components/ClipboardItem.d.ts +10 -2
- package/build/ts/surfaces/customer-account/components/ConsentCheckbox.d.ts +16 -2
- package/build/ts/surfaces/customer-account/components/ConsentPhoneField.d.ts +24 -10
- package/build/ts/surfaces/customer-account/components/CustomerAccountAction.d.ts +3 -3
- package/build/ts/surfaces/customer-account/components/DateField.d.ts +24 -6
- package/build/ts/surfaces/customer-account/components/DatePicker.d.ts +21 -5
- package/build/ts/surfaces/customer-account/components/Details.d.ts +13 -8
- package/build/ts/surfaces/customer-account/components/Divider.d.ts +1 -0
- package/build/ts/surfaces/customer-account/components/DropZone.d.ts +15 -3
- package/build/ts/surfaces/customer-account/components/EmailField.d.ts +18 -10
- package/build/ts/surfaces/customer-account/components/Form.d.ts +9 -1
- package/build/ts/surfaces/customer-account/components/Grid.d.ts +137 -0
- package/build/ts/surfaces/customer-account/components/GridItem.d.ts +55 -0
- package/build/ts/surfaces/customer-account/components/Heading.d.ts +1 -0
- package/build/ts/surfaces/customer-account/components/Icon.d.ts +49 -4
- package/build/ts/surfaces/customer-account/components/Image.d.ts +43 -1
- package/build/ts/surfaces/customer-account/components/ImageGroup.d.ts +7 -2
- package/build/ts/surfaces/customer-account/components/Link.d.ts +10 -3
- package/build/ts/surfaces/customer-account/components/ListItem.d.ts +1 -0
- package/build/ts/surfaces/customer-account/components/Map.d.ts +68 -6
- package/build/ts/surfaces/customer-account/components/MapMarker.d.ts +36 -8
- package/build/ts/surfaces/customer-account/components/Menu.d.ts +1 -1
- package/build/ts/surfaces/customer-account/components/Modal.d.ts +52 -8
- package/build/ts/surfaces/customer-account/components/MoneyField.d.ts +16 -8
- package/build/ts/surfaces/customer-account/components/NumberField.d.ts +18 -10
- package/build/ts/surfaces/customer-account/components/Option.d.ts +1 -0
- package/build/ts/surfaces/customer-account/components/OrderedList.d.ts +1 -0
- package/build/ts/surfaces/customer-account/components/Page.d.ts +5 -5
- package/build/ts/surfaces/customer-account/components/Paragraph.d.ts +12 -0
- package/build/ts/surfaces/customer-account/components/PasswordField.d.ts +18 -10
- package/build/ts/surfaces/customer-account/components/PaymentIcon.d.ts +17 -1
- package/build/ts/surfaces/customer-account/components/PhoneField.d.ts +18 -10
- package/build/ts/surfaces/customer-account/components/Popover.d.ts +39 -22
- package/build/ts/surfaces/customer-account/components/PressButton.d.ts +14 -6
- package/build/ts/surfaces/customer-account/components/ProductThumbnail.d.ts +26 -1
- package/build/ts/surfaces/customer-account/components/Progress.d.ts +27 -0
- package/build/ts/surfaces/customer-account/components/QRCode.d.ts +28 -3
- package/build/ts/surfaces/customer-account/components/QueryContainer.d.ts +1 -0
- package/build/ts/surfaces/customer-account/components/ScrollBox.d.ts +55 -0
- package/build/ts/surfaces/customer-account/components/Section.d.ts +4 -0
- package/build/ts/surfaces/customer-account/components/Select.d.ts +14 -6
- package/build/ts/surfaces/customer-account/components/Sheet.d.ts +40 -13
- package/build/ts/surfaces/customer-account/components/SkeletonParagraph.d.ts +1 -0
- package/build/ts/surfaces/customer-account/components/Spinner.d.ts +16 -0
- package/build/ts/surfaces/customer-account/components/Stack.d.ts +110 -0
- package/build/ts/surfaces/customer-account/components/Summary.d.ts +1 -0
- package/build/ts/surfaces/customer-account/components/Switch.d.ts +10 -2
- package/build/ts/surfaces/customer-account/components/Text.d.ts +18 -1
- package/build/ts/surfaces/customer-account/components/TextArea.d.ts +16 -8
- package/build/ts/surfaces/customer-account/components/TextField.d.ts +18 -10
- package/build/ts/surfaces/customer-account/components/Time.d.ts +1 -0
- package/build/ts/surfaces/customer-account/components/Tooltip.d.ts +21 -2
- package/build/ts/surfaces/customer-account/components/UnorderedList.d.ts +1 -0
- package/build/ts/surfaces/customer-account/components/UrlField.d.ts +18 -10
- package/build/ts/surfaces/customer-account/components/components-shared.d.ts +728 -718
- package/build/ts/surfaces/customer-account/components/components.d.ts +575 -297
- package/build/ts/surfaces/customer-account/components/shared.d.ts +23 -2
- package/build/ts/surfaces/customer-account/components/shared.d.ts.map +1 -1
- package/build/ts/surfaces/customer-account/components/shared.ts +23 -5
- package/build/ts/surfaces/customer-account/extension-targets.d.ts +8 -0
- package/build/ts/surfaces/customer-account/extension-targets.d.ts.map +1 -1
- package/build/ts/surfaces/customer-account/targets/customer-account.footer.render-after.d.ts +1 -0
- package/build/ts/surfaces/customer-account/targets/customer-account.order-index.announcement.render.d.ts +1 -0
- package/build/ts/surfaces/customer-account/targets/customer-account.order-index.block.render.d.ts +1 -0
- package/build/ts/surfaces/customer-account/targets/customer-account.order-status.announcement.render.d.ts +1 -0
- package/build/ts/surfaces/customer-account/targets/customer-account.order-status.block.render.d.ts +1 -0
- package/build/ts/surfaces/customer-account/targets/customer-account.order-status.cart-line-item.render-after.d.ts +1 -0
- package/build/ts/surfaces/customer-account/targets/customer-account.order-status.cart-line-list.render-after.d.ts +1 -0
- package/build/ts/surfaces/customer-account/targets/customer-account.order-status.customer-information.render-after.d.ts +1 -0
- package/build/ts/surfaces/customer-account/targets/customer-account.order-status.fulfillment-details.render-after.d.ts +1 -0
- package/build/ts/surfaces/customer-account/targets/customer-account.order-status.payment-details.render-after.d.ts +1 -0
- package/build/ts/surfaces/customer-account/targets/customer-account.order-status.return-details.render-after.d.ts +1 -0
- package/build/ts/surfaces/customer-account/targets/customer-account.order-status.unfulfilled-items.render-after.d.ts +1 -0
- package/build/ts/surfaces/customer-account/targets/customer-account.order.action.menu-item.render.d.ts +1 -0
- package/build/ts/surfaces/customer-account/targets/customer-account.order.action.render.d.ts +1 -0
- package/build/ts/surfaces/customer-account/targets/customer-account.order.page.render.d.ts +1 -0
- package/build/ts/surfaces/customer-account/targets/customer-account.page.render.d.ts +1 -0
- package/build/ts/surfaces/customer-account/targets/customer-account.profile.addresses.render-after.d.ts +1 -0
- package/build/ts/surfaces/customer-account/targets/customer-account.profile.announcement.render.d.ts +1 -0
- package/build/ts/surfaces/customer-account/targets/customer-account.profile.block.render.d.ts +1 -0
- package/build/ts/surfaces/customer-account/targets/customer-account.profile.company-details.render-after.d.ts +1 -0
- package/build/ts/surfaces/customer-account/targets/customer-account.profile.company-location-addresses.render-after.d.ts +1 -0
- package/build/ts/surfaces/customer-account/targets/customer-account.profile.company-location-payment.render-after.d.ts +1 -0
- package/build/ts/surfaces/customer-account/targets/customer-account.profile.company-location-staff.render-after.d.ts +1 -0
- package/build/ts/surfaces/customer-account/targets/customer-account.profile.payment.render-after.d.ts +1 -0
- package/build/ts/surfaces/point-of-sale/api/action-api/action-api.d.ts +4 -0
- package/build/ts/surfaces/point-of-sale/api/action-api/action-api.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/api/action-target-api/action-target-api.d.ts +3 -0
- package/build/ts/surfaces/point-of-sale/api/action-target-api/action-target-api.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/api/camera-api/camera-api.d.ts +4 -0
- package/build/ts/surfaces/point-of-sale/api/camera-api/camera-api.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/api/cart-api/cart-api.d.ts +7 -0
- package/build/ts/surfaces/point-of-sale/api/cart-api/cart-api.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/api/cart-line-item-api/cart-line-item-api.d.ts +1 -0
- package/build/ts/surfaces/point-of-sale/api/cart-line-item-api/cart-line-item-api.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/api/cash-drawer-api/cash-drawer-api.d.ts +2 -0
- package/build/ts/surfaces/point-of-sale/api/cash-drawer-api/cash-drawer-api.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/api/connectivity-api/connectivity-api.d.ts +9 -0
- package/build/ts/surfaces/point-of-sale/api/connectivity-api/connectivity-api.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/api/customer-api/customer-api.d.ts +5 -0
- package/build/ts/surfaces/point-of-sale/api/customer-api/customer-api.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/api/device-api/device-api.d.ts +5 -0
- package/build/ts/surfaces/point-of-sale/api/device-api/device-api.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/api/draft-order-api/draft-order-api.d.ts +5 -0
- package/build/ts/surfaces/point-of-sale/api/draft-order-api/draft-order-api.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/api/locale-api/locale-api.d.ts +5 -0
- package/build/ts/surfaces/point-of-sale/api/locale-api/locale-api.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/api/navigation-api/navigation-api.d.ts +9 -0
- package/build/ts/surfaces/point-of-sale/api/navigation-api/navigation-api.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/api/order-api/order-api.d.ts +2 -0
- package/build/ts/surfaces/point-of-sale/api/order-api/order-api.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/api/pin-pad-api.d.ts +5 -0
- package/build/ts/surfaces/point-of-sale/api/pin-pad-api.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/api/print-api/print-api.d.ts +2 -0
- package/build/ts/surfaces/point-of-sale/api/print-api/print-api.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/api/product-api/product-api.d.ts +5 -0
- package/build/ts/surfaces/point-of-sale/api/product-api/product-api.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/api/product-search-api/product-search-api.d.ts +10 -0
- package/build/ts/surfaces/point-of-sale/api/product-search-api/product-search-api.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/api/scanner-api/scanner-api.d.ts +12 -1
- package/build/ts/surfaces/point-of-sale/api/scanner-api/scanner-api.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/api/session-api/session-api.d.ts +5 -0
- package/build/ts/surfaces/point-of-sale/api/session-api/session-api.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/api/standard/standard-api.d.ts +3 -0
- package/build/ts/surfaces/point-of-sale/api/standard/standard-api.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/api/storage-api/storage-api.d.ts +1 -0
- package/build/ts/surfaces/point-of-sale/api/storage-api/storage-api.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/api/toast-api/toast-api.d.ts +5 -0
- package/build/ts/surfaces/point-of-sale/api/toast-api/toast-api.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/components/Badge.d.ts +5 -0
- package/build/ts/surfaces/point-of-sale/components/Banner.d.ts +6 -0
- package/build/ts/surfaces/point-of-sale/components/Box.d.ts +6 -0
- package/build/ts/surfaces/point-of-sale/components/Button.d.ts +6 -0
- package/build/ts/surfaces/point-of-sale/components/Choice.d.ts +5 -0
- package/build/ts/surfaces/point-of-sale/components/ChoiceList.d.ts +6 -0
- package/build/ts/surfaces/point-of-sale/components/Clickable.d.ts +6 -0
- package/build/ts/surfaces/point-of-sale/components/DateField.d.ts +7 -0
- package/build/ts/surfaces/point-of-sale/components/DatePicker.d.ts +6 -0
- package/build/ts/surfaces/point-of-sale/components/DateSpinner.d.ts +6 -0
- package/build/ts/surfaces/point-of-sale/components/Divider.d.ts +5 -0
- package/build/ts/surfaces/point-of-sale/components/EmailField.d.ts +8 -0
- package/build/ts/surfaces/point-of-sale/components/Embed.d.ts +6 -0
- package/build/ts/surfaces/point-of-sale/components/EmptyState.d.ts +7 -0
- package/build/ts/surfaces/point-of-sale/components/Heading.d.ts +5 -0
- package/build/ts/surfaces/point-of-sale/components/Icon.d.ts +6 -0
- package/build/ts/surfaces/point-of-sale/components/Image.d.ts +5 -0
- package/build/ts/surfaces/point-of-sale/components/Link.d.ts +7 -0
- package/build/ts/surfaces/point-of-sale/components/Modal.d.ts +7 -0
- package/build/ts/surfaces/point-of-sale/components/NumberField.d.ts +7 -0
- package/build/ts/surfaces/point-of-sale/components/Page.d.ts +6 -0
- package/build/ts/surfaces/point-of-sale/components/PosBlock.d.ts +6 -0
- package/build/ts/surfaces/point-of-sale/components/QrCode.d.ts +5 -0
- package/build/ts/surfaces/point-of-sale/components/ScrollBox.d.ts +6 -0
- package/build/ts/surfaces/point-of-sale/components/SearchField.d.ts +6 -0
- package/build/ts/surfaces/point-of-sale/components/Section.d.ts +6 -0
- package/build/ts/surfaces/point-of-sale/components/Spinner.d.ts +6 -0
- package/build/ts/surfaces/point-of-sale/components/Stack.d.ts +7 -0
- package/build/ts/surfaces/point-of-sale/components/Switch.d.ts +7 -0
- package/build/ts/surfaces/point-of-sale/components/Tab.d.ts +6 -0
- package/build/ts/surfaces/point-of-sale/components/TabList.d.ts +6 -0
- package/build/ts/surfaces/point-of-sale/components/TabPanel.d.ts +6 -0
- package/build/ts/surfaces/point-of-sale/components/Tabs.d.ts +7 -0
- package/build/ts/surfaces/point-of-sale/components/Text.d.ts +5 -0
- package/build/ts/surfaces/point-of-sale/components/TextArea.d.ts +8 -0
- package/build/ts/surfaces/point-of-sale/components/TextField.d.ts +7 -0
- package/build/ts/surfaces/point-of-sale/components/Tile.d.ts +6 -0
- package/build/ts/surfaces/point-of-sale/components/TimeField.d.ts +6 -0
- package/build/ts/surfaces/point-of-sale/components/TimePicker.d.ts +6 -0
- package/build/ts/surfaces/point-of-sale/components/components-shared.d.ts +135 -0
- package/build/ts/surfaces/point-of-sale/components/targets/ActionExtensionComponents.d.ts +3 -0
- package/build/ts/surfaces/point-of-sale/components/targets/ActionExtensionComponents.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/components/targets/BasicComponents.d.ts +3 -0
- package/build/ts/surfaces/point-of-sale/components/targets/BasicComponents.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/components/targets/BlockExtensionComponents.d.ts +3 -0
- package/build/ts/surfaces/point-of-sale/components/targets/BlockExtensionComponents.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/components/targets/ReceiptComponents.d.ts +3 -0
- package/build/ts/surfaces/point-of-sale/components/targets/ReceiptComponents.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/components/targets/SmartGridComponents.d.ts +3 -0
- package/build/ts/surfaces/point-of-sale/components/targets/SmartGridComponents.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/components/targets/StandardComponents.d.ts +3 -0
- package/build/ts/surfaces/point-of-sale/components/targets/StandardComponents.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/event/data/BaseApi.d.ts +1 -0
- package/build/ts/surfaces/point-of-sale/event/data/BaseApi.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/event/data/BaseData.d.ts +3 -2
- package/build/ts/surfaces/point-of-sale/event/data/BaseData.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/event/data/CartUpdateEventData.d.ts +1 -0
- package/build/ts/surfaces/point-of-sale/event/data/CartUpdateEventData.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/event/data/CashTrackingSessionData.d.ts +2 -0
- package/build/ts/surfaces/point-of-sale/event/data/CashTrackingSessionData.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/event/data/ExchangeTransactionData.d.ts +1 -0
- package/build/ts/surfaces/point-of-sale/event/data/ExchangeTransactionData.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/event/data/ReprintReceiptData.d.ts +1 -0
- package/build/ts/surfaces/point-of-sale/event/data/ReprintReceiptData.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/event/data/ReturnTransactionData.d.ts +1 -0
- package/build/ts/surfaces/point-of-sale/event/data/ReturnTransactionData.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/event/data/SaleTransactionData.d.ts +1 -0
- package/build/ts/surfaces/point-of-sale/event/data/SaleTransactionData.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/event/data/TransactionCompleteData.d.ts +2 -0
- package/build/ts/surfaces/point-of-sale/event/data/TransactionCompleteData.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/event/output/BaseOutput.d.ts +1 -0
- package/build/ts/surfaces/point-of-sale/event/output/BaseOutput.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/extension-targets.d.ts +18 -0
- package/build/ts/surfaces/point-of-sale/extension-targets.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/types/base-transaction-complete.d.ts +1 -0
- package/build/ts/surfaces/point-of-sale/types/base-transaction-complete.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/types/cart.d.ts +13 -0
- package/build/ts/surfaces/point-of-sale/types/cart.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/types/country-code.d.ts +1 -0
- package/build/ts/surfaces/point-of-sale/types/country-code.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/types/device.d.ts +1 -0
- package/build/ts/surfaces/point-of-sale/types/device.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/types/direct-api-request-body.d.ts +1 -0
- package/build/ts/surfaces/point-of-sale/types/direct-api-request-body.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/types/discount-allocation.d.ts +1 -0
- package/build/ts/surfaces/point-of-sale/types/discount-allocation.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/types/money.d.ts +2 -0
- package/build/ts/surfaces/point-of-sale/types/money.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/types/multiple-resource-result.d.ts +1 -0
- package/build/ts/surfaces/point-of-sale/types/multiple-resource-result.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/types/order.d.ts +2 -0
- package/build/ts/surfaces/point-of-sale/types/order.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/types/paginated-result.d.ts +1 -0
- package/build/ts/surfaces/point-of-sale/types/paginated-result.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/types/payment.d.ts +2 -0
- package/build/ts/surfaces/point-of-sale/types/payment.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/types/pin-pad.d.ts +5 -0
- package/build/ts/surfaces/point-of-sale/types/pin-pad.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/types/product.d.ts +5 -0
- package/build/ts/surfaces/point-of-sale/types/product.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/types/session.d.ts +1 -0
- package/build/ts/surfaces/point-of-sale/types/session.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/types/shipping-line.d.ts +3 -0
- package/build/ts/surfaces/point-of-sale/types/shipping-line.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/types/storage.d.ts +4 -0
- package/build/ts/surfaces/point-of-sale/types/storage.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/types/tax-line.d.ts +1 -0
- package/build/ts/surfaces/point-of-sale/types/tax-line.d.ts.map +1 -1
- package/build/ts/surfaces/point-of-sale/types/transaction-type.d.ts +1 -0
- package/build/ts/surfaces/point-of-sale/types/transaction-type.d.ts.map +1 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/src/shared.ts +32 -12
- package/src/surfaces/admin/api/action/action.ts +1 -0
- package/src/surfaces/admin/api/block/block.ts +2 -0
- package/src/surfaces/admin/api/checkout-rules/launch-options.ts +7 -3
- package/src/surfaces/admin/api/checkout-rules/metafields.ts +13 -6
- package/src/surfaces/admin/api/checkout-rules/validation-settings.ts +1 -0
- package/src/surfaces/admin/api/customer-segment-template/customer-segment-template.ts +3 -0
- package/src/surfaces/admin/api/discount-function-settings/discount-function-settings.ts +1 -0
- package/src/surfaces/admin/api/discount-function-settings/launch-options.ts +7 -2
- package/src/surfaces/admin/api/discount-function-settings/metafields.ts +13 -6
- package/src/surfaces/admin/api/generated/generated.ts +76 -0
- package/src/surfaces/admin/api/intents/intent-render.ts +26 -0
- package/src/surfaces/admin/api/intents/intents.ts +49 -8
- package/src/surfaces/admin/api/order-routing-rule/data.ts +5 -2
- package/src/surfaces/admin/api/order-routing-rule/metafields.ts +8 -3
- package/src/surfaces/admin/api/order-routing-rule/order-routing-rule.ts +1 -0
- package/src/surfaces/admin/api/picker/picker.ts +15 -6
- package/src/surfaces/admin/api/print-action/print-action.ts +1 -0
- package/src/surfaces/admin/api/product-configuration/product-details-configuration.ts +4 -1
- package/src/surfaces/admin/api/product-configuration/product-variant-details-configuration.ts +4 -1
- package/src/surfaces/admin/api/purchase-options-card-action.ts +1 -0
- package/src/surfaces/admin/api/resource-picker/resource-picker.ts +36 -17
- package/src/surfaces/admin/api/shared.ts +2 -0
- package/src/surfaces/admin/api/standard/standard-rendering.ts +3 -0
- package/src/surfaces/admin/api/standard/standard.ts +4 -1
- package/src/surfaces/admin/api/standard/storage.ts +4 -0
- package/src/surfaces/admin/api.ts +7 -0
- package/src/surfaces/admin/components/AdminAction.d.ts +6 -0
- package/src/surfaces/admin/components/AdminBlock.d.ts +6 -0
- package/src/surfaces/admin/components/AdminPrintAction.d.ts +6 -0
- package/src/surfaces/admin/components/Avatar.d.ts +9 -0
- package/src/surfaces/admin/components/Badge.d.ts +9 -0
- package/src/surfaces/admin/components/Banner.d.ts +11 -0
- package/src/surfaces/admin/components/Box.d.ts +14 -0
- package/src/surfaces/admin/components/Button.d.ts +14 -0
- package/src/surfaces/admin/components/ButtonGroup.d.ts +8 -0
- package/src/surfaces/admin/components/Checkbox.d.ts +12 -1
- package/src/surfaces/admin/components/Chip.d.ts +4 -2
- package/src/surfaces/admin/components/Choice.d.ts +10 -2
- package/src/surfaces/admin/components/ChoiceList.d.ts +12 -2
- package/src/surfaces/admin/components/Clickable.d.ts +16 -4
- package/src/surfaces/admin/components/ClickableChip.d.ts +11 -0
- package/src/surfaces/admin/components/ColorField.d.ts +12 -0
- package/src/surfaces/admin/components/ColorPicker.d.ts +9 -0
- package/src/surfaces/admin/components/DateField.d.ts +11 -0
- package/src/surfaces/admin/components/DatePicker.d.ts +10 -1
- package/src/surfaces/admin/components/Divider.d.ts +7 -0
- package/src/surfaces/admin/components/DropZone.d.ts +8 -4
- package/src/surfaces/admin/components/EmailField.d.ts +12 -0
- package/src/surfaces/admin/components/Form.d.ts +10 -0
- package/src/surfaces/admin/components/FunctionSettings.d.ts +12 -0
- package/src/surfaces/admin/components/Grid.d.ts +16 -0
- package/src/surfaces/admin/components/GridItem.d.ts +15 -0
- package/src/surfaces/admin/components/Heading.d.ts +8 -0
- package/src/surfaces/admin/components/Icon.d.ts +6 -3
- package/src/surfaces/admin/components/Image.d.ts +15 -0
- package/src/surfaces/admin/components/Link.d.ts +13 -3
- package/src/surfaces/admin/components/ListItem.d.ts +8 -0
- package/src/surfaces/admin/components/Menu.d.ts +11 -0
- package/src/surfaces/admin/components/Modal.d.ts +8 -4
- package/src/surfaces/admin/components/MoneyField.d.ts +13 -0
- package/src/surfaces/admin/components/NumberField.d.ts +12 -0
- package/src/surfaces/admin/components/Option.d.ts +10 -2
- package/src/surfaces/admin/components/OptionGroup.d.ts +10 -2
- package/src/surfaces/admin/components/OrderedList.d.ts +8 -0
- package/src/surfaces/admin/components/Page.d.ts +4 -2
- package/src/surfaces/admin/components/Paragraph.d.ts +8 -0
- package/src/surfaces/admin/components/PasswordField.d.ts +12 -0
- package/src/surfaces/admin/components/QueryContainer.d.ts +8 -0
- package/src/surfaces/admin/components/SearchField.d.ts +13 -1
- package/src/surfaces/admin/components/Section.d.ts +9 -0
- package/src/surfaces/admin/components/Select.d.ts +14 -2
- package/src/surfaces/admin/components/Spinner.d.ts +7 -0
- package/src/surfaces/admin/components/Stack.d.ts +16 -0
- package/src/surfaces/admin/components/Switch.d.ts +12 -1
- package/src/surfaces/admin/components/Table.d.ts +15 -0
- package/src/surfaces/admin/components/TableBody.d.ts +8 -0
- package/src/surfaces/admin/components/TableCell.d.ts +9 -0
- package/src/surfaces/admin/components/TableHeader.d.ts +9 -0
- package/src/surfaces/admin/components/TableHeaderRow.d.ts +8 -0
- package/src/surfaces/admin/components/TableRow.d.ts +8 -0
- package/src/surfaces/admin/components/Text.d.ts +19 -0
- package/src/surfaces/admin/components/TextArea.d.ts +12 -0
- package/src/surfaces/admin/components/TextField.d.ts +13 -0
- package/src/surfaces/admin/components/Thumbnail.d.ts +9 -0
- package/src/surfaces/admin/components/Tooltip.d.ts +11 -0
- package/src/surfaces/admin/components/URLField.d.ts +12 -0
- package/src/surfaces/admin/components/UnorderedList.d.ts +14 -0
- package/src/surfaces/admin/components/shared.d.ts +267 -0
- package/src/surfaces/admin/components.d.ts +700 -0
- package/src/surfaces/admin/extension-targets.ts +12 -0
- package/src/surfaces/checkout/api/address-autocomplete/format-suggestion.ts +2 -0
- package/src/surfaces/checkout/api/address-autocomplete/shared.ts +3 -0
- package/src/surfaces/checkout/api/address-autocomplete/standard.ts +2 -1
- package/src/surfaces/checkout/api/address-autocomplete/suggest.ts +2 -0
- package/src/surfaces/checkout/api/announcement/announcement.ts +1 -0
- package/src/surfaces/checkout/api/cart-line/cart-line-item.ts +5 -1
- package/src/surfaces/checkout/api/checkout/checkout.ts +258 -122
- package/src/surfaces/checkout/api/docs.ts +34 -1
- package/src/surfaces/checkout/api/order-confirmation/order-confirmation.ts +12 -5
- package/src/surfaces/checkout/api/payment/payment-option-item.ts +7 -0
- package/src/surfaces/checkout/api/pickup/pickup-location-item.ts +3 -2
- package/src/surfaces/checkout/api/pickup/pickup-location-list.ts +4 -1
- package/src/surfaces/checkout/api/pickup/pickup-point-list.ts +4 -1
- package/src/surfaces/checkout/api/redeemable/redeemable.ts +7 -0
- package/src/surfaces/checkout/api/shared.ts +79 -31
- package/src/surfaces/checkout/api/shipping/shipping-option-item.ts +6 -4
- package/src/surfaces/checkout/api/shipping/shipping-option-list.ts +18 -12
- package/src/surfaces/checkout/api/standard/standard.ts +661 -425
- package/src/surfaces/checkout/components/Abbreviation.d.ts +1 -0
- package/src/surfaces/checkout/components/Announcement.d.ts +34 -9
- package/src/surfaces/checkout/components/Badge.d.ts +44 -3
- package/src/surfaces/checkout/components/Banner.d.ts +60 -9
- package/src/surfaces/checkout/components/Box.d.ts +50 -0
- package/src/surfaces/checkout/components/Button.d.ts +10 -3
- package/src/surfaces/checkout/components/Chat.d.ts +20 -0
- package/src/surfaces/checkout/components/Checkbox.d.ts +10 -2
- package/src/surfaces/checkout/components/Chip.d.ts +3 -3
- package/src/surfaces/checkout/components/Choice.d.ts +2 -0
- package/src/surfaces/checkout/components/ChoiceList.d.ts +10 -2
- package/src/surfaces/checkout/components/Clickable.d.ts +31 -7
- package/src/surfaces/checkout/components/ClickableChip.d.ts +15 -8
- package/src/surfaces/checkout/components/ClipboardItem.d.ts +10 -2
- package/src/surfaces/checkout/components/ConsentCheckbox.d.ts +16 -2
- package/src/surfaces/checkout/components/ConsentPhoneField.d.ts +24 -10
- package/src/surfaces/checkout/components/DateField.d.ts +24 -6
- package/src/surfaces/checkout/components/DatePicker.d.ts +21 -5
- package/src/surfaces/checkout/components/Details.d.ts +13 -8
- package/src/surfaces/checkout/components/Divider.d.ts +1 -0
- package/src/surfaces/checkout/components/DropZone.d.ts +15 -3
- package/src/surfaces/checkout/components/EmailField.d.ts +18 -10
- package/src/surfaces/checkout/components/Form.d.ts +9 -1
- package/src/surfaces/checkout/components/Grid.d.ts +137 -0
- package/src/surfaces/checkout/components/GridItem.d.ts +55 -0
- package/src/surfaces/checkout/components/Heading.d.ts +1 -0
- package/src/surfaces/checkout/components/Icon.d.ts +49 -4
- package/src/surfaces/checkout/components/Image.d.ts +43 -1
- package/src/surfaces/checkout/components/Link.d.ts +10 -3
- package/src/surfaces/checkout/components/ListItem.d.ts +1 -0
- package/src/surfaces/checkout/components/Map.d.ts +68 -6
- package/src/surfaces/checkout/components/MapMarker.d.ts +36 -8
- package/src/surfaces/checkout/components/Modal.d.ts +52 -8
- package/src/surfaces/checkout/components/MoneyField.d.ts +16 -8
- package/src/surfaces/checkout/components/NumberField.d.ts +18 -10
- package/src/surfaces/checkout/components/Option.d.ts +1 -0
- package/src/surfaces/checkout/components/OrderedList.d.ts +1 -0
- package/src/surfaces/checkout/components/Paragraph.d.ts +12 -0
- package/src/surfaces/checkout/components/PasswordField.d.ts +18 -10
- package/src/surfaces/checkout/components/PaymentIcon.d.ts +17 -1
- package/src/surfaces/checkout/components/PhoneField.d.ts +18 -10
- package/src/surfaces/checkout/components/Popover.d.ts +39 -22
- package/src/surfaces/checkout/components/PressButton.d.ts +14 -6
- package/src/surfaces/checkout/components/ProductThumbnail.d.ts +26 -1
- package/src/surfaces/checkout/components/Progress.d.ts +27 -0
- package/src/surfaces/checkout/components/QRCode.d.ts +28 -3
- package/src/surfaces/checkout/components/QueryContainer.d.ts +1 -0
- package/src/surfaces/checkout/components/ScrollBox.d.ts +55 -0
- package/src/surfaces/checkout/components/Section.d.ts +4 -0
- package/src/surfaces/checkout/components/Select.d.ts +14 -6
- package/src/surfaces/checkout/components/Sheet.d.ts +40 -13
- package/src/surfaces/checkout/components/SkeletonParagraph.d.ts +1 -0
- package/src/surfaces/checkout/components/Spinner.d.ts +16 -0
- package/src/surfaces/checkout/components/Stack.d.ts +110 -0
- package/src/surfaces/checkout/components/Summary.d.ts +1 -0
- package/src/surfaces/checkout/components/Switch.d.ts +10 -2
- package/src/surfaces/checkout/components/Text.d.ts +18 -1
- package/src/surfaces/checkout/components/TextArea.d.ts +16 -8
- package/src/surfaces/checkout/components/TextField.d.ts +18 -10
- package/src/surfaces/checkout/components/Time.d.ts +1 -0
- package/src/surfaces/checkout/components/Tooltip.d.ts +21 -2
- package/src/surfaces/checkout/components/UnorderedList.d.ts +1 -0
- package/src/surfaces/checkout/components/UrlField.d.ts +18 -10
- package/src/surfaces/checkout/components/components-shared.d.ts +728 -718
- package/src/surfaces/checkout/components/components.d.ts +575 -297
- package/src/surfaces/checkout/extension-targets.ts +13 -0
- package/src/surfaces/checkout/globals.ts +1 -0
- package/src/surfaces/checkout/preact/api.ts +2 -0
- package/src/surfaces/checkout/preact/app-metafields.ts +1 -0
- package/src/surfaces/checkout/preact/attributes.ts +3 -0
- package/src/surfaces/checkout/preact/billing-address.ts +1 -0
- package/src/surfaces/checkout/preact/buyer-identity.ts +4 -0
- package/src/surfaces/checkout/preact/buyer-journey.ts +5 -0
- package/src/surfaces/checkout/preact/capabilities.ts +2 -0
- package/src/surfaces/checkout/preact/cart-line-target.ts +1 -0
- package/src/surfaces/checkout/preact/cart-lines.ts +2 -0
- package/src/surfaces/checkout/preact/checkout-settings.ts +1 -0
- package/src/surfaces/checkout/preact/checkout-token.ts +1 -0
- package/src/surfaces/checkout/preact/cost.ts +4 -0
- package/src/surfaces/checkout/preact/country.ts +1 -0
- package/src/surfaces/checkout/preact/currency.ts +1 -0
- package/src/surfaces/checkout/preact/customer-privacy.ts +1 -0
- package/src/surfaces/checkout/preact/delivery-group-list-target.ts +1 -0
- package/src/surfaces/checkout/preact/delivery-group-target.ts +1 -0
- package/src/surfaces/checkout/preact/delivery-group.ts +1 -0
- package/src/surfaces/checkout/preact/delivery-groups.ts +1 -0
- package/src/surfaces/checkout/preact/delivery-selection-groups.ts +1 -0
- package/src/surfaces/checkout/preact/discounts.ts +3 -0
- package/src/surfaces/checkout/preact/extension-editor.ts +1 -0
- package/src/surfaces/checkout/preact/extension-language.ts +1 -0
- package/src/surfaces/checkout/preact/extension.ts +2 -0
- package/src/surfaces/checkout/preact/gift-cards.ts +2 -0
- package/src/surfaces/checkout/preact/instructions.ts +1 -0
- package/src/surfaces/checkout/preact/language.ts +1 -0
- package/src/surfaces/checkout/preact/localized-fields.ts +2 -0
- package/src/surfaces/checkout/preact/market.ts +1 -0
- package/src/surfaces/checkout/preact/metafields.ts +1 -0
- package/src/surfaces/checkout/preact/note.ts +2 -0
- package/src/surfaces/checkout/preact/payment-method.ts +3 -0
- package/src/surfaces/checkout/preact/payment-options.ts +2 -0
- package/src/surfaces/checkout/preact/pickup-location-option-target.ts +1 -0
- package/src/surfaces/checkout/preact/redeemable.ts +1 -0
- package/src/surfaces/checkout/preact/session-token.ts +1 -0
- package/src/surfaces/checkout/preact/settings.ts +1 -0
- package/src/surfaces/checkout/preact/shipping-address.ts +2 -0
- package/src/surfaces/checkout/preact/shipping-option-target.ts +1 -0
- package/src/surfaces/checkout/preact/shop.ts +1 -0
- package/src/surfaces/checkout/preact/storage.ts +1 -0
- package/src/surfaces/checkout/preact/subscription.ts +1 -0
- package/src/surfaces/checkout/preact/target.ts +1 -0
- package/src/surfaces/checkout/preact/timezone.ts +1 -0
- package/src/surfaces/checkout/preact/translate.ts +1 -0
- package/src/surfaces/checkout/shared.ts +11 -21
- package/src/surfaces/checkout/style/style.ts +1 -0
- package/src/surfaces/checkout/style/types.ts +20 -7
- package/src/surfaces/customer-account/api/cart-line/cart-line-item.ts +3 -0
- package/src/surfaces/customer-account/api/docs.ts +244 -19
- package/src/surfaces/customer-account/api/order-status/order-status.ts +460 -296
- package/src/surfaces/customer-account/api/shared.ts +210 -138
- package/src/surfaces/customer-account/api/standard-api/standard-api.ts +84 -68
- package/src/surfaces/customer-account/components/Avatar.d.ts +43 -15
- package/src/surfaces/customer-account/components/ButtonGroup.d.ts +3 -3
- package/src/surfaces/customer-account/components/CustomerAccountAction.d.ts +3 -3
- package/src/surfaces/customer-account/components/ImageGroup.d.ts +7 -2
- package/src/surfaces/customer-account/components/Menu.d.ts +1 -1
- package/src/surfaces/customer-account/components/Page.d.ts +5 -5
- package/src/surfaces/customer-account/components/Section.d.ts +3 -7
- package/src/surfaces/customer-account/components/shared.ts +23 -5
- package/src/surfaces/customer-account/components.d.ts +93 -0
- package/src/surfaces/customer-account/extension-targets.ts +8 -0
- package/src/surfaces/point-of-sale/api/action-api/action-api.ts +4 -0
- package/src/surfaces/point-of-sale/api/action-target-api/action-target-api.ts +3 -0
- package/src/surfaces/point-of-sale/api/camera-api/camera-api.ts +4 -0
- package/src/surfaces/point-of-sale/api/cart-api/cart-api.ts +7 -0
- package/src/surfaces/point-of-sale/api/cart-line-item-api/cart-line-item-api.ts +1 -0
- package/src/surfaces/point-of-sale/api/cash-drawer-api/cash-drawer-api.ts +2 -0
- package/src/surfaces/point-of-sale/api/connectivity-api/connectivity-api.ts +9 -0
- package/src/surfaces/point-of-sale/api/customer-api/customer-api.ts +5 -0
- package/src/surfaces/point-of-sale/api/device-api/device-api.ts +5 -0
- package/src/surfaces/point-of-sale/api/draft-order-api/draft-order-api.ts +5 -0
- package/src/surfaces/point-of-sale/api/locale-api/locale-api.ts +5 -0
- package/src/surfaces/point-of-sale/api/navigation-api/navigation-api.ts +9 -0
- package/src/surfaces/point-of-sale/api/order-api/order-api.ts +2 -0
- package/src/surfaces/point-of-sale/api/pin-pad-api.ts +5 -0
- package/src/surfaces/point-of-sale/api/print-api/print-api.ts +2 -0
- package/src/surfaces/point-of-sale/api/product-api/product-api.ts +5 -0
- package/src/surfaces/point-of-sale/api/product-search-api/product-search-api.ts +10 -0
- package/src/surfaces/point-of-sale/api/scanner-api/scanner-api.ts +12 -1
- package/src/surfaces/point-of-sale/api/session-api/session-api.ts +5 -0
- package/src/surfaces/point-of-sale/api/standard/standard-api.ts +3 -0
- package/src/surfaces/point-of-sale/api/storage-api/storage-api.ts +1 -0
- package/src/surfaces/point-of-sale/api/toast-api/toast-api.ts +5 -0
- package/src/surfaces/point-of-sale/components/Badge.d.ts +5 -0
- package/src/surfaces/point-of-sale/components/Banner.d.ts +6 -0
- package/src/surfaces/point-of-sale/components/Box.d.ts +6 -0
- package/src/surfaces/point-of-sale/components/Button.d.ts +6 -0
- package/src/surfaces/point-of-sale/components/Choice.d.ts +5 -0
- package/src/surfaces/point-of-sale/components/ChoiceList.d.ts +6 -0
- package/src/surfaces/point-of-sale/components/Clickable.d.ts +6 -0
- package/src/surfaces/point-of-sale/components/DateField.d.ts +7 -0
- package/src/surfaces/point-of-sale/components/DatePicker.d.ts +6 -0
- package/src/surfaces/point-of-sale/components/DateSpinner.d.ts +6 -0
- package/src/surfaces/point-of-sale/components/Divider.d.ts +5 -0
- package/src/surfaces/point-of-sale/components/EmailField.d.ts +8 -0
- package/src/surfaces/point-of-sale/components/Embed.d.ts +6 -0
- package/src/surfaces/point-of-sale/components/EmptyState.d.ts +7 -0
- package/src/surfaces/point-of-sale/components/Heading.d.ts +5 -0
- package/src/surfaces/point-of-sale/components/Icon.d.ts +6 -0
- package/src/surfaces/point-of-sale/components/Image.d.ts +5 -0
- package/src/surfaces/point-of-sale/components/Link.d.ts +7 -0
- package/src/surfaces/point-of-sale/components/Modal.d.ts +7 -0
- package/src/surfaces/point-of-sale/components/NumberField.d.ts +7 -0
- package/src/surfaces/point-of-sale/components/Page.d.ts +6 -0
- package/src/surfaces/point-of-sale/components/PosBlock.d.ts +6 -0
- package/src/surfaces/point-of-sale/components/QrCode.d.ts +5 -0
- package/src/surfaces/point-of-sale/components/ScrollBox.d.ts +6 -0
- package/src/surfaces/point-of-sale/components/SearchField.d.ts +6 -0
- package/src/surfaces/point-of-sale/components/Section.d.ts +6 -0
- package/src/surfaces/point-of-sale/components/Spinner.d.ts +6 -0
- package/src/surfaces/point-of-sale/components/Stack.d.ts +7 -0
- package/src/surfaces/point-of-sale/components/Switch.d.ts +7 -0
- package/src/surfaces/point-of-sale/components/Tab.d.ts +6 -0
- package/src/surfaces/point-of-sale/components/TabList.d.ts +6 -0
- package/src/surfaces/point-of-sale/components/TabPanel.d.ts +6 -0
- package/src/surfaces/point-of-sale/components/Tabs.d.ts +7 -0
- package/src/surfaces/point-of-sale/components/Text.d.ts +5 -0
- package/src/surfaces/point-of-sale/components/TextArea.d.ts +8 -0
- package/src/surfaces/point-of-sale/components/TextField.d.ts +7 -0
- package/src/surfaces/point-of-sale/components/Tile.d.ts +6 -0
- package/src/surfaces/point-of-sale/components/TimeField.d.ts +6 -0
- package/src/surfaces/point-of-sale/components/TimePicker.d.ts +6 -0
- package/src/surfaces/point-of-sale/components/components-shared.d.ts +135 -0
- package/src/surfaces/point-of-sale/components/targets/ActionExtensionComponents.ts +3 -0
- package/src/surfaces/point-of-sale/components/targets/BasicComponents.ts +3 -0
- package/src/surfaces/point-of-sale/components/targets/BlockExtensionComponents.ts +3 -0
- package/src/surfaces/point-of-sale/components/targets/ReceiptComponents.ts +3 -0
- package/src/surfaces/point-of-sale/components/targets/SmartGridComponents.ts +3 -0
- package/src/surfaces/point-of-sale/components/targets/StandardComponents.ts +3 -0
- package/src/surfaces/point-of-sale/components.d.ts +286 -0
- package/src/surfaces/point-of-sale/event/data/BaseApi.ts +1 -0
- package/src/surfaces/point-of-sale/event/data/BaseData.ts +7 -2
- package/src/surfaces/point-of-sale/event/data/CartUpdateEventData.ts +1 -0
- package/src/surfaces/point-of-sale/event/data/CashTrackingSessionData.ts +2 -0
- package/src/surfaces/point-of-sale/event/data/ExchangeTransactionData.ts +1 -0
- package/src/surfaces/point-of-sale/event/data/ReprintReceiptData.ts +1 -0
- package/src/surfaces/point-of-sale/event/data/ReturnTransactionData.ts +1 -0
- package/src/surfaces/point-of-sale/event/data/SaleTransactionData.ts +1 -0
- package/src/surfaces/point-of-sale/event/data/TransactionCompleteData.ts +2 -0
- package/src/surfaces/point-of-sale/event/output/BaseOutput.ts +1 -0
- package/src/surfaces/point-of-sale/extension-targets.ts +18 -0
- package/src/surfaces/point-of-sale/types/base-transaction-complete.ts +1 -0
- package/src/surfaces/point-of-sale/types/cart.ts +13 -0
- package/src/surfaces/point-of-sale/types/country-code.ts +1 -0
- package/src/surfaces/point-of-sale/types/device.ts +1 -0
- package/src/surfaces/point-of-sale/types/direct-api-request-body.ts +1 -0
- package/src/surfaces/point-of-sale/types/discount-allocation.ts +1 -0
- package/src/surfaces/point-of-sale/types/money.ts +2 -0
- package/src/surfaces/point-of-sale/types/multiple-resource-result.ts +1 -0
- package/src/surfaces/point-of-sale/types/order.ts +2 -0
- package/src/surfaces/point-of-sale/types/paginated-result.ts +1 -0
- package/src/surfaces/point-of-sale/types/payment.ts +2 -0
- package/src/surfaces/point-of-sale/types/pin-pad.ts +5 -0
- package/src/surfaces/point-of-sale/types/product.ts +5 -0
- package/src/surfaces/point-of-sale/types/session.ts +1 -0
- package/src/surfaces/point-of-sale/types/shipping-line.ts +3 -0
- package/src/surfaces/point-of-sale/types/storage.ts +4 -0
- package/src/surfaces/point-of-sale/types/tax-line.ts +1 -0
- package/src/surfaces/point-of-sale/types/transaction-type.ts +1 -0
|
@@ -4,21 +4,18 @@ import type { ApiVersion, Capability, CurrencyCode, Country, CountryCode, Timezo
|
|
|
4
4
|
import type { SubscribableSignalLike } from '../../shared';
|
|
5
5
|
export type { ApiVersion, Capability } from '../../../../shared';
|
|
6
6
|
/**
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* Stored data is only available to this
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* The storage backend is implemented with `localStorage` and
|
|
13
|
-
* should persist across the buyer's checkout session.
|
|
14
|
-
* However, data persistence isn't guaranteed.
|
|
7
|
+
* Key-value storage for a specific extension. Use storage to save
|
|
8
|
+
* preferences or cached data that should survive page reloads without
|
|
9
|
+
* requiring a backend call. Stored data is only available to this
|
|
10
|
+
* specific extension. The storage backend is implemented with
|
|
11
|
+
* `localStorage` and data persistence isn't guaranteed.
|
|
15
12
|
*/
|
|
16
13
|
export interface Storage {
|
|
17
14
|
/**
|
|
18
15
|
* Read and return a stored value by key.
|
|
19
16
|
*
|
|
20
17
|
* The stored data is deserialized from JSON and returned as
|
|
21
|
-
* its original
|
|
18
|
+
* its original type.
|
|
22
19
|
*
|
|
23
20
|
* Returns `null` if no stored data exists.
|
|
24
21
|
*/
|
|
@@ -30,12 +27,14 @@ export interface Storage {
|
|
|
30
27
|
*/
|
|
31
28
|
write(key: string, data: any): Promise<void>;
|
|
32
29
|
/**
|
|
33
|
-
*
|
|
30
|
+
* Deletes a previously stored value by key.
|
|
34
31
|
*/
|
|
35
32
|
delete(key: string): Promise<void>;
|
|
36
33
|
}
|
|
37
34
|
/**
|
|
38
|
-
*
|
|
35
|
+
* Metadata about the running extension, including its API version, target,
|
|
36
|
+
* capabilities, and editor context. Use this to read configuration details or
|
|
37
|
+
* conditionally render content based on where the extension is running.
|
|
39
38
|
*/
|
|
40
39
|
export interface Extension<Target extends ExtensionTarget = ExtensionTarget> {
|
|
41
40
|
/**
|
|
@@ -46,32 +45,32 @@ export interface Extension<Target extends ExtensionTarget = ExtensionTarget> {
|
|
|
46
45
|
apiVersion: ApiVersion;
|
|
47
46
|
/**
|
|
48
47
|
* The allowed capabilities of the extension, defined
|
|
49
|
-
* in your [shopify.extension.toml](https://shopify.dev/docs/api/checkout-ui-extensions/configuration) file.
|
|
48
|
+
* in your [shopify.extension.toml](https://shopify.dev/docs/api/checkout-ui-extensions/{API_VERSION}/configuration) file.
|
|
50
49
|
*
|
|
51
|
-
* * [`api_access`](https://shopify.dev/docs/api/checkout-ui-extensions/configuration#api-access): the extension can access the Storefront API.
|
|
50
|
+
* * [`api_access`](https://shopify.dev/docs/api/checkout-ui-extensions/{API_VERSION}/configuration#api-access): the extension can access the Storefront API.
|
|
52
51
|
*
|
|
53
|
-
* * [`network_access`](https://shopify.dev/docs/api/checkout-ui-extensions/configuration#network-access): the extension can make external network calls.
|
|
52
|
+
* * [`network_access`](https://shopify.dev/docs/api/checkout-ui-extensions/{API_VERSION}/configuration#network-access): the extension can make external network calls.
|
|
54
53
|
*
|
|
55
|
-
* * [`block_progress`](https://shopify.dev/docs/api/checkout-ui-extensions/configuration#block-progress): the extension can block a customer's progress and the merchant has allowed this blocking behavior.
|
|
54
|
+
* * [`block_progress`](https://shopify.dev/docs/api/checkout-ui-extensions/{API_VERSION}/configuration#block-progress): the extension can block a customer's progress and the merchant has allowed this blocking behavior.
|
|
56
55
|
*
|
|
57
|
-
* * [`collect_buyer_consent.sms_marketing`](https://shopify.dev/docs/api/checkout-ui-extensions/configuration#collect-buyer-consent): the extension can collect customer consent for SMS marketing.
|
|
56
|
+
* * [`collect_buyer_consent.sms_marketing`](https://shopify.dev/docs/api/checkout-ui-extensions/{API_VERSION}/configuration#collect-buyer-consent): the extension can collect customer consent for SMS marketing.
|
|
58
57
|
*
|
|
59
|
-
* * [`collect_buyer_consent.customer_privacy`](https://shopify.dev/docs/api/checkout-ui-extensions/configuration#collect-buyer-consent): the extension can register customer consent decisions that
|
|
58
|
+
* * [`collect_buyer_consent.customer_privacy`](https://shopify.dev/docs/api/checkout-ui-extensions/{API_VERSION}/configuration#collect-buyer-consent): the extension can register customer consent decisions that are honored on Shopify-managed services.
|
|
60
59
|
*
|
|
61
|
-
* * [`iframe.sources`](https://shopify.dev/docs/api/checkout-ui-extensions/configuration#iframe): the extension can embed an external URL in an iframe.
|
|
60
|
+
* * [`iframe.sources`](https://shopify.dev/docs/api/checkout-ui-extensions/{API_VERSION}/configuration#iframe): the extension can embed an external URL in an iframe.
|
|
62
61
|
*/
|
|
63
62
|
capabilities: SubscribableSignalLike<Capability[]>;
|
|
64
63
|
/**
|
|
65
64
|
* Information about the editor where the extension is being rendered.
|
|
66
65
|
*
|
|
67
|
-
* If the value is undefined, then the extension
|
|
66
|
+
* If the value is undefined, then the extension isn't running in an editor.
|
|
68
67
|
*/
|
|
69
68
|
editor?: Editor;
|
|
70
69
|
/**
|
|
71
70
|
* A Boolean to show whether your extension is currently rendered to the screen.
|
|
72
71
|
*
|
|
73
72
|
* Shopify might render your extension before it's visible in the UI,
|
|
74
|
-
* typically to pre-render extensions that
|
|
73
|
+
* typically to pre-render extensions that appear on a later step of the
|
|
75
74
|
* checkout.
|
|
76
75
|
*
|
|
77
76
|
* Your extension might also continue to run after the customer has navigated away
|
|
@@ -84,12 +83,12 @@ export interface Extension<Target extends ExtensionTarget = ExtensionTarget> {
|
|
|
84
83
|
*/
|
|
85
84
|
scriptUrl: string;
|
|
86
85
|
/**
|
|
87
|
-
* The identifier that specifies where in Shopify
|
|
88
|
-
* injected. This
|
|
89
|
-
* extension
|
|
86
|
+
* The identifier that specifies where in Shopify's UI your code is being
|
|
87
|
+
* injected. This is one of the targets you've included in your
|
|
88
|
+
* extension's configuration file.
|
|
90
89
|
*
|
|
91
90
|
* @example 'purchase.checkout.block.render'
|
|
92
|
-
* @see https://shopify.dev/docs/api/checkout-ui-extensions/
|
|
91
|
+
* @see https://shopify.dev/docs/api/checkout-ui-extensions/{API_VERSION}/extension-targets-overview
|
|
93
92
|
* @see https://shopify.dev/docs/apps/app-extensions/configuration#targets
|
|
94
93
|
*/
|
|
95
94
|
target: Target;
|
|
@@ -102,102 +101,167 @@ export interface Extension<Target extends ExtensionTarget = ExtensionTarget> {
|
|
|
102
101
|
*/
|
|
103
102
|
version?: string;
|
|
104
103
|
}
|
|
104
|
+
/**
|
|
105
|
+
* Information about the editor environment when an extension is rendered
|
|
106
|
+
* inside the checkout editor. The value is `undefined` when the extension
|
|
107
|
+
* is not rendering in an editor.
|
|
108
|
+
*/
|
|
105
109
|
export interface Editor {
|
|
106
110
|
/**
|
|
107
|
-
* Indicates whether the extension is rendering in the checkout editor.
|
|
111
|
+
* Indicates whether the extension is rendering in the [checkout editor](https://shopify.dev/docs/apps/checkout). Always `'checkout'`.
|
|
108
112
|
*/
|
|
109
113
|
type: 'checkout';
|
|
110
114
|
}
|
|
111
115
|
/**
|
|
112
|
-
* Metadata associated with the checkout.
|
|
116
|
+
* Metadata associated with the checkout. See the [metafields documentation](https://shopify.dev/docs/apps/build/custom-data/metafields) for more information on how metafields work.
|
|
117
|
+
* @publicDocs
|
|
113
118
|
*/
|
|
114
119
|
export interface Metafield {
|
|
115
120
|
/**
|
|
116
|
-
* The name of the metafield.
|
|
117
|
-
*
|
|
121
|
+
* The name of the metafield.
|
|
122
|
+
*
|
|
123
|
+
* @example 'delivery_instructions'
|
|
118
124
|
*/
|
|
119
125
|
key: string;
|
|
120
126
|
/**
|
|
121
127
|
* A container for a set of metafields. You need to define a custom
|
|
122
128
|
* namespace for your metafields to distinguish them from the metafields
|
|
123
|
-
* used by other apps.
|
|
129
|
+
* used by other apps.
|
|
130
|
+
*
|
|
131
|
+
* @example 'my_app'
|
|
124
132
|
*/
|
|
125
133
|
namespace: string;
|
|
126
134
|
/**
|
|
127
|
-
* The information to be stored as metadata.
|
|
135
|
+
* The information to be stored as metadata.
|
|
128
136
|
*/
|
|
129
137
|
value: string | number;
|
|
130
|
-
/**
|
|
138
|
+
/**
|
|
139
|
+
* The metafield's information type.
|
|
140
|
+
*
|
|
141
|
+
* - `'integer'`: A whole number value.
|
|
142
|
+
* - `'string'`: A plain text value.
|
|
143
|
+
* - `'json_string'`: A JSON-encoded string value.
|
|
144
|
+
*/
|
|
131
145
|
valueType: 'integer' | 'string' | 'json_string';
|
|
132
146
|
}
|
|
133
147
|
/**
|
|
134
|
-
* Represents a custom
|
|
148
|
+
* Represents a custom [metafield](https://shopify.dev/docs/apps/build/custom-data/metafields) attached to a resource such as a product, variant, customer, or shop.
|
|
149
|
+
* @publicDocs
|
|
135
150
|
*/
|
|
136
151
|
export interface AppMetafield {
|
|
137
|
-
/**
|
|
152
|
+
/**
|
|
153
|
+
* The identifier for the metafield within its namespace, such as `'ingredients'` or `'shipping_weight'`.
|
|
154
|
+
*/
|
|
138
155
|
key: string;
|
|
139
156
|
/**
|
|
140
|
-
* The namespace
|
|
157
|
+
* The namespace that the metafield belongs to. Namespaces group related metafields and prevent naming collisions between different apps.
|
|
141
158
|
*
|
|
142
|
-
* App owned metafield namespaces are returned using the `$app` format. See [app owned metafields](/docs/apps/build/custom-data/ownership#reserved-prefixes) for more information.
|
|
159
|
+
* App owned metafield namespaces are returned using the `$app` format. See [app owned metafields](https://shopify.dev/docs/apps/build/custom-data/ownership#reserved-prefixes) for more information.
|
|
143
160
|
*/
|
|
144
161
|
namespace: string;
|
|
145
|
-
/**
|
|
162
|
+
/**
|
|
163
|
+
* The value of a metafield, stored as a string regardless of the underlying type. For JSON metafields, parse the string to access structured data.
|
|
164
|
+
*/
|
|
146
165
|
value: string;
|
|
147
|
-
/**
|
|
166
|
+
/**
|
|
167
|
+
* The metafield's information type.
|
|
168
|
+
*
|
|
169
|
+
* - `'boolean'`: A true or false value.
|
|
170
|
+
* - `'float'`: A decimal number value.
|
|
171
|
+
* - `'integer'`: A whole number value.
|
|
172
|
+
* - `'json_string'`: A JSON-encoded string value.
|
|
173
|
+
* - `'string'`: A plain text value.
|
|
174
|
+
*/
|
|
148
175
|
valueType: 'boolean' | 'float' | 'integer' | 'json_string' | 'string';
|
|
149
|
-
/**
|
|
176
|
+
/**
|
|
177
|
+
* The metafield's [type name](https://shopify.dev/docs/apps/build/custom-data/metafields/list-of-data-types), such as `'single_line_text_field'` or `'json'`. This is the full type identifier, whereas `valueType` is a simplified category.
|
|
178
|
+
*/
|
|
150
179
|
type: string;
|
|
151
180
|
}
|
|
152
181
|
/**
|
|
153
|
-
* Represents a custom metadata attached to a
|
|
182
|
+
* Represents a custom metadata attached to the cart. Unlike `AppMetafield`, cart metafield values are always strings and don't include a `valueType` discriminator.
|
|
183
|
+
*
|
|
184
|
+
* Cart [metafields](https://shopify.dev/docs/apps/build/custom-data/metafields) are set by extensions using `applyMetafieldChange()` and can be copied to order metafields at order creation time.
|
|
185
|
+
* @publicDocs
|
|
154
186
|
*/
|
|
155
187
|
export interface CartMetafield {
|
|
156
|
-
/**
|
|
188
|
+
/**
|
|
189
|
+
* The key name of a metafield, such as `'delivery_instructions'` or `'gift_message'`. Together with `namespace`, this uniquely identifies the metafield on the cart.
|
|
190
|
+
*/
|
|
157
191
|
key: string;
|
|
158
|
-
/**
|
|
192
|
+
/**
|
|
193
|
+
* The namespace for a metafield, such as `'custom'` or `'my_app'`. Together with `key`, this uniquely identifies the metafield on the cart.
|
|
194
|
+
*/
|
|
159
195
|
namespace: string;
|
|
160
|
-
/**
|
|
196
|
+
/**
|
|
197
|
+
* The string value stored in the cart metafield. Unlike `AppMetafield`, cart metafield values are always strings.
|
|
198
|
+
*/
|
|
161
199
|
value: string;
|
|
162
|
-
/**
|
|
200
|
+
/**
|
|
201
|
+
* The metafield's [type name](https://shopify.dev/docs/apps/build/custom-data/metafields/list-of-data-types), such as `'single_line_text_field'` or `'json'`.
|
|
202
|
+
*/
|
|
163
203
|
type: string;
|
|
164
204
|
}
|
|
165
205
|
/**
|
|
166
|
-
* The metafield
|
|
206
|
+
* The Shopify resource that a metafield is attached to. Each entry identifies a specific resource by its type and globally-unique ID, so you can trace where the data comes from.
|
|
207
|
+
* @publicDocs
|
|
167
208
|
*/
|
|
168
209
|
export interface AppMetafieldEntryTarget {
|
|
169
210
|
/**
|
|
170
|
-
* The
|
|
211
|
+
* The kind of Shopify resource this metafield belongs to:
|
|
171
212
|
*
|
|
172
|
-
*
|
|
213
|
+
* - `'customer'`: The customer who placed the order.
|
|
214
|
+
* - `'product'`: A product in the merchant's catalog.
|
|
215
|
+
* - `'shop'`: The merchant's shop.
|
|
216
|
+
* - `'shopUser'`: A staff member or collaborator account on the shop.
|
|
217
|
+
* - `'variant'`: A specific variant of a product.
|
|
218
|
+
* - `'company'`: A [B2B](https://shopify.dev/docs/apps/build/b2b) company associated with the order.
|
|
219
|
+
* - `'companyLocation'`: A location belonging to a [B2B](https://shopify.dev/docs/apps/build/b2b) company.
|
|
220
|
+
* - `'cart'`: The cart associated with the checkout.
|
|
221
|
+
*
|
|
222
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data) when the type is `customer`, `company` or `companyLocation`.
|
|
173
223
|
*/
|
|
174
224
|
type: 'customer' | 'product' | 'shop' | 'shopUser' | 'variant' | 'company' | 'companyLocation' | 'cart';
|
|
175
|
-
/**
|
|
225
|
+
/**
|
|
226
|
+
* The globally-unique identifier of the Shopify resource, in [GID](https://shopify.dev/docs/api/usage/gids) format. Use this value to match the metafield to a specific resource in your extension or when querying the [Storefront API](https://shopify.dev/docs/api/storefront).
|
|
227
|
+
*
|
|
228
|
+
* @example 'gid://shopify/Product/123'
|
|
229
|
+
*/
|
|
176
230
|
id: string;
|
|
177
231
|
}
|
|
178
232
|
/**
|
|
179
|
-
*
|
|
233
|
+
* An entry that pairs a Shopify resource with one of its [metafields](https://shopify.dev/docs/apps/build/custom-data/metafields). Each entry contains a `target` identifying which resource the metafield belongs to and a `metafield` object with the actual data.
|
|
234
|
+
* @publicDocs
|
|
180
235
|
*/
|
|
181
236
|
export interface AppMetafieldEntry {
|
|
182
237
|
/**
|
|
183
|
-
* The
|
|
238
|
+
* The Shopify resource that this metafield is attached to, including the resource type (such as `'product'` or `'customer'`) and its globally-unique ID.
|
|
184
239
|
*
|
|
185
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data) when the type is `customer`, `company` or `companyLocation`.
|
|
240
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data) when the type is `customer`, `company` or `companyLocation`.
|
|
186
241
|
*/
|
|
187
242
|
target: AppMetafieldEntryTarget;
|
|
188
|
-
/**
|
|
243
|
+
/**
|
|
244
|
+
* The metafield data, including the namespace, key, value, and content type. Use the `namespace` and `key` together to uniquely identify the metafield within its resource.
|
|
245
|
+
*/
|
|
189
246
|
metafield: AppMetafield;
|
|
190
247
|
}
|
|
248
|
+
/** @publicDocs */
|
|
191
249
|
export type Version = string;
|
|
250
|
+
/** @publicDocs */
|
|
192
251
|
export type CheckoutToken = string;
|
|
193
252
|
/**
|
|
194
|
-
*
|
|
195
|
-
*
|
|
196
|
-
*
|
|
253
|
+
* Translates a key from your extension's locale files into a localized string.
|
|
254
|
+
* Supports interpolation with placeholder replacements and pluralization
|
|
255
|
+
* via the special `count` option.
|
|
197
256
|
*/
|
|
198
257
|
export interface I18nTranslate {
|
|
199
258
|
<ReplacementType = string>(key: string, options?: Record<string, ReplacementType | string | number>): ReplacementType extends string | number ? string : (string | ReplacementType)[];
|
|
200
259
|
}
|
|
260
|
+
/**
|
|
261
|
+
* Utilities for translating strings, formatting currencies, numbers,
|
|
262
|
+
* and dates according to the buyer's locale. Use the I18n API alongside
|
|
263
|
+
* the Localization API to build fully localized extensions.
|
|
264
|
+
*/
|
|
201
265
|
export interface I18n {
|
|
202
266
|
/**
|
|
203
267
|
* Returns a localized number.
|
|
@@ -205,7 +269,7 @@ export interface I18n {
|
|
|
205
269
|
* This function behaves like the standard `Intl.NumberFormat()`
|
|
206
270
|
* with a style of `decimal` applied. It uses the buyer's locale by default.
|
|
207
271
|
*
|
|
208
|
-
* @param options.inExtensionLocale -
|
|
272
|
+
* @param options.inExtensionLocale - If true, uses the extension's locale.
|
|
209
273
|
*/
|
|
210
274
|
formatNumber: (number: number | bigint, options?: {
|
|
211
275
|
inExtensionLocale?: boolean;
|
|
@@ -216,7 +280,7 @@ export interface I18n {
|
|
|
216
280
|
* This function behaves like the standard `Intl.NumberFormat()`
|
|
217
281
|
* with a style of `currency` applied. It uses the buyer's locale by default.
|
|
218
282
|
*
|
|
219
|
-
* @param options.inExtensionLocale -
|
|
283
|
+
* @param options.inExtensionLocale - If true, uses the extension's locale.
|
|
220
284
|
*/
|
|
221
285
|
formatCurrency: (number: number | bigint, options?: {
|
|
222
286
|
inExtensionLocale?: boolean;
|
|
@@ -224,14 +288,11 @@ export interface I18n {
|
|
|
224
288
|
/**
|
|
225
289
|
* Returns a localized date value.
|
|
226
290
|
*
|
|
227
|
-
* This function behaves like the standard `Intl.
|
|
228
|
-
* the buyer's locale by default. Formatting options can be passed in as
|
|
291
|
+
* This function behaves like the standard [`Intl.DateTimeFormat()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat) and uses
|
|
292
|
+
* the buyer's locale by default. Formatting [options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat#using_options) can be passed in as
|
|
229
293
|
* options.
|
|
230
294
|
*
|
|
231
|
-
* @
|
|
232
|
-
* @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat#using_options
|
|
233
|
-
*
|
|
234
|
-
* @param options.inExtensionLocale - if true, use the extension's locale
|
|
295
|
+
* @param options.inExtensionLocale - If true, uses the extension's locale.
|
|
235
296
|
*/
|
|
236
297
|
formatDate: (date: Date, options?: {
|
|
237
298
|
inExtensionLocale?: boolean;
|
|
@@ -247,115 +308,117 @@ export interface I18n {
|
|
|
247
308
|
*/
|
|
248
309
|
translate: I18nTranslate;
|
|
249
310
|
}
|
|
311
|
+
/** @publicDocs */
|
|
250
312
|
export interface Language {
|
|
251
313
|
/**
|
|
252
|
-
* The BCP-47 language tag.
|
|
253
|
-
*
|
|
254
|
-
* @example 'en' for English, or 'en-US' for English local to United States.
|
|
255
|
-
* @see https://en.wikipedia.org/wiki/IETF_language_tag
|
|
256
|
-
* @see https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2
|
|
314
|
+
* The [BCP-47](https://en.wikipedia.org/wiki/IETF_language_tag) language tag that identifies the language. This is a standardized code that might include a base language and an optional region subtag separated by a dash. For example, `'en'` represents English and `'en-US'` represents English as used in the United States. The region subtag follows the [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) standard.
|
|
257
315
|
*/
|
|
258
316
|
isoCode: string;
|
|
259
317
|
}
|
|
318
|
+
/** @publicDocs */
|
|
260
319
|
export interface Currency {
|
|
261
320
|
/**
|
|
262
|
-
* The
|
|
263
|
-
* @see https://www.iso.org/iso-4217-currency-codes.html
|
|
321
|
+
* The three-letter currency code in [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) format, such as `'USD'`, `'EUR'`, or `'CAD'`.
|
|
264
322
|
*/
|
|
265
323
|
isoCode: CurrencyCode;
|
|
266
324
|
}
|
|
325
|
+
/**
|
|
326
|
+
* A [Shopify Market](https://shopify.dev/docs/apps/build/markets) that represents a group of one or more regions for international selling.
|
|
327
|
+
* @publicDocs
|
|
328
|
+
*/
|
|
267
329
|
export interface Market {
|
|
268
330
|
/**
|
|
269
|
-
* A globally-unique identifier for
|
|
331
|
+
* A globally-unique identifier for the market in the format `gid://shopify/Market/<id>`.
|
|
270
332
|
*/
|
|
271
333
|
id: string;
|
|
272
334
|
/**
|
|
273
|
-
* The human-readable, shop-scoped identifier for the market.
|
|
335
|
+
* The human-readable, shop-scoped identifier for the market, such as `'us'` or `'eu'`. Merchants define these handles when configuring [Shopify Markets](https://shopify.dev/docs/apps/build/markets).
|
|
274
336
|
*/
|
|
275
337
|
handle: string;
|
|
276
338
|
}
|
|
339
|
+
/**
|
|
340
|
+
* The buyer's language, country, currency, and timezone context. Use this
|
|
341
|
+
* to adapt your extension to the buyer's region and display localized content.
|
|
342
|
+
*/
|
|
277
343
|
export interface Localization {
|
|
278
344
|
/**
|
|
279
|
-
* The currency that the
|
|
345
|
+
* The currency that the buyer sees for money amounts in the checkout. Use this value to format prices and totals in the buyer's expected currency.
|
|
280
346
|
*/
|
|
281
347
|
currency: SubscribableSignalLike<Currency>;
|
|
282
348
|
/**
|
|
283
|
-
* The buyer
|
|
349
|
+
* The buyer's time zone, based on their browser or account settings. Use this value to format dates and times relative to the buyer's local time.
|
|
284
350
|
*/
|
|
285
351
|
timezone: SubscribableSignalLike<Timezone>;
|
|
286
352
|
/**
|
|
287
|
-
* The language the
|
|
353
|
+
* The language the buyer sees in the checkout. This reflects the language selected by the buyer or determined by their browser settings, and might differ from the languages your extension supports.
|
|
288
354
|
*/
|
|
289
355
|
language: SubscribableSignalLike<Language>;
|
|
290
356
|
/**
|
|
291
|
-
*
|
|
292
|
-
* If the customer's actual language is not supported by the extension,
|
|
293
|
-
* then this is the language that is used for translations.
|
|
294
|
-
*
|
|
295
|
-
* For example, if the customer's language is 'fr-CA' but your extension
|
|
296
|
-
* only supports translations for 'fr', then the `isoCode` for this
|
|
297
|
-
* language is 'fr'. If your extension does not provide french
|
|
298
|
-
* translations at all, then this value is the default locale for your
|
|
299
|
-
* extension (that is, the one matching your .default.json file).
|
|
357
|
+
* The best available language match for your extension based on the buyer's language. If the buyer's language is `'fr-CA'` but your extension supports only `'fr'`, this returns `'fr'`. If your extension doesn't support any variant of the buyer's language, this falls back to your extension's default locale (the `.default.json` translation file). Use this value to load the correct translation file for your extension.
|
|
300
358
|
*/
|
|
301
359
|
extensionLanguage: SubscribableSignalLike<Language>;
|
|
302
360
|
/**
|
|
303
|
-
* The country context of the checkout.
|
|
304
|
-
* context of the cart, where it was used to contextualize the storefront
|
|
305
|
-
* experience. It will update if the buyer changes the country of their
|
|
306
|
-
* shipping address. If the country is unknown, then the value is undefined.
|
|
361
|
+
* The country context of the checkout, carried over from the cart. It updates when the buyer changes their shipping address country. Use this value to display region-specific content such as local support information or regional policies. The value is `undefined` if the buyer's country is unknown.
|
|
307
362
|
*/
|
|
308
363
|
country: SubscribableSignalLike<Country | undefined>;
|
|
309
364
|
/**
|
|
310
|
-
* The [market](https://shopify.dev/docs/apps/markets) context of the
|
|
311
|
-
* checkout. This value carries over from the context of the cart, where it
|
|
312
|
-
* was used to contextualize the storefront experience. It will update if the
|
|
313
|
-
* buyer changes the country of their shipping address. If the market is unknown,
|
|
314
|
-
* then the value is undefined.
|
|
365
|
+
* The [market](https://shopify.dev/docs/apps/build/markets) context of the checkout, carried over from the cart context. Markets group countries and regions with shared pricing, languages, and domains. It updates when the buyer changes the country of their shipping address. The value is `undefined` if the market is unknown.
|
|
315
366
|
*
|
|
316
|
-
* > Caution:
|
|
367
|
+
* > Caution: Deprecated as of version `2025-04`. Merchants now manage which extensions load for each market, so extensions no longer need to check this value.
|
|
317
368
|
*
|
|
318
369
|
* @deprecated Deprecated as of version `2025-04`
|
|
319
370
|
*/
|
|
320
371
|
market: SubscribableSignalLike<Market | undefined>;
|
|
321
372
|
}
|
|
373
|
+
/** @publicDocs */
|
|
322
374
|
export interface LocalizedField {
|
|
375
|
+
/**
|
|
376
|
+
* The identifier for the localized field, indicating the type of information
|
|
377
|
+
* collected (for example, a tax credential or shipping credential for a
|
|
378
|
+
* specific country).
|
|
379
|
+
*/
|
|
323
380
|
key: LocalizedFieldKey;
|
|
381
|
+
/**
|
|
382
|
+
* The localized display label for the field, suitable for rendering in the UI.
|
|
383
|
+
*
|
|
384
|
+
* @example 'CPF/CNPJ' for a Brazilian tax credential
|
|
385
|
+
*/
|
|
324
386
|
title: string;
|
|
387
|
+
/**
|
|
388
|
+
* The current value entered by the buyer for this field.
|
|
389
|
+
*/
|
|
325
390
|
value: string;
|
|
326
391
|
}
|
|
327
392
|
/**
|
|
328
393
|
* Provides details on the buyer's progression through the checkout.
|
|
394
|
+
* @publicDocs
|
|
329
395
|
*/
|
|
330
396
|
export interface BuyerJourney {
|
|
331
397
|
/**
|
|
332
398
|
* Installs a function for intercepting and preventing progress on checkout.
|
|
333
399
|
*
|
|
334
400
|
* This returns a promise that resolves to a teardown function. Calling the
|
|
335
|
-
* teardown function
|
|
401
|
+
* teardown function removes the interceptor.
|
|
336
402
|
*
|
|
337
|
-
* To block checkout progress, you must set the [block_progress](https://shopify.dev/docs/api/checkout-ui-extensions/configuration#block-progress)
|
|
403
|
+
* To block checkout progress, you must set the [block_progress](https://shopify.dev/docs/api/checkout-ui-extensions/{API_VERSION}/configuration#block-progress)
|
|
338
404
|
* capability in your extension's configuration.
|
|
339
405
|
*
|
|
340
406
|
* If you do, then you're expected to inform the buyer why navigation was blocked,
|
|
341
407
|
* either by passing validation errors to the checkout UI or rendering the errors in your extension.
|
|
342
408
|
*
|
|
343
|
-
*
|
|
344
|
-
* to block checkout progress.
|
|
409
|
+
* If the merchant hasn't allowed your extension to block checkout progress, show a warning in the [checkout editor](https://shopify.dev/docs/apps/build/checkout/test-checkout-ui-extensions#test-the-extension-in-the-checkout-editor).
|
|
345
410
|
*/
|
|
346
411
|
intercept(interceptor: Interceptor): Promise<() => void>;
|
|
347
412
|
/**
|
|
348
|
-
*
|
|
349
|
-
*
|
|
350
|
-
* For example, when viewing the **Order status** page after submitting payment, the buyer will have completed their order.
|
|
413
|
+
* Whether the buyer has completed submitting their order. When `true`, the buyer is on the order status page after submitting payment. When `false`, the buyer is still in the checkout flow.
|
|
351
414
|
*/
|
|
352
415
|
completed: SubscribableSignalLike<boolean>;
|
|
353
416
|
/**
|
|
354
|
-
* All possible steps
|
|
417
|
+
* All possible steps the buyer can take to complete checkout. These steps vary depending on whether the checkout is one-page or three-page, and on the shop's configuration.
|
|
355
418
|
*/
|
|
356
419
|
steps: SubscribableSignalLike<BuyerJourneyStep[]>;
|
|
357
420
|
/**
|
|
358
|
-
*
|
|
421
|
+
* The step of checkout the buyer is currently on. The value is `undefined` if the current step can't be determined.
|
|
359
422
|
*/
|
|
360
423
|
activeStep: SubscribableSignalLike<BuyerJourneyStepReference | undefined>;
|
|
361
424
|
}
|
|
@@ -377,82 +440,91 @@ type BuyerJourneyStepHandle = 'cart' | 'checkout' | 'information' | 'shipping' |
|
|
|
377
440
|
*/
|
|
378
441
|
interface BuyerJourneyStepReference {
|
|
379
442
|
/**
|
|
380
|
-
* The handle
|
|
443
|
+
* The handle identifying which step the buyer is on, such as `'information'`,
|
|
444
|
+
* `'shipping'`, or `'payment'`. See `BuyerJourneyStepHandle` for all values.
|
|
381
445
|
*/
|
|
382
446
|
handle: BuyerJourneyStepHandle;
|
|
383
447
|
}
|
|
448
|
+
/** @publicDocs */
|
|
384
449
|
export interface BuyerJourneyStep {
|
|
385
450
|
/**
|
|
386
|
-
* The handle that uniquely identifies the buyer journey step
|
|
451
|
+
* The handle that uniquely identifies the buyer journey step, such as `'information'`, `'shipping'`, or `'payment'`.
|
|
387
452
|
*/
|
|
388
453
|
handle: BuyerJourneyStepHandle;
|
|
389
454
|
/**
|
|
390
|
-
* The localized label of the buyer journey step.
|
|
455
|
+
* The localized label of the buyer journey step, suitable for rendering in navigation UI.
|
|
391
456
|
*/
|
|
392
457
|
label: string;
|
|
393
458
|
/**
|
|
394
|
-
* The
|
|
395
|
-
*
|
|
459
|
+
* The URL of the buyer journey step, using the `shopify:` protocol.
|
|
460
|
+
*
|
|
461
|
+
* @example 'shopify:cart'
|
|
462
|
+
* @example 'shopify:checkout/information'
|
|
396
463
|
*/
|
|
397
464
|
to: string;
|
|
398
465
|
/**
|
|
399
|
-
*
|
|
466
|
+
* Whether this step is disabled. When `true`, the buyer hasn't reached this step yet and can't navigate to it. When `false`, the step is accessible.
|
|
400
467
|
*
|
|
401
|
-
* For example, if the buyer
|
|
468
|
+
* For example, if the buyer hasn't reached the `shipping` step yet, then `shipping` is disabled.
|
|
402
469
|
*/
|
|
403
470
|
disabled: boolean;
|
|
404
471
|
}
|
|
472
|
+
/** @publicDocs */
|
|
405
473
|
export interface StandardApi<Target extends ExtensionTarget = ExtensionTarget> {
|
|
406
474
|
/**
|
|
407
|
-
*
|
|
475
|
+
* Tracks custom events and sends visitor information to
|
|
476
|
+
* [Web Pixels](https://shopify.dev/docs/apps/marketing). Use `publish()` to emit events
|
|
477
|
+
* and `visitor()` to submit buyer contact details.
|
|
408
478
|
*/
|
|
409
479
|
analytics: Analytics;
|
|
410
480
|
/**
|
|
411
|
-
*
|
|
481
|
+
* The gift cards that have been applied to the checkout. Each entry includes
|
|
482
|
+
* the last four characters of the gift card code, the amount used at
|
|
483
|
+
* checkout, and the card's remaining balance.
|
|
412
484
|
*/
|
|
413
485
|
appliedGiftCards: SubscribableSignalLike<AppliedGiftCard[]>;
|
|
414
486
|
/**
|
|
415
487
|
* The cart instructions used to create the checkout and possibly limit extension capabilities.
|
|
416
488
|
*
|
|
417
|
-
* These instructions should be checked
|
|
489
|
+
* These instructions should be checked before performing any actions that might be affected by them.
|
|
418
490
|
*
|
|
419
491
|
* For example, if you intend to add a discount code via the `applyDiscountCodeChange` method,
|
|
420
492
|
* check `discounts.canUpdateDiscountCodes` to ensure it's supported in this checkout.
|
|
421
493
|
*
|
|
422
|
-
* > Caution: As of version `2024-07`, UI extension code must check for instructions before calling select APIs in case those APIs
|
|
423
|
-
* See the [update guide](/docs/api/checkout-ui-extensions/apis/cart-instructions#examples) for more information.
|
|
494
|
+
* > Caution: As of version `2024-07`, UI extension code must check for instructions before calling select APIs in case those APIs aren't available.
|
|
495
|
+
* See the [update guide](https://shopify.dev/docs/api/checkout-ui-extensions/{API_VERSION}/apis/cart-instructions#examples) for more information.
|
|
424
496
|
*
|
|
425
497
|
*/
|
|
426
498
|
instructions: SubscribableSignalLike<CartInstructions>;
|
|
427
499
|
/**
|
|
428
500
|
* The metafields requested in the
|
|
429
|
-
* [`shopify.extension.toml`](https://shopify.dev/docs/api/checkout-ui-extensions/configuration)
|
|
501
|
+
* [`shopify.extension.toml`](https://shopify.dev/docs/api/checkout-ui-extensions/{API_VERSION}/configuration)
|
|
430
502
|
* file. These metafields are updated when there's a change in the merchandise items
|
|
431
503
|
* being purchased by the customer.
|
|
432
504
|
*
|
|
433
|
-
* App owned metafields are supported and are returned using the `$app` format. The fully qualified reserved namespace format such as `app--{your-app-id}[--{optional-namespace}]`
|
|
505
|
+
* App owned metafields are supported and are returned using the `$app` format. The fully qualified reserved namespace format such as `app--{your-app-id}[--{optional-namespace}]` isn't supported. See [app owned metafields](https://shopify.dev/docs/apps/build/custom-data/ownership#reserved-prefixes) for more information.
|
|
434
506
|
*
|
|
435
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
507
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
436
508
|
*/
|
|
437
509
|
appMetafields: SubscribableSignalLike<AppMetafieldEntry[]>;
|
|
438
510
|
/**
|
|
439
|
-
* The custom attributes
|
|
511
|
+
* The custom key-value attributes attached to the cart or checkout. These are set by the buyer or by an extension using `applyAttributeChange()`. The list is empty if no attributes have been added.
|
|
440
512
|
*/
|
|
441
513
|
attributes: SubscribableSignalLike<Attribute[]>;
|
|
442
514
|
/**
|
|
443
|
-
* All available payment
|
|
515
|
+
* All payment options available to the buyer for this checkout, such as credit cards, wallets, and local payment methods. The list depends on the shop's payment configuration and the buyer's region.
|
|
444
516
|
*/
|
|
445
517
|
availablePaymentOptions: SubscribableSignalLike<PaymentOption[]>;
|
|
446
518
|
/**
|
|
447
|
-
* Information about the buyer that
|
|
519
|
+
* Information about the buyer that's interacting with the checkout. The property is available only if the extension has access to protected customer data.
|
|
448
520
|
*
|
|
449
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
521
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
450
522
|
*/
|
|
451
523
|
buyerIdentity?: BuyerIdentity;
|
|
452
524
|
/**
|
|
453
|
-
* Provides details on the buyer's progression through the checkout.
|
|
525
|
+
* Provides details on the buyer's progression through the checkout and lets you intercept navigation to validate data before the buyer continues.
|
|
454
526
|
*
|
|
455
|
-
* Refer to [buyer journey](https://shopify.dev/docs/api/checkout-ui-extensions/apis/buyer-journey#examples)
|
|
527
|
+
* Refer to [buyer journey](https://shopify.dev/docs/api/checkout-ui-extensions/{API_VERSION}/apis/buyer-journey#examples)
|
|
456
528
|
* examples for more information.
|
|
457
529
|
*/
|
|
458
530
|
buyerJourney: BuyerJourney;
|
|
@@ -463,70 +535,76 @@ export interface StandardApi<Target extends ExtensionTarget = ExtensionTarget> {
|
|
|
463
535
|
/**
|
|
464
536
|
* A stable ID that represents the current checkout.
|
|
465
537
|
*
|
|
538
|
+
* The value is `undefined` when the checkout hasn't been created on the server yet.
|
|
539
|
+
*
|
|
540
|
+
* Use this to correlate checkout sessions across your extension, web pixels, and backend systems.
|
|
541
|
+
*
|
|
466
542
|
* This matches the `data.checkout.token` field in a [checkout-related WebPixel event](https://shopify.dev/docs/api/web-pixels-api/standard-events/checkout_started#properties-propertydetail-data)
|
|
467
543
|
* and the `checkout_token` field in the [REST Admin API `Order` resource](https://shopify.dev/docs/api/admin-rest/unstable/resources/order#resource-object).
|
|
468
544
|
*/
|
|
469
545
|
checkoutToken: SubscribableSignalLike<CheckoutToken | undefined>;
|
|
470
546
|
/**
|
|
471
|
-
*
|
|
547
|
+
* The cost breakdown for the current checkout, including subtotal, shipping, tax, and total amounts. These values update as the buyer progresses through checkout and costs like shipping and tax are calculated.
|
|
472
548
|
*/
|
|
473
549
|
cost: CartCost;
|
|
474
550
|
/**
|
|
475
|
-
*
|
|
551
|
+
* The delivery groups for this checkout. Each group contains one or more cart lines and the available delivery options (shipping, pickup point, or pickup location) for those items.
|
|
476
552
|
*/
|
|
477
553
|
deliveryGroups: SubscribableSignalLike<DeliveryGroup[]>;
|
|
478
554
|
/**
|
|
479
|
-
*
|
|
555
|
+
* The discount codes currently applied to the checkout. The list is empty if no discount codes have been applied. Use `applyDiscountCodeChange()` to add or remove codes.
|
|
480
556
|
*/
|
|
481
557
|
discountCodes: SubscribableSignalLike<CartDiscountCode[]>;
|
|
482
558
|
/**
|
|
483
|
-
*
|
|
559
|
+
* The discount allocations applied to the entire cart, including automatic discounts, code-based discounts, and custom discounts from [Shopify Functions](https://shopify.dev/docs/apps/build/functions). Each allocation indicates how much was discounted and how the discount was triggered.
|
|
484
560
|
*/
|
|
485
561
|
discountAllocations: SubscribableSignalLike<CartDiscountAllocation[]>;
|
|
486
562
|
/**
|
|
487
|
-
*
|
|
563
|
+
* Metadata about the running extension, including the current target, API version,
|
|
564
|
+
* capabilities, and editor context. Use this to conditionally render content
|
|
565
|
+
* based on where the extension is running.
|
|
488
566
|
*/
|
|
489
567
|
extension: Extension<Target>;
|
|
490
568
|
/**
|
|
491
|
-
* The identifier that specifies where in Shopify
|
|
492
|
-
* injected. This
|
|
493
|
-
* extension
|
|
569
|
+
* The identifier that specifies where in Shopify's UI your code is being
|
|
570
|
+
* injected. This is one of the targets you've included in your
|
|
571
|
+
* extension's configuration file.
|
|
494
572
|
*
|
|
495
573
|
* @example 'purchase.checkout.block.render'
|
|
496
|
-
* @see https://shopify.dev/docs/api/checkout-ui-extensions/
|
|
574
|
+
* @see https://shopify.dev/docs/api/checkout-ui-extensions/{API_VERSION}/extension-targets-overview
|
|
497
575
|
* @see https://shopify.dev/docs/apps/app-extensions/configuration#targets
|
|
498
576
|
*
|
|
499
577
|
* @deprecated Deprecated as of version `2023-07`, use `extension.target` instead.
|
|
500
578
|
*/
|
|
501
579
|
extensionPoint: Target;
|
|
502
580
|
/**
|
|
503
|
-
* Utilities for translating
|
|
504
|
-
*
|
|
505
|
-
*
|
|
506
|
-
*
|
|
507
|
-
* Refer to [`localization` examples](https://shopify.dev/docs/api/checkout-ui-extensions/apis/localization#examples)
|
|
508
|
-
* for more information.
|
|
581
|
+
* Utilities for translating strings, formatting currencies, numbers, and dates
|
|
582
|
+
* according to the buyer's locale. Use alongside
|
|
583
|
+
* [`localization`](https://shopify.dev/docs/api/checkout-ui-extensions/{API_VERSION}/apis/localization)
|
|
584
|
+
* to build fully localized extensions.
|
|
509
585
|
*/
|
|
510
586
|
i18n: I18n;
|
|
511
587
|
/**
|
|
512
|
-
*
|
|
588
|
+
* The list of line items the buyer intends to purchase. Each entry includes the merchandise, quantity, cost, and any custom attributes. Use `applyCartLinesChange()` to add, remove, or update line items.
|
|
513
589
|
*/
|
|
514
590
|
lines: SubscribableSignalLike<CartLine[]>;
|
|
515
591
|
/**
|
|
516
|
-
* The
|
|
517
|
-
*
|
|
518
|
-
* [`i18n`](https://shopify.dev/docs/api/checkout-ui-extensions/apis/localization#standardapi-propertydetail-i18n)
|
|
592
|
+
* The buyer's language, country, currency, and timezone context. For
|
|
593
|
+
* formatting and translation helpers, use the
|
|
594
|
+
* [`i18n`](https://shopify.dev/docs/api/checkout-ui-extensions/{API_VERSION}/apis/localization#standardapi-propertydetail-i18n)
|
|
519
595
|
* object instead.
|
|
520
596
|
*/
|
|
521
597
|
localization: Localization;
|
|
522
598
|
/**
|
|
523
599
|
* A note left by the customer to the merchant, either in their cart or during checkout.
|
|
600
|
+
*
|
|
601
|
+
* The value is `undefined` if the buyer hasn't entered a note. Use this to display or react to order-level instructions such as delivery preferences or gift messages.
|
|
524
602
|
*/
|
|
525
603
|
note: SubscribableSignalLike<string | undefined>;
|
|
526
604
|
/**
|
|
527
605
|
* The method used to query the Storefront GraphQL API with a prefetched token.
|
|
528
606
|
*
|
|
529
|
-
* Refer to [Storefront API access examples](https://shopify.dev/docs/api/checkout-ui-extensions/apis/storefront-api) for more information.
|
|
607
|
+
* Refer to [Storefront API access examples](https://shopify.dev/docs/api/checkout-ui-extensions/{API_VERSION}/apis/storefront-api) for more information.
|
|
530
608
|
*/
|
|
531
609
|
query: <Data = unknown, Variables = Record<string, unknown>>(query: string, options?: {
|
|
532
610
|
variables?: Variables;
|
|
@@ -536,56 +614,59 @@ export interface StandardApi<Target extends ExtensionTarget = ExtensionTarget> {
|
|
|
536
614
|
errors?: GraphQLError[];
|
|
537
615
|
}>;
|
|
538
616
|
/**
|
|
539
|
-
*
|
|
617
|
+
* The payment options the buyer has currently selected. This updates as the buyer changes their payment method. The array can contain multiple entries when the buyer splits payment across methods (for example, a gift card and a credit card).
|
|
540
618
|
*/
|
|
541
619
|
selectedPaymentOptions: SubscribableSignalLike<SelectedPaymentOption[]>;
|
|
542
620
|
/**
|
|
543
621
|
* The session token providing a set of claims as a signed JSON Web Token (JWT).
|
|
544
622
|
*
|
|
545
|
-
* The token has a TTL of
|
|
623
|
+
* The token has a TTL of five minutes.
|
|
546
624
|
*
|
|
547
|
-
* If the previous token expires, this value
|
|
625
|
+
* If the previous token expires, this value reflects a new session token with a new signature and expiry.
|
|
548
626
|
*
|
|
549
|
-
*
|
|
627
|
+
* Learn more about [session tokens](/docs/apps/build/authentication-authorization/session-tokens).
|
|
550
628
|
*/
|
|
551
629
|
sessionToken: SessionToken;
|
|
552
630
|
/**
|
|
553
631
|
* The settings matching the settings definition written in the
|
|
554
|
-
* [`shopify.extension.toml`](https://shopify.dev/docs/api/checkout-ui-extensions/configuration) file.
|
|
632
|
+
* [`shopify.extension.toml`](https://shopify.dev/docs/api/checkout-ui-extensions/{API_VERSION}/configuration) file.
|
|
555
633
|
*
|
|
556
|
-
* Refer to [settings examples](https://shopify.dev/docs/api/checkout-ui-extensions/apis/settings#examples) for more information.
|
|
634
|
+
* Refer to [settings examples](https://shopify.dev/docs/api/checkout-ui-extensions/{API_VERSION}/apis/settings#examples) for more information.
|
|
557
635
|
*
|
|
558
|
-
* > Note: When an extension is being installed in the editor, the settings
|
|
559
|
-
* a merchant sets a value. In that case, this object
|
|
636
|
+
* > Note: When an extension is being installed in the editor, the settings are empty until
|
|
637
|
+
* a merchant sets a value. In that case, this object updates in real time as a merchant fills in the settings.
|
|
560
638
|
*/
|
|
561
639
|
settings: SubscribableSignalLike<ExtensionSettings>;
|
|
562
640
|
/**
|
|
563
641
|
* The proposed customer shipping address. During the information step, the address
|
|
564
642
|
* updates when the field is committed (on change) rather than every keystroke.
|
|
565
|
-
*
|
|
566
|
-
* subscribable value is undefined.
|
|
643
|
+
* The property is available only if the extension has access to protected customer
|
|
644
|
+
* data. When available, the subscribable value is `undefined` if delivery isn't required.
|
|
567
645
|
*
|
|
568
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
646
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
569
647
|
*/
|
|
570
648
|
shippingAddress?: SubscribableSignalLike<ShippingAddress | undefined>;
|
|
571
649
|
/**
|
|
572
650
|
* The proposed customer billing address. The address updates when the field is
|
|
573
|
-
* committed (on change) rather than every keystroke.
|
|
651
|
+
* committed (on change) rather than every keystroke. The property is available only
|
|
652
|
+
* if the extension has access to protected customer data. The subscribable value is
|
|
653
|
+
* `undefined` if the billing address hasn't been provided yet.
|
|
574
654
|
*
|
|
575
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
655
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
576
656
|
*/
|
|
577
657
|
billingAddress?: SubscribableSignalLike<MailingAddress | undefined>;
|
|
578
|
-
/**
|
|
658
|
+
/**
|
|
659
|
+
* The store where the checkout is taking place, including the shop name,
|
|
660
|
+
* storefront URL, `.myshopify.com` subdomain, and a globally-unique ID.
|
|
661
|
+
*/
|
|
579
662
|
shop: Shop;
|
|
580
663
|
/**
|
|
581
|
-
*
|
|
664
|
+
* Key-value storage that persists across page loads within the current checkout
|
|
665
|
+
* session. Data is shared across all activated extension targets of this
|
|
666
|
+
* extension.
|
|
582
667
|
*
|
|
583
|
-
*
|
|
584
|
-
*
|
|
585
|
-
* > Caution: Data persistence isn't guaranteed and storage is reset when the customer starts a new checkout.
|
|
586
|
-
*
|
|
587
|
-
* Data is shared across all activated extension targets of this extension. In versions 2023-07 and earlier,
|
|
588
|
-
* each activated extension target had its own storage.
|
|
668
|
+
* > Caution: Data persistence isn't guaranteed and storage is cleared when the
|
|
669
|
+
* buyer starts a new checkout.
|
|
589
670
|
*/
|
|
590
671
|
storage: Storage;
|
|
591
672
|
/**
|
|
@@ -599,223 +680,236 @@ export interface StandardApi<Target extends ExtensionTarget = ExtensionTarget> {
|
|
|
599
680
|
*/
|
|
600
681
|
customerPrivacy: SubscribableSignalLike<CustomerPrivacy>;
|
|
601
682
|
/**
|
|
602
|
-
*
|
|
683
|
+
* Enables setting and updating customer privacy consent settings and tracking consent metafields.
|
|
603
684
|
*
|
|
604
|
-
* > Note: Requires the [`customer_privacy` capability](https://shopify.dev/docs/api/checkout-ui-extensions/
|
|
685
|
+
* > Note: Requires the [`customer_privacy` capability](https://shopify.dev/docs/api/checkout-ui-extensions/{API_VERSION}/configuration#collect-buyer-consent) to be set to `true`.
|
|
605
686
|
*
|
|
606
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
687
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
607
688
|
*/
|
|
608
689
|
applyTrackingConsentChange: ApplyTrackingConsentChangeType;
|
|
609
690
|
/**
|
|
610
|
-
* The
|
|
611
|
-
* For example, some countries require additional fields for customs information or tax identification numbers.
|
|
691
|
+
* Additional region-specific fields required during checkout, such as tax identification numbers (Brazil's CPF/CNPJ) or customs credentials. The property is available only if the extension has access to protected customer data. The array is empty if the current checkout doesn't require any localized fields.
|
|
612
692
|
*/
|
|
613
693
|
localizedFields?: SubscribableSignalLike<LocalizedField[]>;
|
|
614
694
|
}
|
|
695
|
+
/**
|
|
696
|
+
* Authenticates requests between your extension and your app backend.
|
|
697
|
+
* Use session tokens to verify the identity of the buyer and the shop
|
|
698
|
+
* context when making server-side API calls. The token is a signed JWT
|
|
699
|
+
* that contains claims such as the customer ID, shop domain, and expiration.
|
|
700
|
+
*/
|
|
615
701
|
export interface SessionToken {
|
|
616
702
|
/**
|
|
617
703
|
* Requests a session token that hasn't expired. You should call this method every
|
|
618
704
|
* time you need to make a request to your backend in order to get a valid token.
|
|
619
|
-
* This method
|
|
705
|
+
* This method returns cached tokens when possible, so you don't need to worry
|
|
620
706
|
* about storing these tokens yourself.
|
|
621
707
|
*/
|
|
622
708
|
get(): Promise<string>;
|
|
623
709
|
}
|
|
710
|
+
/**
|
|
711
|
+
* Information about the buyer who is completing the checkout.
|
|
712
|
+
*
|
|
713
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data). The `customer` and `purchasingCompany` properties require level 1 access. The `email` and `phone` properties require level 2 access.
|
|
714
|
+
* @publicDocs
|
|
715
|
+
*/
|
|
624
716
|
export interface BuyerIdentity {
|
|
625
717
|
/**
|
|
626
|
-
* The buyer's customer account. The value is undefined if the buyer isn
|
|
718
|
+
* The buyer's customer account, including their ID and whether they've accepted marketing. The value is `undefined` if the buyer isn't a
|
|
627
719
|
* known customer for this shop or if they haven't logged in yet.
|
|
628
720
|
*
|
|
629
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
721
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
630
722
|
*/
|
|
631
723
|
customer: SubscribableSignalLike<Customer | undefined>;
|
|
632
724
|
/**
|
|
633
|
-
* The email address
|
|
634
|
-
* The value is `undefined` if the app does not have access to customer data.
|
|
725
|
+
* The email address the buyer provided during checkout. The value is `undefined` if the app doesn't have access to customer data.
|
|
635
726
|
*
|
|
636
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires level 2 access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
727
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires level 2 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
637
728
|
*/
|
|
638
729
|
email: SubscribableSignalLike<string | undefined>;
|
|
639
730
|
/**
|
|
640
|
-
* The phone number
|
|
641
|
-
* The value is `undefined` if the app does not have access to customer data.
|
|
731
|
+
* The phone number the buyer provided during checkout. The value is `undefined` if no phone number was provided or the app doesn't have access to customer data.
|
|
642
732
|
*
|
|
643
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires level 2 access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
733
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires level 2 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
644
734
|
*/
|
|
645
735
|
phone: SubscribableSignalLike<string | undefined>;
|
|
646
736
|
/**
|
|
647
|
-
*
|
|
648
|
-
* This includes information that can be used to identify the company and the company location that the business
|
|
649
|
-
* customer belongs to.
|
|
737
|
+
* The company and company location that a B2B (business-to-business) customer is purchasing on behalf of. Use this to identify the business context of the order. The value is `undefined` if the buyer isn't a B2B customer.
|
|
650
738
|
*
|
|
651
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
739
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
652
740
|
*/
|
|
653
741
|
purchasingCompany: SubscribableSignalLike<PurchasingCompany | undefined>;
|
|
654
742
|
}
|
|
655
743
|
/**
|
|
656
|
-
* The
|
|
744
|
+
* The company and location that the [B2B](https://shopify.dev/docs/apps/build/b2b) customer is purchasing on behalf of. This is present only when the buyer is logged in as a business customer.
|
|
745
|
+
* @publicDocs
|
|
657
746
|
*/
|
|
658
747
|
export interface PurchasingCompany {
|
|
659
748
|
/**
|
|
660
|
-
*
|
|
749
|
+
* The company the B2B customer belongs to.
|
|
661
750
|
*
|
|
662
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
751
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
663
752
|
*/
|
|
664
753
|
company: Company;
|
|
665
754
|
/**
|
|
666
|
-
*
|
|
755
|
+
* The specific company location associated with this B2B purchase.
|
|
667
756
|
*
|
|
668
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
757
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
669
758
|
*/
|
|
670
759
|
location: CompanyLocation;
|
|
671
760
|
}
|
|
761
|
+
/** @publicDocs */
|
|
672
762
|
export interface Company {
|
|
673
763
|
/**
|
|
674
|
-
*
|
|
764
|
+
* A globally-unique identifier for the company in the format `gid://shopify/Company/<id>`.
|
|
675
765
|
*
|
|
676
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
766
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
767
|
+
*
|
|
768
|
+
* @example 'gid://shopify/Company/123'
|
|
677
769
|
*/
|
|
678
770
|
id: string;
|
|
679
771
|
/**
|
|
680
|
-
* The
|
|
772
|
+
* The company's display name.
|
|
681
773
|
*
|
|
682
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
774
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
683
775
|
*/
|
|
684
776
|
name: string;
|
|
685
777
|
/**
|
|
686
|
-
*
|
|
778
|
+
* A merchant-defined external identifier for the company. The value is `undefined` if the merchant hasn't set one.
|
|
687
779
|
*
|
|
688
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
780
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
689
781
|
*/
|
|
690
782
|
externalId?: string;
|
|
691
783
|
}
|
|
784
|
+
/** @publicDocs */
|
|
692
785
|
export interface CompanyLocation {
|
|
693
786
|
/**
|
|
694
|
-
*
|
|
787
|
+
* A globally-unique identifier for the company location in the format `gid://shopify/CompanyLocation/<id>`.
|
|
788
|
+
*
|
|
789
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
695
790
|
*
|
|
696
|
-
*
|
|
791
|
+
* @example 'gid://shopify/CompanyLocation/123'
|
|
697
792
|
*/
|
|
698
793
|
id: string;
|
|
699
794
|
/**
|
|
700
|
-
* The name of the company location.
|
|
795
|
+
* The display name of the company location.
|
|
701
796
|
*
|
|
702
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
797
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
703
798
|
*/
|
|
704
799
|
name: string;
|
|
705
800
|
/**
|
|
706
|
-
*
|
|
801
|
+
* A merchant-defined external identifier for the company location. The value is `undefined` if the merchant hasn't set one.
|
|
707
802
|
*
|
|
708
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
803
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
709
804
|
*/
|
|
710
805
|
externalId?: string;
|
|
711
806
|
}
|
|
807
|
+
/** @publicDocs */
|
|
712
808
|
export interface AppliedGiftCard {
|
|
713
809
|
/**
|
|
714
|
-
* The last four characters of the applied gift card's code.
|
|
810
|
+
* The last four characters of the applied gift card's code. The full code isn't exposed for security reasons. Use this value to display which card is applied.
|
|
715
811
|
*/
|
|
716
812
|
lastCharacters: string;
|
|
717
813
|
/**
|
|
718
|
-
* The amount of the applied gift card that
|
|
814
|
+
* The amount of the applied gift card that's used when the checkout is completed. This might be less than `balance` if the order total is lower than the card's remaining balance.
|
|
719
815
|
*/
|
|
720
816
|
amountUsed: Money;
|
|
721
817
|
/**
|
|
722
|
-
* The current balance of the applied gift card
|
|
818
|
+
* The current balance of the applied gift card before checkout completion. This reflects the full remaining value on the card, not just the amount being applied to this order.
|
|
723
819
|
*/
|
|
724
820
|
balance: Money;
|
|
725
821
|
}
|
|
822
|
+
/**
|
|
823
|
+
* Metadata about the merchant's store, including its name, storefront
|
|
824
|
+
* URL, `.myshopify.com` subdomain, and a globally-unique ID.
|
|
825
|
+
*/
|
|
726
826
|
export interface Shop {
|
|
727
827
|
/**
|
|
728
|
-
*
|
|
828
|
+
* A globally-unique identifier for the shop in the format `gid://shopify/Shop/<id>`.
|
|
829
|
+
*
|
|
729
830
|
* @example 'gid://shopify/Shop/123'
|
|
730
831
|
*/
|
|
731
832
|
id: string;
|
|
732
833
|
/**
|
|
733
|
-
* The name of the shop.
|
|
834
|
+
* The display name of the shop as configured by the merchant in Shopify admin.
|
|
734
835
|
*/
|
|
735
836
|
name: string;
|
|
736
837
|
/**
|
|
737
|
-
* The primary storefront URL.
|
|
738
|
-
*
|
|
739
|
-
* > Caution:
|
|
740
|
-
* > As of version `2024-04` this value will no longer have a trailing slash.
|
|
838
|
+
* The primary storefront URL for the shop, such as `'https://example.myshopify.com'`. Use this to build links back to the merchant's online store.
|
|
741
839
|
*/
|
|
742
840
|
storefrontUrl?: string;
|
|
743
841
|
/**
|
|
744
|
-
* The shop's myshopify.com domain.
|
|
842
|
+
* The shop's unique `.myshopify.com` subdomain, such as `'example.myshopify.com'`. This domain is permanent and doesn't change even if the merchant adds a custom domain.
|
|
745
843
|
*/
|
|
746
844
|
myshopifyDomain: string;
|
|
747
845
|
}
|
|
846
|
+
/** @publicDocs */
|
|
748
847
|
export interface CartCost {
|
|
749
848
|
/**
|
|
750
|
-
*
|
|
751
|
-
* step of checkout.
|
|
849
|
+
* The sum of all line item prices at the current step of checkout, before shipping and taxes are applied. Use this value to display the base cost of the items the buyer purchased.
|
|
752
850
|
*/
|
|
753
851
|
subtotalAmount: SubscribableSignalLike<Money>;
|
|
754
852
|
/**
|
|
755
|
-
*
|
|
756
|
-
* step of checkout. This value includes shipping discounts. Returns undefined if shipping
|
|
757
|
-
* has not been negotiated yet, such as on the information step.
|
|
853
|
+
* The total shipping cost after shipping discounts have been applied. The value is `undefined` if shipping hasn't been calculated yet, such as when the buyer is still on the information step.
|
|
758
854
|
*/
|
|
759
855
|
totalShippingAmount: SubscribableSignalLike<Money | undefined>;
|
|
760
856
|
/**
|
|
761
|
-
*
|
|
762
|
-
* step of checkout or the total tax included in product and shipping prices. Returns
|
|
763
|
-
* undefined if taxes are unavailable.
|
|
857
|
+
* The total tax the buyer can expect to pay, or the total tax already included in product and shipping prices (for tax-inclusive regions). The value is `undefined` if taxes haven't been calculated yet.
|
|
764
858
|
*/
|
|
765
859
|
totalTaxAmount: SubscribableSignalLike<Money | undefined>;
|
|
766
860
|
/**
|
|
767
|
-
*
|
|
768
|
-
* step of checkout. This value excludes amounts yet to be negotiated. For example,
|
|
769
|
-
* the information step might not have delivery costs calculated.
|
|
861
|
+
* The minimum total at the current step of checkout. Costs not yet calculated, such as shipping on the information step, aren't included. Gift cards and store credits are excluded from this total.
|
|
770
862
|
*/
|
|
771
863
|
totalAmount: SubscribableSignalLike<Money>;
|
|
772
864
|
}
|
|
865
|
+
/** @publicDocs */
|
|
773
866
|
export interface CartLine {
|
|
774
867
|
/**
|
|
775
|
-
*
|
|
776
|
-
*
|
|
777
|
-
* ID before any call to `applyCartLinesChange` because you'll need the ID to
|
|
778
|
-
* create a `CartLineChange` object.
|
|
868
|
+
* A unique identifier for the cart line in the format `gid://shopify/CartLine/<id>`. This ID isn't stable and can change after any cart operation, so avoid persisting it. Always look up the current ID before calling `applyCartLinesChange()`, because you'll need it to create a `CartLineChange` object.
|
|
869
|
+
*
|
|
779
870
|
* @example 'gid://shopify/CartLine/123'
|
|
780
871
|
*/
|
|
781
872
|
id: string;
|
|
782
873
|
/**
|
|
783
|
-
* The merchandise
|
|
874
|
+
* The product variant or other merchandise associated with this line item. Use this to access product details such as the title, image, SKU, and selected options.
|
|
784
875
|
*/
|
|
785
876
|
merchandise: Merchandise;
|
|
786
877
|
/**
|
|
787
|
-
* The
|
|
878
|
+
* The number of units of this merchandise that the buyer purchased.
|
|
788
879
|
*/
|
|
789
880
|
quantity: number;
|
|
790
881
|
/**
|
|
791
|
-
* The
|
|
882
|
+
* The cost breakdown for this line item, including the total price after any line-level discounts have been applied.
|
|
792
883
|
*/
|
|
793
884
|
cost: CartLineCost;
|
|
794
885
|
/**
|
|
795
|
-
*
|
|
886
|
+
* Custom key-value attributes attached to this cart line, such as gift messages or engraving text. Use `applyCartLinesChange()` to update these values.
|
|
796
887
|
*/
|
|
797
888
|
attributes: Attribute[];
|
|
798
889
|
/**
|
|
799
|
-
* Discounts applied to
|
|
890
|
+
* Discounts applied to this cart line, including code-based, automatic, and custom discounts. Each allocation shows the discounted amount and how the discount was triggered.
|
|
800
891
|
*/
|
|
801
892
|
discountAllocations: CartDiscountAllocation[];
|
|
802
893
|
/**
|
|
803
|
-
*
|
|
894
|
+
* The individual components of a [bundle](https://shopify.dev/docs/apps/build/product-merchandising/bundles) line item. Each component represents a separate product within the bundle. Returns an empty array if the line item isn't a bundle.
|
|
804
895
|
*/
|
|
805
896
|
lineComponents: CartLineComponentType[];
|
|
806
897
|
/**
|
|
807
|
-
* The
|
|
898
|
+
* The parent line item that this line belongs to, or `null` if this is a
|
|
899
|
+
* top-level line item. Used to identify lines added as children of a bundle
|
|
900
|
+
* or other grouped product.
|
|
808
901
|
*/
|
|
809
902
|
parentRelationship: CartLineParentRelationship | null;
|
|
810
903
|
}
|
|
904
|
+
/** @publicDocs */
|
|
811
905
|
export interface CartLineParentRelationship {
|
|
812
906
|
/**
|
|
813
907
|
* The parent cart line that a cart line is associated with.
|
|
814
908
|
*/
|
|
815
909
|
parent: {
|
|
816
910
|
/**
|
|
817
|
-
* These line item IDs
|
|
818
|
-
* any operations on the line items.
|
|
911
|
+
* These line item IDs aren't stable at the moment, and they might change after
|
|
912
|
+
* any operations on the line items. Always look up an updated
|
|
819
913
|
* ID before any call to `applyCartLinesChange` because you'll need the ID to
|
|
820
914
|
* create a `CartLineChange` object.
|
|
821
915
|
* @example 'gid://shopify/CartLine/123'
|
|
@@ -824,143 +918,168 @@ export interface CartLineParentRelationship {
|
|
|
824
918
|
};
|
|
825
919
|
}
|
|
826
920
|
type CartLineComponentType = CartBundleLineComponent;
|
|
921
|
+
/**
|
|
922
|
+
* An individual component within a bundled cart line. Each `CartLine` that represents a bundle has a `lineComponents` array containing these components.
|
|
923
|
+
* @publicDocs
|
|
924
|
+
*/
|
|
827
925
|
export interface CartBundleLineComponent {
|
|
926
|
+
/**
|
|
927
|
+
* Identifies this as a bundle line component. This is currently the only component type.
|
|
928
|
+
*/
|
|
828
929
|
type: 'bundle';
|
|
829
930
|
/**
|
|
830
|
-
* A unique identifier for the bundle line
|
|
831
|
-
*
|
|
832
|
-
* This ID is not stable. If an operation updates the line items in any way, all IDs could change.
|
|
931
|
+
* A unique identifier for this component within the bundle, in the format `gid://shopify/CartLineComponent/<id>`. This ID isn't stable and might change after any operation that updates the line items.
|
|
833
932
|
*
|
|
834
933
|
* @example 'gid://shopify/CartLineComponent/123'
|
|
835
934
|
*/
|
|
836
935
|
id: string;
|
|
837
936
|
/**
|
|
838
|
-
* The
|
|
937
|
+
* The product variant included in this bundle component. Use this to display product details for individual items within a bundle.
|
|
839
938
|
*/
|
|
840
939
|
merchandise: Merchandise;
|
|
841
940
|
/**
|
|
842
|
-
* The
|
|
941
|
+
* The number of units of this component included in the bundle.
|
|
843
942
|
*/
|
|
844
943
|
quantity: number;
|
|
845
944
|
/**
|
|
846
|
-
* The cost
|
|
945
|
+
* The cost breakdown for this bundle component, including the total amount after any per-item discounts.
|
|
847
946
|
*/
|
|
848
947
|
cost: CartLineCost;
|
|
849
948
|
/**
|
|
850
|
-
*
|
|
949
|
+
* Custom key-value pairs attached to this bundle component, such as personalization options specific to this item within the bundle.
|
|
851
950
|
*
|
|
852
951
|
* @example [{key: 'engraving', value: 'hello world'}]
|
|
853
952
|
*/
|
|
854
953
|
attributes: Attribute[];
|
|
855
954
|
}
|
|
955
|
+
/** @publicDocs */
|
|
856
956
|
export interface CartLineCost {
|
|
857
957
|
/**
|
|
858
|
-
* The total
|
|
859
|
-
* cart line.
|
|
958
|
+
* The total price the buyer pays for this line item after all line-level discounts have been applied, but before order-level discounts, taxes, and shipping.
|
|
860
959
|
*/
|
|
861
960
|
totalAmount: Money;
|
|
862
961
|
}
|
|
962
|
+
/** @publicDocs */
|
|
863
963
|
export interface Money {
|
|
864
964
|
/**
|
|
865
|
-
* The
|
|
965
|
+
* The decimal amount of the price. For example, `29.99` represents twenty-nine dollars and ninety-nine cents.
|
|
866
966
|
*/
|
|
867
967
|
amount: number;
|
|
868
968
|
/**
|
|
869
|
-
* The
|
|
969
|
+
* The three-letter currency code in [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) format.
|
|
970
|
+
*
|
|
870
971
|
* @example 'CAD' for Canadian dollar
|
|
871
972
|
*/
|
|
872
973
|
currencyCode: CurrencyCode;
|
|
873
974
|
}
|
|
975
|
+
/** @publicDocs */
|
|
874
976
|
export type Merchandise = ProductVariant;
|
|
977
|
+
/** @publicDocs */
|
|
875
978
|
export interface BaseMerchandise {
|
|
876
979
|
/**
|
|
877
|
-
*
|
|
980
|
+
* A globally unique identifier for the merchandise.
|
|
981
|
+
*
|
|
982
|
+
* @example 'gid://shopify/ProductVariant/123'
|
|
878
983
|
*/
|
|
879
984
|
id: string;
|
|
880
985
|
}
|
|
986
|
+
/** @publicDocs */
|
|
881
987
|
export interface ProductVariant extends BaseMerchandise {
|
|
988
|
+
/**
|
|
989
|
+
* Identifies the merchandise as a product variant. This is currently the only merchandise type in checkout.
|
|
990
|
+
*/
|
|
882
991
|
type: 'variant';
|
|
883
992
|
/**
|
|
884
|
-
* A globally-unique identifier
|
|
993
|
+
* A globally-unique identifier for the product variant in the format `gid://shopify/ProductVariant/<id>`.
|
|
994
|
+
*
|
|
885
995
|
* @example 'gid://shopify/ProductVariant/123'
|
|
886
996
|
*/
|
|
887
997
|
id: string;
|
|
888
998
|
/**
|
|
889
|
-
* The product variant
|
|
999
|
+
* The display title of the product variant, such as "Small" or "Red / Large". This is the variant-specific label, not the parent product title.
|
|
890
1000
|
*/
|
|
891
1001
|
title: string;
|
|
892
1002
|
/**
|
|
893
|
-
*
|
|
1003
|
+
* A secondary description for the variant that provides additional context, such as a color or size combination. The value is `undefined` if no subtitle is available.
|
|
894
1004
|
*/
|
|
895
1005
|
subtitle?: string;
|
|
896
1006
|
/**
|
|
897
|
-
*
|
|
898
|
-
* image if no image is available.
|
|
1007
|
+
* The image associated with the product variant. Falls back to the product image if the variant doesn't have its own. The value is `undefined` if neither the variant nor the product has an image.
|
|
899
1008
|
*/
|
|
900
1009
|
image?: ImageDetails;
|
|
901
1010
|
/**
|
|
902
|
-
*
|
|
1011
|
+
* The product options applied to this variant, such as size, color, or material. Each entry contains the option name and the selected value.
|
|
903
1012
|
*/
|
|
904
1013
|
selectedOptions: SelectedOption[];
|
|
905
1014
|
/**
|
|
906
|
-
* The product
|
|
1015
|
+
* The parent product that this variant belongs to. Use this to access the product's ID, vendor, and type.
|
|
907
1016
|
*/
|
|
908
1017
|
product: Product;
|
|
909
1018
|
/**
|
|
910
|
-
* Whether
|
|
1019
|
+
* Whether this product variant requires physical shipping. When `true`, the buyer must provide a shipping address. Returns `false` for digital products, gift cards, and services.
|
|
911
1020
|
*/
|
|
912
1021
|
requiresShipping: boolean;
|
|
913
1022
|
/**
|
|
914
|
-
* The selling plan associated with the
|
|
1023
|
+
* The [selling plan](https://shopify.dev/docs/apps/build/purchase-options/subscriptions) associated with this variant, such as a subscription or pre-order plan. The value is `undefined` if the item isn't being purchased through a selling plan.
|
|
915
1024
|
*/
|
|
916
1025
|
sellingPlan?: SellingPlan;
|
|
917
1026
|
/**
|
|
918
|
-
* The
|
|
1027
|
+
* The stock keeping unit (SKU) assigned to this variant by the merchant, used for inventory tracking. The value is `undefined` if no SKU has been set.
|
|
919
1028
|
*/
|
|
920
1029
|
sku?: string;
|
|
921
1030
|
}
|
|
1031
|
+
/** @publicDocs */
|
|
922
1032
|
export interface Product {
|
|
923
1033
|
/**
|
|
924
|
-
* A globally-unique identifier
|
|
1034
|
+
* A globally-unique identifier for the product in the format `gid://shopify/Product/<id>`.
|
|
1035
|
+
*
|
|
1036
|
+
* @example 'gid://shopify/Product/123'
|
|
925
1037
|
*/
|
|
926
1038
|
id: string;
|
|
927
1039
|
/**
|
|
928
|
-
* The product
|
|
1040
|
+
* The name of the product's vendor or manufacturer, as set by the merchant in Shopify admin.
|
|
929
1041
|
*/
|
|
930
1042
|
vendor: string;
|
|
931
1043
|
/**
|
|
932
|
-
* A categorization
|
|
1044
|
+
* A merchant-defined categorization for the product, such as "Accessories" or "Clothing". Commonly used for filtering and organizing products in a storefront.
|
|
933
1045
|
*/
|
|
934
1046
|
productType: string;
|
|
935
1047
|
}
|
|
1048
|
+
/** @publicDocs */
|
|
936
1049
|
export interface ImageDetails {
|
|
937
1050
|
/**
|
|
938
|
-
* The
|
|
1051
|
+
* The fully-qualified URL of the image. Use this to render the product or variant image in your extension.
|
|
939
1052
|
*/
|
|
940
1053
|
url: string;
|
|
941
1054
|
/**
|
|
942
|
-
* The alternative text for the image.
|
|
1055
|
+
* The alternative text for the image, used for accessibility. The value is `undefined` if the merchant hasn't provided alt text.
|
|
943
1056
|
*/
|
|
944
1057
|
altText?: string;
|
|
945
1058
|
}
|
|
1059
|
+
/** @publicDocs */
|
|
946
1060
|
export interface SelectedOption {
|
|
947
1061
|
/**
|
|
948
|
-
* The name of the
|
|
1062
|
+
* The name of the product option, such as "Color" or "Size".
|
|
1063
|
+
*
|
|
1064
|
+
* @example 'Size'
|
|
949
1065
|
*/
|
|
950
1066
|
name: string;
|
|
951
1067
|
/**
|
|
952
|
-
* The value
|
|
1068
|
+
* The selected value for the product option, such as "Red" or "Large".
|
|
1069
|
+
*
|
|
1070
|
+
* @example 'Large'
|
|
953
1071
|
*/
|
|
954
1072
|
value: string;
|
|
955
1073
|
}
|
|
956
1074
|
/**
|
|
957
1075
|
* A payment option presented to the buyer.
|
|
1076
|
+
* @publicDocs
|
|
958
1077
|
*/
|
|
959
1078
|
export interface PaymentOption {
|
|
960
1079
|
/**
|
|
961
1080
|
* The type of the payment option.
|
|
962
1081
|
*
|
|
963
|
-
* Shops can be configured to support many different payment options. Some options are only
|
|
1082
|
+
* Shops can be configured to support many different payment options. Some options are available only to buyers in specific regions.
|
|
964
1083
|
*
|
|
965
1084
|
* | Type | Description |
|
|
966
1085
|
* |---|---|
|
|
@@ -970,60 +1089,75 @@ export interface PaymentOption {
|
|
|
970
1089
|
* | `manualPayment` | A manual payment option such as an in-person retail transaction. |
|
|
971
1090
|
* | `offsite` | A payment processed outside of Shopify's checkout, excluding integrated wallets. |
|
|
972
1091
|
* | `other` | Another type of payment not defined here. |
|
|
973
|
-
* | `paymentOnDelivery` | A payment
|
|
1092
|
+
* | `paymentOnDelivery` | A payment collected on delivery. |
|
|
974
1093
|
* | `redeemable` | A redeemable payment option such as a gift card or store credit. |
|
|
975
|
-
* | `wallet` | An integrated wallet such as PayPal, Google Pay, Apple Pay
|
|
976
|
-
* | `customOnsite` | A custom payment option that
|
|
1094
|
+
* | `wallet` | An integrated wallet such as PayPal, Google Pay, or Apple Pay. |
|
|
1095
|
+
* | `customOnsite` | A custom payment option that's processed through a checkout extension with a payments app. |
|
|
977
1096
|
*/
|
|
978
1097
|
type: 'creditCard' | 'deferred' | 'local' | 'manualPayment' | 'offsite' | 'other' | 'paymentOnDelivery' | 'redeemable' | 'wallet' | 'customOnsite';
|
|
979
1098
|
/**
|
|
980
|
-
*
|
|
981
|
-
*
|
|
982
|
-
* This is not a globally unique identifier. It may be an identifier specific to the given checkout session or the current shop.
|
|
1099
|
+
* A session-scoped identifier for this payment option. This handle isn't globally unique; it's specific to the current checkout session or the shop.
|
|
983
1100
|
*/
|
|
984
1101
|
handle: string;
|
|
985
1102
|
}
|
|
1103
|
+
/**
|
|
1104
|
+
* A payment option that the buyer has actively selected. This is the same shape as `PaymentOption` and appears in `selectedPaymentOptions`.
|
|
1105
|
+
* @publicDocs
|
|
1106
|
+
*/
|
|
986
1107
|
export type SelectedPaymentOption = PaymentOption;
|
|
1108
|
+
/** @publicDocs */
|
|
987
1109
|
export interface CartDiscountCode {
|
|
988
1110
|
/**
|
|
989
|
-
* The code
|
|
1111
|
+
* The discount code string entered by the buyer during checkout or applied programmatically, such as `"SAVE10"` or `"FREESHIP"`. Use this to display which discount codes were applied.
|
|
990
1112
|
*/
|
|
991
1113
|
code: string;
|
|
992
1114
|
}
|
|
1115
|
+
/**
|
|
1116
|
+
* A discount allocation applied to the cart. Use the `type` property to determine how the discount was triggered:
|
|
1117
|
+
*
|
|
1118
|
+
* - `CartCodeDiscountAllocation` (`type: 'code'`): Triggered by a discount code the buyer entered.
|
|
1119
|
+
* - `CartAutomaticDiscountAllocation` (`type: 'automatic'`): Applied automatically based on merchant-configured rules.
|
|
1120
|
+
* - `CartCustomDiscountAllocation` (`type: 'custom'`): Applied by a [Shopify Function](https://shopify.dev/docs/api/functions/latest/discount).
|
|
1121
|
+
* @publicDocs
|
|
1122
|
+
*/
|
|
993
1123
|
export type CartDiscountAllocation = CartCodeDiscountAllocation | CartAutomaticDiscountAllocation | CartCustomDiscountAllocation;
|
|
1124
|
+
/** @publicDocs */
|
|
994
1125
|
export interface CartDiscountAllocationBase {
|
|
995
1126
|
/**
|
|
996
|
-
* The
|
|
1127
|
+
* The monetary value that was deducted from the line item or order total by this discount allocation.
|
|
997
1128
|
*/
|
|
998
1129
|
discountedAmount: Money;
|
|
999
1130
|
}
|
|
1131
|
+
/** @publicDocs */
|
|
1000
1132
|
export interface CartCodeDiscountAllocation extends CartDiscountAllocationBase {
|
|
1001
1133
|
/**
|
|
1002
|
-
* The code
|
|
1134
|
+
* The discount code string that the buyer entered during checkout, such as `"SAVE10"` or `"FREESHIP"`.
|
|
1003
1135
|
*/
|
|
1004
1136
|
code: string;
|
|
1005
1137
|
/**
|
|
1006
|
-
*
|
|
1138
|
+
* Identifies this as a code-based discount, triggered by a discount code the buyer entered at checkout.
|
|
1007
1139
|
*/
|
|
1008
1140
|
type: 'code';
|
|
1009
1141
|
}
|
|
1142
|
+
/** @publicDocs */
|
|
1010
1143
|
export interface CartAutomaticDiscountAllocation extends CartDiscountAllocationBase {
|
|
1011
1144
|
/**
|
|
1012
|
-
* The title of the automatic discount
|
|
1145
|
+
* The merchant-defined title of the automatic discount as displayed to the buyer, such as "Summer Sale 10% Off".
|
|
1013
1146
|
*/
|
|
1014
1147
|
title: string;
|
|
1015
1148
|
/**
|
|
1016
|
-
*
|
|
1149
|
+
* Identifies this as an automatic discount, applied based on merchant-configured rules without a code.
|
|
1017
1150
|
*/
|
|
1018
1151
|
type: 'automatic';
|
|
1019
1152
|
}
|
|
1153
|
+
/** @publicDocs */
|
|
1020
1154
|
export interface CartCustomDiscountAllocation extends CartDiscountAllocationBase {
|
|
1021
1155
|
/**
|
|
1022
|
-
* The title of the custom discount
|
|
1156
|
+
* The title of the custom discount, typically applied by a [Shopify Function](https://shopify.dev/docs/api/functions/latest/discount).
|
|
1023
1157
|
*/
|
|
1024
1158
|
title: string;
|
|
1025
1159
|
/**
|
|
1026
|
-
*
|
|
1160
|
+
* Identifies this as a custom discount applied by a [Shopify Function](https://shopify.dev/docs/api/functions/latest/discount).
|
|
1027
1161
|
*/
|
|
1028
1162
|
type: 'custom';
|
|
1029
1163
|
}
|
|
@@ -1037,15 +1171,16 @@ interface InterceptorResultAllow {
|
|
|
1037
1171
|
interface InterceptorResultBlock {
|
|
1038
1172
|
/**
|
|
1039
1173
|
* Indicates that some part of the checkout UI intercepted and prevented
|
|
1040
|
-
* the buyer
|
|
1174
|
+
* the buyer's progress. The buyer typically needs to take some action
|
|
1041
1175
|
* to resolve this issue and to move on to the next step.
|
|
1042
1176
|
*/
|
|
1043
1177
|
behavior: 'block';
|
|
1044
1178
|
}
|
|
1179
|
+
/** @publicDocs */
|
|
1045
1180
|
export type InterceptorRequest = InterceptorRequestAllow | InterceptorRequestBlock;
|
|
1046
1181
|
interface InterceptorRequestAllow {
|
|
1047
1182
|
/**
|
|
1048
|
-
* Indicates that the interceptor
|
|
1183
|
+
* Indicates that the interceptor allows the buyer's journey to continue.
|
|
1049
1184
|
*/
|
|
1050
1185
|
behavior: 'allow';
|
|
1051
1186
|
/**
|
|
@@ -1058,12 +1193,12 @@ interface InterceptorRequestAllow {
|
|
|
1058
1193
|
}
|
|
1059
1194
|
interface InterceptorRequestBlock {
|
|
1060
1195
|
/**
|
|
1061
|
-
* Indicates that the interceptor
|
|
1196
|
+
* Indicates that the interceptor blocks the buyer's journey from continuing.
|
|
1062
1197
|
*/
|
|
1063
1198
|
behavior: 'block';
|
|
1064
1199
|
/**
|
|
1065
1200
|
* The reason for blocking the interceptor request. This value isn't presented to
|
|
1066
|
-
* the buyer, so it doesn't need to be localized. The value is used only for Shopify
|
|
1201
|
+
* the buyer, so it doesn't need to be localized. The value is used only for Shopify's
|
|
1067
1202
|
* own internal debugging and metrics.
|
|
1068
1203
|
*/
|
|
1069
1204
|
reason: string;
|
|
@@ -1079,75 +1214,77 @@ interface InterceptorRequestBlock {
|
|
|
1079
1214
|
*/
|
|
1080
1215
|
perform?(result: InterceptorResult): void | Promise<void>;
|
|
1081
1216
|
}
|
|
1217
|
+
/** @publicDocs */
|
|
1082
1218
|
export interface InterceptorProps {
|
|
1083
1219
|
/**
|
|
1084
|
-
* Whether the interceptor has the capability
|
|
1085
|
-
* checkout. This ability might be granted by a merchant in differing checkout contexts.
|
|
1220
|
+
* Whether the interceptor can block the buyer's progress through checkout. When `true`, the merchant has granted your extension the `block_progress` capability. When `false`, you can still validate but can't prevent the buyer from continuing.
|
|
1086
1221
|
*/
|
|
1087
1222
|
canBlockProgress: boolean;
|
|
1088
1223
|
}
|
|
1089
1224
|
/**
|
|
1090
1225
|
* A function for intercepting and preventing navigation on checkout. You can block
|
|
1091
1226
|
* navigation by returning an object with
|
|
1092
|
-
* `{behavior: 'block', reason:
|
|
1227
|
+
* `{behavior: 'block', reason: 'your reason here', errors?: ValidationError[]}`.
|
|
1093
1228
|
* If you do, then you're expected to also update some part of your UI to reflect the reason why navigation
|
|
1094
|
-
* was blocked, either by targeting checkout UI fields, passing errors to the page level or rendering the errors in your extension.
|
|
1229
|
+
* was blocked, either by targeting checkout UI fields, passing errors to the page level, or rendering the errors in your extension.
|
|
1230
|
+
* @publicDocs
|
|
1095
1231
|
*/
|
|
1096
1232
|
export type Interceptor = (interceptorProps: InterceptorProps) => InterceptorRequest | Promise<InterceptorRequest>;
|
|
1097
1233
|
/**
|
|
1098
1234
|
* Information about a customer who has previously purchased from this shop.
|
|
1099
1235
|
*
|
|
1100
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
1236
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
1237
|
+
* @publicDocs
|
|
1101
1238
|
*/
|
|
1102
1239
|
export interface Customer {
|
|
1103
1240
|
/**
|
|
1104
|
-
* Customer
|
|
1241
|
+
* An identifier for the customer in the format `gid://shopify/Customer/<id>`. This value is unique per shop.
|
|
1105
1242
|
*
|
|
1106
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
1243
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
1107
1244
|
*
|
|
1108
1245
|
* @example 'gid://shopify/Customer/123'
|
|
1109
1246
|
*/
|
|
1110
1247
|
id: string;
|
|
1111
1248
|
/**
|
|
1112
|
-
* The email
|
|
1249
|
+
* The email address associated with the customer's account. The value is `undefined` if the app doesn't have the required access level.
|
|
1113
1250
|
*
|
|
1114
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires level 2 access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
1251
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires level 2 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
1115
1252
|
*/
|
|
1116
1253
|
email?: string;
|
|
1117
1254
|
/**
|
|
1118
|
-
* The phone number
|
|
1255
|
+
* The phone number associated with the customer's account. The value is `undefined` if no phone number is on file or the app doesn't have the required access level.
|
|
1119
1256
|
*
|
|
1120
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires level 2 access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
1257
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires level 2 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
1121
1258
|
*/
|
|
1122
1259
|
phone?: string;
|
|
1123
1260
|
/**
|
|
1124
|
-
* The full name of the
|
|
1261
|
+
* The customer's full name, typically a combination of first and last name. The value is `undefined` if the app doesn't have the required access level.
|
|
1125
1262
|
*
|
|
1126
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires level 2 access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
1263
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires level 2 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
1127
1264
|
*/
|
|
1128
1265
|
fullName?: string;
|
|
1129
1266
|
/**
|
|
1130
|
-
* The first name
|
|
1267
|
+
* The customer's first name. The value is `undefined` if the app doesn't have the required access level.
|
|
1131
1268
|
*
|
|
1132
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires level 2 access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
1269
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires level 2 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
1133
1270
|
*/
|
|
1134
1271
|
firstName?: string;
|
|
1135
1272
|
/**
|
|
1136
|
-
* The last name
|
|
1273
|
+
* The customer's last name. The value is `undefined` if the app doesn't have the required access level.
|
|
1137
1274
|
*
|
|
1138
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires level 2 access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
1275
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires level 2 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
1139
1276
|
*/
|
|
1140
1277
|
lastName?: string;
|
|
1141
1278
|
/**
|
|
1142
|
-
* The image
|
|
1279
|
+
* The customer's profile image, such as a Gravatar avatar. Use this to personalize the extension UI for the logged-in buyer.
|
|
1143
1280
|
*
|
|
1144
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
1281
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
1145
1282
|
*/
|
|
1146
1283
|
image: ImageDetails;
|
|
1147
1284
|
/**
|
|
1148
|
-
*
|
|
1285
|
+
* Whether the customer has opted in to receiving marketing communications from the merchant, such as email campaigns and promotional offers.
|
|
1149
1286
|
*
|
|
1150
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
1287
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
1151
1288
|
*
|
|
1152
1289
|
* > Caution: This field is deprecated and will be removed in a future version. Use `acceptsEmailMarketing` or `acceptsSmsMarketing` instead.
|
|
1153
1290
|
*
|
|
@@ -1155,105 +1292,121 @@ export interface Customer {
|
|
|
1155
1292
|
*/
|
|
1156
1293
|
acceptsMarketing: boolean;
|
|
1157
1294
|
/**
|
|
1158
|
-
*
|
|
1295
|
+
* Whether the customer has opted in to email marketing.
|
|
1159
1296
|
*
|
|
1160
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
1297
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
1161
1298
|
*/
|
|
1162
1299
|
acceptsEmailMarketing: boolean;
|
|
1163
1300
|
/**
|
|
1164
|
-
*
|
|
1301
|
+
* Whether the customer has opted in to SMS marketing.
|
|
1165
1302
|
*
|
|
1166
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
1303
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
1167
1304
|
*/
|
|
1168
1305
|
acceptsSmsMarketing: boolean;
|
|
1169
1306
|
/**
|
|
1170
|
-
* The
|
|
1307
|
+
* The store credit accounts owned by this customer that can be used as payment during checkout. Each account has a balance representing available store credit.
|
|
1171
1308
|
*
|
|
1172
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
1309
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
1173
1310
|
*
|
|
1174
1311
|
* @private
|
|
1175
1312
|
*/
|
|
1176
1313
|
storeCreditAccounts: StoreCreditAccount[];
|
|
1177
1314
|
/**
|
|
1178
|
-
* The number of
|
|
1315
|
+
* The number of orders the customer has previously placed with this shop.
|
|
1179
1316
|
*
|
|
1180
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
1317
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
1181
1318
|
*/
|
|
1182
1319
|
ordersCount: number;
|
|
1183
1320
|
}
|
|
1184
1321
|
/**
|
|
1185
1322
|
* Settings describing the behavior of the buyer's checkout.
|
|
1323
|
+
* @publicDocs
|
|
1186
1324
|
*/
|
|
1187
1325
|
export interface CheckoutSettings {
|
|
1188
1326
|
/**
|
|
1189
|
-
* The type of order
|
|
1327
|
+
* The type of order created when the buyer completes checkout.
|
|
1328
|
+
*
|
|
1329
|
+
* - `'DRAFT_ORDER'`: The checkout creates a draft order that the merchant must manually confirm before fulfillment. Common for B2B checkouts with deferred payment terms.
|
|
1330
|
+
* - `'ORDER'`: The checkout creates a confirmed order immediately upon completion.
|
|
1190
1331
|
*/
|
|
1191
1332
|
orderSubmission: 'DRAFT_ORDER' | 'ORDER';
|
|
1192
1333
|
/**
|
|
1193
|
-
*
|
|
1334
|
+
* The payment terms configured by the merchant for B2B orders, such as net-30 or net-60. The value is `undefined` if no payment terms are configured.
|
|
1194
1335
|
*/
|
|
1195
1336
|
paymentTermsTemplate?: PaymentTermsTemplate;
|
|
1196
1337
|
/**
|
|
1197
|
-
* Settings
|
|
1338
|
+
* Settings that control how the shipping address behaves during checkout, such as whether the buyer can edit the address.
|
|
1198
1339
|
*/
|
|
1199
1340
|
shippingAddress: ShippingAddressSettings;
|
|
1200
1341
|
}
|
|
1201
1342
|
/**
|
|
1202
1343
|
* Settings describing the behavior of the shipping address.
|
|
1344
|
+
* @publicDocs
|
|
1203
1345
|
*/
|
|
1204
1346
|
export interface ShippingAddressSettings {
|
|
1205
1347
|
/**
|
|
1206
|
-
*
|
|
1348
|
+
* Whether the buyer is allowed to edit the shipping address during checkout. When `false`, the shipping address is locked and can't be changed, which is common for B2B orders with a predefined ship-to address.
|
|
1207
1349
|
*/
|
|
1208
1350
|
isEditable: boolean;
|
|
1209
1351
|
}
|
|
1210
1352
|
/**
|
|
1211
|
-
*
|
|
1353
|
+
* A payment terms template configured by the merchant, defining when payment is due for B2B orders. Common examples include "Net 30" (due in 30 days) or "Due on receipt".
|
|
1354
|
+
* @publicDocs
|
|
1212
1355
|
*/
|
|
1213
1356
|
export interface PaymentTermsTemplate {
|
|
1214
1357
|
/**
|
|
1215
|
-
* A globally-unique
|
|
1358
|
+
* A globally-unique identifier for the payment terms template in the format `gid://shopify/PaymentTermsTemplate/<id>`.
|
|
1359
|
+
*
|
|
1216
1360
|
* @example 'gid://shopify/PaymentTermsTemplate/1'
|
|
1217
1361
|
*/
|
|
1218
1362
|
id: string;
|
|
1219
1363
|
/**
|
|
1220
|
-
* The name of the payment terms translated to the buyer's current language
|
|
1364
|
+
* The name of the payment terms translated to the buyer's current language, such as "Net 30" or "Due on receipt".
|
|
1221
1365
|
*/
|
|
1222
1366
|
name: string;
|
|
1223
1367
|
/**
|
|
1224
|
-
* The due date for
|
|
1368
|
+
* The due date for payment in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format (`YYYY-MM-DDTHH:mm:ss.sssZ`). The value is `undefined` if the payment terms don't have a fixed due date.
|
|
1225
1369
|
*/
|
|
1226
1370
|
dueDate?: string;
|
|
1227
1371
|
/**
|
|
1228
|
-
* The number of days
|
|
1372
|
+
* The number of days the buyer has to pay after the order is placed, such as `30` for "Net 30" terms. The value is `undefined` if the payment terms aren't net-based.
|
|
1229
1373
|
*/
|
|
1230
1374
|
dueInDays?: number;
|
|
1231
1375
|
}
|
|
1232
1376
|
/**
|
|
1233
|
-
*
|
|
1377
|
+
* A store credit account owned by the customer. Store credit is a form of payment that merchants can issue to customers for returns, refunds, or promotional purposes.
|
|
1378
|
+
* @publicDocs
|
|
1234
1379
|
*/
|
|
1235
1380
|
export interface StoreCreditAccount {
|
|
1236
1381
|
/**
|
|
1237
|
-
* A globally-unique identifier
|
|
1382
|
+
* A globally-unique identifier for the store credit account in the format `gid://shopify/StoreCreditAccount/<id>`.
|
|
1383
|
+
*
|
|
1238
1384
|
* @example 'gid://shopify/StoreCreditAccount/1'
|
|
1239
1385
|
*/
|
|
1240
1386
|
id: string;
|
|
1241
1387
|
/**
|
|
1242
|
-
* The
|
|
1388
|
+
* The remaining balance available in this store credit account. This reflects the amount that can still be applied toward purchases.
|
|
1243
1389
|
*/
|
|
1244
1390
|
balance: Money;
|
|
1245
1391
|
}
|
|
1246
1392
|
/**
|
|
1247
1393
|
* The merchant-defined setting values for the extension.
|
|
1394
|
+
* @publicDocs
|
|
1248
1395
|
*/
|
|
1249
1396
|
export type ExtensionSettings = Record<string, string | number | boolean | undefined>;
|
|
1397
|
+
/**
|
|
1398
|
+
* Tracks custom events and sends visitor information to
|
|
1399
|
+
* [Web Pixels](https://shopify.dev/docs/apps/marketing). Use `publish()` to emit events
|
|
1400
|
+
* and `visitor()` to submit buyer contact details.
|
|
1401
|
+
*/
|
|
1250
1402
|
export interface Analytics {
|
|
1251
1403
|
/**
|
|
1252
|
-
*
|
|
1404
|
+
* Publishes a custom event to [Web Pixels](https://shopify.dev/docs/apps/marketing).
|
|
1405
|
+
* Returns `true` when the event is successfully dispatched.
|
|
1253
1406
|
*/
|
|
1254
1407
|
publish(name: string, data: Record<string, unknown>): Promise<boolean>;
|
|
1255
1408
|
/**
|
|
1256
|
-
*
|
|
1409
|
+
* Submits buyer contact details for attribution and analytics purposes.
|
|
1257
1410
|
*/
|
|
1258
1411
|
visitor(data: {
|
|
1259
1412
|
email?: string;
|
|
@@ -1262,10 +1415,12 @@ export interface Analytics {
|
|
|
1262
1415
|
}
|
|
1263
1416
|
/**
|
|
1264
1417
|
* Represents a visitor result.
|
|
1418
|
+
* @publicDocs
|
|
1265
1419
|
*/
|
|
1266
1420
|
export type VisitorResult = VisitorSuccess | VisitorError;
|
|
1267
1421
|
/**
|
|
1268
1422
|
* Represents a successful visitor result.
|
|
1423
|
+
* @publicDocs
|
|
1269
1424
|
*/
|
|
1270
1425
|
export interface VisitorSuccess {
|
|
1271
1426
|
/**
|
|
@@ -1275,180 +1430,209 @@ export interface VisitorSuccess {
|
|
|
1275
1430
|
}
|
|
1276
1431
|
/**
|
|
1277
1432
|
* Represents an unsuccessful visitor result.
|
|
1433
|
+
* @publicDocs
|
|
1278
1434
|
*/
|
|
1279
1435
|
export interface VisitorError {
|
|
1280
1436
|
/**
|
|
1281
1437
|
* Indicates that the visitor information is invalid and wasn't submitted.
|
|
1282
|
-
*
|
|
1438
|
+
* Common causes include using the wrong data type or omitting a required property.
|
|
1283
1439
|
*/
|
|
1284
1440
|
type: 'error';
|
|
1285
1441
|
/**
|
|
1286
1442
|
* A message that explains the error. This message is useful for debugging.
|
|
1287
|
-
* It'
|
|
1288
|
-
* to the buyer.
|
|
1443
|
+
* It isn't localized and shouldn't be displayed to the buyer.
|
|
1289
1444
|
*/
|
|
1290
1445
|
message: string;
|
|
1291
1446
|
}
|
|
1292
1447
|
/**
|
|
1293
|
-
*
|
|
1294
|
-
*
|
|
1448
|
+
* A group of cart lines that share the same set of delivery options. For example, physical items might form one delivery group while digital items form another.
|
|
1449
|
+
* @publicDocs
|
|
1295
1450
|
*/
|
|
1296
1451
|
export interface DeliveryGroup {
|
|
1297
1452
|
/**
|
|
1298
|
-
*
|
|
1453
|
+
* A unique identifier for the delivery group. The value is `undefined` if the underlying delivery line doesn't have an ID assigned.
|
|
1299
1454
|
*/
|
|
1300
1455
|
id?: string;
|
|
1301
1456
|
/**
|
|
1302
|
-
* The cart
|
|
1457
|
+
* The cart lines that belong to this delivery group. Each reference contains the cart line's `id`, which you can match against `lines` to get the full cart line details.
|
|
1303
1458
|
*/
|
|
1304
1459
|
targetedCartLines: CartLineReference[];
|
|
1305
1460
|
/**
|
|
1306
|
-
* The delivery options available for
|
|
1461
|
+
* The delivery options available for this group, including shipping, pickup point, and pickup location options. The buyer selects one of these to determine how their items are delivered.
|
|
1307
1462
|
*/
|
|
1308
1463
|
deliveryOptions: DeliveryOption[];
|
|
1309
1464
|
/**
|
|
1310
|
-
* The
|
|
1465
|
+
* The delivery option the buyer has selected for this group. The value is `undefined` if the buyer hasn't selected a delivery option yet. Contains a `handle` you can match against `deliveryOptions` entries.
|
|
1311
1466
|
*/
|
|
1312
1467
|
selectedDeliveryOption?: DeliveryOptionReference;
|
|
1313
1468
|
/**
|
|
1314
|
-
*
|
|
1469
|
+
* Whether this group contains items for a one-time purchase or a subscription.
|
|
1470
|
+
* Subscription delivery groups might have different shipping options. See `DeliveryGroupType` for possible values.
|
|
1315
1471
|
*/
|
|
1316
1472
|
groupType: DeliveryGroupType;
|
|
1317
1473
|
/**
|
|
1318
|
-
* Whether delivery is required for the
|
|
1474
|
+
* Whether physical delivery is required for the items in this group.
|
|
1475
|
+
* Digital-only groups don't require delivery.
|
|
1319
1476
|
*/
|
|
1320
1477
|
isDeliveryRequired: boolean;
|
|
1321
1478
|
}
|
|
1322
1479
|
/**
|
|
1323
1480
|
* The possible types of a delivery group.
|
|
1481
|
+
*
|
|
1482
|
+
* - `'oneTimePurchase'`: Items bought as a single, non-recurring purchase.
|
|
1483
|
+
* - `'subscription'`: Items bought through a [selling plan](https://shopify.dev/docs/apps/build/purchase-options/subscriptions) that results in recurring deliveries.
|
|
1484
|
+
* @publicDocs
|
|
1324
1485
|
*/
|
|
1325
1486
|
export type DeliveryGroupType = 'oneTimePurchase' | 'subscription';
|
|
1326
1487
|
/**
|
|
1327
|
-
*
|
|
1488
|
+
* A reference to a cart line within a delivery group, identified by the cart line's ID.
|
|
1489
|
+
* @publicDocs
|
|
1328
1490
|
*/
|
|
1329
1491
|
export interface CartLineReference {
|
|
1330
1492
|
/**
|
|
1331
|
-
* The unique identifier of the referenced cart line.
|
|
1493
|
+
* The unique identifier of the referenced cart line. Match this against `CartLine.id` from the `lines` property to get the full line item details.
|
|
1332
1494
|
*/
|
|
1333
1495
|
id: string;
|
|
1334
1496
|
}
|
|
1335
1497
|
/**
|
|
1336
|
-
*
|
|
1498
|
+
* A reference to the delivery option selected by the buyer for a delivery group.
|
|
1499
|
+
* @publicDocs
|
|
1337
1500
|
*/
|
|
1338
1501
|
export interface DeliveryOptionReference {
|
|
1339
1502
|
/**
|
|
1340
|
-
* The unique identifier of the referenced delivery option.
|
|
1503
|
+
* The unique identifier of the referenced delivery option. Match this against `DeliveryOption.handle` from the `deliveryOptions` array to get the full option details.
|
|
1341
1504
|
*/
|
|
1342
1505
|
handle: string;
|
|
1343
1506
|
}
|
|
1507
|
+
/**
|
|
1508
|
+
* A delivery option available to the buyer. Use the `type` property to determine which kind of option it is:
|
|
1509
|
+
*
|
|
1510
|
+
* - `ShippingOption` (`type: 'shipping' | 'local'`): Items shipped by a carrier or delivered locally by the merchant.
|
|
1511
|
+
* - `PickupPointOption` (`type: 'pickupPoint'`): Items shipped to a third-party collection point for the buyer to pick up.
|
|
1512
|
+
* - `PickupLocationOption` (`type: 'pickup'`): Items picked up directly from a merchant's store or warehouse.
|
|
1513
|
+
* @publicDocs
|
|
1514
|
+
*/
|
|
1344
1515
|
export type DeliveryOption = ShippingOption | PickupPointOption | PickupLocationOption;
|
|
1345
1516
|
/**
|
|
1346
1517
|
* Represents a base interface for a single delivery option.
|
|
1518
|
+
* @publicDocs
|
|
1347
1519
|
*/
|
|
1348
1520
|
export interface DeliveryOptionBase {
|
|
1349
1521
|
/**
|
|
1350
|
-
* The unique identifier of the delivery option.
|
|
1522
|
+
* The unique identifier of the delivery option. Use this to match against `DeliveryOptionReference.handle` or `DeliverySelectionGroup` entries.
|
|
1351
1523
|
*/
|
|
1352
1524
|
handle: string;
|
|
1353
1525
|
/**
|
|
1354
|
-
* The
|
|
1526
|
+
* The merchant-facing or carrier-provided display name for the delivery
|
|
1527
|
+
* option, such as "Standard Shipping" or "Express".
|
|
1355
1528
|
*/
|
|
1356
1529
|
title?: string;
|
|
1357
1530
|
/**
|
|
1358
|
-
*
|
|
1531
|
+
* Additional details about the delivery option provided by the carrier
|
|
1532
|
+
* or merchant, such as estimated delivery windows or service level notes.
|
|
1359
1533
|
*/
|
|
1360
1534
|
description?: string;
|
|
1361
1535
|
/**
|
|
1362
|
-
* The code
|
|
1536
|
+
* The carrier service code or rate identifier for this delivery option.
|
|
1363
1537
|
*/
|
|
1364
1538
|
code: string;
|
|
1365
1539
|
/**
|
|
1366
|
-
*
|
|
1540
|
+
* Custom [metafields](https://shopify.dev/docs/apps/build/custom-data/metafields) attached to this delivery option by the carrier or a [Shopify Function](https://shopify.dev/docs/apps/build/functions). Use these to display additional information about the option.
|
|
1367
1541
|
*/
|
|
1368
1542
|
metafields: Metafield[];
|
|
1369
1543
|
}
|
|
1370
1544
|
/**
|
|
1371
|
-
* Represents a delivery option that
|
|
1545
|
+
* Represents a delivery option that's a shipping option.
|
|
1546
|
+
* @publicDocs
|
|
1372
1547
|
*/
|
|
1373
1548
|
export interface ShippingOption extends DeliveryOptionBase {
|
|
1374
1549
|
/**
|
|
1375
|
-
*
|
|
1550
|
+
* Identifies the delivery method. `'shipping'` means items are shipped by a carrier. `'local'` means the merchant handles delivery themselves, for example same-day local delivery.
|
|
1376
1551
|
*/
|
|
1377
1552
|
type: 'shipping' | 'local';
|
|
1378
1553
|
/**
|
|
1379
|
-
* Information about the carrier.
|
|
1554
|
+
* Information about the carrier providing this shipping option, including the carrier's display name.
|
|
1380
1555
|
*/
|
|
1381
1556
|
carrier: ShippingOptionCarrier;
|
|
1382
1557
|
/**
|
|
1383
|
-
* The cost of
|
|
1558
|
+
* The cost of this delivery option before any shipping discounts are applied. Compare with `costAfterDiscounts` to show savings.
|
|
1384
1559
|
*/
|
|
1385
1560
|
cost: Money;
|
|
1386
1561
|
/**
|
|
1387
|
-
* The cost of
|
|
1562
|
+
* The cost of this delivery option after shipping discounts have been applied. This is the price the buyer actually pays for shipping.
|
|
1388
1563
|
*/
|
|
1389
1564
|
costAfterDiscounts: Money;
|
|
1390
1565
|
/**
|
|
1391
|
-
*
|
|
1566
|
+
* The estimated delivery time for this shipping option. Use the `timeInTransit` range to display an estimated arrival window to the buyer.
|
|
1392
1567
|
*/
|
|
1393
1568
|
deliveryEstimate: DeliveryEstimate;
|
|
1394
1569
|
}
|
|
1570
|
+
/** @publicDocs */
|
|
1395
1571
|
export interface DeliveryEstimate {
|
|
1396
1572
|
/**
|
|
1397
|
-
* The estimated time in transit for the delivery
|
|
1573
|
+
* The estimated time in transit for the delivery, expressed as a range
|
|
1574
|
+
* in seconds. Undefined when the carrier doesn't provide an estimate.
|
|
1575
|
+
* When present, either the lower or upper bound of the range might still
|
|
1576
|
+
* be omitted.
|
|
1398
1577
|
*/
|
|
1399
1578
|
timeInTransit?: NumberRange;
|
|
1400
1579
|
}
|
|
1580
|
+
/** @publicDocs */
|
|
1401
1581
|
export interface ShippingOptionCarrier {
|
|
1402
1582
|
/**
|
|
1403
|
-
* The name of the carrier.
|
|
1583
|
+
* The display name of the shipping carrier, such as "Canada Post" or "UPS". The value is `undefined` if the carrier name isn't available.
|
|
1404
1584
|
*/
|
|
1405
1585
|
name?: string;
|
|
1406
1586
|
}
|
|
1587
|
+
/** @publicDocs */
|
|
1407
1588
|
export interface PickupPointOption extends DeliveryOptionBase {
|
|
1408
1589
|
/**
|
|
1409
|
-
*
|
|
1590
|
+
* Identifies this as a pickup point option, where items are shipped to a third-party collection point for the buyer to pick up.
|
|
1410
1591
|
*/
|
|
1411
1592
|
type: 'pickupPoint';
|
|
1412
1593
|
/**
|
|
1413
|
-
* Information about the carrier that ships to
|
|
1594
|
+
* Information about the carrier that ships items to this pickup point, including the carrier's name and code.
|
|
1414
1595
|
*/
|
|
1415
1596
|
carrier: PickupPointCarrier;
|
|
1416
1597
|
/**
|
|
1417
|
-
* The cost
|
|
1598
|
+
* The cost of this delivery option before any shipping discounts are applied. Compare with `costAfterDiscounts` to show savings.
|
|
1418
1599
|
*/
|
|
1419
1600
|
cost: Money;
|
|
1420
1601
|
/**
|
|
1421
|
-
* The cost
|
|
1602
|
+
* The cost of this delivery option after shipping discounts have been applied. This is the price the buyer actually pays for shipping.
|
|
1422
1603
|
*/
|
|
1423
1604
|
costAfterDiscounts: Money;
|
|
1424
1605
|
/**
|
|
1425
|
-
* The location
|
|
1606
|
+
* The physical location where the buyer picks up their order, including the address and display name of the collection point.
|
|
1426
1607
|
*/
|
|
1427
1608
|
location: PickupPointLocation;
|
|
1428
1609
|
}
|
|
1610
|
+
/** @publicDocs */
|
|
1429
1611
|
export interface PickupLocationOption extends DeliveryOptionBase {
|
|
1430
1612
|
/**
|
|
1431
|
-
*
|
|
1613
|
+
* Identifies this as a pickup location option, where the buyer picks up items directly from a merchant's store or warehouse.
|
|
1432
1614
|
*/
|
|
1433
1615
|
type: 'pickup';
|
|
1434
1616
|
/**
|
|
1435
|
-
* The
|
|
1617
|
+
* The merchant's store or warehouse where the buyer picks up their order, including the address and display name.
|
|
1436
1618
|
*/
|
|
1437
1619
|
location: PickupLocation;
|
|
1438
1620
|
}
|
|
1439
1621
|
interface PickupLocation {
|
|
1440
1622
|
/**
|
|
1441
|
-
* The name of the pickup location
|
|
1623
|
+
* The merchant-defined display name of the pickup location, such as a
|
|
1624
|
+
* store name or warehouse label.
|
|
1442
1625
|
*/
|
|
1443
1626
|
name?: string;
|
|
1444
1627
|
/**
|
|
1445
|
-
* The address of the pickup location.
|
|
1628
|
+
* The physical address of the pickup location.
|
|
1446
1629
|
*/
|
|
1447
1630
|
address: MailingAddress;
|
|
1448
1631
|
}
|
|
1449
1632
|
interface PickupPointLocation {
|
|
1450
1633
|
/**
|
|
1451
|
-
* The name of the pickup point
|
|
1634
|
+
* The display name of the pickup point, such as the name of the locker
|
|
1635
|
+
* or collection point.
|
|
1452
1636
|
*/
|
|
1453
1637
|
name?: string;
|
|
1454
1638
|
/**
|
|
@@ -1456,152 +1640,174 @@ interface PickupPointLocation {
|
|
|
1456
1640
|
*/
|
|
1457
1641
|
handle: string;
|
|
1458
1642
|
/**
|
|
1459
|
-
* The address of the pickup point.
|
|
1643
|
+
* The physical address of the pickup point.
|
|
1460
1644
|
*/
|
|
1461
1645
|
address: MailingAddress;
|
|
1462
1646
|
}
|
|
1463
1647
|
interface PickupPointCarrier {
|
|
1464
1648
|
/**
|
|
1465
|
-
* The code
|
|
1649
|
+
* The carrier's unique identifier code, used to distinguish between
|
|
1650
|
+
* different carriers that deliver to pickup points.
|
|
1466
1651
|
*/
|
|
1467
1652
|
code?: string;
|
|
1468
1653
|
/**
|
|
1469
|
-
* The name of the carrier.
|
|
1654
|
+
* The display name of the carrier that delivers to this pickup point.
|
|
1470
1655
|
*/
|
|
1471
1656
|
name?: string;
|
|
1472
1657
|
}
|
|
1658
|
+
/** @publicDocs */
|
|
1473
1659
|
export interface NumberRange {
|
|
1474
1660
|
/**
|
|
1475
|
-
* The lower bound of the
|
|
1661
|
+
* The lower bound of the range. Undefined if only an upper bound is
|
|
1662
|
+
* provided.
|
|
1476
1663
|
*/
|
|
1477
1664
|
lower?: number;
|
|
1478
1665
|
/**
|
|
1479
|
-
* The upper bound of the
|
|
1666
|
+
* The upper bound of the range. Undefined if only a lower bound is
|
|
1667
|
+
* provided.
|
|
1480
1668
|
*/
|
|
1481
1669
|
upper?: number;
|
|
1482
1670
|
}
|
|
1483
1671
|
/**
|
|
1484
1672
|
* Represents a DeliveryGroup with expanded reference fields and full details.
|
|
1673
|
+
* @publicDocs
|
|
1485
1674
|
*/
|
|
1486
1675
|
export interface DeliveryGroupDetails extends DeliveryGroup {
|
|
1487
1676
|
/**
|
|
1488
|
-
* The
|
|
1677
|
+
* The full delivery option the buyer has selected for this group, with all cost and carrier details included. The value is `undefined` if the buyer hasn't selected an option yet. Unlike `DeliveryGroup.selectedDeliveryOption`, which is a reference, this contains the complete `DeliveryOption` object.
|
|
1489
1678
|
*/
|
|
1490
1679
|
selectedDeliveryOption?: DeliveryOption;
|
|
1491
1680
|
/**
|
|
1492
|
-
* The cart
|
|
1681
|
+
* The full cart line objects associated with this delivery group, with all merchandise and cost details included. Unlike `DeliveryGroup.targetedCartLines`, which contains references, this contains the complete `CartLine` objects.
|
|
1493
1682
|
*/
|
|
1494
1683
|
targetedCartLines: CartLine[];
|
|
1495
1684
|
}
|
|
1685
|
+
/** @publicDocs */
|
|
1496
1686
|
export interface AllowedProcessing {
|
|
1497
1687
|
/**
|
|
1498
|
-
*
|
|
1688
|
+
* Whether analytics data can be collected based on the visitor's consent,
|
|
1689
|
+
* the merchant's privacy configuration, and the visitor's region. Analytics
|
|
1690
|
+
* data includes how the shop was used and what interactions occurred.
|
|
1499
1691
|
*/
|
|
1500
1692
|
analytics: boolean;
|
|
1501
1693
|
/**
|
|
1502
|
-
*
|
|
1694
|
+
* Whether marketing data can be collected based on the visitor's consent,
|
|
1695
|
+
* the merchant's privacy configuration, and the visitor's region. Marketing
|
|
1696
|
+
* data includes attribution and targeted advertising preferences.
|
|
1503
1697
|
*/
|
|
1504
1698
|
marketing: boolean;
|
|
1505
1699
|
/**
|
|
1506
|
-
*
|
|
1700
|
+
* Whether preference data can be collected based on the visitor's consent,
|
|
1701
|
+
* the merchant's privacy configuration, and the visitor's region. Preference
|
|
1702
|
+
* data includes language, currency, and sizing choices.
|
|
1507
1703
|
*/
|
|
1508
1704
|
preferences: boolean;
|
|
1509
1705
|
/**
|
|
1510
|
-
*
|
|
1706
|
+
* Whether data can be shared with third parties based on the visitor's
|
|
1707
|
+
* consent, the merchant's privacy configuration, and the visitor's region.
|
|
1708
|
+
* This typically applies to behavioral advertising data.
|
|
1511
1709
|
*/
|
|
1512
1710
|
saleOfData: boolean;
|
|
1513
1711
|
}
|
|
1712
|
+
/** @publicDocs */
|
|
1514
1713
|
export interface VisitorConsent {
|
|
1515
1714
|
/**
|
|
1516
|
-
*
|
|
1715
|
+
* The visitor's consent for analytics tracking. `true` means the visitor
|
|
1716
|
+
* actively granted consent, `false` means actively denied, and `undefined`
|
|
1717
|
+
* means no decision has been made yet.
|
|
1517
1718
|
*/
|
|
1518
1719
|
analytics?: boolean;
|
|
1519
1720
|
/**
|
|
1520
|
-
*
|
|
1721
|
+
* The visitor's consent for marketing and targeted advertising. `true` means
|
|
1722
|
+
* the visitor actively granted consent, `false` means actively denied, and
|
|
1723
|
+
* `undefined` means no decision has been made yet.
|
|
1521
1724
|
*/
|
|
1522
1725
|
marketing?: boolean;
|
|
1523
1726
|
/**
|
|
1524
|
-
*
|
|
1727
|
+
* The visitor's consent for storing preferences such as language and currency.
|
|
1728
|
+
* `true` means the visitor actively granted consent, `false` means actively
|
|
1729
|
+
* denied, and `undefined` means no decision has been made yet.
|
|
1525
1730
|
*/
|
|
1526
1731
|
preferences?: boolean;
|
|
1527
1732
|
/**
|
|
1528
|
-
*
|
|
1733
|
+
* The visitor's consent for the sale or sharing of their personal data with
|
|
1734
|
+
* third parties. `true` means the visitor actively granted consent, `false`
|
|
1735
|
+
* means actively denied, and `undefined` means no decision has been made yet.
|
|
1529
1736
|
*/
|
|
1530
1737
|
saleOfData?: boolean;
|
|
1531
1738
|
}
|
|
1739
|
+
/** @publicDocs */
|
|
1532
1740
|
export interface TrackingConsentMetafield {
|
|
1533
1741
|
/**
|
|
1534
|
-
* The
|
|
1535
|
-
* length (inclusive).
|
|
1742
|
+
* The identifier for the tracking consent metafield, such as `'analyticsType'` or `'marketingType'`.
|
|
1536
1743
|
*/
|
|
1537
1744
|
key: string;
|
|
1538
1745
|
/**
|
|
1539
|
-
* The
|
|
1540
|
-
*
|
|
1541
|
-
* @example 'any string', '', or a stringified JSON object
|
|
1746
|
+
* The value stored in the tracking consent metafield, such as `'granular'` or a stringified JSON object.
|
|
1542
1747
|
*/
|
|
1543
1748
|
value: string;
|
|
1544
1749
|
}
|
|
1750
|
+
/** @publicDocs */
|
|
1545
1751
|
export interface TrackingConsentMetafieldChange {
|
|
1546
1752
|
/**
|
|
1547
|
-
* The
|
|
1548
|
-
* length (inclusive).
|
|
1753
|
+
* The identifier for the tracking consent metafield to update.
|
|
1549
1754
|
*/
|
|
1550
1755
|
key: string;
|
|
1551
1756
|
/**
|
|
1552
|
-
* The
|
|
1553
|
-
*
|
|
1554
|
-
* @example 'any string', `null`, or a stringified JSON object
|
|
1757
|
+
* The new value to store in the metafield. Set to `null` to delete the metafield.
|
|
1555
1758
|
*/
|
|
1556
1759
|
value: string | null;
|
|
1557
1760
|
}
|
|
1761
|
+
/** @publicDocs */
|
|
1558
1762
|
export interface VisitorConsentChange extends VisitorConsent {
|
|
1559
1763
|
/**
|
|
1560
1764
|
* Tracking consent metafield data to be saved.
|
|
1561
1765
|
*
|
|
1562
|
-
* If the value is `null`, the metafield
|
|
1766
|
+
* If the value is `null`, the metafield is deleted.
|
|
1563
1767
|
*
|
|
1564
1768
|
* @example `[{key: 'granularAnalytics', value: 'true'}, {key: 'granularMarketing', value: 'false'}]`
|
|
1565
1769
|
*/
|
|
1566
1770
|
metafields?: TrackingConsentMetafieldChange[];
|
|
1771
|
+
/**
|
|
1772
|
+
* Identifies this as a visitor consent change. This is the only supported change type for `applyTrackingConsentChange()`.
|
|
1773
|
+
*/
|
|
1567
1774
|
type: 'changeVisitorConsent';
|
|
1568
1775
|
}
|
|
1776
|
+
/** @publicDocs */
|
|
1569
1777
|
export type ApplyTrackingConsentChangeType = (visitorConsent: VisitorConsentChange) => Promise<TrackingConsentChangeResult>;
|
|
1778
|
+
/** @publicDocs */
|
|
1570
1779
|
export interface CustomerPrivacyRegion {
|
|
1571
1780
|
/**
|
|
1572
|
-
* The [ISO 3166
|
|
1781
|
+
* The buyer's country code in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format. The value is `undefined` if geolocation failed.
|
|
1573
1782
|
*
|
|
1574
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
1783
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
1575
1784
|
*
|
|
1576
|
-
* @example 'CA' for Canada, 'US' for United States, 'GB' for Great Britain
|
|
1785
|
+
* @example 'CA' for Canada, 'US' for United States, 'GB' for Great Britain
|
|
1577
1786
|
*/
|
|
1578
1787
|
countryCode?: CountryCode;
|
|
1579
1788
|
/**
|
|
1580
|
-
* The buyer's province
|
|
1581
|
-
*
|
|
1582
|
-
* Province codes can be found by clicking on the `Subdivisions assigned codes` column for countries listed [here](https://en.wikipedia.org/wiki/ISO_3166-2).
|
|
1789
|
+
* The buyer's province, state, or region code in [ISO 3166-2](https://en.wikipedia.org/wiki/ISO_3166-2) format. The value is `undefined` if geolocation failed or only the country was detected.
|
|
1583
1790
|
*
|
|
1584
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
1791
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
1585
1792
|
*
|
|
1586
|
-
* @example 'ON' for Ontario, 'ENG' for England, 'CA' for California
|
|
1793
|
+
* @example 'ON' for Ontario, 'ENG' for England, 'CA' for California
|
|
1587
1794
|
*/
|
|
1588
1795
|
provinceCode?: string;
|
|
1589
1796
|
}
|
|
1797
|
+
/** @publicDocs */
|
|
1590
1798
|
export interface CustomerPrivacy {
|
|
1591
1799
|
/**
|
|
1592
|
-
*
|
|
1800
|
+
* Flags indicating whether each type of data processing is permitted, based on the visitor's consent, the merchant's privacy configuration, and the visitor's geographic location.
|
|
1593
1801
|
*/
|
|
1594
1802
|
allowedProcessing: AllowedProcessing;
|
|
1595
1803
|
/**
|
|
1596
|
-
*
|
|
1804
|
+
* The tracking consent metafields that have been stored for this visitor. These contain app-specific consent data beyond the standard categories.
|
|
1597
1805
|
*
|
|
1598
1806
|
* @example `[{key: 'analyticsType', value: 'granular'}, {key: 'marketingType', value: 'granular'}]`, or `[]`
|
|
1599
1807
|
*/
|
|
1600
1808
|
metafields: TrackingConsentMetafield[];
|
|
1601
1809
|
/**
|
|
1602
|
-
*
|
|
1603
|
-
* *
|
|
1604
|
-
* @example `true` — the customer has actively granted consent, `false` — the customer has actively denied consent, or `undefined` — the customer has not yet made a decision.
|
|
1810
|
+
* The visitor's current privacy consent settings. Each property represents a consent category and is `true` (actively granted), `false` (actively denied), or `undefined` (no decision made yet).
|
|
1605
1811
|
*/
|
|
1606
1812
|
visitorConsent: VisitorConsent;
|
|
1607
1813
|
/**
|
|
@@ -1611,117 +1817,145 @@ export interface CustomerPrivacy {
|
|
|
1611
1817
|
*/
|
|
1612
1818
|
shouldShowBanner: boolean;
|
|
1613
1819
|
/**
|
|
1614
|
-
* Whether the visitor is in a region
|
|
1820
|
+
* Whether the visitor is located in a region that requires an explicit opt-out option for the sale or sharing of personal data, such as California (CCPA) or other jurisdictions with similar regulations.
|
|
1615
1821
|
*/
|
|
1616
1822
|
saleOfDataRegion: boolean;
|
|
1617
1823
|
/**
|
|
1618
|
-
*
|
|
1824
|
+
* The visitor's geographic location, used to determine whether more granular consent controls should be displayed based on regional privacy regulations.
|
|
1619
1825
|
*
|
|
1620
1826
|
* @example `{countryCode: 'CA', provinceCode: 'ON'}` for a visitor in Ontario, Canada; `{countryCode: 'US', provinceCode: undefined}` for a visitor in the United States if geolocation fails to detect the state; or `undefined` if neither country nor province is detected or geolocation fails.
|
|
1621
1827
|
*
|
|
1622
|
-
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](/docs/apps/store/data-protection/protected-customer-data).
|
|
1828
|
+
* {% include /apps/checkout/privacy-icon.md %} Requires level 1 access to [protected customer data](https://shopify.dev/docs/apps/store/data-protection/protected-customer-data).
|
|
1623
1829
|
*/
|
|
1624
1830
|
region?: CustomerPrivacyRegion;
|
|
1625
1831
|
}
|
|
1832
|
+
/** @publicDocs */
|
|
1626
1833
|
export type TrackingConsentChangeResult = TrackingConsentChangeResultSuccess | TrackingConsentChangeResultError;
|
|
1627
1834
|
/**
|
|
1628
1835
|
* The returned result of a successful tracking consent preference update.
|
|
1836
|
+
* @publicDocs
|
|
1629
1837
|
*/
|
|
1630
1838
|
export interface TrackingConsentChangeResultSuccess {
|
|
1631
1839
|
/**
|
|
1632
|
-
*
|
|
1840
|
+
* Indicates that the tracking consent update was applied successfully.
|
|
1633
1841
|
*/
|
|
1634
1842
|
type: 'success';
|
|
1635
1843
|
}
|
|
1636
1844
|
/**
|
|
1637
1845
|
* The returned result of an unsuccessful tracking consent preference update
|
|
1638
1846
|
* with a message detailing the type of error that occurred.
|
|
1847
|
+
* @publicDocs
|
|
1639
1848
|
*/
|
|
1640
1849
|
export interface TrackingConsentChangeResultError {
|
|
1641
1850
|
/**
|
|
1642
|
-
*
|
|
1851
|
+
* Indicates that the tracking consent update couldn't be applied. Check the `message` property for details.
|
|
1643
1852
|
*/
|
|
1644
1853
|
type: 'error';
|
|
1645
1854
|
/**
|
|
1646
1855
|
* A message that explains the error. This message is useful for debugging.
|
|
1647
|
-
* It
|
|
1648
|
-
* to the buyer.
|
|
1856
|
+
* It isn't localized and shouldn't be displayed to the buyer.
|
|
1649
1857
|
*/
|
|
1650
1858
|
message: string;
|
|
1651
1859
|
}
|
|
1860
|
+
/** @publicDocs */
|
|
1652
1861
|
export interface CartInstructions {
|
|
1653
1862
|
/**
|
|
1654
|
-
*
|
|
1863
|
+
* Whether the extension can update custom attributes using `applyAttributeChange()`.
|
|
1655
1864
|
*/
|
|
1656
1865
|
attributes: AttributesCartInstructions;
|
|
1657
1866
|
/**
|
|
1658
|
-
*
|
|
1867
|
+
* Whether the extension can modify the shipping address using `applyShippingAddressChange()`.
|
|
1659
1868
|
*/
|
|
1660
1869
|
delivery: DeliveryCartInstructions;
|
|
1661
1870
|
/**
|
|
1662
|
-
*
|
|
1871
|
+
* Whether the extension can add or remove discount codes using `applyDiscountCodeChange()`.
|
|
1663
1872
|
*/
|
|
1664
1873
|
discounts: DiscountsCartInstructions;
|
|
1665
1874
|
/**
|
|
1666
|
-
*
|
|
1875
|
+
* Whether the extension can add, remove, or update cart lines using `applyCartLinesChange()`.
|
|
1667
1876
|
*/
|
|
1668
1877
|
lines: CartLinesCartInstructions;
|
|
1669
1878
|
/**
|
|
1670
|
-
*
|
|
1879
|
+
* Whether the extension can add, update, or delete cart metafields using `applyMetafieldChange()`.
|
|
1671
1880
|
*/
|
|
1672
1881
|
metafields: MetafieldsCartInstructions;
|
|
1673
1882
|
/**
|
|
1674
|
-
*
|
|
1883
|
+
* Whether the extension can update the order note using `applyNoteChange()`.
|
|
1675
1884
|
*/
|
|
1676
1885
|
notes: NotesCartInstructions;
|
|
1677
1886
|
}
|
|
1887
|
+
/** @publicDocs */
|
|
1678
1888
|
export interface AttributesCartInstructions {
|
|
1679
1889
|
/**
|
|
1680
|
-
*
|
|
1890
|
+
* Whether attributes can be updated using `applyAttributeChange()`. When
|
|
1891
|
+
* `false`, the checkout configuration doesn't allow attribute changes.
|
|
1892
|
+
* Even when `true`, calls to `applyAttributeChange()` can still fail
|
|
1893
|
+
* during accelerated checkout (Apple Pay, Google Pay).
|
|
1681
1894
|
*/
|
|
1682
1895
|
canUpdateAttributes: boolean;
|
|
1683
1896
|
}
|
|
1897
|
+
/** @publicDocs */
|
|
1684
1898
|
export interface DeliveryCartInstructions {
|
|
1685
1899
|
/**
|
|
1686
|
-
*
|
|
1687
|
-
*
|
|
1688
|
-
*
|
|
1900
|
+
* Whether the shipping address can be modified using
|
|
1901
|
+
* `applyShippingAddressChange()`. When `false`, the buyer is using an
|
|
1902
|
+
* accelerated checkout flow (Apple Pay, Google Pay) where the address
|
|
1903
|
+
* can't be changed.
|
|
1689
1904
|
*/
|
|
1690
1905
|
canSelectCustomAddress: boolean;
|
|
1691
1906
|
}
|
|
1907
|
+
/** @publicDocs */
|
|
1692
1908
|
export interface DiscountsCartInstructions {
|
|
1693
1909
|
/**
|
|
1694
|
-
*
|
|
1910
|
+
* Whether discount codes can be updated using `applyDiscountCodeChange()`.
|
|
1911
|
+
* When `false`, the checkout configuration doesn't allow discount code
|
|
1912
|
+
* changes. Even when `true`, calls to `applyDiscountCodeChange()` can
|
|
1913
|
+
* still fail during accelerated checkout (Apple Pay, Google Pay).
|
|
1695
1914
|
*/
|
|
1696
1915
|
canUpdateDiscountCodes: boolean;
|
|
1697
1916
|
}
|
|
1917
|
+
/** @publicDocs */
|
|
1698
1918
|
export interface CartLinesCartInstructions {
|
|
1699
1919
|
/**
|
|
1700
|
-
*
|
|
1920
|
+
* Whether new cart lines can be added using `applyCartLinesChange()`. When
|
|
1921
|
+
* `false`, the checkout configuration doesn't allow adding lines (for
|
|
1922
|
+
* example, draft orders). Even when `true`, calls can still fail during
|
|
1923
|
+
* accelerated checkout (Apple Pay, Google Pay).
|
|
1701
1924
|
*/
|
|
1702
1925
|
canAddCartLine: boolean;
|
|
1703
1926
|
/**
|
|
1704
|
-
*
|
|
1927
|
+
* Whether cart lines can be removed using `applyCartLinesChange()`. When
|
|
1928
|
+
* `false`, the checkout configuration doesn't allow removing lines.
|
|
1929
|
+
* Even when `true`, calls can still fail during accelerated checkout.
|
|
1705
1930
|
*/
|
|
1706
1931
|
canRemoveCartLine: boolean;
|
|
1707
1932
|
/**
|
|
1708
|
-
*
|
|
1933
|
+
* Whether cart lines can be updated using `applyCartLinesChange()`. When
|
|
1934
|
+
* `false`, the checkout configuration doesn't allow updating lines.
|
|
1935
|
+
* Even when `true`, calls can still fail during accelerated checkout.
|
|
1709
1936
|
*/
|
|
1710
1937
|
canUpdateCartLine: boolean;
|
|
1711
1938
|
}
|
|
1939
|
+
/** @publicDocs */
|
|
1712
1940
|
export interface MetafieldsCartInstructions {
|
|
1713
1941
|
/**
|
|
1714
|
-
*
|
|
1942
|
+
* Whether the extension can add or update cart metafields using
|
|
1943
|
+
* `applyMetafieldChange()`.
|
|
1715
1944
|
*/
|
|
1716
1945
|
canSetCartMetafields: boolean;
|
|
1717
1946
|
/**
|
|
1718
|
-
*
|
|
1947
|
+
* Whether the extension can delete cart metafields using
|
|
1948
|
+
* `applyMetafieldChange()`.
|
|
1719
1949
|
*/
|
|
1720
1950
|
canDeleteCartMetafield: boolean;
|
|
1721
1951
|
}
|
|
1952
|
+
/** @publicDocs */
|
|
1722
1953
|
export interface NotesCartInstructions {
|
|
1723
1954
|
/**
|
|
1724
|
-
*
|
|
1955
|
+
* Whether the order note can be updated using `applyNoteChange()`. When
|
|
1956
|
+
* `false`, the checkout configuration doesn't allow note changes. Even
|
|
1957
|
+
* when `true`, calls to `applyNoteChange()` can still fail during
|
|
1958
|
+
* accelerated checkout (Apple Pay, Google Pay).
|
|
1725
1959
|
*/
|
|
1726
1960
|
canUpdateNote: boolean;
|
|
1727
1961
|
}
|