@vtex/faststore 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +18 -0
- package/LICENSE +21 -0
- package/README.md +95 -0
- package/dist/actions.json +334 -0
- package/dist/catalog.json +6615 -0
- package/dist/client.d.ts +17 -0
- package/dist/client.js +8 -0
- package/dist/components.d.ts +87 -0
- package/dist/components.js +87 -0
- package/dist/content-types.json +684 -0
- package/dist/core/dist/actions/mock-action.d.ts +24 -0
- package/dist/core/dist/actions/mock-action.js +28 -0
- package/dist/core/dist/actions/mock-action.js.map +1 -0
- package/dist/core/dist/actions/registry.d.ts +24 -0
- package/dist/core/dist/actions/registry.js +28 -0
- package/dist/core/dist/actions/registry.js.map +1 -0
- package/dist/core/dist/define-component.d.ts +100 -0
- package/dist/core/dist/define-component.js +8 -0
- package/dist/core/dist/define-component.js.map +1 -0
- package/dist/core/dist/define-content-type.d.ts +95 -0
- package/dist/core/dist/define-content-type.js +283 -0
- package/dist/core/dist/define-content-type.js.map +1 -0
- package/dist/core/dist/index.d.ts +7 -0
- package/dist/core/dist/index.js +5 -0
- package/dist/core/dist/schema/generated/schema.d.ts +28 -0
- package/dist/core/dist/types.d.ts +1 -0
- package/dist/docs/access-code-field.md +100 -0
- package/dist/docs/access-code-sign-in.md +174 -0
- package/dist/docs/account-entry-point.md +155 -0
- package/dist/docs/address-summary.md +50 -0
- package/dist/docs/buy-button.md +162 -0
- package/dist/docs/carousel.md +105 -0
- package/dist/docs/cart-item.md +162 -0
- package/dist/docs/cart-totalizer.md +197 -0
- package/dist/docs/cart.md +495 -0
- package/dist/docs/client-preferences.md +184 -0
- package/dist/docs/client-profile-form.md +192 -0
- package/dist/docs/client-profile.md +117 -0
- package/dist/docs/container.md +97 -0
- package/dist/docs/document-field.md +97 -0
- package/dist/docs/email-field.md +93 -0
- package/dist/docs/email-identification.md +102 -0
- package/dist/docs/footer-copyright.md +112 -0
- package/dist/docs/footer-link-group.md +162 -0
- package/dist/docs/footer-root.md +145 -0
- package/dist/docs/footer-social.md +151 -0
- package/dist/docs/free-shipping-progress.md +87 -0
- package/dist/docs/gallery.md +84 -0
- package/dist/docs/header-root.md +150 -0
- package/dist/docs/identity-edit.md +88 -0
- package/dist/docs/identity-summary.md +106 -0
- package/dist/docs/incentives.md +151 -0
- package/dist/docs/logo.md +135 -0
- package/dist/docs/meter.md +67 -0
- package/dist/docs/navigation-link-list.md +171 -0
- package/dist/docs/navigation-link.md +163 -0
- package/dist/docs/navigation-menu.md +264 -0
- package/dist/docs/payment-methods.md +139 -0
- package/dist/docs/phone-field.md +106 -0
- package/dist/docs/postal-code-field.md +126 -0
- package/dist/docs/pricing.md +499 -0
- package/dist/docs/product-gallery.md +409 -0
- package/dist/docs/product-information.md +295 -0
- package/dist/docs/product-list.md +170 -0
- package/dist/docs/product-quantity.md +88 -0
- package/dist/docs/product-shelf.md +141 -0
- package/dist/docs/promotion.md +109 -0
- package/dist/docs/region.md +225 -0
- package/dist/docs/session.md +123 -0
- package/dist/docs/shipping-address.md +390 -0
- package/dist/docs/shipping-simulator.md +147 -0
- package/dist/docs/sign-in-form.md +117 -0
- package/dist/docs/tabs.md +176 -0
- package/dist/docs/toast.md +124 -0
- package/dist/docs/variant-selector.md +450 -0
- package/dist/graphql/define-subgraph.d.ts +12 -0
- package/dist/graphql/define-subgraph.js +15 -0
- package/dist/graphql/define-subgraph.js.map +1 -0
- package/dist/graphql/gql.d.ts +10 -0
- package/dist/graphql/gql.js +16 -0
- package/dist/graphql/gql.js.map +1 -0
- package/dist/graphql/types.d.ts +88 -0
- package/dist/graphql.d.ts +4 -0
- package/dist/graphql.js +3 -0
- package/dist/index.d.ts +19 -0
- package/dist/index.js +5 -0
- package/dist/internal/client.d.ts +24 -0
- package/dist/internal/client.js +23 -0
- package/dist/internal/content.d.ts +2 -0
- package/dist/internal/content.js +2 -0
- package/dist/internal/server.d.ts +7 -0
- package/dist/internal/server.js +6 -0
- package/dist/matter/access-code-sign-in/access-code-sign-in.d.ts +111 -0
- package/dist/matter/access-code-sign-in/access-code-sign-in.js +387 -0
- package/dist/matter/access-code-sign-in/access-code-sign-in.js.map +1 -0
- package/dist/matter/account-entry-point/account-entry-point.d.ts +64 -0
- package/dist/matter/account-entry-point/account-entry-point.js +151 -0
- package/dist/matter/account-entry-point/account-entry-point.js.map +1 -0
- package/dist/matter/breadcrumb/breadcrumb.d.ts +40 -0
- package/dist/matter/breadcrumb/breadcrumb.js +155 -0
- package/dist/matter/breadcrumb/breadcrumb.js.map +1 -0
- package/dist/matter/buy-button/buy-button.d.ts +95 -0
- package/dist/matter/buy-button/buy-button.js +259 -0
- package/dist/matter/buy-button/buy-button.js.map +1 -0
- package/dist/matter/cart/cart-namespace.d.ts +48 -0
- package/dist/matter/cart/cart-namespace.js +50 -0
- package/dist/matter/cart/cart-namespace.js.map +1 -0
- package/dist/matter/cart/cart.d.ts +312 -0
- package/dist/matter/cart/cart.js +1034 -0
- package/dist/matter/cart/cart.js.map +1 -0
- package/dist/matter/cart-item/cart-item.d.ts +103 -0
- package/dist/matter/cart-item/cart-item.js +672 -0
- package/dist/matter/cart-item/cart-item.js.map +1 -0
- package/dist/matter/cart-item-compositions/cart-item-compositions.d.ts +49 -0
- package/dist/matter/cart-item-compositions/cart-item-compositions.js +165 -0
- package/dist/matter/cart-item-compositions/cart-item-compositions.js.map +1 -0
- package/dist/matter/cart-item-customizations/cart-item-customizations.d.ts +28 -0
- package/dist/matter/cart-item-customizations/cart-item-customizations.js +73 -0
- package/dist/matter/cart-item-customizations/cart-item-customizations.js.map +1 -0
- package/dist/matter/cart-item-discounts/cart-item-discounts.d.ts +33 -0
- package/dist/matter/cart-item-discounts/cart-item-discounts.js +70 -0
- package/dist/matter/cart-item-discounts/cart-item-discounts.js.map +1 -0
- package/dist/matter/cart-item-seller-info/cart-item-seller-info.d.ts +24 -0
- package/dist/matter/cart-item-seller-info/cart-item-seller-info.js +54 -0
- package/dist/matter/cart-item-seller-info/cart-item-seller-info.js.map +1 -0
- package/dist/matter/cart-item-variations/cart-item-variations.d.ts +27 -0
- package/dist/matter/cart-item-variations/cart-item-variations.js +69 -0
- package/dist/matter/cart-item-variations/cart-item-variations.js.map +1 -0
- package/dist/matter/cart-totalizer/cart-totalizer.d.ts +78 -0
- package/dist/matter/cart-totalizer/cart-totalizer.js +220 -0
- package/dist/matter/cart-totalizer/cart-totalizer.js.map +1 -0
- package/dist/matter/client-preferences/client-preferences.d.ts +50 -0
- package/dist/matter/client-preferences/client-preferences.js +206 -0
- package/dist/matter/client-preferences/client-preferences.js.map +1 -0
- package/dist/matter/client-profile/client-profile.d.ts +59 -0
- package/dist/matter/client-profile/client-profile.js +185 -0
- package/dist/matter/client-profile/client-profile.js.map +1 -0
- package/dist/matter/client-profile-form/client-profile-form.d.ts +126 -0
- package/dist/matter/client-profile-form/client-profile-form.js +660 -0
- package/dist/matter/client-profile-form/client-profile-form.js.map +1 -0
- package/dist/matter/delivery-options/delivery-options-accordion.d.ts +30 -0
- package/dist/matter/delivery-options/delivery-options-accordion.js +189 -0
- package/dist/matter/delivery-options/delivery-options-accordion.js.map +1 -0
- package/dist/matter/delivery-options/delivery-options-controller.d.ts +49 -0
- package/dist/matter/delivery-options/delivery-options-controller.js +203 -0
- package/dist/matter/delivery-options/delivery-options-controller.js.map +1 -0
- package/dist/matter/delivery-options/delivery-options.d.ts +31 -0
- package/dist/matter/delivery-options/delivery-options.js +103 -0
- package/dist/matter/delivery-options/delivery-options.js.map +1 -0
- package/dist/matter/delivery-options/use-delivery-option-selection.d.ts +9 -0
- package/dist/matter/delivery-options/use-delivery-option-selection.js +76 -0
- package/dist/matter/delivery-options/use-delivery-option-selection.js.map +1 -0
- package/dist/matter/email-identification/email-identification.d.ts +37 -0
- package/dist/matter/email-identification/email-identification.js +111 -0
- package/dist/matter/email-identification/email-identification.js.map +1 -0
- package/dist/matter/free-shipping-progress/free-shipping-progress.d.ts +44 -0
- package/dist/matter/free-shipping-progress/free-shipping-progress.js +170 -0
- package/dist/matter/free-shipping-progress/free-shipping-progress.js.map +1 -0
- package/dist/matter/identity-edit/identity-edit.d.ts +52 -0
- package/dist/matter/identity-edit/identity-edit.js +148 -0
- package/dist/matter/identity-edit/identity-edit.js.map +1 -0
- package/dist/matter/identity-summary/identity-summary.d.ts +128 -0
- package/dist/matter/identity-summary/identity-summary.js +344 -0
- package/dist/matter/identity-summary/identity-summary.js.map +1 -0
- package/dist/matter/pricing/pricing.d.ts +162 -0
- package/dist/matter/pricing/pricing.js +793 -0
- package/dist/matter/pricing/pricing.js.map +1 -0
- package/dist/matter/product-gallery/product-gallery.d.ts +23 -0
- package/dist/matter/product-gallery/product-gallery.js +188 -0
- package/dist/matter/product-gallery/product-gallery.js.map +1 -0
- package/dist/matter/product-information/product-information.d.ts +61 -0
- package/dist/matter/product-information/product-information.js +355 -0
- package/dist/matter/product-information/product-information.js.map +1 -0
- package/dist/matter/product-list/product-list.d.ts +86 -0
- package/dist/matter/product-list/product-list.js +342 -0
- package/dist/matter/product-list/product-list.js.map +1 -0
- package/dist/matter/product-quantity/product-quantity.d.ts +50 -0
- package/dist/matter/product-quantity/product-quantity.js +111 -0
- package/dist/matter/product-quantity/product-quantity.js.map +1 -0
- package/dist/matter/product-shelf/product-shelf.d.ts +125 -0
- package/dist/matter/product-shelf/product-shelf.js +376 -0
- package/dist/matter/product-shelf/product-shelf.js.map +1 -0
- package/dist/matter/region/region.d.ts +211 -0
- package/dist/matter/region/region.js +579 -0
- package/dist/matter/region/region.js.map +1 -0
- package/dist/matter/session/session.d.ts +58 -0
- package/dist/matter/session/session.js +112 -0
- package/dist/matter/session/session.js.map +1 -0
- package/dist/matter/shipping-address/country-descriptors.js +101 -0
- package/dist/matter/shipping-address/country-descriptors.js.map +1 -0
- package/dist/matter/shipping-address/shipping-address.d.ts +284 -0
- package/dist/matter/shipping-address/shipping-address.js +1036 -0
- package/dist/matter/shipping-address/shipping-address.js.map +1 -0
- package/dist/matter/shipping-simulator/shipping-simulator.d.ts +143 -0
- package/dist/matter/shipping-simulator/shipping-simulator.js +644 -0
- package/dist/matter/shipping-simulator/shipping-simulator.js.map +1 -0
- package/dist/matter/sign-in-form/sign-in-form.d.ts +79 -0
- package/dist/matter/sign-in-form/sign-in-form.js +226 -0
- package/dist/matter/sign-in-form/sign-in-form.js.map +1 -0
- package/dist/matter/variant-selector/variant-selector.d.ts +183 -0
- package/dist/matter/variant-selector/variant-selector.js +840 -0
- package/dist/matter/variant-selector/variant-selector.js.map +1 -0
- package/dist/message-locales.json +7 -0
- package/dist/particles/access-code-field/access-code-field.d.ts +33 -0
- package/dist/particles/access-code-field/access-code-field.js +95 -0
- package/dist/particles/access-code-field/access-code-field.js.map +1 -0
- package/dist/particles/accordion/accordion.d.ts +45 -0
- package/dist/particles/accordion/accordion.js +156 -0
- package/dist/particles/accordion/accordion.js.map +1 -0
- package/dist/particles/address-summary/address-summary.d.ts +50 -0
- package/dist/particles/address-summary/address-summary.js +129 -0
- package/dist/particles/address-summary/address-summary.js.map +1 -0
- package/dist/particles/badge/badge.d.ts +10 -0
- package/dist/particles/badge/badge.js +27 -0
- package/dist/particles/badge/badge.js.map +1 -0
- package/dist/particles/button/button.d.ts +18 -0
- package/dist/particles/button/button.js +37 -0
- package/dist/particles/button/button.js.map +1 -0
- package/dist/particles/carousel/carousel.d.ts +60 -0
- package/dist/particles/carousel/carousel.js +335 -0
- package/dist/particles/carousel/carousel.js.map +1 -0
- package/dist/particles/checkbox/checkbox.d.ts +40 -0
- package/dist/particles/checkbox/checkbox.js +82 -0
- package/dist/particles/checkbox/checkbox.js.map +1 -0
- package/dist/particles/container/container.d.ts +20 -0
- package/dist/particles/container/container.js +36 -0
- package/dist/particles/container/container.js.map +1 -0
- package/dist/particles/dialog/dialog.d.ts +54 -0
- package/dist/particles/dialog/dialog.js +192 -0
- package/dist/particles/dialog/dialog.js.map +1 -0
- package/dist/particles/document-field/document-field.d.ts +61 -0
- package/dist/particles/document-field/document-field.js +146 -0
- package/dist/particles/document-field/document-field.js.map +1 -0
- package/dist/particles/drawer/drawer.d.ts +52 -0
- package/dist/particles/drawer/drawer.js +183 -0
- package/dist/particles/drawer/drawer.js.map +1 -0
- package/dist/particles/email-field/email-field.d.ts +37 -0
- package/dist/particles/email-field/email-field.js +106 -0
- package/dist/particles/email-field/email-field.js.map +1 -0
- package/dist/particles/field/field.d.ts +50 -0
- package/dist/particles/field/field.js +133 -0
- package/dist/particles/field/field.js.map +1 -0
- package/dist/particles/fieldset/fieldset.d.ts +16 -0
- package/dist/particles/fieldset/fieldset.js +52 -0
- package/dist/particles/fieldset/fieldset.js.map +1 -0
- package/dist/particles/footer-copyright/footer-copyright.d.ts +32 -0
- package/dist/particles/footer-copyright/footer-copyright.js +50 -0
- package/dist/particles/footer-copyright/footer-copyright.js.map +1 -0
- package/dist/particles/footer-link-group/footer-link-group.d.ts +66 -0
- package/dist/particles/footer-link-group/footer-link-group.js +154 -0
- package/dist/particles/footer-link-group/footer-link-group.js.map +1 -0
- package/dist/particles/footer-root/footer-root.d.ts +21 -0
- package/dist/particles/footer-root/footer-root.js +38 -0
- package/dist/particles/footer-root/footer-root.js.map +1 -0
- package/dist/particles/footer-social/footer-social.d.ts +79 -0
- package/dist/particles/footer-social/footer-social.js +176 -0
- package/dist/particles/footer-social/footer-social.js.map +1 -0
- package/dist/particles/gallery/gallery.d.ts +181 -0
- package/dist/particles/gallery/gallery.js +920 -0
- package/dist/particles/gallery/gallery.js.map +1 -0
- package/dist/particles/header-root/header-root.d.ts +21 -0
- package/dist/particles/header-root/header-root.js +38 -0
- package/dist/particles/header-root/header-root.js.map +1 -0
- package/dist/particles/icon/icon.d.ts +22 -0
- package/dist/particles/icon/icon.js +48 -0
- package/dist/particles/icon/icon.js.map +1 -0
- package/dist/particles/image/image.d.ts +13 -0
- package/dist/particles/image/image.js +59 -0
- package/dist/particles/image/image.js.map +1 -0
- package/dist/particles/incentives/incentives.d.ts +85 -0
- package/dist/particles/incentives/incentives.js +200 -0
- package/dist/particles/incentives/incentives.js.map +1 -0
- package/dist/particles/input/input.d.ts +9 -0
- package/dist/particles/input/input.js +28 -0
- package/dist/particles/input/input.js.map +1 -0
- package/dist/particles/logo/logo.d.ts +55 -0
- package/dist/particles/logo/logo.js +96 -0
- package/dist/particles/logo/logo.js.map +1 -0
- package/dist/particles/menu/menu.d.ts +103 -0
- package/dist/particles/menu/menu.js +409 -0
- package/dist/particles/menu/menu.js.map +1 -0
- package/dist/particles/menubar/menubar.d.ts +18 -0
- package/dist/particles/menubar/menubar.js +42 -0
- package/dist/particles/menubar/menubar.js.map +1 -0
- package/dist/particles/meter/meter.d.ts +36 -0
- package/dist/particles/meter/meter.js +132 -0
- package/dist/particles/meter/meter.js.map +1 -0
- package/dist/particles/navigation-link/navigation-link.d.ts +43 -0
- package/dist/particles/navigation-link/navigation-link.js +82 -0
- package/dist/particles/navigation-link/navigation-link.js.map +1 -0
- package/dist/particles/navigation-link-list/navigation-link-list.d.ts +59 -0
- package/dist/particles/navigation-link-list/navigation-link-list.js +103 -0
- package/dist/particles/navigation-link-list/navigation-link-list.js.map +1 -0
- package/dist/particles/navigation-menu/navigation-menu.d.ts +78 -0
- package/dist/particles/navigation-menu/navigation-menu.js +295 -0
- package/dist/particles/navigation-menu/navigation-menu.js.map +1 -0
- package/dist/particles/number-field/number-field.d.ts +46 -0
- package/dist/particles/number-field/number-field.js +169 -0
- package/dist/particles/number-field/number-field.js.map +1 -0
- package/dist/particles/password-field/password-field.d.ts +31 -0
- package/dist/particles/password-field/password-field.js +109 -0
- package/dist/particles/password-field/password-field.js.map +1 -0
- package/dist/particles/payment-methods/payment-methods.d.ts +72 -0
- package/dist/particles/payment-methods/payment-methods.js +151 -0
- package/dist/particles/payment-methods/payment-methods.js.map +1 -0
- package/dist/particles/phone-field/phone-field.d.ts +67 -0
- package/dist/particles/phone-field/phone-field.js +250 -0
- package/dist/particles/phone-field/phone-field.js.map +1 -0
- package/dist/particles/popover/popover.d.ts +68 -0
- package/dist/particles/popover/popover.js +284 -0
- package/dist/particles/popover/popover.js.map +1 -0
- package/dist/particles/postal-code-field/postal-code-field.d.ts +75 -0
- package/dist/particles/postal-code-field/postal-code-field.js +169 -0
- package/dist/particles/postal-code-field/postal-code-field.js.map +1 -0
- package/dist/particles/promotion/promotion.d.ts +46 -0
- package/dist/particles/promotion/promotion.js +78 -0
- package/dist/particles/promotion/promotion.js.map +1 -0
- package/dist/particles/quantity-selector/quantity-selector.d.ts +30 -0
- package/dist/particles/quantity-selector/quantity-selector.js +116 -0
- package/dist/particles/quantity-selector/quantity-selector.js.map +1 -0
- package/dist/particles/radio/radio.d.ts +36 -0
- package/dist/particles/radio/radio.js +76 -0
- package/dist/particles/radio/radio.js.map +1 -0
- package/dist/particles/scroll-area/scroll-area.d.ts +36 -0
- package/dist/particles/scroll-area/scroll-area.js +145 -0
- package/dist/particles/scroll-area/scroll-area.js.map +1 -0
- package/dist/particles/select/select.d.ts +125 -0
- package/dist/particles/select/select.js +478 -0
- package/dist/particles/select/select.js.map +1 -0
- package/dist/particles/separator/separator.d.ts +12 -0
- package/dist/particles/separator/separator.js +33 -0
- package/dist/particles/separator/separator.js.map +1 -0
- package/dist/particles/shared/input-mask.d.ts +5 -0
- package/dist/particles/shared/input-mask.js +58 -0
- package/dist/particles/shared/input-mask.js.map +1 -0
- package/dist/particles/spinner/spinner.d.ts +13 -0
- package/dist/particles/spinner/spinner.js +31 -0
- package/dist/particles/spinner/spinner.js.map +1 -0
- package/dist/particles/switch/switch.d.ts +27 -0
- package/dist/particles/switch/switch.js +59 -0
- package/dist/particles/switch/switch.js.map +1 -0
- package/dist/particles/tabs/tabs.d.ts +45 -0
- package/dist/particles/tabs/tabs.js +164 -0
- package/dist/particles/tabs/tabs.js.map +1 -0
- package/dist/particles/text/text.d.ts +24 -0
- package/dist/particles/text/text.js +40 -0
- package/dist/particles/text/text.js.map +1 -0
- package/dist/particles/toast/toast.d.ts +83 -0
- package/dist/particles/toast/toast.js +194 -0
- package/dist/particles/toast/toast.js.map +1 -0
- package/dist/particles/toggle/toggle.d.ts +26 -0
- package/dist/particles/toggle/toggle.js +61 -0
- package/dist/particles/toggle/toggle.js.map +1 -0
- package/dist/particles/tooltip/tooltip.d.ts +61 -0
- package/dist/particles/tooltip/tooltip.js +240 -0
- package/dist/particles/tooltip/tooltip.js.map +1 -0
- package/dist/schema.graphql +2953 -0
- package/dist/sdk/actions/cart-action-provider.d.ts +19 -0
- package/dist/sdk/actions/cart-action-provider.js +23 -0
- package/dist/sdk/actions/cart-action-provider.js.map +1 -0
- package/dist/sdk/actions/identity-action-provider.d.ts +15 -0
- package/dist/sdk/actions/identity-action-provider.js +19 -0
- package/dist/sdk/actions/identity-action-provider.js.map +1 -0
- package/dist/sdk/actions/index.d.ts +7 -0
- package/dist/sdk/actions/index.js +6 -0
- package/dist/sdk/actions/inject-actions.d.ts +14 -0
- package/dist/sdk/actions/inject-actions.js +36 -0
- package/dist/sdk/actions/inject-actions.js.map +1 -0
- package/dist/sdk/actions/region-action-provider.d.ts +15 -0
- package/dist/sdk/actions/region-action-provider.js +19 -0
- package/dist/sdk/actions/region-action-provider.js.map +1 -0
- package/dist/sdk/actions/session-action-provider.d.ts +15 -0
- package/dist/sdk/actions/session-action-provider.js +19 -0
- package/dist/sdk/actions/session-action-provider.js.map +1 -0
- package/dist/sdk/actions/shipping-action-provider.d.ts +15 -0
- package/dist/sdk/actions/shipping-action-provider.js +19 -0
- package/dist/sdk/actions/shipping-action-provider.js.map +1 -0
- package/dist/sdk/actions/types.d.ts +21 -0
- package/dist/sdk/cache/storefront-cache.js +35 -0
- package/dist/sdk/cache/storefront-cache.js.map +1 -0
- package/dist/sdk/cart/operations.d.ts +31 -0
- package/dist/sdk/cart/operations.js +215 -0
- package/dist/sdk/cart/operations.js.map +1 -0
- package/dist/sdk/cart/optimistic.d.ts +24 -0
- package/dist/sdk/cart/optimistic.js +164 -0
- package/dist/sdk/cart/optimistic.js.map +1 -0
- package/dist/sdk/cart/use-cart-actions.d.ts +56 -0
- package/dist/sdk/cart/use-cart-actions.js +348 -0
- package/dist/sdk/cart/use-cart-actions.js.map +1 -0
- package/dist/sdk/cart/use-cart-validate-on-open.js +50 -0
- package/dist/sdk/cart/use-cart-validate-on-open.js.map +1 -0
- package/dist/sdk/cart/write-gate.js +54 -0
- package/dist/sdk/cart/write-gate.js.map +1 -0
- package/dist/sdk/client/assert-api-url.js +20 -0
- package/dist/sdk/client/assert-api-url.js.map +1 -0
- package/dist/sdk/client/create-client.d.ts +23 -0
- package/dist/sdk/client/create-client.js +46 -0
- package/dist/sdk/client/create-client.js.map +1 -0
- package/dist/sdk/client/fetch-page-data.d.ts +39 -0
- package/dist/sdk/client/fetch-page-data.js +33 -0
- package/dist/sdk/client/fetch-page-data.js.map +1 -0
- package/dist/sdk/client/register-preload-query.d.ts +24 -0
- package/dist/sdk/client/register-preload-query.js +33 -0
- package/dist/sdk/client/register-preload-query.js.map +1 -0
- package/dist/sdk/content/create-content-runtime.d.ts +68 -0
- package/dist/sdk/content/create-content-runtime.js +503 -0
- package/dist/sdk/content/create-content-runtime.js.map +1 -0
- package/dist/sdk/context/headers.d.ts +15 -0
- package/dist/sdk/context/headers.js +21 -0
- package/dist/sdk/context/headers.js.map +1 -0
- package/dist/sdk/context/storefront-context.d.ts +11 -0
- package/dist/sdk/context/storefront-context.js +29 -0
- package/dist/sdk/context/storefront-context.js.map +1 -0
- package/dist/sdk/data/data-override-context.d.ts +12 -0
- package/dist/sdk/data/data-override-context.js +19 -0
- package/dist/sdk/data/data-override-context.js.map +1 -0
- package/dist/sdk/data/entity-subscriber.js +28 -0
- package/dist/sdk/data/entity-subscriber.js.map +1 -0
- package/dist/sdk/data/hot-data-provider.d.ts +19 -0
- package/dist/sdk/data/hot-data-provider.js +33 -0
- package/dist/sdk/data/hot-data-provider.js.map +1 -0
- package/dist/sdk/data/index.d.ts +8 -0
- package/dist/sdk/data/index.js +8 -0
- package/dist/sdk/data/list-item-ref-context.d.ts +20 -0
- package/dist/sdk/data/list-item-ref-context.js +11 -0
- package/dist/sdk/data/list-item-ref-context.js.map +1 -0
- package/dist/sdk/data/multiple-reactive-data-provider.d.ts +32 -0
- package/dist/sdk/data/multiple-reactive-data-provider.js +20 -0
- package/dist/sdk/data/multiple-reactive-data-provider.js.map +1 -0
- package/dist/sdk/data/page-reactive-data-root.d.ts +53 -0
- package/dist/sdk/data/page-reactive-data-root.js +153 -0
- package/dist/sdk/data/page-reactive-data-root.js.map +1 -0
- package/dist/sdk/data/reactive-data-provider.d.ts +25 -0
- package/dist/sdk/data/reactive-data-provider.js +24 -0
- package/dist/sdk/data/reactive-data-provider.js.map +1 -0
- package/dist/sdk/data/reactive-list-item-data-provider.d.ts +26 -0
- package/dist/sdk/data/reactive-list-item-data-provider.js +42 -0
- package/dist/sdk/data/reactive-list-item-data-provider.js.map +1 -0
- package/dist/sdk/data/use-reactive-entity.js +40 -0
- package/dist/sdk/data/use-reactive-entity.js.map +1 -0
- package/dist/sdk/format/client.d.ts +12 -0
- package/dist/sdk/format/client.js +20 -0
- package/dist/sdk/format/client.js.map +1 -0
- package/dist/sdk/format/formatters.d.ts +32 -0
- package/dist/sdk/format/formatters.js +45 -0
- package/dist/sdk/format/formatters.js.map +1 -0
- package/dist/sdk/generated/fragment-types.js +23 -0
- package/dist/sdk/generated/fragment-types.js.map +1 -0
- package/dist/sdk/generated/gql.js +51 -0
- package/dist/sdk/generated/gql.js.map +1 -0
- package/dist/sdk/generated/graphql.d.ts +622 -0
- package/dist/sdk/generated/graphql.js +11917 -0
- package/dist/sdk/generated/graphql.js.map +1 -0
- package/dist/sdk/graphql-tag.d.ts +10 -0
- package/dist/sdk/graphql-tag.js +21 -0
- package/dist/sdk/graphql-tag.js.map +1 -0
- package/dist/sdk/i18n/client.d.ts +4 -0
- package/dist/sdk/i18n/client.js +4 -0
- package/dist/sdk/i18n/locales.d.ts +8 -0
- package/dist/sdk/i18n/locales.js +57 -0
- package/dist/sdk/i18n/locales.js.map +1 -0
- package/dist/sdk/i18n/messages/en-US.js +24 -0
- package/dist/sdk/i18n/messages/en-US.js.map +1 -0
- package/dist/sdk/i18n/messages/en-US.json +19 -0
- package/dist/sdk/i18n/messages/en-US.json.d.ts +23 -0
- package/dist/sdk/i18n/messages/es-ES.js +24 -0
- package/dist/sdk/i18n/messages/es-ES.js.map +1 -0
- package/dist/sdk/i18n/messages/es-ES.json +19 -0
- package/dist/sdk/i18n/messages/pt-BR.js +24 -0
- package/dist/sdk/i18n/messages/pt-BR.js.map +1 -0
- package/dist/sdk/i18n/messages/pt-BR.json +19 -0
- package/dist/sdk/i18n/provider.d.ts +1 -0
- package/dist/sdk/i18n/provider.js +30 -0
- package/dist/sdk/i18n/provider.js.map +1 -0
- package/dist/sdk/i18n/server.d.ts +28 -0
- package/dist/sdk/i18n/server.js +59 -0
- package/dist/sdk/i18n/server.js.map +1 -0
- package/dist/sdk/identity/operations.d.ts +34 -0
- package/dist/sdk/identity/operations.js +78 -0
- package/dist/sdk/identity/operations.js.map +1 -0
- package/dist/sdk/identity/use-identity-actions.d.ts +62 -0
- package/dist/sdk/identity/use-identity-actions.js +180 -0
- package/dist/sdk/identity/use-identity-actions.js.map +1 -0
- package/dist/sdk/provider/index.d.ts +2 -0
- package/dist/sdk/provider/index.js +2 -0
- package/dist/sdk/provider/storefront-provider.d.ts +32 -0
- package/dist/sdk/provider/storefront-provider.js +111 -0
- package/dist/sdk/provider/storefront-provider.js.map +1 -0
- package/dist/sdk/region/operations.d.ts +6 -0
- package/dist/sdk/region/region-operations.d.ts +30 -0
- package/dist/sdk/region/region-operations.js +23 -0
- package/dist/sdk/region/region-operations.js.map +1 -0
- package/dist/sdk/region/use-region-actions.d.ts +23 -0
- package/dist/sdk/region/use-region-actions.js +66 -0
- package/dist/sdk/region/use-region-actions.js.map +1 -0
- package/dist/sdk/seller.js +11 -0
- package/dist/sdk/seller.js.map +1 -0
- package/dist/sdk/session/auth-operations.d.ts +47 -0
- package/dist/sdk/session/auth-operations.js +79 -0
- package/dist/sdk/session/auth-operations.js.map +1 -0
- package/dist/sdk/session/operations.d.ts +6 -0
- package/dist/sdk/session/use-session-actions.d.ts +27 -0
- package/dist/sdk/session/use-session-actions.js +126 -0
- package/dist/sdk/session/use-session-actions.js.map +1 -0
- package/dist/sdk/shipping/cart-operations.d.ts +3 -0
- package/dist/sdk/shipping/cart-operations.js +33 -0
- package/dist/sdk/shipping/cart-operations.js.map +1 -0
- package/dist/sdk/shipping/operations.d.ts +3 -0
- package/dist/sdk/shipping/operations.js +33 -0
- package/dist/sdk/shipping/operations.js.map +1 -0
- package/dist/sdk/shipping/option-select-operations.d.ts +24 -0
- package/dist/sdk/shipping/option-select-operations.js +45 -0
- package/dist/sdk/shipping/option-select-operations.js.map +1 -0
- package/dist/sdk/shipping/request-timeout.js +41 -0
- package/dist/sdk/shipping/request-timeout.js.map +1 -0
- package/dist/sdk/shipping/shipping-operations.d.ts +38 -0
- package/dist/sdk/shipping/shipping-operations.js +77 -0
- package/dist/sdk/shipping/shipping-operations.js.map +1 -0
- package/dist/sdk/shipping/use-cart-shipping-simulation.d.ts +7 -0
- package/dist/sdk/shipping/use-cart-shipping-simulation.js +72 -0
- package/dist/sdk/shipping/use-cart-shipping-simulation.js.map +1 -0
- package/dist/sdk/shipping/use-shipping-actions.d.ts +27 -0
- package/dist/sdk/shipping/use-shipping-actions.js +113 -0
- package/dist/sdk/shipping/use-shipping-actions.js.map +1 -0
- package/dist/sdk/shipping/use-shipping-simulation.d.ts +7 -0
- package/dist/sdk/shipping/use-shipping-simulation.js +72 -0
- package/dist/sdk/shipping/use-shipping-simulation.js.map +1 -0
- package/dist/sdk/state/cart.d.ts +42 -0
- package/dist/sdk/state/cart.js +64 -0
- package/dist/sdk/state/cart.js.map +1 -0
- package/dist/sdk/state/index.js +3 -0
- package/dist/sdk/state/variant-selector.d.ts +17 -0
- package/dist/sdk/state/variant-selector.js +14 -0
- package/dist/sdk/state/variant-selector.js.map +1 -0
- package/dist/utils/safe-href.js +63 -0
- package/dist/utils/safe-href.js.map +1 -0
- package/package.json +84 -0
- package/src/styles/tailwind.css +32 -0
|
@@ -0,0 +1,672 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { defineComponent } from "../../core/dist/define-component.js";
|
|
3
|
+
import "../../core/dist/index.js";
|
|
4
|
+
import { useStorefrontContext } from "../../sdk/context/storefront-context.js";
|
|
5
|
+
import { graphql } from "../../sdk/generated/gql.js";
|
|
6
|
+
import { useDataOverride } from "../../sdk/data/data-override-context.js";
|
|
7
|
+
import { resolveSafeHref } from "../../utils/safe-href.js";
|
|
8
|
+
import { NavigationLink } from "../../particles/navigation-link/navigation-link.js";
|
|
9
|
+
import { formatPrice } from "../cart/cart.js";
|
|
10
|
+
import { createContext, useContext, useState } from "react";
|
|
11
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
12
|
+
import { NumberField } from "@base-ui/react/number-field";
|
|
13
|
+
//#region src/matter/cart-item/cart-item.tsx
|
|
14
|
+
const fragment = graphql(`
|
|
15
|
+
fragment CartItemRootData on Query {
|
|
16
|
+
cart {
|
|
17
|
+
items {
|
|
18
|
+
__typename
|
|
19
|
+
id
|
|
20
|
+
quantity
|
|
21
|
+
price {
|
|
22
|
+
amount
|
|
23
|
+
currencyCode
|
|
24
|
+
}
|
|
25
|
+
listPrice {
|
|
26
|
+
amount
|
|
27
|
+
currencyCode
|
|
28
|
+
}
|
|
29
|
+
sellingPrice {
|
|
30
|
+
amount
|
|
31
|
+
currencyCode
|
|
32
|
+
}
|
|
33
|
+
gift
|
|
34
|
+
ownTotal {
|
|
35
|
+
...MoneyFragment
|
|
36
|
+
}
|
|
37
|
+
total {
|
|
38
|
+
...MoneyFragment
|
|
39
|
+
}
|
|
40
|
+
variant {
|
|
41
|
+
__typename
|
|
42
|
+
variantId
|
|
43
|
+
sku
|
|
44
|
+
name
|
|
45
|
+
image {
|
|
46
|
+
url
|
|
47
|
+
altText
|
|
48
|
+
}
|
|
49
|
+
availability
|
|
50
|
+
}
|
|
51
|
+
product {
|
|
52
|
+
__typename
|
|
53
|
+
productId
|
|
54
|
+
title
|
|
55
|
+
detailUrl
|
|
56
|
+
categories {
|
|
57
|
+
categoryId
|
|
58
|
+
name
|
|
59
|
+
}
|
|
60
|
+
brand {
|
|
61
|
+
brandId
|
|
62
|
+
name
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
`);
|
|
69
|
+
const cartItemQuantityFragment = graphql(`
|
|
70
|
+
fragment CartItemQuantityData on Query {
|
|
71
|
+
cart {
|
|
72
|
+
items {
|
|
73
|
+
__typename
|
|
74
|
+
id
|
|
75
|
+
variant {
|
|
76
|
+
__typename
|
|
77
|
+
unitMultiplier
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
`);
|
|
83
|
+
const CartItemContext = createContext(null);
|
|
84
|
+
function useCartItem() {
|
|
85
|
+
const item = useContext(CartItemContext);
|
|
86
|
+
if (!item) throw new Error("Cart item components must be used inside a <CartItemRoot> subtree.");
|
|
87
|
+
return item;
|
|
88
|
+
}
|
|
89
|
+
const CartItemRootDefinition = defineComponent({
|
|
90
|
+
name: "CartItemRoot",
|
|
91
|
+
importPath: "@vtex/faststore/components",
|
|
92
|
+
component: CartItemRoot,
|
|
93
|
+
fragment,
|
|
94
|
+
fetchStrategy: "reactive-list-item",
|
|
95
|
+
requiresContext: "cart-item",
|
|
96
|
+
providesContext: "cart-item-data",
|
|
97
|
+
editor: {
|
|
98
|
+
label: "Cart Item Root",
|
|
99
|
+
category: "commerce"
|
|
100
|
+
},
|
|
101
|
+
schema: {},
|
|
102
|
+
guideline: "Per-line data provider for the cart line-item template: place it directly inside CartList, wrapping the CartItem* particles (CartItemImage, CartItemName, CartItemPrice, the CartItemQuantity stepper, CartItemRemove, …). It owns the core per-item fields and delivers each line its own slice, so the core particles must sit inside it. Must be inside CartList. See cart-item.md."
|
|
103
|
+
});
|
|
104
|
+
const CartItemImageDefinition = defineComponent({
|
|
105
|
+
name: "CartItemImage",
|
|
106
|
+
importPath: "@vtex/faststore/components",
|
|
107
|
+
component: CartItemImage,
|
|
108
|
+
requiresContext: "cart-item-data",
|
|
109
|
+
editor: {
|
|
110
|
+
label: "Cart Item Image",
|
|
111
|
+
category: "commerce"
|
|
112
|
+
},
|
|
113
|
+
schema: { objectFit: {
|
|
114
|
+
type: [
|
|
115
|
+
"contain",
|
|
116
|
+
"cover",
|
|
117
|
+
"fill",
|
|
118
|
+
"none"
|
|
119
|
+
],
|
|
120
|
+
default: "contain",
|
|
121
|
+
label: "Object Fit"
|
|
122
|
+
} },
|
|
123
|
+
guideline: "Renders the product image from the cart item. Must be inside CartItemRoot."
|
|
124
|
+
});
|
|
125
|
+
const CartItemProductLinkDefinition = defineComponent({
|
|
126
|
+
name: "CartItemProductLink",
|
|
127
|
+
importPath: "@vtex/faststore/components",
|
|
128
|
+
component: CartItemProductLink,
|
|
129
|
+
requiresContext: "cart-item-data",
|
|
130
|
+
editor: {
|
|
131
|
+
label: "Cart Item Product Link",
|
|
132
|
+
category: "commerce"
|
|
133
|
+
},
|
|
134
|
+
schema: {},
|
|
135
|
+
guideline: "Links the cart line image to its product page, using the product URL the line already carries: place it inside CartItemRoot wrapping CartItemImage. Whether a line links is decided by placing this element, so there is no prop to toggle it — a checkout line simply omits it. Renders its children unwrapped when the line has no image or no usable product URL, so it never leaves an empty or unsafe link. Navigation is same-tab, and the leaf adds no fields to the page query. Must be inside CartItemRoot. See cart-item.md."
|
|
136
|
+
});
|
|
137
|
+
const CartItemNameDefinition = defineComponent({
|
|
138
|
+
name: "CartItemName",
|
|
139
|
+
importPath: "@vtex/faststore/components",
|
|
140
|
+
component: CartItemName,
|
|
141
|
+
requiresContext: "cart-item-data",
|
|
142
|
+
editor: {
|
|
143
|
+
label: "Cart Item Name",
|
|
144
|
+
category: "commerce"
|
|
145
|
+
},
|
|
146
|
+
schema: {},
|
|
147
|
+
guideline: "Renders the product name from the cart item. Must be inside CartItemRoot."
|
|
148
|
+
});
|
|
149
|
+
const CartItemVariantDefinition = defineComponent({
|
|
150
|
+
name: "CartItemVariant",
|
|
151
|
+
importPath: "@vtex/faststore/components",
|
|
152
|
+
component: CartItemVariant,
|
|
153
|
+
requiresContext: "cart-item-data",
|
|
154
|
+
editor: {
|
|
155
|
+
label: "Cart Item Variant",
|
|
156
|
+
category: "commerce"
|
|
157
|
+
},
|
|
158
|
+
schema: {},
|
|
159
|
+
guideline: "Renders the selected variant name of the cart item (e.g. \"Midnight Black\"); renders null when the variant has no name. Use as a subtitle under CartItemName, typically alongside CartItemSku. Must be inside CartItemRoot."
|
|
160
|
+
});
|
|
161
|
+
const CartItemSkuDefinition = defineComponent({
|
|
162
|
+
name: "CartItemSku",
|
|
163
|
+
importPath: "@vtex/faststore/components",
|
|
164
|
+
component: CartItemSku,
|
|
165
|
+
requiresContext: "cart-item-data",
|
|
166
|
+
editor: {
|
|
167
|
+
label: "Cart Item SKU",
|
|
168
|
+
category: "commerce"
|
|
169
|
+
},
|
|
170
|
+
schema: {},
|
|
171
|
+
guideline: "Renders the SKU code of the cart item variant (e.g. \"WNC-400X\"); renders null when the variant has no SKU. Use as a subtitle under CartItemName, typically alongside CartItemVariant. Must be inside CartItemRoot."
|
|
172
|
+
});
|
|
173
|
+
const CartItemPriceDefinition = defineComponent({
|
|
174
|
+
name: "CartItemPrice",
|
|
175
|
+
importPath: "@vtex/faststore/components",
|
|
176
|
+
component: CartItemPrice,
|
|
177
|
+
requiresContext: "cart-item-data",
|
|
178
|
+
editor: {
|
|
179
|
+
label: "Cart Item Price",
|
|
180
|
+
category: "commerce"
|
|
181
|
+
},
|
|
182
|
+
schema: {},
|
|
183
|
+
guideline: "Renders the selling price of the cart item, formatted from the active storefront context. Must be inside CartItemRoot."
|
|
184
|
+
});
|
|
185
|
+
const CartItemListPriceDefinition = defineComponent({
|
|
186
|
+
name: "CartItemListPrice",
|
|
187
|
+
importPath: "@vtex/faststore/components",
|
|
188
|
+
component: CartItemListPrice,
|
|
189
|
+
requiresContext: "cart-item-data",
|
|
190
|
+
editor: {
|
|
191
|
+
label: "Cart Item List Price",
|
|
192
|
+
category: "commerce"
|
|
193
|
+
},
|
|
194
|
+
schema: {},
|
|
195
|
+
guideline: "Renders the original list price of the cart item (strikethrough); renders null when no discount is active. Use alongside CartItemPrice to show promotional pricing. Must be inside CartItemRoot."
|
|
196
|
+
});
|
|
197
|
+
const CartItemDiscountPercentageDefinition = defineComponent({
|
|
198
|
+
name: "CartItemDiscountPercentage",
|
|
199
|
+
importPath: "@vtex/faststore/components",
|
|
200
|
+
component: CartItemDiscountPercentage,
|
|
201
|
+
requiresContext: "cart-item-data",
|
|
202
|
+
editor: {
|
|
203
|
+
label: "Cart Item Discount %",
|
|
204
|
+
category: "commerce"
|
|
205
|
+
},
|
|
206
|
+
schema: { template: {
|
|
207
|
+
type: "string",
|
|
208
|
+
default: "-{percentage}%",
|
|
209
|
+
label: "Template"
|
|
210
|
+
} },
|
|
211
|
+
guideline: "Per-line discount badge showing the integer listPrice-vs-sellingPrice percentage (e.g. \"-20%\"); use the template prop to customize the format ({percentage} is the integer percent). Renders null when the line has no discount (sellingPrice >= listPrice), so it only appears on promotional lines. Place alongside CartItemPrice/CartItemListPrice. Must be inside CartItemRoot."
|
|
212
|
+
});
|
|
213
|
+
const CartItemLineTotalDefinition = defineComponent({
|
|
214
|
+
name: "CartItemLineTotal",
|
|
215
|
+
importPath: "@vtex/faststore/components",
|
|
216
|
+
component: CartItemLineTotal,
|
|
217
|
+
requiresContext: "cart-item-data",
|
|
218
|
+
editor: {
|
|
219
|
+
label: "Cart Item Line Total",
|
|
220
|
+
category: "commerce"
|
|
221
|
+
},
|
|
222
|
+
schema: {},
|
|
223
|
+
guideline: "Renders the per-line total (selling price × quantity) formatted from the active storefront context. Must be inside CartItemRoot."
|
|
224
|
+
});
|
|
225
|
+
const CartItemOwnTotalDefinition = defineComponent({
|
|
226
|
+
name: "CartItemOwnTotal",
|
|
227
|
+
importPath: "@vtex/faststore/components",
|
|
228
|
+
component: CartItemOwnTotal,
|
|
229
|
+
requiresContext: "cart-item-data",
|
|
230
|
+
editor: {
|
|
231
|
+
label: "Cart Item Own Total",
|
|
232
|
+
category: "commerce"
|
|
233
|
+
},
|
|
234
|
+
schema: {},
|
|
235
|
+
guideline: "Renders the line's own total (excludes bundle/composition children), formatted from the active storefront context. Equals CartItemAggregateTotal on lines with no compositions. Must be inside CartItemRoot. See cart-item.md."
|
|
236
|
+
});
|
|
237
|
+
const CartItemAggregateTotalDefinition = defineComponent({
|
|
238
|
+
name: "CartItemAggregateTotal",
|
|
239
|
+
importPath: "@vtex/faststore/components",
|
|
240
|
+
component: CartItemAggregateTotal,
|
|
241
|
+
requiresContext: "cart-item-data",
|
|
242
|
+
editor: {
|
|
243
|
+
label: "Cart Item Aggregate Total",
|
|
244
|
+
category: "commerce"
|
|
245
|
+
},
|
|
246
|
+
schema: {},
|
|
247
|
+
guideline: "Renders the line's aggregate total including all nested composition children, formatted from the active storefront context — the price the shopper actually pays for a bundled line. Equals CartItemOwnTotal on lines with no compositions. Must be inside CartItemRoot. See cart-item.md."
|
|
248
|
+
});
|
|
249
|
+
const CartItemQuantityDefinition = defineComponent({
|
|
250
|
+
name: "CartItemQuantity",
|
|
251
|
+
importPath: "@vtex/faststore/components",
|
|
252
|
+
component: CartItemQuantity,
|
|
253
|
+
fragment: cartItemQuantityFragment,
|
|
254
|
+
fetchStrategy: "reactive-list-item",
|
|
255
|
+
requiresContext: "cart-item-data",
|
|
256
|
+
editor: {
|
|
257
|
+
label: "Cart Item Quantity",
|
|
258
|
+
category: "commerce"
|
|
259
|
+
},
|
|
260
|
+
schema: {
|
|
261
|
+
min: {
|
|
262
|
+
type: "number",
|
|
263
|
+
default: 1,
|
|
264
|
+
label: "Min"
|
|
265
|
+
},
|
|
266
|
+
max: {
|
|
267
|
+
type: "number",
|
|
268
|
+
label: "Max"
|
|
269
|
+
},
|
|
270
|
+
step: {
|
|
271
|
+
type: "number",
|
|
272
|
+
default: 1,
|
|
273
|
+
label: "Step"
|
|
274
|
+
},
|
|
275
|
+
removeOnDecrement: {
|
|
276
|
+
type: "boolean",
|
|
277
|
+
default: false,
|
|
278
|
+
label: "Remove On Decrement"
|
|
279
|
+
},
|
|
280
|
+
validationMessage: {
|
|
281
|
+
type: "string",
|
|
282
|
+
default: "Quantity adjusted to {value}.",
|
|
283
|
+
label: "Validation Message"
|
|
284
|
+
}
|
|
285
|
+
},
|
|
286
|
+
actions: { cart: [
|
|
287
|
+
"increaseQuantity",
|
|
288
|
+
"decreaseQuantity",
|
|
289
|
+
"removeItem"
|
|
290
|
+
] },
|
|
291
|
+
guideline: "Quantity stepper for a cart item, shown in the unit the merchant sells in: the displayed amount is the line's quantity times its unit multiplier, so a SKU sold in 500 g portions reads 1.5 rather than 3. min, max, and step are configured in purchasable units and converted for display, so one template serves SKUs with different multipliers. A typed amount that is out of bounds or off the multiplier grid snaps to the nearest valid value on commit and renders validationMessage. Set removeOnDecrement=true to remove the item when quantity reaches the minimum. Renders nothing on a gift line — a gift's quantity is promotion-controlled and cannot be stepped or removed, so use CartItemQuantityValue to show a gift's fixed quantity. Must be inside CartItemRoot. See cart-item.md."
|
|
292
|
+
});
|
|
293
|
+
const CartItemQuantityValueDefinition = defineComponent({
|
|
294
|
+
name: "CartItemQuantityValue",
|
|
295
|
+
importPath: "@vtex/faststore/components",
|
|
296
|
+
component: CartItemQuantityValue,
|
|
297
|
+
requiresContext: "cart-item-data",
|
|
298
|
+
editor: {
|
|
299
|
+
label: "Cart Item Quantity Value",
|
|
300
|
+
category: "commerce"
|
|
301
|
+
},
|
|
302
|
+
schema: {},
|
|
303
|
+
guideline: "Renders the read-only quantity count of the cart item as text (e.g. a \"Qty\" badge). Distinct from the editable CartItemQuantity stepper. Must be inside CartItemRoot."
|
|
304
|
+
});
|
|
305
|
+
const CartItemRemoveDefinition = defineComponent({
|
|
306
|
+
name: "CartItemRemove",
|
|
307
|
+
importPath: "@vtex/faststore/components",
|
|
308
|
+
component: CartItemRemove,
|
|
309
|
+
requiresContext: "cart-item-data",
|
|
310
|
+
editor: {
|
|
311
|
+
label: "Cart Item Remove",
|
|
312
|
+
category: "commerce"
|
|
313
|
+
},
|
|
314
|
+
schema: {},
|
|
315
|
+
actions: { cart: ["removeItem"] },
|
|
316
|
+
guideline: "Button that removes the current line item from the cart. Must be inside CartItemRoot. Also composes inside CartItemUnavailable as a remove-on-alert control. See cart-item.md."
|
|
317
|
+
});
|
|
318
|
+
const CartItemAvailableDefinition = defineComponent({
|
|
319
|
+
name: "CartItemAvailable",
|
|
320
|
+
importPath: "@vtex/faststore/components",
|
|
321
|
+
component: CartItemAvailable,
|
|
322
|
+
requiresContext: "cart-item-data",
|
|
323
|
+
editor: {
|
|
324
|
+
label: "Cart Item Available",
|
|
325
|
+
category: "commerce"
|
|
326
|
+
},
|
|
327
|
+
schema: {},
|
|
328
|
+
guideline: "Renders its children only when the current cart item is in stock (availability AVAILABLE). Wrap price, quantity stepper, and line total so they hide for unavailable items. Must be inside CartItemRoot."
|
|
329
|
+
});
|
|
330
|
+
const CartItemUnavailableDefinition = defineComponent({
|
|
331
|
+
name: "CartItemUnavailable",
|
|
332
|
+
importPath: "@vtex/faststore/components",
|
|
333
|
+
component: CartItemUnavailable,
|
|
334
|
+
requiresContext: "cart-item-data",
|
|
335
|
+
editor: {
|
|
336
|
+
label: "Cart Item Unavailable",
|
|
337
|
+
category: "commerce"
|
|
338
|
+
},
|
|
339
|
+
schema: {},
|
|
340
|
+
guideline: "Status badge shown only when the current cart item is NOT available. Renders a built-in English label per state (OUT_OF_STOCK → \"Out of stock\", UNAVAILABLE → \"Cannot be delivered\", otherwise \"Unavailable\"); pass children to override the text — children REPLACE the label, so a remove-on-alert composition nests an explicit label plus a CartItemRemove. Emits data-fs-cart-item-unavailable-state for per-state styling. Must be inside CartItemRoot. See cart-item.md."
|
|
341
|
+
});
|
|
342
|
+
const CartItemGiftDefinition = defineComponent({
|
|
343
|
+
name: "CartItemGift",
|
|
344
|
+
importPath: "@vtex/faststore/components",
|
|
345
|
+
component: CartItemGift,
|
|
346
|
+
requiresContext: "cart-item-data",
|
|
347
|
+
editor: {
|
|
348
|
+
label: "Cart Item Gift",
|
|
349
|
+
category: "commerce"
|
|
350
|
+
},
|
|
351
|
+
schema: {},
|
|
352
|
+
guideline: "Free marker for a promotional gift line: renders only when the current cart item is a gift, showing a built-in \"Free\" label; pass children to override the text — children REPLACE the label. Place it beside CartItemPrice/CartItemListPrice, whose struck-through list price it complements. It is an inline marker, not a wrapper for a gift-only subtree. On a gift line CartItemRemove suppresses itself and CartItemRoot marks the row with data-fs-cart-item-gift-line, so neither needs composing differently. Must be inside CartItemRoot. See cart-item.md."
|
|
353
|
+
});
|
|
354
|
+
function CartItemRoot({ $data: $dataProp, className, children, ...props }) {
|
|
355
|
+
const slice = useDataOverride($dataProp) ?? null;
|
|
356
|
+
return /* @__PURE__ */ jsx(CartItemContext, {
|
|
357
|
+
value: slice,
|
|
358
|
+
children: /* @__PURE__ */ jsx("div", {
|
|
359
|
+
...props,
|
|
360
|
+
className,
|
|
361
|
+
"data-fs-cart-item-root": "",
|
|
362
|
+
...slice?.gift ? { "data-fs-cart-item-gift-line": "" } : {},
|
|
363
|
+
children
|
|
364
|
+
})
|
|
365
|
+
});
|
|
366
|
+
}
|
|
367
|
+
function CartItemImage({ className, objectFit = "contain", ...props }) {
|
|
368
|
+
const item = useCartItem();
|
|
369
|
+
const image = item.variant.image;
|
|
370
|
+
if (!image) return null;
|
|
371
|
+
return /* @__PURE__ */ jsx("img", {
|
|
372
|
+
...props,
|
|
373
|
+
src: image.url,
|
|
374
|
+
alt: image.altText ?? item.variant.name,
|
|
375
|
+
className,
|
|
376
|
+
style: {
|
|
377
|
+
objectFit,
|
|
378
|
+
...props.style
|
|
379
|
+
},
|
|
380
|
+
"data-fs-cart-item-image": "",
|
|
381
|
+
"data-fs-image": ""
|
|
382
|
+
});
|
|
383
|
+
}
|
|
384
|
+
function CartItemProductLink({ className, children, ...props }) {
|
|
385
|
+
const item = useCartItem();
|
|
386
|
+
const destination = resolveSafeHref(item.product.detailUrl);
|
|
387
|
+
if (!destination.safe) {
|
|
388
|
+
if (destination.reason !== "blank") console.warn("[CartItemProductLink] product URL rejected", { reason: destination.reason });
|
|
389
|
+
return children;
|
|
390
|
+
}
|
|
391
|
+
const image = item.variant.image;
|
|
392
|
+
if (!image || !(image.altText ?? item.variant.name ?? "").trim()) return children;
|
|
393
|
+
return /* @__PURE__ */ jsx(NavigationLink, {
|
|
394
|
+
...props,
|
|
395
|
+
href: destination.href,
|
|
396
|
+
className,
|
|
397
|
+
"data-fs-cart-item-product-link": "",
|
|
398
|
+
children
|
|
399
|
+
});
|
|
400
|
+
}
|
|
401
|
+
function CartItemName({ className, children, ...props }) {
|
|
402
|
+
const item = useCartItem();
|
|
403
|
+
return /* @__PURE__ */ jsx("span", {
|
|
404
|
+
...props,
|
|
405
|
+
className,
|
|
406
|
+
"data-fs-cart-item-name": "",
|
|
407
|
+
"data-fs-text": "",
|
|
408
|
+
children: children ?? item.product.title
|
|
409
|
+
});
|
|
410
|
+
}
|
|
411
|
+
function CartItemVariant({ className, children, ...props }) {
|
|
412
|
+
const { name } = useCartItem().variant;
|
|
413
|
+
if (!name) return null;
|
|
414
|
+
return /* @__PURE__ */ jsx("span", {
|
|
415
|
+
...props,
|
|
416
|
+
className,
|
|
417
|
+
"data-fs-cart-item-variant": "",
|
|
418
|
+
children: children ?? name
|
|
419
|
+
});
|
|
420
|
+
}
|
|
421
|
+
function CartItemSku({ className, children, ...props }) {
|
|
422
|
+
const { sku } = useCartItem().variant;
|
|
423
|
+
if (!sku) return null;
|
|
424
|
+
return /* @__PURE__ */ jsx("span", {
|
|
425
|
+
...props,
|
|
426
|
+
className,
|
|
427
|
+
"data-fs-cart-item-sku": "",
|
|
428
|
+
children: children ?? sku
|
|
429
|
+
});
|
|
430
|
+
}
|
|
431
|
+
function CartItemPrice({ className, children, ...props }) {
|
|
432
|
+
const item = useCartItem();
|
|
433
|
+
const { locale, currency } = useStorefrontContext();
|
|
434
|
+
return /* @__PURE__ */ jsx("span", {
|
|
435
|
+
...props,
|
|
436
|
+
className,
|
|
437
|
+
"data-fs-cart-item-price": "",
|
|
438
|
+
"data-fs-text": "",
|
|
439
|
+
children: children ?? formatPrice(item.sellingPrice.amount, locale, currency)
|
|
440
|
+
});
|
|
441
|
+
}
|
|
442
|
+
function CartItemListPrice({ className, children, ...props }) {
|
|
443
|
+
const item = useCartItem();
|
|
444
|
+
const { locale, currency } = useStorefrontContext();
|
|
445
|
+
if (item.listPrice.amount <= item.sellingPrice.amount) return null;
|
|
446
|
+
return /* @__PURE__ */ jsx("span", {
|
|
447
|
+
...props,
|
|
448
|
+
className,
|
|
449
|
+
"data-fs-cart-item-list-price": "",
|
|
450
|
+
"data-fs-text": "",
|
|
451
|
+
children: children ?? formatPrice(item.listPrice.amount, locale, currency)
|
|
452
|
+
});
|
|
453
|
+
}
|
|
454
|
+
function CartItemDiscountPercentage({ template = "-{percentage}%", className, children, ...props }) {
|
|
455
|
+
const item = useCartItem();
|
|
456
|
+
const listPrice = Number(item.listPrice.amount);
|
|
457
|
+
const sellingPrice = Number(item.sellingPrice.amount);
|
|
458
|
+
if (listPrice <= sellingPrice) return null;
|
|
459
|
+
const percent = Math.round((listPrice - sellingPrice) / listPrice * 100);
|
|
460
|
+
const text = template.replaceAll("{percentage}", String(percent));
|
|
461
|
+
return /* @__PURE__ */ jsx("span", {
|
|
462
|
+
...props,
|
|
463
|
+
className,
|
|
464
|
+
"data-fs-cart-item-discount-percentage": "",
|
|
465
|
+
"data-fs-text": "",
|
|
466
|
+
children: children ?? text
|
|
467
|
+
});
|
|
468
|
+
}
|
|
469
|
+
function CartItemLineTotal({ className, children, ...props }) {
|
|
470
|
+
const item = useCartItem();
|
|
471
|
+
const { locale, currency } = useStorefrontContext();
|
|
472
|
+
return /* @__PURE__ */ jsx("span", {
|
|
473
|
+
...props,
|
|
474
|
+
className,
|
|
475
|
+
"data-fs-cart-item-line-total": "",
|
|
476
|
+
children: children ?? formatPrice(item.sellingPrice.amount * item.quantity, locale, currency)
|
|
477
|
+
});
|
|
478
|
+
}
|
|
479
|
+
function CartItemOwnTotal({ className, children, ...props }) {
|
|
480
|
+
const item = useCartItem();
|
|
481
|
+
const { locale, currency } = useStorefrontContext();
|
|
482
|
+
return /* @__PURE__ */ jsx("span", {
|
|
483
|
+
...props,
|
|
484
|
+
className,
|
|
485
|
+
"data-fs-cart-item-own-total": "",
|
|
486
|
+
"data-fs-text": "",
|
|
487
|
+
children: children ?? formatPrice(Number(item.ownTotal.amount), locale, currency)
|
|
488
|
+
});
|
|
489
|
+
}
|
|
490
|
+
function CartItemAggregateTotal({ className, children, ...props }) {
|
|
491
|
+
const item = useCartItem();
|
|
492
|
+
const { locale, currency } = useStorefrontContext();
|
|
493
|
+
return /* @__PURE__ */ jsx("span", {
|
|
494
|
+
...props,
|
|
495
|
+
className,
|
|
496
|
+
"data-fs-cart-item-aggregate-total": "",
|
|
497
|
+
"data-fs-text": "",
|
|
498
|
+
children: children ?? formatPrice(Number(item.total.amount), locale, currency)
|
|
499
|
+
});
|
|
500
|
+
}
|
|
501
|
+
const MAX_DISPLAY_DECIMALS = 6;
|
|
502
|
+
/**
|
|
503
|
+
* A multiplier the platform cannot sell in — zero, negative, or non-finite — is treated as `1`, which
|
|
504
|
+
* is also the fallback when the optional slice is absent (the stepper composed with no own provider).
|
|
505
|
+
*/
|
|
506
|
+
function effectiveMultiplier(slice) {
|
|
507
|
+
const multiplier = slice?.variant?.unitMultiplier ?? 1;
|
|
508
|
+
return Number.isFinite(multiplier) && multiplier > 0 ? multiplier : 1;
|
|
509
|
+
}
|
|
510
|
+
/**
|
|
511
|
+
* Precision of the multiplier, so a displayed amount never carries binary-representation noise.
|
|
512
|
+
* Derived through `toFixed` rather than `String`: `String` switches to exponential notation below
|
|
513
|
+
* 1e-6, where it carries no decimal point and would report zero places, yielding a step of 0 that no
|
|
514
|
+
* control can move. The normal-path precisions (0.5, 0.1, 0.333) are covered by tests; the
|
|
515
|
+
* exponential branch is not, since it needs a multiplier no SKU can have.
|
|
516
|
+
*/
|
|
517
|
+
function decimalPlacesOf(multiplier) {
|
|
518
|
+
const [, decimals = ""] = multiplier.toFixed(MAX_DISPLAY_DECIMALS).split(".");
|
|
519
|
+
let end = decimals.length;
|
|
520
|
+
while (end > 0 && decimals[end - 1] === "0") end -= 1;
|
|
521
|
+
return end;
|
|
522
|
+
}
|
|
523
|
+
function roundTo(value, decimals) {
|
|
524
|
+
return Number(value.toFixed(decimals));
|
|
525
|
+
}
|
|
526
|
+
function resolveAdjustment(entered, snappedDisplay, multiplier, minDisplay, maxDisplay) {
|
|
527
|
+
if (maxDisplay != null && entered > maxDisplay) return {
|
|
528
|
+
reason: "max",
|
|
529
|
+
value: snappedDisplay
|
|
530
|
+
};
|
|
531
|
+
if (entered < minDisplay) return {
|
|
532
|
+
reason: "min",
|
|
533
|
+
value: snappedDisplay
|
|
534
|
+
};
|
|
535
|
+
if (Math.abs(entered - snappedDisplay) > multiplier * 1e-6) return {
|
|
536
|
+
reason: "multiple",
|
|
537
|
+
value: snappedDisplay
|
|
538
|
+
};
|
|
539
|
+
return null;
|
|
540
|
+
}
|
|
541
|
+
function CartItemQuantity({ className, children, min = 1, max, step, removeOnDecrement, validationMessage = "Quantity adjusted to {value}.", $data: $dataProp, $actions, ...props }) {
|
|
542
|
+
const item = useCartItem();
|
|
543
|
+
const slice = useDataOverride($dataProp);
|
|
544
|
+
const [adjustment, setAdjustment] = useState(null);
|
|
545
|
+
if (item.gift) return null;
|
|
546
|
+
const cart = $actions?.cart;
|
|
547
|
+
const multiplier = effectiveMultiplier(slice);
|
|
548
|
+
const decimals = decimalPlacesOf(multiplier);
|
|
549
|
+
const stepUnits = Math.max(1, Math.round(step ?? 1));
|
|
550
|
+
const minUnits = Math.round(min);
|
|
551
|
+
const maxUnits = max == null ? void 0 : Math.round(max);
|
|
552
|
+
const displayStep = roundTo(stepUnits * multiplier, decimals);
|
|
553
|
+
const minDisplay = roundTo(minUnits * multiplier, decimals);
|
|
554
|
+
const maxDisplay = maxUnits == null ? void 0 : roundTo(maxUnits * multiplier, decimals);
|
|
555
|
+
function handleValueCommitted(value) {
|
|
556
|
+
if (value == null) return;
|
|
557
|
+
if (removeOnDecrement && value < minDisplay) {
|
|
558
|
+
setAdjustment(null);
|
|
559
|
+
cart?.removeItem?.({ id: item.id });
|
|
560
|
+
return;
|
|
561
|
+
}
|
|
562
|
+
const snapped = Math.min(Math.max(Math.round(value / multiplier), minUnits), maxUnits ?? Number.POSITIVE_INFINITY);
|
|
563
|
+
const snappedDisplay = roundTo(snapped * multiplier, decimals);
|
|
564
|
+
setAdjustment(resolveAdjustment(value, snappedDisplay, multiplier, minDisplay, maxDisplay));
|
|
565
|
+
const delta = snapped - item.quantity;
|
|
566
|
+
if (delta > 0) cart?.increaseQuantity?.({
|
|
567
|
+
id: item.id,
|
|
568
|
+
by: delta
|
|
569
|
+
});
|
|
570
|
+
else if (delta < 0) cart?.decreaseQuantity?.({
|
|
571
|
+
id: item.id,
|
|
572
|
+
by: -delta
|
|
573
|
+
});
|
|
574
|
+
}
|
|
575
|
+
const effectiveMin = removeOnDecrement ? 0 : minDisplay;
|
|
576
|
+
const computedClassName = removeOnDecrement ? className ? `group ${className}` : "group" : className;
|
|
577
|
+
return /* @__PURE__ */ jsxs(NumberField.Root, {
|
|
578
|
+
...props,
|
|
579
|
+
value: roundTo(item.quantity * multiplier, decimals),
|
|
580
|
+
onValueCommitted: handleValueCommitted,
|
|
581
|
+
onValueChange: (_value, details) => {
|
|
582
|
+
if (details.reason === "input-change" || details.reason === "input-paste" || details.reason === "input-clear") setAdjustment(null);
|
|
583
|
+
},
|
|
584
|
+
min: effectiveMin,
|
|
585
|
+
max: maxDisplay,
|
|
586
|
+
step: displayStep,
|
|
587
|
+
smallStep: displayStep,
|
|
588
|
+
largeStep: roundTo(displayStep * 10, decimals),
|
|
589
|
+
snapOnStep: true,
|
|
590
|
+
allowOutOfRange: true,
|
|
591
|
+
className: computedClassName,
|
|
592
|
+
"data-fs-cart-item-quantity": "",
|
|
593
|
+
...multiplier === 1 ? {} : { "data-fs-cart-item-quantity-multiplier": String(multiplier) },
|
|
594
|
+
...adjustment ? {
|
|
595
|
+
"data-fs-cart-item-quantity-adjusted": "",
|
|
596
|
+
"data-fs-cart-item-quantity-adjusted-reason": adjustment.reason
|
|
597
|
+
} : {},
|
|
598
|
+
...removeOnDecrement && item.quantity <= minUnits ? { "data-fs-cart-item-at-min": "" } : {},
|
|
599
|
+
children: [children, adjustment ? /* @__PURE__ */ jsx("div", {
|
|
600
|
+
role: "alert",
|
|
601
|
+
"data-fs-cart-item-quantity-validation": "",
|
|
602
|
+
children: validationMessage.replaceAll("{value}", String(adjustment.value))
|
|
603
|
+
}) : null]
|
|
604
|
+
});
|
|
605
|
+
}
|
|
606
|
+
function CartItemQuantityValue({ className, children, ...props }) {
|
|
607
|
+
const item = useCartItem();
|
|
608
|
+
return /* @__PURE__ */ jsx("span", {
|
|
609
|
+
...props,
|
|
610
|
+
className,
|
|
611
|
+
"data-fs-cart-item-quantity-value": "",
|
|
612
|
+
children: children ?? String(item.quantity)
|
|
613
|
+
});
|
|
614
|
+
}
|
|
615
|
+
function CartItemRemove({ className, children, onClick, $actions, ...props }) {
|
|
616
|
+
const item = useCartItem();
|
|
617
|
+
if (item.gift) return null;
|
|
618
|
+
function handleClick(e) {
|
|
619
|
+
$actions?.cart?.removeItem?.({ id: item.id });
|
|
620
|
+
onClick?.(e);
|
|
621
|
+
}
|
|
622
|
+
return /* @__PURE__ */ jsx("button", {
|
|
623
|
+
...props,
|
|
624
|
+
type: "button",
|
|
625
|
+
className,
|
|
626
|
+
onClick: handleClick,
|
|
627
|
+
"data-fs-cart-item-remove": "",
|
|
628
|
+
"data-fs-button": "",
|
|
629
|
+
children
|
|
630
|
+
});
|
|
631
|
+
}
|
|
632
|
+
const UNAVAILABLE_LABELS = {
|
|
633
|
+
OUT_OF_STOCK: "Out of stock",
|
|
634
|
+
UNAVAILABLE: "Cannot be delivered"
|
|
635
|
+
};
|
|
636
|
+
function unavailableLabel(availability) {
|
|
637
|
+
return UNAVAILABLE_LABELS[availability] ?? "Unavailable";
|
|
638
|
+
}
|
|
639
|
+
function CartItemAvailable({ className, children, ...props }) {
|
|
640
|
+
if (useCartItem().variant.availability !== "AVAILABLE") return null;
|
|
641
|
+
return /* @__PURE__ */ jsx("div", {
|
|
642
|
+
...props,
|
|
643
|
+
className,
|
|
644
|
+
"data-fs-cart-item-available": "",
|
|
645
|
+
children
|
|
646
|
+
});
|
|
647
|
+
}
|
|
648
|
+
function CartItemUnavailable({ className, children, ...props }) {
|
|
649
|
+
const { availability } = useCartItem().variant;
|
|
650
|
+
if (availability === "AVAILABLE") return null;
|
|
651
|
+
return /* @__PURE__ */ jsx("div", {
|
|
652
|
+
...props,
|
|
653
|
+
className,
|
|
654
|
+
"data-fs-cart-item-unavailable": "",
|
|
655
|
+
"data-fs-cart-item-unavailable-state": availability.toLowerCase(),
|
|
656
|
+
children: children ?? unavailableLabel(availability)
|
|
657
|
+
});
|
|
658
|
+
}
|
|
659
|
+
function CartItemGift({ className, children, ...props }) {
|
|
660
|
+
if (!useCartItem().gift) return null;
|
|
661
|
+
return /* @__PURE__ */ jsx("span", {
|
|
662
|
+
...props,
|
|
663
|
+
className,
|
|
664
|
+
"data-fs-cart-item-gift": "",
|
|
665
|
+
"data-fs-text": "",
|
|
666
|
+
children: children ?? "Free"
|
|
667
|
+
});
|
|
668
|
+
}
|
|
669
|
+
//#endregion
|
|
670
|
+
export { CartItemAggregateTotal, CartItemAggregateTotalDefinition, CartItemAvailable, CartItemAvailableDefinition, CartItemDiscountPercentage, CartItemDiscountPercentageDefinition, CartItemGift, CartItemGiftDefinition, CartItemImage, CartItemImageDefinition, CartItemLineTotal, CartItemLineTotalDefinition, CartItemListPrice, CartItemListPriceDefinition, CartItemName, CartItemNameDefinition, CartItemOwnTotal, CartItemOwnTotalDefinition, CartItemPrice, CartItemPriceDefinition, CartItemProductLink, CartItemProductLinkDefinition, CartItemQuantity, CartItemQuantityDefinition, CartItemQuantityValue, CartItemQuantityValueDefinition, CartItemRemove, CartItemRemoveDefinition, CartItemRoot, CartItemRootDefinition, CartItemSku, CartItemSkuDefinition, CartItemUnavailable, CartItemUnavailableDefinition, CartItemVariant, CartItemVariantDefinition };
|
|
671
|
+
|
|
672
|
+
//# sourceMappingURL=cart-item.js.map
|