@liquidcommerce/elements-sdk 2.6.0-beta.12 → 2.6.0-beta.121
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 +100 -2518
- package/dist/index.checkout.esm.js +20445 -0
- package/dist/index.esm.js +28574 -20597
- package/dist/ssr-stub.checkout.esm.js +17 -0
- package/dist/ssr-stub.esm.js +277 -0
- package/dist/types/auto-initialize/checkout.d.ts +2 -0
- package/dist/types/auto-initialize/shared-utils.d.ts +51 -0
- package/dist/types/{elements-base-client.d.ts → clients/base.d.ts} +16 -2
- package/dist/types/clients/builder.d.ts +3 -0
- package/dist/types/clients/checkout.d.ts +6 -0
- package/dist/types/clients/helpers.d.ts +8 -0
- package/dist/types/clients/main.d.ts +3 -0
- package/dist/types/constants/core.constant.d.ts +13 -18
- package/dist/types/constants/index.d.ts +1 -0
- package/dist/types/constants/prop65.constant.d.ts +8 -0
- package/dist/types/core/a11y/announcer.service.d.ts +16 -0
- package/dist/types/core/a11y/focus-manager.service.d.ts +21 -0
- package/dist/types/core/a11y/focusable.d.ts +5 -0
- package/dist/types/core/a11y/glyph-button.d.ts +8 -0
- package/dist/types/core/a11y/index.d.ts +6 -0
- package/dist/types/core/a11y/required.d.ts +1 -0
- package/dist/types/core/a11y/single-select.d.ts +20 -0
- package/dist/types/core/api/api-client.service.d.ts +23 -18
- package/dist/types/core/api/api-result.d.ts +19 -0
- package/dist/types/core/api/auth-client.service.d.ts +37 -13
- package/dist/types/core/api/http-client.service.d.ts +0 -8
- package/dist/types/core/base-component.service.d.ts +4 -1
- package/dist/types/core/client/actions/base-action.service.d.ts +22 -0
- package/dist/types/core/client/actions/client-address-action.service.d.ts +18 -0
- package/dist/types/core/client/actions/client-cart-action.service.d.ts +38 -0
- package/dist/types/core/client/actions/client-checkout-action.service.d.ts +75 -0
- package/dist/types/core/client/actions/client-product-action.service.d.ts +15 -0
- package/dist/types/core/client/client-action.service.d.ts +6 -74
- package/dist/types/core/client/client-config.service.d.ts +10 -5
- package/dist/types/core/debug-panel/debug-panel.styles.d.ts +1 -1
- package/dist/types/core/google-tag-manager.service.d.ts +10 -1
- package/dist/types/core/logger/logger.service.d.ts +1 -1
- package/dist/types/core/pubsub/interfaces/address.interface.d.ts +3 -0
- package/dist/types/core/pubsub/interfaces/cart.interface.d.ts +6 -1
- package/dist/types/core/pubsub/interfaces/checkout.interface.d.ts +45 -49
- package/dist/types/core/pubsub/interfaces/core.interface.d.ts +15 -7
- package/dist/types/core/pubsub/pubsub.service.d.ts +1 -2
- package/dist/types/core/singleton-manager.service.d.ts +12 -8
- package/dist/types/core/store/interfaces/cart.interface.d.ts +2 -3
- package/dist/types/core/store/interfaces/checkout.interface.d.ts +36 -107
- package/dist/types/core/store/interfaces/core.interface.d.ts +12 -2
- package/dist/types/core/store/interfaces/metadata.interface.d.ts +11 -0
- package/dist/types/core/store/interfaces/product-list.interface.d.ts +30 -0
- package/dist/types/core/store/interfaces/product.interface.d.ts +1 -0
- package/dist/types/core/store/store.constant.d.ts +5 -0
- package/dist/types/core/store/store.service.d.ts +1 -0
- package/dist/types/core/telemetry/telemetry.service.d.ts +1 -0
- package/dist/types/enums/core.enum.d.ts +47 -2
- package/dist/types/enums/index.d.ts +0 -1
- package/dist/types/index.checkout.d.ts +9 -0
- package/dist/types/index.checkout.umd.d.ts +4 -0
- package/dist/types/index.d.ts +8 -3
- package/dist/types/interfaces/api/cart.interface.d.ts +12 -7
- package/dist/types/interfaces/api/checkout.interface.d.ts +271 -0
- package/dist/types/interfaces/api/index.d.ts +5 -0
- package/dist/types/interfaces/api/product-list.interface.d.ts +15 -6
- package/dist/types/interfaces/api/product.interface.d.ts +10 -4
- package/dist/types/interfaces/client.interface.d.ts +74 -0
- package/dist/types/interfaces/component.interface.d.ts +7 -0
- package/dist/types/interfaces/config.interface.d.ts +44 -0
- package/dist/types/interfaces/configs/address.interface.d.ts +1 -1
- package/dist/types/interfaces/configs/cart.interface.d.ts +2 -1
- package/dist/types/interfaces/configs/checkout.interface.d.ts +3 -1
- package/dist/types/interfaces/configs/global.interface.d.ts +9 -3
- package/dist/types/interfaces/configs/index.d.ts +1 -0
- package/dist/types/interfaces/configs/product-list.interface.d.ts +49 -0
- package/dist/types/interfaces/configs/product.interface.d.ts +7 -1
- package/dist/types/interfaces/injection.interface.d.ts +56 -0
- package/dist/types/modules/address/address-display.component.d.ts +3 -1
- package/dist/types/modules/address/address-input.component.d.ts +10 -1
- package/dist/types/modules/address/address.command.d.ts +2 -1
- package/dist/types/modules/address/styles/register-styles.d.ts +1 -0
- package/dist/types/modules/cart/cart.commands.d.ts +9 -5
- package/dist/types/modules/cart/components/cart-body.component.d.ts +1 -0
- package/dist/types/modules/cart/components/cart-fulfillment.component.d.ts +1 -1
- package/dist/types/modules/cart/components/cart-item-quantity-price.component.d.ts +5 -0
- package/dist/types/modules/cart/components/cart-item.component.d.ts +6 -0
- package/dist/types/modules/cart/styles/register-styles.d.ts +1 -0
- package/dist/types/modules/checkout/checkout.commands.d.ts +95 -12
- package/dist/types/modules/checkout/checkout.component.d.ts +7 -1
- package/dist/types/modules/checkout/components/checkout-billing.component.d.ts +5 -2
- package/dist/types/modules/checkout/components/checkout-buyer.component.d.ts +1 -0
- package/dist/types/modules/checkout/components/checkout-completed.component.d.ts +5 -0
- package/dist/types/modules/checkout/components/checkout-deliver-to.component.d.ts +1 -0
- package/dist/types/modules/checkout/components/checkout-delivery-method.component.d.ts +22 -0
- package/dist/types/modules/checkout/components/checkout-express-checkout.component.d.ts +61 -0
- package/dist/types/modules/checkout/components/checkout-express-completion.component.d.ts +21 -0
- package/dist/types/modules/checkout/components/checkout-header.component.d.ts +1 -0
- package/dist/types/modules/checkout/components/checkout-item-quantity.component.d.ts +4 -0
- package/dist/types/modules/checkout/components/checkout-items.component.d.ts +4 -3
- package/dist/types/modules/checkout/components/checkout-order-summary.component.d.ts +3 -0
- package/dist/types/modules/checkout/components/checkout-payment.component.d.ts +6 -1
- package/dist/types/modules/checkout/components/checkout-place-order-button.component.d.ts +1 -5
- package/dist/types/modules/checkout/components/checkout-presale-countdown.component.d.ts +15 -1
- package/dist/types/modules/checkout/components/checkout-presale-expired.component.d.ts +7 -1
- package/dist/types/modules/checkout/components/checkout-prop65-warning.component.d.ts +8 -0
- package/dist/types/modules/checkout/components/checkout-send-as-gift.component.d.ts +3 -0
- package/dist/types/modules/checkout/components/checkout-stripe-form.component.d.ts +7 -2
- package/dist/types/modules/checkout/components/checkout-tips.component.d.ts +4 -2
- package/dist/types/modules/checkout/components/index.d.ts +4 -0
- package/dist/types/modules/checkout/components/promo-pc-gc.component.d.ts +0 -2
- package/dist/types/modules/checkout/components/required-fields-legend.d.ts +1 -0
- package/dist/types/modules/checkout/constant.d.ts +15 -0
- package/dist/types/modules/checkout/customer-prefill.d.ts +5 -0
- package/dist/types/modules/checkout/express-wallet.d.ts +12 -0
- package/dist/types/modules/checkout/payment-session-error.d.ts +4 -0
- package/dist/types/modules/checkout/styles/delivery-method.style.d.ts +1 -0
- package/dist/types/modules/checkout/styles/express-checkout.style.d.ts +1 -0
- package/dist/types/modules/checkout/styles/express-completion.style.d.ts +1 -0
- package/dist/types/modules/checkout/styles/register-styles.d.ts +1 -0
- package/dist/types/modules/product/components/components.d.ts +26 -2
- package/dist/types/modules/product/components/index.d.ts +1 -0
- package/dist/types/modules/product/components/product-add-to-cart-section.component.d.ts +8 -1
- package/dist/types/modules/product/components/product-delivery-estimate.component.d.ts +11 -0
- package/dist/types/modules/product/components/product-description.component.d.ts +1 -0
- package/dist/types/modules/product/components/product-drawer.component.d.ts +6 -0
- package/dist/types/modules/product/components/product-image-carousel.component.d.ts +5 -0
- package/dist/types/modules/product/components/product-options.component.d.ts +2 -1
- package/dist/types/modules/product/components/product-prop65-warning.d.ts +1 -0
- package/dist/types/modules/product/components/product-retailers-carousel.component.d.ts +6 -0
- package/dist/types/modules/product/components/product-retailers-popup-list.component.d.ts +12 -2
- package/dist/types/modules/product/components/product-retailers-popup.component.d.ts +1 -0
- package/dist/types/modules/product/components/product-retailers.component.d.ts +1 -0
- package/dist/types/modules/product/product.commands.d.ts +5 -5
- package/dist/types/modules/product/product.component.d.ts +3 -0
- package/dist/types/modules/product/styles/prop65-warning.style.d.ts +1 -0
- package/dist/types/modules/product/styles/register-styles.d.ts +1 -0
- package/dist/types/modules/product-list/components/card-components/index.d.ts +6 -0
- package/dist/types/modules/product-list/components/card-components/product-badge.d.ts +9 -0
- package/dist/types/modules/product-list/components/card-components/product-button.d.ts +11 -0
- package/dist/types/modules/product-list/components/card-components/product-fulfillment-text.d.ts +2 -0
- package/dist/types/modules/product-list/components/card-components/product-price-and-personalization.d.ts +14 -0
- package/dist/types/modules/product-list/components/card-components/product-quantity-selector.d.ts +11 -0
- package/dist/types/modules/product-list/components/card-components/product-sizes-list.d.ts +14 -0
- package/dist/types/modules/product-list/components/filter-components/index.d.ts +7 -0
- package/dist/types/modules/product-list/components/filter-components/product-list-apply-filter-button.d.ts +1 -0
- package/dist/types/modules/product-list/components/{product-list-filters-subcomponents/product-list-checkbox-filter.components.d.ts → filter-components/product-list-checkbox-filter.d.ts} +1 -0
- package/dist/types/modules/product-list/components/filter-components/product-list-chip.d.ts +5 -0
- package/dist/types/modules/product-list/components/filter-components/product-list-filters-chips.d.ts +13 -0
- package/dist/types/modules/product-list/components/filter-components/product-list-fulfillment-filter.d.ts +15 -0
- package/dist/types/modules/product-list/components/{product-list-filters-subcomponents/product-list-price-filter.components.d.ts → filter-components/product-list-price-filter.d.ts} +2 -1
- package/dist/types/modules/product-list/components/filter-components/product-list-toggle-filters.d.ts +7 -0
- package/dist/types/modules/product-list/components/index.d.ts +6 -2
- package/dist/types/modules/product-list/components/product-list-card-loading.component.d.ts +3 -1
- package/dist/types/modules/product-list/components/product-list-card.component.d.ts +39 -31
- package/dist/types/modules/product-list/components/product-list-engraving.component.d.ts +12 -0
- package/dist/types/modules/product-list/components/product-list-filters.component.d.ts +58 -36
- package/dist/types/modules/product-list/components/product-list-product-engraving-lines.component.d.ts +22 -0
- package/dist/types/modules/product-list/components/product-list-product-pre-cart.component.d.ts +54 -0
- package/dist/types/modules/product-list/components/product-list-search.component.d.ts +25 -0
- package/dist/types/modules/product-list/product-list-filter.registry.d.ts +42 -0
- package/dist/types/modules/product-list/product-list-filter.utils.d.ts +7 -0
- package/dist/types/modules/product-list/product-list-order.utils.d.ts +3 -0
- package/dist/types/modules/product-list/product-list-query-params.utils.d.ts +3 -0
- package/dist/types/modules/product-list/product-list.commands.d.ts +22 -7
- package/dist/types/modules/product-list/product-list.component.d.ts +23 -47
- package/dist/types/modules/product-list/product-list.constants.d.ts +38 -0
- package/dist/types/modules/product-list/product-list.interface.d.ts +17 -28
- package/dist/types/modules/product-list/styles/product-list-card.style.d.ts +1 -0
- package/dist/types/modules/product-list/styles/product-list-filters.style.d.ts +1 -0
- package/dist/types/modules/product-list/styles/register-styles.d.ts +1 -0
- package/dist/types/modules/theme-provider/constants/component-groupings.d.ts +1 -0
- package/dist/types/modules/theme-provider/constants/css-variable-mappings.d.ts +1 -1
- package/dist/types/modules/theme-provider/services/style-registry.service.d.ts +16 -0
- package/dist/types/modules/theme-provider/services/stylesheet-generator.service.d.ts +0 -1
- package/dist/types/modules/theme-provider/styles/register-styles.d.ts +1 -0
- package/dist/types/modules/theme-provider/theme-provider.service.d.ts +2 -2
- package/dist/types/modules/ui-components/alert/alert.component.d.ts +10 -10
- package/dist/types/modules/ui-components/buttons/buttons-open-cart.component.d.ts +5 -0
- package/dist/types/modules/ui-components/drawer/drawer.component.d.ts +15 -0
- package/dist/types/modules/ui-components/engraving/engraving-form.component.d.ts +9 -1
- package/dist/types/modules/ui-components/engraving/engraving-view.component.d.ts +7 -1
- package/dist/types/modules/ui-components/input/index.d.ts +0 -1
- package/dist/types/modules/ui-components/input/input.component.d.ts +15 -2
- package/dist/types/modules/ui-components/lce-element/lce-element.component.d.ts +2 -1
- package/dist/types/modules/ui-components/promo-code-ticker/promo-code-ticker.component.d.ts +1 -1
- package/dist/types/modules/ui-components/ui.commands.d.ts +7 -1
- package/dist/types/ssr/stub.checkout.d.ts +6 -0
- package/dist/types/ssr/stub.d.ts +10 -0
- package/dist/types/static/icon/arrow-right.icon.d.ts +1 -1
- package/dist/types/static/icon/bag.icon.d.ts +1 -1
- package/dist/types/static/icon/check.icon.d.ts +2 -0
- package/dist/types/static/icon/checkbox.icon.d.ts +1 -1
- package/dist/types/static/icon/chevron-down.icon.d.ts +1 -1
- package/dist/types/static/icon/chevron-left.icon.d.ts +1 -1
- package/dist/types/static/icon/chevron-up.icon.d.ts +1 -1
- package/dist/types/static/icon/close.icon.d.ts +1 -1
- package/dist/types/static/icon/error-info.icon.d.ts +1 -1
- package/dist/types/static/icon/filter.icon.d.ts +1 -1
- package/dist/types/static/icon/icon.a11y.d.ts +1 -0
- package/dist/types/static/icon/icon.types.d.ts +1 -0
- package/dist/types/static/icon/index.d.ts +2 -0
- package/dist/types/static/icon/info.icon.d.ts +1 -1
- package/dist/types/static/icon/loading-spinner.icon.d.ts +1 -1
- package/dist/types/static/icon/search.icon.d.ts +1 -1
- package/dist/types/static/icon/success.icon.d.ts +1 -1
- package/dist/types/static/icon/trash.icon.d.ts +1 -1
- package/dist/types/static/icon/warning.icon.d.ts +1 -1
- package/dist/types/utils/dom-compat.d.ts +2 -0
- package/dist/types/utils/format.d.ts +9 -14
- package/dist/types/utils/image-bg-removal.d.ts +3 -0
- package/dist/types/utils/product-selection.d.ts +16 -0
- package/dist/types/utils/product.d.ts +21 -0
- package/dist/types/utils/timezone.d.ts +6 -0
- package/docs/v1/README.md +213 -0
- package/docs/v1/api/actions/address-actions.md +286 -0
- package/docs/v1/api/actions/cart-actions.md +364 -0
- package/docs/v1/api/actions/checkout-actions.md +586 -0
- package/docs/v1/api/actions/product-actions.md +204 -0
- package/docs/v1/api/client.md +664 -0
- package/docs/v1/api/configuration.md +583 -0
- package/docs/v1/api/injection-methods.md +331 -0
- package/docs/v1/api/typescript-types.md +501 -0
- package/docs/v1/api/ui-helpers.md +200 -0
- package/docs/v1/examples/advanced-patterns.md +199 -0
- package/docs/v1/examples/checkout-flow.md +90 -0
- package/docs/v1/examples/custom-theming.md +76 -0
- package/docs/v1/examples/multi-product-page.md +90 -0
- package/docs/v1/examples/simple-product-page.md +89 -0
- package/docs/v1/getting-started/concepts.md +521 -0
- package/docs/v1/getting-started/installation.md +351 -0
- package/docs/v1/getting-started/quick-start.md +410 -0
- package/docs/v1/guides/accessibility.md +288 -0
- package/docs/v1/guides/address-component.md +435 -0
- package/docs/v1/guides/best-practices.md +365 -0
- package/docs/v1/guides/cart-component.md +800 -0
- package/docs/v1/guides/checkout-component.md +817 -0
- package/docs/v1/guides/events.md +1004 -0
- package/docs/v1/guides/product-component.md +761 -0
- package/docs/v1/guides/product-list-component.md +730 -0
- package/docs/v1/guides/theming.md +243 -0
- package/docs/v1/integration/angular.md +39 -0
- package/docs/v1/integration/laravel.md +41 -0
- package/docs/v1/integration/nextjs.md +69 -0
- package/docs/v1/integration/proxy-setup.md +106 -0
- package/docs/v1/integration/react.md +64 -0
- package/docs/v1/integration/vanilla-js.md +84 -0
- package/docs/v1/integration/vue.md +58 -0
- package/docs/v1/reference/analytics.md +133 -0
- package/docs/v1/reference/browser-support.md +47 -0
- package/docs/v1/reference/error-handling.md +83 -0
- package/docs/v1/reference/performance.md +52 -0
- package/docs/v1/reference/telemetry.md +85 -0
- package/docs/v1/reference/troubleshooting.md +135 -0
- package/package.json +75 -45
- package/dist/types/elements-builder-client.d.ts +0 -2
- package/dist/types/elements-client-helper.d.ts +0 -4
- package/dist/types/elements-client.d.ts +0 -2
- package/dist/types/enums/cloud.enum.d.ts +0 -97
- package/dist/types/interfaces/cloud/checkout.interface.d.ts +0 -218
- package/dist/types/interfaces/cloud/core.interface.d.ts +0 -22
- package/dist/types/interfaces/cloud/index.d.ts +0 -3
- package/dist/types/interfaces/cloud/retailer.interface.d.ts +0 -67
- package/dist/types/interfaces/cloud/user.interface.d.ts +0 -100
- package/dist/types/interfaces/core.interface.d.ts +0 -111
- package/dist/types/modules/checkout/components/checkout.type.d.ts +0 -4
- package/dist/types/modules/product-list/components/product-list-filters-subcomponents/index.d.ts +0 -6
- package/dist/types/modules/product-list/components/product-list-filters-subcomponents/product-list-apply-filter-button.component.d.ts +0 -1
- package/dist/types/modules/product-list/components/product-list-filters-subcomponents/product-list-delivery-options-filter.components.d.ts +0 -16
- package/dist/types/modules/product-list/components/product-list-filters-subcomponents/product-list-search.component.d.ts +0 -16
- package/dist/types/modules/product-list/components/product-list-filters-subcomponents/product-list-toggle-filters.components.d.ts +0 -18
- package/dist/types/modules/theme-provider/styles/address/index.d.ts +0 -1
- package/dist/types/modules/theme-provider/styles/cart/index.d.ts +0 -1
- package/dist/types/modules/theme-provider/styles/checkout/index.d.ts +0 -1
- package/dist/types/modules/theme-provider/styles/product/index.d.ts +0 -3
- package/dist/types/modules/theme-provider/styles/product-list/index.d.ts +0 -1
- package/dist/types/modules/theme-provider/styles/ui/index.d.ts +0 -3
- package/dist/types/modules/ui-components/input/birthdate-input.component.d.ts +0 -53
- package/dist/types/utils/helper.d.ts +0 -28
- package/docs/ACTIONS.md +0 -1300
- package/docs/BROWSER_SUPPORT.md +0 -279
- package/docs/CONFIGURATION.md +0 -853
- package/docs/DOCUMENTATION_INDEX.md +0 -311
- package/docs/EVENTS.md +0 -798
- package/docs/PROXY.md +0 -228
- package/docs/THEMING.md +0 -592
- package/docs/TROUBLESHOOTING.md +0 -793
- package/umd/elements.js +0 -1
- /package/dist/types/{auto-initialize.d.ts → auto-initialize/main.d.ts} +0 -0
- /package/dist/types/modules/{theme-provider/styles/address → address/styles}/address.style.d.ts +0 -0
- /package/dist/types/modules/{theme-provider/styles/cart → cart/styles}/cart.style.d.ts +0 -0
- /package/dist/types/modules/{theme-provider/styles/checkout → checkout/styles}/checkout.style.d.ts +0 -0
- /package/dist/types/modules/{theme-provider/styles/product → product/styles}/image-carousel.style.d.ts +0 -0
- /package/dist/types/modules/{theme-provider/styles/product → product/styles}/product.style.d.ts +0 -0
- /package/dist/types/modules/{theme-provider/styles/product → product/styles}/retailers.style.d.ts +0 -0
- /package/dist/types/modules/{theme-provider/styles/product-list → product-list/styles}/product-list.style.d.ts +0 -0
- /package/dist/types/modules/{theme-provider/styles/ui → ui-components/styles}/drawer.style.d.ts +0 -0
- /package/dist/types/modules/{theme-provider/styles/ui → ui-components/styles}/loading.style.d.ts +0 -0
- /package/dist/types/modules/{theme-provider/styles/ui → ui-components/styles}/promo-code-ticker.style.d.ts +0 -0
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
export declare const ELEMENTS_ENV: {
|
|
2
|
-
readonly DEVELOPMENT: "development";
|
|
3
2
|
readonly STAGING: "staging";
|
|
4
3
|
readonly PRODUCTION: "production";
|
|
5
4
|
};
|
|
@@ -17,6 +16,7 @@ export declare const ELEMENTS_ACTIONS_EVENT: {
|
|
|
17
16
|
readonly PRODUCT_FULFILLMENT_TYPE_CHANGED: "product_fulfillment_type_changed";
|
|
18
17
|
readonly PRODUCT_FULFILLMENT_CHANGED: "product_fulfillment_changed";
|
|
19
18
|
readonly CART_LOADED: "cart_loaded";
|
|
19
|
+
readonly CART_SHOP_RETAILER: "cart_shop_retailer";
|
|
20
20
|
readonly CART_CLOSED: "cart_closed";
|
|
21
21
|
readonly CART_OPENED: "cart_opened";
|
|
22
22
|
readonly CART_UPDATED: "cart_updated";
|
|
@@ -32,6 +32,7 @@ export declare const ELEMENTS_ACTIONS_EVENT: {
|
|
|
32
32
|
readonly CART_PROMO_CODE_FAILED: "cart_promo_code_failed";
|
|
33
33
|
readonly CART_PRODUCT_ADD_SUCCESS: "cart_product_add_success";
|
|
34
34
|
readonly CART_PRODUCT_ADD_FAILED: "cart_product_add_failed";
|
|
35
|
+
readonly INTERNAL_CART_TO_CHECKOUT: "internal_cart_to_checkout";
|
|
35
36
|
readonly CHECKOUT_LOADED: "checkout_loaded";
|
|
36
37
|
readonly CHECKOUT_OPENED: "checkout_opened";
|
|
37
38
|
readonly CHECKOUT_CLOSED: "checkout_closed";
|
|
@@ -46,6 +47,7 @@ export declare const ELEMENTS_ACTIONS_EVENT: {
|
|
|
46
47
|
readonly CHECKOUT_ITEM_QUANTITY_INCREASE: "checkout_item_quantity_increase";
|
|
47
48
|
readonly CHECKOUT_ITEM_QUANTITY_DECREASE: "checkout_item_quantity_decrease";
|
|
48
49
|
readonly CHECKOUT_ITEM_ENGRAVING_UPDATED: "checkout_item_engraving_updated";
|
|
50
|
+
readonly CHECKOUT_DELIVERY_METHOD_UPDATED: "checkout_delivery_method_updated";
|
|
49
51
|
readonly CHECKOUT_TIP_UPDATED: "checkout_tip_updated";
|
|
50
52
|
readonly CHECKOUT_SUBMIT_STARTED: "checkout_submit_started";
|
|
51
53
|
readonly CHECKOUT_SUBMIT_COMPLETED: "checkout_submit_completed";
|
|
@@ -58,6 +60,7 @@ export declare const ELEMENTS_ACTIONS_EVENT: {
|
|
|
58
60
|
readonly CHECKOUT_GIFT_CARD_FAILED: "checkout_gift_card_failed";
|
|
59
61
|
readonly CHECKOUT_PRODUCT_ADD_SUCCESS: "checkout_product_add_success";
|
|
60
62
|
readonly CHECKOUT_PRODUCT_ADD_FAILED: "checkout_product_add_failed";
|
|
63
|
+
readonly CHECKOUT_EXPRESS_CHECKOUT_AVAILABILITY: "checkout_express_checkout_availability";
|
|
61
64
|
};
|
|
62
65
|
export declare const ELEMENTS_FORM: {
|
|
63
66
|
readonly CUSTOMER: "customer";
|
|
@@ -67,7 +70,6 @@ export declare const ELEMENTS_FORM: {
|
|
|
67
70
|
export declare const COMPONENT_TYPE: {
|
|
68
71
|
readonly DRAWER: "drawer";
|
|
69
72
|
readonly INPUT: "input";
|
|
70
|
-
readonly BIRTHDATE_INPUT: "birthdate-input";
|
|
71
73
|
readonly ENGRAVING_FORM: "engraving-form";
|
|
72
74
|
readonly ENGRAVING_VIEW: "engraving-view";
|
|
73
75
|
readonly BUTTONS_CART_OPEN: "buttons-cart-open";
|
|
@@ -88,6 +90,7 @@ export declare const COMPONENT_TYPE: {
|
|
|
88
90
|
readonly PRODUCT_RETAILERS_CAROUSEL: "product-retailers-carousel";
|
|
89
91
|
readonly PRODUCT_RETAILERS_POPUP: "product-retailers-popup";
|
|
90
92
|
readonly PRODUCT_RETAILERS_POPUP_LIST: "product-retailers-popup-list";
|
|
93
|
+
readonly PRODUCT_DELIVERY_ESTIMATE: "product-delivery-estimate";
|
|
91
94
|
readonly PRODUCT_PRICE: "product-price";
|
|
92
95
|
readonly PRODUCT_ADD_TO_CART_SECTION: "product-add-to-cart-section";
|
|
93
96
|
readonly PRODUCT_DRAWER: "product-drawer";
|
|
@@ -97,6 +100,10 @@ export declare const COMPONENT_TYPE: {
|
|
|
97
100
|
readonly PRODUCT_LIST_FILTERS: "product-list-filters";
|
|
98
101
|
readonly PRODUCT_LIST_SEARCH: "product-list-search";
|
|
99
102
|
readonly PRODUCT_LIST_CARD_LOADING: "product-list-card-loading";
|
|
103
|
+
readonly PRODUCT_LIST_ENGRAVING_FORM: "product-list-engraving-form";
|
|
104
|
+
readonly PRODUCT_LIST_PRODUCT_PRE_CART: "product-list-product-pre-cart";
|
|
105
|
+
readonly PRODUCT_LIST_PRODUCT_ENGRAVING_LINES: "product-list-product-engraving-lines";
|
|
106
|
+
readonly PRODUCT_LIST_SIZE_SELECTOR: "product-list-size-selector";
|
|
100
107
|
readonly CART: "cart";
|
|
101
108
|
readonly CART_RETAILER: "cart-retailer";
|
|
102
109
|
readonly CART_ITEM: "cart-item";
|
|
@@ -111,6 +118,7 @@ export declare const COMPONENT_TYPE: {
|
|
|
111
118
|
readonly CHECKOUT_INFORMATION: "checkout-information";
|
|
112
119
|
readonly CHECKOUT_STRIPE_HANDLER: "checkout-stripe-handler";
|
|
113
120
|
readonly CHECKOUT_STRIPE_FORM: "checkout-stripe-form";
|
|
121
|
+
readonly CHECKOUT_DELIVERY_METHOD: "checkout-delivery-method";
|
|
114
122
|
readonly CHECKOUT_PAYMENT: "checkout-payment";
|
|
115
123
|
readonly CHECKOUT_PAYMENT_SUMMARY: "checkout-payment-summary";
|
|
116
124
|
readonly CHECKOUT_BILLING: "checkout-billing";
|
|
@@ -129,10 +137,13 @@ export declare const COMPONENT_TYPE: {
|
|
|
129
137
|
readonly CHECKOUT_ITEM: "checkout-item";
|
|
130
138
|
readonly CHECKOUT_ITEM_QUANTITY: "checkout-item-quantity";
|
|
131
139
|
readonly CHECKOUT_PLACE_ORDER_BUTTON: "checkout-place-order-button";
|
|
140
|
+
readonly CHECKOUT_PROP65_WARNING: "checkout-prop65-warning";
|
|
132
141
|
readonly CHECKOUT_HEADER: "checkout-header";
|
|
133
142
|
readonly CHECKOUT_PRESALE_COUNTDOWN: "checkout-presale-countdown";
|
|
134
143
|
readonly CHECKOUT_PRESALE_EXPIRED: "checkout-presale-expired";
|
|
135
144
|
readonly CHECKOUT_SEND_AS_GIFT: "checkout-send-as-gift";
|
|
145
|
+
readonly CHECKOUT_EXPRESS_CHECKOUT: "checkout-express-checkout";
|
|
146
|
+
readonly CHECKOUT_EXPRESS_COMPLETION: "checkout-express-completion";
|
|
136
147
|
};
|
|
137
148
|
export type ComponentType = (typeof COMPONENT_TYPE)[keyof typeof COMPONENT_TYPE];
|
|
138
149
|
export declare const FULFILLMENT_TYPE: {
|
|
@@ -146,3 +157,37 @@ export declare const DEBUG_MODE: {
|
|
|
146
157
|
readonly PANEL: "panel";
|
|
147
158
|
};
|
|
148
159
|
export type DebugMode = (typeof DEBUG_MODE)[keyof typeof DEBUG_MODE];
|
|
160
|
+
export declare const CART_EVENT_TYPE: {
|
|
161
|
+
readonly GENERIC: "generic";
|
|
162
|
+
readonly PROMO_CODE: "promo-code";
|
|
163
|
+
};
|
|
164
|
+
export type CartEventType = (typeof CART_EVENT_TYPE)[keyof typeof CART_EVENT_TYPE];
|
|
165
|
+
export declare const CART_EVENT_LEVEL: {
|
|
166
|
+
readonly SUCCESS: "success";
|
|
167
|
+
readonly WARNING: "warning";
|
|
168
|
+
readonly ERROR: "error";
|
|
169
|
+
};
|
|
170
|
+
export type CartEventLevel = (typeof CART_EVENT_LEVEL)[keyof typeof CART_EVENT_LEVEL];
|
|
171
|
+
export declare const CHECKOUT_EVENT_TYPE: {
|
|
172
|
+
readonly GENERIC: "generic";
|
|
173
|
+
readonly PROMO_CODE: "promo-code";
|
|
174
|
+
readonly GIFT_CARD: "gift-card";
|
|
175
|
+
};
|
|
176
|
+
export type CheckoutEventType = (typeof CHECKOUT_EVENT_TYPE)[keyof typeof CHECKOUT_EVENT_TYPE];
|
|
177
|
+
export declare const CHECKOUT_EVENT_LEVEL: {
|
|
178
|
+
readonly SUCCESS: "success";
|
|
179
|
+
readonly WARNING: "warning";
|
|
180
|
+
readonly ERROR: "error";
|
|
181
|
+
};
|
|
182
|
+
export type CheckoutEventLevel = (typeof CHECKOUT_EVENT_LEVEL)[keyof typeof CHECKOUT_EVENT_LEVEL];
|
|
183
|
+
export declare const DISPLAY_MODE: {
|
|
184
|
+
readonly MODAL: "modal";
|
|
185
|
+
readonly DRAWER: "drawer";
|
|
186
|
+
};
|
|
187
|
+
export type DisplayModeType = (typeof DISPLAY_MODE)[keyof typeof DISPLAY_MODE];
|
|
188
|
+
export declare const NAVIGATION_SOURCE: {
|
|
189
|
+
readonly PRODUCT: "product";
|
|
190
|
+
readonly PRODUCT_LIST_CARD: "product-list-card";
|
|
191
|
+
readonly PRE_CART: "pre-cart";
|
|
192
|
+
};
|
|
193
|
+
export type NavigationSourceType = (typeof NAVIGATION_SOURCE)[keyof typeof NAVIGATION_SOURCE];
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ElementsCheckout } from '@/clients/checkout';
|
|
2
|
+
import type { DebugMode, ElementsEnv } from '@/enums';
|
|
3
|
+
import { DEBUG_MODE, ELEMENTS_ENV } from '@/enums';
|
|
4
|
+
import type { IElementsCheckoutActions, IElementsCheckoutClient } from '@/interfaces/client.interface';
|
|
5
|
+
import type { IInjectedComponent } from '@/interfaces/component.interface';
|
|
6
|
+
import type { ILiquidCommerceElementsCheckoutClientConfig } from '@/interfaces/config.interface';
|
|
7
|
+
import type { IInjectCheckoutParams, IInjectExpressCheckoutParams } from '@/interfaces/injection.interface';
|
|
8
|
+
export type { DebugMode, ElementsEnv, IElementsCheckoutActions, IElementsCheckoutClient, IInjectCheckoutParams, IInjectExpressCheckoutParams, IInjectedComponent, ILiquidCommerceElementsCheckoutClientConfig, };
|
|
9
|
+
export { DEBUG_MODE, ELEMENTS_ENV, ElementsCheckout };
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,6 +1,11 @@
|
|
|
1
|
+
export * from './clients/builder';
|
|
2
|
+
export * from './clients/main';
|
|
1
3
|
export * from './core/sdk-error-handler';
|
|
2
|
-
export * from './elements-builder-client';
|
|
3
|
-
export * from './elements-client';
|
|
4
4
|
export * from './enums';
|
|
5
|
+
export type { LiquidCommerceGlobal } from './global';
|
|
6
|
+
export * from './interfaces/api';
|
|
7
|
+
export * from './interfaces/client.interface';
|
|
8
|
+
export * from './interfaces/component.interface';
|
|
9
|
+
export * from './interfaces/config.interface';
|
|
5
10
|
export * from './interfaces/configs';
|
|
6
|
-
export * from './interfaces/
|
|
11
|
+
export * from './interfaces/injection.interface';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { CartEventLevel, CartEventType, FulfillmentType } from '@/enums';
|
|
2
2
|
import type { ILocation } from '@/interfaces/api/address.interface';
|
|
3
3
|
import type { IProductPresale } from '@/interfaces/api/product.interface';
|
|
4
4
|
export interface ICartUpdateItem {
|
|
@@ -19,6 +19,7 @@ export interface ICartFulfillment {
|
|
|
19
19
|
canEngrave: boolean;
|
|
20
20
|
type: FulfillmentType;
|
|
21
21
|
expectation: string;
|
|
22
|
+
engravingExpectation: string;
|
|
22
23
|
itemIds: string[];
|
|
23
24
|
subtotal: number;
|
|
24
25
|
hasUnmetMinimumPurchaseAmount: boolean;
|
|
@@ -64,7 +65,15 @@ export interface ICartItem {
|
|
|
64
65
|
}
|
|
65
66
|
export interface ICartPromoCode {
|
|
66
67
|
code: string;
|
|
67
|
-
|
|
68
|
+
discount: number;
|
|
69
|
+
freeDelivery: boolean;
|
|
70
|
+
freeServiceFee: boolean;
|
|
71
|
+
freeShipping: boolean;
|
|
72
|
+
}
|
|
73
|
+
export interface ICartEvent {
|
|
74
|
+
type: CartEventType;
|
|
75
|
+
message: string;
|
|
76
|
+
level: CartEventLevel;
|
|
68
77
|
}
|
|
69
78
|
export interface ICart {
|
|
70
79
|
id: string;
|
|
@@ -77,6 +86,7 @@ export interface ICart {
|
|
|
77
86
|
}
|
|
78
87
|
export interface ICartItemEngraving {
|
|
79
88
|
isEngravable: boolean;
|
|
89
|
+
isRequired: boolean;
|
|
80
90
|
hasEngraving: boolean;
|
|
81
91
|
fee: number;
|
|
82
92
|
maxCharsPerLine: number;
|
|
@@ -84,8 +94,3 @@ export interface ICartItemEngraving {
|
|
|
84
94
|
location: string;
|
|
85
95
|
lines: string[];
|
|
86
96
|
}
|
|
87
|
-
export interface ICartEvent {
|
|
88
|
-
type: CartEventEnum;
|
|
89
|
-
message: string;
|
|
90
|
-
items?: Array<Partial<ICartItem>>;
|
|
91
|
-
}
|
|
@@ -0,0 +1,271 @@
|
|
|
1
|
+
import type { CheckoutEventLevel, CheckoutEventType, FulfillmentType } from '@/enums';
|
|
2
|
+
import type { IAddressAddress, IAddressCoordinates, ILocation } from '@/interfaces/api/address.interface';
|
|
3
|
+
import type { ICart, ICartUpdateItem } from '@/interfaces/api/cart.interface';
|
|
4
|
+
import type { IProductPresale } from '@/interfaces/api/product.interface';
|
|
5
|
+
export interface ICheckoutComplete {
|
|
6
|
+
orderNumber: string;
|
|
7
|
+
}
|
|
8
|
+
export declare const CHECKOUT_PAYMENT_SESSION_TYPE: {
|
|
9
|
+
readonly STANDARD: "standard";
|
|
10
|
+
readonly EXPRESS: "express";
|
|
11
|
+
};
|
|
12
|
+
export type CheckoutPaymentSessionType = (typeof CHECKOUT_PAYMENT_SESSION_TYPE)[keyof typeof CHECKOUT_PAYMENT_SESSION_TYPE];
|
|
13
|
+
export interface ICheckoutPaymentSession {
|
|
14
|
+
key: string;
|
|
15
|
+
secret: string;
|
|
16
|
+
}
|
|
17
|
+
export interface ICheckoutPaymentConfirmParams {
|
|
18
|
+
confirmationTokenId: string;
|
|
19
|
+
setupIntentId: string;
|
|
20
|
+
sessionType?: CheckoutPaymentSessionType;
|
|
21
|
+
checkoutToken?: string;
|
|
22
|
+
}
|
|
23
|
+
export interface ICheckoutPaymentConfirmCard {
|
|
24
|
+
brand: string;
|
|
25
|
+
expMonth: string;
|
|
26
|
+
expYear: string;
|
|
27
|
+
last4: string;
|
|
28
|
+
}
|
|
29
|
+
export interface ICheckoutPaymentConfirm {
|
|
30
|
+
id: string;
|
|
31
|
+
card: ICheckoutPaymentConfirmCard;
|
|
32
|
+
}
|
|
33
|
+
export interface ICheckoutCustomer {
|
|
34
|
+
email: string;
|
|
35
|
+
firstName: string;
|
|
36
|
+
lastName: string;
|
|
37
|
+
company: string;
|
|
38
|
+
phone: string;
|
|
39
|
+
birthDate: string;
|
|
40
|
+
}
|
|
41
|
+
export interface ICheckoutBilling {
|
|
42
|
+
firstName: string;
|
|
43
|
+
lastName: string;
|
|
44
|
+
email: string;
|
|
45
|
+
phone: string;
|
|
46
|
+
company: string;
|
|
47
|
+
one: string;
|
|
48
|
+
two: string;
|
|
49
|
+
city: string;
|
|
50
|
+
state: string;
|
|
51
|
+
zip: string;
|
|
52
|
+
}
|
|
53
|
+
export interface ICheckoutGiftRecipient {
|
|
54
|
+
firstName: string;
|
|
55
|
+
lastName: string;
|
|
56
|
+
email: string;
|
|
57
|
+
phone: string;
|
|
58
|
+
message: string;
|
|
59
|
+
}
|
|
60
|
+
export interface ICheckoutMarketingPreferences {
|
|
61
|
+
canEmail: boolean;
|
|
62
|
+
canSms: boolean;
|
|
63
|
+
}
|
|
64
|
+
export interface ICheckoutDeliveryTip {
|
|
65
|
+
fulfillmentId: string;
|
|
66
|
+
tip: number;
|
|
67
|
+
}
|
|
68
|
+
export interface ICheckoutDeliveryInstructions {
|
|
69
|
+
fulfillmentId: string;
|
|
70
|
+
instructions: string;
|
|
71
|
+
}
|
|
72
|
+
export interface ICheckoutPrepareParams {
|
|
73
|
+
cartId?: string;
|
|
74
|
+
token?: string;
|
|
75
|
+
customer?: ICheckoutCustomer;
|
|
76
|
+
shippingAddressTwo?: string;
|
|
77
|
+
billingAddress?: ICheckoutBilling;
|
|
78
|
+
isGift?: boolean;
|
|
79
|
+
billingSameAsShipping?: boolean;
|
|
80
|
+
giftOptions?: ICheckoutGiftRecipient;
|
|
81
|
+
marketingPreferences?: ICheckoutMarketingPreferences;
|
|
82
|
+
deliveryTips?: ICheckoutDeliveryTip[];
|
|
83
|
+
deliveryInstructions?: ICheckoutDeliveryInstructions[];
|
|
84
|
+
payment?: string;
|
|
85
|
+
promoCode?: string;
|
|
86
|
+
giftCards?: string[];
|
|
87
|
+
}
|
|
88
|
+
export interface ICheckoutUpdateItem {
|
|
89
|
+
id?: string;
|
|
90
|
+
partNumber: string;
|
|
91
|
+
quantity: number;
|
|
92
|
+
fulfillmentId: string;
|
|
93
|
+
engravingLines?: string[];
|
|
94
|
+
}
|
|
95
|
+
export interface ICheckoutItemsUpdateParams {
|
|
96
|
+
cartId: string;
|
|
97
|
+
items: ICheckoutUpdateItem[];
|
|
98
|
+
location?: ILocation;
|
|
99
|
+
}
|
|
100
|
+
export interface ICheckoutItemsUpdateResponse {
|
|
101
|
+
cart: ICart;
|
|
102
|
+
checkout: ICheckoutPrepare;
|
|
103
|
+
}
|
|
104
|
+
export interface IAnonymousCheckoutAddProductItem {
|
|
105
|
+
identifier: string;
|
|
106
|
+
fulfillmentType: FulfillmentType;
|
|
107
|
+
quantity: number;
|
|
108
|
+
}
|
|
109
|
+
export interface IAnonymousCheckoutAddProductParams {
|
|
110
|
+
items?: IAnonymousCheckoutAddProductItem[];
|
|
111
|
+
cartItems?: ICartUpdateItem[];
|
|
112
|
+
location: ILocation;
|
|
113
|
+
promoCode?: string;
|
|
114
|
+
}
|
|
115
|
+
export interface IAnonymousCheckoutUnavailableItem {
|
|
116
|
+
identifier: string;
|
|
117
|
+
productName: string | null;
|
|
118
|
+
fulfillmentType: FulfillmentType;
|
|
119
|
+
reason: 'product_not_available' | 'fulfillment_not_available';
|
|
120
|
+
}
|
|
121
|
+
export interface IAnonymousCheckoutAddProductResponse {
|
|
122
|
+
checkout: ICheckoutPrepare | null;
|
|
123
|
+
unavailableItems: IAnonymousCheckoutUnavailableItem[];
|
|
124
|
+
}
|
|
125
|
+
export type CheckoutFulfillmentUnavailableReason = 'product_not_available' | 'product_not_supported' | 'fulfillment_not_available' | 'outside_operating_hours';
|
|
126
|
+
export interface ICheckoutFulfillmentMethod {
|
|
127
|
+
type: FulfillmentType;
|
|
128
|
+
available: boolean;
|
|
129
|
+
selected: boolean;
|
|
130
|
+
fee: number;
|
|
131
|
+
expectation: string;
|
|
132
|
+
engravingExpectation: string;
|
|
133
|
+
fulfillmentId: string;
|
|
134
|
+
partNumber: string;
|
|
135
|
+
retailerId: string;
|
|
136
|
+
reason: CheckoutFulfillmentUnavailableReason | null;
|
|
137
|
+
}
|
|
138
|
+
export type ICheckoutFulfillmentCarryOver = Omit<ICheckoutPrepareParams, 'cartId' | 'token' | 'deliveryTips' | 'deliveryInstructions'>;
|
|
139
|
+
export interface ICheckoutFulfillmentParams {
|
|
140
|
+
cartId: string;
|
|
141
|
+
location: ILocation;
|
|
142
|
+
fulfillmentType?: FulfillmentType;
|
|
143
|
+
checkout?: ICheckoutFulfillmentCarryOver;
|
|
144
|
+
}
|
|
145
|
+
export interface ICheckoutFulfillmentResponse {
|
|
146
|
+
methods: ICheckoutFulfillmentMethod[];
|
|
147
|
+
cart: ICart | null;
|
|
148
|
+
checkout: ICheckoutPrepare | null;
|
|
149
|
+
}
|
|
150
|
+
export interface ICheckoutAmounts {
|
|
151
|
+
subtotal: number;
|
|
152
|
+
engraving: number;
|
|
153
|
+
service: number;
|
|
154
|
+
shipping: number;
|
|
155
|
+
delivery: number;
|
|
156
|
+
platform: number;
|
|
157
|
+
discounts: number;
|
|
158
|
+
giftCards: number;
|
|
159
|
+
tax: number;
|
|
160
|
+
tip: number;
|
|
161
|
+
total: number;
|
|
162
|
+
}
|
|
163
|
+
export interface ICheckoutPromoCode {
|
|
164
|
+
code: string;
|
|
165
|
+
discount: number;
|
|
166
|
+
freeDelivery: boolean;
|
|
167
|
+
freeServiceFee: boolean;
|
|
168
|
+
freeShipping: boolean;
|
|
169
|
+
}
|
|
170
|
+
export interface ICheckoutGiftCard {
|
|
171
|
+
code: string;
|
|
172
|
+
applied: number;
|
|
173
|
+
}
|
|
174
|
+
export interface ICheckoutShippingAddress {
|
|
175
|
+
formattedAddress: string;
|
|
176
|
+
address: IAddressAddress;
|
|
177
|
+
coordinates: IAddressCoordinates;
|
|
178
|
+
}
|
|
179
|
+
export interface ICheckoutItemEngraving {
|
|
180
|
+
isEngravable: boolean;
|
|
181
|
+
isRequired: boolean;
|
|
182
|
+
hasEngraving: boolean;
|
|
183
|
+
fee: number;
|
|
184
|
+
maxCharsPerLine: number;
|
|
185
|
+
maxLines: number;
|
|
186
|
+
location: string;
|
|
187
|
+
lines: string[];
|
|
188
|
+
}
|
|
189
|
+
export interface ICheckoutItemAttributes {
|
|
190
|
+
engraving: ICheckoutItemEngraving;
|
|
191
|
+
presale: IProductPresale;
|
|
192
|
+
}
|
|
193
|
+
export interface ICheckoutItem {
|
|
194
|
+
variantId: string;
|
|
195
|
+
cartItemId: string;
|
|
196
|
+
liquidId: string;
|
|
197
|
+
retailerId: string;
|
|
198
|
+
fulfillmentId: string;
|
|
199
|
+
salsifyPid?: string;
|
|
200
|
+
salsifyGrouping?: string;
|
|
201
|
+
name: string;
|
|
202
|
+
catPath: string;
|
|
203
|
+
volume: string;
|
|
204
|
+
uom: string;
|
|
205
|
+
proof: string;
|
|
206
|
+
abv: string;
|
|
207
|
+
containerType: string;
|
|
208
|
+
container: string;
|
|
209
|
+
size: string;
|
|
210
|
+
pack: boolean;
|
|
211
|
+
packDesc: string;
|
|
212
|
+
mainImage: string;
|
|
213
|
+
brand: string;
|
|
214
|
+
partNumber: string;
|
|
215
|
+
upc: string;
|
|
216
|
+
sku: string;
|
|
217
|
+
price: number;
|
|
218
|
+
unitPrice: number;
|
|
219
|
+
quantity: number;
|
|
220
|
+
tax: number;
|
|
221
|
+
unitTax: number;
|
|
222
|
+
bottleDeposits: number;
|
|
223
|
+
attributes: ICheckoutItemAttributes;
|
|
224
|
+
}
|
|
225
|
+
export interface ICheckoutFulfillment {
|
|
226
|
+
id: string;
|
|
227
|
+
deliveryInstructions: string;
|
|
228
|
+
type: FulfillmentType;
|
|
229
|
+
expectation: string;
|
|
230
|
+
engravingExpectation: string;
|
|
231
|
+
itemIds: string[];
|
|
232
|
+
doesAllowPromos: boolean;
|
|
233
|
+
doesAllowGiftCards: boolean;
|
|
234
|
+
amounts: ICheckoutAmounts;
|
|
235
|
+
itemsQuantity: number;
|
|
236
|
+
}
|
|
237
|
+
export interface ICheckoutRetailer {
|
|
238
|
+
id: string;
|
|
239
|
+
name: string;
|
|
240
|
+
fulfillments: Record<string, ICheckoutFulfillment>;
|
|
241
|
+
amounts: ICheckoutAmounts;
|
|
242
|
+
}
|
|
243
|
+
export interface ICheckoutPresale {
|
|
244
|
+
isLocked: boolean;
|
|
245
|
+
expiresAt: string;
|
|
246
|
+
}
|
|
247
|
+
export interface ICheckoutEvent {
|
|
248
|
+
type: CheckoutEventType;
|
|
249
|
+
message: string;
|
|
250
|
+
level: CheckoutEventLevel;
|
|
251
|
+
}
|
|
252
|
+
export interface ICheckoutPrepare {
|
|
253
|
+
token: string;
|
|
254
|
+
cartId: string;
|
|
255
|
+
customer: ICheckoutCustomer;
|
|
256
|
+
isGift: boolean;
|
|
257
|
+
billingSameAsShipping: boolean;
|
|
258
|
+
payment?: string;
|
|
259
|
+
giftOptions: ICheckoutGiftRecipient;
|
|
260
|
+
marketingPreferences: ICheckoutMarketingPreferences;
|
|
261
|
+
shippingAddress: ICheckoutShippingAddress;
|
|
262
|
+
billingAddress: ICheckoutBilling;
|
|
263
|
+
promoCode: ICheckoutPromoCode | null;
|
|
264
|
+
amounts: ICheckoutAmounts;
|
|
265
|
+
giftCards: ICheckoutGiftCard[];
|
|
266
|
+
presale: ICheckoutPresale | null;
|
|
267
|
+
itemsQuantity: number;
|
|
268
|
+
items: Record<string, ICheckoutItem>;
|
|
269
|
+
retailers: Record<string, ICheckoutRetailer>;
|
|
270
|
+
events: ICheckoutEvent[];
|
|
271
|
+
}
|
|
@@ -1,22 +1,31 @@
|
|
|
1
|
-
import type { ENUM_FILTER_KEYS } from '@/enums';
|
|
2
1
|
import type { ILocation } from '@/interfaces/api/address.interface';
|
|
3
2
|
import type { IProductAvailabilityResponse } from '@/interfaces/api/product.interface';
|
|
3
|
+
import type { FILTER_KEYS } from '@/modules/product-list/product-list.constants';
|
|
4
4
|
export interface IProductSearchParams {
|
|
5
|
+
slug: string;
|
|
5
6
|
location?: ILocation;
|
|
6
7
|
search?: string;
|
|
7
8
|
pageToken?: string;
|
|
8
9
|
page?: number;
|
|
9
10
|
perPage?: number;
|
|
10
|
-
filters?:
|
|
11
|
+
filters?: IFilterParams[];
|
|
11
12
|
}
|
|
12
|
-
export type
|
|
13
|
+
export type IFilterParamsValue = string | string[] | {
|
|
14
|
+
min?: string | number;
|
|
15
|
+
max?: string | number;
|
|
16
|
+
} | boolean;
|
|
17
|
+
export interface IFilterParams {
|
|
18
|
+
key: string;
|
|
19
|
+
values: IFilterParamsValue;
|
|
20
|
+
}
|
|
21
|
+
export type FacetFilterKeys = typeof FILTER_KEYS.BRANDS | typeof FILTER_KEYS.CATEGORIES | typeof FILTER_KEYS.FLAVOR | typeof FILTER_KEYS.REGION | typeof FILTER_KEYS.VARIETY | typeof FILTER_KEYS.VINTAGE | typeof FILTER_KEYS.COUNTRY | typeof FILTER_KEYS.APPELLATION | typeof FILTER_KEYS.TAGS | typeof FILTER_KEYS.MATERIALS | typeof FILTER_KEYS.SIZES | typeof FILTER_KEYS.ENGRAVING | typeof FILTER_KEYS.FULFILLMENT | typeof FILTER_KEYS.PRICE | typeof FILTER_KEYS.AVAILABILITY | typeof FILTER_KEYS.COLORS;
|
|
13
22
|
export interface IFilterSchema {
|
|
14
|
-
|
|
15
|
-
values: IFilterValue[];
|
|
23
|
+
type: FacetFilterKeys;
|
|
24
|
+
values: IFilterValue[] | string[];
|
|
16
25
|
}
|
|
17
26
|
export interface IFilterValue {
|
|
18
27
|
value: string;
|
|
19
|
-
|
|
28
|
+
name: string;
|
|
20
29
|
count: number;
|
|
21
30
|
}
|
|
22
31
|
export interface INavigationResponse {
|
|
@@ -8,6 +8,12 @@ export interface IProductAvailabilityResponse {
|
|
|
8
8
|
products: IProduct[];
|
|
9
9
|
retailers: Record<string, IRetailer>;
|
|
10
10
|
}
|
|
11
|
+
export interface IProductPriceInfo {
|
|
12
|
+
currency: string;
|
|
13
|
+
minimum: number;
|
|
14
|
+
average: number;
|
|
15
|
+
maximum: number;
|
|
16
|
+
}
|
|
11
17
|
export interface IProductVariant {
|
|
12
18
|
retailerId: string;
|
|
13
19
|
shippingFulfillmentId: string;
|
|
@@ -34,7 +40,6 @@ export interface IProductSize {
|
|
|
34
40
|
onDemandVariants: Record<string, IProductVariant>;
|
|
35
41
|
}
|
|
36
42
|
export interface IProductFulfillmentHourStatus {
|
|
37
|
-
text: string;
|
|
38
43
|
isOpen: boolean;
|
|
39
44
|
openTime: string;
|
|
40
45
|
isClosed: boolean;
|
|
@@ -65,7 +70,7 @@ export interface IProduct {
|
|
|
65
70
|
type: string;
|
|
66
71
|
subType: string;
|
|
67
72
|
salsifyGrouping: string;
|
|
68
|
-
|
|
73
|
+
priceInfo: IProductPriceInfo | null;
|
|
69
74
|
sizes: Record<string, IProductSize>;
|
|
70
75
|
}
|
|
71
76
|
export interface IFulfillment {
|
|
@@ -73,8 +78,8 @@ export interface IFulfillment {
|
|
|
73
78
|
type: FulfillmentType;
|
|
74
79
|
doesAllowGiftCards: boolean;
|
|
75
80
|
doesAllowPromos: boolean;
|
|
76
|
-
|
|
77
|
-
|
|
81
|
+
expectation: string;
|
|
82
|
+
engravingExpectation: string;
|
|
78
83
|
fee: number;
|
|
79
84
|
timezone: string;
|
|
80
85
|
hourStatus: IProductFulfillmentHourStatus;
|
|
@@ -93,6 +98,7 @@ export interface IProductSizeEngraving {
|
|
|
93
98
|
maxCharsPerLine: number;
|
|
94
99
|
fee: number;
|
|
95
100
|
location: string;
|
|
101
|
+
isRequired: boolean;
|
|
96
102
|
}
|
|
97
103
|
export interface IProductSizeAttributes {
|
|
98
104
|
presale: IProductPresale;
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import type { IAddressActions } from '@/core/client/actions/client-address-action.service';
|
|
2
|
+
import type { ICartActions } from '@/core/client/actions/client-cart-action.service';
|
|
3
|
+
import type { ICheckoutActions } from '@/core/client/actions/client-checkout-action.service';
|
|
4
|
+
import type { IProductActions } from '@/core/client/actions/client-product-action.service';
|
|
5
|
+
import type { IClientConfigs } from '@/core/client/client-config.service';
|
|
6
|
+
import type { IAddressOptions } from '@/modules/address/address.interface';
|
|
7
|
+
import type { IInjectedComponent } from './component.interface';
|
|
8
|
+
import type { UpdateAddressComponent, UpdateCartComponent, UpdateCheckoutComponent, UpdateComponentGlobalConfigs, UpdateProductComponent, UpdateProductListComponent } from './configs';
|
|
9
|
+
import type { IBuilderInjectElementParams, IInjectCheckoutBuilderParams, IInjectCheckoutParams, IInjectExpressCheckoutParams, IInjectProductElement, IInjectProductListFiltersParams, IInjectProductListParams, IInjectProductListSearchParams } from './injection.interface';
|
|
10
|
+
export interface ILiquidCommerceElementsUIMethod {
|
|
11
|
+
cartButton(containerId: string, showItemsCount?: boolean): void;
|
|
12
|
+
floatingCartButton(showItemsCount?: boolean): void;
|
|
13
|
+
cartSubtotal(elementId: string): void;
|
|
14
|
+
cartItemsCount(elementId: string, options?: {
|
|
15
|
+
hideZero: boolean;
|
|
16
|
+
}): void;
|
|
17
|
+
}
|
|
18
|
+
export interface ILiquidCommerceElementsActions {
|
|
19
|
+
product: IProductActions;
|
|
20
|
+
address: IAddressActions;
|
|
21
|
+
cart: ICartActions;
|
|
22
|
+
checkout: ICheckoutActions;
|
|
23
|
+
}
|
|
24
|
+
export interface IElementsCheckoutActions extends Omit<ICheckoutActions, 'openCheckout' | 'closeCheckout' | 'toggleCheckout'> {
|
|
25
|
+
}
|
|
26
|
+
export interface IElementsCheckoutClient {
|
|
27
|
+
injectCheckout: (params: IInjectCheckoutParams) => Promise<IInjectedComponent | null>;
|
|
28
|
+
injectExpressCheckout: (params: IInjectExpressCheckoutParams) => Promise<IInjectedComponent | null>;
|
|
29
|
+
actions: {
|
|
30
|
+
checkout: IElementsCheckoutActions;
|
|
31
|
+
};
|
|
32
|
+
destroy(): void;
|
|
33
|
+
}
|
|
34
|
+
export interface ILiquidCommerceElementsBuilderClient {
|
|
35
|
+
updateComponentGlobalConfigs(configs: UpdateComponentGlobalConfigs): Promise<void>;
|
|
36
|
+
updateProductComponent(configs: UpdateProductComponent): Promise<void>;
|
|
37
|
+
updateAddressComponent(configs: UpdateAddressComponent): void;
|
|
38
|
+
updateCartComponent(configs: UpdateCartComponent): void;
|
|
39
|
+
updateCheckoutComponent(configs: UpdateCheckoutComponent): void;
|
|
40
|
+
updateProductListComponent(configs: UpdateProductListComponent): void;
|
|
41
|
+
injectElement(params: IBuilderInjectElementParams): Promise<IInjectedComponent | null>;
|
|
42
|
+
injectProductElement(params: IInjectProductElement[]): Promise<IInjectedComponent[]>;
|
|
43
|
+
injectAddressElement(containerId: string, options?: IAddressOptions): Promise<IInjectedComponent | null>;
|
|
44
|
+
injectCartElement(containerId: string): Promise<IInjectedComponent | null>;
|
|
45
|
+
injectCheckoutElement(params: IInjectCheckoutBuilderParams): Promise<IInjectedComponent | null>;
|
|
46
|
+
injectProductList(params: IInjectProductListParams): Promise<void>;
|
|
47
|
+
actions: ILiquidCommerceElementsActions;
|
|
48
|
+
destroy(): void;
|
|
49
|
+
}
|
|
50
|
+
export interface ILiquidCommerceElementsClient {
|
|
51
|
+
injectProductElement(params: IInjectProductElement[]): Promise<IInjectedComponent[]>;
|
|
52
|
+
injectAddressElement(containerId: string, options?: IAddressOptions): Promise<IInjectedComponent | null>;
|
|
53
|
+
injectCartElement(containerId: string): Promise<IInjectedComponent | null>;
|
|
54
|
+
injectCheckoutElement(params: IInjectCheckoutParams): Promise<IInjectedComponent | null>;
|
|
55
|
+
injectExpressCheckoutElement(params: IInjectExpressCheckoutParams): Promise<IInjectedComponent | null>;
|
|
56
|
+
injectProductList(params: IInjectProductListParams): Promise<void>;
|
|
57
|
+
injectProductListSearch(params: IInjectProductListSearchParams): Promise<void>;
|
|
58
|
+
injectProductListFilters(params: IInjectProductListFiltersParams): Promise<void>;
|
|
59
|
+
ui: ILiquidCommerceElementsUIMethod;
|
|
60
|
+
actions: ILiquidCommerceElementsActions;
|
|
61
|
+
getInjectedComponents(): Map<string, IInjectedComponent>;
|
|
62
|
+
destroy(): void;
|
|
63
|
+
}
|
|
64
|
+
export interface ILiquidCommerceElementsCheckoutClient {
|
|
65
|
+
prepare(): Promise<void>;
|
|
66
|
+
injectCheckout(params: IInjectCheckoutParams): Promise<IInjectedComponent | null>;
|
|
67
|
+
actions: {
|
|
68
|
+
checkout: IElementsCheckoutActions;
|
|
69
|
+
};
|
|
70
|
+
destroy(): void;
|
|
71
|
+
}
|
|
72
|
+
export type LiquidCommerceElementsClientConstructor = new (clientConfigs: IClientConfigs) => ILiquidCommerceElementsClient;
|
|
73
|
+
export type LiquidCommerceElementsBuilderClientConstructor = new (clientConfigs: IClientConfigs) => ILiquidCommerceElementsBuilderClient;
|
|
74
|
+
export type LiquidCommerceElementsCheckoutClientConstructor = new (clientConfigs: IClientConfigs) => ILiquidCommerceElementsCheckoutClient;
|