@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,131 @@
|
|
|
1
|
+
import {Style} from './style';
|
|
2
|
+
|
|
3
|
+
describe('Style', () => {
|
|
4
|
+
describe('default()', () => {
|
|
5
|
+
it('returns a conditional value with a default', () => {
|
|
6
|
+
const defaultValue = Style.default('default');
|
|
7
|
+
|
|
8
|
+
expect(defaultValue).toStrictEqual({
|
|
9
|
+
default: 'default',
|
|
10
|
+
conditionals: [],
|
|
11
|
+
});
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
it('returns a conditional value with a default and a condition when chained with when()', () => {
|
|
15
|
+
const defaultValue = Style.default('default');
|
|
16
|
+
|
|
17
|
+
expect(defaultValue.when({hover: true}, 'value')).toStrictEqual({
|
|
18
|
+
default: 'default',
|
|
19
|
+
conditionals: [{value: 'value', conditions: {hover: true}}],
|
|
20
|
+
});
|
|
21
|
+
});
|
|
22
|
+
|
|
23
|
+
it('returns a memoized value', () => {
|
|
24
|
+
expect(Style.default('default')).toBe(Style.default('default'));
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
it('returns a new value when passed value is different', () => {
|
|
28
|
+
expect(Style.default('default1')).not.toBe(Style.default('default2'));
|
|
29
|
+
});
|
|
30
|
+
});
|
|
31
|
+
|
|
32
|
+
describe('when()', () => {
|
|
33
|
+
it('returns a conditional value with no default', () => {
|
|
34
|
+
const conditionalValue = Style.when({hover: true}, 'value');
|
|
35
|
+
|
|
36
|
+
expect(conditionalValue).toStrictEqual({
|
|
37
|
+
conditionals: [{value: 'value', conditions: {hover: true}}],
|
|
38
|
+
});
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
it('returns a conditional value with a composed condition', () => {
|
|
42
|
+
const conditionalValue = Style.default('default').when(
|
|
43
|
+
{hover: true, viewportInlineSize: {min: 'small'}},
|
|
44
|
+
'value1',
|
|
45
|
+
);
|
|
46
|
+
|
|
47
|
+
expect(conditionalValue).toStrictEqual({
|
|
48
|
+
default: 'default',
|
|
49
|
+
conditionals: [
|
|
50
|
+
{
|
|
51
|
+
value: 'value1',
|
|
52
|
+
conditions: {hover: true, viewportInlineSize: {min: 'small'}},
|
|
53
|
+
},
|
|
54
|
+
],
|
|
55
|
+
});
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
it('returns a memoized value', () => {
|
|
59
|
+
expect(Style.when({hover: true}, 'value')).toBe(
|
|
60
|
+
Style.when({hover: true}, 'value'),
|
|
61
|
+
);
|
|
62
|
+
});
|
|
63
|
+
|
|
64
|
+
it('returns a new value when passed value is different', () => {
|
|
65
|
+
expect(Style.when({hover: true}, 'value1')).not.toBe(
|
|
66
|
+
Style.when({hover: true}, 'value2'),
|
|
67
|
+
);
|
|
68
|
+
});
|
|
69
|
+
});
|
|
70
|
+
|
|
71
|
+
describe('when().when()', () => {
|
|
72
|
+
it('returns a conditional value with default and two conditions', () => {
|
|
73
|
+
const conditionalValue = Style.default('default')
|
|
74
|
+
.when({hover: true}, 'value1')
|
|
75
|
+
.when({viewportInlineSize: {min: 'small'}}, 'value2');
|
|
76
|
+
|
|
77
|
+
expect(conditionalValue).toStrictEqual({
|
|
78
|
+
default: 'default',
|
|
79
|
+
conditionals: [
|
|
80
|
+
{value: 'value1', conditions: {hover: true}},
|
|
81
|
+
{value: 'value2', conditions: {viewportInlineSize: {min: 'small'}}},
|
|
82
|
+
],
|
|
83
|
+
});
|
|
84
|
+
});
|
|
85
|
+
|
|
86
|
+
it('returns a memoized value', () => {
|
|
87
|
+
expect(
|
|
88
|
+
Style.when({hover: true}, 'value 1')
|
|
89
|
+
.when({focus: true}, 'value 2')
|
|
90
|
+
.when({viewportInlineSize: {min: 'small'}}, 'value 3'),
|
|
91
|
+
).toBe(
|
|
92
|
+
Style.when({hover: true}, 'value 1')
|
|
93
|
+
.when({focus: true}, 'value 2')
|
|
94
|
+
.when({viewportInlineSize: {min: 'small'}}, 'value 3'),
|
|
95
|
+
);
|
|
96
|
+
});
|
|
97
|
+
|
|
98
|
+
it('returns a memoized value after calling with a different value once', () => {
|
|
99
|
+
const firstValue = Style.when({hover: true}, 'value1').when(
|
|
100
|
+
{focus: true},
|
|
101
|
+
'value2',
|
|
102
|
+
);
|
|
103
|
+
|
|
104
|
+
Style.when({hover: true}, 'value1').when({focus: true}, 'value3');
|
|
105
|
+
|
|
106
|
+
const thirdValue = Style.when({hover: true}, 'value1').when(
|
|
107
|
+
{focus: true},
|
|
108
|
+
'value2',
|
|
109
|
+
);
|
|
110
|
+
|
|
111
|
+
expect(firstValue).toBe(thirdValue);
|
|
112
|
+
});
|
|
113
|
+
});
|
|
114
|
+
|
|
115
|
+
describe('prototype chain', () => {
|
|
116
|
+
it('returns a different when method on the prototype chain for each instance', () => {
|
|
117
|
+
const style1 = Style.when({hover: true}, 'value 1').when(
|
|
118
|
+
{viewportInlineSize: {min: 'small'}},
|
|
119
|
+
'value 2',
|
|
120
|
+
);
|
|
121
|
+
const style2 = Style.when({focus: true}, 'value 3').when(
|
|
122
|
+
{viewportInlineSize: {min: 'small'}},
|
|
123
|
+
'value 4',
|
|
124
|
+
);
|
|
125
|
+
|
|
126
|
+
expect(Object.getPrototypeOf(style1)).not.toBe(
|
|
127
|
+
Object.getPrototypeOf(style2),
|
|
128
|
+
);
|
|
129
|
+
});
|
|
130
|
+
});
|
|
131
|
+
});
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
import {memoize} from './memoize';
|
|
2
|
+
import {Conditions, ConditionalStyle, BaseConditions} from './types';
|
|
3
|
+
import {isEqual} from './isEqual';
|
|
4
|
+
|
|
5
|
+
const MAX_CACHE_SIZE = 50;
|
|
6
|
+
|
|
7
|
+
const MEMOIZE_OPTIONS = {
|
|
8
|
+
equalityCheck: isEqual,
|
|
9
|
+
maxSize: MAX_CACHE_SIZE,
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
type Chainable<TConditionalStyle> = TConditionalStyle extends ConditionalStyle<
|
|
13
|
+
infer T,
|
|
14
|
+
infer TAcceptedConditions
|
|
15
|
+
>
|
|
16
|
+
? TConditionalStyle & {
|
|
17
|
+
when: <
|
|
18
|
+
U,
|
|
19
|
+
AcceptedConditions extends BaseConditions = TAcceptedConditions,
|
|
20
|
+
>(
|
|
21
|
+
this: TConditionalStyle,
|
|
22
|
+
conditions: AcceptedConditions,
|
|
23
|
+
value: U,
|
|
24
|
+
) => Chainable<
|
|
25
|
+
TConditionalStyle extends {default: T}
|
|
26
|
+
? Required<ConditionalStyle<U, AcceptedConditions>>
|
|
27
|
+
: ConditionalStyle<U, AcceptedConditions>
|
|
28
|
+
>;
|
|
29
|
+
}
|
|
30
|
+
: never;
|
|
31
|
+
|
|
32
|
+
type WhenContext<T, AcceptedConditions extends BaseConditions = Conditions> =
|
|
33
|
+
| typeof Style
|
|
34
|
+
| ConditionalStyle<T, AcceptedConditions>
|
|
35
|
+
| Required<ConditionalStyle<T, AcceptedConditions>>;
|
|
36
|
+
|
|
37
|
+
type WhenReturnType<
|
|
38
|
+
T,
|
|
39
|
+
TContext extends WhenContext<any, AcceptedConditions>,
|
|
40
|
+
AcceptedConditions extends BaseConditions = Conditions,
|
|
41
|
+
> = Chainable<
|
|
42
|
+
TContext extends typeof Style
|
|
43
|
+
? ConditionalStyle<T, AcceptedConditions>
|
|
44
|
+
: TContext extends {default: infer U}
|
|
45
|
+
? Required<ConditionalStyle<T | U, AcceptedConditions>>
|
|
46
|
+
: TContext extends {default?: infer U}
|
|
47
|
+
? ConditionalStyle<T | U, AcceptedConditions>
|
|
48
|
+
: ConditionalStyle<T, AcceptedConditions>
|
|
49
|
+
>;
|
|
50
|
+
|
|
51
|
+
interface WhenFunction {
|
|
52
|
+
<
|
|
53
|
+
T,
|
|
54
|
+
TContext extends WhenContext<any, AcceptedConditions>,
|
|
55
|
+
AcceptedConditions extends BaseConditions = Conditions,
|
|
56
|
+
>(
|
|
57
|
+
this: TContext,
|
|
58
|
+
conditions: AcceptedConditions,
|
|
59
|
+
value: T,
|
|
60
|
+
): WhenReturnType<T, TContext, AcceptedConditions>;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
// eslint-disable-next-line func-style
|
|
64
|
+
const when: WhenFunction = function when<
|
|
65
|
+
T,
|
|
66
|
+
TContext extends WhenContext<any, AcceptedConditions>,
|
|
67
|
+
AcceptedConditions extends BaseConditions = Conditions,
|
|
68
|
+
>(this: TContext, conditions: AcceptedConditions, value: T) {
|
|
69
|
+
const config = isConditionalStyle<T, AcceptedConditions>(this)
|
|
70
|
+
? {
|
|
71
|
+
default: this.default,
|
|
72
|
+
conditionals: [...this.conditionals, {conditions, value}],
|
|
73
|
+
}
|
|
74
|
+
: {
|
|
75
|
+
conditionals: [{conditions, value}],
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
return createChainableConditionalStyle<T, AcceptedConditions>(
|
|
79
|
+
config,
|
|
80
|
+
) as WhenReturnType<T, TContext, AcceptedConditions>;
|
|
81
|
+
};
|
|
82
|
+
|
|
83
|
+
/**
|
|
84
|
+
* Style is a helper for authoring conditional values for prop styles.
|
|
85
|
+
* Write complex conditional styles based on one or more conditions (viewport
|
|
86
|
+
* sizes and interactive states) in a concise and expressive way.
|
|
87
|
+
*/
|
|
88
|
+
export const Style = {
|
|
89
|
+
/**
|
|
90
|
+
* Sets an optional default value to use when no other condition is met.
|
|
91
|
+
*
|
|
92
|
+
* @param defaultValue The default value
|
|
93
|
+
* @returns The chainable condition style
|
|
94
|
+
*/
|
|
95
|
+
default: memoize(
|
|
96
|
+
<T, AcceptedConditions extends BaseConditions = Conditions>(
|
|
97
|
+
defaultValue: T,
|
|
98
|
+
) =>
|
|
99
|
+
createChainableConditionalStyle<
|
|
100
|
+
T,
|
|
101
|
+
AcceptedConditions,
|
|
102
|
+
Required<ConditionalStyle<T, AcceptedConditions>>
|
|
103
|
+
>({
|
|
104
|
+
default: defaultValue,
|
|
105
|
+
conditionals: [],
|
|
106
|
+
}),
|
|
107
|
+
MEMOIZE_OPTIONS,
|
|
108
|
+
),
|
|
109
|
+
/**
|
|
110
|
+
* Adjusts the style based on different conditions. All conditions, expressed
|
|
111
|
+
* as a literal object, must be met for the associated value to be applied.
|
|
112
|
+
*
|
|
113
|
+
* The `when` method can be chained together to build more complex styles.
|
|
114
|
+
*
|
|
115
|
+
* @param conditions The condition(s)
|
|
116
|
+
* @param value The conditional value that can be applied if the conditions are met
|
|
117
|
+
* @returns The chainable condition style
|
|
118
|
+
*/
|
|
119
|
+
when: memoize(when, MEMOIZE_OPTIONS),
|
|
120
|
+
} as const;
|
|
121
|
+
|
|
122
|
+
function createChainableConditionalStyle<
|
|
123
|
+
T,
|
|
124
|
+
AcceptedConditions extends BaseConditions = Conditions,
|
|
125
|
+
TConditionalStyle extends ConditionalStyle<
|
|
126
|
+
T,
|
|
127
|
+
AcceptedConditions
|
|
128
|
+
> = ConditionalStyle<T, AcceptedConditions>,
|
|
129
|
+
>(conditionalStyle: TConditionalStyle): Chainable<TConditionalStyle> {
|
|
130
|
+
const proto = {} as {
|
|
131
|
+
when: WhenFunction;
|
|
132
|
+
};
|
|
133
|
+
|
|
134
|
+
const returnConditionalStyle = Object.create(
|
|
135
|
+
proto,
|
|
136
|
+
) as Chainable<TConditionalStyle>;
|
|
137
|
+
|
|
138
|
+
Object.assign(returnConditionalStyle, conditionalStyle);
|
|
139
|
+
|
|
140
|
+
proto.when = memoize(when.bind(returnConditionalStyle), MEMOIZE_OPTIONS);
|
|
141
|
+
|
|
142
|
+
return returnConditionalStyle;
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
export function isConditionalStyle<
|
|
146
|
+
T,
|
|
147
|
+
AcceptedConditions extends BaseConditions = Conditions,
|
|
148
|
+
>(value?: any): value is ConditionalStyle<T, AcceptedConditions> {
|
|
149
|
+
return value !== null && typeof value === 'object' && 'conditionals' in value;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
export function isConditionalStyleWithDefault<
|
|
153
|
+
T,
|
|
154
|
+
AcceptedConditions extends BaseConditions = Conditions,
|
|
155
|
+
>(value?: any): value is Required<ConditionalStyle<T, AcceptedConditions>> {
|
|
156
|
+
return (
|
|
157
|
+
isConditionalStyle(value) &&
|
|
158
|
+
'default' in value &&
|
|
159
|
+
value.default !== undefined
|
|
160
|
+
);
|
|
161
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
type Resolution = 1 | 1.3 | 1.5 | 2 | 2.6 | 3 | 3.5 | 4;
|
|
2
|
+
|
|
3
|
+
export interface InteractiveConditions {
|
|
4
|
+
hover: true;
|
|
5
|
+
focus: true;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export interface ResolutionCondition {
|
|
9
|
+
resolution: Resolution;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
type ViewportInlineSize = 'small' | 'medium' | 'large';
|
|
13
|
+
|
|
14
|
+
export interface ViewportSizeCondition {
|
|
15
|
+
viewportInlineSize: {min: ViewportInlineSize};
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export type AtLeastOne<T, U = {[K in keyof T]: Pick<T, K>}> = Partial<T> &
|
|
19
|
+
U[keyof U];
|
|
20
|
+
|
|
21
|
+
type DefaultConditions = InteractiveConditions & ViewportSizeCondition;
|
|
22
|
+
|
|
23
|
+
export type Conditions = AtLeastOne<DefaultConditions>;
|
|
24
|
+
|
|
25
|
+
export type BaseConditions = AtLeastOne<
|
|
26
|
+
DefaultConditions & ResolutionCondition
|
|
27
|
+
>;
|
|
28
|
+
|
|
29
|
+
export interface ConditionalValue<
|
|
30
|
+
T,
|
|
31
|
+
AcceptedConditions extends BaseConditions = Conditions,
|
|
32
|
+
> {
|
|
33
|
+
/**
|
|
34
|
+
* The conditions that must be met for the value to be applied. At least one
|
|
35
|
+
* condition must be specified.
|
|
36
|
+
*/
|
|
37
|
+
conditions: AcceptedConditions;
|
|
38
|
+
/**
|
|
39
|
+
* The value that will be applied if the conditions are met.
|
|
40
|
+
*/
|
|
41
|
+
value: T;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export interface ConditionalStyle<
|
|
45
|
+
T,
|
|
46
|
+
AcceptedConditions extends BaseConditions = Conditions,
|
|
47
|
+
> {
|
|
48
|
+
/**
|
|
49
|
+
* The default value applied when none of the conditional values
|
|
50
|
+
* specified in `conditionals` are met.
|
|
51
|
+
*/
|
|
52
|
+
default?: T;
|
|
53
|
+
/**
|
|
54
|
+
* An array of conditional values.
|
|
55
|
+
*/
|
|
56
|
+
conditionals: ConditionalValue<T, AcceptedConditions>[];
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
export type MaybeConditionalStyle<
|
|
60
|
+
T,
|
|
61
|
+
AcceptedConditions extends BaseConditions = Conditions,
|
|
62
|
+
> = T | ConditionalStyle<T, AcceptedConditions>;
|
|
63
|
+
|
|
64
|
+
export type MaybeResponsiveConditionalStyle<T> = MaybeConditionalStyle<
|
|
65
|
+
T,
|
|
66
|
+
ViewportSizeCondition
|
|
67
|
+
>;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export {
|
|
2
|
+
Style,
|
|
3
|
+
isConditionalStyle,
|
|
4
|
+
isConditionalStyleWithDefault,
|
|
5
|
+
} from './style/style';
|
|
6
|
+
export type {
|
|
7
|
+
AtLeastOne,
|
|
8
|
+
Conditions,
|
|
9
|
+
ConditionalStyle,
|
|
10
|
+
ConditionalValue,
|
|
11
|
+
InteractiveConditions,
|
|
12
|
+
MaybeConditionalStyle,
|
|
13
|
+
MaybeResponsiveConditionalStyle,
|
|
14
|
+
ResolutionCondition,
|
|
15
|
+
ViewportSizeCondition,
|
|
16
|
+
} from './style/types';
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export * from './checkout/api';
|
|
2
|
+
export * from './checkout/components';
|
|
3
|
+
export * from './checkout/extension-points';
|
|
4
|
+
export * from './checkout/extension';
|
|
5
|
+
export * from './checkout/shared';
|
|
6
|
+
export * from './checkout/style';
|
|
7
|
+
export * from './checkout/globals';
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import {createRemoteRoot} from '@remote-ui/core';
|
|
2
|
+
import type {
|
|
3
|
+
RenderExtensionConnection,
|
|
4
|
+
RenderExtension,
|
|
5
|
+
RenderExtensionWithRemoteRoot,
|
|
6
|
+
} from '../extension';
|
|
7
|
+
|
|
8
|
+
export interface ExtensionRegistrationFunction<ExtensionPoints> {
|
|
9
|
+
<Target extends keyof ExtensionPoints>(
|
|
10
|
+
target: Target,
|
|
11
|
+
implementation: ExtensionPoints[Target],
|
|
12
|
+
): ExtensionPoints[Target];
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export interface ExtensionRegistrationFunctionWithRoot<ExtensionPoints> {
|
|
16
|
+
<Target extends keyof ExtensionPoints>(
|
|
17
|
+
target: Target,
|
|
18
|
+
implementation: ExtensionPoints[Target] extends RenderExtension<
|
|
19
|
+
infer Api,
|
|
20
|
+
infer Components
|
|
21
|
+
>
|
|
22
|
+
? RenderExtensionWithRemoteRoot<Api, Components>
|
|
23
|
+
: ExtensionPoints[Target],
|
|
24
|
+
): ExtensionPoints[Target];
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* This function takes an extension function that is expecting a `RemoteRoot` as its
|
|
29
|
+
* first argument, and returns a new function that accepts a `RemoteChannel` instead.
|
|
30
|
+
* This is a convenience that allows the raw UI extension API to only expose the simpler
|
|
31
|
+
* `RemoteChannel` type, while allowing the extension to use the more powerful `RemoteRoot`,
|
|
32
|
+
* provided by a version of `@remote-ui/core` that the extension controls.
|
|
33
|
+
*/
|
|
34
|
+
export function createExtensionRegistrationFunction<
|
|
35
|
+
ExtensionPoints,
|
|
36
|
+
>(): ExtensionRegistrationFunctionWithRoot<ExtensionPoints> {
|
|
37
|
+
const extensionWrapper: ExtensionRegistrationFunctionWithRoot<
|
|
38
|
+
ExtensionPoints
|
|
39
|
+
> = (target, implementation) => {
|
|
40
|
+
async function extension(...args: any[]) {
|
|
41
|
+
// Rendering extensions have two arguments. Non-rendering extensions don’t have
|
|
42
|
+
// a `RemoteChannel` that needs to be normalized, so we can just pass the arguments
|
|
43
|
+
// through.
|
|
44
|
+
if (args.length === 1) {
|
|
45
|
+
return (implementation as any)(...args);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
const [{channel, components}, api] = args as [
|
|
49
|
+
RenderExtensionConnection,
|
|
50
|
+
any,
|
|
51
|
+
];
|
|
52
|
+
|
|
53
|
+
const root = createRemoteRoot(channel, {
|
|
54
|
+
components,
|
|
55
|
+
strict: true,
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
let renderResult = (implementation as any)(root, api);
|
|
59
|
+
|
|
60
|
+
if (
|
|
61
|
+
typeof renderResult === 'object' &&
|
|
62
|
+
renderResult != null &&
|
|
63
|
+
'then' in renderResult
|
|
64
|
+
) {
|
|
65
|
+
renderResult = await renderResult;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
root.mount();
|
|
69
|
+
|
|
70
|
+
return renderResult;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
(globalThis as any).shopify?.extend(target, extension);
|
|
74
|
+
|
|
75
|
+
return extension as any;
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
return extensionWrapper;
|
|
79
|
+
}
|