@zonos/elements 1.3.260 → 1.3.261
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/index.cjs.js +7 -7
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/zonos-address-display_8.cjs.entry.js +17 -17
- package/dist/cjs/zonos-address_4.cjs.entry.js +6 -6
- package/dist/cjs/zonos-badge.cjs.entry.js +3 -3
- package/dist/cjs/zonos-button_3.cjs.entry.js +3 -3
- package/dist/cjs/zonos-card_5.cjs.entry.js +6 -6
- package/dist/cjs/zonos-cart-items_12.cjs.entry.js +80 -14
- package/dist/cjs/zonos-checkbox_2.cjs.entry.js +5 -5
- package/dist/cjs/zonos-checkout.cjs.entry.js +13 -3
- package/dist/cjs/zonos-collapse.cjs.entry.js +2 -2
- package/dist/cjs/zonos-collect-cart-items_3.cjs.entry.js +4 -4
- package/dist/cjs/zonos-collect-finish_6.cjs.entry.js +13 -13
- package/dist/cjs/zonos-component.cjs.entry.js +1 -1
- package/dist/cjs/zonos-controller.cjs.entry.js +1 -1
- package/dist/cjs/zonos-country-select_4.cjs.entry.js +9 -9
- package/dist/cjs/zonos-elements.cjs.js +1 -1
- package/dist/cjs/zonos-hello-dialog.cjs.entry.js +4 -4
- package/dist/cjs/zonos-input.cjs.entry.js +4 -4
- package/dist/cjs/zonos-invoice-cart-items_2.cjs.entry.js +4 -4
- package/dist/cjs/zonos-invoice-finish_5.cjs.entry.js +8 -8
- package/dist/cjs/zonos-language-select_2.cjs.entry.js +4 -4
- package/dist/cjs/zonos-link.cjs.entry.js +1 -1
- package/dist/cjs/zonos-logo.cjs.entry.js +2 -2
- package/dist/cjs/zonos-stripe-input.cjs.entry.js +4 -4
- package/dist/cjs/zonos-tooltip.cjs.entry.js +2 -2
- package/dist/cjs/zonos-v-stack.cjs.entry.js +2 -2
- package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-finish/zonos-checkout-finish.js +74 -7
- package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-footer/zonos-checkout-footer.js +2 -2
- package/dist/collection/components/checkout/zonos-checkout/zonos-checkout.js +13 -3
- package/dist/collection/components/checkout/zonos-collect/zonos-collect-cart-items/zonos-collect-cart-items.js +1 -1
- package/dist/collection/components/checkout/zonos-collect/zonos-collect-finish/zonos-collect-finish.js +2 -2
- package/dist/collection/components/checkout/zonos-collect/zonos-collect-footer/zonos-collect-footer.js +3 -3
- package/dist/collection/components/checkout/zonos-collect/zonos-collect-review/zonos-collect-review.js +3 -3
- package/dist/collection/components/checkout/zonos-collect/zonos-collect-subtotal/zonos-collect-subtotal.js +5 -5
- package/dist/collection/components/checkout/zonos-invoice/zonos-invoice-cart-items/zonos-invoice-cart-items.js +2 -2
- package/dist/collection/components/checkout/zonos-invoice/zonos-invoice-finish/zonos-invoice-finish.js +2 -2
- package/dist/collection/components/checkout/zonos-invoice/zonos-invoice-footer/zonos-invoice-footer.js +3 -3
- package/dist/collection/components/checkout/zonos-invoice/zonos-invoice-review/zonos-invoice-review.js +3 -3
- package/dist/collection/components/checkout/zonos-invoice/zonos-invoice-subtotal/zonos-invoice-subtotal.js +2 -2
- package/dist/collection/components/common/zonos-badge/zonos-badge.js +3 -3
- package/dist/collection/components/common/zonos-button/zonos-button.js +3 -3
- package/dist/collection/components/common/zonos-card/zonos-card.js +4 -4
- package/dist/collection/components/common/zonos-checkbox/zonos-checkbox.js +3 -3
- package/dist/collection/components/common/zonos-checkout-progress-tabs/zonos-checkout-progress-tabs.js +3 -3
- package/dist/collection/components/common/zonos-collapse/zonos-collapse.js +2 -2
- package/dist/collection/components/common/zonos-confirm-dialog/zonos-confirm-dialog.js +3 -3
- package/dist/collection/components/common/zonos-country-select/zonos-country-select.js +3 -3
- package/dist/collection/components/common/zonos-custom-message/zonos-custom-message.js +2 -2
- package/dist/collection/components/common/zonos-dialog/zonos-dialog.js +3 -3
- package/dist/collection/components/common/zonos-h-stack/zonos-h-stack.js +2 -2
- package/dist/collection/components/common/zonos-input/zonos-input.js +4 -4
- package/dist/collection/components/common/zonos-language-select/zonos-language-select.js +2 -2
- package/dist/collection/components/common/zonos-link/zonos-link.js +1 -1
- package/dist/collection/components/common/zonos-loading-overlay/zonos-loading-overlay.js +1 -1
- package/dist/collection/components/common/zonos-logo/zonos-logo.js +2 -2
- package/dist/collection/components/common/zonos-rest-state/zonos-rest-state.js +3 -3
- package/dist/collection/components/common/zonos-select-dialog-header/zonos-select-dialog-header.js +2 -2
- package/dist/collection/components/common/zonos-skeleton/zonos-skeleton.js +1 -1
- package/dist/collection/components/common/zonos-stripe-input/zonos-stripe-input.js +4 -4
- package/dist/collection/components/common/zonos-stripe-phone-input/zonos-stripe-phone-input.js +5 -5
- package/dist/collection/components/common/zonos-stripe-select/zonos-stripe-select.js +5 -5
- package/dist/collection/components/common/zonos-toggle/zonos-toggle.js +2 -2
- package/dist/collection/components/common/zonos-tooltip/zonos-tooltip.js +2 -2
- package/dist/collection/components/common/zonos-v-stack/zonos-v-stack.js +2 -2
- package/dist/collection/components/common/zonos-virtual-scroll/zonos-virtual-scroll.js +2 -2
- package/dist/collection/components/component-template/zonos-component/zonos-component.js +1 -1
- package/dist/collection/components/hello/zonos-hello-dialog/zonos-hello-dialog-footer/zonos-hello-dialog-footer.js +2 -2
- package/dist/collection/components/hello/zonos-hello-dialog/zonos-hello-dialog.js +4 -4
- package/dist/collection/components/main/zonos-controller.js +1 -1
- package/dist/collection/components/paypal/zonos-paypal-payment.js +1 -1
- package/dist/collection/components/stripe/zonos-address/zonos-address.js +2 -2
- package/dist/collection/components/stripe/zonos-custom-address/zonos-address-suggestions/zonos-address-suggestions.js +2 -2
- package/dist/collection/components/stripe/zonos-custom-address/zonos-custom-address.js +2 -2
- package/dist/collection/components/stripe/zonos-payment/zonos-payment.js +1 -1
- package/dist/esm/index.js +7 -7
- package/dist/esm/loader.js +1 -1
- package/dist/esm/zonos-address-display_8.entry.js +17 -17
- package/dist/esm/zonos-address_4.entry.js +6 -6
- package/dist/esm/zonos-badge.entry.js +3 -3
- package/dist/esm/zonos-button_3.entry.js +3 -3
- package/dist/esm/zonos-card_5.entry.js +6 -6
- package/dist/esm/zonos-cart-items_12.entry.js +80 -14
- package/dist/esm/zonos-checkbox_2.entry.js +5 -5
- package/dist/esm/zonos-checkout.entry.js +13 -3
- package/dist/esm/zonos-collapse.entry.js +2 -2
- package/dist/esm/zonos-collect-cart-items_3.entry.js +4 -4
- package/dist/esm/zonos-collect-finish_6.entry.js +13 -13
- package/dist/esm/zonos-component.entry.js +1 -1
- package/dist/esm/zonos-controller.entry.js +1 -1
- package/dist/esm/zonos-country-select_4.entry.js +9 -9
- package/dist/esm/zonos-elements.js +1 -1
- package/dist/esm/zonos-hello-dialog.entry.js +4 -4
- package/dist/esm/zonos-input.entry.js +4 -4
- package/dist/esm/zonos-invoice-cart-items_2.entry.js +4 -4
- package/dist/esm/zonos-invoice-finish_5.entry.js +8 -8
- package/dist/esm/zonos-language-select_2.entry.js +4 -4
- package/dist/esm/zonos-link.entry.js +1 -1
- package/dist/esm/zonos-logo.entry.js +2 -2
- package/dist/esm/zonos-stripe-input.entry.js +4 -4
- package/dist/esm/zonos-tooltip.entry.js +2 -2
- package/dist/esm/zonos-v-stack.entry.js +2 -2
- package/dist/esm-es5/index.js +1 -1
- package/dist/esm-es5/loader.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-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-component.entry.js +1 -1
- package/dist/esm-es5/zonos-controller.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-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-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-stripe-input.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/scripts/index.d.ts +7 -0
- 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/checkout/zonos-checkout/zonos-checkout-finish/zonos-checkout-finish.d.ts +15 -0
- package/dist/types/types/checkout/CheckoutConfig.d.ts +7 -0
- package/dist/zonos-elements/index.esm.js +1 -1
- package/dist/zonos-elements/{p-bb6e7e9e.entry.js → p-00bd7e5d.entry.js} +1 -1
- package/dist/zonos-elements/p-03e53ef5.entry.js +1 -0
- package/dist/zonos-elements/{p-874ccf1c.system.entry.js → p-072c5e07.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-f7ddd288.system.entry.js → p-14f156c6.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-66d72216.entry.js → p-155b4425.entry.js} +1 -1
- package/dist/zonos-elements/{p-9161f10d.system.entry.js → p-17476a30.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-9dc671f4.entry.js → p-1916c2b0.entry.js} +1 -1
- package/dist/zonos-elements/{p-3e7dbe9c.system.entry.js → p-1917202e.system.entry.js} +1 -1
- package/dist/zonos-elements/p-29b60bf3.system.js +1 -1
- package/dist/zonos-elements/{p-720ae42c.system.js → p-31bd3851.system.js} +1 -1
- package/dist/zonos-elements/{p-c09540bc.entry.js → p-34fc45e5.entry.js} +1 -1
- package/dist/zonos-elements/{p-2ac0fcb8.system.entry.js → p-3c3139d2.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-1368dce7.system.entry.js → p-4a227683.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-bcbbe867.entry.js → p-4cee62fb.entry.js} +1 -1
- package/dist/zonos-elements/{p-c1ab70d2.entry.js → p-4d776228.entry.js} +1 -1
- package/dist/zonos-elements/{p-bdaf94a4.system.entry.js → p-50a15e3d.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-d30e8c3a.entry.js → p-55742c52.entry.js} +1 -1
- package/dist/zonos-elements/{p-d12fa775.entry.js → p-5a79e1f4.entry.js} +1 -1
- package/dist/zonos-elements/{p-df240101.system.entry.js → p-5db00bfa.system.entry.js} +1 -1
- package/dist/zonos-elements/p-5dff9d51.system.entry.js +1 -0
- package/dist/zonos-elements/{p-da5a35a6.entry.js → p-6726fee0.entry.js} +1 -1
- package/dist/zonos-elements/{p-4416fe27.entry.js → p-7793d334.entry.js} +1 -1
- package/dist/zonos-elements/{p-6f19845a.system.entry.js → p-7dbac3ae.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-5be87ae0.entry.js → p-80e7cab5.entry.js} +1 -1
- package/dist/zonos-elements/{p-dfb4360d.system.entry.js → p-9262a57c.system.entry.js} +1 -1
- package/dist/zonos-elements/p-9cfd1dc3.entry.js +1 -0
- package/dist/zonos-elements/{p-bb785f33.entry.js → p-9e761130.entry.js} +1 -1
- package/dist/zonos-elements/{p-c908a7a3.entry.js → p-a1142a95.entry.js} +1 -1
- package/dist/zonos-elements/{p-8d52ac69.system.entry.js → p-a661dd45.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-365d4481.system.entry.js → p-aa74b61a.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-2fa41e93.entry.js → p-ade15fd2.entry.js} +1 -1
- package/dist/zonos-elements/{p-87d89870.system.entry.js → p-b1c76c38.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-770d414a.system.entry.js → p-b2cd18b4.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-0fc5a2cc.system.entry.js → p-b47fcd8c.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-d4f9e464.system.entry.js → p-be1032ab.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-c308c5bc.entry.js → p-c263f95f.entry.js} +1 -1
- package/dist/zonos-elements/{p-266a86d4.system.entry.js → p-d50fef06.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-7a379538.entry.js → p-d983d472.entry.js} +1 -1
- package/dist/zonos-elements/{p-df578aa9.system.entry.js → p-dc4e867e.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-0f89fc76.system.entry.js → p-e14f421d.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-d004565d.system.entry.js → p-e76dc266.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-20842d8c.system.entry.js → p-eca03303.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-3576d900.entry.js → p-ed827ca3.entry.js} +1 -1
- package/dist/zonos-elements/{p-f2a74e43.entry.js → p-eeff2b04.entry.js} +1 -1
- package/dist/zonos-elements/{p-8dae0f0b.entry.js → p-ef12af4b.entry.js} +1 -1
- package/dist/zonos-elements/{p-3a198386.entry.js → p-f0046c48.entry.js} +1 -1
- package/dist/zonos-elements/{p-62dbc5f8.system.entry.js → p-f00a56be.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-0ad75f38.entry.js → p-f4030586.entry.js} +1 -1
- package/dist/zonos-elements/{p-fbc274a8.system.entry.js → p-f7d24382.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-12459b59.entry.js → p-fb87172c.entry.js} +1 -1
- package/dist/zonos-elements/zonos-elements.esm.js +1 -1
- package/package.json +1 -1
- package/dist/zonos-elements/p-4aa5f5db.entry.js +0 -1
- package/dist/zonos-elements/p-70e2f9f9.system.entry.js +0 -1
- package/dist/zonos-elements/p-87eef44c.entry.js +0 -1
|
@@ -337,6 +337,13 @@ const ZonosCheckoutFinish = class {
|
|
|
337
337
|
* Is waiting to redirect to a different page
|
|
338
338
|
*/
|
|
339
339
|
this.isWaitingToRedirect = true;
|
|
340
|
+
/**
|
|
341
|
+
* True when we are about to immediately redirect to the merchant's
|
|
342
|
+
* successRedirectUrl (CLOSE_MODAL + successRedirectUrl). Used by the
|
|
343
|
+
* render method to keep the dialog in a loading state instead of briefly
|
|
344
|
+
* showing the success notification before navigation.
|
|
345
|
+
*/
|
|
346
|
+
this.isImmediateRedirecting = false;
|
|
340
347
|
this.pullOrder = async () => {
|
|
341
348
|
var _a, _b;
|
|
342
349
|
const checkoutSessionId = storageStore.checkoutSessionId;
|
|
@@ -420,8 +427,9 @@ const ZonosCheckoutFinish = class {
|
|
|
420
427
|
window.location.href = url;
|
|
421
428
|
};
|
|
422
429
|
this.isRedirectBehavior = () => {
|
|
423
|
-
const { successBehavior } = zonosStore.checkoutSettings;
|
|
430
|
+
const { successBehavior, successRedirectUrl } = zonosStore.checkoutSettings;
|
|
424
431
|
return (successBehavior === 'REDIRECT_TO_SUCCESS_PAGE' ||
|
|
432
|
+
(successBehavior === 'CLOSE_MODAL' && !!successRedirectUrl) ||
|
|
425
433
|
!!cartStore.externalConfirmationPageURL);
|
|
426
434
|
};
|
|
427
435
|
/**
|
|
@@ -458,13 +466,71 @@ const ZonosCheckoutFinish = class {
|
|
|
458
466
|
`${redirectUrl}${hasQueryString ? '&' : '?'}${queryString}`
|
|
459
467
|
: redirectUrl);
|
|
460
468
|
};
|
|
469
|
+
/**
|
|
470
|
+
* Immediately redirect to the merchant's successRedirectUrl with the
|
|
471
|
+
* zonosCheckoutSessionId query param, without polling for the order. Used
|
|
472
|
+
* by CLOSE_MODAL when a successRedirectUrl is provided, so the merchant
|
|
473
|
+
* can look up the order themselves using that query param. The
|
|
474
|
+
* `zonos` prefix avoids colliding with merchant query params.
|
|
475
|
+
*/
|
|
476
|
+
this.redirectToCloseModalSuccessPage = () => {
|
|
477
|
+
const redirectUrl = zonosStore.checkoutSettings.successRedirectUrl;
|
|
478
|
+
const checkoutSessionId = storageStore.checkoutSessionId;
|
|
479
|
+
this.isWaitingToRedirect = true;
|
|
480
|
+
if (!checkoutSessionId) {
|
|
481
|
+
this.redirectToUrl(redirectUrl);
|
|
482
|
+
return;
|
|
483
|
+
}
|
|
484
|
+
// Use the URL API so that an existing query string is preserved and a
|
|
485
|
+
// `#fragment` (if any) keeps `zonosCheckoutSessionId` in the query
|
|
486
|
+
// rather than appending it after the fragment marker.
|
|
487
|
+
try {
|
|
488
|
+
const url = new URL(redirectUrl);
|
|
489
|
+
url.searchParams.set('zonosCheckoutSessionId', checkoutSessionId);
|
|
490
|
+
this.redirectToUrl(url.toString());
|
|
491
|
+
}
|
|
492
|
+
catch (_a) {
|
|
493
|
+
// Fallback for relative URLs (which `new URL(...)` rejects without a
|
|
494
|
+
// base): split on `#` first so the fragment stays at the end.
|
|
495
|
+
const fragmentIndex = redirectUrl.indexOf('#');
|
|
496
|
+
const base = fragmentIndex === -1
|
|
497
|
+
? redirectUrl
|
|
498
|
+
: redirectUrl.slice(0, fragmentIndex);
|
|
499
|
+
const fragment = fragmentIndex === -1 ? '' : redirectUrl.slice(fragmentIndex);
|
|
500
|
+
const separator = base.includes('?') ? '&' : '?';
|
|
501
|
+
const query = `zonosCheckoutSessionId=${encodeURIComponent(checkoutSessionId)}`;
|
|
502
|
+
this.redirectToUrl(`${base}${separator}${query}${fragment}`);
|
|
503
|
+
}
|
|
504
|
+
};
|
|
461
505
|
this.handleSuccessBehavior = async () => {
|
|
462
506
|
/**
|
|
463
507
|
* Save placed order info so we can show order info if they try to place the order again
|
|
464
508
|
*/
|
|
465
509
|
this.saveOrderIdForDuplicationIssue();
|
|
466
|
-
const { successBehavior } = zonosStore.checkoutSettings;
|
|
510
|
+
const { successBehavior, successRedirectUrl } = zonosStore.checkoutSettings;
|
|
467
511
|
switch (true) {
|
|
512
|
+
// CLOSE_MODAL + successRedirectUrl: redirect immediately with
|
|
513
|
+
// `zonosCheckoutSessionId`, without polling for the order — merchants
|
|
514
|
+
// look up the order on their success page using the query param.
|
|
515
|
+
// `externalConfirmationPageURL` (set per-cart on legacy facade flows)
|
|
516
|
+
// continues to take precedence and falls through to the polling-based
|
|
517
|
+
// REDIRECT branch below.
|
|
518
|
+
case successBehavior === 'CLOSE_MODAL' &&
|
|
519
|
+
!!successRedirectUrl &&
|
|
520
|
+
!cartStore.externalConfirmationPageURL:
|
|
521
|
+
{
|
|
522
|
+
// Keep the dialog in a steady loading state instead of briefly
|
|
523
|
+
// flashing the success/finish screen — navigation happens
|
|
524
|
+
// immediately, so flashing "Order complete!" for a few hundred ms
|
|
525
|
+
// before the page changes is more confusing than a spinner. The
|
|
526
|
+
// outer caller (`checkStripePaymentStatus` etc.) unconditionally
|
|
527
|
+
// resets `isLoading` after this returns, so the render method keys
|
|
528
|
+
// off `isImmediateRedirecting` instead.
|
|
529
|
+
this.isWaitingToRedirect = true;
|
|
530
|
+
this.isImmediateRedirecting = true;
|
|
531
|
+
this.redirectToCloseModalSuccessPage();
|
|
532
|
+
break;
|
|
533
|
+
}
|
|
468
534
|
// If the merchant wants to redirect to a different page
|
|
469
535
|
case successBehavior === 'REDIRECT_TO_SUCCESS_PAGE':
|
|
470
536
|
case !!cartStore.externalConfirmationPageURL: {
|
|
@@ -814,11 +880,11 @@ const ZonosCheckoutFinish = class {
|
|
|
814
880
|
}
|
|
815
881
|
render() {
|
|
816
882
|
const isTestMode = getIsTestMode();
|
|
817
|
-
return (h(Host, { key: '
|
|
883
|
+
return (h(Host, { key: '52582ef091037ac1fda75df03ae6b54ffaecb06b', class: "zonos--checkout-finish zonos--elements", style: {
|
|
818
884
|
'--zonos--border-radius': getBorderRadius({
|
|
819
885
|
overrideBorderStyle: this.borderRadius,
|
|
820
886
|
}),
|
|
821
|
-
} }, !this.isLoading && (h("div", { key: '
|
|
887
|
+
} }, this.isImmediateRedirecting && (h("div", { key: '3b0f1089e87e0a82539e9f3e25447b3b4f50cb8f', class: "loading-wrapper" }, h("zonos-spinner", { key: 'fa6f61d8b496b90af9c2a8feb1a89df0fb784827', size: 48 }))), !this.isLoading && !this.isImmediateRedirecting && (h("div", { key: '94cf155bd31b1806cc96f88ff504b870dfe4e661', class: "zonos--finish-details" }, h("div", { key: 'f103079e27fa441467e16fb0dc0ac2ba1a69ed64', class: "zonos--group" }, this.notificationType === 'success' ? (h("zonos-icon", { "aria-label": "Order success", content: SuccessIcon, iconColor: 'blue-800', size: 50 })) : (h("zonos-icon", { "aria-label": "Order failed", content: RemoveIcon, iconColor: 'red-800', size: 50 })), h("zonos-text", { key: '8d85373cbaf7ab2e3372889f07e55e6546e13b72', class: "zonos--title", type: "semiBoldSubheader" }, this.notificationTitle), h("zonos-text", { key: 'cf120f43b009bfa2af326548b89d8139a2e0d954', class: "zonos--subtitle", textColor: "gray-600" }, this.notificationMessages.map(message => (h(Fragment, null, message, h("br", null))))), this.shouldRenderCloseButtonForRedirectBehavior() && (h("zonos-button", { key: '10c9b15539d63c502dc8a8d6ccbd6f927dd24cc1',
|
|
822
888
|
// Only show loading spinner if it's not an error notification
|
|
823
889
|
loading: this.isWaitingToRedirect &&
|
|
824
890
|
this.notificationType !== 'error', onClick: () => {
|
|
@@ -830,9 +896,9 @@ const ZonosCheckoutFinish = class {
|
|
|
830
896
|
}
|
|
831
897
|
this.closeClickHandler();
|
|
832
898
|
}, size: "md", variant: "primary" }, translate('Close'))), !window.Zonos.isLegacyCheckout &&
|
|
833
|
-
this.shouldRenderKeepShoppingButton() && (h("zonos-button", { key: '
|
|
899
|
+
this.shouldRenderKeepShoppingButton() && (h("zonos-button", { key: 'b2fc437d0bd21d38ad09cdcdf8b5907b7604ed31', onClick: () => this.closeClickHandler(), size: "md", variant: "primary" }, this.notificationActionText))), isTestMode &&
|
|
834
900
|
cartStore.step === 'finish' &&
|
|
835
|
-
this.notificationType === 'success' && (h("div", { key: '
|
|
901
|
+
this.notificationType === 'success' && (h("div", { key: '6c1258c8d66d5127a14ae3ee5eb5477127a395aa', class: "zonos--finish-button-wrapper" }, h("zonos-button", { key: 'b3e0a8bf9eb0026595552563fd036a1894c726f8', backgroundColor: "gray-0", buttonColor: "gray-1000", onClick: () => this.closeClickHandler(), size: "lg", variant: "outline" }, "New test cart"), h("zonos-button", { key: 'c66ff9fb1998318eaa518c053998de662e53abff', onClick: () => {
|
|
836
902
|
const isZonosDashboard = window.location.hostname.includes('dashboard.zonos.com');
|
|
837
903
|
this.redirectToUrl(isZonosDashboard
|
|
838
904
|
? '/orders/all'
|
|
@@ -892,10 +958,10 @@ const ZonosCheckoutFooter = class {
|
|
|
892
958
|
const languageLabel = (_a = languages.find(x => x.code === localizationStore.selectedLocale)) === null || _a === void 0 ? void 0 : _a.label;
|
|
893
959
|
// reverse color when on desktop. With the coversheet backdrop, the color should be white
|
|
894
960
|
const colorDesktop = this.dataTheme === 'LIGHT' && !this.mobile ? 'gray-0' : 'gray-1000';
|
|
895
|
-
return (h(Host, { key: '
|
|
961
|
+
return (h(Host, { key: '2200a14517d5d1dd81b68ecfb60ab6a691ebe581', class: classes(['zonos--elements', this.isMobile && 'mobile']) }, h("div", { key: 'bc77f1ea299fa151ba9d4628653d6a3800856e85', class: "zonos--checkout-footer" }, h("div", { key: 'e2e9f901e3546a48ba88aca9c0f422785d32f78d', class: "zonos--checkout-locale-wrapper" }, h("zonos-button", { key: '60df35f860aa3c59bfa6f470adab3c882301c529', buttonColor: colorDesktop, class: "zonos--checkout-footer-language-button", icon: h("zonos-icon", { "aria-label": "Language select", content: Globe, iconColor: colorDesktop }), onClick: () => this.toggleLanguageDialog(), variant: "subtle" }, languageLabel), h("div", { key: '3d4acf669d35fcbf4364fb56f7a18bb3a8f61e1b', class: classes([
|
|
896
962
|
'zonos--checkout-footer-dialog',
|
|
897
963
|
this.showLanguageDialog && 'zonos--checkout-footer-dialog-open',
|
|
898
|
-
]) }, h("zonos-language-select", { key: '
|
|
964
|
+
]) }, h("zonos-language-select", { key: '5b32a3d11a725c7af0c358acf9a15c6ec17201ac', handleOnClose: () => this.toggleLanguageDialog() }))), h("div", { key: 'f678c6d76ad122ccbd3e18e6fa9deacd9ec76b93', class: "zonos--checkout-footer-icon-wrapper" }, h("a", { key: '08cc72da5cbc00bd927828ae1df960a80604519c', href: "https://zonos.com/docs/legal/zonos-privacy-policy", target: "_blank" }, h("zonos-text", { key: 'df8d1727117c28c694c8450d5268895f67b23dff', textColor: colorDesktop }, "Privacy policy")), h("div", { key: 'c75b73f3bd573aa2bdd60b7fd05e6b06c8ee8d62', class: "zonos--checkout-footer-logo" }, h("zonos-text", { key: 'b57bf8ed2b6498f9cd64d7ab066625376642abda', textColor: colorDesktop }, "Powered by"), h("a", { key: 'cd12e10b1e4acd43fea371aad6d74ee8a89f1fbe', href: "https://zonos.com", target: "_blank", title: "Zonos website" }, h("zonos-icon", { key: '06465fba84c0c05e330779f522fdcabed817d5de', autoHeight: true, content: ZonosIconDark, size: 108 })))))));
|
|
899
965
|
}
|
|
900
966
|
get el() { return getElement(this); }
|
|
901
967
|
static get watchers() { return {
|
|
@@ -1200,17 +1266,17 @@ const ZonosCheckoutProgressTabs = class {
|
|
|
1200
1266
|
color: labelSelectedColor,
|
|
1201
1267
|
})
|
|
1202
1268
|
: labelSelectedColor;
|
|
1203
|
-
return (h(Host, { key: '
|
|
1269
|
+
return (h(Host, { key: 'f7ea289329f5f1e5fd1a5fdbd790b581de1666d3', class: "zonos--elements", style: {
|
|
1204
1270
|
'--zonos--color': contrastLabelColor,
|
|
1205
1271
|
'--zonos--progress-percent': this.getTotalSuccessStep(),
|
|
1206
|
-
} }, h("div", { key: '
|
|
1272
|
+
} }, h("div", { key: 'c071c27dee5b5ddf7b59cddd6de668b1bd72df2a', class: "zonos--tab-wrapper" }, Object.values(cartStore.tabItems).map((tab, index) => {
|
|
1207
1273
|
const isSelected = tab.value === selectedStep;
|
|
1208
1274
|
return (h("button", { "aria-label": `Tab ${tab.label}`, class: classes([
|
|
1209
1275
|
'zonos--tab-item',
|
|
1210
1276
|
tab.value === selectedStep && 'selected',
|
|
1211
1277
|
tab.isDone && 'done',
|
|
1212
1278
|
]), disabled: !this.isTabClickable(tab.value), key: tab.value, onClick: () => this.setTabSelected(tab.value) }, h("div", { class: "zonos--tab-index" }, h("zonos-text", { class: "zonos--tab-index-label", textColor: isSelected ? contrastLabelColor : 'gray-1000', type: "label" }, index + 1), h("zonos-icon", { class: "zonos--tab-index-done-icon", content: TabCheckmark, iconColor: isSelected ? contrastLabelColor : 'gray-1000' })), h("zonos-text", { textColor: isSelected ? contrastLabelColor : 'gray-1000', type: "label" }, translate(tab.label))));
|
|
1213
|
-
})), h("div", { key: '
|
|
1279
|
+
})), h("div", { key: '9c332b9053d57a05d8db19d179696a8261a1ac94', class: "zonos--tab-progress" }, h("div", { key: '3b303b4dd931e4a1d030ecc62cbbabd232354636', class: "zonos--progress-bar-fill" }))));
|
|
1214
1280
|
}
|
|
1215
1281
|
static get assetsDirs() { return ["assets"]; }
|
|
1216
1282
|
get ele() { return getElement(this); }
|
|
@@ -1920,11 +1986,11 @@ const ZonosRestState = class {
|
|
|
1920
1986
|
}
|
|
1921
1987
|
render() {
|
|
1922
1988
|
const imageUrl = this.getImageRestState();
|
|
1923
|
-
return (h(Host, { key: '
|
|
1989
|
+
return (h(Host, { key: 'c39228c5a45be0c27fc805859ba896f346f4c7bb', class: classes(['zonos--elements zonos--restState']), style: {
|
|
1924
1990
|
'--zonos--font-family': zonosStoreFontFamily(),
|
|
1925
|
-
} }, h("div", { key: '
|
|
1991
|
+
} }, h("div", { key: '466d38527c50fac57c85b29b6d501139a55c652c', class: "zonos--restState-image" }, h("img", { key: '233348dc1fe72c37ac3485dc4ae577b02d44d0cc', alt: this.restStateType, onError: () => {
|
|
1926
1992
|
this.isErrorImageLoad = true;
|
|
1927
|
-
}, src: imageUrl })), h("div", { key: '
|
|
1993
|
+
}, src: imageUrl })), h("div", { key: '0ead09005b4a4e59fcbe5b673ef206d09c6f344f', class: "content" }, h("zonos-text", { key: '2f6d50f5562ab86918755b2d20aeab1ba170e0d1', class: "title", type: "boldSubheader" }, this.restStateTitle), h("zonos-text", { key: '9304b2421ac05dea5e8567666dc3fd5c279bf6dd', class: "subtitle" }, this.restStateSubtitle)), h("div", { key: '00323cff6ad4b67a5af980dcbfce5cb0c59150c4', class: "action" }, h("slot", { key: '256fc2f99f345d0302d6fa4467b22558723dae7b' }))));
|
|
1928
1994
|
}
|
|
1929
1995
|
static get assetsDirs() { return ["assets"]; }
|
|
1930
1996
|
};
|
|
@@ -68,14 +68,14 @@ const ZonosCheckbox = class {
|
|
|
68
68
|
customRoundRadius: '4px',
|
|
69
69
|
overrideBorderStyle: this.borderStyle,
|
|
70
70
|
});
|
|
71
|
-
return (h(Host, { key: '
|
|
71
|
+
return (h(Host, { key: 'a3db8981598a3703228e7c54bfd8350da718f744', class: classes(['zonos--elements zonos--checkbox']), style: {
|
|
72
72
|
'--zonos--background-color': backgroundColor,
|
|
73
73
|
'--zonos--border-radius': borderStyle,
|
|
74
74
|
'--zonos--font-family': zonosStoreFontFamily(),
|
|
75
75
|
'--zonos--size': `${this.size}px`,
|
|
76
|
-
} }, h("label", { key: '
|
|
76
|
+
} }, h("label", { key: '6abc998d8a2338fd188e561ce38af6f351e87d93', class: classes([this.isDisabled && 'disabled']), htmlFor: this.inputId }, h("input", { key: 'a2b3bc99d562f0ddc3337093597d962a28fe7006', checked: this.isChecked, disabled: this.isDisabled, hidden: true, id: this.inputId, onChange: e => {
|
|
77
77
|
this.checkboxSelected.emit(e.target.checked);
|
|
78
|
-
}, type: "checkbox" }), h("span", { key: '
|
|
78
|
+
}, type: "checkbox" }), h("span", { key: '4ff30adc1de3f679a62ac4bdc23c89c7fbd70862', class: "checkmark-container" }, h("svg", { key: 'c235768b91c19a2edf0d5ed1d416e6b58be4f9eb', class: "checkmark", color: checkmarkColor, fill: "none", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '67e8a36292f8f4fe226709acdd08579d2092b836', "clip-rule": "evenodd", d: "M17.456 7.404a.75.75 0 0 1 .14 1.052l-6.5 8.5a.75.75 0 0 1-1.126.074l-4-4a.75.75 0 0 1 1.06-1.06l3.395 3.394 5.98-7.82a.75.75 0 0 1 1.05-.14Z", fill: "currentColor", "fill-rule": "evenodd" }))), this.label && (h("zonos-text", { key: '9fdd82641973e8870e55117992ca26f1e585c801', size: this.fontSize }, this.label)))));
|
|
79
79
|
}
|
|
80
80
|
};
|
|
81
81
|
ZonosCheckbox.style = ZonosCheckboxStyle0;
|
|
@@ -93,9 +93,9 @@ const ZonosToggle = class {
|
|
|
93
93
|
this.options = [];
|
|
94
94
|
}
|
|
95
95
|
render() {
|
|
96
|
-
return (h(Host, { key: '
|
|
96
|
+
return (h(Host, { key: '220dcc3ef8685ea09db761d7a42a00a7309caa70', class: classes(['zonos--elements zonos--toggle']), style: {
|
|
97
97
|
'--zonos--font-family': zonosStoreFontFamily(),
|
|
98
|
-
} }, h("div", { key: '
|
|
98
|
+
} }, h("div", { key: 'fa54f818b15ff33d88dc08a1df370ca9be17ff71', class: "wrapper" }, this.options.map(option => {
|
|
99
99
|
const selected = option.value === this.value;
|
|
100
100
|
return (h("button", { class: classes(['zonos--option', selected && 'selected']), key: option.value, onClick: () => {
|
|
101
101
|
this.toggleChanged.emit(option.value);
|
|
@@ -1718,9 +1718,11 @@ const ZonosCheckout = class {
|
|
|
1718
1718
|
}
|
|
1719
1719
|
// apply theme to stripe elements
|
|
1720
1720
|
await this.applyStripeTheme();
|
|
1721
|
+
const { successBehavior, successRedirectUrl } = zonosStore.checkoutSettings;
|
|
1721
1722
|
this.isRedirectAfterOrder =
|
|
1722
|
-
|
|
1723
|
-
'
|
|
1723
|
+
successBehavior === 'REDIRECT_TO_SUCCESS_PAGE' ||
|
|
1724
|
+
(successBehavior === 'CLOSE_MODAL' && !!successRedirectUrl) ||
|
|
1725
|
+
!!cartStore.externalConfirmationPageURL;
|
|
1724
1726
|
return true;
|
|
1725
1727
|
}
|
|
1726
1728
|
reloadCheckoutSession() {
|
|
@@ -1814,12 +1816,20 @@ const ZonosCheckout = class {
|
|
|
1814
1816
|
attachCheckout() {
|
|
1815
1817
|
const buttonAnchorSelector = zonosStore.checkoutSettings.placeOrderButtonSelector;
|
|
1816
1818
|
const alwaysTriggerInternationalCheckoutSelector = zonosStore.checkoutSettings.alwaysTriggerInternationalCheckoutSelector;
|
|
1819
|
+
// `_zonosBase` injects this hidden button on page load when Stripe
|
|
1820
|
+
// redirects the shopper back with a `payment_intent_client_secret` query
|
|
1821
|
+
// param. We must still attach (and auto-click) it even when the merchant
|
|
1822
|
+
// is on a `buildCartDetail` only setup (no cartId / no place-order
|
|
1823
|
+
// selector configured yet) — otherwise the redirect-back never reopens
|
|
1824
|
+
// the checkout dialog to show the success/finish screen.
|
|
1825
|
+
const hasRedirectHiddenButton = !!document.querySelector(`#${checkoutHiddenBtnSelector}`);
|
|
1817
1826
|
log(`attach checkout ${buttonAnchorSelector}`);
|
|
1818
1827
|
log(`attach checkout to always trigger international checkout selector: ${alwaysTriggerInternationalCheckoutSelector}`);
|
|
1819
1828
|
// allow to load checkout if cartData is ready (Checkout can be loaded right away if tempCartUUID is in the URL)
|
|
1820
1829
|
if (!buttonAnchorSelector &&
|
|
1821
1830
|
!alwaysTriggerInternationalCheckoutSelector &&
|
|
1822
|
-
!window.Zonos.cartData
|
|
1831
|
+
!window.Zonos.cartData &&
|
|
1832
|
+
!hasRedirectHiddenButton) {
|
|
1823
1833
|
// do nothing if button element is not found
|
|
1824
1834
|
return;
|
|
1825
1835
|
}
|
|
@@ -53,10 +53,10 @@ const ZonosCollapse = class {
|
|
|
53
53
|
// set overflow to hidden to prevent content from showing when collapsed
|
|
54
54
|
this.el.style.overflow = 'hidden';
|
|
55
55
|
}
|
|
56
|
-
return (h(Host, { key: '
|
|
56
|
+
return (h(Host, { key: '4fb230dfc4aa850c90c8cfbaf59da8d5043a4a89', class: 'zonos--elements zonos--collapse', style: {
|
|
57
57
|
'--zonos--font-family': zonosStoreFontFamily(),
|
|
58
58
|
height: this.getElementHeight(),
|
|
59
|
-
} }, h("div", { key: '
|
|
59
|
+
} }, h("div", { key: '766542489d4a47d87ac2a2e2b7d62ec99272386a' }, h("iframe", { key: 'd2e33a342c9001bf4be3a478a068e0713a88bac5', class: "height-change-listener", tabindex: "-1", title: "collapse-height-change-listener" }), h("slot", { key: '566b3f4a214fc43cb9642895a716dc69e95ff9ef' }))));
|
|
60
60
|
}
|
|
61
61
|
get el() { return getElement(this); }
|
|
62
62
|
};
|
|
@@ -21,7 +21,7 @@ const ZonosCollectCartItems = class {
|
|
|
21
21
|
render() {
|
|
22
22
|
const emptyItemImg = getAssetPath('./assets/empty-item.jpeg');
|
|
23
23
|
const nonRestrictedItems = cartStore.items.filter(item => !item.isRestricted);
|
|
24
|
-
return (h(Host, { key: '
|
|
24
|
+
return (h(Host, { key: 'd92815bdd86b1bb911bd11eb9e69bfb6fc477061', class: "zonos--collect-cart-items zonos--elements" }, h("table", { key: '23e36f132b3ad84cd9cd87c11e3d9149b5dd5e1d', class: "zonos--cart-table" }, h("tbody", { key: 'a49a23585c25c93a1b829c044e9641e7143ec212' }, nonRestrictedItems.map(item => {
|
|
25
25
|
const itemImg = item.imageUrl;
|
|
26
26
|
const cleanedItemNames = cleanHtmlMarkdown(item.name);
|
|
27
27
|
return (h("tr", { class: "zonos--collect-cart-item" }, h("td", { class: "zonos--column zonos--cart-item-image" }, itemImg && !this.errorImages.includes(itemImg) ? (h("img", { alt: item.name, onError: () => {
|
|
@@ -48,10 +48,10 @@ const HStack = class {
|
|
|
48
48
|
this.spacing = 24;
|
|
49
49
|
}
|
|
50
50
|
render() {
|
|
51
|
-
return (h(Host, { key: '
|
|
51
|
+
return (h(Host, { key: '5f51e8415536589fe4300c5db75ea13e4419350b', style: {
|
|
52
52
|
'--spacing': `${this.spacing}px`,
|
|
53
53
|
'--zonos--font-family': zonosStoreFontFamily(),
|
|
54
|
-
} }, h("slot", { key: '
|
|
54
|
+
} }, h("slot", { key: 'b0cc8a581603ee78ec576346c5730f28ba5006e1' })));
|
|
55
55
|
}
|
|
56
56
|
};
|
|
57
57
|
HStack.style = ZonosHStackStyle0;
|
|
@@ -74,7 +74,7 @@ const ZonosSkeleton = class {
|
|
|
74
74
|
this.skeletonHeight = '14px';
|
|
75
75
|
}
|
|
76
76
|
render() {
|
|
77
|
-
return (h(Host, { key: '
|
|
77
|
+
return (h(Host, { key: '0b7adeb320e2f98d56158e4ec4d8933aa252ee8b', class: classes(['zonos--elements zonos--skeleton']), style: styles({
|
|
78
78
|
'--zonos--skeleton-height': this.skeletonHeight,
|
|
79
79
|
'--zonos--skeleton-width': this.skeletonWidth,
|
|
80
80
|
}) }));
|
|
@@ -268,11 +268,11 @@ const ZonosCollectFinish = class {
|
|
|
268
268
|
}
|
|
269
269
|
render() {
|
|
270
270
|
const cartId = window.Zonos.cartId;
|
|
271
|
-
return (h(Host, { key: '
|
|
271
|
+
return (h(Host, { key: 'ece5aa1dae1e8e7bb99c0904adeaf6541fbf3ea6', class: "zonos--checkout-finish zonos--elements", style: {
|
|
272
272
|
'--zonos--border-radius': getBorderRadius({
|
|
273
273
|
overrideBorderStyle: this.borderRadius,
|
|
274
274
|
}),
|
|
275
|
-
} }, !this.isLoading && (h("div", { key: '
|
|
275
|
+
} }, !this.isLoading && (h("div", { key: 'd48c2384fb55b7b318143f933775c35e29abbe38', class: "zonos--finish-details" }, h("div", { key: '85e03a288ee29bc1f664d03b9c99a164acc51b92', class: "zonos--group" }, this.notificationType === 'success' ? (h("zonos-icon", { "aria-label": "Order success", content: SuccessIcon, iconColor: 'blue-800', size: 50 })) : (h("zonos-icon", { "aria-label": "Order failed", content: RemoveIcon, iconColor: 'red-800', size: 50 })), h("zonos-text", { key: '7fcd228d5144d4f523d15870cdf18491278f0ee6', class: "zonos--title", type: "semiBoldSubheader" }, this.notificationTitle), this.confirmationId && (h("zonos-badge", { key: '219365d86b8aef904adffb1fab5e045db174a724', badgeColor: "gray" }, this.confirmationId)), h("zonos-text", { key: '4b2b41bdf35eb2d79b32fa5f7538798e3fd028f5', class: "zonos--subtitle", textColor: "gray-600" }, this.notificationMessages.map(message => (h(Fragment, null, message, h("br", null))))), this.order && cartId && (h("div", { key: '52431496f81706a720406843309646b4fd9b2413', class: "zonos--button-container" }, h("zonos-button", { key: '4ccdbba8da9591c6207a472df29515fec8c0c56f', onClick: () => {
|
|
276
276
|
window.open(this.getReceiptUrl({ cartId }), '_blank');
|
|
277
277
|
}, size: "lg", variant: "primary" }, translate('View receipt')))))))));
|
|
278
278
|
}
|
|
@@ -335,15 +335,15 @@ const ZonosCollectFooter = class {
|
|
|
335
335
|
const languageLabel = (_a = languages.find(x => x.code === localizationStore.selectedLocale)) === null || _a === void 0 ? void 0 : _a.label;
|
|
336
336
|
// reverse color when on desktop. With the coversheet backdrop, the color should be white
|
|
337
337
|
const colorDesktop = 'gray-1000';
|
|
338
|
-
return (h(Host, { key: '
|
|
338
|
+
return (h(Host, { key: 'ca7bd600af1d83937719aa6d83324d61f60b4c79', class: classes([
|
|
339
339
|
'zonos--elements',
|
|
340
340
|
this.isMobile && 'mobile',
|
|
341
341
|
this.isTablet && 'tablet',
|
|
342
|
-
]) }, h("div", { key: '
|
|
342
|
+
]) }, h("div", { key: 'a69e9229e009f9c754e2ad9cf068654d683036fa', class: "zonos--collect-footer" }, h("div", { key: '72e62b7191dd32f0ead5970cb62edcd469ef40ce', class: "zonos--collect-locale-wrapper" }, h("zonos-button", { key: '2f76f5c3009175bb1dd4cd90d91628e79a97770e', buttonColor: colorDesktop, class: "zonos--collect-footer-language-button", icon: h("zonos-icon", { "aria-label": "Language select", content: Globe, iconColor: colorDesktop }), onClick: () => this.toggleLanguageDialog(), variant: "subtle" }, languageLabel), h("div", { key: '53f2b59da147de3637487cdc4b1cd6d440838b81', class: classes([
|
|
343
343
|
'zonos--collect-language-dialog',
|
|
344
344
|
this.showLanguageDialog &&
|
|
345
345
|
'zonos--collect-language-dialog-open',
|
|
346
|
-
]) }, h("zonos-language-select", { key: '
|
|
346
|
+
]) }, h("zonos-language-select", { key: 'bd0a83b6f180e5d4d0a368240599eb7934b8d06f', handleOnClose: () => this.toggleLanguageDialog() }))), h("div", { key: '52620a619a47e52129207880adbfd8e6a88372c6', class: "zonos--collect-footer-icon-wrapper" }, h("div", { key: '38c863a4b26b3e6768ed8acb57a32e398ba064ea', class: "zonos--collect-footer-logo" }, h("zonos-text", { key: '27402251e8d46578e3d9f1eb7a54afb5c553ea33', textColor: colorDesktop }, "Powered by"), h("a", { key: '350ed904d6d3787a38229a4178c0ee82a2c87cac', href: "https://zonos.com", target: "_blank", title: "Zonos website" }, h("zonos-icon", { key: '3c65492b88a601459d0487e4c615208c8dcaa810', autoHeight: true, content: ZonosWordmark, size: 42 }))), h("div", { key: 'dc8f6479806466c45ac1c1ed8e32587190f14175', class: "dot" }), h("a", { key: 'bc4a48af6ea629273cdf9bd1cdca4981306a8eb9', href: "https://zonos.com/docs/legal/zonos-privacy-policy", target: "_blank" }, h("zonos-text", { key: '2e923eef08f6b6a9dd53190a1aa221666cab4210', textColor: colorDesktop }, "Privacy policy"))))));
|
|
347
347
|
}
|
|
348
348
|
get el() { return getElement(this); }
|
|
349
349
|
static get watchers() { return {
|
|
@@ -677,13 +677,13 @@ const ZonosCollectReview = class {
|
|
|
677
677
|
}
|
|
678
678
|
render() {
|
|
679
679
|
const titleTextColor = this.isMobile ? 'gray-1000' : 'gray-800';
|
|
680
|
-
return (h(Host, { key: '
|
|
680
|
+
return (h(Host, { key: 'c8445ba13733af60fb88372eb2ae07fdc435364c', class: classes([
|
|
681
681
|
'zonos--collect-review zonos--elements',
|
|
682
682
|
this.isMobile && 'mobile',
|
|
683
683
|
this.isTablet && 'tablet',
|
|
684
|
-
]) }, h("div", { key: '
|
|
684
|
+
]) }, h("div", { key: '5589e61c35cbcdd885dc33cdb07999e55f5c4715', class: "zonos--title" }, h("zonos-text", { key: '783d38dcf9aabd64d94ab3356935aa5d6ffcdec0', textColor: titleTextColor, type: 'semiBoldLabel' }, translate('Pay [organizationName]', {
|
|
685
685
|
organizationName: zonosStore.organizationName,
|
|
686
|
-
}))), h("div", { key: '
|
|
686
|
+
}))), h("div", { key: '4ce3c3391b6e2a47518cce212019137970dd99f7', class: "zonos--total-pay" }, renderFallback({
|
|
687
687
|
content: (h("zonos-text", { type: 'secondaryPageHeader' }, renderCheckoutCurrency({
|
|
688
688
|
amount: collectStore.amountDutyTaxFeeTotal || 0,
|
|
689
689
|
isForeign: true,
|
|
@@ -749,7 +749,7 @@ const ZonosCollectSubtotal = class {
|
|
|
749
749
|
}
|
|
750
750
|
render() {
|
|
751
751
|
this.initSubtotalData();
|
|
752
|
-
return (h(Host, { key: '
|
|
752
|
+
return (h(Host, { key: 'ebd46815f83307682f5cbb8430bb64e66b9eadd1', class: "zonos--collect-subtotal zonos--elements" }, h("table", { key: '7a878d4bb5dce069060888f4d7e1fde0ef0e23cd', class: "zonos--collect-table" }, !!this.subtotals[translate('Duties')] && (h("tr", { key: '496a81ab73739fe285636aad504232b1faa2f8e1', class: "zonos--row zonos--collect-duty" }, h("td", { key: '85334ee7319578f110a75f512f9d2e28f3eca79a', class: "zonos--column zonos--collect-subtotal-title" }, h("zonos-text", { key: 'f877f57ad0d6853f7c49237e4da649b1bfc5206b', type: "semiBoldLabel" }, translate('Duties'))), h("td", { key: '97588563d5bd85fd1692e1882fcace85b3036b8c', class: "zonos--column" }), h("td", { key: '2acb01b0b6d38861eb23b5910c20a57a52172a33', class: "zonos--column zonos--collect-subtotal-price" }, renderFallback({
|
|
753
753
|
content: (h("zonos-text", { type: "label" }, renderCheckoutCurrency({
|
|
754
754
|
amount: this.subtotals[translate('Duties')] || 0,
|
|
755
755
|
isForeign: true,
|
|
@@ -757,7 +757,7 @@ const ZonosCollectSubtotal = class {
|
|
|
757
757
|
isLoading: collectStore.isFetchingShippingInfo,
|
|
758
758
|
skeletonHeight: '14px',
|
|
759
759
|
skeletonWidth: '150px',
|
|
760
|
-
})))), !!this.subtotals[translate('Taxes')] && (h("tr", { key: '
|
|
760
|
+
})))), !!this.subtotals[translate('Taxes')] && (h("tr", { key: '36b004cc298b1d9c757b3090ce4610c6ea36b209', class: "zonos--row zonos--collect-tax" }, h("td", { key: 'ceb1e460218ba71eb9c8db33a9cfe0e4affa00eb', class: "zonos--column zonos--collect-subtotal-title" }, h("zonos-text", { key: '147687aafbe073169862789a9ac0ac6da544e1ce', type: "semiBoldLabel" }, translate('Taxes'))), h("td", { key: '642c5ff03b7dea8e4f2bd378e3ca482d81169f46', class: "zonos--column" }), h("td", { key: '31776ea8d128ad9ce6c9e523ca8fa297baf4763d', class: "zonos--column zonos--collect-subtotal-price" }, renderFallback({
|
|
761
761
|
content: (h("zonos-text", { type: "label" }, renderCheckoutCurrency({
|
|
762
762
|
amount: this.subtotals[translate('Taxes')] || 0,
|
|
763
763
|
isForeign: true,
|
|
@@ -765,7 +765,7 @@ const ZonosCollectSubtotal = class {
|
|
|
765
765
|
isLoading: collectStore.isFetchingShippingInfo,
|
|
766
766
|
skeletonHeight: '14px',
|
|
767
767
|
skeletonWidth: '150px',
|
|
768
|
-
})))), !!this.subtotals[translate('Fees')] && (h("tr", { key: '
|
|
768
|
+
})))), !!this.subtotals[translate('Fees')] && (h("tr", { key: 'ee18eaf3af00321a0741b07565d8474bc692b2fa', class: "zonos--row zonos--collect-fee" }, h("td", { key: '0abdde651b432368fcd374ecb1c9119981dc2531', class: "zonos--column zonos--collect-subtotal-title" }, h("zonos-text", { key: '385973cd0c11a161cba2a8737f6dfba4c4749d77', type: "semiBoldLabel" }, translate('Fees'))), h("td", { key: '4ae0c1da68e5ac48ce0be09ec1826867905f9e74', class: "zonos--column" }), h("td", { key: '80f232ffdb0a66f88753c2a07290ed6273b66747', class: "zonos--column zonos--collect-subtotal-price" }, renderFallback({
|
|
769
769
|
content: (h("zonos-text", { type: "label" }, renderCheckoutCurrency({
|
|
770
770
|
amount: this.subtotals[translate('Fees')] || 0,
|
|
771
771
|
isForeign: true,
|
|
@@ -773,7 +773,7 @@ const ZonosCollectSubtotal = class {
|
|
|
773
773
|
isLoading: collectStore.isFetchingShippingInfo,
|
|
774
774
|
skeletonHeight: '14px',
|
|
775
775
|
skeletonWidth: '150px',
|
|
776
|
-
})))), h("tr", { key: '
|
|
776
|
+
})))), h("tr", { key: '71677498d7c575e4227f45620b62f5ddadf06858', class: "zonos--row zonos--collect-spacing" }, h("td", { key: '5fc92ef7b46c8e5eb8ebb391015682f376785a26', class: "zonos--column", colSpan: 3 })), h("tr", { key: '253c6735bd30ef66c2fa1f82a44cebff3dacc189', class: "zonos--row zonos--collect-total zonos--collect-total-subtotal" }, h("td", { key: '0755b1c175973640e925520e747141e96446eea8', class: "zonos--column" }), h("td", { key: '19646da57bd222dbb2ada0c450eabf508833c069', class: "zonos--column zonos--collect-subtotal-title" }, h("zonos-text", { key: '57b3ff6e47ab14ab955abda316deb635fe70d3e9', type: "label" }, translate('Subtotal'))), h("td", { key: 'c3ce8d85aa7a4d554ee271b0bc9ed248d97315b0', class: "zonos--column zonos--collect-subtotal-price" }, renderFallback({
|
|
777
777
|
content: (h("zonos-text", { type: "label" }, renderCheckoutCurrency({
|
|
778
778
|
amount: collectStore.amountDutyTaxFeeTotal || 0,
|
|
779
779
|
isForeign: true,
|
|
@@ -781,7 +781,7 @@ const ZonosCollectSubtotal = class {
|
|
|
781
781
|
isLoading: collectStore.isFetchingShippingInfo,
|
|
782
782
|
skeletonHeight: '14px',
|
|
783
783
|
skeletonWidth: '150px',
|
|
784
|
-
}))), h("tr", { key: '
|
|
784
|
+
}))), h("tr", { key: 'e21e986f76bb932645c54e75698db4c06024335e', class: "zonos--row zonos--collect-total" }, h("td", { key: 'b4cc8e32cd69c0b1ed000c582c058a1215c4e365', class: "zonos--column" }), h("td", { key: '1b55f78e8161cd9da263d3b58c053b9b04cca999', class: "zonos--column zonos--collect-subtotal-title" }, h("zonos-text", { key: '97de8710348f0a039375d02b075c1e91ef6ae621', type: "semiBoldLabel" }, translate('Customs fees total'))), h("td", { key: '58bf548786e07bb780c73433ae7a8582f2c2b059', class: "zonos--column zonos--collect-subtotal-price" }, renderFallback({
|
|
785
785
|
content: (h("zonos-text", { type: "semiBoldLabel" }, renderCheckoutCurrency({
|
|
786
786
|
amount: collectStore.amountDutyTaxFeeTotal || 0,
|
|
787
787
|
isForeign: true,
|
|
@@ -27,7 +27,7 @@ const ZonosComponent = class {
|
|
|
27
27
|
return format(this.first, this.middle, this.last);
|
|
28
28
|
}
|
|
29
29
|
render() {
|
|
30
|
-
return h("div", { key: '
|
|
30
|
+
return h("div", { key: '1d369c76153c971ef62736d7e00a5a940284d346' }, "Hello, World! I'm ", this.getText());
|
|
31
31
|
}
|
|
32
32
|
};
|
|
33
33
|
ZonosComponent.style = ZonosComponentStyle0;
|
|
@@ -726,7 +726,7 @@ const ZonosController = class {
|
|
|
726
726
|
zonosStore.organizationName = organizationName;
|
|
727
727
|
}
|
|
728
728
|
render() {
|
|
729
|
-
return h(Host, { key: '
|
|
729
|
+
return h(Host, { key: '4355afb5d8b739bf114a898803287d948fa4539e', class: "zonos--elements" });
|
|
730
730
|
}
|
|
731
731
|
};
|
|
732
732
|
ZonosController.style = ZonosControllerStyle0;
|
|
@@ -1857,13 +1857,13 @@ const ZonosCountrySelect = class {
|
|
|
1857
1857
|
? fuseObject.map(country => country.item)
|
|
1858
1858
|
: countries.sort((a, b) => a.displayName.localeCompare(b.displayName));
|
|
1859
1859
|
const isEmpty = !filteredCountries.length;
|
|
1860
|
-
return (h(Host, { key: '
|
|
1860
|
+
return (h(Host, { key: 'af20d111ed5688a3976f1e7c6b6d14a871f870cd', class: "zonos--elements", style: {
|
|
1861
1861
|
'--zonos--font-family': zonosStoreFontFamily(),
|
|
1862
|
-
} }, h("div", { key: '
|
|
1862
|
+
} }, h("div", { key: '290ccf09fab10d3055630ca4c89612c9cb4420fc', class: "zonos--country-select" }, h("zonos-v-stack", { key: 'ec39cc44f2482a6a7301fa347e0a4192182abc2c', class: "zonos--country-select-header", spacing: 8 }, h("zonos-select-dialog-header", { key: 'c22f5f87d9ecf4b4231a56b1cec827a85a5a36ed', handleOnClose: () => this.handleOnClose(), label: translate('Select a country') }, h("input", { key: '0d91ccb2070d1a74924d6e997bbc324f59d8dde8', autoComplete: "off", class: "zonos--country-select-input", onInput: this.handleInputChange, placeholder: translate('Search countries'), ref: el => {
|
|
1863
1863
|
if (el) {
|
|
1864
1864
|
this.inputRef = el;
|
|
1865
1865
|
}
|
|
1866
|
-
}, type: "text", value: this.inputValue }))), h("div", { key: '
|
|
1866
|
+
}, type: "text", value: this.inputValue }))), h("div", { key: '12282a147c54dd2b8aed4636190165504eaed8d8', class: "zonos--country-select-content" }, isEmpty && (h("zonos-text", { key: '298ec0df58503e667446b6d03abda6b06dfcb926', class: "no-country", textColor: "gray-800" }, translate('No countries found'))), h("zonos-virtual-scroll", { key: 'f30cd88b6ac48df15a728498a37ca670aad5fc84', class: "zonos--country-filter-content", fallbackItemHeight: 34, itemHeights: filteredCountries.map(() => 34), renderItem: index => {
|
|
1867
1867
|
const country = filteredCountries[index];
|
|
1868
1868
|
if (!country) {
|
|
1869
1869
|
return null;
|
|
@@ -1892,9 +1892,9 @@ const ZonosCustomMessage = class {
|
|
|
1892
1892
|
}
|
|
1893
1893
|
render() {
|
|
1894
1894
|
const messageWithLinks = formatStringWithLinks(this.message);
|
|
1895
|
-
return (h(Host, { key: '
|
|
1895
|
+
return (h(Host, { key: 'b08ba40f5db3ed5aa5315b8b9819ddd464abfad8', class: "zonos--elements", style: {
|
|
1896
1896
|
'--zonos--font-family': zonosStoreFontFamily(),
|
|
1897
|
-
} }, this.message && (h("zonos-card", { key: '
|
|
1897
|
+
} }, this.message && (h("zonos-card", { key: 'd1f85a8cf55968ec24794d3130341dfc3b3853fa', class: "zonos--custom-message", spacing: "12px" }, h("div", { key: '34a1ac387d14cfe5a4aa7f431d9067700f09dbec', class: "zonos--flex-message" }, h("zonos-icon", { key: 'dcd6403a54453ed4959b9ca483597609bf1f7900', "aria-label": "Custom message icon", content: this.icon }), h("zonos-text", { key: '54e77038f56a5929bd56180e00f2ea35d5803cf8', innerHTML: messageWithLinks }))))));
|
|
1898
1898
|
}
|
|
1899
1899
|
};
|
|
1900
1900
|
ZonosCustomMessage.style = ZonosCustomMessageStyle0;
|
|
@@ -1951,9 +1951,9 @@ const ZonosHelloDialogFooter = class {
|
|
|
1951
1951
|
const language = (_b = languages.find(x => x.code === localizationStore.selectedLocale)) === null || _b === void 0 ? void 0 : _b.translatedLabel;
|
|
1952
1952
|
// Only use gray-0 (white) when the background color is dark (apply inverted color if the element is using dark theme variable)
|
|
1953
1953
|
const mainColor = primaryColor && isDarkColor(primaryColor) ? 'white' : 'black';
|
|
1954
|
-
return (h(Host, { key: '
|
|
1954
|
+
return (h(Host, { key: '82022e82f9d984a292a1b4fedd9cb9a6853aab01', class: "zonos--elements" }, h("div", { key: 'd9d8ec1f1eeea5963e5ab9fd42cf8353b8627669', class: "zonos--hello-dialog-footer", style: {
|
|
1955
1955
|
'--zonos--primary-color': primaryColor,
|
|
1956
|
-
} }, h("a", { key: '
|
|
1956
|
+
} }, h("a", { key: '896560cd1a50d78b2f228032b79476ac08bebb4a', href: "https://zonos.com", target: "_blank", title: "Zonos website" }, h("zonos-icon", { key: '079e11ce77a1d07cde727d4895a6c8ec55fd3d83', "aria-label": "Zonos Logo", autoHeight: true, content: mainColor === 'black' ? ZonosIconLight : ZonosIconDark, iconColor: mainColor, size: 108 })), h("div", { key: '380c23a35df23ad08e87f14e9376fea1630eed59', class: "zonos--hello-locale-wrapper" }, h("zonos-button", { key: 'fa475cd2456fd3d79bc81ac5092f389c13894d99', buttonColor: mainColor, icon: h("zonos-icon", { "aria-label": "Open language select", content: Globe, iconColor: mainColor }), onClick: () => this.setShowLanguageSelect(true), variant: "subtle" }, language), h("zonos-button", { key: '5df6f50a27c04caebb1c41f735efaeab43f52699', buttonColor: mainColor, icon: h("zonos-country-flag", { "aria-label": "Open country select", class: "zonos--footer-country-flag", countryCode: localizationStore.selectedCountryCode }), onClick: () => this.setShowCountrySelect(true), variant: "subtle" }, localizationStore.selectedCountryCode)))));
|
|
1957
1957
|
}
|
|
1958
1958
|
get ele() { return getElement(this); }
|
|
1959
1959
|
};
|
|
@@ -2062,10 +2062,10 @@ const ZonosVirtualScroll = class {
|
|
|
2062
2062
|
render() {
|
|
2063
2063
|
const { width: containerWidth } = this.containerDimensions;
|
|
2064
2064
|
const visibleItems = this.getVisibleItems();
|
|
2065
|
-
return (h(Host, { key: '
|
|
2065
|
+
return (h(Host, { key: 'eca3e3e09d8f14f3c563042b07436732e7af71dc', class: classes(['zonos--virtual-scroll']) }, h("div", { key: '0f69f295a319c617c66b069eba97b18cf7ae8373', class: classes(['scroller']), style: {
|
|
2066
2066
|
height: `${this.totalHeight}px`,
|
|
2067
2067
|
width: `${containerWidth}px`,
|
|
2068
|
-
} }), h("div", { key: '
|
|
2068
|
+
} }), h("div", { key: 'ae3a128e8997ba9333a015d488358ff1211d2fea', class: classes(['item-container']), style: {
|
|
2069
2069
|
height: `${this.totalHeight}px`,
|
|
2070
2070
|
} }, visibleItems.map(({ element }) => element))));
|
|
2071
2071
|
}
|