@shopify/ui-extensions 0.0.0-internal-20230622171951
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/README.md +42 -0
- package/build/cjs/index.js +2 -0
- package/build/cjs/surfaces/admin/components/Badge/Badge.js +12 -0
- package/build/cjs/surfaces/admin/components/Banner/Banner.js +14 -0
- package/build/cjs/surfaces/admin/components/BlockStack/BlockStack.js +15 -0
- package/build/cjs/surfaces/admin/components/Button/Button.js +12 -0
- package/build/cjs/surfaces/admin/components/Card/Card.js +15 -0
- package/build/cjs/surfaces/admin/components/CardSection/CardSection.js +12 -0
- package/build/cjs/surfaces/admin/components/Checkbox/Checkbox.js +12 -0
- package/build/cjs/surfaces/admin/components/CustomerSegmentationTemplate/CustomerSegmentationTemplate.js +12 -0
- package/build/cjs/surfaces/admin/components/Heading/Heading.js +12 -0
- package/build/cjs/surfaces/admin/components/Icon/Icon.js +12 -0
- package/build/cjs/surfaces/admin/components/InlineStack/InlineStack.js +15 -0
- package/build/cjs/surfaces/admin/components/Link/Link.js +12 -0
- package/build/cjs/surfaces/admin/components/Modal/Modal.js +14 -0
- package/build/cjs/surfaces/admin/components/OptionList/OptionList.js +15 -0
- package/build/cjs/surfaces/admin/components/Pressable/Pressable.js +13 -0
- package/build/cjs/surfaces/admin/components/Radio/Radio.js +12 -0
- package/build/cjs/surfaces/admin/components/ResourceItem/ResourceItem.js +14 -0
- package/build/cjs/surfaces/admin/components/ResourceList/ResourceList.js +15 -0
- package/build/cjs/surfaces/admin/components/Select/Select.js +14 -0
- package/build/cjs/surfaces/admin/components/Spinner/Spinner.js +12 -0
- package/build/cjs/surfaces/admin/components/StackItem/StackItem.js +14 -0
- package/build/cjs/surfaces/admin/components/Text/Text.js +12 -0
- package/build/cjs/surfaces/admin/components/TextBlock/TextBlock.js +13 -0
- package/build/cjs/surfaces/admin/components/TextField/TextField.js +14 -0
- package/build/cjs/surfaces/admin/components/Thumbnail/Thumbnail.js +12 -0
- package/build/cjs/surfaces/admin/extension.js +11 -0
- package/build/cjs/surfaces/admin.js +60 -0
- package/build/cjs/surfaces/checkout/components/Banner/Banner.js +12 -0
- package/build/cjs/surfaces/checkout/components/BlockLayout/BlockLayout.js +14 -0
- package/build/cjs/surfaces/checkout/components/BlockSpacer/BlockSpacer.js +15 -0
- package/build/cjs/surfaces/checkout/components/BlockStack/BlockStack.js +12 -0
- package/build/cjs/surfaces/checkout/components/Button/Button.js +12 -0
- package/build/cjs/surfaces/checkout/components/Checkbox/Checkbox.js +12 -0
- package/build/cjs/surfaces/checkout/components/Choice/Choice.js +13 -0
- package/build/cjs/surfaces/checkout/components/ChoiceList/ChoiceList.js +13 -0
- package/build/cjs/surfaces/checkout/components/Divider/Divider.js +12 -0
- package/build/cjs/surfaces/checkout/components/Form/Form.js +20 -0
- package/build/cjs/surfaces/checkout/components/Grid/Grid.js +12 -0
- package/build/cjs/surfaces/checkout/components/GridItem/GridItem.js +14 -0
- package/build/cjs/surfaces/checkout/components/Heading/Heading.js +17 -0
- package/build/cjs/surfaces/checkout/components/HeadingGroup/HeadingGroup.js +16 -0
- package/build/cjs/surfaces/checkout/components/Icon/Icon.js +13 -0
- package/build/cjs/surfaces/checkout/components/Image/Image.js +12 -0
- package/build/cjs/surfaces/checkout/components/InlineLayout/InlineLayout.js +16 -0
- package/build/cjs/surfaces/checkout/components/InlineSpacer/InlineSpacer.js +15 -0
- package/build/cjs/surfaces/checkout/components/InlineStack/InlineStack.js +12 -0
- package/build/cjs/surfaces/checkout/components/Link/Link.js +12 -0
- package/build/cjs/surfaces/checkout/components/List/List.js +12 -0
- package/build/cjs/surfaces/checkout/components/ListItem/ListItem.js +14 -0
- package/build/cjs/surfaces/checkout/components/PhoneField/PhoneField.js +17 -0
- package/build/cjs/surfaces/checkout/components/Pressable/Pressable.js +14 -0
- package/build/cjs/surfaces/checkout/components/ScrollView/ScrollView.js +13 -0
- package/build/cjs/surfaces/checkout/components/Select/Select.js +13 -0
- package/build/cjs/surfaces/checkout/components/SkeletonImage/SkeletonImage.js +12 -0
- package/build/cjs/surfaces/checkout/components/SkeletonText/SkeletonText.js +12 -0
- package/build/cjs/surfaces/checkout/components/SkeletonTextBlock/SkeletonTextBlock.js +12 -0
- package/build/cjs/surfaces/checkout/components/Spinner/Spinner.js +13 -0
- package/build/cjs/surfaces/checkout/components/Stepper/Stepper.js +12 -0
- package/build/cjs/surfaces/checkout/components/Tag/Tag.js +12 -0
- package/build/cjs/surfaces/checkout/components/Text/Text.js +13 -0
- package/build/cjs/surfaces/checkout/components/TextBlock/TextBlock.js +12 -0
- package/build/cjs/surfaces/checkout/components/TextField/TextField.js +12 -0
- package/build/cjs/surfaces/checkout/components/Tooltip/Tooltip.js +17 -0
- package/build/cjs/surfaces/checkout/components/View/View.js +17 -0
- package/build/cjs/surfaces/checkout/extension.js +11 -0
- package/build/cjs/surfaces/checkout/style/isEqual.js +29 -0
- package/build/cjs/surfaces/checkout/style/memoize.js +139 -0
- package/build/cjs/surfaces/checkout/style/style.js +74 -0
- package/build/cjs/surfaces/checkout.js +88 -0
- package/build/cjs/utilities/registration.js +45 -0
- package/build/esm/index.mjs +1 -0
- package/build/esm/surfaces/admin/components/Badge/Badge.mjs +8 -0
- package/build/esm/surfaces/admin/components/Banner/Banner.mjs +10 -0
- package/build/esm/surfaces/admin/components/BlockStack/BlockStack.mjs +11 -0
- package/build/esm/surfaces/admin/components/Button/Button.mjs +8 -0
- package/build/esm/surfaces/admin/components/Card/Card.mjs +11 -0
- package/build/esm/surfaces/admin/components/CardSection/CardSection.mjs +8 -0
- package/build/esm/surfaces/admin/components/Checkbox/Checkbox.mjs +8 -0
- package/build/esm/surfaces/admin/components/CustomerSegmentationTemplate/CustomerSegmentationTemplate.mjs +8 -0
- package/build/esm/surfaces/admin/components/Heading/Heading.mjs +8 -0
- package/build/esm/surfaces/admin/components/Icon/Icon.mjs +8 -0
- package/build/esm/surfaces/admin/components/InlineStack/InlineStack.mjs +11 -0
- package/build/esm/surfaces/admin/components/Link/Link.mjs +8 -0
- package/build/esm/surfaces/admin/components/Modal/Modal.mjs +10 -0
- package/build/esm/surfaces/admin/components/OptionList/OptionList.mjs +11 -0
- package/build/esm/surfaces/admin/components/Pressable/Pressable.mjs +9 -0
- package/build/esm/surfaces/admin/components/Radio/Radio.mjs +8 -0
- package/build/esm/surfaces/admin/components/ResourceItem/ResourceItem.mjs +10 -0
- package/build/esm/surfaces/admin/components/ResourceList/ResourceList.mjs +11 -0
- package/build/esm/surfaces/admin/components/Select/Select.mjs +10 -0
- package/build/esm/surfaces/admin/components/Spinner/Spinner.mjs +8 -0
- package/build/esm/surfaces/admin/components/StackItem/StackItem.mjs +10 -0
- package/build/esm/surfaces/admin/components/Text/Text.mjs +8 -0
- package/build/esm/surfaces/admin/components/TextBlock/TextBlock.mjs +9 -0
- package/build/esm/surfaces/admin/components/TextField/TextField.mjs +10 -0
- package/build/esm/surfaces/admin/components/Thumbnail/Thumbnail.mjs +8 -0
- package/build/esm/surfaces/admin/extension.mjs +6 -0
- package/build/esm/surfaces/admin.mjs +26 -0
- package/build/esm/surfaces/checkout/components/Banner/Banner.mjs +8 -0
- package/build/esm/surfaces/checkout/components/BlockLayout/BlockLayout.mjs +10 -0
- package/build/esm/surfaces/checkout/components/BlockSpacer/BlockSpacer.mjs +11 -0
- package/build/esm/surfaces/checkout/components/BlockStack/BlockStack.mjs +8 -0
- package/build/esm/surfaces/checkout/components/Button/Button.mjs +8 -0
- package/build/esm/surfaces/checkout/components/Checkbox/Checkbox.mjs +8 -0
- package/build/esm/surfaces/checkout/components/Choice/Choice.mjs +9 -0
- package/build/esm/surfaces/checkout/components/ChoiceList/ChoiceList.mjs +9 -0
- package/build/esm/surfaces/checkout/components/Divider/Divider.mjs +8 -0
- package/build/esm/surfaces/checkout/components/Form/Form.mjs +16 -0
- package/build/esm/surfaces/checkout/components/Grid/Grid.mjs +8 -0
- package/build/esm/surfaces/checkout/components/GridItem/GridItem.mjs +10 -0
- package/build/esm/surfaces/checkout/components/Heading/Heading.mjs +13 -0
- package/build/esm/surfaces/checkout/components/HeadingGroup/HeadingGroup.mjs +12 -0
- package/build/esm/surfaces/checkout/components/Icon/Icon.mjs +9 -0
- package/build/esm/surfaces/checkout/components/Image/Image.mjs +8 -0
- package/build/esm/surfaces/checkout/components/InlineLayout/InlineLayout.mjs +12 -0
- package/build/esm/surfaces/checkout/components/InlineSpacer/InlineSpacer.mjs +11 -0
- package/build/esm/surfaces/checkout/components/InlineStack/InlineStack.mjs +8 -0
- package/build/esm/surfaces/checkout/components/Link/Link.mjs +8 -0
- package/build/esm/surfaces/checkout/components/List/List.mjs +8 -0
- package/build/esm/surfaces/checkout/components/ListItem/ListItem.mjs +10 -0
- package/build/esm/surfaces/checkout/components/PhoneField/PhoneField.mjs +13 -0
- package/build/esm/surfaces/checkout/components/Pressable/Pressable.mjs +10 -0
- package/build/esm/surfaces/checkout/components/ScrollView/ScrollView.mjs +9 -0
- package/build/esm/surfaces/checkout/components/Select/Select.mjs +9 -0
- package/build/esm/surfaces/checkout/components/SkeletonImage/SkeletonImage.mjs +8 -0
- package/build/esm/surfaces/checkout/components/SkeletonText/SkeletonText.mjs +8 -0
- package/build/esm/surfaces/checkout/components/SkeletonTextBlock/SkeletonTextBlock.mjs +8 -0
- package/build/esm/surfaces/checkout/components/Spinner/Spinner.mjs +9 -0
- package/build/esm/surfaces/checkout/components/Stepper/Stepper.mjs +8 -0
- package/build/esm/surfaces/checkout/components/Tag/Tag.mjs +8 -0
- package/build/esm/surfaces/checkout/components/Text/Text.mjs +9 -0
- package/build/esm/surfaces/checkout/components/TextBlock/TextBlock.mjs +8 -0
- package/build/esm/surfaces/checkout/components/TextField/TextField.mjs +8 -0
- package/build/esm/surfaces/checkout/components/Tooltip/Tooltip.mjs +13 -0
- package/build/esm/surfaces/checkout/components/View/View.mjs +13 -0
- package/build/esm/surfaces/checkout/extension.mjs +6 -0
- package/build/esm/surfaces/checkout/style/isEqual.mjs +25 -0
- package/build/esm/surfaces/checkout/style/memoize.mjs +133 -0
- package/build/esm/surfaces/checkout/style/style.mjs +68 -0
- package/build/esm/surfaces/checkout.mjs +39 -0
- package/build/esm/utilities/registration.mjs +41 -0
- package/build/esnext/index.esnext +1 -0
- package/build/esnext/surfaces/admin/components/Badge/Badge.esnext +8 -0
- package/build/esnext/surfaces/admin/components/Banner/Banner.esnext +10 -0
- package/build/esnext/surfaces/admin/components/BlockStack/BlockStack.esnext +11 -0
- package/build/esnext/surfaces/admin/components/Button/Button.esnext +8 -0
- package/build/esnext/surfaces/admin/components/Card/Card.esnext +11 -0
- package/build/esnext/surfaces/admin/components/CardSection/CardSection.esnext +8 -0
- package/build/esnext/surfaces/admin/components/Checkbox/Checkbox.esnext +8 -0
- package/build/esnext/surfaces/admin/components/CustomerSegmentationTemplate/CustomerSegmentationTemplate.esnext +8 -0
- package/build/esnext/surfaces/admin/components/Heading/Heading.esnext +8 -0
- package/build/esnext/surfaces/admin/components/Icon/Icon.esnext +8 -0
- package/build/esnext/surfaces/admin/components/InlineStack/InlineStack.esnext +11 -0
- package/build/esnext/surfaces/admin/components/Link/Link.esnext +8 -0
- package/build/esnext/surfaces/admin/components/Modal/Modal.esnext +10 -0
- package/build/esnext/surfaces/admin/components/OptionList/OptionList.esnext +11 -0
- package/build/esnext/surfaces/admin/components/Pressable/Pressable.esnext +9 -0
- package/build/esnext/surfaces/admin/components/Radio/Radio.esnext +8 -0
- package/build/esnext/surfaces/admin/components/ResourceItem/ResourceItem.esnext +10 -0
- package/build/esnext/surfaces/admin/components/ResourceList/ResourceList.esnext +11 -0
- package/build/esnext/surfaces/admin/components/Select/Select.esnext +10 -0
- package/build/esnext/surfaces/admin/components/Spinner/Spinner.esnext +8 -0
- package/build/esnext/surfaces/admin/components/StackItem/StackItem.esnext +10 -0
- package/build/esnext/surfaces/admin/components/Text/Text.esnext +8 -0
- package/build/esnext/surfaces/admin/components/TextBlock/TextBlock.esnext +9 -0
- package/build/esnext/surfaces/admin/components/TextField/TextField.esnext +10 -0
- package/build/esnext/surfaces/admin/components/Thumbnail/Thumbnail.esnext +8 -0
- package/build/esnext/surfaces/admin/extension.esnext +6 -0
- package/build/esnext/surfaces/admin.esnext +26 -0
- package/build/esnext/surfaces/checkout/components/Banner/Banner.esnext +8 -0
- package/build/esnext/surfaces/checkout/components/BlockLayout/BlockLayout.esnext +10 -0
- package/build/esnext/surfaces/checkout/components/BlockSpacer/BlockSpacer.esnext +11 -0
- package/build/esnext/surfaces/checkout/components/BlockStack/BlockStack.esnext +8 -0
- package/build/esnext/surfaces/checkout/components/Button/Button.esnext +8 -0
- package/build/esnext/surfaces/checkout/components/Checkbox/Checkbox.esnext +8 -0
- package/build/esnext/surfaces/checkout/components/Choice/Choice.esnext +9 -0
- package/build/esnext/surfaces/checkout/components/ChoiceList/ChoiceList.esnext +9 -0
- package/build/esnext/surfaces/checkout/components/Divider/Divider.esnext +8 -0
- package/build/esnext/surfaces/checkout/components/Form/Form.esnext +16 -0
- package/build/esnext/surfaces/checkout/components/Grid/Grid.esnext +8 -0
- package/build/esnext/surfaces/checkout/components/GridItem/GridItem.esnext +10 -0
- package/build/esnext/surfaces/checkout/components/Heading/Heading.esnext +13 -0
- package/build/esnext/surfaces/checkout/components/HeadingGroup/HeadingGroup.esnext +12 -0
- package/build/esnext/surfaces/checkout/components/Icon/Icon.esnext +9 -0
- package/build/esnext/surfaces/checkout/components/Image/Image.esnext +8 -0
- package/build/esnext/surfaces/checkout/components/InlineLayout/InlineLayout.esnext +12 -0
- package/build/esnext/surfaces/checkout/components/InlineSpacer/InlineSpacer.esnext +11 -0
- package/build/esnext/surfaces/checkout/components/InlineStack/InlineStack.esnext +8 -0
- package/build/esnext/surfaces/checkout/components/Link/Link.esnext +8 -0
- package/build/esnext/surfaces/checkout/components/List/List.esnext +8 -0
- package/build/esnext/surfaces/checkout/components/ListItem/ListItem.esnext +10 -0
- package/build/esnext/surfaces/checkout/components/PhoneField/PhoneField.esnext +13 -0
- package/build/esnext/surfaces/checkout/components/Pressable/Pressable.esnext +10 -0
- package/build/esnext/surfaces/checkout/components/ScrollView/ScrollView.esnext +9 -0
- package/build/esnext/surfaces/checkout/components/Select/Select.esnext +9 -0
- package/build/esnext/surfaces/checkout/components/SkeletonImage/SkeletonImage.esnext +8 -0
- package/build/esnext/surfaces/checkout/components/SkeletonText/SkeletonText.esnext +8 -0
- package/build/esnext/surfaces/checkout/components/SkeletonTextBlock/SkeletonTextBlock.esnext +8 -0
- package/build/esnext/surfaces/checkout/components/Spinner/Spinner.esnext +9 -0
- package/build/esnext/surfaces/checkout/components/Stepper/Stepper.esnext +8 -0
- package/build/esnext/surfaces/checkout/components/Tag/Tag.esnext +8 -0
- package/build/esnext/surfaces/checkout/components/Text/Text.esnext +9 -0
- package/build/esnext/surfaces/checkout/components/TextBlock/TextBlock.esnext +8 -0
- package/build/esnext/surfaces/checkout/components/TextField/TextField.esnext +8 -0
- package/build/esnext/surfaces/checkout/components/Tooltip/Tooltip.esnext +13 -0
- package/build/esnext/surfaces/checkout/components/View/View.esnext +13 -0
- package/build/esnext/surfaces/checkout/extension.esnext +6 -0
- package/build/esnext/surfaces/checkout/style/isEqual.esnext +25 -0
- package/build/esnext/surfaces/checkout/style/memoize.esnext +133 -0
- package/build/esnext/surfaces/checkout/style/style.esnext +68 -0
- package/build/esnext/surfaces/checkout.esnext +39 -0
- package/build/esnext/utilities/registration.esnext +41 -0
- package/build/ts/api.d.ts +66 -0
- package/build/ts/api.d.ts.map +1 -0
- package/build/ts/extension.d.ts +15 -0
- package/build/ts/extension.d.ts.map +1 -0
- package/build/ts/index.d.ts +3 -0
- package/build/ts/index.d.ts.map +1 -0
- package/build/ts/shared.d.ts +6 -0
- package/build/ts/shared.d.ts.map +1 -0
- package/build/ts/surfaces/admin/api/customer-segmentation-template/customer-segmentation-template.d.ts +11 -0
- package/build/ts/surfaces/admin/api/customer-segmentation-template/customer-segmentation-template.d.ts.map +1 -0
- package/build/ts/surfaces/admin/api/standard/standard.d.ts +12 -0
- package/build/ts/surfaces/admin/api/standard/standard.d.ts.map +1 -0
- package/build/ts/surfaces/admin/api.d.ts +4 -0
- package/build/ts/surfaces/admin/api.d.ts.map +1 -0
- package/build/ts/surfaces/admin/components/Badge/Badge.d.ts +20 -0
- package/build/ts/surfaces/admin/components/Badge/Badge.d.ts.map +1 -0
- package/build/ts/surfaces/admin/components/Banner/Banner.d.ts +28 -0
- package/build/ts/surfaces/admin/components/Banner/Banner.d.ts.map +1 -0
- package/build/ts/surfaces/admin/components/BlockStack/BlockStack.d.ts +25 -0
- package/build/ts/surfaces/admin/components/BlockStack/BlockStack.d.ts.map +1 -0
- package/build/ts/surfaces/admin/components/Button/Button.d.ts +66 -0
- package/build/ts/surfaces/admin/components/Button/Button.d.ts.map +1 -0
- package/build/ts/surfaces/admin/components/Card/Card.d.ts +25 -0
- package/build/ts/surfaces/admin/components/Card/Card.d.ts.map +1 -0
- package/build/ts/surfaces/admin/components/CardSection/CardSection.d.ts +12 -0
- package/build/ts/surfaces/admin/components/CardSection/CardSection.d.ts.map +1 -0
- package/build/ts/surfaces/admin/components/Checkbox/Checkbox.d.ts +22 -0
- package/build/ts/surfaces/admin/components/Checkbox/Checkbox.d.ts.map +1 -0
- package/build/ts/surfaces/admin/components/CustomerSegmentationTemplate/CustomerSegmentationTemplate.d.ts +27 -0
- package/build/ts/surfaces/admin/components/CustomerSegmentationTemplate/CustomerSegmentationTemplate.d.ts.map +1 -0
- package/build/ts/surfaces/admin/components/Heading/Heading.d.ts +24 -0
- package/build/ts/surfaces/admin/components/Heading/Heading.d.ts.map +1 -0
- package/build/ts/surfaces/admin/components/Icon/Icon.d.ts +17 -0
- package/build/ts/surfaces/admin/components/Icon/Icon.d.ts.map +1 -0
- package/build/ts/surfaces/admin/components/InlineStack/InlineStack.d.ts +30 -0
- package/build/ts/surfaces/admin/components/InlineStack/InlineStack.d.ts.map +1 -0
- package/build/ts/surfaces/admin/components/Link/Link.d.ts +23 -0
- package/build/ts/surfaces/admin/components/Link/Link.d.ts.map +1 -0
- package/build/ts/surfaces/admin/components/Modal/Modal.d.ts +36 -0
- package/build/ts/surfaces/admin/components/Modal/Modal.d.ts.map +1 -0
- package/build/ts/surfaces/admin/components/OptionList/OptionList.d.ts +36 -0
- package/build/ts/surfaces/admin/components/OptionList/OptionList.d.ts.map +1 -0
- package/build/ts/surfaces/admin/components/Pressable/Pressable.d.ts +14 -0
- package/build/ts/surfaces/admin/components/Pressable/Pressable.d.ts.map +1 -0
- package/build/ts/surfaces/admin/components/Radio/Radio.d.ts +26 -0
- package/build/ts/surfaces/admin/components/Radio/Radio.d.ts.map +1 -0
- package/build/ts/surfaces/admin/components/ResourceItem/ResourceItem.d.ts +17 -0
- package/build/ts/surfaces/admin/components/ResourceItem/ResourceItem.d.ts.map +1 -0
- package/build/ts/surfaces/admin/components/ResourceList/ResourceList.d.ts +26 -0
- package/build/ts/surfaces/admin/components/ResourceList/ResourceList.d.ts.map +1 -0
- package/build/ts/surfaces/admin/components/Select/Select.d.ts +34 -0
- package/build/ts/surfaces/admin/components/Select/Select.d.ts.map +1 -0
- package/build/ts/surfaces/admin/components/Spinner/Spinner.d.ts +11 -0
- package/build/ts/surfaces/admin/components/Spinner/Spinner.d.ts.map +1 -0
- package/build/ts/surfaces/admin/components/StackItem/StackItem.d.ts +15 -0
- package/build/ts/surfaces/admin/components/StackItem/StackItem.d.ts.map +1 -0
- package/build/ts/surfaces/admin/components/Text/Text.d.ts +20 -0
- package/build/ts/surfaces/admin/components/Text/Text.d.ts.map +1 -0
- package/build/ts/surfaces/admin/components/TextBlock/TextBlock.d.ts +20 -0
- package/build/ts/surfaces/admin/components/TextBlock/TextBlock.d.ts.map +1 -0
- package/build/ts/surfaces/admin/components/TextField/TextField.d.ts +41 -0
- package/build/ts/surfaces/admin/components/TextField/TextField.d.ts.map +1 -0
- package/build/ts/surfaces/admin/components/Thumbnail/Thumbnail.d.ts +19 -0
- package/build/ts/surfaces/admin/components/Thumbnail/Thumbnail.d.ts.map +1 -0
- package/build/ts/surfaces/admin/components/shared.d.ts +22 -0
- package/build/ts/surfaces/admin/components/shared.d.ts.map +1 -0
- package/build/ts/surfaces/admin/components.d.ts +52 -0
- package/build/ts/surfaces/admin/components.d.ts.map +1 -0
- package/build/ts/surfaces/admin/extension-points.d.ts +52 -0
- package/build/ts/surfaces/admin/extension-points.d.ts.map +1 -0
- package/build/ts/surfaces/admin/extension.d.ts +5 -0
- package/build/ts/surfaces/admin/extension.d.ts.map +1 -0
- package/build/ts/surfaces/admin/globals.d.ts +5 -0
- package/build/ts/surfaces/admin/globals.d.ts.map +1 -0
- package/build/ts/surfaces/admin/shared.d.ts +6 -0
- package/build/ts/surfaces/admin/shared.d.ts.map +1 -0
- package/build/ts/surfaces/admin.d.ts +7 -0
- package/build/ts/surfaces/admin.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/api/cart-line-details/render-after.d.ts +9 -0
- package/build/ts/surfaces/checkout/api/cart-line-details/render-after.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/api/shared.d.ts +5 -0
- package/build/ts/surfaces/checkout/api/shared.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/api/standard/standard.d.ts +1060 -0
- package/build/ts/surfaces/checkout/api/standard/standard.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/api.d.ts +5 -0
- package/build/ts/surfaces/checkout/api.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/Banner/Banner.d.ts +38 -0
- package/build/ts/surfaces/checkout/components/Banner/Banner.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/BlockLayout/BlockLayout.d.ts +41 -0
- package/build/ts/surfaces/checkout/components/BlockLayout/BlockLayout.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/BlockSpacer/BlockSpacer.d.ts +22 -0
- package/build/ts/surfaces/checkout/components/BlockSpacer/BlockSpacer.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/BlockStack/BlockStack.d.ts +42 -0
- package/build/ts/surfaces/checkout/components/BlockStack/BlockStack.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/Button/Button.d.ts +83 -0
- package/build/ts/surfaces/checkout/components/Button/Button.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/Checkbox/Checkbox.d.ts +59 -0
- package/build/ts/surfaces/checkout/components/Checkbox/Checkbox.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/Choice/Choice.d.ts +27 -0
- package/build/ts/surfaces/checkout/components/Choice/Choice.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/ChoiceList/ChoiceList.d.ts +32 -0
- package/build/ts/surfaces/checkout/components/ChoiceList/ChoiceList.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/Divider/Divider.d.ts +30 -0
- package/build/ts/surfaces/checkout/components/Divider/Divider.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/Form/Form.d.ts +32 -0
- package/build/ts/surfaces/checkout/components/Form/Form.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/Grid/Grid.d.ts +95 -0
- package/build/ts/surfaces/checkout/components/Grid/Grid.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/GridItem/GridItem.d.ts +36 -0
- package/build/ts/surfaces/checkout/components/GridItem/GridItem.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/Heading/Heading.d.ts +43 -0
- package/build/ts/surfaces/checkout/components/Heading/Heading.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/HeadingGroup/HeadingGroup.d.ts +15 -0
- package/build/ts/surfaces/checkout/components/HeadingGroup/HeadingGroup.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/Icon/Icon.d.ts +38 -0
- package/build/ts/surfaces/checkout/components/Icon/Icon.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/Image/Image.d.ts +73 -0
- package/build/ts/surfaces/checkout/components/Image/Image.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/InlineLayout/InlineLayout.d.ts +43 -0
- package/build/ts/surfaces/checkout/components/InlineLayout/InlineLayout.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/InlineSpacer/InlineSpacer.d.ts +22 -0
- package/build/ts/surfaces/checkout/components/InlineSpacer/InlineSpacer.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/InlineStack/InlineStack.d.ts +50 -0
- package/build/ts/surfaces/checkout/components/InlineStack/InlineStack.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/Link/Link.d.ts +50 -0
- package/build/ts/surfaces/checkout/components/Link/Link.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/List/List.d.ts +32 -0
- package/build/ts/surfaces/checkout/components/List/List.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/ListItem/ListItem.d.ts +13 -0
- package/build/ts/surfaces/checkout/components/ListItem/ListItem.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/PhoneField/PhoneField.d.ts +58 -0
- package/build/ts/surfaces/checkout/components/PhoneField/PhoneField.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/Pressable/Pressable.d.ts +96 -0
- package/build/ts/surfaces/checkout/components/Pressable/Pressable.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/ScrollView/ScrollView.d.ts +75 -0
- package/build/ts/surfaces/checkout/components/ScrollView/ScrollView.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/Select/Select.d.ts +98 -0
- package/build/ts/surfaces/checkout/components/Select/Select.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/SkeletonImage/SkeletonImage.d.ts +25 -0
- package/build/ts/surfaces/checkout/components/SkeletonImage/SkeletonImage.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/SkeletonText/SkeletonText.d.ts +21 -0
- package/build/ts/surfaces/checkout/components/SkeletonText/SkeletonText.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/SkeletonTextBlock/SkeletonTextBlock.d.ts +22 -0
- package/build/ts/surfaces/checkout/components/SkeletonTextBlock/SkeletonTextBlock.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/Spinner/Spinner.d.ts +32 -0
- package/build/ts/surfaces/checkout/components/Spinner/Spinner.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/Stepper/Stepper.d.ts +42 -0
- package/build/ts/surfaces/checkout/components/Stepper/Stepper.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/Tag/Tag.d.ts +31 -0
- package/build/ts/surfaces/checkout/components/Tag/Tag.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/Text/Text.d.ts +34 -0
- package/build/ts/surfaces/checkout/components/Text/Text.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/TextBlock/TextBlock.d.ts +32 -0
- package/build/ts/surfaces/checkout/components/TextBlock/TextBlock.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/TextField/TextField.d.ts +175 -0
- package/build/ts/surfaces/checkout/components/TextField/TextField.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/Tooltip/Tooltip.d.ts +16 -0
- package/build/ts/surfaces/checkout/components/Tooltip/Tooltip.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/View/View.d.ts +169 -0
- package/build/ts/surfaces/checkout/components/View/View.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components/shared.d.ts +407 -0
- package/build/ts/surfaces/checkout/components/shared.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/components.d.ts +76 -0
- package/build/ts/surfaces/checkout/components.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/extension-points.d.ts +98 -0
- package/build/ts/surfaces/checkout/extension-points.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/extension.d.ts +5 -0
- package/build/ts/surfaces/checkout/extension.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/globals.d.ts +6 -0
- package/build/ts/surfaces/checkout/globals.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/shared.d.ts +6 -0
- package/build/ts/surfaces/checkout/shared.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/style/isEqual.d.ts +8 -0
- package/build/ts/surfaces/checkout/style/isEqual.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/style/isEqual.test.d.ts +2 -0
- package/build/ts/surfaces/checkout/style/isEqual.test.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/style/memoize.d.ts +13 -0
- package/build/ts/surfaces/checkout/style/memoize.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/style/style.d.ts +70 -0
- package/build/ts/surfaces/checkout/style/style.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/style/style.test.d.ts +2 -0
- package/build/ts/surfaces/checkout/style/style.test.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/style/types.d.ts +46 -0
- package/build/ts/surfaces/checkout/style/types.d.ts.map +1 -0
- package/build/ts/surfaces/checkout/style.d.ts +3 -0
- package/build/ts/surfaces/checkout/style.d.ts.map +1 -0
- package/build/ts/surfaces/checkout.d.ts +8 -0
- package/build/ts/surfaces/checkout.d.ts.map +1 -0
- package/build/ts/utilities/registration.d.ts +16 -0
- package/build/ts/utilities/registration.d.ts.map +1 -0
- package/build/tsconfig.tsbuildinfo +1 -0
- package/checkout.esnext +1 -0
- package/checkout.js +1 -0
- package/checkout.mjs +1 -0
- package/index.esnext +1 -0
- package/index.js +1 -0
- package/index.mjs +1 -0
- package/package.json +60 -0
- package/src/api.ts +76 -0
- package/src/extension.ts +48 -0
- package/src/index.ts +2 -0
- package/src/shared.ts +13 -0
- package/src/surfaces/admin/api/customer-segmentation-template/customer-segmentation-template.ts +19 -0
- package/src/surfaces/admin/api/standard/README.md +1 -0
- package/src/surfaces/admin/api/standard/standard.ts +13 -0
- package/src/surfaces/admin/api.ts +3 -0
- package/src/surfaces/admin/components/Badge/Badge.ts +18 -0
- package/src/surfaces/admin/components/Badge/content/guidelines.md +10 -0
- package/src/surfaces/admin/components/Badge/examples/badge.example.ts +11 -0
- package/src/surfaces/admin/components/Banner/Banner.ts +32 -0
- package/src/surfaces/admin/components/Banner/content/guidelines.md +11 -0
- package/src/surfaces/admin/components/Banner/examples/Banner.example.ts +20 -0
- package/src/surfaces/admin/components/BlockStack/BlockStack.ts +27 -0
- package/src/surfaces/admin/components/BlockStack/content/guidelines.md +10 -0
- package/src/surfaces/admin/components/BlockStack/examples/BlockStack.example.ts +22 -0
- package/src/surfaces/admin/components/Button/Button.ts +68 -0
- package/src/surfaces/admin/components/Button/content/guidelines.md +14 -0
- package/src/surfaces/admin/components/Button/examples/Button.example.ts +17 -0
- package/src/surfaces/admin/components/Card/Card.ts +28 -0
- package/src/surfaces/admin/components/Card/content/guidelines.md +9 -0
- package/src/surfaces/admin/components/Card/examples/Card.example.ts +10 -0
- package/src/surfaces/admin/components/CardSection/CardSection.ts +13 -0
- package/src/surfaces/admin/components/CardSection/content/guidelines.md +5 -0
- package/src/surfaces/admin/components/CardSection/examples/CardSection.example.ts +20 -0
- package/src/surfaces/admin/components/Checkbox/Checkbox.ts +25 -0
- package/src/surfaces/admin/components/Checkbox/content/guidelines.md +8 -0
- package/src/surfaces/admin/components/Checkbox/examples/Checkbox.example.ts +13 -0
- package/src/surfaces/admin/components/CustomerSegmentationTemplate/CustomerSegmentationTemplate.ts +66 -0
- package/src/surfaces/admin/components/CustomerSegmentationTemplate/examples/CustomerSegmentationTemplate.example.ts +37 -0
- package/src/surfaces/admin/components/Heading/Heading.ts +25 -0
- package/src/surfaces/admin/components/Heading/content/guidelines.md +11 -0
- package/src/surfaces/admin/components/Heading/examples/Heading.example.ts +14 -0
- package/src/surfaces/admin/components/Icon/Icon.ts +21 -0
- package/src/surfaces/admin/components/Icon/content/guidelines.md +8 -0
- package/src/surfaces/admin/components/Icon/examples/Icon.example.ts +12 -0
- package/src/surfaces/admin/components/InlineStack/InlineStack.ts +34 -0
- package/src/surfaces/admin/components/InlineStack/content/guidelines.md +10 -0
- package/src/surfaces/admin/components/InlineStack/examples/InlineStack.example.ts +16 -0
- package/src/surfaces/admin/components/Link/Link.ts +23 -0
- package/src/surfaces/admin/components/Link/content/guidelines.md +10 -0
- package/src/surfaces/admin/components/Link/examples/AbsoluteLink.example.ts +13 -0
- package/src/surfaces/admin/components/Link/examples/LogLink.example.ts +12 -0
- package/src/surfaces/admin/components/Link/examples/RelativeLink.example.ts +12 -0
- package/src/surfaces/admin/components/Modal/Modal.ts +33 -0
- package/src/surfaces/admin/components/Modal/content/guidelines.md +8 -0
- package/src/surfaces/admin/components/Modal/examples/Modal.example.ts +14 -0
- package/src/surfaces/admin/components/OptionList/OptionList.ts +42 -0
- package/src/surfaces/admin/components/OptionList/content/guidelines.md +7 -0
- package/src/surfaces/admin/components/OptionList/examples/OptionList.example.ts +24 -0
- package/src/surfaces/admin/components/Pressable/Pressable.ts +14 -0
- package/src/surfaces/admin/components/Pressable/content/guidelines.md +12 -0
- package/src/surfaces/admin/components/Pressable/examples/Pressable.example.ts +15 -0
- package/src/surfaces/admin/components/Radio/Radio.ts +29 -0
- package/src/surfaces/admin/components/Radio/content/guidelines.md +6 -0
- package/src/surfaces/admin/components/Radio/examples/Radio.example.ts +25 -0
- package/src/surfaces/admin/components/ResourceItem/ResourceItem.ts +19 -0
- package/src/surfaces/admin/components/ResourceItem/content/guidelines.md +8 -0
- package/src/surfaces/admin/components/ResourceItem/examples/ResourceItem.example.ts +22 -0
- package/src/surfaces/admin/components/ResourceList/ResourceList.ts +30 -0
- package/src/surfaces/admin/components/ResourceList/content/guidelines.md +9 -0
- package/src/surfaces/admin/components/ResourceList/examples/ResourceList.example.ts +29 -0
- package/src/surfaces/admin/components/Select/Select.ts +39 -0
- package/src/surfaces/admin/components/Select/content/guidelines.md +7 -0
- package/src/surfaces/admin/components/Select/examples/Select.example.ts +30 -0
- package/src/surfaces/admin/components/Spinner/Spinner.ts +10 -0
- package/src/surfaces/admin/components/Spinner/content/guidelines.md +5 -0
- package/src/surfaces/admin/components/Spinner/examples/Spinner.example.ts +12 -0
- package/src/surfaces/admin/components/StackItem/StackItem.ts +15 -0
- package/src/surfaces/admin/components/StackItem/content/guidelines.md +8 -0
- package/src/surfaces/admin/components/StackItem/examples/StackItem.example.ts +25 -0
- package/src/surfaces/admin/components/Text/Text.ts +26 -0
- package/src/surfaces/admin/components/Text/content/guidelines.md +8 -0
- package/src/surfaces/admin/components/Text/examples/Text.example.ts +20 -0
- package/src/surfaces/admin/components/TextBlock/TextBlock.ts +20 -0
- package/src/surfaces/admin/components/TextBlock/content/guidelines.md +11 -0
- package/src/surfaces/admin/components/TextBlock/examples/TextBlock.example.ts +8 -0
- package/src/surfaces/admin/components/TextField/TextField.ts +54 -0
- package/src/surfaces/admin/components/TextField/content/guidelines.md +10 -0
- package/src/surfaces/admin/components/TextField/examples/TextField.example.ts +23 -0
- package/src/surfaces/admin/components/Thumbnail/Thumbnail.ts +31 -0
- package/src/surfaces/admin/components/Thumbnail/examples/Thumbnail.example.ts +13 -0
- package/src/surfaces/admin/components/shared.ts +30 -0
- package/src/surfaces/admin/components.ts +51 -0
- package/src/surfaces/admin/extension-points.ts +85 -0
- package/src/surfaces/admin/extension.ts +8 -0
- package/src/surfaces/admin/globals.ts +8 -0
- package/src/surfaces/admin/shared.ts +6 -0
- package/src/surfaces/admin.ts +6 -0
- package/src/surfaces/checkout/api/cart-line-details/README.md +1 -0
- package/src/surfaces/checkout/api/cart-line-details/render-after.ts +11 -0
- package/src/surfaces/checkout/api/shared.ts +810 -0
- package/src/surfaces/checkout/api/standard/README.md +1 -0
- package/src/surfaces/checkout/api/standard/standard.ts +1266 -0
- package/src/surfaces/checkout/api.ts +66 -0
- package/src/surfaces/checkout/components/Banner/Banner.ts +37 -0
- package/src/surfaces/checkout/components/Banner/README.md +14 -0
- package/src/surfaces/checkout/components/Banner/content/guidelines.md +9 -0
- package/src/surfaces/checkout/components/Banner/examples/basic-banner.example.ts +11 -0
- package/src/surfaces/checkout/components/BlockLayout/BlockLayout.ts +43 -0
- package/src/surfaces/checkout/components/BlockLayout/README.md +101 -0
- package/src/surfaces/checkout/components/BlockLayout/examples/basic-blockLayout.example.ts +16 -0
- package/src/surfaces/checkout/components/BlockSpacer/BlockSpacer.ts +25 -0
- package/src/surfaces/checkout/components/BlockSpacer/README.md +14 -0
- package/src/surfaces/checkout/components/BlockSpacer/examples/basic-blockspacer.example.ts +11 -0
- package/src/surfaces/checkout/components/BlockStack/BlockStack.ts +53 -0
- package/src/surfaces/checkout/components/BlockStack/README.md +77 -0
- package/src/surfaces/checkout/components/BlockStack/examples/basic-blockstack.example.ts +11 -0
- package/src/surfaces/checkout/components/Button/Button.ts +87 -0
- package/src/surfaces/checkout/components/Button/README.md +22 -0
- package/src/surfaces/checkout/components/Button/content/guidelines.md +10 -0
- package/src/surfaces/checkout/components/Button/examples/basic-button.example.ts +11 -0
- package/src/surfaces/checkout/components/Checkbox/Checkbox.ts +63 -0
- package/src/surfaces/checkout/components/Checkbox/README.md +18 -0
- package/src/surfaces/checkout/components/Checkbox/content/guidelines.md +9 -0
- package/src/surfaces/checkout/components/Checkbox/examples/basic-checkbox.example.ts +11 -0
- package/src/surfaces/checkout/components/Choice/Choice.ts +25 -0
- package/src/surfaces/checkout/components/Choice/README.md +14 -0
- package/src/surfaces/checkout/components/Choice/content/guidelines.md +9 -0
- package/src/surfaces/checkout/components/Choice/examples/basic-choice.example.ts +50 -0
- package/src/surfaces/checkout/components/ChoiceList/ChoiceList.ts +33 -0
- package/src/surfaces/checkout/components/ChoiceList/README.md +14 -0
- package/src/surfaces/checkout/components/ChoiceList/content/guidelines.md +10 -0
- package/src/surfaces/checkout/components/ChoiceList/examples/basic-choicelist.example.ts +50 -0
- package/src/surfaces/checkout/components/Divider/Divider.ts +33 -0
- package/src/surfaces/checkout/components/Divider/README.md +13 -0
- package/src/surfaces/checkout/components/Divider/examples/basic-divider.example.ts +7 -0
- package/src/surfaces/checkout/components/Form/Form.ts +30 -0
- package/src/surfaces/checkout/components/Form/README.md +21 -0
- package/src/surfaces/checkout/components/Form/content/guidelines.md +4 -0
- package/src/surfaces/checkout/components/Form/examples/basic-form.example.ts +48 -0
- package/src/surfaces/checkout/components/Grid/Grid.ts +104 -0
- package/src/surfaces/checkout/components/Grid/README.md +105 -0
- package/src/surfaces/checkout/components/Grid/content/guidelines.md +3 -0
- package/src/surfaces/checkout/components/Grid/examples/basic-grid.example.ts +45 -0
- package/src/surfaces/checkout/components/GridItem/GridItem.ts +42 -0
- package/src/surfaces/checkout/components/GridItem/README.md +72 -0
- package/src/surfaces/checkout/components/GridItem/content/guidelines.md +3 -0
- package/src/surfaces/checkout/components/GridItem/examples/basic-griditem.example.ts +42 -0
- package/src/surfaces/checkout/components/Heading/Heading.ts +44 -0
- package/src/surfaces/checkout/components/Heading/README.md +19 -0
- package/src/surfaces/checkout/components/Heading/content/guidelines.md +10 -0
- package/src/surfaces/checkout/components/Heading/examples/basic-heading.example.ts +7 -0
- package/src/surfaces/checkout/components/HeadingGroup/HeadingGroup.ts +15 -0
- package/src/surfaces/checkout/components/HeadingGroup/README.md +7 -0
- package/src/surfaces/checkout/components/HeadingGroup/content/guidelines.md +9 -0
- package/src/surfaces/checkout/components/HeadingGroup/examples/basic-headinggroup.example.ts +20 -0
- package/src/surfaces/checkout/components/Icon/Icon.ts +91 -0
- package/src/surfaces/checkout/components/Icon/README.md +15 -0
- package/src/surfaces/checkout/components/Icon/examples/basic-icon.example.ts +7 -0
- package/src/surfaces/checkout/components/Image/Image.ts +83 -0
- package/src/surfaces/checkout/components/Image/README.md +53 -0
- package/src/surfaces/checkout/components/Image/examples/basic-image.example.ts +10 -0
- package/src/surfaces/checkout/components/InlineLayout/InlineLayout.ts +49 -0
- package/src/surfaces/checkout/components/InlineLayout/README.md +103 -0
- package/src/surfaces/checkout/components/InlineLayout/examples/basic-inlineLayout.example.ts +16 -0
- package/src/surfaces/checkout/components/InlineSpacer/InlineSpacer.ts +24 -0
- package/src/surfaces/checkout/components/InlineSpacer/README.md +14 -0
- package/src/surfaces/checkout/components/InlineSpacer/examples/basic-inlinespacer.example.ts +20 -0
- package/src/surfaces/checkout/components/InlineStack/InlineStack.ts +63 -0
- package/src/surfaces/checkout/components/InlineStack/README.md +87 -0
- package/src/surfaces/checkout/components/InlineStack/examples/basic-inlinestack.example.ts +18 -0
- package/src/surfaces/checkout/components/Link/Link.ts +49 -0
- package/src/surfaces/checkout/components/Link/README.md +18 -0
- package/src/surfaces/checkout/components/Link/content/guidelines.md +9 -0
- package/src/surfaces/checkout/components/Link/examples/basic-link.example.ts +11 -0
- package/src/surfaces/checkout/components/List/List.ts +32 -0
- package/src/surfaces/checkout/components/List/README.md +19 -0
- package/src/surfaces/checkout/components/List/content/guidelines.md +11 -0
- package/src/surfaces/checkout/components/List/examples/basic-list.example.ts +11 -0
- package/src/surfaces/checkout/components/ListItem/ListItem.ts +12 -0
- package/src/surfaces/checkout/components/ListItem/README.md +5 -0
- package/src/surfaces/checkout/components/ListItem/content/guidelines.md +3 -0
- package/src/surfaces/checkout/components/ListItem/examples/basic-listitem.example.ts +9 -0
- package/src/surfaces/checkout/components/PhoneField/PhoneField.ts +77 -0
- package/src/surfaces/checkout/components/PhoneField/README.md +49 -0
- package/src/surfaces/checkout/components/PhoneField/examples/basic-phonefield.example.ts +10 -0
- package/src/surfaces/checkout/components/Pressable/Pressable.ts +128 -0
- package/src/surfaces/checkout/components/Pressable/README.md +74 -0
- package/src/surfaces/checkout/components/Pressable/examples/basic-pressable.example.ts +27 -0
- package/src/surfaces/checkout/components/ScrollView/README.md +62 -0
- package/src/surfaces/checkout/components/ScrollView/ScrollView.ts +76 -0
- package/src/surfaces/checkout/components/ScrollView/examples/basic-scrollview.example.ts +38 -0
- package/src/surfaces/checkout/components/Select/README.md +41 -0
- package/src/surfaces/checkout/components/Select/Select.ts +97 -0
- package/src/surfaces/checkout/components/Select/content/guidelines.md +4 -0
- package/src/surfaces/checkout/components/Select/examples/basic-select.example.ts +36 -0
- package/src/surfaces/checkout/components/SkeletonImage/README.md +13 -0
- package/src/surfaces/checkout/components/SkeletonImage/SkeletonImage.ts +28 -0
- package/src/surfaces/checkout/components/SkeletonImage/examples/basic-skeletonimage.example.ts +10 -0
- package/src/surfaces/checkout/components/SkeletonText/README.md +13 -0
- package/src/surfaces/checkout/components/SkeletonText/SkeletonText.ts +23 -0
- package/src/surfaces/checkout/components/SkeletonText/examples/basic-skeletontext.example.ts +7 -0
- package/src/surfaces/checkout/components/SkeletonTextBlock/README.md +13 -0
- package/src/surfaces/checkout/components/SkeletonTextBlock/SkeletonTextBlock.ts +24 -0
- package/src/surfaces/checkout/components/SkeletonTextBlock/examples/basic-skeletontextblock.example.ts +7 -0
- package/src/surfaces/checkout/components/Spinner/README.md +14 -0
- package/src/surfaces/checkout/components/Spinner/Spinner.ts +35 -0
- package/src/surfaces/checkout/components/Spinner/examples/basic-spinner.example.ts +7 -0
- package/src/surfaces/checkout/components/Stepper/README.md +28 -0
- package/src/surfaces/checkout/components/Stepper/Stepper.ts +63 -0
- package/src/surfaces/checkout/components/Stepper/content/guidelines.md +4 -0
- package/src/surfaces/checkout/components/Stepper/examples/basic-stepper.example.ts +10 -0
- package/src/surfaces/checkout/components/Tag/README.md +14 -0
- package/src/surfaces/checkout/components/Tag/Tag.ts +26 -0
- package/src/surfaces/checkout/components/Tag/examples/basic-tag.example.ts +7 -0
- package/src/surfaces/checkout/components/Text/README.md +17 -0
- package/src/surfaces/checkout/components/Text/Text.ts +44 -0
- package/src/surfaces/checkout/components/Text/content/guidelines.md +10 -0
- package/src/surfaces/checkout/components/Text/examples/basic-text.example.ts +14 -0
- package/src/surfaces/checkout/components/TextBlock/README.md +15 -0
- package/src/surfaces/checkout/components/TextBlock/TextBlock.ts +38 -0
- package/src/surfaces/checkout/components/TextBlock/content/guidelines.md +9 -0
- package/src/surfaces/checkout/components/TextBlock/examples/basic-textblock.example.ts +18 -0
- package/src/surfaces/checkout/components/TextField/README.md +49 -0
- package/src/surfaces/checkout/components/TextField/TextField.ts +173 -0
- package/src/surfaces/checkout/components/TextField/content/guidelines.md +5 -0
- package/src/surfaces/checkout/components/TextField/examples/basic-textfield.example.ts +9 -0
- package/src/surfaces/checkout/components/Tooltip/README.md +8 -0
- package/src/surfaces/checkout/components/Tooltip/Tooltip.ts +15 -0
- package/src/surfaces/checkout/components/Tooltip/examples/basic-tooltip.example.ts +23 -0
- package/src/surfaces/checkout/components/View/README.md +97 -0
- package/src/surfaces/checkout/components/View/View.ts +196 -0
- package/src/surfaces/checkout/components/View/examples/basic-view.example.ts +11 -0
- package/src/surfaces/checkout/components/shared.ts +581 -0
- package/src/surfaces/checkout/components.ts +157 -0
- package/src/surfaces/checkout/extension-points.ts +164 -0
- package/src/surfaces/checkout/extension.ts +8 -0
- package/src/surfaces/checkout/globals.ts +9 -0
- package/src/surfaces/checkout/shared.ts +6 -0
- package/src/surfaces/checkout/style/isEqual.test.ts +67 -0
- package/src/surfaces/checkout/style/isEqual.ts +41 -0
- package/src/surfaces/checkout/style/memoize.ts +177 -0
- package/src/surfaces/checkout/style/style.test.ts +131 -0
- package/src/surfaces/checkout/style/style.ts +161 -0
- package/src/surfaces/checkout/style/types.ts +67 -0
- package/src/surfaces/checkout/style.ts +16 -0
- package/src/surfaces/checkout.ts +7 -0
- package/src/utilities/registration.ts +79 -0
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import {createRemoteComponent} from '@remote-ui/core';
|
|
2
|
+
|
|
3
|
+
import type {
|
|
4
|
+
Appearance,
|
|
5
|
+
InlineAlignment,
|
|
6
|
+
ButtonAccessibilityRole,
|
|
7
|
+
OverlayActivatorProps,
|
|
8
|
+
} from '../shared';
|
|
9
|
+
|
|
10
|
+
export interface ButtonProps extends OverlayActivatorProps {
|
|
11
|
+
/**
|
|
12
|
+
* The type of button that will be rendered. The visual presentation of the button type
|
|
13
|
+
* is controlled by merchants through the Branding API.
|
|
14
|
+
*
|
|
15
|
+
*
|
|
16
|
+
* `primary`: button used for main actions. For example: "Continue to next step".
|
|
17
|
+
*
|
|
18
|
+
* `secondary`: button used for secondary actions not blocking user progress. For example: "Download Shop app".
|
|
19
|
+
*
|
|
20
|
+
* `plain`: renders a button that visually looks like a link.
|
|
21
|
+
*
|
|
22
|
+
*
|
|
23
|
+
* @defaultValue 'primary'
|
|
24
|
+
*/
|
|
25
|
+
kind?: 'primary' | 'secondary' | 'plain';
|
|
26
|
+
/**
|
|
27
|
+
* Specify the color treatment of the Button.
|
|
28
|
+
*/
|
|
29
|
+
appearance?: Extract<Appearance, 'monochrome' | 'critical'>;
|
|
30
|
+
/**
|
|
31
|
+
* Allows the button to submit a form.
|
|
32
|
+
* @deprecated use `accessibilityRole="submit"` instead
|
|
33
|
+
*/
|
|
34
|
+
submit?: boolean;
|
|
35
|
+
/**
|
|
36
|
+
* Destination URL to link to. If this value is set, the button will render as a Link.
|
|
37
|
+
*/
|
|
38
|
+
to?: string;
|
|
39
|
+
/**
|
|
40
|
+
* Specifies the inline alignment of the content.
|
|
41
|
+
*
|
|
42
|
+
* @defaultValue 'center'
|
|
43
|
+
*/
|
|
44
|
+
inlineAlignment?: InlineAlignment;
|
|
45
|
+
/**
|
|
46
|
+
* Replaces content with a loading indicator.
|
|
47
|
+
*
|
|
48
|
+
* @defaultValue false
|
|
49
|
+
*/
|
|
50
|
+
loading?: boolean;
|
|
51
|
+
/**
|
|
52
|
+
* Accessible label for the loading indicator when user prefers reduced motion. This value is
|
|
53
|
+
* only used if `loading` is true.
|
|
54
|
+
*/
|
|
55
|
+
loadingLabel?: string;
|
|
56
|
+
/**
|
|
57
|
+
* A label used for buyers using assistive technologies. When set, any
|
|
58
|
+
* `children` supplied to this component are hidden from being seen for
|
|
59
|
+
* accessibility purposes to prevent duplicate content from being read.
|
|
60
|
+
*/
|
|
61
|
+
accessibilityLabel?: string;
|
|
62
|
+
/**
|
|
63
|
+
* The role of the button that will be rendered.
|
|
64
|
+
*
|
|
65
|
+
* `button`: renders a regular button.
|
|
66
|
+
*
|
|
67
|
+
* `submit`: renders a button that submits a form.
|
|
68
|
+
*
|
|
69
|
+
* @defaultValue 'button'
|
|
70
|
+
*/
|
|
71
|
+
accessibilityRole?: ButtonAccessibilityRole;
|
|
72
|
+
/**
|
|
73
|
+
* Disables the button, disallowing any interaction.
|
|
74
|
+
*
|
|
75
|
+
* @defaultValue false
|
|
76
|
+
*/
|
|
77
|
+
disabled?: boolean;
|
|
78
|
+
/**
|
|
79
|
+
* Callback that is run when the button is pressed.
|
|
80
|
+
*/
|
|
81
|
+
onPress?(): void;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* Buttons are used for actions, such as “Add”, “Continue”, “Pay now”, or “Save”.
|
|
86
|
+
*/
|
|
87
|
+
export const Button = createRemoteComponent<'Button', ButtonProps>('Button');
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Button
|
|
2
|
+
|
|
3
|
+
Buttons are used for actions, such as “Add”, “Continue”, “Pay now”, or “Save”.
|
|
4
|
+
|
|
5
|
+
## Props
|
|
6
|
+
|
|
7
|
+
optional = ?
|
|
8
|
+
|
|
9
|
+
| Name | Type | Description |
|
|
10
|
+
| ------------------- | -------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
11
|
+
| kind? | <code>"primary" | "secondary" | "plain"</code> | The type of button that will be rendered. The visual presentation of the button type is controlled by merchants through the Branding API.<br /><br />`primary`: button used for main actions. For example: "Continue to next step".<br /><br />`secondary`: button used for secondary actions not blocking user progress. For example: "Download Shop app".<br /><br />`plain`: renders a button that visually looks like a link.<br /><br />Default value: <code>'primary'</code> |
|
|
12
|
+
| appearance? | <code>"critical" | "monochrome"</code> | Specify the color treatment of the Button.<br /><br /><code>"critical"</code>: Use to convey a problem has arisen.<br /><br /><code>"monochrome"</code>: Will take the color of its parent |
|
|
13
|
+
| submit? | <code>boolean</code> | Allows the button to submit a form. |
|
|
14
|
+
| to? | <code>string</code> | Destination URL to link to. If this value is set, the button will render as a Link. |
|
|
15
|
+
| inlineAlignment? | <code>"start" | "center" | "end"</code> | Specifies the inline alignment of the content.<br /><br />Default value: <code>'center'</code> |
|
|
16
|
+
| loading? | <code>boolean</code> | Replaces content with a loading indicator.<br /><br />Default value: <code>false</code> |
|
|
17
|
+
| loadingLabel? | <code>string</code> | Accessible label for the loading indicator when user prefers reduced motion. This value is only used if `loading` is true. |
|
|
18
|
+
| accessibilityLabel? | <code>string</code> | A label used for buyers using assistive technologies. When set, any `children` supplied to this component are hidden from being seen for accessibility purposes to prevent duplicate content from being read. |
|
|
19
|
+
| accessibilityRole? | <code>"button" | "submit"</code> | The role of the button that will be rendered.<br /><br />`button`: renders a regular button.<br /><br />`submit`: renders a button that submits a form.<br /><br />Default value: <code>'button'</code> |
|
|
20
|
+
| disabled? | <code>boolean</code> | Disables the button, disallowing any interaction.<br /><br />Default value: <code>false</code> |
|
|
21
|
+
| onPress? | <code>() => void</code> | Callback that is run when the button is pressed. |
|
|
22
|
+
| overlay? | <code>RemoteFragment</code> | An overlay component to render when the user interacts with the component. |
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
## Best practices
|
|
2
|
+
|
|
3
|
+
- Make button labels clear, so that customers can predict the results of interacting with the button.
|
|
4
|
+
- Use primary buttons for actions that progress customers through checkout, such as **Continue to shipping** and **Pay now**.
|
|
5
|
+
- Use secondary buttons for actions that you want to draw attention to, but aren't primary, such as **Track your order**.
|
|
6
|
+
- Use plain buttons when you want the appearance of a text link with the hit area of a button. This works well alongside other buttons to create hierarchies such as **Continue** and **Return to cart**.
|
|
7
|
+
|
|
8
|
+
## Related components
|
|
9
|
+
|
|
10
|
+
- [`Link`](https://github.com/Shopify/ui-extensions/tree/main/packages/checkout-ui-extensions/src/components/Link): Makes text interactive so that customers can perform an action, such as navigating to another location.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import {extend, Button} from '@shopify/ui-extensions/checkout';
|
|
2
|
+
|
|
3
|
+
extend('Checkout::Dynamic::Render', (root) => {
|
|
4
|
+
const button = root.createComponent(
|
|
5
|
+
Button,
|
|
6
|
+
{onPress: () => console.log('onPress event')},
|
|
7
|
+
'Pay now',
|
|
8
|
+
);
|
|
9
|
+
|
|
10
|
+
root.appendChild(button);
|
|
11
|
+
});
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import {createRemoteComponent} from '@remote-ui/core';
|
|
2
|
+
|
|
3
|
+
export interface CheckboxProps {
|
|
4
|
+
/**
|
|
5
|
+
* A unique identifier for the field. When no `id` is set,
|
|
6
|
+
* a globally unique value will be used instead.
|
|
7
|
+
*/
|
|
8
|
+
id?: string;
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* An identifier for the field that is unique within the nearest
|
|
12
|
+
* containing `Form` component.
|
|
13
|
+
*/
|
|
14
|
+
name?: string;
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Whether the checkbox is active. This prop is an alias for `checked`,
|
|
18
|
+
* and can be useful in form libraries that provide a normalized API for
|
|
19
|
+
* dealing with both `boolean` and `string` values. If both `value` and
|
|
20
|
+
* `checked` are set, `checked` takes precedence.
|
|
21
|
+
*/
|
|
22
|
+
value?: boolean;
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Whether the checkbox is active.
|
|
26
|
+
*/
|
|
27
|
+
checked?: boolean;
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Whether the checkbox can be changed.
|
|
31
|
+
*/
|
|
32
|
+
disabled?: boolean;
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* Indicate an error to the user. The field will be given a specific stylistic treatment
|
|
36
|
+
* to communicate problems that have to be resolved immediately.
|
|
37
|
+
*/
|
|
38
|
+
error?: string;
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* A label to use for the field that will be used for buyers using
|
|
42
|
+
* assistive technologies. When set, any `children` supplied to
|
|
43
|
+
* this component are hidden from being seen for accessibility purposes
|
|
44
|
+
* to prevent duplicate content from being read.
|
|
45
|
+
*/
|
|
46
|
+
accessibilityLabel?: string;
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* A callback that is run whenever the checkbox is changed. This callback
|
|
50
|
+
* is called with a boolean indicating whether the checkbox should now be
|
|
51
|
+
* active or inactive. This component is [controlled](https://reactjs.org/docs/forms.html#controlled-components),
|
|
52
|
+
* so you must store this value in state and reflect it back in the
|
|
53
|
+
* `checked` or `value` props.
|
|
54
|
+
*/
|
|
55
|
+
onChange?(value: boolean): void;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Use checkboxes to give customers a single binary option, such as signing up for marketing, or agreeing to terms and conditions.
|
|
60
|
+
*/
|
|
61
|
+
export const Checkbox = createRemoteComponent<'Checkbox', CheckboxProps>(
|
|
62
|
+
'Checkbox',
|
|
63
|
+
);
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Checkbox
|
|
2
|
+
|
|
3
|
+
Use checkboxes to give customers a single binary option, such as signing up for marketing, or agreeing to terms and conditions.
|
|
4
|
+
|
|
5
|
+
## Props
|
|
6
|
+
|
|
7
|
+
optional = ?
|
|
8
|
+
|
|
9
|
+
| Name | Type | Description |
|
|
10
|
+
| ------------------- | ------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
11
|
+
| id? | <code>string</code> | A unique identifier for the field. When no `id` is set, a globally unique value will be used instead. |
|
|
12
|
+
| name? | <code>string</code> | An identifier for the field that is unique within the nearest containing `Form` component. |
|
|
13
|
+
| value? | <code>boolean</code> | Whether the checkbox is active. This prop is an alias for `checked`, and can be useful in form libraries that provide a normalized API for dealing with both `boolean` and `string` values. If both `value` and `checked` are set, `checked` takes precedence. |
|
|
14
|
+
| checked? | <code>boolean</code> | Whether the checkbox is active. |
|
|
15
|
+
| disabled? | <code>boolean</code> | Whether the checkbox can be changed. |
|
|
16
|
+
| error? | <code>string</code> | Indicate an error to the user. The field will be given a specific stylistic treatment to communicate problems that have to be resolved immediately. |
|
|
17
|
+
| accessibilityLabel? | <code>string</code> | A label to use for the field that will be used for buyers using assistive technologies. When set, any `children` supplied to this component are hidden from being seen for accessibility purposes to prevent duplicate content from being read. |
|
|
18
|
+
| onChange? | <code>(value: boolean) => void</code> | A callback that is run whenever the checkbox is changed. This callback is called with a boolean indicating whether the checkbox should now be active or inactive. This component is [controlled](https://reactjs.org/docs/forms.html#controlled-components), so you must store this value in state and reflect it back in the `checked` or `value` props. |
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
## Best practices
|
|
2
|
+
|
|
3
|
+
- Frame labels positively. For example, use **Turn on notifications** instead of **Turn off notifications**.
|
|
4
|
+
- Be aware of any legal issues around checkboxes. For example, to comply with GDPR, marketing sign-up checkboxes should always be deselected by default.
|
|
5
|
+
- Link to more information or include a subtitle as required to provide more explanation. Don’t rely on tooltips to explain a checkbox.
|
|
6
|
+
|
|
7
|
+
## Related components
|
|
8
|
+
|
|
9
|
+
- [`ChoiceList`](https://github.com/Shopify/checkout-web/tree/master/packages/checkout-ui-extensions/src/components/ChoiceList): Creates a group of related options for customers to choose from. `ChoiceList` can be made up of radio buttons or checkboxes.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import {extend, Checkbox} from '@shopify/ui-extensions/checkout';
|
|
2
|
+
|
|
3
|
+
extend('Checkout::Dynamic::Render', (root) => {
|
|
4
|
+
const checkbox = root.createComponent(
|
|
5
|
+
Checkbox,
|
|
6
|
+
{id: 'checkbox', name: 'checkbox'},
|
|
7
|
+
'Save this information for next time',
|
|
8
|
+
);
|
|
9
|
+
|
|
10
|
+
root.appendChild(checkbox);
|
|
11
|
+
});
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import {createRemoteComponent} from '@remote-ui/core';
|
|
2
|
+
|
|
3
|
+
export interface ChoiceProps {
|
|
4
|
+
/**
|
|
5
|
+
* A unique identifier for the choice.
|
|
6
|
+
*/
|
|
7
|
+
id: string;
|
|
8
|
+
/**
|
|
9
|
+
* Whether the choice can be changed.
|
|
10
|
+
*/
|
|
11
|
+
disabled?: boolean;
|
|
12
|
+
/**
|
|
13
|
+
* A label to use for the choice that will be used for buyers using
|
|
14
|
+
* assistive technologies. When set, any `children` supplied to
|
|
15
|
+
* this component are hidden from being seen for accessibility purposes
|
|
16
|
+
* to prevent duplicate content from being read.
|
|
17
|
+
*/
|
|
18
|
+
accessibilityLabel?: string;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Options inside a `ChoiceList`.
|
|
23
|
+
* The wrapping `ChoiceList` component will dictate if the choice renders as radio buttons or checkboxes.
|
|
24
|
+
*/
|
|
25
|
+
export const Choice = createRemoteComponent<'Choice', ChoiceProps>('Choice');
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# Choice
|
|
2
|
+
|
|
3
|
+
Options inside a `ChoiceList`.
|
|
4
|
+
The wrapping `ChoiceList` component will dictate if the choice renders as radio buttons or checkboxes.
|
|
5
|
+
|
|
6
|
+
## Props
|
|
7
|
+
|
|
8
|
+
optional = ?
|
|
9
|
+
|
|
10
|
+
| Name | Type | Description |
|
|
11
|
+
| ------------------- | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
12
|
+
| id | <code>string</code> | A unique identifier for the choice. |
|
|
13
|
+
| disabled? | <code>boolean</code> | Whether the choice can be changed. |
|
|
14
|
+
| accessibilityLabel? | <code>string</code> | A label to use for the choice that will be used for buyers using assistive technologies. When set, any `children` supplied to this component are hidden from being seen for accessibility purposes to prevent duplicate content from being read. |
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
## Best practices
|
|
2
|
+
|
|
3
|
+
- Include a title that either tells customers what to do or explains their available options.
|
|
4
|
+
- Label options clearly based on what the option will do.
|
|
5
|
+
- Avoid options that contradict each other when you're allowing for multiple selections.
|
|
6
|
+
|
|
7
|
+
## Related components
|
|
8
|
+
|
|
9
|
+
- [`ChoiceList`](https://github.com/Shopify/ui-extensions/tree/main/packages/checkout-ui-extensions/src/components/ChoiceList): Use choice lists to present a list of choices where buyers can make a single selection or multiple selections.
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import {
|
|
2
|
+
extend,
|
|
3
|
+
ChoiceList,
|
|
4
|
+
Choice,
|
|
5
|
+
BlockStack,
|
|
6
|
+
InlineStack,
|
|
7
|
+
} from '@shopify/ui-extensions/checkout';
|
|
8
|
+
|
|
9
|
+
extend('Checkout::Dynamic::Render', (root) => {
|
|
10
|
+
const choiceList = root.createComponent(
|
|
11
|
+
ChoiceList,
|
|
12
|
+
{
|
|
13
|
+
name: 'choice',
|
|
14
|
+
value: 'first',
|
|
15
|
+
onChange: (value) => {
|
|
16
|
+
console.log(`onChange event with value: ${value}`);
|
|
17
|
+
},
|
|
18
|
+
},
|
|
19
|
+
[
|
|
20
|
+
root.createComponent(BlockStack, undefined, [
|
|
21
|
+
root.createComponent(Choice, {id: 'first'}, 'Ship'),
|
|
22
|
+
root.createComponent(Choice, {id: 'second'}, 'Pickup'),
|
|
23
|
+
]),
|
|
24
|
+
],
|
|
25
|
+
);
|
|
26
|
+
|
|
27
|
+
const multipleChoiceList = root.createComponent(
|
|
28
|
+
ChoiceList,
|
|
29
|
+
{
|
|
30
|
+
name: 'multipleChoice',
|
|
31
|
+
value: ['multipleFirst'],
|
|
32
|
+
onChange: (value) => {
|
|
33
|
+
console.log(`onChange event with value: ${value}`);
|
|
34
|
+
},
|
|
35
|
+
},
|
|
36
|
+
[
|
|
37
|
+
root.createComponent(BlockStack, undefined, [
|
|
38
|
+
root.createComponent(Choice, {id: 'multipleFirst'}, 'Gift message'),
|
|
39
|
+
root.createComponent(Choice, {id: 'multipleSecond'}, 'Gift wrapping'),
|
|
40
|
+
]),
|
|
41
|
+
],
|
|
42
|
+
);
|
|
43
|
+
|
|
44
|
+
const layout = root.createComponent(InlineStack, undefined, [
|
|
45
|
+
choiceList,
|
|
46
|
+
multipleChoiceList,
|
|
47
|
+
]);
|
|
48
|
+
|
|
49
|
+
root.appendChild(layout);
|
|
50
|
+
});
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import {createRemoteComponent} from '@remote-ui/core';
|
|
2
|
+
|
|
3
|
+
export interface ChoiceListProps<T extends string | string[]> {
|
|
4
|
+
/**
|
|
5
|
+
* An identifier for the field that is unique within the nearest
|
|
6
|
+
* containing `Form` component.
|
|
7
|
+
*/
|
|
8
|
+
name: string;
|
|
9
|
+
/**
|
|
10
|
+
* A `string` or `string[]` indicating the ids of selected choices. When
|
|
11
|
+
* a string is set, choices render as radios. When a string array is
|
|
12
|
+
* set, choices render as checkboxes.
|
|
13
|
+
*/
|
|
14
|
+
value: T;
|
|
15
|
+
/**
|
|
16
|
+
* A callback that is run whenever the choice list is changed. This callback
|
|
17
|
+
* is called with a string or array of strings indicating the ids of choices
|
|
18
|
+
* that should now be selected. This component is
|
|
19
|
+
* [controlled](https://reactjs.org/docs/forms.html#controlled-components),
|
|
20
|
+
* so you must store this value in state and reflect it back in the
|
|
21
|
+
* `value` prop.
|
|
22
|
+
*/
|
|
23
|
+
onChange(value: T): void;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Use choice lists to present a list of choices where buyers can make
|
|
28
|
+
* a single selection or multiple selections.
|
|
29
|
+
*/
|
|
30
|
+
export const ChoiceList = createRemoteComponent<
|
|
31
|
+
'ChoiceList',
|
|
32
|
+
ChoiceListProps<string | string[]>
|
|
33
|
+
>('ChoiceList');
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# ChoiceList
|
|
2
|
+
|
|
3
|
+
Use choice lists to present a list of choices where buyers can make
|
|
4
|
+
a single selection or multiple selections.
|
|
5
|
+
|
|
6
|
+
## Props
|
|
7
|
+
|
|
8
|
+
optional = ?
|
|
9
|
+
|
|
10
|
+
| Name | Type | Description |
|
|
11
|
+
| -------- | ---------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
12
|
+
| name | <code>string</code> | An identifier for the field that is unique within the nearest containing `Form` component. |
|
|
13
|
+
| value | <code>string | string[]</code> | A `string` or `string[]` indicating the ids of selected choices. When a string is set, choices render as radios. When a string array is set, choices render as checkboxes. |
|
|
14
|
+
| onChange | <code>(value: string | string[]) => void</code> | A callback that is run whenever the choice list is changed. This callback is called with a string or array of strings indicating the ids of choices that should now be selected. This component is [controlled](https://reactjs.org/docs/forms.html#controlled-components), so you must store this value in state and reflect it back in the `value` prop. |
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
## Best practices
|
|
2
|
+
|
|
3
|
+
- Include a title that either tells customers what to do or explains the available options.
|
|
4
|
+
- Label options clearly based on what the option will do.
|
|
5
|
+
- Avoid mutually exclusive options when you're allowing for multiple selections.
|
|
6
|
+
|
|
7
|
+
## Related components
|
|
8
|
+
|
|
9
|
+
- [`Choice`](https://github.com/Shopify/checkout-web/tree/master/packages/checkout-ui-extensions/src/components/Choice): The options inside the `ChoiceList` component.
|
|
10
|
+
- [`Checkbox`](https://github.com/Shopify/checkout-web/tree/master/packages/checkout-ui-extensions/src/components/Checkbox): Gives customers a single binary option, such as signed up for marketing, or agreeing to terms and conditions.
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import {
|
|
2
|
+
extend,
|
|
3
|
+
ChoiceList,
|
|
4
|
+
Choice,
|
|
5
|
+
BlockStack,
|
|
6
|
+
InlineStack,
|
|
7
|
+
} from '@shopify/ui-extensions/checkout';
|
|
8
|
+
|
|
9
|
+
extend('Checkout::Dynamic::Render', (root) => {
|
|
10
|
+
const choiceList = root.createComponent(
|
|
11
|
+
ChoiceList,
|
|
12
|
+
{
|
|
13
|
+
name: 'choice',
|
|
14
|
+
value: 'first',
|
|
15
|
+
onChange: (value) => {
|
|
16
|
+
console.log(`onChange event with value: ${value}`);
|
|
17
|
+
},
|
|
18
|
+
},
|
|
19
|
+
[
|
|
20
|
+
root.createComponent(BlockStack, undefined, [
|
|
21
|
+
root.createComponent(Choice, {id: 'first'}, 'Ship'),
|
|
22
|
+
root.createComponent(Choice, {id: 'second'}, 'Pickup'),
|
|
23
|
+
]),
|
|
24
|
+
],
|
|
25
|
+
);
|
|
26
|
+
|
|
27
|
+
const multipleChoiceList = root.createComponent(
|
|
28
|
+
ChoiceList,
|
|
29
|
+
{
|
|
30
|
+
name: 'multipleChoice',
|
|
31
|
+
value: ['multipleFirst'],
|
|
32
|
+
onChange: (value) => {
|
|
33
|
+
console.log(`onChange event with value: ${value}`);
|
|
34
|
+
},
|
|
35
|
+
},
|
|
36
|
+
[
|
|
37
|
+
root.createComponent(BlockStack, undefined, [
|
|
38
|
+
root.createComponent(Choice, {id: 'multipleFirst'}, 'Gift message'),
|
|
39
|
+
root.createComponent(Choice, {id: 'multipleSecond'}, 'Gift wrapping'),
|
|
40
|
+
]),
|
|
41
|
+
],
|
|
42
|
+
);
|
|
43
|
+
|
|
44
|
+
const layout = root.createComponent(InlineStack, undefined, [
|
|
45
|
+
choiceList,
|
|
46
|
+
multipleChoiceList,
|
|
47
|
+
]);
|
|
48
|
+
|
|
49
|
+
root.appendChild(layout);
|
|
50
|
+
});
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import {createRemoteComponent} from '@remote-ui/core';
|
|
2
|
+
|
|
3
|
+
import type {Size, Alignment, Direction} from '../shared';
|
|
4
|
+
|
|
5
|
+
export interface DividerProps {
|
|
6
|
+
/**
|
|
7
|
+
* Use to create dividers with varying widths.
|
|
8
|
+
*
|
|
9
|
+
* @defaultValue 'small'
|
|
10
|
+
*/
|
|
11
|
+
size?: Extract<Size, 'small' | 'base' | 'large' | 'extraLarge'>;
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Use to specify direction of divider.
|
|
15
|
+
*
|
|
16
|
+
* @defaultValue 'inline'
|
|
17
|
+
*/
|
|
18
|
+
direction?: Direction;
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Use to specify alignment of contents of divider.
|
|
22
|
+
*
|
|
23
|
+
* @defaultValue 'center'
|
|
24
|
+
*/
|
|
25
|
+
alignment?: Alignment;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* A divider separates content and represents a thematic break between elements.
|
|
30
|
+
*/
|
|
31
|
+
export const Divider = createRemoteComponent<'Divider', DividerProps>(
|
|
32
|
+
'Divider',
|
|
33
|
+
);
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# Divider
|
|
2
|
+
|
|
3
|
+
A divider separates content and represents a thematic break between elements.
|
|
4
|
+
|
|
5
|
+
## Props
|
|
6
|
+
|
|
7
|
+
optional = ?
|
|
8
|
+
|
|
9
|
+
| Name | Type | Description |
|
|
10
|
+
| ---------- | --------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------ |
|
|
11
|
+
| size? | <code>"small" | "base" | "large" | "extraLarge"</code> | Use to create dividers with varying widths.<br /><br />Default value: <code>'small'</code> |
|
|
12
|
+
| direction? | <code>"inline" | "block"</code> | Use to specify direction of divider.<br /><br />Default value: <code>'inline'</code> |
|
|
13
|
+
| alignment? | <code>"start" | "center" | "end"</code> | Use to specify alignment of contents of divider.<br /><br />Default value: <code>'center'</code> |
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import {createRemoteComponent} from '@remote-ui/core';
|
|
2
|
+
|
|
3
|
+
export interface FormProps {
|
|
4
|
+
/**
|
|
5
|
+
* Whether the form is able to be submitted. When set to `true`, this will
|
|
6
|
+
* disable the implicit submit behavior of the form.
|
|
7
|
+
*/
|
|
8
|
+
disabled?: boolean;
|
|
9
|
+
/**
|
|
10
|
+
* A callback that is run when the form is submitted.
|
|
11
|
+
*/
|
|
12
|
+
onSubmit(): void;
|
|
13
|
+
/**
|
|
14
|
+
* An optional override for the autogenerated form ID.
|
|
15
|
+
*/
|
|
16
|
+
id?: string;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* The form component should be used to wrap one or more form controls. This
|
|
21
|
+
* component provides an "implicit submit" behavior, where customers can submit
|
|
22
|
+
* the form from any input by pressing "Enter" on their keyboards. This
|
|
23
|
+
* behavior is widely expected, and should be respected as often as possible.
|
|
24
|
+
*
|
|
25
|
+
* Unlike an HTML `form` element, this component does not support configuring
|
|
26
|
+
* the descendant fields to be submitted via HTTP automatically. Instead, you
|
|
27
|
+
* must provide an `onSubmit` callback that will perform the necessary HTTP
|
|
28
|
+
* requests in JavaScript.
|
|
29
|
+
*/
|
|
30
|
+
export const Form = createRemoteComponent<'Form', FormProps>('Form');
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# Form
|
|
2
|
+
|
|
3
|
+
The form component should be used to wrap one or more form controls. This
|
|
4
|
+
component provides an "implicit submit" behavior, where customers can submit
|
|
5
|
+
the form from any input by pressing "Enter" on their keyboards. This
|
|
6
|
+
behavior is widely expected, and should be respected as often as possible.
|
|
7
|
+
|
|
8
|
+
Unlike an HTML `form` element, this component does not support configuring
|
|
9
|
+
the descendant fields to be submitted via HTTP automatically. Instead, you
|
|
10
|
+
must provide an `onSubmit` callback that will perform the necessary HTTP
|
|
11
|
+
requests in JavaScript.
|
|
12
|
+
|
|
13
|
+
## Props
|
|
14
|
+
|
|
15
|
+
optional = ?
|
|
16
|
+
|
|
17
|
+
| Name | Type | Description |
|
|
18
|
+
| --------- | ----------------------- | ------------------------------------------------------------------------------------------------------------------------- |
|
|
19
|
+
| disabled? | <code>boolean</code> | Whether the form is able to be submitted. When set to `true`, this will disable the implicit submit behavior of the form. |
|
|
20
|
+
| onSubmit | <code>() => void</code> | A callback that is run when the form is submitted. |
|
|
21
|
+
| id? | <code>string</code> | An optional override for the autogenerated form ID. |
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import {
|
|
2
|
+
extend,
|
|
3
|
+
BlockSpacer,
|
|
4
|
+
Button,
|
|
5
|
+
Form,
|
|
6
|
+
Grid,
|
|
7
|
+
GridItem,
|
|
8
|
+
TextField,
|
|
9
|
+
View,
|
|
10
|
+
} from '@shopify/ui-extensions/checkout';
|
|
11
|
+
|
|
12
|
+
extend('Checkout::Dynamic::Render', (root) => {
|
|
13
|
+
const fields = root.createComponent(
|
|
14
|
+
Grid,
|
|
15
|
+
{columns: ['50%', '50%'], spacing: 'base'},
|
|
16
|
+
[
|
|
17
|
+
root.createComponent(
|
|
18
|
+
View,
|
|
19
|
+
undefined,
|
|
20
|
+
root.createComponent(TextField, {label: 'First name'}),
|
|
21
|
+
),
|
|
22
|
+
root.createComponent(
|
|
23
|
+
View,
|
|
24
|
+
undefined,
|
|
25
|
+
root.createComponent(TextField, {label: 'Last name'}),
|
|
26
|
+
),
|
|
27
|
+
root.createComponent(
|
|
28
|
+
GridItem,
|
|
29
|
+
{columnSpan: 2},
|
|
30
|
+
root.createComponent(TextField, {label: 'Company'}),
|
|
31
|
+
),
|
|
32
|
+
],
|
|
33
|
+
);
|
|
34
|
+
const spacer = root.createComponent(BlockSpacer, {spacing: 'base'});
|
|
35
|
+
const button = root.createComponent(
|
|
36
|
+
Button,
|
|
37
|
+
{accessibilityRole: 'submit'},
|
|
38
|
+
'Submit',
|
|
39
|
+
);
|
|
40
|
+
|
|
41
|
+
const form = root.createComponent(
|
|
42
|
+
Form,
|
|
43
|
+
{onSubmit: () => console.log('onSubmit event')},
|
|
44
|
+
[fields, spacer, button],
|
|
45
|
+
);
|
|
46
|
+
|
|
47
|
+
root.appendChild(form);
|
|
48
|
+
});
|