@zonos/elements 1.3.7-alpha.0 → 1.3.7
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/dist/cjs/{cart-ecc80eb0.js → cart-eee85bda.js} +145 -100
- package/dist/cjs/formatStringWithLinks-52341fc7.js +17 -0
- package/dist/cjs/{getBorderRadius-834c321d.js → getBorderRadius-d8f18958.js} +1 -1
- package/dist/cjs/{isDarkColor-924e6a7a.js → isDarkColor-57860b44.js} +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/submitGtag-a2e1f652.js +55 -0
- package/dist/cjs/zonos-address_4.cjs.entry.js +21 -16
- package/dist/cjs/zonos-badge_2.cjs.entry.js +6 -6
- package/dist/cjs/zonos-banner.cjs.entry.js +1 -1
- package/dist/cjs/zonos-button_3.cjs.entry.js +8 -8
- package/dist/cjs/zonos-card_2.cjs.entry.js +8 -8
- package/dist/cjs/zonos-cart-items_9.cjs.entry.js +35 -33
- package/dist/cjs/zonos-checkout.cjs.entry.js +159 -23
- package/dist/cjs/zonos-component.cjs.entry.js +1 -1
- package/dist/cjs/zonos-controller.cjs.entry.js +28 -9
- package/dist/cjs/zonos-country-flag.cjs.entry.js +4 -4
- package/dist/cjs/zonos-country-select_3.cjs.entry.js +18 -10
- package/dist/cjs/zonos-elements.cjs.js +1 -1
- package/dist/cjs/zonos-hello-dialog.cjs.entry.js +9 -7
- package/dist/cjs/zonos-hello.cjs.entry.js +25 -11
- package/dist/cjs/zonos-link.cjs.entry.js +24 -0
- package/dist/cjs/zonos-logo.cjs.entry.js +3 -3
- package/dist/cjs/zonos-notification.cjs.entry.js +1 -1
- package/dist/cjs/zonos-payment.cjs.entry.js +6 -7
- package/dist/cjs/zonos-select-dialog-header_2.cjs.entry.js +5 -5
- package/dist/cjs/zonos-shipping-rich-radio.cjs.entry.js +3 -3
- package/dist/cjs/zonos-text.cjs.entry.js +1 -1
- package/dist/cjs/{zonosStore-49d4c92a.js → zonosStore-138c5555.js} +5 -3
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/checkout/zonos-checkout/zonos-cart-subtotal/zonos-cart-subtotal.js +1 -6
- package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-finish/zonos-checkout-finish.js +19 -10
- package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-payment/zonos-checkout-payment.css +3 -0
- package/dist/collection/components/checkout/zonos-checkout/zonos-checkout.js +41 -20
- package/dist/collection/components/checkout/zonos-checkout/zonos-customer-info/zonos-customer-info.css +3 -0
- package/dist/collection/components/checkout/zonos-checkout/zonos-customer-info/zonos-customer-info.js +2 -0
- package/dist/collection/components/checkout/zonos-checkout/zonos-review/zonos-review.js +1 -6
- package/dist/collection/components/checkout/zonos-checkout/zonos-shipping/zonos-shipping.css +3 -0
- package/dist/collection/components/checkout/zonos-checkout/zonos-shipping/zonos-shipping.js +5 -0
- package/dist/collection/components/common/component-template/zonos-link/zonos-link.css +54 -0
- package/dist/collection/components/common/component-template/zonos-link/zonos-link.js +97 -0
- package/dist/collection/components/common/zonos-badge/zonos-badge.js +3 -3
- package/dist/collection/components/common/zonos-button/zonos-button.css +2 -0
- package/dist/collection/components/common/zonos-button/zonos-button.js +4 -4
- package/dist/collection/components/common/zonos-card/zonos-card.js +2 -2
- package/dist/collection/components/common/zonos-checkbox/zonos-checkbox.js +3 -3
- package/dist/collection/components/common/zonos-collapse/zonos-collapse.js +13 -6
- package/dist/collection/components/common/zonos-country-select/zonos-country-select.js +8 -2
- package/dist/collection/components/common/zonos-custom-message/zonos-custom-message.js +4 -2
- package/dist/collection/components/common/zonos-dialog/zonos-dialog.js +3 -3
- package/dist/collection/components/common/zonos-language-select/zonos-language-select.js +2 -2
- package/dist/collection/components/common/zonos-logo/zonos-logo.js +2 -2
- package/dist/collection/components/common/zonos-select-dialog-header/zonos-select-dialog-header.js +2 -2
- package/dist/collection/components/common/zonos-shipping-rich-radio/zonos-shipping-rich-radio.js +1 -1
- package/dist/collection/components/common/zonos-tooltip/zonos-tooltip.js +2 -2
- package/dist/collection/components/common/zonos-v-stack/zonos-v-stack.js +2 -2
- package/dist/collection/components/component-template/zonos-component/zonos-component.js +1 -1
- package/dist/collection/components/hello/zonos-hello/zonos-hello.js +52 -13
- package/dist/collection/components/hello/zonos-hello-dialog/zonos-hello-dialog-footer/zonos-hello-dialog-footer.js +2 -2
- package/dist/collection/components/hello/zonos-hello-dialog/zonos-hello-dialog.js +5 -3
- package/dist/collection/components/main/zonos-controller.js +1 -2
- package/dist/collection/components/store/checkout/cart.js +2 -2
- package/dist/collection/components/store/checkout/stripe.js +26 -4
- package/dist/collection/components/store/hello/localization.js +7 -6
- package/dist/collection/components/store/zonosStore.js +5 -3
- package/dist/collection/components/stripe/zonos-address/zonos-address.js +1 -1
- package/dist/collection/components/stripe/zonos-link-authentication/zonos-link-authentication.js +3 -3
- package/dist/collection/components/stripe/zonos-payment/zonos-payment.js +3 -3
- package/dist/collection/components/utils/api/getLocaleMessages.js +2 -2
- package/dist/collection/components/utils/api/trackConversionEvent.js +22 -0
- package/dist/collection/components/utils/checkout/isShippableCountry.js +15 -0
- package/dist/collection/components/utils/checkout/watchBigcommerceDomesticCheckout.js +111 -0
- package/dist/collection/components/utils/formatStringWithLinks.js +13 -0
- package/dist/collection/components/utils/handleFetch.js +1 -1
- package/dist/collection/components/utils/hello/currencyConversion/defaultCurrencyConverter.js +25 -28
- package/dist/collection/components/utils/hello/currencyConversion/getCurrencyElements.js +2 -3
- package/dist/collection/components/utils/hello/currencyConversion/getInitialElementAmount.js +8 -6
- package/dist/collection/components/utils/hello/initHello.js +23 -3
- package/dist/collection/components/utils/logging/log.js +19 -14
- package/dist/collection/components/utils/logging/logError.js +2 -2
- package/dist/collection/components/utils/logging/sendErrorLog.js +12 -0
- package/dist/collection/scripts/checkIfLoadVersionDomain.js +35 -0
- package/dist/collection/scripts/zonosBase.js +21 -34
- package/dist/collection/styles/stripe/addressRuleStyle.js +4 -0
- package/dist/collection/types/generated/graphql.customer.types.js +1 -4
- package/dist/collection/types/generated/graphql.frontend.types.js +3 -0
- package/dist/components/stripe.js +140 -98
- package/dist/components/trackConversionEvent.js +24 -0
- package/dist/components/zonos-address2.js +1 -1
- package/dist/components/zonos-badge2.js +3 -3
- package/dist/components/zonos-button2.js +5 -5
- package/dist/components/zonos-card2.js +2 -2
- package/dist/components/zonos-cart-subtotal2.js +1 -6
- package/dist/components/zonos-checkbox2.js +3 -3
- package/dist/components/zonos-checkout-finish2.js +32 -12
- package/dist/components/zonos-checkout-payment2.js +1 -1
- package/dist/components/zonos-checkout.js +158 -20
- package/dist/components/zonos-collapse2.js +13 -6
- package/dist/components/zonos-component.js +1 -1
- package/dist/components/zonos-controller.js +25 -6
- package/dist/components/zonos-country-select2.js +9 -3
- package/dist/components/zonos-custom-message2.js +18 -3
- package/dist/components/zonos-customer-info2.js +3 -1
- package/dist/components/zonos-dialog2.js +3 -3
- package/dist/components/zonos-hello-dialog-footer2.js +2 -2
- package/dist/components/zonos-hello-dialog2.js +6 -5
- package/dist/components/zonos-hello.js +24 -9
- package/dist/components/zonos-language-select2.js +3 -3
- package/dist/components/zonos-link-authentication2.js +3 -4
- package/dist/components/zonos-link.d.ts +11 -0
- package/dist/components/zonos-link.js +43 -0
- package/dist/components/zonos-logo.js +2 -2
- package/dist/components/zonos-payment2.js +3 -4
- package/dist/components/zonos-review2.js +1 -6
- package/dist/components/zonos-select-dialog-header2.js +2 -2
- package/dist/components/zonos-shipping-rich-radio2.js +1 -1
- package/dist/components/zonos-shipping2.js +7 -2
- package/dist/components/zonos-tooltip2.js +2 -2
- package/dist/components/zonos-v-stack2.js +2 -2
- package/dist/components/zonosStore.js +5 -3
- package/dist/esm/{cart-2a0a6871.js → cart-e261efc1.js} +143 -101
- package/dist/esm/formatStringWithLinks-9e819405.js +15 -0
- package/dist/esm/{getBorderRadius-0c7dfcf0.js → getBorderRadius-19787feb.js} +1 -1
- package/dist/esm/{isDarkColor-d0a57fd2.js → isDarkColor-2344e7a5.js} +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/submitGtag-dfc6f1dc.js +51 -0
- package/dist/esm/zonos-address_4.entry.js +21 -16
- package/dist/esm/zonos-badge_2.entry.js +6 -6
- package/dist/esm/zonos-banner.entry.js +1 -1
- package/dist/esm/zonos-button_3.entry.js +8 -8
- package/dist/esm/zonos-card_2.entry.js +8 -8
- package/dist/esm/zonos-cart-items_9.entry.js +35 -33
- package/dist/esm/zonos-checkout.entry.js +159 -23
- package/dist/esm/zonos-component.entry.js +1 -1
- package/dist/esm/zonos-controller.entry.js +28 -9
- package/dist/esm/zonos-country-flag.entry.js +4 -4
- package/dist/esm/zonos-country-select_3.entry.js +19 -11
- package/dist/esm/zonos-elements.js +1 -1
- package/dist/esm/zonos-hello-dialog.entry.js +9 -7
- package/dist/esm/zonos-hello.entry.js +25 -11
- package/dist/esm/zonos-link.entry.js +20 -0
- package/dist/esm/zonos-logo.entry.js +3 -3
- package/dist/esm/zonos-notification.entry.js +1 -1
- package/dist/esm/zonos-payment.entry.js +6 -7
- package/dist/esm/zonos-select-dialog-header_2.entry.js +5 -5
- package/dist/esm/zonos-shipping-rich-radio.entry.js +3 -3
- package/dist/esm/zonos-text.entry.js +1 -1
- package/dist/esm/{zonosStore-dec6bd7e.js → zonosStore-00bce01b.js} +5 -3
- package/dist/esm-es5/{cart-2a0a6871.js → cart-e261efc1.js} +1 -1
- package/dist/esm-es5/formatStringWithLinks-9e819405.js +1 -0
- package/dist/esm-es5/{getBorderRadius-0c7dfcf0.js → getBorderRadius-19787feb.js} +1 -1
- package/dist/esm-es5/{isDarkColor-d0a57fd2.js → isDarkColor-2344e7a5.js} +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/submitGtag-dfc6f1dc.js +1 -0
- package/dist/esm-es5/zonos-address_4.entry.js +1 -1
- package/dist/esm-es5/zonos-badge_2.entry.js +1 -1
- package/dist/esm-es5/zonos-banner.entry.js +1 -1
- package/dist/esm-es5/zonos-button_3.entry.js +1 -1
- package/dist/esm-es5/zonos-card_2.entry.js +1 -1
- package/dist/esm-es5/zonos-cart-items_9.entry.js +1 -1
- package/dist/esm-es5/zonos-checkout.entry.js +1 -1
- package/dist/esm-es5/zonos-component.entry.js +1 -1
- package/dist/esm-es5/zonos-controller.entry.js +1 -1
- package/dist/esm-es5/zonos-country-flag.entry.js +1 -1
- package/dist/esm-es5/zonos-country-select_3.entry.js +1 -1
- package/dist/esm-es5/zonos-elements.js +1 -1
- package/dist/esm-es5/zonos-hello-dialog.entry.js +1 -1
- package/dist/esm-es5/zonos-hello.entry.js +1 -1
- package/dist/esm-es5/zonos-link.entry.js +1 -0
- package/dist/esm-es5/zonos-logo.entry.js +1 -1
- package/dist/esm-es5/zonos-notification.entry.js +1 -1
- package/dist/esm-es5/zonos-payment.entry.js +1 -1
- package/dist/esm-es5/zonos-select-dialog-header_2.entry.js +1 -1
- package/dist/esm-es5/zonos-shipping-rich-radio.entry.js +1 -1
- package/dist/esm-es5/zonos-text.entry.js +1 -1
- package/dist/esm-es5/{zonosStore-dec6bd7e.js → zonosStore-00bce01b.js} +1 -1
- package/dist/scripts/checkIfLoadVersionDomain.js +1 -0
- package/dist/scripts/loadStripe.js +1 -1
- package/dist/scripts/loadZonos.js +1 -1
- package/dist/scripts/stripe.js +1 -1
- package/dist/scripts/zonos.js +1 -1
- package/dist/scripts/zonosBase.js +1 -1
- package/dist/types/components/checkout/zonos-checkout/zonos-checkout.d.ts +1 -1
- package/dist/types/components/common/component-template/zonos-link/zonos-link.d.ts +19 -0
- package/dist/types/components/common/zonos-collapse/zonos-collapse.d.ts +1 -0
- package/dist/types/components/common/zonos-country-select/zonos-country-select.d.ts +2 -0
- package/dist/types/components/hello/zonos-hello/zonos-hello.d.ts +9 -3
- package/dist/types/components/store/checkout/cart.d.ts +6 -3
- package/dist/types/components/store/checkout/stripe.d.ts +22 -1
- package/dist/types/components/store/hello/localization.d.ts +2 -3
- package/dist/types/components/store/zonosStore.d.ts +1 -0
- package/dist/types/components/utils/api/trackConversionEvent.d.ts +3 -0
- package/dist/types/components/utils/checkout/isShippableCountry.d.ts +1 -0
- package/dist/types/components/utils/checkout/watchBigcommerceDomesticCheckout.d.ts +20 -0
- package/dist/types/components/utils/formatStringWithLinks.d.ts +1 -0
- package/dist/types/components/utils/hello/currencyConversion/getCurrencyElements.d.ts +1 -1
- package/dist/types/components/utils/logging/log.d.ts +1 -1
- package/dist/types/components/utils/logging/sendErrorLog.d.ts +7 -0
- package/dist/types/components.d.ts +53 -3
- package/dist/types/scripts/checkIfLoadVersionDomain.d.ts +13 -0
- package/dist/types/scripts/zonosBase.d.ts +2 -0
- package/dist/types/types/checkout/CheckoutConfig.d.ts +1 -1
- package/dist/types/types/generated/graphql.customer.types.d.ts +8 -53
- package/dist/types/types/generated/graphql.customer.types.ts +18 -62
- package/dist/types/types/generated/graphql.frontend.types.d.ts +8 -0
- package/dist/types/types/generated/graphql.frontend.types.ts +18 -0
- package/dist/zonos-elements/p-066c5893.system.js +1 -1
- package/dist/zonos-elements/p-07966463.entry.js +1 -0
- package/dist/zonos-elements/p-0c0aa552.js +1 -0
- package/dist/zonos-elements/{p-dfd3edcf.entry.js → p-0c91720b.entry.js} +1 -1
- package/dist/zonos-elements/p-1119dddf.system.entry.js +1 -0
- package/dist/zonos-elements/p-127b480c.entry.js +1 -0
- package/dist/zonos-elements/{p-e855966f.system.entry.js → p-143dc0d9.system.entry.js} +1 -1
- package/dist/zonos-elements/p-14c3ef38.entry.js +1 -0
- package/dist/zonos-elements/{p-55970b10.system.entry.js → p-14d27ce1.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-7d1d862f.system.entry.js → p-165d469e.system.entry.js} +1 -1
- package/dist/zonos-elements/p-17e87be1.entry.js +1 -0
- package/dist/zonos-elements/{p-a95c034c.entry.js → p-1e0dd491.entry.js} +1 -1
- package/dist/zonos-elements/{p-34efed1d.entry.js → p-279d1c5f.entry.js} +1 -1
- package/dist/zonos-elements/p-2d6557ee.system.js +1 -0
- package/dist/zonos-elements/p-314be538.system.entry.js +1 -0
- package/dist/zonos-elements/{p-79b910bf.system.entry.js → p-328b7f6f.system.entry.js} +1 -1
- package/dist/zonos-elements/p-354603b3.system.entry.js +1 -0
- package/dist/zonos-elements/{p-1f85a98c.system.entry.js → p-389599d3.system.entry.js} +1 -1
- package/dist/zonos-elements/p-3a1e685f.entry.js +1 -0
- package/dist/zonos-elements/{p-a219689f.entry.js → p-3b23e462.entry.js} +1 -1
- package/dist/zonos-elements/{p-591eb6dd.system.js → p-49f6a985.system.js} +1 -1
- package/dist/zonos-elements/p-4fb77a38.system.entry.js +1 -0
- package/dist/zonos-elements/{p-5b44abc8.system.js → p-5496951a.system.js} +1 -1
- package/dist/zonos-elements/{p-06652d87.system.entry.js → p-58e2f6a1.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-cc63a29f.system.entry.js → p-5c176b23.system.entry.js} +1 -1
- package/dist/zonos-elements/p-5d9a000a.system.entry.js +1 -0
- package/dist/zonos-elements/p-5f4ba44c.entry.js +1 -0
- package/dist/zonos-elements/{p-88a55076.system.entry.js → p-61e5cf29.system.entry.js} +1 -1
- package/dist/zonos-elements/p-69e2c59e.entry.js +1 -0
- package/dist/zonos-elements/p-745cd869.system.entry.js +1 -0
- package/dist/zonos-elements/p-78ba2928.system.js +1 -0
- package/dist/zonos-elements/{p-67737613.system.entry.js → p-799d8a17.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-375c472a.system.entry.js → p-79b24786.system.entry.js} +1 -1
- package/dist/zonos-elements/p-7b87b82f.js +1 -0
- package/dist/zonos-elements/{p-e2770968.system.entry.js → p-7c45ce37.system.entry.js} +1 -1
- package/dist/zonos-elements/p-7f4f45b3.entry.js +1 -0
- package/dist/zonos-elements/{p-2d2e1831.entry.js → p-857cfe35.entry.js} +1 -1
- package/dist/zonos-elements/{p-ec4d08b3.system.js → p-91797d4e.system.js} +1 -1
- package/dist/zonos-elements/{p-34c03be2.js → p-95e0fc06.js} +1 -1
- package/dist/zonos-elements/p-9e6b489d.system.entry.js +1 -0
- package/dist/zonos-elements/p-9f4e02a1.entry.js +1 -0
- package/dist/zonos-elements/{p-afe40057.entry.js → p-a3cc0f84.entry.js} +1 -1
- package/dist/zonos-elements/p-a87561b8.js +1 -0
- package/dist/zonos-elements/{p-e161a08c.entry.js → p-ac0a7b8f.entry.js} +1 -1
- package/dist/zonos-elements/{p-549c181b.system.js → p-b4725505.system.js} +1 -1
- package/dist/zonos-elements/p-c060d475.js +1 -0
- package/dist/zonos-elements/p-c2e58ee1.system.entry.js +1 -0
- package/dist/zonos-elements/{p-9878a770.js → p-da767f8b.js} +1 -1
- package/dist/zonos-elements/p-dd9e8589.entry.js +1 -0
- package/dist/zonos-elements/p-f11a3d9e.entry.js +1 -0
- package/dist/zonos-elements/{p-8aeb4679.system.entry.js → p-f6eaef7b.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-c7098c3b.entry.js → p-f7c36fcc.entry.js} +1 -1
- package/dist/zonos-elements/{p-a4de3fb2.entry.js → p-ff64ddc5.entry.js} +1 -1
- package/dist/zonos-elements/zonos-elements.esm.js +1 -1
- package/package.json +1 -1
- package/dist/cjs/submitGtag-907e71d3.js +0 -21
- package/dist/collection/scripts/extractZonosQaUrl.js +0 -26
- package/dist/esm/submitGtag-a38aed23.js +0 -19
- package/dist/esm-es5/submitGtag-a38aed23.js +0 -1
- package/dist/types/scripts/extractZonosQaUrl.d.ts +0 -11
- package/dist/zonos-elements/p-0057e374.entry.js +0 -1
- package/dist/zonos-elements/p-0c72fb79.system.entry.js +0 -1
- package/dist/zonos-elements/p-290c3670.entry.js +0 -1
- package/dist/zonos-elements/p-2f1e1cbb.system.entry.js +0 -1
- package/dist/zonos-elements/p-33080cde.system.entry.js +0 -1
- package/dist/zonos-elements/p-561e44d6.entry.js +0 -1
- package/dist/zonos-elements/p-5c4dc123.js +0 -1
- package/dist/zonos-elements/p-656c836b.entry.js +0 -1
- package/dist/zonos-elements/p-8d645a00.entry.js +0 -1
- package/dist/zonos-elements/p-a3d72a33.entry.js +0 -1
- package/dist/zonos-elements/p-a93c594f.entry.js +0 -1
- package/dist/zonos-elements/p-b10ff468.entry.js +0 -1
- package/dist/zonos-elements/p-b6992dc2.system.entry.js +0 -1
- package/dist/zonos-elements/p-bce46c41.js +0 -1
- package/dist/zonos-elements/p-c56d4a44.entry.js +0 -1
- package/dist/zonos-elements/p-cbb1e700.system.js +0 -1
- package/dist/zonos-elements/p-cd8bd5e9.system.entry.js +0 -1
- package/dist/zonos-elements/p-d36faf87.system.entry.js +0 -1
- package/dist/zonos-elements/p-e2c6ad57.entry.js +0 -1
- package/dist/zonos-elements/p-ea93943a.system.entry.js +0 -1
- package/dist/zonos-elements/p-f455e08c.js +0 -1
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
|
|
2
|
-
import { c as cartStore,
|
|
2
|
+
import { c as cartStore, x as cartStoreUpdateSelectedShippingOption, y as cartStoreGetShippingTransitInfo, t as translate } from './stripe.js';
|
|
3
|
+
import { t as trackConversionEvent } from './trackConversionEvent.js';
|
|
3
4
|
import { f as formatCurrency } from './formatCurrency.js';
|
|
4
5
|
import { s as submitGtag } from './submitGtag.js';
|
|
5
6
|
import { d as defineCustomElement$5 } from './zonos-banner2.js';
|
|
@@ -8,7 +9,7 @@ import { d as defineCustomElement$3 } from './zonos-shipping-rich-radio2.js';
|
|
|
8
9
|
import { d as defineCustomElement$2 } from './zonos-spinner2.js';
|
|
9
10
|
import { d as defineCustomElement$1 } from './zonos-text2.js';
|
|
10
11
|
|
|
11
|
-
const zonosShippingCss = ".sc-zonos-shipping-h{font-family:var(--font-family, Inter), Inter;display:block;white-space:normal}.sc-zonos-shipping-h *.sc-zonos-shipping{font-family:var(--font-family, Inter), Inter}.sc-zonos-shipping-h img.sc-zonos-shipping{max-width:100%}.sc-zonos-shipping-h dl.sc-zonos-shipping,.sc-zonos-shipping-h dd.sc-zonos-shipping,.sc-zonos-shipping-h h1.sc-zonos-shipping,.sc-zonos-shipping-h h2.sc-zonos-shipping,.sc-zonos-shipping-h h3.sc-zonos-shipping,.sc-zonos-shipping-h h4.sc-zonos-shipping,.sc-zonos-shipping-h h5.sc-zonos-shipping,.sc-zonos-shipping-h h6.sc-zonos-shipping,.sc-zonos-shipping-h hr.sc-zonos-shipping,.sc-zonos-shipping-h figure.sc-zonos-shipping,.sc-zonos-shipping-h p.sc-zonos-shipping,.sc-zonos-shipping-h pre.sc-zonos-shipping{margin:0}.sc-zonos-shipping-h{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.sc-zonos-shipping-h{overflow:hidden;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.sc-zonos-shipping-h .zonos--title.sc-zonos-shipping{margin-bottom:var(--amino-space-24)}.sc-zonos-shipping-h .zonos--shipping-method-title.sc-zonos-shipping{margin-bottom:var(--amino-space-16)}.sc-zonos-shipping-h .zonos-shipping-rich-radio.sc-zonos-shipping{margin-bottom:var(--amino-space-24)}.sc-zonos-shipping-h .zonos--group.sc-zonos-shipping{margin-bottom:var(--amino-space-20);overflow:auto;padding:5px}.sc-zonos-shipping-h .zonos--group.sc-zonos-shipping::-webkit-scrollbar{width:10px}.sc-zonos-shipping-h .zonos--group.sc-zonos-shipping::-webkit-scrollbar-track{background:var(--amino-gray-50)}.sc-zonos-shipping-h .zonos--group.sc-zonos-shipping::-webkit-scrollbar-thumb{border-radius:10px;background:#cccccc;border:3px solid transparent;background-clip:content-box}.sc-zonos-shipping-h .zonos--group.sc-zonos-shipping::-webkit-scrollbar-thumb:hover{background:#d6d6d6}.sc-zonos-shipping-h .zonos--group-btn.sc-zonos-shipping{position:-webkit-sticky;position:sticky;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;bottom:0;margin-top:var(--amino-space-12);background:var(--primary-color, var(--amino-gray-0))}.sc-zonos-shipping-h .zonos--group-btn.sc-zonos-shipping zonos-button.sc-zonos-shipping{width:100%}.sc-zonos-shipping-h zonos-banner.sc-zonos-shipping{margin-top:var(--amino-space-24)}";
|
|
12
|
+
const zonosShippingCss = ".sc-zonos-shipping-h{font-family:var(--font-family, Inter), Inter;display:block;white-space:normal}.sc-zonos-shipping-h *.sc-zonos-shipping{font-family:var(--font-family, Inter), Inter}.sc-zonos-shipping-h img.sc-zonos-shipping{max-width:100%}.sc-zonos-shipping-h dl.sc-zonos-shipping,.sc-zonos-shipping-h dd.sc-zonos-shipping,.sc-zonos-shipping-h h1.sc-zonos-shipping,.sc-zonos-shipping-h h2.sc-zonos-shipping,.sc-zonos-shipping-h h3.sc-zonos-shipping,.sc-zonos-shipping-h h4.sc-zonos-shipping,.sc-zonos-shipping-h h5.sc-zonos-shipping,.sc-zonos-shipping-h h6.sc-zonos-shipping,.sc-zonos-shipping-h hr.sc-zonos-shipping,.sc-zonos-shipping-h figure.sc-zonos-shipping,.sc-zonos-shipping-h p.sc-zonos-shipping,.sc-zonos-shipping-h pre.sc-zonos-shipping{margin:0}.sc-zonos-shipping-h{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.sc-zonos-shipping-h{overflow:hidden;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.sc-zonos-shipping-h .zonos--title.sc-zonos-shipping{margin-bottom:var(--amino-space-24)}.sc-zonos-shipping-h .zonos--shipping-method-title.sc-zonos-shipping{margin-bottom:var(--amino-space-16)}.sc-zonos-shipping-h .zonos-shipping-rich-radio.sc-zonos-shipping{margin-bottom:var(--amino-space-24)}.sc-zonos-shipping-h .zonos--group.sc-zonos-shipping{margin-bottom:var(--amino-space-20);overflow:auto;padding:5px}.sc-zonos-shipping-h .zonos--group.sc-zonos-shipping::-webkit-scrollbar{width:10px}.sc-zonos-shipping-h .zonos--group.sc-zonos-shipping::-webkit-scrollbar-track{background:var(--amino-gray-50)}.sc-zonos-shipping-h .zonos--group.sc-zonos-shipping::-webkit-scrollbar-thumb{border-radius:10px;background:#cccccc;border:3px solid transparent;background-clip:content-box}.sc-zonos-shipping-h .zonos--group.sc-zonos-shipping::-webkit-scrollbar-thumb:hover{background:#d6d6d6}.sc-zonos-shipping-h zonos-button.sc-zonos-shipping{-webkit-box-shadow:0 0 1px 0 var(--amino-gray-600);box-shadow:0 0 1px 0 var(--amino-gray-600)}.sc-zonos-shipping-h .zonos--group-btn.sc-zonos-shipping{position:-webkit-sticky;position:sticky;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;bottom:0;margin-top:var(--amino-space-12);background:var(--primary-color, var(--amino-gray-0))}.sc-zonos-shipping-h .zonos--group-btn.sc-zonos-shipping zonos-button.sc-zonos-shipping{width:100%}.sc-zonos-shipping-h zonos-banner.sc-zonos-shipping{margin-top:var(--amino-space-24)}";
|
|
12
13
|
const ZonosShippingStyle0 = zonosShippingCss;
|
|
13
14
|
|
|
14
15
|
const ZonosShipping = /*@__PURE__*/ proxyCustomElement(class ZonosShipping extends HTMLElement {
|
|
@@ -46,9 +47,13 @@ const ZonosShipping = /*@__PURE__*/ proxyCustomElement(class ZonosShipping exten
|
|
|
46
47
|
this.disabled = true;
|
|
47
48
|
}
|
|
48
49
|
watchFormComplete() {
|
|
50
|
+
var _a;
|
|
49
51
|
if (!this.disabled) {
|
|
50
52
|
// submit google tag when the form is complete
|
|
51
53
|
submitGtag('zonos-checkout-shipping-info');
|
|
54
|
+
void trackConversionEvent('checkout_shippingInfoCompleted', {
|
|
55
|
+
serviceLevelId: (_a = this.selectedShippingMethod) === null || _a === void 0 ? void 0 : _a.value,
|
|
56
|
+
});
|
|
52
57
|
}
|
|
53
58
|
}
|
|
54
59
|
render() {
|
|
@@ -15,10 +15,10 @@ const ZonosTooltip = /*@__PURE__*/ proxyCustomElement(class ZonosTooltip extends
|
|
|
15
15
|
this.showTooltip = false;
|
|
16
16
|
}
|
|
17
17
|
render() {
|
|
18
|
-
return (h(Host, { key: '
|
|
18
|
+
return (h(Host, { key: '4864150b0af4119fc7d87aec5af3c258fb27802d', class: "zonos--elements" }, h("div", { key: 'c11d3da431f9c4507bc58ec38d0b1ef21c99b584', class: "zonos--tooltip", onMouseEnter: () => (this.showTooltip = true), onMouseLeave: () => (this.showTooltip = false) }, h("slot", { key: '0a92efb2e6c17f67c2feacbd17bbddd4fb63f7da' }), h("div", { key: '0ea54bfaf54a2f170044d77c2b555e5da37af8ae', class: classes([
|
|
19
19
|
this.showTooltip && 'zonos--show-tooltip',
|
|
20
20
|
'zonos--tooltip-content',
|
|
21
|
-
]) }, h("zonos-text", { key: '
|
|
21
|
+
]) }, h("zonos-text", { key: '73c55a7318eb36760d2779691f9ea79d2c5bf8c7', size: "s", textColor: "gray-0", type: "boldLabel" }, this.label), h("zonos-text", { key: '1f4106f67fc468121d7fb7fbc0ee69363bb26186', size: "xs", textColor: "gray-0" }, this.subtitle)))));
|
|
22
22
|
}
|
|
23
23
|
static get style() { return ZonosTooltipStyle0; }
|
|
24
24
|
}, [1, "zonos-tooltip", {
|
|
@@ -13,9 +13,9 @@ const VStack = /*@__PURE__*/ proxyCustomElement(class VStack extends HTMLElement
|
|
|
13
13
|
this.spacing = 24;
|
|
14
14
|
}
|
|
15
15
|
render() {
|
|
16
|
-
return (h(Host, { key: '
|
|
16
|
+
return (h(Host, { key: 'a5d1a84d5b25d1a49abec676731eaf76f703e998', style: {
|
|
17
17
|
'--font-family': zonosStoreFontFamily(),
|
|
18
|
-
} }, h("div", { key: '
|
|
18
|
+
} }, h("div", { key: '456c8e1865a752dd258989888c45dfbdfd2c4f66', class: classes(['vstack']), style: { 'grid-row-gap': `${this.spacing}px` } }, h("slot", { key: '2d3260c6b74d3def822acb98733f70a97a79f3fa' }))));
|
|
19
19
|
}
|
|
20
20
|
static get style() { return ZonosVStackStyle0; }
|
|
21
21
|
}, [1, "zonos-v-stack", {
|
|
@@ -2821,6 +2821,7 @@ const { reset, state: zonosStore } = createStore(() => ({
|
|
|
2821
2821
|
restrictionBehavior: 'DISABLED',
|
|
2822
2822
|
},
|
|
2823
2823
|
loadedConfig: false,
|
|
2824
|
+
organizationId: '',
|
|
2824
2825
|
organizationName: '',
|
|
2825
2826
|
sourceCurrency: 'USD',
|
|
2826
2827
|
storeId: null,
|
|
@@ -2833,7 +2834,7 @@ let savedZonosSettings = null;
|
|
|
2833
2834
|
* Init setting from zonos setting
|
|
2834
2835
|
*/
|
|
2835
2836
|
const zonosStoreInitSetting = ({ overrideSettings, zonosSettings, }) => {
|
|
2836
|
-
var _a, _b, _c;
|
|
2837
|
+
var _a, _b, _c, _d;
|
|
2837
2838
|
reset();
|
|
2838
2839
|
if (zonosSettings) {
|
|
2839
2840
|
// save zonos settings to be used later
|
|
@@ -2848,8 +2849,9 @@ const zonosStoreInitSetting = ({ overrideSettings, zonosSettings, }) => {
|
|
|
2848
2849
|
zonosStore.helloSettings = mergeConfig(zonosStore.helloSettings, (savedZonosSettings === null || savedZonosSettings === void 0 ? void 0 : savedZonosSettings.helloSettings) || (zonosSettings === null || zonosSettings === void 0 ? void 0 : zonosSettings.helloSettings) || null, overrideSettings === null || overrideSettings === void 0 ? void 0 : overrideSettings.helloSettings);
|
|
2849
2850
|
// set flag to true to indicate that config is ready
|
|
2850
2851
|
zonosStore.loadedConfig = true;
|
|
2851
|
-
zonosStore.
|
|
2852
|
-
zonosStore.
|
|
2852
|
+
zonosStore.organizationId = ((_a = zonosSettings === null || zonosSettings === void 0 ? void 0 : zonosSettings.organization) === null || _a === void 0 ? void 0 : _a.id) || '';
|
|
2853
|
+
zonosStore.organizationName = ((_b = zonosSettings === null || zonosSettings === void 0 ? void 0 : zonosSettings.organization) === null || _b === void 0 ? void 0 : _b.name) || '';
|
|
2854
|
+
zonosStore.storeId = ((_d = (_c = zonosSettings === null || zonosSettings === void 0 ? void 0 : zonosSettings.organization) === null || _c === void 0 ? void 0 : _c.references) === null || _d === void 0 ? void 0 : _d.storeId) || null;
|
|
2853
2855
|
zonosStore.currencyConverter = overrideSettings === null || overrideSettings === void 0 ? void 0 : overrideSettings.currencyConverter;
|
|
2854
2856
|
};
|
|
2855
2857
|
const zonosStoreFontFamily = () => {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { c as createStore, z as zonosStore } from './zonosStore-
|
|
2
|
-
import { i as isDarkColor } from './isDarkColor-
|
|
3
|
-
import { g as getBorderRadius } from './getBorderRadius-
|
|
1
|
+
import { c as createStore, z as zonosStore } from './zonosStore-00bce01b.js';
|
|
2
|
+
import { i as isDarkColor } from './isDarkColor-2344e7a5.js';
|
|
3
|
+
import { g as getBorderRadius } from './getBorderRadius-19787feb.js';
|
|
4
4
|
|
|
5
5
|
const stringsArabic = {
|
|
6
6
|
'Above de minimis threshold for': {
|
|
@@ -3546,7 +3546,7 @@ const handleFetch = async (url, _opts) => {
|
|
|
3546
3546
|
const modifiedUrl = new URL(url);
|
|
3547
3547
|
modifiedUrl.searchParams.set('zToken', encodeString(window.location.hostname));
|
|
3548
3548
|
// headers content type
|
|
3549
|
-
const headers = Object.assign({ 'Content-Type': 'application/json', 'Zonos-Is-BigCommerce': window.Zonos.isBigCommerce.toString(), 'Zonos-Referer': window.location.hostname, 'Zonos-Version': window.Zonos.version, credentialtoken: window.Zonos.zonosApiKey }, opts.headers);
|
|
3549
|
+
const headers = Object.assign({ 'Content-Type': 'application/json', 'Zonos-Is-BigCommerce': window.Zonos.isBigCommerce.toString(), 'Zonos-Referer': window.location.hostname, 'Zonos-Version': window.Zonos.version, credentialtoken: window.Zonos.zonosApiKey || 'Empty credential token from zonos-elements' }, opts.headers);
|
|
3550
3550
|
const options = Object.assign(Object.assign({}, opts), { body: method === 'GET' ? undefined : body, headers,
|
|
3551
3551
|
method });
|
|
3552
3552
|
return handleRequest(modifiedUrl.toString(), options);
|
|
@@ -3567,9 +3567,58 @@ const getCountries = async () => {
|
|
|
3567
3567
|
}
|
|
3568
3568
|
};
|
|
3569
3569
|
|
|
3570
|
+
const log = (message, type, ...additionalInfo) => {
|
|
3571
|
+
var _a, _b;
|
|
3572
|
+
const isDebug = !!((_a = window.Zonos) === null || _a === void 0 ? void 0 : _a.debug) ||
|
|
3573
|
+
!!window.location.search.match(/\?.*(&*)zonosDebug=1/);
|
|
3574
|
+
// if debug is false, do not log
|
|
3575
|
+
if (!isDebug) {
|
|
3576
|
+
// log errors to the console if the type is error
|
|
3577
|
+
if (type === 'error') {
|
|
3578
|
+
// eslint-disable-next-line no-console
|
|
3579
|
+
console.error(message, ...additionalInfo);
|
|
3580
|
+
}
|
|
3581
|
+
return;
|
|
3582
|
+
}
|
|
3583
|
+
let loggingIframe = document.querySelector('iframe#zonos---debug-logging-iframe');
|
|
3584
|
+
if (!loggingIframe) {
|
|
3585
|
+
// add a hidden iframe
|
|
3586
|
+
loggingIframe = document.createElement('iframe');
|
|
3587
|
+
loggingIframe.id = 'zonos---debug-logging-iframe';
|
|
3588
|
+
loggingIframe.style.display = 'none';
|
|
3589
|
+
loggingIframe.style.opacity = '0';
|
|
3590
|
+
loggingIframe.style.position = 'absolute';
|
|
3591
|
+
loggingIframe.style.top = '-9999px';
|
|
3592
|
+
loggingIframe.style.left = '-9999px';
|
|
3593
|
+
loggingIframe.style.width = '1px';
|
|
3594
|
+
loggingIframe.style.height = '1px';
|
|
3595
|
+
loggingIframe.style.border = 'none';
|
|
3596
|
+
loggingIframe.style.overflow = 'hidden';
|
|
3597
|
+
loggingIframe.style.visibility = 'hidden';
|
|
3598
|
+
document.body.appendChild(loggingIframe);
|
|
3599
|
+
}
|
|
3600
|
+
// use the logging iframe's console to log just in case the console is disabled (overriden) by the site owner
|
|
3601
|
+
const zConsole = ((_b = loggingIframe.contentWindow) === null || _b === void 0 ? void 0 : _b.window.console) || window.console;
|
|
3602
|
+
switch (type) {
|
|
3603
|
+
case 'warn':
|
|
3604
|
+
zConsole.warn(message, ...additionalInfo);
|
|
3605
|
+
break;
|
|
3606
|
+
case 'info':
|
|
3607
|
+
zConsole.info(message, ...additionalInfo);
|
|
3608
|
+
break;
|
|
3609
|
+
case 'error':
|
|
3610
|
+
zConsole.error(message, ...additionalInfo);
|
|
3611
|
+
break;
|
|
3612
|
+
default:
|
|
3613
|
+
zConsole.groupCollapsed(message, ...additionalInfo);
|
|
3614
|
+
zConsole.trace();
|
|
3615
|
+
zConsole.groupEnd();
|
|
3616
|
+
break;
|
|
3617
|
+
}
|
|
3618
|
+
};
|
|
3619
|
+
|
|
3570
3620
|
const logError = (message, ...rest) => {
|
|
3571
|
-
|
|
3572
|
-
console.error(message, ...rest);
|
|
3621
|
+
log(message, 'error', ...rest);
|
|
3573
3622
|
};
|
|
3574
3623
|
|
|
3575
3624
|
const getCountryLandedCost = async (countryCode) => {
|
|
@@ -3612,8 +3661,7 @@ const getLocaleMessages = async ({ countryCode, localeTo, storeId, }) => {
|
|
|
3612
3661
|
const url = `${"https://v1.route.js.zonos.com"}/api/zonos-elements/locale-messages?countryCode=${countryCode}&storeId=${storeId}&localeTo=${localeTo}`;
|
|
3613
3662
|
const { errors, json } = await handleFetch(url);
|
|
3614
3663
|
if (errors.length || !json) {
|
|
3615
|
-
|
|
3616
|
-
console.error('Error fetching exchange rate', (_a = errors.find(Boolean)) === null || _a === void 0 ? void 0 : _a.message);
|
|
3664
|
+
logError('Error fetching exchange rate', (_a = errors.find(Boolean)) === null || _a === void 0 ? void 0 : _a.message);
|
|
3617
3665
|
return [];
|
|
3618
3666
|
}
|
|
3619
3667
|
return json.locale_countryCodesPage;
|
|
@@ -3731,76 +3779,32 @@ const isValidSelector = (selector) => {
|
|
|
3731
3779
|
return true;
|
|
3732
3780
|
};
|
|
3733
3781
|
|
|
3734
|
-
const log = (message, type, ...additionalInfo) => {
|
|
3735
|
-
var _a;
|
|
3736
|
-
// if type is error and debug is false, do not log
|
|
3737
|
-
if (!window.Zonos.debug) {
|
|
3738
|
-
return;
|
|
3739
|
-
}
|
|
3740
|
-
let loggingIframe = document.querySelector('iframe#zonos---debug-logging-iframe');
|
|
3741
|
-
if (!loggingIframe) {
|
|
3742
|
-
// add a hidden iframe
|
|
3743
|
-
loggingIframe = document.createElement('iframe');
|
|
3744
|
-
loggingIframe.id = 'zonos---debug-logging-iframe';
|
|
3745
|
-
loggingIframe.style.display = 'none';
|
|
3746
|
-
loggingIframe.style.opacity = '0';
|
|
3747
|
-
loggingIframe.style.position = 'absolute';
|
|
3748
|
-
loggingIframe.style.top = '-9999px';
|
|
3749
|
-
loggingIframe.style.left = '-9999px';
|
|
3750
|
-
loggingIframe.style.width = '1px';
|
|
3751
|
-
loggingIframe.style.height = '1px';
|
|
3752
|
-
loggingIframe.style.border = 'none';
|
|
3753
|
-
loggingIframe.style.overflow = 'hidden';
|
|
3754
|
-
loggingIframe.style.visibility = 'hidden';
|
|
3755
|
-
document.body.appendChild(loggingIframe);
|
|
3756
|
-
}
|
|
3757
|
-
// use the logging iframe's console to log just in case the console is disabled (overriden) by the site owner
|
|
3758
|
-
const console = ((_a = loggingIframe.contentWindow) === null || _a === void 0 ? void 0 : _a.window.console) || window.console;
|
|
3759
|
-
switch (type) {
|
|
3760
|
-
case 'warn':
|
|
3761
|
-
// eslint-disable-next-line no-console
|
|
3762
|
-
console.warn(message, ...additionalInfo);
|
|
3763
|
-
break;
|
|
3764
|
-
case 'info':
|
|
3765
|
-
// eslint-disable-next-line no-console
|
|
3766
|
-
console.info(message, ...additionalInfo);
|
|
3767
|
-
break;
|
|
3768
|
-
default:
|
|
3769
|
-
// eslint-disable-next-line no-console
|
|
3770
|
-
console.groupCollapsed(message, ...additionalInfo);
|
|
3771
|
-
// eslint-disable-next-line no-console
|
|
3772
|
-
console.trace();
|
|
3773
|
-
// eslint-disable-next-line no-console
|
|
3774
|
-
console.groupEnd();
|
|
3775
|
-
break;
|
|
3776
|
-
}
|
|
3777
|
-
};
|
|
3778
|
-
|
|
3779
3782
|
const getCurrencyElements = (selector) => {
|
|
3780
3783
|
const currencySelector = selector || '.money';
|
|
3781
3784
|
if (!isValidSelector(currencySelector)) {
|
|
3782
|
-
// eslint-disable-next-line no-console
|
|
3783
3785
|
logError(`Currency element selector "${currencySelector}" is not valid.`);
|
|
3784
3786
|
return null;
|
|
3785
3787
|
}
|
|
3786
3788
|
const currencyElements = document.querySelectorAll(currencySelector);
|
|
3787
3789
|
if (!currencyElements.length) {
|
|
3788
|
-
// eslint-disable-next-line no-console
|
|
3789
3790
|
log(`No currency elements found with selector "${currencySelector}"`, 'warn');
|
|
3790
3791
|
return null;
|
|
3791
3792
|
}
|
|
3792
|
-
return
|
|
3793
|
+
// return array of currency elements instead of a NodeList
|
|
3794
|
+
return Array.from(currencyElements);
|
|
3793
3795
|
};
|
|
3794
3796
|
|
|
3795
3797
|
const getInitialElementAmount = (element) => {
|
|
3796
3798
|
var _a;
|
|
3797
3799
|
const domesticValue = element.getAttribute('data-domestic');
|
|
3798
|
-
|
|
3799
|
-
|
|
3800
|
-
|
|
3801
|
-
|
|
3802
|
-
|
|
3803
|
-
|
|
3800
|
+
const intlValue = element.getAttribute('data-zintl');
|
|
3801
|
+
// Only keep numbers, decimal, and hyphens
|
|
3802
|
+
const cleanedText = (_a = element.textContent) === null || _a === void 0 ? void 0 : _a.replace(/[^\d.-]/g, '');
|
|
3803
|
+
if (!cleanedText) {
|
|
3804
|
+
return null;
|
|
3805
|
+
}
|
|
3806
|
+
// If the element has no data-domestic attribute, or the text content is different from the data-zintl attribute, set the data-domestic attribute
|
|
3807
|
+
if (!domesticValue || element.textContent !== intlValue) {
|
|
3804
3808
|
// Store the original value on the element once, and international on every new conversion
|
|
3805
3809
|
element.setAttribute('data-domestic', cleanedText);
|
|
3806
3810
|
return parseFloat(cleanedText);
|
|
@@ -3808,9 +3812,32 @@ const getInitialElementAmount = (element) => {
|
|
|
3808
3812
|
return parseFloat(domesticValue);
|
|
3809
3813
|
};
|
|
3810
3814
|
|
|
3815
|
+
const convertCurrency = (element) => {
|
|
3816
|
+
var _a;
|
|
3817
|
+
const amount = getInitialElementAmount(element);
|
|
3818
|
+
if (!amount || isNaN(amount)) {
|
|
3819
|
+
return;
|
|
3820
|
+
}
|
|
3821
|
+
const currentIntlValue = element.getAttribute('data-zintl');
|
|
3822
|
+
const currentCountryValue = element.getAttribute('data-zcountry-code');
|
|
3823
|
+
// do nothing if the target currency is the same
|
|
3824
|
+
const isExchangeRateReady = localizationStore.targetCurrency ===
|
|
3825
|
+
((_a = localizationStore.exchangeRate) === null || _a === void 0 ? void 0 : _a.targetFormat.currencyCode);
|
|
3826
|
+
// if the current value on the element is different from the current intl value, update the data-zintl attribute
|
|
3827
|
+
if (isExchangeRateReady &&
|
|
3828
|
+
(element.textContent !== currentIntlValue ||
|
|
3829
|
+
currentCountryValue !== localizationStore.selectedCountryCode)) {
|
|
3830
|
+
const observedFormattedValue = currencyConvertAndFormat(amount);
|
|
3831
|
+
element.textContent = observedFormattedValue;
|
|
3832
|
+
// save the new value to the data-zintl attribute
|
|
3833
|
+
element.setAttribute('data-zintl', observedFormattedValue);
|
|
3834
|
+
element.setAttribute('data-zcountry-code', localizationStore.selectedCountryCode || '');
|
|
3835
|
+
}
|
|
3836
|
+
};
|
|
3811
3837
|
const defaultCurrencyConverter = () => {
|
|
3812
3838
|
const { currencyElementSelector } = zonosStore.helloSettings;
|
|
3813
3839
|
const currencyElements = getCurrencyElements(currencyElementSelector);
|
|
3840
|
+
// do nothing if none of the currency elements are found
|
|
3814
3841
|
if (!(currencyElements === null || currencyElements === void 0 ? void 0 : currencyElements.length)) {
|
|
3815
3842
|
return;
|
|
3816
3843
|
}
|
|
@@ -3819,33 +3846,8 @@ const defaultCurrencyConverter = () => {
|
|
|
3819
3846
|
return;
|
|
3820
3847
|
}
|
|
3821
3848
|
currencyElements.forEach((element) => {
|
|
3822
|
-
|
|
3823
|
-
|
|
3824
|
-
return;
|
|
3825
|
-
}
|
|
3826
|
-
element.setAttribute('data-zintl', currencyConvert(amount).toString());
|
|
3827
|
-
// Check if an observer is already attached to the element
|
|
3828
|
-
let observer = element._mutationObserver;
|
|
3829
|
-
if (!observer) {
|
|
3830
|
-
observer = new MutationObserver(() => {
|
|
3831
|
-
const observedFormattedValue = currencyConvertAndFormat(amount);
|
|
3832
|
-
element.textContent = observedFormattedValue;
|
|
3833
|
-
});
|
|
3834
|
-
observer.observe(element, {
|
|
3835
|
-
characterData: true,
|
|
3836
|
-
childList: true,
|
|
3837
|
-
});
|
|
3838
|
-
element._mutationObserver = observer;
|
|
3839
|
-
}
|
|
3840
|
-
// Temporarily disconnect the observer to prevent an infinite loop
|
|
3841
|
-
observer.disconnect();
|
|
3842
|
-
const formattedValue = currencyConvertAndFormat(amount);
|
|
3843
|
-
element.textContent = formattedValue;
|
|
3844
|
-
// Reconnect the observer after the update is complete
|
|
3845
|
-
observer.observe(element, {
|
|
3846
|
-
characterData: true,
|
|
3847
|
-
childList: true,
|
|
3848
|
-
});
|
|
3849
|
+
// convert the currency and save the formatted value to the data-zintl attribute
|
|
3850
|
+
convertCurrency(element);
|
|
3849
3851
|
});
|
|
3850
3852
|
};
|
|
3851
3853
|
|
|
@@ -3927,11 +3929,9 @@ const getNewLocalization = async () => {
|
|
|
3927
3929
|
!selectedCountryCode) {
|
|
3928
3930
|
return;
|
|
3929
3931
|
}
|
|
3930
|
-
|
|
3931
|
-
|
|
3932
|
-
|
|
3933
|
-
startExchangeRateTimeout({ isGuaranteed, maxAge });
|
|
3934
|
-
}
|
|
3932
|
+
const isGuaranteed = zonosStore.checkoutSettings.visibilityStatus === 'ENABLED';
|
|
3933
|
+
const { maxAge } = await triggerGetExchangeRate(isGuaranteed);
|
|
3934
|
+
startExchangeRateTimeout({ isGuaranteed, maxAge });
|
|
3935
3935
|
localizationStore.countryLandedCost = await getCountryLandedCost(localizationStore.selectedCountryCode);
|
|
3936
3936
|
};
|
|
3937
3937
|
const getCustomMessages = async () => {
|
|
@@ -3958,7 +3958,8 @@ const getOverrideLocale = () => {
|
|
|
3958
3958
|
const zonosLocale = currentUrl.searchParams.get('zonosLocale');
|
|
3959
3959
|
return zonosLocale;
|
|
3960
3960
|
};
|
|
3961
|
-
const localizationStoreUpdateSelectedCountryCode =
|
|
3961
|
+
const localizationStoreUpdateSelectedCountryCode = (newSelectedCountryCode) => {
|
|
3962
|
+
var _a;
|
|
3962
3963
|
log('update selected country code');
|
|
3963
3964
|
localizationStore.selectedCountryCode = newSelectedCountryCode;
|
|
3964
3965
|
const { selectedCountryCode, shippingZoneCountries } = localizationStore;
|
|
@@ -3982,6 +3983,8 @@ const localizationStoreUpdateSelectedCountryCode = async (newSelectedCountryCode
|
|
|
3982
3983
|
window.sessionStorage.setItem('zonos--country', selectedCountryCode);
|
|
3983
3984
|
// Update the URL query param with the new country code
|
|
3984
3985
|
setZCountryUrlParam(selectedCountryCode);
|
|
3986
|
+
(_a = document
|
|
3987
|
+
.querySelector('zonos-hello')) === null || _a === void 0 ? void 0 : _a.setAttribute('z-country', selectedCountryCode);
|
|
3985
3988
|
};
|
|
3986
3989
|
const initLocalizationStore = async () => {
|
|
3987
3990
|
// all countries from countries.json, shipping zone and localization
|
|
@@ -4137,11 +4140,26 @@ const calculateLandedCost = async (abortController) => {
|
|
|
4137
4140
|
return json;
|
|
4138
4141
|
};
|
|
4139
4142
|
|
|
4143
|
+
const jsonParse = (_data) => {
|
|
4144
|
+
if (typeof _data === 'string') {
|
|
4145
|
+
try {
|
|
4146
|
+
// eslint-disable-next-line no-restricted-syntax
|
|
4147
|
+
const json = JSON.parse(_data);
|
|
4148
|
+
return json;
|
|
4149
|
+
}
|
|
4150
|
+
catch (_error) {
|
|
4151
|
+
return null;
|
|
4152
|
+
}
|
|
4153
|
+
}
|
|
4154
|
+
return null;
|
|
4155
|
+
};
|
|
4156
|
+
|
|
4140
4157
|
const addressRuleStyle = ({ theme, }) => {
|
|
4141
4158
|
switch (theme) {
|
|
4142
4159
|
default:
|
|
4143
4160
|
return {
|
|
4144
4161
|
'.Input': {
|
|
4162
|
+
boxShadow: 'none',
|
|
4145
4163
|
// need to reset everything and the paddingTop to default, otherwise the paddingTop will not be updated.
|
|
4146
4164
|
padding: '0',
|
|
4147
4165
|
paddingBottom: '8px',
|
|
@@ -4150,6 +4168,9 @@ const addressRuleStyle = ({ theme, }) => {
|
|
|
4150
4168
|
// any value here will be add up to the default paddingTop (20px).
|
|
4151
4169
|
paddingTop: '6px',
|
|
4152
4170
|
},
|
|
4171
|
+
'.Input:focus': {
|
|
4172
|
+
boxShadow: 'none',
|
|
4173
|
+
},
|
|
4153
4174
|
};
|
|
4154
4175
|
}
|
|
4155
4176
|
};
|
|
@@ -4216,6 +4237,17 @@ const getStripeOptions = ({ clientSecret, overrideBorderRaidus, overridePrimaryC
|
|
|
4216
4237
|
locale: localizationStore.selectedLocale,
|
|
4217
4238
|
};
|
|
4218
4239
|
};
|
|
4240
|
+
const stripeStoreCleanupDomesticShippingSession = () => {
|
|
4241
|
+
window.sessionStorage.removeItem('zonos--bigcommerce-domestic-checkout-shipping');
|
|
4242
|
+
};
|
|
4243
|
+
// Save shipping address to session storage
|
|
4244
|
+
const stripeStoreSaveDomesticShippingSession = (props) => {
|
|
4245
|
+
window.sessionStorage.setItem('zonos--bigcommerce-domestic-checkout-shipping', JSON.stringify(props));
|
|
4246
|
+
};
|
|
4247
|
+
const stripeStoreGetDomesticShippingSession = () => {
|
|
4248
|
+
const session = window.sessionStorage.getItem('zonos--bigcommerce-domestic-checkout-shipping');
|
|
4249
|
+
return jsonParse(session);
|
|
4250
|
+
};
|
|
4219
4251
|
const initStripeElements = async (props) => {
|
|
4220
4252
|
var _a, _b;
|
|
4221
4253
|
const clientSecret = stripeStore.clientSecret;
|
|
@@ -4317,12 +4349,18 @@ const stripeStorePrefetchLandedCost = async () => {
|
|
|
4317
4349
|
try {
|
|
4318
4350
|
const abortController = new AbortController();
|
|
4319
4351
|
stripeStore.fetchingLandedCostAbordController = abortController;
|
|
4320
|
-
const { checkoutSessionWorkflow, shipmentRatingCalculateWorkflow } = await calculateLandedCost(abortController);
|
|
4352
|
+
const { checkoutSessionWorkflow, landedCostCalculateWorkflow, shipmentRatingCalculateWorkflow, } = await calculateLandedCost(abortController);
|
|
4321
4353
|
// reset abort controller after we are done
|
|
4322
4354
|
stripeStore.fetchingLandedCostAbordController = null;
|
|
4323
4355
|
// update cart store with landed cost info
|
|
4324
4356
|
cartStore.landedCostData =
|
|
4325
|
-
(checkoutSessionWorkflow === null || checkoutSessionWorkflow === void 0 ? void 0 : checkoutSessionWorkflow.
|
|
4357
|
+
(checkoutSessionWorkflow === null || checkoutSessionWorkflow === void 0 ? void 0 : checkoutSessionWorkflow.map(checkoutSession => {
|
|
4358
|
+
const foundLandedCost = landedCostCalculateWorkflow === null || landedCostCalculateWorkflow === void 0 ? void 0 : landedCostCalculateWorkflow.find(item => { var _a; return (item === null || item === void 0 ? void 0 : item.id) === ((_a = checkoutSession.landedCost) === null || _a === void 0 ? void 0 : _a.id); });
|
|
4359
|
+
if (!foundLandedCost) {
|
|
4360
|
+
return null;
|
|
4361
|
+
}
|
|
4362
|
+
return Object.assign(Object.assign({}, checkoutSession), { landedCost: foundLandedCost });
|
|
4363
|
+
}).filter(Boolean)) || null;
|
|
4326
4364
|
cartStore.shippingData =
|
|
4327
4365
|
(shipmentRatingCalculateWorkflow === null || shipmentRatingCalculateWorkflow === void 0 ? void 0 : shipmentRatingCalculateWorkflow.filter(Boolean)) || null;
|
|
4328
4366
|
// apply new subtotal and total, this is mainly to show items in the presentment currency
|
|
@@ -4407,7 +4445,11 @@ const stripeStoreRetrievePayment = async ({ clientSecret: _clientSecret, storybo
|
|
|
4407
4445
|
const { paymentIntent } = await stripeStore.stripe.retrievePaymentIntent(clientSecret);
|
|
4408
4446
|
const status = paymentIntent === null || paymentIntent === void 0 ? void 0 : paymentIntent.status;
|
|
4409
4447
|
const { isError, messages } = getStripeMessageBasedOnStatus(status);
|
|
4410
|
-
return {
|
|
4448
|
+
return {
|
|
4449
|
+
error: isError,
|
|
4450
|
+
messages,
|
|
4451
|
+
paymentMethod: paymentIntent === null || paymentIntent === void 0 ? void 0 : paymentIntent.payment_method,
|
|
4452
|
+
};
|
|
4411
4453
|
};
|
|
4412
4454
|
const stripeStoreConfirmPayment = async () => {
|
|
4413
4455
|
var _a, _b, _c;
|
|
@@ -4599,14 +4641,14 @@ const cartStoreReCalculateTotal = async ({ currency, itemsAmount, landedCostId,
|
|
|
4599
4641
|
logError('Could not update cart total without checkout session id');
|
|
4600
4642
|
return false;
|
|
4601
4643
|
}
|
|
4602
|
-
const { json } = await stripeStoreUpdateCheckoutSession({
|
|
4644
|
+
const { errors, json } = await stripeStoreUpdateCheckoutSession({
|
|
4603
4645
|
currency,
|
|
4604
4646
|
id: cartStore.checkoutSessionId,
|
|
4605
4647
|
itemsAmount,
|
|
4606
4648
|
landedCostId,
|
|
4607
4649
|
presentmentCountryCode: localizationStore.selectedCountryCode,
|
|
4608
4650
|
});
|
|
4609
|
-
if (!json) {
|
|
4651
|
+
if (errors.length > 0 || !json) {
|
|
4610
4652
|
// do nothing if we can't get checkout session
|
|
4611
4653
|
logError('Error occurs when updating checkout session');
|
|
4612
4654
|
cartStoreUpdateToErrorState({
|
|
@@ -4717,4 +4759,4 @@ const cartStorePreviousStep = () => {
|
|
|
4717
4759
|
}
|
|
4718
4760
|
};
|
|
4719
4761
|
|
|
4720
|
-
export {
|
|
4762
|
+
export { currencyConvertAndFormat as A, currencyConvert as B, currencyFormat as C, stripeStoreRetrievePayment as D, cartStoreUpdateSelectedShippingOption as E, cartStoreGetShippingTransitInfo as F, localizationStoreUpdateSelectedLocale as G, log as a, localizationStoreUpdateSelectedCountryCode as b, stripeStoreCleanupDomesticShippingSession as c, logError as d, stripeStoreSaveDomesticShippingSession as e, cartStore as f, cartStoreUpdateItems as g, cartStoreReset as h, initStripeElements as i, stripeStore as j, stripeStoreInitCheckoutSession as k, localizationStore as l, cartStoreUpdateToErrorState as m, stripeStorePrefetchLandedCost as n, cartStoreNextStep as o, stripeStoreConfirmPayment as p, stripeStoreReset as q, cartStorePreviousStep as r, stripeStoreGetDomesticShippingSession as s, translate as t, handleFetch as u, isValidSelector as v, initLocalizationStore as w, getZCountryUrlParam as x, setZCountryUrlParam as y, currencyDisplay as z };
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
const formatStringWithLinks = (str) => {
|
|
2
|
+
// Match Markdown-style links or standalone URLs not in Markdown format
|
|
3
|
+
const linkRegex = /\[([^\]]+)\]\((https?:\/\/[^\s\)]+)\)|(https?:\/\/[^\s]+)/g;
|
|
4
|
+
const messageWithLinks = str.replace(linkRegex, (_match, text, markdownUrl, url) => {
|
|
5
|
+
if (markdownUrl) {
|
|
6
|
+
return `<zonos-link href="${markdownUrl}" target="_blank" rel="noopener noreferrer">${text}</zonos-link>`;
|
|
7
|
+
}
|
|
8
|
+
else {
|
|
9
|
+
return `<zonos-link href="${url}" target="_blank" rel="noopener noreferrer">${url}</zonos-link>`;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
return messageWithLinks;
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
export { formatStringWithLinks as f };
|
package/dist/esm/loader.js
CHANGED
|
@@ -5,7 +5,7 @@ import { g as globalScripts } from './app-globals-0f993ce5.js';
|
|
|
5
5
|
const defineCustomElements = async (win, options) => {
|
|
6
6
|
if (typeof window === 'undefined') return undefined;
|
|
7
7
|
await globalScripts();
|
|
8
|
-
return bootstrapLazy([["zonos-checkout",[[2,"zonos-checkout",{"appearanceSettingsOverride":[16],"preview":[4],"mobile":[4],"defaultAddress":[16],"forceDialogOpen":[4,"force-dialog-open"],"open":[32],"stripe":[32],"submitLoading":[32],"paymentError":[32],"collapseReviewMobile":[32],"isAttachError":[32],"isMobile":[32],"zonosReviewRef":[32],"storybookPaymentStatusOverride":[32],"closeDialogHandler":[64],"init":[64],"setToFinishStep":[64]},[[16,"zonos--init-cart-info","initCartInfoHandler"],[9,"resize","handleWindowResize"]],{"appearanceSettingsOverride":["appearanceSettingsOverrideChanged"],"mobile":["handleMobileChange"]}]]],["zonos-hello",[[1,"zonos-hello",{"mobileLocationOverride":[1,"mobile-location-override"],"animateFromLeftOverride":[4,"animate-from-left-override"],"appearanceSettingsOverride":[16],"showPeekMessage":[32],"zonosStoreHelloSettings":[32],"showDialog":[32],"peekMessage":[32],"initialUrl":[32],"allRestrictedItems":[32],"allFoundProducts":[32],"productsOnPage":[32],"displayCurrency":[64],"convertAndFormat":[64],"convert":[64],"format":[64]},[[9,"resize","handleResize"]]]]],["zonos-controller",[[1,"zonos-controller",{"config":[16],"zonosApiKey":[1,"zonos-api-key"],"initCheckoutElement":[64],"setupGoogleFont":[64],"showNotification":[64],"overrideConfig":[64],"overrideCountry":[64],"getAppearanceSetting":[64],"updateOrganizationName":[64]}]]],["zonos-component",[[1,"zonos-component",{"first":[1],"middle":[1],"last":[1]}]]],["zonos-
|
|
8
|
+
return bootstrapLazy([["zonos-checkout",[[2,"zonos-checkout",{"appearanceSettingsOverride":[16],"preview":[4],"mobile":[4],"defaultAddress":[16],"forceDialogOpen":[4,"force-dialog-open"],"open":[32],"stripe":[32],"submitLoading":[32],"paymentError":[32],"collapseReviewMobile":[32],"isAttachError":[32],"isMobile":[32],"zonosReviewRef":[32],"storybookPaymentStatusOverride":[32],"domesticRedirectedBtnSelector":[32],"closeDialogHandler":[64],"init":[64],"setToFinishStep":[64]},[[16,"zonos--init-cart-info","initCartInfoHandler"],[9,"resize","handleWindowResize"]],{"appearanceSettingsOverride":["appearanceSettingsOverrideChanged"],"mobile":["handleMobileChange"]}]]],["zonos-hello",[[1,"zonos-hello",{"mobileLocationOverride":[1,"mobile-location-override"],"animateFromLeftOverride":[4,"animate-from-left-override"],"appearanceSettingsOverride":[16],"showPeekMessage":[32],"zonosStoreHelloSettings":[32],"showDialog":[32],"peekMessage":[32],"initialUrl":[32],"allRestrictedItems":[32],"allFoundProducts":[32],"productsOnPage":[32],"displayCurrency":[64],"convertAndFormat":[64],"convert":[64],"format":[64],"openHelloDialog":[64]},[[9,"resize","handleResize"]]]]],["zonos-controller",[[1,"zonos-controller",{"config":[16],"zonosApiKey":[1,"zonos-api-key"],"initCheckoutElement":[64],"setupGoogleFont":[64],"showNotification":[64],"overrideConfig":[64],"overrideCountry":[64],"getAppearanceSetting":[64],"updateOrganizationName":[64]}]]],["zonos-component",[[1,"zonos-component",{"first":[1],"middle":[1],"last":[1]}]]],["zonos-link",[[1,"zonos-link",{"href":[1],"rel":[1],"target":[1],"linkTitle":[1,"link-title"]}]]],["zonos-logo",[[1,"zonos-logo",{"theme":[1],"width":[1]}]]],["zonos-text",[[1,"zonos-text",{"textColor":[1,"text-color"],"size":[1],"type":[1],"weight":[2],"content":[1],"ready":[32]}]]],["zonos-hello-dialog",[[1,"zonos-hello-dialog",{"isOpen":[4,"is-open"],"setIsOpen":[16],"mobileLocationOverride":[1,"mobile-location-override"],"animateFromLeftOverride":[4,"animate-from-left-override"],"appearanceSettings":[16],"restrictedItems":[16],"welcomeMessage":[32],"showCountrySelect":[32],"showLanguageSelect":[32]},[[4,"click","globalClickHandler"]],{"isOpen":["isOpenHandler"]}]]],["zonos-notification",[[1,"zonos-notification",{"notificationArray":[32],"showNotification":[64]}]]],["zonos-payment",[[2,"zonos-payment",{"titleText":[1,"title-text"],"stripe":[32],"stripeElements":[32]},null,{"stripeElements":["watchInitStripe"],"stripe":["watchInitStripe"]}]]],["zonos-shipping-rich-radio",[[1,"zonos-shipping-rich-radio",{"items":[16],"borderColor":[1,"border-color"],"borderStyle":[1,"border-style"],"theme":[1],"selectedItem":[32]}]]],["zonos-badge_2",[[1,"zonos-badge",{"bold":[4],"badgeColor":[1,"badge-color"],"icon":[16],"iconRight":[4,"icon-right"],"size":[1],"rounded":[4]}],[1,"zonos-tooltip",{"label":[1],"subtitle":[1],"showTooltip":[32]}]]],["zonos-country-flag",[[1,"zonos-country-flag",{"countryCode":[1,"country-code"],"size":[2]}]]],["zonos-banner",[[1,"zonos-banner",{"bannerTitle":[1,"banner-title"],"intent":[1],"hasContent":[32]}]]],["zonos-button_3",[[1,"zonos-button",{"buttonColor":[1,"button-color"],"backgroundColor":[1,"background-color"],"borderStyle":[1,"border-style"],"isDisabled":[4,"is-disabled"],"icon":[16],"iconRight":[4,"icon-right"],"size":[1],"variant":[1],"noBackground":[4,"no-background"],"noPaddingLeft":[4,"no-padding-left"],"noPaddingRight":[4,"no-padding-right"],"loading":[4],"theme":[1],"hasIcon":[32],"hasContent":[32]},[[2,"click","clickHandler"]],{"icon":["iconChangeHandler"]}],[1,"zonos-icon",{"autoHeight":[4,"auto-height"],"iconColor":[1,"icon-color"],"content":[1],"size":[2]}],[1,"zonos-spinner",{"size":[2],"spinnerColor":[1,"spinner-color"]}]]],["zonos-select-dialog-header_2",[[1,"zonos-select-dialog-header",{"handleOnClose":[16],"label":[1]}],[1,"zonos-v-stack",{"spacing":[2]}]]],["zonos-card_2",[[1,"zonos-language-select",{"handleOnClose":[16]}],[1,"zonos-card",{"actions":[16],"footerActions":[16],"footerContent":[16],"footerHeight":[2,"footer-height"],"label":[16],"spacing":[1]}]]],["zonos-country-select_3",[[1,"zonos-country-select",{"handleOnClose":[16],"inputValue":[32]}],[1,"zonos-hello-dialog-footer",{"appearanceSettings":[16],"setShowCountrySelect":[16],"setShowLanguageSelect":[16]}],[1,"zonos-custom-message",{"icon":[1],"message":[1]}]]],["zonos-address_4",[[2,"zonos-address",{"type":[1],"titleText":[1,"title-text"],"defaultAddress":[16],"stripe":[32],"isDirtyAddress":[32]},null,{"stripe":["watchInitStripe"]}],[1,"zonos-checkbox",{"backgroundColor":[1,"background-color"],"label":[1],"isChecked":[4,"is-checked"],"isDisabled":[4,"is-disabled"],"size":[2],"fontSize":[1,"font-size"],"borderStyle":[1,"border-style"]}],[2,"zonos-link-authentication",{"titleText":[1,"title-text"],"stripe":[32]},null,{"stripe":["watchInitStripe"]}],[1,"zonos-collapse",{"collapsed":[4],"collapseSize":[2,"collapse-size"],"height":[32],"iframe":[32]}]]],["zonos-cart-items_9",[[1,"zonos-checkout-footer",{"showDialog":[32]},[[4,"click","handleGlobalClick"]]],[2,"zonos-customer-info",{"continueLoading":[4,"continue-loading"],"submitBtnType":[1,"submit-btn-type"],"submitBtnColor":[1,"submit-btn-color"],"defaultAddress":[16],"disabled":[32]},null,{"disabled":["watchFormComplete"]}],[2,"zonos-checkout-payment",{"paymentError":[4,"payment-error"],"submitBtnType":[1,"submit-btn-type"],"continueLoading":[4,"continue-loading"],"submitBtnColor":[1,"submit-btn-color"],"disabled":[32]},null,{"disabled":["watchFormComplete"]}],[2,"zonos-shipping",{"continueLoading":[4,"continue-loading"],"submitBtnColor":[1,"submit-btn-color"],"submitBtnType":[1,"submit-btn-type"],"selectedShippingMethod":[32],"disabled":[32]},null,{"disabled":["watchFormComplete"]}],[1,"zonos-cart-subtotal"],[1,"zonos-checkout-finish",{"borderRadius":[1,"border-radius"],"storybookForceStatus":[1,"storybook-force-status"],"overrideNotification":[16],"isLoading":[32],"notificationType":[32],"notificationTitle":[32],"notificationMessages":[32],"order":[32]}],[1,"zonos-dialog",{"open":[4],"headerText":[1,"header-text"],"width":[1],"height":[1],"noHeader":[4,"no-header"],"noBodyPadding":[4,"no-body-padding"],"noBorder":[4,"no-border"],"footerRightAction":[16],"borderStyle":[1,"border-style"],"noCloseButton":[4,"no-close-button"],"noClickOutside":[4,"no-click-outside"],"mobile":[4],"isLoading":[4,"is-loading"],"isMobile":[32]},[[9,"resize","handleWindowResize"]]],[1,"zonos-review",{"mobile":[4],"collapsed":[4],"isMobile":[32]},[[9,"resize","handleWindowResize"]]],[1,"zonos-cart-items",{"errorImages":[32]}]]]], options);
|
|
9
9
|
};
|
|
10
10
|
|
|
11
11
|
export { defineCustomElements };
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { u as handleFetch, l as localizationStore, a as log } from './cart-e261efc1.js';
|
|
2
|
+
import { z as zonosStore } from './zonosStore-00bce01b.js';
|
|
3
|
+
|
|
4
|
+
const trackConversionEvent = async (eventName, metadata) => {
|
|
5
|
+
// If a Zonos domain, we don't want analytics to be tracked
|
|
6
|
+
if (window.location.href.includes('zonos.com')) {
|
|
7
|
+
return;
|
|
8
|
+
}
|
|
9
|
+
const url = `${"https://v1.route.js.zonos.com"}/api/zonos-elements/track-conversion-event`;
|
|
10
|
+
const countryCode = localizationStore.selectedCountryCode;
|
|
11
|
+
const organizationId = zonosStore.organizationId;
|
|
12
|
+
const body = {
|
|
13
|
+
countryCode,
|
|
14
|
+
eventName,
|
|
15
|
+
metadata,
|
|
16
|
+
organizationId,
|
|
17
|
+
};
|
|
18
|
+
await handleFetch(url, {
|
|
19
|
+
body,
|
|
20
|
+
method: 'POST',
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
const sendErrorLog = async ({ endpoint, errors, metadata }) => {
|
|
25
|
+
const errorObject = {
|
|
26
|
+
endpoint,
|
|
27
|
+
errors,
|
|
28
|
+
metadata,
|
|
29
|
+
};
|
|
30
|
+
void handleFetch(`${"https://v1.route.js.zonos.com"}/api/zonos-elements/log-error`, {
|
|
31
|
+
body: errorObject,
|
|
32
|
+
method: 'POST',
|
|
33
|
+
});
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Submit a gtag event if the gtag function is available.
|
|
38
|
+
*/
|
|
39
|
+
const submitGtag = (event) => {
|
|
40
|
+
const googleAnalyticSetting = zonosStore.checkoutSettings.analyticsProviders.find(item => item.type === 'GOOGLE_ANALYTICS');
|
|
41
|
+
// only submit if googleAnalytic in checkout setting is on.
|
|
42
|
+
if (!googleAnalyticSetting || (googleAnalyticSetting === null || googleAnalyticSetting === void 0 ? void 0 : googleAnalyticSetting.status) === 'DISABLED') {
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
if (typeof window.gtag === 'function') {
|
|
46
|
+
log('Zonos submits gtag event', 'log', event);
|
|
47
|
+
window.gtag('event', event, {});
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
export { submitGtag as a, sendErrorLog as s, trackConversionEvent as t };
|