@zonos/elements 1.3.261 → 1.3.263
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-d08c87e2.js → cart-02a93797.js} +4 -4
- package/dist/cjs/{debounce-3e17b4e9.js → debounce-606d1801.js} +1 -1
- package/dist/cjs/{getBorderRadius-db55a464.js → getBorderRadius-a91911e7.js} +1 -1
- package/dist/cjs/{getContrastColor-8ed1cb48.js → getContrastColor-68058615.js} +2 -2
- package/dist/cjs/{hasInclusivePrice-c781c336.js → hasInclusivePrice-751ef38b.js} +1 -1
- package/dist/cjs/index.cjs.js +12 -9
- package/dist/cjs/{invoice-e64f97c6.js → invoice-215b8d2b.js} +3 -3
- package/dist/cjs/{isCollectMobileTablet-9675485f.js → isCollectMobileTablet-0d909501.js} +3 -3
- package/dist/cjs/{isContrastColor-6a17f408.js → isContrastColor-a02c4889.js} +1 -1
- package/dist/cjs/{isDarkColor-bfe6d1eb.js → isDarkColor-e317bb06.js} +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{localization-a7fac4b4.js → localization-68ebf7c6.js} +1 -1
- package/dist/cjs/{paypal-73a542cb.js → paypal-f8a0cca3.js} +144 -10
- package/dist/cjs/{placeTestOrder-aefd31e8.js → placeTestOrder-ce734b60.js} +2 -2
- package/dist/cjs/{renderCheckoutCurrency-a374741a.js → renderCheckoutCurrency-d163c1c4.js} +2 -2
- package/dist/cjs/submitGtag-07a3b09e.js +167 -0
- package/dist/cjs/{throttle-dac93461.js → throttle-8aebac7d.js} +2 -2
- package/dist/cjs/{updateCheckoutSessionAttributes-a3776bb0.js → updateCheckoutSessionAttributes-a9a97194.js} +1 -1
- package/dist/cjs/zonos-address-display_8.cjs.entry.js +7 -7
- package/dist/cjs/zonos-address_4.cjs.entry.js +7 -7
- package/dist/cjs/zonos-badge.cjs.entry.js +1 -1
- package/dist/cjs/zonos-banner.cjs.entry.js +1 -1
- package/dist/cjs/zonos-button_3.cjs.entry.js +3 -3
- package/dist/cjs/zonos-card_5.cjs.entry.js +8 -8
- package/dist/cjs/zonos-cart-items_12.cjs.entry.js +42 -33
- package/dist/cjs/zonos-checkbox_2.cjs.entry.js +3 -3
- package/dist/cjs/zonos-checkout.cjs.entry.js +15 -15
- package/dist/cjs/zonos-collapse.cjs.entry.js +1 -1
- package/dist/cjs/zonos-collect-cart-items_3.cjs.entry.js +5 -5
- package/dist/cjs/zonos-collect-finish_6.cjs.entry.js +17 -17
- package/dist/cjs/zonos-collect.cjs.entry.js +9 -9
- package/dist/cjs/zonos-controller.cjs.entry.js +8 -8
- package/dist/cjs/zonos-country-flag.cjs.entry.js +2 -2
- package/dist/cjs/zonos-country-select_4.cjs.entry.js +3 -3
- package/dist/cjs/zonos-elements.cjs.js +1 -1
- package/dist/cjs/zonos-hello-dialog.cjs.entry.js +13 -11
- package/dist/cjs/zonos-hello.cjs.entry.js +46 -14
- package/dist/cjs/zonos-input.cjs.entry.js +2 -2
- package/dist/cjs/zonos-invoice-cart-items_2.cjs.entry.js +7 -7
- package/dist/cjs/zonos-invoice-finish_5.cjs.entry.js +17 -17
- package/dist/cjs/zonos-invoice.cjs.entry.js +9 -9
- package/dist/cjs/zonos-language-select_2.cjs.entry.js +2 -2
- package/dist/cjs/zonos-logo.cjs.entry.js +1 -1
- package/dist/cjs/zonos-shipping-rich-radio.cjs.entry.js +5 -5
- package/dist/cjs/zonos-store-credit.cjs.entry.js +6 -6
- package/dist/cjs/zonos-stripe-input.cjs.entry.js +3 -3
- package/dist/cjs/zonos-text.cjs.entry.js +1 -1
- package/dist/cjs/zonos-v-stack.cjs.entry.js +1 -1
- package/dist/cjs/{zonosStore-1c517e55.js → zonosStore-0662b95f.js} +1 -0
- package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-finish/zonos-checkout-finish.js +12 -12
- package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-payment/zonos-checkout-payment.css +7 -0
- package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-payment/zonos-checkout-payment.js +7 -3
- package/dist/collection/components/checkout/zonos-checkout/zonos-checkout.js +6 -6
- package/dist/collection/components/checkout/zonos-checkout/zonos-customer-info/zonos-customer-info.css +7 -0
- package/dist/collection/components/checkout/zonos-checkout/zonos-customer-info/zonos-customer-info.js +5 -1
- package/dist/collection/components/checkout/zonos-checkout/zonos-shipping/zonos-shipping.css +7 -0
- package/dist/collection/components/checkout/zonos-checkout/zonos-shipping/zonos-shipping.js +6 -3
- package/dist/collection/components/checkout/zonos-collect/zonos-collect-finish/zonos-collect-finish.js +6 -6
- package/dist/collection/components/checkout/zonos-collect/zonos-collect-payment/zonos-collect-payment.js +2 -2
- package/dist/collection/components/checkout/zonos-invoice/zonos-invoice-finish/zonos-invoice-finish.js +6 -6
- package/dist/collection/components/checkout/zonos-invoice/zonos-invoice-payment/zonos-invoice-payment.js +2 -2
- package/dist/collection/components/hello/zonos-hello/zonos-hello.css +23 -15
- package/dist/collection/components/hello/zonos-hello/zonos-hello.js +45 -10
- package/dist/collection/components/hello/zonos-hello-dialog/zonos-hello-dialog.js +10 -8
- package/dist/collection/components/main/zonos-controller.js +2 -2
- package/dist/collection/components/store/checkout/paypal.js +4 -4
- package/dist/collection/components/store/zonosStore.js +1 -0
- package/dist/collection/components/utils/analytics/analyticsRelayState.js +112 -0
- package/dist/collection/components/utils/analytics/mapToFbEvent.js +66 -0
- package/dist/collection/components/utils/hello/getHelloWidgetSize.js +22 -0
- package/dist/collection/components/utils/submitAnalytics.js +16 -0
- package/dist/collection/components/utils/submitFbq.js +56 -0
- package/dist/collection/components/utils/submitGtag.js +15 -78
- package/dist/collection/scripts/_zonosBase.js +5 -2
- package/dist/collection/types/analyticsRelay.js +2 -2
- package/dist/collection/types/generated/graphql.internal.types.js +67 -1
- package/dist/esm/{cart-c490d252.js → cart-34b11708.js} +4 -4
- package/dist/esm/{debounce-8faafc9f.js → debounce-ab526ca0.js} +1 -1
- package/dist/esm/{getBorderRadius-66de1b16.js → getBorderRadius-98c64be8.js} +1 -1
- package/dist/esm/{getContrastColor-e14f95a7.js → getContrastColor-2340485f.js} +2 -2
- package/dist/esm/{hasInclusivePrice-7a0ce66a.js → hasInclusivePrice-dfb21fc9.js} +1 -1
- package/dist/esm/index.js +12 -9
- package/dist/esm/{invoice-3ea5715b.js → invoice-6d8bdf21.js} +3 -3
- package/dist/esm/{isCollectMobileTablet-0dcbd45a.js → isCollectMobileTablet-85403c93.js} +3 -3
- package/dist/esm/{isContrastColor-f9e65e70.js → isContrastColor-6bad285e.js} +1 -1
- package/dist/esm/{isDarkColor-8092a9fb.js → isDarkColor-0a8453e7.js} +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{localization-542dbe20.js → localization-2e523b35.js} +1 -1
- package/dist/esm/{paypal-38ca5d21.js → paypal-d3b3d967.js} +145 -12
- package/dist/esm/{placeTestOrder-d7001709.js → placeTestOrder-e1d6dfcd.js} +2 -2
- package/dist/esm/{renderCheckoutCurrency-75f1bba3.js → renderCheckoutCurrency-cc72a6c2.js} +2 -2
- package/dist/esm/submitGtag-ae9d5d91.js +162 -0
- package/dist/esm/{throttle-5a66b4fd.js → throttle-882b1f47.js} +2 -2
- package/dist/esm/{updateCheckoutSessionAttributes-8f3f932e.js → updateCheckoutSessionAttributes-da7fdd37.js} +1 -1
- package/dist/esm/zonos-address-display_8.entry.js +7 -7
- package/dist/esm/zonos-address_4.entry.js +7 -7
- package/dist/esm/zonos-badge.entry.js +1 -1
- package/dist/esm/zonos-banner.entry.js +1 -1
- package/dist/esm/zonos-button_3.entry.js +3 -3
- package/dist/esm/zonos-card_5.entry.js +8 -8
- package/dist/esm/zonos-cart-items_12.entry.js +42 -33
- package/dist/esm/zonos-checkbox_2.entry.js +3 -3
- package/dist/esm/zonos-checkout.entry.js +15 -15
- package/dist/esm/zonos-collapse.entry.js +1 -1
- package/dist/esm/zonos-collect-cart-items_3.entry.js +5 -5
- package/dist/esm/zonos-collect-finish_6.entry.js +17 -17
- package/dist/esm/zonos-collect.entry.js +9 -9
- package/dist/esm/zonos-controller.entry.js +8 -8
- package/dist/esm/zonos-country-flag.entry.js +2 -2
- package/dist/esm/zonos-country-select_4.entry.js +3 -3
- package/dist/esm/zonos-elements.js +1 -1
- package/dist/esm/zonos-hello-dialog.entry.js +13 -11
- package/dist/esm/zonos-hello.entry.js +46 -14
- package/dist/esm/zonos-input.entry.js +2 -2
- package/dist/esm/zonos-invoice-cart-items_2.entry.js +7 -7
- package/dist/esm/zonos-invoice-finish_5.entry.js +17 -17
- package/dist/esm/zonos-invoice.entry.js +9 -9
- package/dist/esm/zonos-language-select_2.entry.js +2 -2
- package/dist/esm/zonos-logo.entry.js +1 -1
- package/dist/esm/zonos-shipping-rich-radio.entry.js +5 -5
- package/dist/esm/zonos-store-credit.entry.js +6 -6
- package/dist/esm/zonos-stripe-input.entry.js +3 -3
- package/dist/esm/zonos-text.entry.js +1 -1
- package/dist/esm/zonos-v-stack.entry.js +1 -1
- package/dist/esm/{zonosStore-f1d45eac.js → zonosStore-9662b071.js} +1 -0
- package/dist/esm-es5/{cart-c490d252.js → cart-34b11708.js} +1 -1
- package/dist/esm-es5/{debounce-8faafc9f.js → debounce-ab526ca0.js} +1 -1
- package/dist/esm-es5/{getBorderRadius-66de1b16.js → getBorderRadius-98c64be8.js} +1 -1
- package/dist/esm-es5/{getContrastColor-e14f95a7.js → getContrastColor-2340485f.js} +1 -1
- package/dist/esm-es5/{hasInclusivePrice-7a0ce66a.js → hasInclusivePrice-dfb21fc9.js} +1 -1
- package/dist/esm-es5/index.js +1 -1
- package/dist/esm-es5/{invoice-3ea5715b.js → invoice-6d8bdf21.js} +1 -1
- package/dist/esm-es5/{isCollectMobileTablet-0dcbd45a.js → isCollectMobileTablet-85403c93.js} +1 -1
- package/dist/esm-es5/{isContrastColor-f9e65e70.js → isContrastColor-6bad285e.js} +1 -1
- package/dist/esm-es5/{isDarkColor-8092a9fb.js → isDarkColor-0a8453e7.js} +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/{localization-542dbe20.js → localization-2e523b35.js} +1 -1
- package/dist/esm-es5/paypal-d3b3d967.js +17 -0
- package/dist/esm-es5/{placeTestOrder-d7001709.js → placeTestOrder-e1d6dfcd.js} +1 -1
- package/dist/esm-es5/{renderCheckoutCurrency-75f1bba3.js → renderCheckoutCurrency-cc72a6c2.js} +1 -1
- package/dist/esm-es5/submitGtag-ae9d5d91.js +1 -0
- package/dist/esm-es5/{throttle-5a66b4fd.js → throttle-882b1f47.js} +1 -1
- package/dist/esm-es5/{updateCheckoutSessionAttributes-8f3f932e.js → updateCheckoutSessionAttributes-da7fdd37.js} +1 -1
- package/dist/esm-es5/zonos-address-display_8.entry.js +1 -1
- package/dist/esm-es5/zonos-address_4.entry.js +1 -1
- package/dist/esm-es5/zonos-badge.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_5.entry.js +1 -1
- package/dist/esm-es5/zonos-cart-items_12.entry.js +1 -1
- package/dist/esm-es5/zonos-checkbox_2.entry.js +1 -1
- package/dist/esm-es5/zonos-checkout.entry.js +1 -1
- package/dist/esm-es5/zonos-collapse.entry.js +1 -1
- package/dist/esm-es5/zonos-collect-cart-items_3.entry.js +1 -1
- package/dist/esm-es5/zonos-collect-finish_6.entry.js +1 -1
- package/dist/esm-es5/zonos-collect.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_4.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-input.entry.js +1 -1
- package/dist/esm-es5/zonos-invoice-cart-items_2.entry.js +1 -1
- package/dist/esm-es5/zonos-invoice-finish_5.entry.js +1 -1
- package/dist/esm-es5/zonos-invoice.entry.js +1 -1
- package/dist/esm-es5/zonos-language-select_2.entry.js +1 -1
- package/dist/esm-es5/zonos-logo.entry.js +1 -1
- package/dist/esm-es5/zonos-shipping-rich-radio.entry.js +1 -1
- package/dist/esm-es5/zonos-store-credit.entry.js +1 -1
- package/dist/esm-es5/zonos-stripe-input.entry.js +1 -1
- package/dist/esm-es5/zonos-text.entry.js +1 -1
- package/dist/esm-es5/zonos-v-stack.entry.js +1 -1
- package/dist/esm-es5/{zonosStore-f1d45eac.js → zonosStore-9662b071.js} +1 -1
- package/dist/scripts/analyticsRelayOnInit.js +1 -1
- package/dist/scripts/index.d.ts +42 -15
- package/dist/scripts/index.js +1 -1
- package/dist/scripts/loadZonos.js +1 -1
- package/dist/scripts/zonos.js +1 -1
- package/dist/types/components/hello/zonos-hello/zonos-hello.d.ts +8 -1
- package/dist/types/components/utils/analytics/analyticsRelayState.d.ts +43 -0
- package/dist/types/components/utils/analytics/mapToFbEvent.d.ts +11 -0
- package/dist/types/components/utils/hello/getHelloWidgetSize.d.ts +15 -0
- package/dist/types/components/utils/submitAnalytics.d.ts +12 -0
- package/dist/types/components/utils/submitFbq.d.ts +14 -0
- package/dist/types/components/utils/submitGtag.d.ts +4 -9
- package/dist/types/components.d.ts +10 -2
- package/dist/types/scripts/_zonosBase.d.ts +11 -0
- package/dist/types/scripts/cart/_setupCartDataWithSettings.d.ts +8 -7
- package/dist/types/types/analyticsRelay.d.ts +19 -3
- package/dist/types/types/generated/graphql.internal.types.d.ts +100 -20
- package/dist/types/types/generated/graphql.internal.types.ts +118 -20
- package/dist/types/types/hello/HelloConfig.d.ts +5 -0
- package/dist/zonos-elements/index.esm.js +1 -1
- package/dist/zonos-elements/{p-53fe581b.system.js → p-0207c91e.system.js} +1 -1
- package/dist/zonos-elements/{p-6726fee0.entry.js → p-024a4af5.entry.js} +1 -1
- package/dist/zonos-elements/p-06d8f294.entry.js +1 -0
- package/dist/zonos-elements/{p-a1142a95.entry.js → p-07c228a7.entry.js} +1 -1
- package/dist/zonos-elements/p-0f3b9ed7.entry.js +1 -0
- package/dist/zonos-elements/{p-ed827ca3.entry.js → p-15161658.entry.js} +1 -1
- package/dist/zonos-elements/{p-9262a57c.system.entry.js → p-17b6f9ff.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-bf4d2299.system.entry.js → p-191661c6.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-2c9714e8.system.entry.js → p-1b5d90ee.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-43a6e469.system.js → p-1bf9a1b9.system.js} +1 -1
- package/dist/zonos-elements/{p-a8bb461c.js → p-1c1149ff.js} +1 -1
- package/dist/zonos-elements/{p-e749fb81.entry.js → p-1cc651e8.entry.js} +1 -1
- package/dist/zonos-elements/{p-e684e68f.entry.js → p-1f107c84.entry.js} +1 -1
- package/dist/zonos-elements/{p-34fc45e5.entry.js → p-1fb6b787.entry.js} +1 -1
- package/dist/zonos-elements/{p-4cee62fb.entry.js → p-20e1a5a0.entry.js} +1 -1
- package/dist/zonos-elements/{p-d7a9be55.system.js → p-227a1ecc.system.js} +1 -1
- package/dist/zonos-elements/p-22a8b44b.system.js +1 -0
- package/dist/zonos-elements/{p-55742c52.entry.js → p-235ee1d3.entry.js} +1 -1
- package/dist/zonos-elements/{p-ef12af4b.entry.js → p-2381985c.entry.js} +1 -1
- package/dist/zonos-elements/{p-aa74b61a.system.entry.js → p-25b5ac23.system.entry.js} +1 -1
- package/dist/zonos-elements/p-29b60bf3.system.js +1 -1
- package/dist/zonos-elements/{p-27f01d76.entry.js → p-2b40fab2.entry.js} +1 -1
- package/dist/zonos-elements/{p-f00a56be.system.entry.js → p-30b19a4e.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-a75b8ad7.js → p-356b2068.js} +1 -1
- package/dist/zonos-elements/p-367a72bc.js +1 -0
- package/dist/zonos-elements/{p-15ef7644.system.js → p-3689821f.system.js} +1 -1
- package/dist/zonos-elements/{p-c263f95f.entry.js → p-3ae1a543.entry.js} +1 -1
- package/dist/zonos-elements/p-3baf98a0.system.entry.js +1 -0
- package/dist/zonos-elements/{p-be1032ab.system.entry.js → p-4039b72d.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-1917202e.system.entry.js → p-45ceb26f.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-d2ef0416.system.entry.js → p-47a58a38.system.entry.js} +1 -1
- package/dist/zonos-elements/p-4980facb.js +1 -0
- package/dist/zonos-elements/p-4c89d04a.js +1 -0
- package/dist/zonos-elements/p-4d0b8897.system.js +18 -0
- package/dist/zonos-elements/{p-14f156c6.system.entry.js → p-501d16ad.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-a661dd45.system.entry.js → p-51c60875.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-a3020bc9.entry.js → p-5290d104.entry.js} +1 -1
- package/dist/zonos-elements/{p-248bdea2.system.js → p-5496e9ae.system.js} +1 -1
- package/dist/zonos-elements/p-562fbdab.js +17 -0
- package/dist/zonos-elements/p-5834833a.entry.js +1 -0
- package/dist/zonos-elements/p-5aa86f9c.entry.js +1 -0
- package/dist/zonos-elements/{p-b2cd18b4.system.entry.js → p-5d32f10f.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-e25e0b4b.system.js → p-5e6f85f0.system.js} +1 -1
- package/dist/zonos-elements/{p-20263609.system.js → p-60a391b8.system.js} +1 -1
- package/dist/zonos-elements/p-65ea8ae4.js +1 -0
- package/dist/zonos-elements/{p-cdbb50cf.entry.js → p-665bfd4f.entry.js} +1 -1
- package/dist/zonos-elements/{p-b47fcd8c.system.entry.js → p-6a11cccc.system.entry.js} +1 -1
- package/dist/zonos-elements/p-6a195559.system.js +1 -0
- package/dist/zonos-elements/p-6d81901a.js +1 -0
- package/dist/zonos-elements/{p-3ff736f7.system.entry.js → p-7003d093.system.entry.js} +1 -1
- package/dist/zonos-elements/p-70c485df.js +1 -0
- package/dist/zonos-elements/{p-8d0bca3a.system.entry.js → p-7297f6bd.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-d50fef06.system.entry.js → p-73765370.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-dc4e867e.system.entry.js → p-79a7998f.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-0699931c.system.js → p-7b6e65d6.system.js} +1 -1
- package/dist/zonos-elements/{p-9e761130.entry.js → p-7e313e45.entry.js} +1 -1
- package/dist/zonos-elements/{p-e76dc266.system.entry.js → p-8331aa21.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-e55bc187.entry.js → p-8571f3ce.entry.js} +1 -1
- package/dist/zonos-elements/{p-e14f421d.system.entry.js → p-8603fb37.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-072c5e07.system.entry.js → p-926c33b1.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-f7d24382.system.entry.js → p-92f40018.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-7793d334.entry.js → p-96f8cea8.entry.js} +1 -1
- package/dist/zonos-elements/p-97f0eda6.system.js +1 -0
- package/dist/zonos-elements/{p-4a227683.system.entry.js → p-9c5cce08.system.entry.js} +1 -1
- package/dist/zonos-elements/p-9f7e7148.system.js +1 -0
- package/dist/zonos-elements/{p-196423ad.system.js → p-a076cf7f.system.js} +1 -1
- package/dist/zonos-elements/{p-3c3139d2.system.entry.js → p-a3936c44.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-b5223840.js → p-a50d095f.js} +1 -1
- package/dist/zonos-elements/{p-2f924331.js → p-ab0b23f2.js} +1 -1
- package/dist/zonos-elements/{p-80e7cab5.entry.js → p-adeaa7cf.entry.js} +1 -1
- package/dist/zonos-elements/{p-0ec4e307.system.js → p-b2d462f9.system.js} +1 -1
- package/dist/zonos-elements/p-b8710131.entry.js +1 -0
- package/dist/zonos-elements/{p-c7ecef98.system.entry.js → p-ba9e2612.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-5a79e1f4.entry.js → p-bccae0df.entry.js} +1 -1
- package/dist/zonos-elements/{p-f0046c48.entry.js → p-bee55d71.entry.js} +1 -1
- package/dist/zonos-elements/{p-72adb40d.js → p-c2b86522.js} +1 -1
- package/dist/zonos-elements/{p-17476a30.system.entry.js → p-c361d520.system.entry.js} +1 -1
- package/dist/zonos-elements/p-c4d057b0.js +1 -0
- package/dist/zonos-elements/p-c9a1f774.js +1 -0
- package/dist/zonos-elements/p-cda0b441.entry.js +1 -0
- package/dist/zonos-elements/{p-f6922df5.js → p-d28be518.js} +1 -1
- package/dist/zonos-elements/{p-5beab541.js → p-db3b101a.js} +1 -1
- package/dist/zonos-elements/{p-5db00bfa.system.entry.js → p-dc71be6f.system.entry.js} +1 -1
- package/dist/zonos-elements/p-de44cccd.system.entry.js +1 -0
- package/dist/zonos-elements/{p-00bd7e5d.entry.js → p-e06936f4.entry.js} +1 -1
- package/dist/zonos-elements/{p-d983d472.entry.js → p-e0ea6e24.entry.js} +1 -1
- package/dist/zonos-elements/p-e3292be8.system.js +1 -0
- package/dist/zonos-elements/{p-eca03303.system.entry.js → p-e4792f63.system.entry.js} +1 -1
- package/dist/zonos-elements/p-e5dfccd8.system.js +1 -0
- package/dist/zonos-elements/{p-313b87f3.system.entry.js → p-e98e4c0b.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-61be7d98.system.js → p-eb99a625.system.js} +1 -1
- package/dist/zonos-elements/{p-ed9385f4.js → p-f3cfd8fa.js} +1 -1
- package/dist/zonos-elements/{p-ade15fd2.entry.js → p-f440cd53.entry.js} +1 -1
- package/dist/zonos-elements/{p-8df3c6a0.entry.js → p-fe5303d1.entry.js} +1 -1
- package/dist/zonos-elements/zonos-elements.esm.js +1 -1
- package/package.json +1 -1
- package/dist/cjs/submitGtag-9ac5a42e.js +0 -116
- package/dist/esm/submitGtag-543058f9.js +0 -113
- package/dist/esm-es5/paypal-38ca5d21.js +0 -17
- package/dist/esm-es5/submitGtag-543058f9.js +0 -1
- package/dist/zonos-elements/p-03e53ef5.entry.js +0 -1
- package/dist/zonos-elements/p-09307a03.js +0 -1
- package/dist/zonos-elements/p-17a8a514.system.js +0 -1
- package/dist/zonos-elements/p-1916c2b0.entry.js +0 -1
- package/dist/zonos-elements/p-24407504.js +0 -17
- package/dist/zonos-elements/p-31bd3851.system.js +0 -1
- package/dist/zonos-elements/p-387f6a4d.js +0 -1
- package/dist/zonos-elements/p-47bde0ba.system.js +0 -18
- package/dist/zonos-elements/p-5dff9d51.system.entry.js +0 -1
- package/dist/zonos-elements/p-6b7beb44.system.js +0 -1
- package/dist/zonos-elements/p-7158a18b.js +0 -1
- package/dist/zonos-elements/p-721fadd5.js +0 -1
- package/dist/zonos-elements/p-7c5c5318.js +0 -1
- package/dist/zonos-elements/p-7d9bbdc8.js +0 -1
- package/dist/zonos-elements/p-8bce79f4.system.js +0 -1
- package/dist/zonos-elements/p-944bf0e7.js +0 -1
- package/dist/zonos-elements/p-9cfd1dc3.entry.js +0 -1
- package/dist/zonos-elements/p-b21cf539.system.entry.js +0 -1
- package/dist/zonos-elements/p-cd563d65.system.js +0 -1
- package/dist/zonos-elements/p-cdf99051.entry.js +0 -1
- package/dist/zonos-elements/p-e6726a50.system.js +0 -1
- package/dist/zonos-elements/p-eeff2b04.entry.js +0 -1
- package/dist/zonos-elements/p-f4030586.entry.js +0 -1
- package/dist/zonos-elements/p-f68ce554.js +0 -1
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import { RELAY_PING_TYPE, RELAY_READY_TYPE, ZONOS_ANALYTIC_TYPE, } from "../../../types/analyticsRelay";
|
|
2
|
+
const providerReady = {
|
|
3
|
+
fbq: false,
|
|
4
|
+
gtag: false,
|
|
5
|
+
};
|
|
6
|
+
const queue = [];
|
|
7
|
+
let listenerAdded = false;
|
|
8
|
+
const isInIframe = () => typeof window !== 'undefined' && window.parent !== window;
|
|
9
|
+
const flushQueue = () => {
|
|
10
|
+
// Walk a copy and rebuild to keep events whose provider isn't ready yet
|
|
11
|
+
const remaining = [];
|
|
12
|
+
while (queue.length > 0) {
|
|
13
|
+
const event = queue.shift();
|
|
14
|
+
if (!providerReady[event.provider]) {
|
|
15
|
+
remaining.push(event);
|
|
16
|
+
continue;
|
|
17
|
+
}
|
|
18
|
+
try {
|
|
19
|
+
window.parent.postMessage({
|
|
20
|
+
event: event.event,
|
|
21
|
+
fbqMode: event.fbqMode,
|
|
22
|
+
metadata: event.payload,
|
|
23
|
+
provider: event.provider,
|
|
24
|
+
type: ZONOS_ANALYTIC_TYPE,
|
|
25
|
+
}, '*');
|
|
26
|
+
}
|
|
27
|
+
catch (_a) {
|
|
28
|
+
// Ignore postMessage failures
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
queue.push(...remaining);
|
|
32
|
+
};
|
|
33
|
+
const ensureListener = () => {
|
|
34
|
+
if (listenerAdded)
|
|
35
|
+
return;
|
|
36
|
+
listenerAdded = true;
|
|
37
|
+
window.addEventListener('message', (e) => {
|
|
38
|
+
var _a;
|
|
39
|
+
if (((_a = e.data) === null || _a === void 0 ? void 0 : _a.type) !== RELAY_READY_TYPE)
|
|
40
|
+
return;
|
|
41
|
+
// Older parent scripts may omit `provider`; treat as gtag for backward compatibility.
|
|
42
|
+
const provider = e.data.provider || 'gtag';
|
|
43
|
+
providerReady[provider] = true;
|
|
44
|
+
if (typeof window.Zonos !== 'undefined') {
|
|
45
|
+
if (provider === 'gtag') {
|
|
46
|
+
window.Zonos.googleAnalyticReady = true;
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
window.Zonos.facebookPixelReady = true;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
flushQueue();
|
|
53
|
+
});
|
|
54
|
+
};
|
|
55
|
+
/**
|
|
56
|
+
* Send a ping to the parent so it can inject/configure analytics relays for the providers we care about.
|
|
57
|
+
* Picks up `googleAnalyticId` and `facebookPixelId` from `window.Zonos`, both of which may be set by `customHTML`.
|
|
58
|
+
*/
|
|
59
|
+
export const sendRelayPing = () => {
|
|
60
|
+
if (!isInIframe())
|
|
61
|
+
return;
|
|
62
|
+
ensureListener();
|
|
63
|
+
try {
|
|
64
|
+
const z = typeof window.Zonos !== 'undefined' ? window.Zonos : undefined;
|
|
65
|
+
window.parent.postMessage({
|
|
66
|
+
facebookPixelId: z === null || z === void 0 ? void 0 : z.facebookPixelId,
|
|
67
|
+
googleAnalyticId: z === null || z === void 0 ? void 0 : z.googleAnalyticId,
|
|
68
|
+
type: RELAY_PING_TYPE,
|
|
69
|
+
}, '*');
|
|
70
|
+
}
|
|
71
|
+
catch (_a) {
|
|
72
|
+
// Ignore postMessage failures
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
/**
|
|
76
|
+
* Sends ping to parent so it can inject/configure analytics relays and respond with ready.
|
|
77
|
+
* Call after customHTML or custom script sets `window.Zonos.googleAnalyticId` / `window.Zonos.facebookPixelId`.
|
|
78
|
+
*/
|
|
79
|
+
export const ensureAnalyticsRelayPing = () => {
|
|
80
|
+
if (!isInIframe())
|
|
81
|
+
return;
|
|
82
|
+
// If both providers are already ready, no need to ping again
|
|
83
|
+
if (providerReady.gtag && providerReady.fbq)
|
|
84
|
+
return;
|
|
85
|
+
sendRelayPing();
|
|
86
|
+
};
|
|
87
|
+
/**
|
|
88
|
+
* Queue an analytic event for relay to parent. If the provider's relay is already ready,
|
|
89
|
+
* the event is forwarded immediately; otherwise it waits for the ready signal.
|
|
90
|
+
*/
|
|
91
|
+
export const enqueueRelayEvent = (event) => {
|
|
92
|
+
ensureListener();
|
|
93
|
+
if (providerReady[event.provider]) {
|
|
94
|
+
try {
|
|
95
|
+
window.parent.postMessage({
|
|
96
|
+
event: event.event,
|
|
97
|
+
fbqMode: event.fbqMode,
|
|
98
|
+
metadata: event.payload,
|
|
99
|
+
provider: event.provider,
|
|
100
|
+
type: ZONOS_ANALYTIC_TYPE,
|
|
101
|
+
}, '*');
|
|
102
|
+
}
|
|
103
|
+
catch (_a) {
|
|
104
|
+
// Ignore postMessage failures
|
|
105
|
+
}
|
|
106
|
+
return;
|
|
107
|
+
}
|
|
108
|
+
queue.push(event);
|
|
109
|
+
// Re-ping in case the parent hasn't received the ID yet (e.g. customHTML set it after init)
|
|
110
|
+
sendRelayPing();
|
|
111
|
+
};
|
|
112
|
+
export const isAnalyticsRelayInIframe = isInIframe;
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
2
|
+
var t = {};
|
|
3
|
+
for (var p in s)
|
|
4
|
+
if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
5
|
+
t[p] = s[p];
|
|
6
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
7
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
8
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
9
|
+
t[p[i]] = s[p[i]];
|
|
10
|
+
}
|
|
11
|
+
return t;
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* Mapping from our internal event names (GA-style) to Facebook Pixel standard event names.
|
|
15
|
+
* @see https://developers.facebook.com/docs/meta-pixel/reference#standard-events
|
|
16
|
+
*
|
|
17
|
+
* Events without an entry have no FB standard equivalent — they are still fired as a custom event
|
|
18
|
+
* via `fbq('trackCustom', ...)` so merchants can target them.
|
|
19
|
+
*/
|
|
20
|
+
const FB_STANDARD_EVENT_BY_INTERNAL_EVENT = {
|
|
21
|
+
purchase: 'Purchase',
|
|
22
|
+
'zonos-checkout-payment-info': 'AddPaymentInfo',
|
|
23
|
+
'zonos-checkout-start': 'InitiateCheckout',
|
|
24
|
+
};
|
|
25
|
+
export const getFbStandardEventName = (event) => { var _a; return (_a = FB_STANDARD_EVENT_BY_INTERNAL_EVENT[event]) !== null && _a !== void 0 ? _a : null; };
|
|
26
|
+
const isPurchaseMetadata = (metadata) => {
|
|
27
|
+
if (!metadata)
|
|
28
|
+
return false;
|
|
29
|
+
return Array.isArray(metadata.items);
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
* Convert a GA-style event payload into a Facebook Pixel parameter object.
|
|
33
|
+
*
|
|
34
|
+
* GA `items: [{ item_id, item_name, price, quantity }]` is converted into FB's
|
|
35
|
+
* `contents: [{ id, quantity, item_price }]` with derived `content_ids`, `num_items`,
|
|
36
|
+
* and `content_type: 'product'`. Other primitive params (e.g. `checkoutSessionId`,
|
|
37
|
+
* `paymentMethod`, `serviceLevelId`) are forwarded as-is so merchants can build
|
|
38
|
+
* custom audiences on them.
|
|
39
|
+
*/
|
|
40
|
+
export const buildFbqParams = (metadata) => {
|
|
41
|
+
if (!metadata)
|
|
42
|
+
return {};
|
|
43
|
+
if (!isPurchaseMetadata(metadata)) {
|
|
44
|
+
// Forward primitive metadata as-is for custom events
|
|
45
|
+
return Object.assign({}, metadata);
|
|
46
|
+
}
|
|
47
|
+
const { currency, items, transaction_id, value } = metadata, rest = __rest(metadata, ["currency", "items", "transaction_id", "value"]);
|
|
48
|
+
const contents = items.map(item => ({
|
|
49
|
+
id: item.item_id,
|
|
50
|
+
item_price: item.price,
|
|
51
|
+
quantity: item.quantity,
|
|
52
|
+
}));
|
|
53
|
+
const contentIds = items.map(item => item.item_id);
|
|
54
|
+
const numItems = items.reduce((acc, item) => acc + item.quantity, 0);
|
|
55
|
+
const params = Object.assign(Object.assign({}, rest), { content_ids: contentIds, content_type: 'product', contents, num_items: numItems });
|
|
56
|
+
if (transaction_id) {
|
|
57
|
+
params.order_id = transaction_id;
|
|
58
|
+
}
|
|
59
|
+
if (currency !== undefined) {
|
|
60
|
+
params.currency = currency;
|
|
61
|
+
}
|
|
62
|
+
if (value !== undefined) {
|
|
63
|
+
params.value = value;
|
|
64
|
+
}
|
|
65
|
+
return params;
|
|
66
|
+
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Default Hello widget diameter in pixels. Matches the legacy size that
|
|
3
|
+
* shipped before `widgetSize` became configurable, so existing merchants
|
|
4
|
+
* continue to render unchanged when they have not set a value.
|
|
5
|
+
*/
|
|
6
|
+
export const HELLO_WIDGET_DEFAULT_SIZE = 18;
|
|
7
|
+
export const HELLO_WIDGET_MIN_SIZE = 18;
|
|
8
|
+
export const HELLO_WIDGET_MAX_SIZE = 64;
|
|
9
|
+
/**
|
|
10
|
+
* Resolve the configured Hello widget size to a safe pixel value. Falls back
|
|
11
|
+
* to the default when the merchant has not configured a size, and clamps
|
|
12
|
+
* out-of-range values so the widget always renders within the supported
|
|
13
|
+
* design bounds.
|
|
14
|
+
*/
|
|
15
|
+
export const getHelloWidgetSize = (configuredSize) => {
|
|
16
|
+
if (configuredSize == null ||
|
|
17
|
+
!Number.isFinite(configuredSize) ||
|
|
18
|
+
configuredSize <= 0) {
|
|
19
|
+
return HELLO_WIDGET_DEFAULT_SIZE;
|
|
20
|
+
}
|
|
21
|
+
return Math.min(HELLO_WIDGET_MAX_SIZE, Math.max(HELLO_WIDGET_MIN_SIZE, configuredSize));
|
|
22
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { submitFbq } from "./submitFbq";
|
|
2
|
+
import { submitGtag, } from "./submitGtag";
|
|
3
|
+
/**
|
|
4
|
+
* Fan out an analytics event to every enabled provider.
|
|
5
|
+
*
|
|
6
|
+
* - Calls `submitGtag` (Google Analytics) — always sends the original event name.
|
|
7
|
+
* - Calls `submitFbq` (Facebook Pixel) — sends the original event name as a custom event,
|
|
8
|
+
* and additionally fires the matching FB standard event when one exists
|
|
9
|
+
* (e.g. `purchase` → `Purchase`, `zonos-checkout-start` → `InitiateCheckout`).
|
|
10
|
+
*
|
|
11
|
+
* Each submitter no-ops when its provider is disabled in `analyticsProviders` settings.
|
|
12
|
+
*/
|
|
13
|
+
export const submitAnalytics = (input) => {
|
|
14
|
+
submitGtag(input);
|
|
15
|
+
submitFbq(input);
|
|
16
|
+
};
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { zonosStore } from "../store/zonosStore";
|
|
2
|
+
import { enqueueRelayEvent, isAnalyticsRelayInIframe, } from "./analytics/analyticsRelayState";
|
|
3
|
+
import { buildFbqParams, getFbStandardEventName, } from "./analytics/mapToFbEvent";
|
|
4
|
+
import { getIsTestMode } from "./checkout/getIsTestMode";
|
|
5
|
+
import { log } from "./logging/log";
|
|
6
|
+
const isFacebookPixelEnabled = () => {
|
|
7
|
+
const provider = zonosStore.checkoutSettings.analyticsProviders.find(item => item.type === 'FACEBOOK_PIXEL');
|
|
8
|
+
return !!provider && provider.status === 'ENABLED';
|
|
9
|
+
};
|
|
10
|
+
const fireFbq = (mode, event, params) => {
|
|
11
|
+
if (isAnalyticsRelayInIframe()) {
|
|
12
|
+
// fbq does not work in the iframe (Facebook Pixel must be on the parent for proper attribution).
|
|
13
|
+
// Relay to parent which will call fbq() once the FB Pixel script is ready.
|
|
14
|
+
enqueueRelayEvent({
|
|
15
|
+
event,
|
|
16
|
+
fbqMode: mode,
|
|
17
|
+
payload: params,
|
|
18
|
+
provider: 'fbq',
|
|
19
|
+
});
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
if (typeof window.fbq === 'function') {
|
|
23
|
+
log('Zonos submits fbq event', 'log', `${mode}:${event}`);
|
|
24
|
+
window.fbq(mode, event, params);
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* Submit a Facebook Pixel event matching the gtag event payload shape.
|
|
29
|
+
*
|
|
30
|
+
* Behavior:
|
|
31
|
+
* - Always fires `fbq('trackCustom', event, params)` so merchants see `zonos-xxx` events.
|
|
32
|
+
* - If the event has a Facebook standard equivalent (e.g. `purchase` → `Purchase`,
|
|
33
|
+
* `zonos-checkout-start` → `InitiateCheckout`, `zonos-checkout-payment-info` →
|
|
34
|
+
* `AddPaymentInfo`), additionally fires `fbq('track', standardEvent, params)` with
|
|
35
|
+
* FB-formatted parameters.
|
|
36
|
+
*
|
|
37
|
+
* @see https://developers.facebook.com/docs/meta-pixel/reference
|
|
38
|
+
*/
|
|
39
|
+
export const submitFbq = ({ event, metadata }) => {
|
|
40
|
+
if (!isFacebookPixelEnabled()) {
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
const isTestMode = getIsTestMode();
|
|
44
|
+
const baseParams = buildFbqParams(metadata);
|
|
45
|
+
const params = Object.assign(Object.assign({}, baseParams), (isTestMode && { isTestMode: true }));
|
|
46
|
+
// filter null values
|
|
47
|
+
const filteredParams = Object.fromEntries(Object.entries(params).filter(([_, value]) => value !== null));
|
|
48
|
+
// 1) Always emit the original event as a custom event so merchants can target zonos-xxx names.
|
|
49
|
+
fireFbq('trackCustom', event, filteredParams);
|
|
50
|
+
// 2) Emit FB standard equivalent if one exists. Skipped when the event itself is the standard
|
|
51
|
+
// name to avoid double-firing (e.g. 'purchase' -> 'Purchase').
|
|
52
|
+
const fbStandardEvent = getFbStandardEventName(event);
|
|
53
|
+
if (fbStandardEvent && fbStandardEvent !== event) {
|
|
54
|
+
fireFbq('track', fbStandardEvent, filteredParams);
|
|
55
|
+
}
|
|
56
|
+
};
|
|
@@ -1,99 +1,36 @@
|
|
|
1
1
|
import { zonosStore } from "../store/zonosStore";
|
|
2
|
+
import { enqueueRelayEvent, ensureAnalyticsRelayPing as ensureAnalyticsRelayPingShared, isAnalyticsRelayInIframe, } from "./analytics/analyticsRelayState";
|
|
2
3
|
import { getIsTestMode } from "./checkout/getIsTestMode";
|
|
3
4
|
import { log } from "./logging/log";
|
|
4
|
-
import { RELAY_PING_TYPE, RELAY_READY_TYPE, ZONOS_ANALYTIC_TYPE, } from "../../types/analyticsRelay";
|
|
5
|
-
let parentGtagReady = false;
|
|
6
|
-
let relayListenerAdded = false;
|
|
7
|
-
const queuedEvents = [];
|
|
8
|
-
function flushQueuedEvents() {
|
|
9
|
-
while (queuedEvents.length > 0) {
|
|
10
|
-
const { event, payload } = queuedEvents.shift();
|
|
11
|
-
try {
|
|
12
|
-
window.parent.postMessage({
|
|
13
|
-
event,
|
|
14
|
-
metadata: payload,
|
|
15
|
-
type: ZONOS_ANALYTIC_TYPE,
|
|
16
|
-
}, '*');
|
|
17
|
-
}
|
|
18
|
-
catch (_a) {
|
|
19
|
-
// Ignore postMessage failures
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
function ensureRelayListener() {
|
|
24
|
-
if (relayListenerAdded)
|
|
25
|
-
return;
|
|
26
|
-
relayListenerAdded = true;
|
|
27
|
-
window.addEventListener('message', (e) => {
|
|
28
|
-
var _a;
|
|
29
|
-
if (((_a = e.data) === null || _a === void 0 ? void 0 : _a.type) === RELAY_READY_TYPE) {
|
|
30
|
-
parentGtagReady = true;
|
|
31
|
-
if (typeof window.Zonos !== 'undefined') {
|
|
32
|
-
window.Zonos.googleAnalyticReady = true;
|
|
33
|
-
}
|
|
34
|
-
flushQueuedEvents();
|
|
35
|
-
}
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
function sendPingToParent() {
|
|
39
|
-
try {
|
|
40
|
-
const googleAnalyticId = typeof window.Zonos !== 'undefined'
|
|
41
|
-
? window.Zonos.googleAnalyticId
|
|
42
|
-
: undefined;
|
|
43
|
-
window.parent.postMessage({ googleAnalyticId, type: RELAY_PING_TYPE }, '*');
|
|
44
|
-
}
|
|
45
|
-
catch (_a) {
|
|
46
|
-
// Ignore postMessage failures
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
5
|
/**
|
|
50
|
-
*
|
|
51
|
-
*
|
|
6
|
+
* Re-export of the shared relay ping helper. Kept here for backward compatibility with
|
|
7
|
+
* existing import paths (e.g. `zonos-controller`).
|
|
52
8
|
*/
|
|
53
|
-
export
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
}
|
|
59
|
-
ensureRelayListener();
|
|
60
|
-
sendPingToParent();
|
|
61
|
-
}
|
|
9
|
+
export const ensureAnalyticsRelayPing = ensureAnalyticsRelayPingShared;
|
|
10
|
+
const isGoogleAnalyticsEnabled = () => {
|
|
11
|
+
const provider = zonosStore.checkoutSettings.analyticsProviders.find(item => item.type === 'GOOGLE_ANALYTICS');
|
|
12
|
+
return !!provider && provider.status === 'ENABLED';
|
|
13
|
+
};
|
|
62
14
|
/**
|
|
63
15
|
* Submit a gtag event if the gtag function is available.
|
|
64
16
|
* When running inside an iframe, only posts to parent after the parent has
|
|
65
17
|
* confirmed (via analyticsRelayOnInit) that gtag is available.
|
|
66
18
|
*/
|
|
67
19
|
export const submitGtag = ({ event, metadata }) => {
|
|
68
|
-
|
|
69
|
-
// only submit if googleAnalytic in checkout setting is on.
|
|
70
|
-
if (!googleAnalyticSetting || (googleAnalyticSetting === null || googleAnalyticSetting === void 0 ? void 0 : googleAnalyticSetting.status) === 'DISABLED') {
|
|
20
|
+
if (!isGoogleAnalyticsEnabled()) {
|
|
71
21
|
return;
|
|
72
22
|
}
|
|
73
23
|
const isTestMode = getIsTestMode();
|
|
74
24
|
const payload = Object.assign(Object.assign({}, metadata), (isTestMode && { isTestMode: true }));
|
|
75
25
|
// filter null key
|
|
76
26
|
const filteredPayload = Object.fromEntries(Object.entries(payload).filter(([_, value]) => value !== null));
|
|
77
|
-
|
|
78
|
-
if (isInIframe) {
|
|
27
|
+
if (isAnalyticsRelayInIframe()) {
|
|
79
28
|
// gtag does not work in iframe; must relay to parent via postMessage
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
metadata: filteredPayload,
|
|
86
|
-
type: ZONOS_ANALYTIC_TYPE,
|
|
87
|
-
}, '*');
|
|
88
|
-
}
|
|
89
|
-
catch (_a) {
|
|
90
|
-
// Ignore postMessage failures
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
else {
|
|
94
|
-
queuedEvents.push({ event, payload: filteredPayload });
|
|
95
|
-
sendPingToParent();
|
|
96
|
-
}
|
|
29
|
+
enqueueRelayEvent({
|
|
30
|
+
event,
|
|
31
|
+
payload: filteredPayload,
|
|
32
|
+
provider: 'gtag',
|
|
33
|
+
});
|
|
97
34
|
return;
|
|
98
35
|
}
|
|
99
36
|
// Not in iframe: call gtag directly
|
|
@@ -53,6 +53,8 @@ Zonos.releaseDate = process.env.NEXT_PUBLIC_RELEASE_DATE;
|
|
|
53
53
|
Zonos.isLegacyCheckout = false;
|
|
54
54
|
Zonos.googleAnalyticId = null;
|
|
55
55
|
Zonos.googleAnalyticReady = false;
|
|
56
|
+
Zonos.facebookPixelId = null;
|
|
57
|
+
Zonos.facebookPixelReady = false;
|
|
56
58
|
Zonos.startLoadTime = startLoadTime;
|
|
57
59
|
Zonos.domain = typeof window !== 'undefined'
|
|
58
60
|
? // domain that embeds the iframe
|
|
@@ -92,9 +94,10 @@ Zonos.init = async (params) => {
|
|
|
92
94
|
log(`====== ZONOS DEBUG MODE: on (${_a.version}) ======`);
|
|
93
95
|
_a.zonosApiKey = zonosApiKey;
|
|
94
96
|
_a.storeId = storeId;
|
|
95
|
-
// When not in iframe,
|
|
97
|
+
// When not in iframe, providers are ready (gtag/fbq work directly). When in iframe, relay sets these after parent configures.
|
|
96
98
|
if (typeof window !== 'undefined' && window.parent === window) {
|
|
97
99
|
_a.googleAnalyticReady = true;
|
|
100
|
+
_a.facebookPixelReady = true;
|
|
98
101
|
}
|
|
99
102
|
if (_a.isNpm) {
|
|
100
103
|
log('====== ZONOS LOADING FROM NPM ======');
|
|
@@ -200,7 +203,7 @@ Zonos.injectCustomScriptForHostedCheckout = () => {
|
|
|
200
203
|
const metadata = (cartData === null || cartData === void 0 ? void 0 : cartData.metadata) || [];
|
|
201
204
|
const headerScript = metadata.find(meta => meta.key === 'customHeaderScript');
|
|
202
205
|
const footerScript = metadata.find(meta => meta.key === 'customFooterScript');
|
|
203
|
-
// googleAnalyticId
|
|
206
|
+
// googleAnalyticId / facebookPixelId are set by customHTML in checkoutSettings (e.g. <script>window.Zonos.googleAnalyticId = "G-XXX"; window.Zonos.facebookPixelId = "1234567890";</script>), injected by zonos-controller
|
|
204
207
|
// Only inject the script if checkout is on Zonos hosted checkout and custom script is available
|
|
205
208
|
if (!window.Zonos.isLegacyCheckout || (!headerScript && !footerScript)) {
|
|
206
209
|
log('Skip injecting custom script for hosted checkout', 'info', {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/** Message type for zonos-analytic events sent from iframe to parent. */
|
|
2
2
|
export const ZONOS_ANALYTIC_TYPE = 'zonos-analytic';
|
|
3
|
-
/** Ping sent by iframe to configure parent's analytics relay (e.g. GA) and get ready signal. */
|
|
3
|
+
/** Ping sent by iframe to configure parent's analytics relay (e.g. GA, FB Pixel) and get ready signal. */
|
|
4
4
|
export const RELAY_PING_TYPE = 'zonos-analytics-relay-ping';
|
|
5
|
-
/** Response from parent when analytics relay (e.g. gtag) is ready. */
|
|
5
|
+
/** Response from parent when an analytics relay (e.g. gtag, fbq) is ready. */
|
|
6
6
|
export const RELAY_READY_TYPE = 'zonos-analytics-relay-ready';
|
|
@@ -121,6 +121,7 @@ export const accountingFeeType = {
|
|
|
121
121
|
GeneralAdjustment: 'GENERAL_ADJUSTMENT',
|
|
122
122
|
GhanaRemittanceFee: 'GHANA_REMITTANCE_FEE',
|
|
123
123
|
GuaranteeOrder: 'GUARANTEE_ORDER',
|
|
124
|
+
GuaranteeOrderDutyExempt: 'GUARANTEE_ORDER_DUTY_EXEMPT',
|
|
124
125
|
GuaranteePercent: 'GUARANTEE_PERCENT',
|
|
125
126
|
HaypostDisbursementFee: 'HAYPOST_DISBURSEMENT_FEE',
|
|
126
127
|
HaypostRemittanceFee: 'HAYPOST_REMITTANCE_FEE',
|
|
@@ -360,6 +361,9 @@ export const adjustmentType = {
|
|
|
360
361
|
Charge: 'CHARGE',
|
|
361
362
|
Credit: 'CREDIT',
|
|
362
363
|
};
|
|
364
|
+
export const agency = {
|
|
365
|
+
Cpsc: 'CPSC',
|
|
366
|
+
};
|
|
363
367
|
export const aiModel = {
|
|
364
368
|
ClaudeHaiku_3_5: 'CLAUDE_HAIKU_3_5',
|
|
365
369
|
ClaudeOpus_4: 'CLAUDE_OPUS_4',
|
|
@@ -528,6 +532,28 @@ export const brokerageNatureOfTransaction = {
|
|
|
528
532
|
NotForResale: 'NOT_FOR_RESALE',
|
|
529
533
|
Return: 'RETURN',
|
|
530
534
|
};
|
|
535
|
+
export const brokeragePgaAgency = {
|
|
536
|
+
Other: 'OTHER',
|
|
537
|
+
UsAtf: 'US_ATF',
|
|
538
|
+
UsCdc: 'US_CDC',
|
|
539
|
+
UsCpsc: 'US_CPSC',
|
|
540
|
+
UsDea: 'US_DEA',
|
|
541
|
+
UsEpa: 'US_EPA',
|
|
542
|
+
UsEpaTsca: 'US_EPA_TSCA',
|
|
543
|
+
UsFcc: 'US_FCC',
|
|
544
|
+
UsFda: 'US_FDA',
|
|
545
|
+
UsNhtsa: 'US_NHTSA',
|
|
546
|
+
UsOfac: 'US_OFAC',
|
|
547
|
+
UsTtb: 'US_TTB',
|
|
548
|
+
UsUsdaAms: 'US_USDA_AMS',
|
|
549
|
+
UsUsdaAphis: 'US_USDA_APHIS',
|
|
550
|
+
UsUsdaFsis: 'US_USDA_FSIS',
|
|
551
|
+
UsUsfws: 'US_USFWS',
|
|
552
|
+
};
|
|
553
|
+
export const brokeragePgaRequirementStrictness = {
|
|
554
|
+
Conditional: 'CONDITIONAL',
|
|
555
|
+
Required: 'REQUIRED',
|
|
556
|
+
};
|
|
531
557
|
export const brokerageTransportationMode = {
|
|
532
558
|
AirContainer: 'AIR_CONTAINER',
|
|
533
559
|
AirNonContainer: 'AIR_NON_CONTAINER',
|
|
@@ -962,7 +988,9 @@ export const consignmentStatus = {
|
|
|
962
988
|
Accepted: 'ACCEPTED',
|
|
963
989
|
Archived: 'ARCHIVED',
|
|
964
990
|
Candidate: 'CANDIDATE',
|
|
991
|
+
Draft: 'DRAFT',
|
|
965
992
|
Filed: 'FILED',
|
|
993
|
+
Filing: 'FILING',
|
|
966
994
|
Ready: 'READY',
|
|
967
995
|
Rejected: 'REJECTED',
|
|
968
996
|
};
|
|
@@ -1880,6 +1908,10 @@ export const dimensionalUnitCode = {
|
|
|
1880
1908
|
Millimeter: 'MILLIMETER',
|
|
1881
1909
|
Yard: 'YARD',
|
|
1882
1910
|
};
|
|
1911
|
+
export const disclaimType = {
|
|
1912
|
+
A: 'A',
|
|
1913
|
+
B: 'B',
|
|
1914
|
+
};
|
|
1883
1915
|
export const displayCurrency = {
|
|
1884
1916
|
DestinationCountry: 'DESTINATION_COUNTRY',
|
|
1885
1917
|
StoreNative: 'STORE_NATIVE',
|
|
@@ -2136,7 +2168,6 @@ export const fieldStatus = {
|
|
|
2136
2168
|
export const frontConversationStatus = {
|
|
2137
2169
|
Archived: 'ARCHIVED',
|
|
2138
2170
|
Assigned: 'ASSIGNED',
|
|
2139
|
-
Open: 'OPEN',
|
|
2140
2171
|
Trashed: 'TRASHED',
|
|
2141
2172
|
Unassigned: 'UNASSIGNED',
|
|
2142
2173
|
};
|
|
@@ -2149,6 +2180,14 @@ export const generalAdjustmentRecordCreateType = {
|
|
|
2149
2180
|
ConnectAccountAdjustment: 'CONNECT_ACCOUNT_ADJUSTMENT',
|
|
2150
2181
|
InvoiceLineRecord: 'INVOICE_LINE_RECORD',
|
|
2151
2182
|
};
|
|
2183
|
+
export const greenLightCheck = {
|
|
2184
|
+
CountryOfOriginValidation: 'COUNTRY_OF_ORIGIN_VALIDATION',
|
|
2185
|
+
DeniedPartyScreening: 'DENIED_PARTY_SCREENING',
|
|
2186
|
+
HsCodeCoherence: 'HS_CODE_COHERENCE',
|
|
2187
|
+
RegulationCheck: 'REGULATION_CHECK',
|
|
2188
|
+
RestrictionCheck: 'RESTRICTION_CHECK',
|
|
2189
|
+
ValueValidation: 'VALUE_VALIDATION',
|
|
2190
|
+
};
|
|
2152
2191
|
export const helloCountryDisplayBehavior = {
|
|
2153
2192
|
All: 'ALL',
|
|
2154
2193
|
OnlyShippable: 'ONLY_SHIPPABLE',
|
|
@@ -2322,14 +2361,23 @@ export const integrationStatus = {
|
|
|
2322
2361
|
Error: 'ERROR',
|
|
2323
2362
|
Inactive: 'INACTIVE',
|
|
2324
2363
|
};
|
|
2364
|
+
export const intendedAudience = {
|
|
2365
|
+
Adult: 'ADULT',
|
|
2366
|
+
Child: 'CHILD',
|
|
2367
|
+
};
|
|
2325
2368
|
export const invoiceAmountSubtotalType = {
|
|
2369
|
+
Adjustment: 'ADJUSTMENT',
|
|
2326
2370
|
Discount: 'DISCOUNT',
|
|
2327
2371
|
Duty: 'DUTY',
|
|
2328
2372
|
Fee: 'FEE',
|
|
2329
2373
|
Item: 'ITEM',
|
|
2330
2374
|
Other: 'OTHER',
|
|
2375
|
+
SetupFee: 'SETUP_FEE',
|
|
2331
2376
|
Shipping: 'SHIPPING',
|
|
2377
|
+
Subscription: 'SUBSCRIPTION',
|
|
2332
2378
|
Tax: 'TAX',
|
|
2379
|
+
TaxDutyCarrierCountry: 'TAX_DUTY_CARRIER_COUNTRY',
|
|
2380
|
+
ZonosFees: 'ZONOS_FEES',
|
|
2333
2381
|
};
|
|
2334
2382
|
export const invoiceCarrier = {
|
|
2335
2383
|
Dhl: 'DHL',
|
|
@@ -2487,6 +2535,7 @@ export const invoiceDetailCategoryInputType = {
|
|
|
2487
2535
|
GeneralAdjustment: 'GENERAL_ADJUSTMENT',
|
|
2488
2536
|
GhanaRemittanceFee: 'GHANA_REMITTANCE_FEE',
|
|
2489
2537
|
GuaranteeOrder: 'GUARANTEE_ORDER',
|
|
2538
|
+
GuaranteeOrderDutyExempt: 'GUARANTEE_ORDER_DUTY_EXEMPT',
|
|
2490
2539
|
GuaranteePercent: 'GUARANTEE_PERCENT',
|
|
2491
2540
|
HaypostDisbursementFee: 'HAYPOST_DISBURSEMENT_FEE',
|
|
2492
2541
|
HaypostRemittanceFee: 'HAYPOST_REMITTANCE_FEE',
|
|
@@ -3766,6 +3815,7 @@ export const organizationType = {
|
|
|
3766
3815
|
Broker: 'BROKER',
|
|
3767
3816
|
Consolidator: 'CONSOLIDATOR',
|
|
3768
3817
|
Developer: 'DEVELOPER',
|
|
3818
|
+
EvolveBrokerage: 'EVOLVE_BROKERAGE',
|
|
3769
3819
|
Government: 'GOVERNMENT',
|
|
3770
3820
|
Integrator: 'INTEGRATOR',
|
|
3771
3821
|
Logistics: 'LOGISTICS',
|
|
@@ -3924,6 +3974,10 @@ export const pddpType = {
|
|
|
3924
3974
|
export const personTaxIdentifierType = {
|
|
3925
3975
|
Other: 'OTHER',
|
|
3926
3976
|
};
|
|
3977
|
+
export const pgaRequirementStrictness = {
|
|
3978
|
+
Conditional: 'CONDITIONAL',
|
|
3979
|
+
Required: 'REQUIRED',
|
|
3980
|
+
};
|
|
3927
3981
|
export const pickupBuildingType = {
|
|
3928
3982
|
Apartment: 'APARTMENT',
|
|
3929
3983
|
Building: 'BUILDING',
|
|
@@ -4864,6 +4918,7 @@ export const storeFeeRuleDetailCategoryIdCreateType = {
|
|
|
4864
4918
|
EtsyGuaranteePercent: 'ETSY_GUARANTEE_PERCENT',
|
|
4865
4919
|
EtsyMerchantFeePercent: 'ETSY_MERCHANT_FEE_PERCENT',
|
|
4866
4920
|
FranceCustomsTax: 'FRANCE_CUSTOMS_TAX',
|
|
4921
|
+
GuaranteeOrderDutyExempt: 'GUARANTEE_ORDER_DUTY_EXEMPT',
|
|
4867
4922
|
LandedCostGuaranteeBuffer: 'LANDED_COST_GUARANTEE_BUFFER',
|
|
4868
4923
|
LandedCostGuaranteeSubsidy: 'LANDED_COST_GUARANTEE_SUBSIDY',
|
|
4869
4924
|
MagentoCrossDockingBuffer: 'MAGENTO_CROSS_DOCKING_BUFFER',
|
|
@@ -5314,6 +5369,13 @@ export const zonosInvoiceFeatureFlagKey = {
|
|
|
5314
5369
|
RedisInvoiceFeesEnabled: 'REDIS_INVOICE_FEES_ENABLED',
|
|
5315
5370
|
RedisZonosInvoiceProcessorEnabled: 'REDIS_ZONOS_INVOICE_PROCESSOR_ENABLED',
|
|
5316
5371
|
};
|
|
5372
|
+
export const zonosInvoiceFinalizeAndChargeOutcome = {
|
|
5373
|
+
AlreadyProcessed: 'ALREADY_PROCESSED',
|
|
5374
|
+
Charged: 'CHARGED',
|
|
5375
|
+
Failed: 'FAILED',
|
|
5376
|
+
InvoiceSent: 'INVOICE_SENT',
|
|
5377
|
+
VoidedZeroAmount: 'VOIDED_ZERO_AMOUNT',
|
|
5378
|
+
};
|
|
5317
5379
|
export const zonosInvoiceInternalExclusionType = {
|
|
5318
5380
|
ZeroAmount: 'ZERO_AMOUNT',
|
|
5319
5381
|
};
|
|
@@ -5336,6 +5398,10 @@ export const zonosInvoiceReprocessAction = {
|
|
|
5336
5398
|
Combine: 'COMBINE',
|
|
5337
5399
|
KeepSeparate: 'KEEP_SEPARATE',
|
|
5338
5400
|
};
|
|
5401
|
+
export const zonosInvoiceReprocessProcessingMode = {
|
|
5402
|
+
Process: 'PROCESS',
|
|
5403
|
+
Skip: 'SKIP',
|
|
5404
|
+
};
|
|
5339
5405
|
export const zonosInvoiceStatusUpdateInputType = {
|
|
5340
5406
|
Created: 'CREATED',
|
|
5341
5407
|
Dispute: 'DISPUTE',
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { c as createStore, z as zonosStore } from './zonosStore-
|
|
2
|
-
import { s as storageStore, l as localizationStore, e as getOverridenZCountry, t as translate, f as filterValidTests, b as storageStoreSetEnabledVariantTestKeys } from './localization-
|
|
1
|
+
import { c as createStore, z as zonosStore } from './zonosStore-9662b071.js';
|
|
2
|
+
import { s as storageStore, l as localizationStore, e as getOverridenZCountry, t as translate, f as filterValidTests, b as storageStoreSetEnabledVariantTestKeys } from './localization-2e523b35.js';
|
|
3
3
|
import { l as log, b as allLogs } from './VarianceTest-572cecf5.js';
|
|
4
4
|
import { h as handleFetch, l as logError, f as fallbackApiList, g as getIsTestMode, a as getIsStagingMode, s as sendErrorLog, j as jsonParse } from './handleFetch-a844cac1.js';
|
|
5
|
-
import { i as isDarkColor } from './isDarkColor-
|
|
6
|
-
import { g as getBorderRadius } from './getBorderRadius-
|
|
5
|
+
import { i as isDarkColor } from './isDarkColor-0a8453e7.js';
|
|
6
|
+
import { g as getBorderRadius } from './getBorderRadius-98c64be8.js';
|
|
7
7
|
|
|
8
8
|
const getCheckoutSession = async () => {
|
|
9
9
|
if (!storageStore.checkoutSessionId) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { i as isDarkColor, t as tinycolor } from './isDarkColor-
|
|
2
|
-
import { i as isContrastColor } from './isContrastColor-
|
|
1
|
+
import { i as isDarkColor, t as tinycolor } from './isDarkColor-0a8453e7.js';
|
|
2
|
+
import { i as isContrastColor } from './isContrastColor-6bad285e.js';
|
|
3
3
|
|
|
4
4
|
const getContrastColor = ({ backgroundColor, color, }) => {
|
|
5
5
|
if (backgroundColor === color) {
|