@zonos/elements 1.3.204 → 1.3.205
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-0d91ad0b.js → cart-193af95a.js} +6 -5
- package/dist/cjs/{debounce-94e1b7ff.js → debounce-0b9c0f8a.js} +1 -1
- package/dist/cjs/{getBorderRadius-8d3b1049.js → getBorderRadius-c424eb05.js} +1 -1
- package/dist/cjs/{index-0993f42d.js → index-1c710d00.js} +455 -377
- package/dist/cjs/index.cjs.js +7 -7
- package/dist/cjs/{isDarkColor-bcf49625.js → isDarkColor-35e8daec.js} +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{localization-2f17c95f.js → localization-88da0959.js} +1 -1
- package/dist/cjs/{paypal-9953115b.js → paypal-8525404c.js} +4 -4
- package/dist/cjs/zonos-address_11.cjs.entry.js +273 -121
- package/dist/cjs/zonos-badge.cjs.entry.js +26 -4
- package/dist/cjs/zonos-banner.cjs.entry.js +6 -5
- package/dist/cjs/zonos-button_3.cjs.entry.js +89 -24
- package/dist/cjs/zonos-card.cjs.entry.js +10 -9
- package/dist/cjs/zonos-cart-items_14.cjs.entry.js +193 -74
- package/dist/cjs/zonos-checkout.cjs.entry.js +90 -35
- package/dist/cjs/zonos-collapse.cjs.entry.js +8 -2
- package/dist/cjs/zonos-component.cjs.entry.js +10 -1
- package/dist/cjs/zonos-controller.cjs.entry.js +6 -8
- package/dist/cjs/zonos-country-flag.cjs.entry.js +8 -4
- package/dist/cjs/zonos-country-select_4.cjs.entry.js +52 -24
- package/dist/cjs/zonos-elements.cjs.js +2 -2
- package/dist/cjs/zonos-empty-state-payment_4.cjs.entry.js +11 -10
- package/dist/cjs/zonos-hello-dialog.cjs.entry.js +21 -13
- package/dist/cjs/zonos-hello.cjs.entry.js +29 -17
- package/dist/cjs/zonos-input.cjs.entry.js +18 -4
- package/dist/cjs/zonos-language-select_2.cjs.entry.js +15 -4
- package/dist/cjs/zonos-link.cjs.entry.js +4 -4
- package/dist/cjs/zonos-logo.cjs.entry.js +8 -2
- package/dist/cjs/zonos-shipping-rich-radio.cjs.entry.js +8 -8
- package/dist/cjs/zonos-stripe-input.cjs.entry.js +25 -9
- package/dist/cjs/zonos-text.cjs.entry.js +11 -4
- package/dist/cjs/zonos-toggle.cjs.entry.js +5 -3
- package/dist/cjs/zonos-tooltip.cjs.entry.js +7 -1
- package/dist/cjs/zonos-v-stack.cjs.entry.js +6 -2
- package/dist/cjs/{zonosStore-9264749e.js → zonosStore-7c1e1bc1.js} +4 -5
- package/dist/collection/collection-manifest.json +1 -1
- package/dist/collection/components/checkout/zonos-checkout/zonos-address-update-dialog/zonos-address-display/zonos-address-display.js +0 -4
- package/dist/collection/components/checkout/zonos-checkout/zonos-address-update-dialog/zonos-address-form/zonos-address-form.js +4 -4
- package/dist/collection/components/checkout/zonos-checkout/zonos-address-update-dialog/zonos-address-update-dialog.js +24 -13
- package/dist/collection/components/checkout/zonos-checkout/zonos-cart-restricted-items/zonos-cart-restricted-items.js +6 -0
- package/dist/collection/components/checkout/zonos-checkout/zonos-cart-subtotal/zonos-cart-subtotal.js +3 -2
- package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-finish/zonos-checkout-finish.js +14 -10
- package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-footer/zonos-checkout-footer.js +3 -1
- package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-payment/zonos-checkout-payment.js +25 -9
- package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-payment/zonos-empty-state-payment/zonos-empty-state-payment.js +3 -1
- package/dist/collection/components/checkout/zonos-checkout/zonos-checkout.js +83 -28
- package/dist/collection/components/checkout/zonos-checkout/zonos-customer-info/zonos-customer-info.js +54 -17
- package/dist/collection/components/checkout/zonos-checkout/zonos-review/zonos-review.js +8 -0
- package/dist/collection/components/checkout/zonos-checkout/zonos-shipping/zonos-shipping.js +20 -12
- package/dist/collection/components/common/zonos-badge/zonos-badge.js +24 -2
- package/dist/collection/components/common/zonos-banner/zonos-banner.js +4 -3
- package/dist/collection/components/common/zonos-button/zonos-button.js +69 -18
- package/dist/collection/components/common/zonos-card/zonos-card.js +7 -6
- package/dist/collection/components/common/zonos-checkbox/zonos-checkbox.js +15 -2
- package/dist/collection/components/common/zonos-checkout-progress-tabs/zonos-checkout-progress-tabs.js +8 -2
- package/dist/collection/components/common/zonos-collapse/zonos-collapse.js +6 -0
- package/dist/collection/components/common/zonos-confirm-dialog/zonos-confirm-dialog.js +34 -9
- package/dist/collection/components/common/zonos-country-flag/zonos-country-flag.js +5 -1
- package/dist/collection/components/common/zonos-country-select/zonos-country-select.js +6 -2
- package/dist/collection/components/common/zonos-custom-message/zonos-custom-message.js +6 -0
- package/dist/collection/components/common/zonos-dialog/zonos-dialog.js +48 -14
- package/dist/collection/components/common/zonos-icon/zonos-icon.js +12 -1
- package/dist/collection/components/common/zonos-input/zonos-input.js +15 -1
- package/dist/collection/components/common/zonos-language-select/zonos-language-select.js +5 -1
- package/dist/collection/components/common/zonos-link/zonos-link.js +3 -3
- package/dist/collection/components/common/zonos-loading-overlay/zonos-loading-overlay.js +7 -1
- package/dist/collection/components/common/zonos-logo/zonos-logo.js +6 -0
- package/dist/collection/components/common/zonos-rest-state/zonos-rest-state.js +4 -4
- package/dist/collection/components/common/zonos-select-dialog-header/zonos-select-dialog-header.js +7 -0
- package/dist/collection/components/common/zonos-shipping-rich-radio/zonos-shipping-rich-radio.js +5 -5
- package/dist/collection/components/common/zonos-spinner/zonos-spinner.js +4 -1
- package/dist/collection/components/common/zonos-stripe-input/zonos-stripe-input.js +21 -5
- package/dist/collection/components/common/zonos-stripe-phone-input/zonos-stripe-phone-input.js +19 -14
- package/dist/collection/components/common/zonos-stripe-select/zonos-stripe-select.js +37 -12
- package/dist/collection/components/common/zonos-text/zonos-text.js +9 -2
- package/dist/collection/components/common/zonos-toggle/zonos-toggle.js +3 -1
- package/dist/collection/components/common/zonos-tooltip/zonos-tooltip.js +6 -0
- package/dist/collection/components/common/zonos-v-stack/zonos-v-stack.js +4 -0
- package/dist/collection/components/common/zonos-virtual-scroll/zonos-virtual-scroll.js +2 -7
- package/dist/collection/components/component-template/zonos-component/zonos-component.js +9 -0
- package/dist/collection/components/hello/zonos-hello/zonos-hello.js +25 -13
- package/dist/collection/components/hello/zonos-hello-dialog/zonos-hello-dialog-footer/zonos-hello-dialog-footer.js +8 -1
- package/dist/collection/components/hello/zonos-hello-dialog/zonos-hello-dialog.css +0 -2
- package/dist/collection/components/hello/zonos-hello-dialog/zonos-hello-dialog.js +17 -9
- package/dist/collection/components/main/zonos-controller.js +0 -4
- package/dist/collection/components/store/checkout/stripe.js +2 -1
- package/dist/collection/components/stripe/zonos-address/zonos-address.js +21 -8
- package/dist/collection/components/stripe/zonos-custom-address/zonos-address-suggestions/zonos-address-suggestions.js +13 -5
- package/dist/collection/components/stripe/zonos-custom-address/zonos-custom-address.js +73 -33
- package/dist/collection/components/stripe/zonos-link-authentication/zonos-link-authentication.js +11 -6
- package/dist/collection/components/stripe/zonos-payment/zonos-payment.js +1 -2
- package/dist/esm/{cart-db61eb95.js → cart-a921e0b7.js} +7 -6
- package/dist/esm/{debounce-3a9f27a0.js → debounce-eaee3a94.js} +1 -1
- package/dist/esm/{getBorderRadius-78b28b4d.js → getBorderRadius-b18c924f.js} +1 -1
- package/dist/esm/{index-a457c60c.js → index-5ea9f81d.js} +455 -377
- package/dist/esm/index.js +7 -7
- package/dist/esm/{isDarkColor-31dd7dff.js → isDarkColor-d8bb8659.js} +1 -1
- package/dist/esm/loader.js +2 -2
- package/dist/esm/{localization-bf7224aa.js → localization-a2b8f9ed.js} +1 -1
- package/dist/esm/{paypal-2e0ffb07.js → paypal-67d51f03.js} +4 -4
- package/dist/esm/zonos-address_11.entry.js +273 -121
- package/dist/esm/zonos-badge.entry.js +26 -4
- package/dist/esm/zonos-banner.entry.js +6 -5
- package/dist/esm/zonos-button_3.entry.js +89 -24
- package/dist/esm/zonos-card.entry.js +10 -9
- package/dist/esm/zonos-cart-items_14.entry.js +193 -74
- package/dist/esm/zonos-checkout.entry.js +90 -35
- package/dist/esm/zonos-collapse.entry.js +8 -2
- package/dist/esm/zonos-component.entry.js +10 -1
- package/dist/esm/zonos-controller.entry.js +6 -8
- package/dist/esm/zonos-country-flag.entry.js +8 -4
- package/dist/esm/zonos-country-select_4.entry.js +52 -24
- package/dist/esm/zonos-elements.js +3 -3
- package/dist/esm/zonos-empty-state-payment_4.entry.js +11 -10
- package/dist/esm/zonos-hello-dialog.entry.js +21 -13
- package/dist/esm/zonos-hello.entry.js +29 -17
- package/dist/esm/zonos-input.entry.js +18 -4
- package/dist/esm/zonos-language-select_2.entry.js +15 -4
- package/dist/esm/zonos-link.entry.js +4 -4
- package/dist/esm/zonos-logo.entry.js +8 -2
- package/dist/esm/zonos-shipping-rich-radio.entry.js +8 -8
- package/dist/esm/zonos-stripe-input.entry.js +25 -9
- package/dist/esm/zonos-text.entry.js +11 -4
- package/dist/esm/zonos-toggle.entry.js +5 -3
- package/dist/esm/zonos-tooltip.entry.js +7 -1
- package/dist/esm/zonos-v-stack.entry.js +6 -2
- package/dist/esm/{zonosStore-d10a829f.js → zonosStore-1e015fa5.js} +4 -5
- package/dist/esm-es5/{cart-db61eb95.js → cart-a921e0b7.js} +1 -1
- package/dist/esm-es5/{debounce-3a9f27a0.js → debounce-eaee3a94.js} +1 -1
- package/dist/esm-es5/{getBorderRadius-78b28b4d.js → getBorderRadius-b18c924f.js} +1 -1
- package/dist/esm-es5/index-5ea9f81d.js +2 -0
- package/dist/esm-es5/index.js +1 -1
- package/dist/esm-es5/{isDarkColor-31dd7dff.js → isDarkColor-d8bb8659.js} +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/{localization-bf7224aa.js → localization-a2b8f9ed.js} +1 -1
- package/dist/esm-es5/{paypal-2e0ffb07.js → paypal-67d51f03.js} +1 -1
- package/dist/esm-es5/zonos-address_11.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.entry.js +1 -1
- package/dist/esm-es5/zonos-cart-items_14.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-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_4.entry.js +1 -1
- package/dist/esm-es5/zonos-elements.js +1 -1
- package/dist/esm-es5/zonos-empty-state-payment_4.entry.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-language-select_2.entry.js +1 -1
- package/dist/esm-es5/zonos-link.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-stripe-input.entry.js +1 -1
- package/dist/esm-es5/zonos-text.entry.js +1 -1
- package/dist/esm-es5/zonos-toggle.entry.js +1 -1
- package/dist/esm-es5/zonos-tooltip.entry.js +1 -1
- package/dist/esm-es5/zonos-v-stack.entry.js +1 -1
- package/dist/esm-es5/{zonosStore-d10a829f.js → zonosStore-1e015fa5.js} +1 -1
- package/dist/scripts/index.js +1 -1
- package/dist/scripts/loadZonos.js +1 -1
- package/dist/scripts/zonos.js +1 -1
- package/dist/zonos-elements/index.esm.js +1 -1
- package/dist/zonos-elements/p-019f8637.entry.js +1 -0
- package/dist/zonos-elements/p-02da743b.system.js +2 -0
- package/dist/zonos-elements/{p-df4c46a6.entry.js → p-05a91fe6.entry.js} +1 -1
- package/dist/zonos-elements/p-0c4c8d63.entry.js +1 -0
- package/dist/zonos-elements/{p-5d0f7364.system.js → p-0d2df4d2.system.js} +1 -1
- package/dist/zonos-elements/p-0d7af8be.system.entry.js +1 -0
- package/dist/zonos-elements/p-12cd9d3a.entry.js +1 -0
- package/dist/zonos-elements/{p-d42dfd32.system.js → p-1327b935.system.js} +1 -1
- package/dist/zonos-elements/p-1640d77f.js +2 -0
- package/dist/zonos-elements/{p-3d82a352.js → p-16678764.js} +1 -1
- package/dist/zonos-elements/p-16e858f9.entry.js +1 -0
- package/dist/zonos-elements/{p-c291bac1.entry.js → p-18149db1.entry.js} +1 -1
- package/dist/zonos-elements/{p-db025dfc.system.entry.js → p-1ad099ec.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-c5fcbc92.system.entry.js → p-1bc09abe.system.entry.js} +1 -1
- package/dist/zonos-elements/p-20ac92e1.system.entry.js +1 -0
- package/dist/zonos-elements/{p-d46349d3.system.entry.js → p-22cb6880.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-c9aa902e.system.entry.js → p-2866fd29.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-0693422b.system.js → p-28fcd277.system.js} +1 -1
- package/dist/zonos-elements/p-3196bf98.entry.js +1 -0
- package/dist/zonos-elements/p-3afc27ef.entry.js +1 -0
- package/dist/zonos-elements/p-3c921768.system.entry.js +1 -0
- package/dist/zonos-elements/{p-ea6d87a1.system.js → p-3ee44728.system.js} +1 -1
- package/dist/zonos-elements/{p-be5afc91.system.entry.js → p-4329f616.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-715d0f59.system.entry.js → p-43b72ad6.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-f8d0d488.system.entry.js → p-469ccc66.system.entry.js} +1 -1
- package/dist/zonos-elements/p-4a3bb31d.entry.js +1 -0
- package/dist/zonos-elements/{p-80bbd9c0.system.entry.js → p-4fb88ebc.system.entry.js} +1 -1
- package/dist/zonos-elements/p-5fbaa153.system.entry.js +1 -0
- package/dist/zonos-elements/{p-6a71f76b.system.js → p-69577745.system.js} +1 -1
- package/dist/zonos-elements/p-6d467dfb.entry.js +1 -0
- package/dist/zonos-elements/{p-3284f459.system.entry.js → p-719e14a8.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-fbe36bc8.system.entry.js → p-7234f876.system.entry.js} +1 -1
- package/dist/zonos-elements/p-74bcb5cc.entry.js +1 -0
- package/dist/zonos-elements/{p-27987298.system.entry.js → p-7777d85f.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-aa1193bc.entry.js → p-848e08e8.entry.js} +1 -1
- package/dist/zonos-elements/{p-ab176281.system.entry.js → p-858b7908.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-f255e822.js → p-8609e956.js} +1 -1
- package/dist/zonos-elements/p-87e807b4.entry.js +1 -0
- package/dist/zonos-elements/{p-cdd3087f.system.entry.js → p-8debefec.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-d99d9e00.js → p-8e000d8d.js} +1 -1
- package/dist/zonos-elements/p-90c185ac.entry.js +1 -0
- package/dist/zonos-elements/p-91fc6911.entry.js +1 -0
- package/dist/zonos-elements/{p-851c642e.system.entry.js → p-93aeba62.system.entry.js} +1 -1
- package/dist/zonos-elements/p-9b8a5372.entry.js +1 -0
- package/dist/zonos-elements/{p-cb823c4d.system.js → p-9e9ac7a2.system.js} +1 -1
- package/dist/zonos-elements/p-9fa17353.js +1 -0
- package/dist/zonos-elements/{p-01987cb2.system.entry.js → p-a0f570ea.system.entry.js} +1 -1
- package/dist/zonos-elements/p-abc83d01.entry.js +1 -0
- package/dist/zonos-elements/{p-45ebc788.entry.js → p-b21b0330.entry.js} +1 -1
- package/dist/zonos-elements/{p-488ad646.system.entry.js → p-b50eaeac.system.entry.js} +1 -1
- package/dist/zonos-elements/p-b922c441.system.js +1 -0
- package/dist/zonos-elements/{p-6b6a9dd6.system.js → p-be53e893.system.js} +1 -1
- package/dist/zonos-elements/{p-c50b3100.system.js → p-c666d557.system.js} +1 -1
- package/dist/zonos-elements/{p-f891d470.entry.js → p-c988cf84.entry.js} +1 -1
- package/dist/zonos-elements/{p-26a634a5.system.entry.js → p-d649fb9a.system.entry.js} +1 -1
- package/dist/zonos-elements/p-dcbd57df.entry.js +1 -0
- package/dist/zonos-elements/p-dd0f8f06.system.entry.js +1 -0
- package/dist/zonos-elements/{p-a9307caa.js → p-dfe7d1dd.js} +1 -1
- package/dist/zonos-elements/p-e0587eeb.entry.js +1 -0
- package/dist/zonos-elements/p-e0ebbefe.entry.js +1 -0
- package/dist/zonos-elements/{p-72f37935.js → p-e337fa88.js} +1 -1
- package/dist/zonos-elements/{p-d6a10007.entry.js → p-e5152c04.entry.js} +1 -1
- package/dist/zonos-elements/p-eb2560b6.system.entry.js +1 -0
- package/dist/zonos-elements/p-ebe08e44.entry.js +1 -0
- package/dist/zonos-elements/{p-452070af.system.entry.js → p-eca09508.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-e26c9e83.js → p-ed20f2f7.js} +1 -1
- package/dist/zonos-elements/{p-5c74e5c9.system.entry.js → p-ee7a661d.system.entry.js} +1 -1
- package/dist/zonos-elements/p-f98276ed.entry.js +1 -0
- package/dist/zonos-elements/zonos-elements.esm.js +1 -1
- package/dist/zonos-elements/zonos-elements.js +1 -1
- package/package.json +50 -40
- package/dist/esm-es5/index-a457c60c.js +0 -2
- package/dist/zonos-elements/p-04b43dd5.entry.js +0 -1
- package/dist/zonos-elements/p-06f25f75.entry.js +0 -1
- package/dist/zonos-elements/p-0944fe64.entry.js +0 -1
- package/dist/zonos-elements/p-0c62cfb3.entry.js +0 -1
- package/dist/zonos-elements/p-1dcdb65f.system.entry.js +0 -1
- package/dist/zonos-elements/p-25970cb8.system.entry.js +0 -1
- package/dist/zonos-elements/p-43633269.system.js +0 -2
- package/dist/zonos-elements/p-4b5197e7.system.entry.js +0 -1
- package/dist/zonos-elements/p-4c81112f.entry.js +0 -1
- package/dist/zonos-elements/p-4efa8187.js +0 -1
- package/dist/zonos-elements/p-5170bc41.entry.js +0 -1
- package/dist/zonos-elements/p-7ae5cd60.entry.js +0 -1
- package/dist/zonos-elements/p-8d870d4c.entry.js +0 -1
- package/dist/zonos-elements/p-9af5e93a.entry.js +0 -1
- package/dist/zonos-elements/p-bc8bda92.entry.js +0 -1
- package/dist/zonos-elements/p-c137dc82.js +0 -2
- package/dist/zonos-elements/p-c3d2422e.entry.js +0 -1
- package/dist/zonos-elements/p-c66fc4e5.system.entry.js +0 -1
- package/dist/zonos-elements/p-c767242b.entry.js +0 -1
- package/dist/zonos-elements/p-cf6ae7dc.entry.js +0 -1
- package/dist/zonos-elements/p-d2165441.system.entry.js +0 -1
- package/dist/zonos-elements/p-dcd6acd4.system.entry.js +0 -1
- package/dist/zonos-elements/p-dd1cfa74.entry.js +0 -1
- package/dist/zonos-elements/p-dfd1ba1d.entry.js +0 -1
- package/dist/zonos-elements/p-e68d5219.entry.js +0 -1
- package/dist/zonos-elements/p-ef3e05e5.system.js +0 -1
- package/dist/zonos-elements/p-f29edb65.entry.js +0 -1
- package/dist/zonos-elements/p-f655ec36.entry.js +0 -1
- package/dist/zonos-elements/p-fcc2e712.entry.js +0 -1
|
@@ -17,6 +17,31 @@ import CheckmarkLineIcon from "./assets/CheckmarkLineIcon.svg";
|
|
|
17
17
|
import RemoveLineIcon from "./assets/RemoveLineIcon.svg";
|
|
18
18
|
export class ZonosCheckoutPayment {
|
|
19
19
|
constructor() {
|
|
20
|
+
/**
|
|
21
|
+
* Whether or not the continue button is loading
|
|
22
|
+
*/
|
|
23
|
+
this.continueLoading = false;
|
|
24
|
+
/**
|
|
25
|
+
* Whether or not the checkout is in mobile mode
|
|
26
|
+
*/
|
|
27
|
+
this.isMobile = false;
|
|
28
|
+
/**
|
|
29
|
+
* Show error banner when the form is not complete, and user clicks on `Submit` button
|
|
30
|
+
* @default false
|
|
31
|
+
*/
|
|
32
|
+
this.showErrorBanner = false;
|
|
33
|
+
/**
|
|
34
|
+
* Show payment error banner when the payment is failed
|
|
35
|
+
*/
|
|
36
|
+
this.hasStripePaymentError = false;
|
|
37
|
+
/**
|
|
38
|
+
* Error message when the staging order creation is failed
|
|
39
|
+
*/
|
|
40
|
+
this.stagingOrderCreateErrorMessage = '';
|
|
41
|
+
/**
|
|
42
|
+
* Internal state to handle continue loading
|
|
43
|
+
*/
|
|
44
|
+
this.internalContinueLoading = this.continueLoading;
|
|
20
45
|
this.handleValidate = () => {
|
|
21
46
|
var _a;
|
|
22
47
|
return !!((_a = stripeStore.stripePaymentEventData) === null || _a === void 0 ? void 0 : _a.complete);
|
|
@@ -83,15 +108,6 @@ export class ZonosCheckoutPayment {
|
|
|
83
108
|
// continue to the next step
|
|
84
109
|
cartStoreNextStep();
|
|
85
110
|
};
|
|
86
|
-
this.submitBtnType = undefined;
|
|
87
|
-
this.continueLoading = false;
|
|
88
|
-
this.submitBtnColor = undefined;
|
|
89
|
-
this.isMobile = false;
|
|
90
|
-
this.overridePrimaryColor = undefined;
|
|
91
|
-
this.showErrorBanner = false;
|
|
92
|
-
this.hasStripePaymentError = false;
|
|
93
|
-
this.stagingOrderCreateErrorMessage = '';
|
|
94
|
-
this.internalContinueLoading = this.continueLoading;
|
|
95
111
|
}
|
|
96
112
|
continueLoadingWatcher() {
|
|
97
113
|
this.internalContinueLoading = this.continueLoading;
|
|
@@ -6,7 +6,9 @@ import PaymentEmptyStateDarkIcon from "./assets/PaymentEmptyStateDarkIcon.svg";
|
|
|
6
6
|
import PaymentEmptyStateLightIcon from "./assets/PaymentEmptyStateLightIcon.svg";
|
|
7
7
|
export class ZonosEmptyStatePayment {
|
|
8
8
|
constructor() {
|
|
9
|
-
|
|
9
|
+
/**
|
|
10
|
+
* Theme color of the icon
|
|
11
|
+
*/
|
|
10
12
|
this.theme = 'LIGHT';
|
|
11
13
|
}
|
|
12
14
|
render() {
|
|
@@ -57,6 +57,89 @@ export class ZonosCheckout {
|
|
|
57
57
|
*/
|
|
58
58
|
this.onChangeLocaleListener = () => { };
|
|
59
59
|
this.isRedirectAfterOrder = false;
|
|
60
|
+
/**
|
|
61
|
+
* Preview checkout without needing to click on the button. This would be useful for demo purpose
|
|
62
|
+
*/
|
|
63
|
+
this.preview = false;
|
|
64
|
+
/**
|
|
65
|
+
* Hidden mode to hide the checkout modal in preview mode
|
|
66
|
+
*/
|
|
67
|
+
this.hiddenMode = false;
|
|
68
|
+
/**
|
|
69
|
+
* Flag to determine if the checkout is on mobile
|
|
70
|
+
*/
|
|
71
|
+
this.mobile = false;
|
|
72
|
+
/**
|
|
73
|
+
* Default address to use for the checkout (preview mode)
|
|
74
|
+
*/
|
|
75
|
+
this.defaultAddress = [];
|
|
76
|
+
/**
|
|
77
|
+
* Force dialog to be open
|
|
78
|
+
*/
|
|
79
|
+
this.forceDialogOpen = false;
|
|
80
|
+
this.defaultAddressParams = [];
|
|
81
|
+
/**
|
|
82
|
+
* List of addresses from authenticated checkout customer
|
|
83
|
+
*/
|
|
84
|
+
this.defaultCustomerProfileAddress = [];
|
|
85
|
+
/**
|
|
86
|
+
* Customer profile of the authenticated checkout user
|
|
87
|
+
*/
|
|
88
|
+
this.customerProfile = null;
|
|
89
|
+
/**
|
|
90
|
+
* Whether or not the dialog is open
|
|
91
|
+
*/
|
|
92
|
+
this.open = this.forceDialogOpen;
|
|
93
|
+
/**
|
|
94
|
+
* Whether or not the overlay is loading (for waiting for fetching test variance)
|
|
95
|
+
*/
|
|
96
|
+
this.isOverlayLoading = false;
|
|
97
|
+
/**
|
|
98
|
+
* The stripe instance
|
|
99
|
+
*/
|
|
100
|
+
this.stripe = window.Zonos.stripe;
|
|
101
|
+
/**
|
|
102
|
+
* Whether or not the submit button is loading in `step` component
|
|
103
|
+
*/
|
|
104
|
+
this.submitLoading = false;
|
|
105
|
+
// default to collapse the review on mobile
|
|
106
|
+
this.collapseReviewMobile = true;
|
|
107
|
+
/**
|
|
108
|
+
* Determine if we should skip and not hijack the Checkout button click event
|
|
109
|
+
* Sometimes stripe or our api has error, we don't want to hijack the click event.
|
|
110
|
+
*/
|
|
111
|
+
this.isAttachError = false;
|
|
112
|
+
this.isMobile = false;
|
|
113
|
+
this.isIframed = false;
|
|
114
|
+
this.isLegacyCheckout = window.Zonos.isLegacyCheckout;
|
|
115
|
+
/**
|
|
116
|
+
* Confirm dialog open state
|
|
117
|
+
*/
|
|
118
|
+
this.confirmDialogOpen = false;
|
|
119
|
+
/**
|
|
120
|
+
* Cart expired state to show the cart expired dialog
|
|
121
|
+
*/
|
|
122
|
+
this.isCartExpired = false;
|
|
123
|
+
/**
|
|
124
|
+
* Pay in USD confirm dialog open state
|
|
125
|
+
*/
|
|
126
|
+
this.payInUsdConfirmDialogOpen = false;
|
|
127
|
+
/**
|
|
128
|
+
* Error message from onInventoryCheck callback
|
|
129
|
+
*/
|
|
130
|
+
this.inventoryCheckErrorMessage = null;
|
|
131
|
+
/**
|
|
132
|
+
* Placed order info to show the confirm dialog to the user
|
|
133
|
+
*/
|
|
134
|
+
this.placedOrderInfo = null;
|
|
135
|
+
/**
|
|
136
|
+
* Client secret value
|
|
137
|
+
*/
|
|
138
|
+
this.clientSecret = stripeStore.clientSecret;
|
|
139
|
+
/**
|
|
140
|
+
* Client secret value of customer session (use to load saved payment method and render saved consent)
|
|
141
|
+
*/
|
|
142
|
+
this.stripeCustomerSessionClientSecret = stripeStore.stripeCustomerSessionClientSecret;
|
|
60
143
|
this.applyStripeTheme = async () => {
|
|
61
144
|
var _a, _b, _c, _d;
|
|
62
145
|
const theme = ((_a = this.appearanceSettingsOverride) === null || _a === void 0 ? void 0 : _a.theme) || zonosStore.appearance.theme;
|
|
@@ -358,34 +441,6 @@ export class ZonosCheckout {
|
|
|
358
441
|
url.searchParams.delete('zonosVariantTest');
|
|
359
442
|
window.history.replaceState({}, '', url.toString());
|
|
360
443
|
};
|
|
361
|
-
this.appearanceSettingsOverride = undefined;
|
|
362
|
-
this.preview = false;
|
|
363
|
-
this.hiddenMode = false;
|
|
364
|
-
this.mobile = false;
|
|
365
|
-
this.overrideStagingMode = undefined;
|
|
366
|
-
this.defaultAddress = [];
|
|
367
|
-
this.forceDialogOpen = false;
|
|
368
|
-
this.defaultAddressParams = [];
|
|
369
|
-
this.defaultCustomerProfileAddress = [];
|
|
370
|
-
this.customerProfile = null;
|
|
371
|
-
this.open = this.forceDialogOpen;
|
|
372
|
-
this.isOverlayLoading = false;
|
|
373
|
-
this.stripe = window.Zonos.stripe;
|
|
374
|
-
this.submitLoading = false;
|
|
375
|
-
this.collapseReviewMobile = true;
|
|
376
|
-
this.isAttachError = false;
|
|
377
|
-
this.isMobile = false;
|
|
378
|
-
this.isIframed = false;
|
|
379
|
-
this.zonosReviewRef = undefined;
|
|
380
|
-
this.storybookPaymentStatusOverride = undefined;
|
|
381
|
-
this.isLegacyCheckout = window.Zonos.isLegacyCheckout;
|
|
382
|
-
this.confirmDialogOpen = false;
|
|
383
|
-
this.isCartExpired = false;
|
|
384
|
-
this.payInUsdConfirmDialogOpen = false;
|
|
385
|
-
this.inventoryCheckErrorMessage = null;
|
|
386
|
-
this.placedOrderInfo = null;
|
|
387
|
-
this.clientSecret = stripeStore.clientSecret;
|
|
388
|
-
this.stripeCustomerSessionClientSecret = stripeStore.stripeCustomerSessionClientSecret;
|
|
389
444
|
}
|
|
390
445
|
/**
|
|
391
446
|
* Init cart info handler event
|
|
@@ -11,6 +11,60 @@ import { sendErrorLog } from "../../../utils/logging/sendErrorLog";
|
|
|
11
11
|
import { taxIdValidationResult } from "../../../utils/taxIdValidationResult";
|
|
12
12
|
export class ZonosCustomerInfo {
|
|
13
13
|
constructor() {
|
|
14
|
+
/**
|
|
15
|
+
* Whether or not the continue button is loading
|
|
16
|
+
*/
|
|
17
|
+
this.continueLoading = false;
|
|
18
|
+
/**
|
|
19
|
+
* Whether or not the dialog is open
|
|
20
|
+
*/
|
|
21
|
+
this.isMobile = false;
|
|
22
|
+
/**
|
|
23
|
+
* Default address to use for the checkout (preview mode)
|
|
24
|
+
*/
|
|
25
|
+
this.defaultAddress = [];
|
|
26
|
+
/**
|
|
27
|
+
* Whether to override custom address form to be always visible
|
|
28
|
+
*/
|
|
29
|
+
this.shouldUseCustomAddressFormOverride = false;
|
|
30
|
+
/**
|
|
31
|
+
* Due to Stripe's validation difficulties, we need to show a banner when users hasn't filled out the form correctly but clicked continue
|
|
32
|
+
*/
|
|
33
|
+
this.showErrorBanner = false;
|
|
34
|
+
this.shippingCountry = '';
|
|
35
|
+
this.isCheckingForRestrictedItems = false;
|
|
36
|
+
/**
|
|
37
|
+
* Whether or not the address is being validated
|
|
38
|
+
*/
|
|
39
|
+
this.isValidatingAddress = false;
|
|
40
|
+
/**
|
|
41
|
+
* Whether or not the tax id input is invalid
|
|
42
|
+
*/
|
|
43
|
+
this.taxIdErrorMessage = '';
|
|
44
|
+
/**
|
|
45
|
+
* Whether or not the shipping address contains invalid characters
|
|
46
|
+
*/
|
|
47
|
+
this.invalidShippingCharacterList = null;
|
|
48
|
+
/**
|
|
49
|
+
* Whether or not the shipping address contains invalid characters
|
|
50
|
+
*/
|
|
51
|
+
this.invalidBillingCharacterList = null;
|
|
52
|
+
/**
|
|
53
|
+
* Handler for the dialog close button
|
|
54
|
+
*/
|
|
55
|
+
this.openAddressValidationDialog = false;
|
|
56
|
+
/**
|
|
57
|
+
* Whether or not the custom address form is enabled
|
|
58
|
+
*/
|
|
59
|
+
this.shouldEnabledCustomAddress = false;
|
|
60
|
+
/**
|
|
61
|
+
* Handler for the email error state
|
|
62
|
+
*/
|
|
63
|
+
this.isEmailError = false;
|
|
64
|
+
/**
|
|
65
|
+
* Whether or not the custom address form is used
|
|
66
|
+
*/
|
|
67
|
+
this.recordedFormTypeUsed = false;
|
|
14
68
|
/**
|
|
15
69
|
* Handler for invalid characters in the address
|
|
16
70
|
*/
|
|
@@ -241,23 +295,6 @@ export class ZonosCustomerInfo {
|
|
|
241
295
|
// Render Stripe address component by default
|
|
242
296
|
return (h("zonos-address", { defaultAddress: defaultAddress, taxIdErrorMessage: this.taxIdErrorMessage, titleText: translate(type === 'shipping' ? 'Shipping address' : 'Billing address'), type: type }));
|
|
243
297
|
};
|
|
244
|
-
this.continueLoading = false;
|
|
245
|
-
this.submitBtnType = undefined;
|
|
246
|
-
this.submitBtnColor = undefined;
|
|
247
|
-
this.isMobile = false;
|
|
248
|
-
this.defaultAddress = [];
|
|
249
|
-
this.shouldUseCustomAddressFormOverride = false;
|
|
250
|
-
this.showErrorBanner = false;
|
|
251
|
-
this.shippingCountry = '';
|
|
252
|
-
this.isCheckingForRestrictedItems = false;
|
|
253
|
-
this.isValidatingAddress = false;
|
|
254
|
-
this.taxIdErrorMessage = '';
|
|
255
|
-
this.invalidShippingCharacterList = null;
|
|
256
|
-
this.invalidBillingCharacterList = null;
|
|
257
|
-
this.openAddressValidationDialog = false;
|
|
258
|
-
this.shouldEnabledCustomAddress = false;
|
|
259
|
-
this.isEmailError = false;
|
|
260
|
-
this.recordedFormTypeUsed = false;
|
|
261
298
|
}
|
|
262
299
|
watchShowErrorBanner() {
|
|
263
300
|
// start validate on typing after error banner is shown, and hide it if the form is complete
|
|
@@ -12,7 +12,15 @@ import ChevronDownIcon from "./assets/ChevronDownIcon.svg";
|
|
|
12
12
|
import ChevronUpIcon from "./assets/ChevronUpIcon.svg";
|
|
13
13
|
export class ZonosReview {
|
|
14
14
|
constructor() {
|
|
15
|
+
/**
|
|
16
|
+
* Whether or not the component is being rendered with mobile styles
|
|
17
|
+
*/
|
|
15
18
|
this.mobile = false;
|
|
19
|
+
/**
|
|
20
|
+
* Whether or not to show the collapse icon
|
|
21
|
+
* This is controled from the collapsed state of the zonos-collapse component
|
|
22
|
+
* to show the collapse icon
|
|
23
|
+
*/
|
|
16
24
|
this.collapsed = false;
|
|
17
25
|
this.isMobile = false;
|
|
18
26
|
}
|
|
@@ -12,6 +12,26 @@ import { submitGtag } from "../../../utils/submitGtag";
|
|
|
12
12
|
import ChevronUpIcon from "./assets/ChevronUpIcon.svg";
|
|
13
13
|
export class ZonosShipping {
|
|
14
14
|
constructor() {
|
|
15
|
+
/**
|
|
16
|
+
* Whether or not the continue button is loading
|
|
17
|
+
*/
|
|
18
|
+
this.continueLoading = false;
|
|
19
|
+
this.selectedShippingMethod = null;
|
|
20
|
+
this.collapsedDAPOptions = true;
|
|
21
|
+
/**
|
|
22
|
+
* Whether or not the user is selecting a shipping method
|
|
23
|
+
*/
|
|
24
|
+
this.isSelecting = false;
|
|
25
|
+
/**
|
|
26
|
+
* Show error banner when the form is not complete, and user clicks on `Submit` button
|
|
27
|
+
* @default false
|
|
28
|
+
*/
|
|
29
|
+
this.showErrorBanner = false;
|
|
30
|
+
this.serviceLevelsDDP = [];
|
|
31
|
+
this.serviceLevelsDAP = [];
|
|
32
|
+
this.serviceLevelsOther = [];
|
|
33
|
+
this.serviceLevelsAll = [];
|
|
34
|
+
this.displayBaseCurrency = false;
|
|
15
35
|
this.handleRadioSelected = async (e) => {
|
|
16
36
|
var _a;
|
|
17
37
|
this.selectedShippingMethod = e.detail;
|
|
@@ -150,18 +170,6 @@ export class ZonosShipping {
|
|
|
150
170
|
});
|
|
151
171
|
}
|
|
152
172
|
};
|
|
153
|
-
this.continueLoading = false;
|
|
154
|
-
this.submitBtnColor = undefined;
|
|
155
|
-
this.submitBtnType = undefined;
|
|
156
|
-
this.selectedShippingMethod = null;
|
|
157
|
-
this.collapsedDAPOptions = true;
|
|
158
|
-
this.isSelecting = false;
|
|
159
|
-
this.showErrorBanner = false;
|
|
160
|
-
this.serviceLevelsDDP = [];
|
|
161
|
-
this.serviceLevelsDAP = [];
|
|
162
|
-
this.serviceLevelsOther = [];
|
|
163
|
-
this.serviceLevelsAll = [];
|
|
164
|
-
this.displayBaseCurrency = false;
|
|
165
173
|
}
|
|
166
174
|
componentWillLoad() {
|
|
167
175
|
this.preselectFirstShippingMethod();
|
|
@@ -5,14 +5,36 @@ import { classes } from "../../utils/classes";
|
|
|
5
5
|
import RemoveLineIcon from "./assets/RemoveLineIcon.svg";
|
|
6
6
|
export class ZonosBadge {
|
|
7
7
|
constructor() {
|
|
8
|
+
/**
|
|
9
|
+
* Whether or not the badge is bold
|
|
10
|
+
* @default false
|
|
11
|
+
*/
|
|
8
12
|
this.bold = false;
|
|
13
|
+
/**
|
|
14
|
+
* The color of the badge
|
|
15
|
+
* @default 24
|
|
16
|
+
*/
|
|
9
17
|
this.badgeColor = 'gray';
|
|
10
|
-
|
|
18
|
+
/**
|
|
19
|
+
* Position the icon to the right when icon is specified
|
|
20
|
+
* @default false
|
|
21
|
+
*/
|
|
11
22
|
this.iconRight = false;
|
|
23
|
+
/**
|
|
24
|
+
* The size of the badge
|
|
25
|
+
* @default 'default'
|
|
26
|
+
*/
|
|
12
27
|
this.size = 'default';
|
|
28
|
+
/**
|
|
29
|
+
* Whether or not the badge is rounded
|
|
30
|
+
* @default false
|
|
31
|
+
*/
|
|
13
32
|
this.rounded = false;
|
|
33
|
+
/**
|
|
34
|
+
* Whether or not the badge is loading
|
|
35
|
+
* @default false
|
|
36
|
+
*/
|
|
14
37
|
this.loading = false;
|
|
15
|
-
this.dismissHandler = undefined;
|
|
16
38
|
}
|
|
17
39
|
render() {
|
|
18
40
|
return (h(Host, { key: 'd8a6a11f10c36a272ecdb52c54919f9ad45e1a9a', class: classes(['zonos--elements zonos--badge']), style: {
|
|
@@ -3,15 +3,16 @@ import { zonosStoreFontFamily } from "../../store/zonosStore";
|
|
|
3
3
|
import { classes } from "../../utils/classes";
|
|
4
4
|
export class ZonosBanner {
|
|
5
5
|
constructor() {
|
|
6
|
+
/**
|
|
7
|
+
* Whether or not the button has content
|
|
8
|
+
*/
|
|
9
|
+
this.hasContent = false;
|
|
6
10
|
/**
|
|
7
11
|
* Detect if the button has an content
|
|
8
12
|
*/
|
|
9
13
|
this.handleSlotChange = () => {
|
|
10
14
|
this.hasContent = true;
|
|
11
15
|
};
|
|
12
|
-
this.bannerTitle = undefined;
|
|
13
|
-
this.intent = undefined;
|
|
14
|
-
this.hasContent = false;
|
|
15
16
|
}
|
|
16
17
|
render() {
|
|
17
18
|
const renderContent = ({ color }) => {
|
|
@@ -14,6 +14,75 @@ export class ZonosButton {
|
|
|
14
14
|
* Inherited attributes from the host element
|
|
15
15
|
*/
|
|
16
16
|
this.inheritedAttributes = {};
|
|
17
|
+
/**
|
|
18
|
+
* Whether or not the button is disabled
|
|
19
|
+
* @note Prop should not conflict name with native html attribute if the prop is also affected by another prop.
|
|
20
|
+
* The issue is the component has internal disabled @prop(). @prop decorator is to watch the update of the attribute of the component in the dom.
|
|
21
|
+
* And `disabled` prop is not an only factor to determine the component is disabled. isLoading @prop() also affect that.
|
|
22
|
+
* <Host> is also referred to a component itself, if disabled prop is true, the `zonos-button` will have disabled attribute.
|
|
23
|
+
* So let's say when the loading state is true, and the component consume the zonos-button doesn't pass the disabled prop down.
|
|
24
|
+
* It accidentally turns the disabled prop on even thought the disabled state is not changed from the outside.
|
|
25
|
+
*/
|
|
26
|
+
this.isDisabled = false;
|
|
27
|
+
/**
|
|
28
|
+
* The icon element to display
|
|
29
|
+
* @default null
|
|
30
|
+
*/
|
|
31
|
+
this.icon = null;
|
|
32
|
+
/**
|
|
33
|
+
* Whether or not the icon is on the right
|
|
34
|
+
* @default false
|
|
35
|
+
*/
|
|
36
|
+
this.iconRight = false;
|
|
37
|
+
/**
|
|
38
|
+
* The size of the button
|
|
39
|
+
* @default 'sm'
|
|
40
|
+
*/
|
|
41
|
+
this.size = 'sm';
|
|
42
|
+
/**
|
|
43
|
+
* The variance of the button
|
|
44
|
+
* @note If the button `variant` is set to 'standard', backgroundColor will be disregarded
|
|
45
|
+
* @default standard
|
|
46
|
+
*/
|
|
47
|
+
this.variant = 'standard';
|
|
48
|
+
/**
|
|
49
|
+
* Whether or not the button has a background
|
|
50
|
+
* @default false
|
|
51
|
+
*/
|
|
52
|
+
this.noBackground = false;
|
|
53
|
+
/**
|
|
54
|
+
* Whether or not the button has a box shadow
|
|
55
|
+
*/
|
|
56
|
+
this.withBoxShadow = false;
|
|
57
|
+
/**
|
|
58
|
+
* Whether or not the button has a left padding
|
|
59
|
+
*/
|
|
60
|
+
this.noPaddingLeft = false;
|
|
61
|
+
/**
|
|
62
|
+
* Whether or not the button has a right padding
|
|
63
|
+
*/
|
|
64
|
+
this.noPaddingRight = false;
|
|
65
|
+
/**
|
|
66
|
+
* Whether or not the button is loading
|
|
67
|
+
*/
|
|
68
|
+
this.loading = false;
|
|
69
|
+
/**
|
|
70
|
+
* The content alignment within the button
|
|
71
|
+
* @default 'center'
|
|
72
|
+
*/
|
|
73
|
+
this.justifyContent = 'center';
|
|
74
|
+
/**
|
|
75
|
+
* Whether or not the button text color is bold
|
|
76
|
+
*/
|
|
77
|
+
this.bold = false;
|
|
78
|
+
/**
|
|
79
|
+
* Whether or not the button has an icon
|
|
80
|
+
*/
|
|
81
|
+
this.hasIcon = !!this.icon;
|
|
82
|
+
/**
|
|
83
|
+
* Whether or not the button has content
|
|
84
|
+
*/
|
|
85
|
+
this.hasContent = false;
|
|
17
86
|
/**
|
|
18
87
|
* Detect if the button has an content
|
|
19
88
|
*/
|
|
@@ -84,24 +153,6 @@ export class ZonosButton {
|
|
|
84
153
|
}
|
|
85
154
|
}
|
|
86
155
|
};
|
|
87
|
-
this.buttonColor = undefined;
|
|
88
|
-
this.backgroundColor = undefined;
|
|
89
|
-
this.borderStyle = undefined;
|
|
90
|
-
this.isDisabled = false;
|
|
91
|
-
this.icon = null;
|
|
92
|
-
this.iconRight = false;
|
|
93
|
-
this.size = 'sm';
|
|
94
|
-
this.variant = 'standard';
|
|
95
|
-
this.noBackground = false;
|
|
96
|
-
this.withBoxShadow = false;
|
|
97
|
-
this.noPaddingLeft = false;
|
|
98
|
-
this.noPaddingRight = false;
|
|
99
|
-
this.loading = false;
|
|
100
|
-
this.justifyContent = 'center';
|
|
101
|
-
this.bold = false;
|
|
102
|
-
this.theme = undefined;
|
|
103
|
-
this.hasIcon = !!this.icon;
|
|
104
|
-
this.hasContent = false;
|
|
105
156
|
}
|
|
106
157
|
/**
|
|
107
158
|
* Detect if the icon changes and update the state accordingly
|
|
@@ -5,13 +5,14 @@ import { classes } from "../../utils/classes";
|
|
|
5
5
|
import { getBorderRadius } from "../../utils/getBorderRadius";
|
|
6
6
|
export class ZonosCard {
|
|
7
7
|
constructor() {
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
/**
|
|
9
|
+
* The border radius of the card
|
|
10
|
+
* @default 6
|
|
11
|
+
*/
|
|
10
12
|
this.borderRadius = 6;
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
this.label = undefined;
|
|
13
|
+
/**
|
|
14
|
+
* The spacing to apply between elements in the card
|
|
15
|
+
*/
|
|
15
16
|
this.spacing = '24px';
|
|
16
17
|
}
|
|
17
18
|
render() {
|
|
@@ -8,13 +8,26 @@ let inputId = 0;
|
|
|
8
8
|
export class ZonosCheckbox {
|
|
9
9
|
constructor() {
|
|
10
10
|
this.inputId = `zonos--checkbox-${++inputId}`;
|
|
11
|
+
/**
|
|
12
|
+
* background color of the checkbox
|
|
13
|
+
*/
|
|
11
14
|
this.backgroundColor = 'blue';
|
|
12
|
-
|
|
15
|
+
/**
|
|
16
|
+
* Whether or not the checkbox is checked
|
|
17
|
+
*/
|
|
13
18
|
this.isChecked = false;
|
|
19
|
+
/**
|
|
20
|
+
* Whether or not the checkbox is disabled
|
|
21
|
+
*/
|
|
14
22
|
this.isDisabled = false;
|
|
23
|
+
/**
|
|
24
|
+
* Size of the checkbox
|
|
25
|
+
*/
|
|
15
26
|
this.size = 12;
|
|
27
|
+
/**
|
|
28
|
+
* Font size of the checkbox text
|
|
29
|
+
*/
|
|
16
30
|
this.fontSize = 'base';
|
|
17
|
-
this.borderStyle = undefined;
|
|
18
31
|
}
|
|
19
32
|
onClick() {
|
|
20
33
|
if (this.isDisabled) {
|
|
@@ -10,6 +10,14 @@ import { resetToSelectedTab } from "../../utils/resetToSelectedTab";
|
|
|
10
10
|
import TabCheckmark from "./assets/TabCheckmark.svg";
|
|
11
11
|
export class ZonosCheckoutProgressTabs {
|
|
12
12
|
constructor() {
|
|
13
|
+
/**
|
|
14
|
+
* Color of the tab progress bar and label, override the secondary color of the appearance settings
|
|
15
|
+
*/
|
|
16
|
+
this.tabColor = null;
|
|
17
|
+
/**
|
|
18
|
+
* Background color of the parent that's wrapped around the tab progress bar
|
|
19
|
+
*/
|
|
20
|
+
this.backgroundColor = null;
|
|
13
21
|
/**
|
|
14
22
|
* The total number of steps that's done
|
|
15
23
|
*/
|
|
@@ -33,8 +41,6 @@ export class ZonosCheckoutProgressTabs {
|
|
|
33
41
|
.slice(0, currentTab.index - 1)
|
|
34
42
|
.every(tab => tab.isDone);
|
|
35
43
|
};
|
|
36
|
-
this.tabColor = null;
|
|
37
|
-
this.backgroundColor = null;
|
|
38
44
|
}
|
|
39
45
|
/**
|
|
40
46
|
* Set the tab items data. This is to be used in storybook
|
|
@@ -3,7 +3,13 @@ import { Host } from "@stencil/core/internal";
|
|
|
3
3
|
import { zonosStoreFontFamily } from "../../store/zonosStore";
|
|
4
4
|
export class ZonosCollapse {
|
|
5
5
|
constructor() {
|
|
6
|
+
/**
|
|
7
|
+
* Collapsed state of the element
|
|
8
|
+
*/
|
|
6
9
|
this.collapsed = false;
|
|
10
|
+
/**
|
|
11
|
+
* Collapsed size when collapsed
|
|
12
|
+
*/
|
|
7
13
|
this.collapseSize = 0;
|
|
8
14
|
this.height = this.el.scrollHeight;
|
|
9
15
|
this.iframe = null;
|
|
@@ -11,22 +11,47 @@ import HelpDuotoneIcon from "./assets/HelpDuotoneIcon.svg";
|
|
|
11
11
|
import WarningDuotoneIcon from "./assets/WarningDuotoneIcon.svg";
|
|
12
12
|
export class ZonosConfirmDialog {
|
|
13
13
|
constructor() {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
};
|
|
14
|
+
/**
|
|
15
|
+
* Dialog title text
|
|
16
|
+
* @default "Are you sure?"
|
|
17
|
+
*/
|
|
19
18
|
this.dialogTitle = translate('Are you sure?');
|
|
19
|
+
/**
|
|
20
|
+
* Dialog intent (for icon and button color)
|
|
21
|
+
* @default "info"
|
|
22
|
+
*/
|
|
20
23
|
this.dialogIntent = 'info';
|
|
24
|
+
/**
|
|
25
|
+
* Dialog subtitle text
|
|
26
|
+
* @default null No subtitle
|
|
27
|
+
*/
|
|
21
28
|
this.dialogSubtitle = null;
|
|
22
|
-
|
|
23
|
-
|
|
29
|
+
/**
|
|
30
|
+
* Dialog width
|
|
31
|
+
* @default 350 px
|
|
32
|
+
*/
|
|
24
33
|
this.dialogWidth = 350;
|
|
25
|
-
|
|
34
|
+
/**
|
|
35
|
+
* Type of dialog
|
|
36
|
+
* - "alert" - Only confirm button
|
|
37
|
+
* - "confirm" - Both Confirm and cancel buttons
|
|
38
|
+
* @default "confirm"
|
|
39
|
+
*/
|
|
26
40
|
this.dialogType = 'confirm';
|
|
41
|
+
/**
|
|
42
|
+
* Whether or not the dialog is open
|
|
43
|
+
*/
|
|
27
44
|
this.isMobile = false;
|
|
28
|
-
|
|
45
|
+
/**
|
|
46
|
+
* Whether or not to close the dialog when clicking outside of it
|
|
47
|
+
* @default false
|
|
48
|
+
*/
|
|
29
49
|
this.noClickOutside = false;
|
|
50
|
+
this.clickOutsideDialogHandler = (event) => {
|
|
51
|
+
if (event.target === event.currentTarget && !this.noClickOutside) {
|
|
52
|
+
this.closeDialogHandler();
|
|
53
|
+
}
|
|
54
|
+
};
|
|
30
55
|
}
|
|
31
56
|
handleKeyDown(ev) {
|
|
32
57
|
if (ev.key === 'Escape') {
|
|
@@ -5,8 +5,12 @@ import { classes } from "../../utils/classes";
|
|
|
5
5
|
const FLAG_URL = process.env.NEXT_PUBLIC_FLAG_URL;
|
|
6
6
|
export class ZonosCountryFlag {
|
|
7
7
|
constructor() {
|
|
8
|
+
/**
|
|
9
|
+
* The country code for the flag
|
|
10
|
+
* @default localizationStore.selectedCountryCode
|
|
11
|
+
* @example 'US'
|
|
12
|
+
*/
|
|
8
13
|
this.countryCode = localizationStore.selectedCountryCode;
|
|
9
|
-
this.size = undefined;
|
|
10
14
|
}
|
|
11
15
|
render() {
|
|
12
16
|
if (!this.el.shadowRoot || !this.countryCode) {
|
|
@@ -7,6 +7,12 @@ import { zonosStoreFontFamily } from "../../store/zonosStore";
|
|
|
7
7
|
import GreenCheckDuotoneIcon from "./assets/greenCheckDuotone.svg";
|
|
8
8
|
export class ZonosCountrySelect {
|
|
9
9
|
constructor() {
|
|
10
|
+
/**
|
|
11
|
+
* Function to close the country select
|
|
12
|
+
* @default () => {}
|
|
13
|
+
*/
|
|
14
|
+
this.handleOnClose = () => { };
|
|
15
|
+
this.inputValue = '';
|
|
10
16
|
this.countrySelected = (countryCode) => {
|
|
11
17
|
// mutate the selected country code in store
|
|
12
18
|
void localizationStoreUpdateSelectedCountryCode(countryCode);
|
|
@@ -23,8 +29,6 @@ export class ZonosCountrySelect {
|
|
|
23
29
|
countryListSelector.scrollTop = 0;
|
|
24
30
|
}
|
|
25
31
|
};
|
|
26
|
-
this.handleOnClose = () => { };
|
|
27
|
-
this.inputValue = '';
|
|
28
32
|
}
|
|
29
33
|
componentDidRender() {
|
|
30
34
|
var _a, _b;
|