@zonos/elements 1.3.284 → 1.3.286

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.
Files changed (146) hide show
  1. package/dist/cjs/{cart-94908542.js → cart-0cf8897b.js} +26 -3
  2. package/dist/cjs/{collect-0c05e2b4.js → collect-79131e52.js} +1 -1
  3. package/dist/cjs/{getMissingRequiredShippingFields-124b3f20.js → getMissingRequiredShippingFields-a8f04267.js} +1 -1
  4. package/dist/cjs/index.cjs.js +7 -7
  5. package/dist/cjs/{invoice-205fb5bc.js → invoice-254ae23b.js} +1 -1
  6. package/dist/cjs/{paypal-45ca5301.js → paypal-8ca67278.js} +1 -1
  7. package/dist/cjs/{placeTestOrder-302b6862.js → placeTestOrder-12b63822.js} +1 -1
  8. package/dist/cjs/{renderCheckoutCurrency-1b0cd5f2.js → renderCheckoutCurrency-a1f71587.js} +1 -1
  9. package/dist/cjs/zonos-address-completion-dialog_7.cjs.entry.js +2 -2
  10. package/dist/cjs/zonos-address_4.cjs.entry.js +1 -1
  11. package/dist/cjs/zonos-airwallex-payment.cjs.entry.js +2 -2
  12. package/dist/cjs/zonos-card_5.cjs.entry.js +2 -2
  13. package/dist/cjs/zonos-cart-items_12.cjs.entry.js +21 -9
  14. package/dist/cjs/zonos-checkout.cjs.entry.js +103 -5
  15. package/dist/cjs/zonos-collect-cart-items_3.cjs.entry.js +1 -1
  16. package/dist/cjs/zonos-collect-finish_6.cjs.entry.js +5 -5
  17. package/dist/cjs/zonos-collect.cjs.entry.js +3 -3
  18. package/dist/cjs/zonos-controller.cjs.entry.js +1 -1
  19. package/dist/cjs/zonos-invoice-cart-items_2.cjs.entry.js +3 -3
  20. package/dist/cjs/zonos-invoice-finish_5.cjs.entry.js +5 -5
  21. package/dist/cjs/zonos-invoice.cjs.entry.js +3 -3
  22. package/dist/cjs/zonos-policy-consent_2.cjs.entry.js +2 -2
  23. package/dist/collection/components/checkout/zonos-checkout/zonos-cart-subtotal/zonos-cart-subtotal.js +17 -5
  24. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout.js +104 -5
  25. package/dist/collection/components/common/zonos-stripe-phone-input/zonos-stripe-phone-input.js +1 -1
  26. package/dist/collection/components/main/zonos-controller.js +1 -1
  27. package/dist/collection/components/store/checkout/cart.js +14 -1
  28. package/dist/collection/components/utils/validateCheckoutSession.js +11 -3
  29. package/dist/collection/types/generated/graphql.frontend.types.js +2 -0
  30. package/dist/collection/types/generated/graphql.internal.types.js +128 -6
  31. package/dist/esm/{cart-2e407f7b.js → cart-d04742f5.js} +25 -4
  32. package/dist/esm/{collect-19428e18.js → collect-4c310a16.js} +1 -1
  33. package/dist/esm/{getMissingRequiredShippingFields-719b206f.js → getMissingRequiredShippingFields-f0878e32.js} +1 -1
  34. package/dist/esm/index.js +7 -7
  35. package/dist/esm/{invoice-67a47785.js → invoice-86487dac.js} +1 -1
  36. package/dist/esm/{paypal-6dca6567.js → paypal-997935ab.js} +1 -1
  37. package/dist/esm/{placeTestOrder-9563c89a.js → placeTestOrder-a53f2056.js} +1 -1
  38. package/dist/esm/{renderCheckoutCurrency-282384f0.js → renderCheckoutCurrency-e0e16eb7.js} +1 -1
  39. package/dist/esm/zonos-address-completion-dialog_7.entry.js +2 -2
  40. package/dist/esm/zonos-address_4.entry.js +1 -1
  41. package/dist/esm/zonos-airwallex-payment.entry.js +2 -2
  42. package/dist/esm/zonos-card_5.entry.js +2 -2
  43. package/dist/esm/zonos-cart-items_12.entry.js +21 -9
  44. package/dist/esm/zonos-checkout.entry.js +103 -5
  45. package/dist/esm/zonos-collect-cart-items_3.entry.js +1 -1
  46. package/dist/esm/zonos-collect-finish_6.entry.js +5 -5
  47. package/dist/esm/zonos-collect.entry.js +3 -3
  48. package/dist/esm/zonos-controller.entry.js +1 -1
  49. package/dist/esm/zonos-invoice-cart-items_2.entry.js +3 -3
  50. package/dist/esm/zonos-invoice-finish_5.entry.js +5 -5
  51. package/dist/esm/zonos-invoice.entry.js +3 -3
  52. package/dist/esm/zonos-policy-consent_2.entry.js +2 -2
  53. package/dist/esm-es5/cart-d04742f5.js +1 -0
  54. package/dist/esm-es5/{collect-19428e18.js → collect-4c310a16.js} +1 -1
  55. package/dist/esm-es5/getMissingRequiredShippingFields-f0878e32.js +1 -0
  56. package/dist/esm-es5/index.js +1 -1
  57. package/dist/esm-es5/{invoice-67a47785.js → invoice-86487dac.js} +1 -1
  58. package/dist/esm-es5/{paypal-6dca6567.js → paypal-997935ab.js} +1 -1
  59. package/dist/esm-es5/{placeTestOrder-9563c89a.js → placeTestOrder-a53f2056.js} +1 -1
  60. package/dist/esm-es5/{renderCheckoutCurrency-282384f0.js → renderCheckoutCurrency-e0e16eb7.js} +1 -1
  61. package/dist/esm-es5/zonos-address-completion-dialog_7.entry.js +1 -1
  62. package/dist/esm-es5/zonos-address_4.entry.js +1 -1
  63. package/dist/esm-es5/zonos-airwallex-payment.entry.js +1 -1
  64. package/dist/esm-es5/zonos-card_5.entry.js +1 -1
  65. package/dist/esm-es5/zonos-cart-items_12.entry.js +1 -1
  66. package/dist/esm-es5/zonos-checkout.entry.js +1 -1
  67. package/dist/esm-es5/zonos-collect-cart-items_3.entry.js +1 -1
  68. package/dist/esm-es5/zonos-collect-finish_6.entry.js +1 -1
  69. package/dist/esm-es5/zonos-collect.entry.js +1 -1
  70. package/dist/esm-es5/zonos-controller.entry.js +1 -1
  71. package/dist/esm-es5/zonos-invoice-cart-items_2.entry.js +1 -1
  72. package/dist/esm-es5/zonos-invoice-finish_5.entry.js +1 -1
  73. package/dist/esm-es5/zonos-invoice.entry.js +1 -1
  74. package/dist/esm-es5/zonos-policy-consent_2.entry.js +1 -1
  75. package/dist/scripts/index.d.ts +4 -0
  76. package/dist/scripts/index.js +1 -1
  77. package/dist/scripts/loadZonos.js +1 -1
  78. package/dist/scripts/zonos.js +1 -1
  79. package/dist/types/components/checkout/zonos-checkout/zonos-checkout.d.ts +14 -0
  80. package/dist/types/components/store/checkout/cart.d.ts +10 -1
  81. package/dist/types/types/generated/graphql.frontend.types.d.ts +2 -0
  82. package/dist/types/types/generated/graphql.frontend.types.ts +2 -0
  83. package/dist/types/types/generated/graphql.internal.types.d.ts +162 -7
  84. package/dist/types/types/generated/graphql.internal.types.ts +201 -9
  85. package/dist/zonos-elements/index.esm.js +1 -1
  86. package/dist/zonos-elements/{p-dd3c00d6.system.entry.js → p-0c327a57.system.entry.js} +1 -1
  87. package/dist/zonos-elements/{p-e32ee011.system.entry.js → p-117953db.system.entry.js} +1 -1
  88. package/dist/zonos-elements/{p-260ad739.system.entry.js → p-1cfb5c2a.system.entry.js} +1 -1
  89. package/dist/zonos-elements/{p-f4acce01.js → p-277b77e3.js} +1 -1
  90. package/dist/zonos-elements/{p-ae0de3e4.entry.js → p-278abdcf.entry.js} +1 -1
  91. package/dist/zonos-elements/p-29b60bf3.system.js +1 -1
  92. package/dist/zonos-elements/{p-e5c76a9b.js → p-344a6278.js} +2 -2
  93. package/dist/zonos-elements/{p-f59a0129.system.entry.js → p-3a26e5e7.system.entry.js} +1 -1
  94. package/dist/zonos-elements/{p-94722bf6.system.entry.js → p-40af92a1.system.entry.js} +1 -1
  95. package/dist/zonos-elements/{p-e8587f9f.system.entry.js → p-41f1697a.system.entry.js} +1 -1
  96. package/dist/zonos-elements/{p-e2b4c082.system.entry.js → p-490d7fec.system.entry.js} +1 -1
  97. package/dist/zonos-elements/{p-1277abac.system.entry.js → p-4941c096.system.entry.js} +1 -1
  98. package/dist/zonos-elements/{p-d20fe2c2.system.entry.js → p-50d088f7.system.entry.js} +1 -1
  99. package/dist/zonos-elements/{p-8311edc7.entry.js → p-5227aa69.entry.js} +1 -1
  100. package/dist/zonos-elements/{p-bced320e.entry.js → p-5d110c2b.entry.js} +1 -1
  101. package/dist/zonos-elements/{p-b1e95f95.entry.js → p-6de2f9c9.entry.js} +1 -1
  102. package/dist/zonos-elements/{p-6dde1e85.system.entry.js → p-6eaf7c9e.system.entry.js} +1 -1
  103. package/dist/zonos-elements/p-7352abe9.js +1 -0
  104. package/dist/zonos-elements/{p-fe5f05fc.system.js → p-74230da8.system.js} +1 -1
  105. package/dist/zonos-elements/{p-22e10b7d.entry.js → p-77993ba1.entry.js} +1 -1
  106. package/dist/zonos-elements/p-78f8e594.entry.js +1 -0
  107. package/dist/zonos-elements/p-7b525c75.system.js +1 -0
  108. package/dist/zonos-elements/p-7f688485.system.entry.js +1 -0
  109. package/dist/zonos-elements/p-8861d47e.js +1 -0
  110. package/dist/zonos-elements/p-8d14cb66.entry.js +1 -0
  111. package/dist/zonos-elements/{p-a07e5011.entry.js → p-944c1fb3.entry.js} +1 -1
  112. package/dist/zonos-elements/{p-cb49dcfe.entry.js → p-96ab529e.entry.js} +1 -1
  113. package/dist/zonos-elements/{p-eb5f3451.system.js → p-998975a3.system.js} +1 -1
  114. package/dist/zonos-elements/p-a4c7ee17.js +1 -0
  115. package/dist/zonos-elements/{p-3a13e58c.system.js → p-c0af11fe.system.js} +1 -1
  116. package/dist/zonos-elements/p-c112fa12.system.entry.js +1 -0
  117. package/dist/zonos-elements/{p-2b8c96e3.system.js → p-c4321a1a.system.js} +1 -1
  118. package/dist/zonos-elements/{p-aecb5d61.entry.js → p-c7329333.entry.js} +1 -1
  119. package/dist/zonos-elements/{p-2989da12.system.js → p-c756a59d.system.js} +1 -1
  120. package/dist/zonos-elements/p-d1a51fac.js +1 -0
  121. package/dist/zonos-elements/{p-d42bd250.system.entry.js → p-d75726e5.system.entry.js} +1 -1
  122. package/dist/zonos-elements/p-dd866ca3.system.entry.js +1 -0
  123. package/dist/zonos-elements/{p-8bfe5b2b.entry.js → p-dd8a7bf4.entry.js} +1 -1
  124. package/dist/zonos-elements/p-e4dc24e1.system.js +1 -0
  125. package/dist/zonos-elements/{p-60a6b71d.system.js → p-e5865ad9.system.js} +1 -1
  126. package/dist/zonos-elements/{p-65c1f51e.entry.js → p-e7d7afda.entry.js} +1 -1
  127. package/dist/zonos-elements/p-f9346f1c.entry.js +1 -0
  128. package/dist/zonos-elements/{p-0c9fec73.js → p-fc5f6113.js} +1 -1
  129. package/dist/zonos-elements/p-fe28dbe6.entry.js +1 -0
  130. package/dist/zonos-elements/zonos-elements.esm.js +1 -1
  131. package/package.json +1 -1
  132. package/dist/esm-es5/cart-2e407f7b.js +0 -1
  133. package/dist/esm-es5/getMissingRequiredShippingFields-719b206f.js +0 -1
  134. package/dist/zonos-elements/p-2c2afed4.entry.js +0 -1
  135. package/dist/zonos-elements/p-2cdd1b49.system.entry.js +0 -1
  136. package/dist/zonos-elements/p-46cd14e5.js +0 -1
  137. package/dist/zonos-elements/p-4a20893e.system.js +0 -1
  138. package/dist/zonos-elements/p-5a491f28.js +0 -1
  139. package/dist/zonos-elements/p-5ebb7ae6.entry.js +0 -1
  140. package/dist/zonos-elements/p-62f6a757.entry.js +0 -1
  141. package/dist/zonos-elements/p-8b298971.system.entry.js +0 -1
  142. package/dist/zonos-elements/p-a9ad74e5.system.entry.js +0 -1
  143. package/dist/zonos-elements/p-c1631c9c.js +0 -1
  144. package/dist/zonos-elements/p-cb4cb5a3.system.js +0 -1
  145. package/dist/zonos-elements/p-dc80cb87.js +0 -1
  146. package/dist/zonos-elements/p-ff4e6811.entry.js +0 -1
@@ -1,6 +1,6 @@
1
1
  import { r as registerInstance, h, F as Fragment, a as Host } from './index-cfd394c8.js';
2
- import { s as stripeStoreGetDomesticShippingSession, a as stripeStoreSaveDomesticShippingSession, b as stripeStore, i as initStripeElements, c as stripeStoreRetrievePayment, d as cartStore, e as cartStoreUpdateItems, f as cartStoreReset, p as policyConsentStoreReset, g as cartStoreResetTabItems, h as cartStoreClearCheckoutInterval, j as stripeStoreInitCheckoutSession, k as stripeStoreGetPaymentIntent, l as stripeStoreHandleInventoryCheck, m as cartStoreStartCheckoutInterval, t as trackConversionEvent, n as getCheckoutSessionBody, o as cartStoreUpdateToErrorState, q as stripeStoreCleanupDomesticShippingSession, r as cartStoreSetCheckoutSession, u as stripeStorePrefetchLandedCost, v as cartStoreNextStep, w as isPolicyConsentRequired, x as stripeStoreUpdateCheckoutSessionBaseCurrency, y as storeCreditStoreApplyCredit, z as storeCreditStoreCoversFullAmount, A as validateCheckoutSession, B as storeCreditStoreCreateOrder, C as stripeStoreConfirmPayment, D as stripeStoreHandleInventoryRefund, E as policyConsentStore, F as stripeStoreReset, G as cartStoreOnChange, H as stripeStoreOnChange, I as storeCreditStoreGetEffectiveAmount } from './cart-2e407f7b.js';
3
- import { p as paypalStoreHasPaypalEnabled, s as submitAnalytics, a as paypalStore, b as paypalInitScript } from './paypal-6dca6567.js';
2
+ import { s as stripeStoreGetDomesticShippingSession, a as stripeStoreSaveDomesticShippingSession, b as stripeStore, i as initStripeElements, c as stripeStoreRetrievePayment, g as getCheckoutSession, d as cartStore, e as cartStoreUpdateItems, f as cartStoreReset, p as policyConsentStoreReset, h as cartStoreResetTabItems, j as cartStoreClearCheckoutInterval, k as stripeStoreInitCheckoutSession, l as stripeStoreGetPaymentIntent, m as cartStoreIsOrderModificationPaymentOnlySession, n as stripeStoreHandleInventoryCheck, o as cartStoreStartCheckoutInterval, t as trackConversionEvent, q as getCheckoutSessionBody, r as cartStoreUpdateToErrorState, u as stripeStoreCleanupDomesticShippingSession, v as cartStoreSetCheckoutSession, w as stripeStorePrefetchLandedCost, x as cartStoreNextStep, y as isPolicyConsentRequired, z as stripeStoreUpdateCheckoutSessionBaseCurrency, A as storeCreditStoreApplyCredit, B as storeCreditStoreCoversFullAmount, C as validateCheckoutSession, D as storeCreditStoreCreateOrder, E as stripeStoreConfirmPayment, F as stripeStoreHandleInventoryRefund, G as policyConsentStore, H as stripeStoreReset, I as cartStoreOnChange, J as stripeStoreOnChange, K as storeCreditStoreGetEffectiveAmount } from './cart-d04742f5.js';
3
+ import { p as paypalStoreHasPaypalEnabled, s as submitAnalytics, a as paypalStore, b as paypalInitScript } from './paypal-997935ab.js';
4
4
  import { f as filterValidTests, a as fetchCheckoutId, b as fetchBigCommerceCheckout, i as isBigCommerceCustomerLoggedIn, l as localizationStore, c as localizationStoreUpdateSelectedCountryCode, g as getZCountryUrlParam, s as storageStore, V as VARIANT_TEST_KEY_EXPIRATION, d as storageStoreSetEnabledVariantTestKeys, t as translate, e as localizationStoreOnChange, h as currencyFormat } from './localization-36a4dc22.js';
5
5
  import { z as zonosStore, g as getZonosStoreTheme, m as mergeConfig } from './zonosStore-eca1e364.js';
6
6
  import { b as buildCartItemsByTempCart } from './buildCartItemsByTempCart-a117f75d.js';
@@ -1540,6 +1540,48 @@ const ZonosCheckout = class {
1540
1540
  log('Payment intent is not succeeded, proceed to order');
1541
1541
  return { shouldAllowOrder: true };
1542
1542
  };
1543
+ /**
1544
+ * Recover an order-modification payment-only session that was already
1545
+ * completed (or already paid but not yet completed) by the time this cart
1546
+ * link is opened/reopened — e.g. the shopper paid, closed the tab before
1547
+ * the async order-creation webhook finished, then reopened the same
1548
+ * payment link. Without this, re-rendering the payment form would let them
1549
+ * attempt to pay again against an already-resolved session. Mirrors
1550
+ * zonos-collect's recoverCompletedCollectSession for its own no-shipping
1551
+ * flow, minus the Airwallex branch (this checkout only supports Stripe).
1552
+ *
1553
+ * @returns `true` when it routed to the finish step, `false` when the
1554
+ * caller should proceed with a normal init.
1555
+ */
1556
+ this.recoverCompletedOrderModificationSession = async (checkoutSessionId) => {
1557
+ // getCheckoutSession() reads storageStore.checkoutSessionId internally.
1558
+ storageStore.checkoutSessionId = checkoutSessionId;
1559
+ const { errors, json } = await getCheckoutSession();
1560
+ if (errors.length || !json) {
1561
+ return false;
1562
+ }
1563
+ const { checkoutSession } = json;
1564
+ // Session already finalized → straight to finish. An order-mod
1565
+ // payment-only session always has `order` set *before* payment too (see
1566
+ // isOrderModificationPaymentOnlySession) - checking `order` alone would
1567
+ // treat every first-ever open as already paid, so both must be true.
1568
+ if (checkoutSession.completedAt && checkoutSession.order) {
1569
+ void this.setToFinishStep('succeeded');
1570
+ return true;
1571
+ }
1572
+ // Not completed and no order yet — verify the live payment intent status.
1573
+ if (checkoutSession.clientSecret) {
1574
+ const { status } = await stripeStoreRetrievePayment({
1575
+ clientSecret: checkoutSession.clientSecret,
1576
+ });
1577
+ if (status === 'processing' || status === 'succeeded') {
1578
+ stripeStore.clientSecret = checkoutSession.clientSecret;
1579
+ void this.setToFinishStep(status);
1580
+ return true;
1581
+ }
1582
+ }
1583
+ return false;
1584
+ };
1543
1585
  this.initializeTestKeys = () => {
1544
1586
  // cleanup expired test keys
1545
1587
  storageStore.enabledVariantTestKeys = filterExpiredTests(storageStore.enabledVariantTestKeys || []);
@@ -1887,6 +1929,7 @@ const ZonosCheckout = class {
1887
1929
  (_b = (_a = zonosStore.checkoutSettings).onClose) === null || _b === void 0 ? void 0 : _b.call(_a);
1888
1930
  }
1889
1931
  async buildCartAndInit() {
1932
+ var _a;
1890
1933
  // if createCartId is provided, use it to build cart. Merchant will provide create a cart from their server side and give the cart id to us.
1891
1934
  if (typeof zonosStore.checkoutSettings.createCartId === 'function') {
1892
1935
  log('"createCartId" is provided, start building cart');
@@ -1926,6 +1969,37 @@ const ZonosCheckout = class {
1926
1969
  // if tempCartUUID is provided, use it instead of buildCartDetail
1927
1970
  else if (window.Zonos.cartData) {
1928
1971
  log('tempCartUUID is provided, start building cart');
1972
+ // A cart created against an already-existing checkout session (e.g. an
1973
+ // order-modification payment request) must reuse that session instead
1974
+ // of creating a fresh one — otherwise the reused cart's order/landedCost
1975
+ // context (and, downstream, the payment-only step skip below) is lost.
1976
+ // Mirrors the same reference lookup zonos-collect/zonos-invoice already
1977
+ // do for their own cart types.
1978
+ const cartCheckoutSessionId = (_a = window.Zonos.cartData.references) === null || _a === void 0 ? void 0 : _a.checkoutSessionId;
1979
+ if (cartCheckoutSessionId) {
1980
+ log('Setting checkout session id from cart reference', 'info', cartCheckoutSessionId);
1981
+ // The shopper may be reopening this same payment link after already
1982
+ // paying — e.g. they closed the tab before the async order-creation
1983
+ // webhook finished. Check the session/payment-intent status before
1984
+ // rendering the payment form again.
1985
+ const recovered = await this.recoverCompletedOrderModificationSession(cartCheckoutSessionId);
1986
+ if (recovered) {
1987
+ // Recovery routes straight to the finish step, bypassing the
1988
+ // cartStoreUpdateItems call below that would normally clear this -
1989
+ // without it, the finish screen would spin forever (dialogLoading
1990
+ // stays true while isFetchingSession is true).
1991
+ stripeStore.isFetchingSession = false;
1992
+ return true;
1993
+ }
1994
+ storageStore.checkoutSessionId = cartCheckoutSessionId;
1995
+ }
1996
+ else {
1997
+ // Same as zonos-collect/zonos-invoice: without this, a checkout
1998
+ // session id left over from a previous cart in this tab would leak
1999
+ // into this unrelated one.
2000
+ log('Clear checkout session id from storage so we start from a fresh session for this cart');
2001
+ storageStore.checkoutSessionId = null;
2002
+ }
1929
2003
  const { adjustments, cartItems } = buildCartItemsByTempCart(window.Zonos.cartData);
1930
2004
  await cartStoreUpdateItems({ adjustments, cartItems });
1931
2005
  }
@@ -1969,6 +2043,17 @@ const ZonosCheckout = class {
1969
2043
  successBehavior === 'REDIRECT_TO_SUCCESS_PAGE' ||
1970
2044
  (successBehavior === 'CLOSE_MODAL' && !!successRedirectUrl) ||
1971
2045
  !!cartStore.externalConfirmationPageURL;
2046
+ // A session tied to an order that hasn't completed yet is an
2047
+ // order-modification/adjustment collection: the shopper is only paying a
2048
+ // delta against an already-approved landed cost, so the address/shipping
2049
+ // steps (which would re-quote against the synthetic delta line item
2050
+ // instead of the real shipment) are skipped in favor of jumping straight
2051
+ // to payment, same as the Collect flow does for its own cart type. Lives
2052
+ // here (rather than at each buildCartAndInit call site) so every caller
2053
+ // gets it, including the forceDialogOpen/preview init path.
2054
+ if (cartStoreIsOrderModificationPaymentOnlySession()) {
2055
+ cartStore.step = 'payment';
2056
+ }
1972
2057
  return true;
1973
2058
  }
1974
2059
  reloadCheckoutSession() {
@@ -2832,7 +2917,13 @@ const ZonosCheckout = class {
2832
2917
  return;
2833
2918
  }
2834
2919
  try {
2835
- await stripeStoreConfirmPayment();
2920
+ // Order-modification payment-only sessions skip the shipping step,
2921
+ // so cartStore.selectedLandedCost is never populated — bypass the
2922
+ // landed-cost guard the same way zonos-collect does for its own
2923
+ // no-shipping-step flow.
2924
+ await stripeStoreConfirmPayment({
2925
+ noLandedCostCheck: cartStoreIsOrderModificationPaymentOnlySession(),
2926
+ });
2836
2927
  cartStoreNextStep();
2837
2928
  // clear the checkout session timeout timer when purchase is complete
2838
2929
  cartStoreClearCheckoutInterval();
@@ -3099,6 +3190,13 @@ const ZonosCheckout = class {
3099
3190
  cartStore.step !== 'error' &&
3100
3191
  !stripeStore.stripeElements) ||
3101
3192
  stripeStore.isFetchingSession;
3193
+ // An order-modification/adjustment session (order attached, not yet
3194
+ // completed) skips straight to payment — see buildCartAndInit. The
3195
+ // customer-info/shipping steps never ran, so the progress tabs (which
3196
+ // track completion via cartStore.tabItems, only ever flipped by those
3197
+ // steps' own continue handlers) would otherwise show a stale, frozen
3198
+ // bar instead of reflecting that this is a single-step flow.
3199
+ const isPaymentOnlySession = cartStoreIsOrderModificationPaymentOnlySession();
3102
3200
  const { colorPrimary, colorSecondary, logoUrl, style } = mergeConfig(zonosStore.appearance, this.appearanceSettingsOverride || null);
3103
3201
  const hasFooter = zonosStore.appearance.zonosAttribution === 'ENABLED';
3104
3202
  const rightSideTheme = zonosStore.appearance.theme;
@@ -3129,9 +3227,9 @@ const ZonosCheckout = class {
3129
3227
  const zonosDebug = urlParams.get('zonosDebug');
3130
3228
  const zonosE2ETest = urlParams.get('zonosE2ETest');
3131
3229
  const zonosStagingMode = this.overrideStagingMode || getIsStagingMode();
3132
- return (h("zonos-v-stack", null, h("div", { class: "zonos--logo-wrapper" }, renderLogo(), isTestMode && (h("zonos-badge", { badgeColor: "orange", size: "small" }, translate('Test mode'))), zonosStagingMode && (h("zonos-badge", { badgeColor: "red", size: "small" }, translate('Staging mode'))), zonosDebug === '1' && (h("zonos-badge", { badgeColor: "cyan", size: "small" }, "debug")), zonosQaUrl && (h("zonos-badge", { badgeColor: "purple", size: "small" }, zonosQaUrl)), zonosE2ETest && (h("zonos-badge", { badgeColor: "gray", size: "small" }, "E2E Test"))), h("zonos-checkout-progress-tabs", { backgroundColor:
3230
+ return (h("zonos-v-stack", null, h("div", { class: "zonos--logo-wrapper" }, renderLogo(), isTestMode && (h("zonos-badge", { badgeColor: "orange", size: "small" }, translate('Test mode'))), zonosStagingMode && (h("zonos-badge", { badgeColor: "red", size: "small" }, translate('Staging mode'))), zonosDebug === '1' && (h("zonos-badge", { badgeColor: "cyan", size: "small" }, "debug")), zonosQaUrl && (h("zonos-badge", { badgeColor: "purple", size: "small" }, zonosQaUrl)), zonosE2ETest && (h("zonos-badge", { badgeColor: "gray", size: "small" }, "E2E Test"))), !isPaymentOnlySession && (h("zonos-checkout-progress-tabs", { backgroundColor:
3133
3231
  // only use different contrast color when the secondary color is too off with the background in mobile
3134
- this.isMobile ? '--zonos-elements-gray-0' : null }), filteredMessages.map(x => (h("zonos-custom-message", { icon: MessageIcon, message: x.message })))));
3232
+ this.isMobile ? '--zonos-elements-gray-0' : null })), filteredMessages.map(x => (h("zonos-custom-message", { icon: MessageIcon, message: x.message })))));
3135
3233
  };
3136
3234
  const renderContent = () => {
3137
3235
  if (cartStore.checkoutSessionTimeoutShow) {
@@ -1,5 +1,5 @@
1
1
  import { r as registerInstance, e as getAssetPath, h, a as Host } from './index-cfd394c8.js';
2
- import { d as cartStore } from './cart-2e407f7b.js';
2
+ import { d as cartStore } from './cart-d04742f5.js';
3
3
  import { c as cleanHtmlMarkdown } from './cleanHtmlMarkdown-87d195f6.js';
4
4
  import { f as zonosStoreFontFamily } from './zonosStore-eca1e364.js';
5
5
  import { c as classes } from './classes-0d95c529.js';
@@ -1,7 +1,7 @@
1
1
  import { r as registerInstance, d as createEvent, h, F as Fragment, a as Host, g as getElement } from './index-cfd394c8.js';
2
- import { b as airwallexStore, d as airwallexStoreRetrievePaymentIntent, j as airwallexStoreMessageBasedOnStatus, k as airwallexStoreReset, c as collectStore, e as airwallexStoreIsPaidStatus } from './collect-19428e18.js';
3
- import { b as stripeStore, c as stripeStoreRetrievePayment, t as trackConversionEvent, Q as stripeStoreResetPromoCode, F as stripeStoreReset, R as stripeStoreMessageBasedOnStatus, d as cartStore, v as cartStoreNextStep, G as cartStoreOnChange } from './cart-2e407f7b.js';
4
- import { s as submitAnalytics, c as paypalStoreReset, a as paypalStore, b as paypalInitScript } from './paypal-6dca6567.js';
2
+ import { b as airwallexStore, d as airwallexStoreRetrievePaymentIntent, j as airwallexStoreMessageBasedOnStatus, k as airwallexStoreReset, c as collectStore, e as airwallexStoreIsPaidStatus } from './collect-4c310a16.js';
3
+ import { b as stripeStore, c as stripeStoreRetrievePayment, t as trackConversionEvent, S as stripeStoreResetPromoCode, H as stripeStoreReset, T as stripeStoreMessageBasedOnStatus, d as cartStore, x as cartStoreNextStep, I as cartStoreOnChange } from './cart-d04742f5.js';
4
+ import { s as submitAnalytics, c as paypalStoreReset, a as paypalStore, b as paypalInitScript } from './paypal-997935ab.js';
5
5
  import { t as translate, s as storageStore, k as languages, l as localizationStore, z as translationStoreOnChange } from './localization-36a4dc22.js';
6
6
  import { z as zonosStore } from './zonosStore-eca1e364.js';
7
7
  import { h as handleFetch, s as sendErrorLog, g as getIsTestMode, i as isCheckoutMobile, a as getIsStagingMode } from './handleFetch-a844cac1.js';
@@ -11,8 +11,8 @@ import { l as log, b as allLogs } from './VarianceTest-572cecf5.js';
11
11
  import { i as isCollectMobile, a as isCollectTablet } from './isCollectMobileTablet-111b0dd7.js';
12
12
  import { c as classes } from './classes-0d95c529.js';
13
13
  import { s as shouldShowLanguageSelect } from './shouldShowLanguageSelect-328f50e2.js';
14
- import { r as renderCheckoutCurrency } from './renderCheckoutCurrency-282384f0.js';
15
- import { p as placeTestOrder } from './placeTestOrder-9563c89a.js';
14
+ import { r as renderCheckoutCurrency } from './renderCheckoutCurrency-e0e16eb7.js';
15
+ import { p as placeTestOrder } from './placeTestOrder-a53f2056.js';
16
16
  import { r as renderFallback } from './renderFallback-b250f4e9.js';
17
17
  import './isDarkColor-939d8e9c.js';
18
18
  import './TaxId-63a14057.js';
@@ -1,7 +1,7 @@
1
1
  import { r as registerInstance, h, a as Host, F as Fragment } from './index-cfd394c8.js';
2
- import { c as collectStore, a as airwallexStoreSetFromSession, b as airwallexStore, d as airwallexStoreRetrievePaymentIntent, e as airwallexStoreIsPaidStatus, f as airwallexStoreInitSdk, g as collectStoreUpdateSelectedShippingOption, h as collectStoreInitShippingInfo, i as collectStoreAsyncAddressUpdate } from './collect-19428e18.js';
3
- import { b as stripeStore, i as initStripeElements, d as cartStore, c as stripeStoreRetrievePayment, o as cartStoreUpdateToErrorState, e as cartStoreUpdateItems, j as stripeStoreInitCheckoutSession, k as stripeStoreGetPaymentIntent, x as stripeStoreUpdateCheckoutSessionBaseCurrency, C as stripeStoreConfirmPayment, H as stripeStoreOnChange, F as stripeStoreReset, f as cartStoreReset } from './cart-2e407f7b.js';
4
- import { p as paypalStoreHasPaypalEnabled, a as paypalStore } from './paypal-6dca6567.js';
2
+ import { c as collectStore, a as airwallexStoreSetFromSession, b as airwallexStore, d as airwallexStoreRetrievePaymentIntent, e as airwallexStoreIsPaidStatus, f as airwallexStoreInitSdk, g as collectStoreUpdateSelectedShippingOption, h as collectStoreInitShippingInfo, i as collectStoreAsyncAddressUpdate } from './collect-4c310a16.js';
3
+ import { b as stripeStore, i as initStripeElements, d as cartStore, c as stripeStoreRetrievePayment, r as cartStoreUpdateToErrorState, e as cartStoreUpdateItems, k as stripeStoreInitCheckoutSession, l as stripeStoreGetPaymentIntent, z as stripeStoreUpdateCheckoutSessionBaseCurrency, E as stripeStoreConfirmPayment, J as stripeStoreOnChange, H as stripeStoreReset, f as cartStoreReset } from './cart-d04742f5.js';
4
+ import { p as paypalStoreHasPaypalEnabled, a as paypalStore } from './paypal-997935ab.js';
5
5
  import { s as storageStore, t as translate, e as localizationStoreOnChange, h as currencyFormat, k as languages, l as localizationStore } from './localization-36a4dc22.js';
6
6
  import { z as zonosStore } from './zonosStore-eca1e364.js';
7
7
  import { b as buildCartItemsByTempCart } from './buildCartItemsByTempCart-a117f75d.js';
@@ -1,5 +1,5 @@
1
1
  import { r as registerInstance, d as createEvent, h, a as Host } from './index-cfd394c8.js';
2
- import { b as stripeStore } from './cart-2e407f7b.js';
2
+ import { b as stripeStore } from './cart-d04742f5.js';
3
3
  import { j as getOverridenZCountry, m as isValidSelector, n as initLocalizationStore, s as storageStore, c as localizationStoreUpdateSelectedCountryCode } from './localization-36a4dc22.js';
4
4
  import { z as zonosStore, e as zonosStoreInitSetting, f as zonosStoreFontFamily } from './zonosStore-eca1e364.js';
5
5
  import { g as getGenericSettingsOverride, i as iframeServices, a as injectPrivateIframe } from './getGenericSettingsOverride-0bc3e118.js';
@@ -1,9 +1,9 @@
1
1
  import { r as registerInstance, h, a as Host } from './index-cfd394c8.js';
2
- import { d as cartStore } from './cart-2e407f7b.js';
2
+ import { d as cartStore } from './cart-d04742f5.js';
3
3
  import { t as translate } from './localization-36a4dc22.js';
4
- import { r as renderCheckoutCurrency } from './renderCheckoutCurrency-282384f0.js';
4
+ import { r as renderCheckoutCurrency } from './renderCheckoutCurrency-e0e16eb7.js';
5
5
  import { c as classes } from './classes-0d95c529.js';
6
- import { c as invoiceStore } from './invoice-67a47785.js';
6
+ import { c as invoiceStore } from './invoice-86487dac.js';
7
7
  import { r as renderFallback } from './renderFallback-b250f4e9.js';
8
8
  import './zonosStore-eca1e364.js';
9
9
  import './VarianceTest-572cecf5.js';
@@ -1,6 +1,6 @@
1
1
  import { r as registerInstance, d as createEvent, h, F as Fragment, a as Host, g as getElement } from './index-cfd394c8.js';
2
- import { b as stripeStore, c as stripeStoreRetrievePayment, t as trackConversionEvent, Q as stripeStoreResetPromoCode, F as stripeStoreReset, R as stripeStoreMessageBasedOnStatus, d as cartStore, v as cartStoreNextStep, G as cartStoreOnChange } from './cart-2e407f7b.js';
3
- import { s as submitAnalytics, c as paypalStoreReset, a as paypalStore, b as paypalInitScript } from './paypal-6dca6567.js';
2
+ import { b as stripeStore, c as stripeStoreRetrievePayment, t as trackConversionEvent, S as stripeStoreResetPromoCode, H as stripeStoreReset, T as stripeStoreMessageBasedOnStatus, d as cartStore, x as cartStoreNextStep, I as cartStoreOnChange } from './cart-d04742f5.js';
3
+ import { s as submitAnalytics, c as paypalStoreReset, a as paypalStore, b as paypalInitScript } from './paypal-997935ab.js';
4
4
  import { t as translate, s as storageStore, k as languages, l as localizationStore } from './localization-36a4dc22.js';
5
5
  import { z as zonosStore } from './zonosStore-eca1e364.js';
6
6
  import { h as handleFetch, s as sendErrorLog, g as getIsTestMode, i as isCheckoutMobile, a as getIsStagingMode } from './handleFetch-a844cac1.js';
@@ -10,9 +10,9 @@ import { l as log, b as allLogs } from './VarianceTest-572cecf5.js';
10
10
  import { i as isInvoiceMobile, a as isInvoiceTablet } from './isInvoiceMobileTablet-1f7b614e.js';
11
11
  import { c as classes } from './classes-0d95c529.js';
12
12
  import { s as shouldShowLanguageSelect } from './shouldShowLanguageSelect-328f50e2.js';
13
- import { c as invoiceStore } from './invoice-67a47785.js';
14
- import { r as renderCheckoutCurrency } from './renderCheckoutCurrency-282384f0.js';
15
- import { p as placeTestOrder } from './placeTestOrder-9563c89a.js';
13
+ import { c as invoiceStore } from './invoice-86487dac.js';
14
+ import { r as renderCheckoutCurrency } from './renderCheckoutCurrency-e0e16eb7.js';
15
+ import { p as placeTestOrder } from './placeTestOrder-a53f2056.js';
16
16
  import { r as renderFallback } from './renderFallback-b250f4e9.js';
17
17
  import './isDarkColor-939d8e9c.js';
18
18
  import './TaxId-63a14057.js';
@@ -1,7 +1,7 @@
1
1
  import { r as registerInstance, h, a as Host, F as Fragment } from './index-cfd394c8.js';
2
- import { b as stripeStore, i as initStripeElements, c as stripeStoreRetrievePayment, d as cartStore, o as cartStoreUpdateToErrorState, e as cartStoreUpdateItems, j as stripeStoreInitCheckoutSession, k as stripeStoreGetPaymentIntent, x as stripeStoreUpdateCheckoutSessionBaseCurrency, C as stripeStoreConfirmPayment, H as stripeStoreOnChange, F as stripeStoreReset, f as cartStoreReset } from './cart-2e407f7b.js';
3
- import { i as invoiceStoreUpdateSelectedShippingOption, a as invoiceStoreInitShippingInfo, b as invoiceStoreAsyncAddressUpdate, c as invoiceStore } from './invoice-67a47785.js';
4
- import { p as paypalStoreHasPaypalEnabled, a as paypalStore } from './paypal-6dca6567.js';
2
+ import { b as stripeStore, i as initStripeElements, c as stripeStoreRetrievePayment, d as cartStore, r as cartStoreUpdateToErrorState, e as cartStoreUpdateItems, k as stripeStoreInitCheckoutSession, l as stripeStoreGetPaymentIntent, z as stripeStoreUpdateCheckoutSessionBaseCurrency, E as stripeStoreConfirmPayment, J as stripeStoreOnChange, H as stripeStoreReset, f as cartStoreReset } from './cart-d04742f5.js';
3
+ import { i as invoiceStoreUpdateSelectedShippingOption, a as invoiceStoreInitShippingInfo, b as invoiceStoreAsyncAddressUpdate, c as invoiceStore } from './invoice-86487dac.js';
4
+ import { p as paypalStoreHasPaypalEnabled, a as paypalStore } from './paypal-997935ab.js';
5
5
  import { s as storageStore, t as translate, e as localizationStoreOnChange, h as currencyFormat, k as languages, l as localizationStore } from './localization-36a4dc22.js';
6
6
  import { z as zonosStore } from './zonosStore-eca1e364.js';
7
7
  import { b as buildCartItemsByTempCart } from './buildCartItemsByTempCart-a117f75d.js';
@@ -1,8 +1,8 @@
1
1
  import { r as registerInstance, h, F as Fragment, a as Host, g as getElement } from './index-cfd394c8.js';
2
- import { $ as getEnabledPolicies, E as policyConsentStore, a0 as storeCreditStoreSetEnabled, a1 as storeCreditStoreSetUseFullBalance, a2 as cartStoreUpdateStoreCredit, S as storeCreditStore, a3 as storeCreditStoreSetAmount, a4 as storeCreditStoreRefreshBalance, I as storeCreditStoreGetEffectiveAmount } from './cart-2e407f7b.js';
2
+ import { a1 as getEnabledPolicies, G as policyConsentStore, a2 as storeCreditStoreSetEnabled, a3 as storeCreditStoreSetUseFullBalance, a4 as cartStoreUpdateStoreCredit, U as storeCreditStore, a5 as storeCreditStoreSetAmount, a6 as storeCreditStoreRefreshBalance, K as storeCreditStoreGetEffectiveAmount } from './cart-d04742f5.js';
3
3
  import { l as localizationStore, t as translate } from './localization-36a4dc22.js';
4
4
  import { z as zonosStore, f as zonosStoreFontFamily } from './zonosStore-eca1e364.js';
5
- import { r as renderCheckoutCurrency } from './renderCheckoutCurrency-282384f0.js';
5
+ import { r as renderCheckoutCurrency } from './renderCheckoutCurrency-e0e16eb7.js';
6
6
  import { g as getBorderRadius } from './getBorderRadius-1f7be586.js';
7
7
  import './VarianceTest-572cecf5.js';
8
8
  import './handleFetch-a844cac1.js';
@@ -0,0 +1 @@
1
+ var __awaiter=this&&this.__awaiter||function(e,t,r,o){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,i){function a(e){try{d(o.next(e))}catch(e){i(e)}}function s(e){try{d(o["throw"](e))}catch(e){i(e)}}function d(e){e.done?r(e.value):n(e.value).then(a,s)}d((o=o.apply(e,t||[])).next())}))};var __generator=this&&this.__generator||function(e,t){var r={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},o,n,i,a;return a={next:s(0),throw:s(1),return:s(2)},typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function s(e){return function(t){return d([e,t])}}function d(s){if(o)throw new TypeError("Generator is already executing.");while(a&&(a=0,s[0]&&(r=0)),r)try{if(o=1,n&&(i=s[0]&2?n["return"]:s[0]?n["throw"]||((i=n["return"])&&i.call(n),0):n.next)&&!(i=i.call(n,s[1])).done)return i;if(n=0,i)s=[s[0]&2,i.value];switch(s[0]){case 0:case 1:i=s;break;case 4:r.label++;return{value:s[1],done:false};case 5:r.label++;n=s[1];s=[0];continue;case 7:s=r.ops.pop();r.trys.pop();continue;default:if(!(i=r.trys,i=i.length>0&&i[i.length-1])&&(s[0]===6||s[0]===2)){r=0;continue}if(s[0]===3&&(!i||s[1]>i[0]&&s[1]<i[3])){r.label=s[1];break}if(s[0]===6&&r.label<i[1]){r.label=i[1];i=s;break}if(i&&r.label<i[2]){r.label=i[2];r.ops.push(s);break}if(i[2])r.ops.pop();r.trys.pop();continue}s=t.call(e,r)}catch(e){s=[6,e];n=0}finally{o=i=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:true}}};var __spreadArray=this&&this.__spreadArray||function(e,t,r){if(r||arguments.length===2)for(var o=0,n=t.length,i;o<n;o++){if(i||!(o in t)){if(!i)i=Array.prototype.slice.call(t,0,o);i[o]=t[o]}}return e.concat(i||Array.prototype.slice.call(t))};import{c as createStore,z as zonosStore}from"./zonosStore-eca1e364.js";import{s as storageStore,t as translate,l as localizationStore,j as getOverridenZCountry,f as filterValidTests,d as storageStoreSetEnabledVariantTestKeys}from"./localization-36a4dc22.js";import{l as log,b as allLogs}from"./VarianceTest-572cecf5.js";import{h as handleFetch,l as logError,f as fallbackApiList,g as getIsTestMode,a as getIsStagingMode,s as sendErrorLog,j as jsonParse}from"./handleFetch-a844cac1.js";import{i as isDarkColor}from"./isDarkColor-939d8e9c.js";import{g as getBorderRadius}from"./getBorderRadius-1f7be586.js";import{e as euCountryCodes}from"./TaxId-63a14057.js";var getCheckoutSession=function(){return __awaiter(void 0,void 0,void 0,(function(){var e,t,r,o;return __generator(this,(function(n){switch(n.label){case 0:if(!storageStore.checkoutSessionId){return[2,{errors:[{message:"No checkout session id found"}],json:null}]}e=new URLSearchParams;e.set("checkoutSessionId",storageStore.checkoutSessionId);return[4,handleFetch("/api/zonos-elements/get-checkout-session?".concat(e.toString()))];case 1:t=n.sent(),r=t.errors,o=t.json;return[2,{errors:r,json:o}]}}))}))};var _o=createStore((function(){return{amountToApply:null,appliedAmount:null,availableBalance:null,error:null,isApplying:false,isEnabled:false,orderIdCreated:null,remainingBalance:null,useFullBalance:true}})),storeCreditStoreOnChange=_o.onChange,reset$2=_o.reset,storeCreditStore=_o.state;var storeCreditStoreReset=function(){reset$2()};var storeCreditStoreSetBalanceFromSession=function(e){log("Store credit balance from session","info",e);storeCreditStore.availableBalance=e};var storeCreditStoreRefreshBalance=function(){return __awaiter(void 0,void 0,void 0,(function(){var e,t,r,o,n,i;return __generator(this,(function(a){switch(a.label){case 0:return[4,getCheckoutSession()];case 1:r=a.sent(),o=r.errors,n=r.json;if(o.length||!n){logError("Failed to refresh store credit balance");return[2]}i=(t=(e=n.checkoutSession.customerProfile)===null||e===void 0?void 0:e.storeCreditBalance)!==null&&t!==void 0?t:null;storeCreditStoreSetBalanceFromSession(i);return[2]}}))}))};var storeCreditStoreApplyCredit=function(){return __awaiter(void 0,void 0,void 0,(function(){var e,t,r,o,n,i,a,s,a;return __generator(this,(function(d){switch(d.label){case 0:t=storageStore.checkoutSessionId;if(!t){r="No checkout session found";logError(r);storeCreditStore.error=r;return[2,{error:r,success:false}]}log("Applying store credit","info",{checkoutSessionId:t});storeCreditStore.isApplying=true;storeCreditStore.error=null;d.label=1;case 1:d.trys.push([1,3,,4]);return[4,handleFetch("/api/zonos-elements/store-credit/apply",{body:{checkoutSessionId:t},method:"POST"})];case 2:o=d.sent(),n=o.errors,i=o.json;if(n.length>0||!i){a=((e=n[0])===null||e===void 0?void 0:e.message)||"Failed to apply store credit";logError(a);storeCreditStore.error=a;storeCreditStore.isApplying=false;return[2,{error:a,success:false}]}storeCreditStore.appliedAmount=i.amountApplied;storeCreditStore.remainingBalance=i.remainingBalance;storeCreditStore.isApplying=false;log("Store credit applied","info",{amountApplied:i.amountApplied,remainingBalance:i.remainingBalance});return[2,{error:null,success:true}];case 3:s=d.sent();a=s instanceof Error?s.message:"Failed to apply store credit";logError(a);storeCreditStore.error=a;storeCreditStore.isApplying=false;return[2,{error:a,success:false}];case 4:return[2]}}))}))};var storeCreditStoreSetEnabled=function(e){storeCreditStore.isEnabled=e;storeCreditStore.error=null;if(!e){storeCreditStore.amountToApply=null}};var storeCreditStoreSetAmount=function(e){if(e===null){storeCreditStore.amountToApply=null;storeCreditStore.error=null;return}if(e<=0){storeCreditStore.error="Amount must be greater than zero";return}if(storeCreditStore.availableBalance!==null&&e>storeCreditStore.availableBalance){storeCreditStore.error="Amount exceeds available balance";return}var t=cartStore.total+(cartStore.storeCredit||0);if(e>t){storeCreditStore.error="Amount exceeds order total";return}storeCreditStore.error=null;storeCreditStore.amountToApply=e};var storeCreditStoreSetUseFullBalance=function(e){storeCreditStore.useFullBalance=e;storeCreditStore.error=null;if(e&&storeCreditStore.availableBalance!==null){var t=cartStore.total+(cartStore.storeCredit||0);var r=Math.min(storeCreditStore.availableBalance,t);storeCreditStore.amountToApply=r}else if(!e){storeCreditStore.amountToApply=null}};var storeCreditStoreGetInput=function(){if(!storeCreditStore.isEnabled||storeCreditStore.amountToApply===null){return{mode:"NONE"}}if(storeCreditStore.useFullBalance){return{mode:"FULL"}}return{amount:storeCreditStore.amountToApply,mode:"PARTIAL"}};var storeCreditStoreGetEffectiveAmount=function(){if(!storeCreditStore.isEnabled||storeCreditStore.availableBalance===null){return 0}if(storeCreditStore.useFullBalance){return Math.min(storeCreditStore.availableBalance,cartStore.total+(cartStore.storeCredit||0))}return storeCreditStore.amountToApply||0};var storeCreditStoreCoversFullAmount=function(){return storeCreditStore.amountToApply!==null&&storeCreditStore.amountToApply>0&&cartStore.storeCredit>0&&cartStore.total<=0};var storeCreditStoreCreateOrder=function(){return __awaiter(void 0,void 0,void 0,(function(){var e,t,r,o,n,i,a,s,d,c,l,d;return __generator(this,(function(u){switch(u.label){case 0:o=storageStore.checkoutSessionId;if(!o){n="No checkout session found";logError(n);storeCreditStore.error=n;return[2,{error:n,orderId:null,success:false}]}log("Creating store credit order","info",{checkoutSessionId:o});u.label=1;case 1:u.trys.push([1,3,,4]);return[4,handleFetch("/api/zonos-elements/store-credit/order-create",{body:{checkoutSessionId:o},method:"POST"})];case 2:i=u.sent(),a=i.errors,s=i.json;if(a.length>0||!s){d=((e=a[0])===null||e===void 0?void 0:e.message)||"Failed to create store credit order";logError(d);storeCreditStore.error=d;return[2,{error:d,orderId:null,success:false}]}c=((r=(t=s.checkoutSessionStoreCreditOrderCreate)===null||t===void 0?void 0:t.order)===null||r===void 0?void 0:r.id)||null;storeCreditStore.orderIdCreated=c;log("Store credit order created","info",{orderId:c});return[2,{error:null,orderId:c,success:true}];case 3:l=u.sent();d=l instanceof Error?l.message:"Failed to create store credit order";logError(d);storeCreditStore.error=d;return[2,{error:d,orderId:null,success:false}];case 4:return[2]}}))}))};var POLICY_ORDER=["termsAndConditions","privacyPolicy","refundPolicy","shippingPolicy","warrantyPolicy"];var POLICY_NAME_KEY={privacyPolicy:"Privacy policy",refundPolicy:"Refund policy",shippingPolicy:"Shipping policy",termsAndConditions:"Terms and conditions",warrantyPolicy:"Warranty policy"};var _p=createStore({accepted:false,acceptedAt:null,locked:false,showError:false}),policyConsentStoreReset=_p.reset,policyConsentStore=_p.state;var getEnabledPolicies=function(){var e=zonosStore.checkoutSettings.merchantPolicyLinks;if(!e){return[]}return POLICY_ORDER.reduce((function(t,r){var o,n;var i=(n=(o=e[r])===null||o===void 0?void 0:o.link)===null||n===void 0?void 0:n.trim();if(!i||!/^https?:\/\//i.test(i)){return t}t.push({key:r,name:translate(POLICY_NAME_KEY[r]),url:i});return t}),[])};var isPolicyConsentRequired=function(){return getEnabledPolicies().length>0};var extractName=function(e){var t=e.firstName,r=e.lastName,o=e.name;var n;if(!o&&!t&&!r){return{firstName:"",lastName:""}}var i=(o===null||o===void 0?void 0:o.split(/\s+/))||[];var a=(t===null||t===void 0?void 0:t.trim())||((n=i[0])===null||n===void 0?void 0:n.trim())||"";var s=(r===null||r===void 0?void 0:r.trim())||i.slice(1).join(" ").trim()||"";return{firstName:a,lastName:s}};var getTranslatedAddress=function(e){var t=e.currentAddress,r=e.translatedAddress;var o,n,i,a,s,d;var c=t.value.address,l=c.city,u=c.country,S=c.line1,v=c.line2,p=c.postal_code,f=c.state;var h=t.value.name||[t.value.firstName,t.value.lastName].join(" ");return{city:((o=r.city)===null||o===void 0?void 0:o[l])||l,country:u,line1:((n=r.line1)===null||n===void 0?void 0:n[S])||S,line2:((i=r.line2)===null||i===void 0?void 0:i[v||""])||v||"",name:((a=r.name)===null||a===void 0?void 0:a[h])||h,phone:t.value.phone||"",postal_code:((s=r.postal_code)===null||s===void 0?void 0:s[p])||p,state:((d=r.state)===null||d===void 0?void 0:d[f])||f}};var prepCartCalculateLandedCost=function(e){var t;var r=new URLSearchParams(window.location.search).get("zonosE2ETest")==="1";var o=stripeStore.stripeLinkEventData;var n=stripeStore.stripeAddressEventData;var i=stripeStore.stripeShippingSameAsBilling?stripeStore.stripeAddressEventData:stripeStore.stripeBillingAddressEventData;if(!n||!i){throw new Error("Missing stripe address data")}var a=getTranslatedAddress({currentAddress:n,translatedAddress:stripeStore.translatedAddress.address});var s=extractName({name:a.name}),d=s.firstName,c=s.lastName;var l=getTranslatedAddress({currentAddress:i,translatedAddress:stripeStore.translatedAddress.address});var u=extractName({name:l.name}),S=u.firstName,v=u.lastName;var p=getOverridenZCountry()||"US";return{billingAddress:{addressLine1:l.line1,addressLine2:l.line2||"",city:l.city,country:l.country,postalCode:l.postal_code,state:l.state},billingContact:{firstName:S,lastName:v,phone:l.phone},cartCurrencyCode:(t=cartStore.items[0])===null||t===void 0?void 0:t.currencyCode,cartId:e,checkoutSessionCountry:p||localizationStore.selectedCountryCode||undefined,checkoutSessionId:storageStore.checkoutSessionId||"",contact:{companyName:stripeStore.companyName,email:o===null||o===void 0?void 0:o.value.email,firstName:d,lastName:c,phone:a.phone},isTest:!!r,landedCostAdjustments:cartStore.promoCode?[{amount:0,productId:null,promoCode:cartStore.promoCode,sku:null,type:"PROMO_CODE"}]:[],shipToShortAddressCode:stripeStore.shortAddressCode,shipToTaxId:stripeStore.taxId,shippingAddress:{addressLine1:a.line1,addressLine2:a.line2,city:a.city,country:a.country,postalCode:a.postal_code,state:a.state}}};var prepCalculateLandedCost=function(){var e=new URLSearchParams(window.location.search).get("zonosE2ETest")==="1";var t=stripeStore.stripeLinkEventData;var r=stripeStore.stripeAddressEventData;var o=stripeStore.stripeShippingSameAsBilling?stripeStore.stripeAddressEventData:stripeStore.stripeBillingAddressEventData;log({stripeAddressData:r,stripeBillingAddressData:o},"info");if(!r||!o){throw new Error("Missing stripe address data")}var n=getTranslatedAddress({currentAddress:r,translatedAddress:stripeStore.translatedAddress.address});var i=extractName({name:n.name}),a=i.firstName,s=i.lastName;var d=getTranslatedAddress({currentAddress:o,translatedAddress:stripeStore.translatedAddress.address});var c=extractName({name:d.name}),l=c.firstName,u=c.lastName;var S=cartStore.adjustments.map((function(e){return{amount:e.amount,name:e.description||null,productId:e.productId,sku:e.sku,type:e.type}}));var v=cartStore.promoCode?__spreadArray([{amount:0,productId:null,promoCode:cartStore.promoCode,sku:null,type:"PROMO_CODE"}],S,true):S;return{billingAddress:{addressLine1:d.line1,addressLine2:d.line2||"",city:d.city,country:d.country,postalCode:d.postal_code,state:d.state},billingContact:{firstName:l,lastName:u,phone:d.phone},checkoutSessionId:storageStore.checkoutSessionId||"",contact:{companyName:stripeStore.companyName,email:t===null||t===void 0?void 0:t.value.email,firstName:a,lastName:s,phone:n.phone},isTest:e,items:cartStore.items,landedCostAdjustments:v,shipToShortAddressCode:stripeStore.shortAddressCode,shipToTaxId:stripeStore.taxId,shippingAddress:{addressLine1:n.line1,addressLine2:n.line2,city:n.city,country:n.country,postalCode:n.postal_code,state:n.state}}};var triggerBuildLandedCost=function(e){return __awaiter(void 0,void 0,void 0,(function(){var t,r,o,n,i,a,s,d,c,l;return __generator(this,(function(u){switch(u.label){case 0:a=prepCalculateLandedCost();return[4,e({billingAddress:a.billingAddress,billingContact:a.billingContact,checkoutSessionId:a.checkoutSessionId,contact:a.contact,landedCostAdjustments:a.landedCostAdjustments,publicCredential:window.Zonos.zonosApiKey||"",shippingAddress:a.shippingAddress,zonosApiRoute:fallbackApiList["vercel"]},{promoCode:cartStore.promoCode})];case 1:s=u.sent();if(!s||!((t=s.checkoutSessionWorkflow)===null||t===void 0?void 0:t.length)&&((r=s.errors)===null||r===void 0?void 0:r.length)){throw new Error("Failed to build landed cost: ".concat(((n=(o=s===null||s===void 0?void 0:s.errors)===null||o===void 0?void 0:o[0])===null||n===void 0?void 0:n.message)||"Unknown error"))}return[4,handleFetch("/api/zonos-elements/validate-landed-cost",{body:s,headers:{"Content-Type":"application/json"},method:"POST"})];case 2:d=u.sent(),c=d.errors,l=d.json;if(!l||c.length){throw new Error("Invalid landed cost object: ".concat(((i=c.find(Boolean))===null||i===void 0?void 0:i.message)||"Unknown error"))}return[2,s]}}))}))};var calculateLandedCost=function(e){return __awaiter(void 0,void 0,void 0,(function(){var t,r,o,n,i,a,s;return __generator(this,(function(d){switch(d.label){case 0:r=zonosStore.checkoutSettings.buildLandedCost;if(!r)return[3,2];return[4,triggerBuildLandedCost(r)];case 1:o=d.sent();return[2,o];case 2:return[4,handleFetch("/api/zonos-elements/calculate-landed-cost",{body:prepCalculateLandedCost(),method:"POST",signal:e===null||e===void 0?void 0:e.signal})];case 3:n=d.sent(),i=n.errors,a=n.json;if(i.length||!a){s=((t=i[0])===null||t===void 0?void 0:t.message)==="The user aborted a request.";if(s){throw new Error("The landed cost calculation request was aborted to initiate a new one.")}i.forEach((function(e){console.warn("Error calculating landed cost: ".concat(e.message))}));if(!a){throw new Error("Failed to calculate landed cost")}return[2,a]}return[2,a]}}))}))};var cartCalculateLandedCost=function(e){return __awaiter(void 0,[e],void 0,(function(e){var t,r,o,n,i,a,s,d,c,l;var u=e.abortController,S=e.cartId;return __generator(this,(function(e){switch(e.label){case 0:return[4,handleFetch("/api/zonos-elements/cart-calculate-landed-cost",{body:prepCartCalculateLandedCost(S),method:"POST",signal:u===null||u===void 0?void 0:u.signal})];case 1:a=e.sent(),s=a.errors,d=a.json;if(s.length||!d){c=typeof((t=s[0])===null||t===void 0?void 0:t.message)==="string"&&(((r=s[0])===null||r===void 0?void 0:r.message)==="The user aborted a request."||((o=s[0])===null||o===void 0?void 0:o.message.includes("signal is aborted"))||((n=s[0])===null||n===void 0?void 0:n.message.includes("The operation was aborted"))||((i=s[0])===null||i===void 0?void 0:i.message.includes("Fetch is aborted")));l=c?"The landed cost calculation request was aborted to initiate a new one.":"Failed to calculate landed cost";throw new Error(l)}return[2,d]}}))}))};var __rest=undefined&&undefined.__rest||function(e,t){var r={};for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0)r[o]=e[o];if(e!=null&&typeof Object.getOwnPropertySymbols==="function")for(var n=0,o=Object.getOwnPropertySymbols(e);n<o.length;n++){if(t.indexOf(o[n])<0&&Object.prototype.propertyIsEnumerable.call(e,o[n]))r[o[n]]=e[o[n]]}return r};var calculateLandedCostNormalized=function(e){return __awaiter(void 0,void 0,void 0,(function(){var t,r,o,n,i;return __generator(this,(function(a){switch(a.label){case 0:t=window.Zonos.cartId;if(!!t)return[3,2];return[4,calculateLandedCost(e)];case 1:r=a.sent();return[2,r];case 2:return[4,cartCalculateLandedCost({abortController:e,cartId:t})];case 3:o=a.sent(),n=o.cartWorkflow,i=__rest(o,["cartWorkflow"]);return[2,Object.assign(Object.assign({},i),{itemCreateWorkflow:n.items})]}}))}))};var trackConversionEvent=function(e){return __awaiter(void 0,[e],void 0,(function(e){var t,r,o,n,i,a,s,d,c;var l=e.checkoutSessionId,u=e.eventName,S=e.metadata;return __generator(this,(function(e){switch(e.label){case 0:o=Date.now();n=__spreadArray([],window.Zonos.trackEventLogs,true);window.Zonos.trackEventLogs.push({checkoutSessionId:l,eventCreated:o,eventName:u});i=window.location.href.includes("zonos.com")&&!window.location.href.includes("checkout.zonos.com")||!!((t=window.Zonos)===null||t===void 0?void 0:t.zonosQaUrl)||!!((r=window.Zonos)===null||r===void 0?void 0:r.debug);a=getIsTestMode()||getIsStagingMode();if((a||i)&&!window.Zonos.zonosConversionTest){return[2]}s=localizationStore.selectedCountryCode;d=zonosStore.organizationId;if(!l){void sendErrorLog({endpoint:"trackConversionEventMetric",errors:['Event "'.concat(u,'" - No checkout session id found')],metadata:{allLogs:allLogs,checkoutSessionId:l,eventName:u,metadata:S,organizationId:d,trackEventLogs:n}});return[2]}if(!d){void sendErrorLog({endpoint:"trackConversionEventMetric",errors:['Event "'.concat(u,'" - No organization id found')],metadata:{allLogs:allLogs,checkoutSessionId:l,eventName:u,metadata:S,organizationId:d,trackEventLogs:n}})}c={checkoutSessionId:l,countryCode:s,eventCreated:o,eventName:u,metadata:Object.assign(Object.assign({},S),{trackEventLogs:n}),organizationId:d};return[4,handleFetch("/api/zonos-elements/track-conversion-event",{body:c,method:"POST"})];case 1:e.sent();return[2]}}))}))};var getExcludeAddressFieldsObject=function(e){var t=e.address,r=e.invalidAdddressList;if(!t){return}if(!r){return}var o={};if(r.city){o.city=t.city}if(r.line1){o.line1=t.line1}if(r.line2){o.line2=t.line2}if(r.postal_code){o.postal_code=t.postal_code}if(r.state){o.state=t.state}if(r.name){o.name=t.name}return Object.keys(o).length?o:undefined};var buildTranslateRequest=function(e){var t=e.addressInvalidCharactersList,r=e.billingAddressInvalidCharactersList,o=e.stripeAddressEventData,n=e.stripeBillingAddressEventData,i=e.stripeShippingSameAsBilling;var a=!!(o===null||o===void 0?void 0:o.complete);var s=i?a:!!(n===null||n===void 0?void 0:n.complete);if(!a||!s){return null}if(!t&&!r){return null}var d=o.value;var c=(n===null||n===void 0?void 0:n.value)||null;var l=extractName({firstName:d.firstName,lastName:d.lastName,name:d.name}),u=l.firstName,S=l.lastName;var v="".concat(u," ").concat(S);var p=extractName({firstName:c===null||c===void 0?void 0:c.firstName,lastName:c===null||c===void 0?void 0:c.lastName,name:(c===null||c===void 0?void 0:c.name)||""}),f=p.firstName,h=p.lastName;var m=f&&h?"".concat(f," ").concat(h):"";var g=d.address;var C=c===null||c===void 0?void 0:c.address;return{address:getExcludeAddressFieldsObject({address:Object.assign(Object.assign({},g),{name:v}),invalidAdddressList:t}),billingAddress:!i?getExcludeAddressFieldsObject({address:C?Object.assign(Object.assign({},C),{name:m}):null,invalidAdddressList:r}):undefined,destinationCountry:g.country}};var sortServiceLevelOptionsByAmount=function(e){var t=e.sort((function(e,t){return e.amount-t.amount}));return t};var validateCheckoutSession=function(){return __awaiter(void 0,void 0,void 0,(function(){var e,t,r,o,n,i;return __generator(this,(function(a){switch(a.label){case 0:return[4,getCheckoutSession()];case 1:r=a.sent(),o=r.errors,n=r.json;if(o.length||!n){logError("Failed to retrieve checkout session info before confirming payment ",o);void sendErrorLog({endpoint:"validateCheckoutSession",errors:o.map((function(e){return e.message})),metadata:{allLogs:allLogs}});return[2,{errorMessage:translate("Unable to retrieve the checkout session at the moment. Please try again or contact our support team."),valid:false}]}i=!!(((e=n.checkoutSession.order)===null||e===void 0?void 0:e.id)&&!n.checkoutSession.completedAt);if(!i&&!((t=n.checkoutSession.landedCost)===null||t===void 0?void 0:t.id)){logError("Landed cost is not found in the checkout session before confirming payment.");void sendErrorLog({endpoint:"validateCheckoutSession",errors:["No landed cost found before confirming payment"],metadata:{allLogs:allLogs}});return[2,{errorMessage:translate('No shipment rating selected. Please go back to the "Shipping" step and select a shipment rating to proceed.'),valid:false}]}return[2,{errorMessage:"",valid:true}]}}))}))};var addressRuleStyle=function(e){var t=e.theme;var r={".AccordionItem":{color:"var(--colorText)"},".AccordionItem--selected":{color:"var(--colorText)"},".Action":{color:"var(--colorText)"},".Input":{boxShadow:"none",fontSize:zonosStore.appearance.fontSizeInputValue?"".concat(zonosStore.appearance.fontSizeInputValue,"px"):undefined,padding:"0",paddingBottom:"8px",paddingLeft:"16px",paddingRight:"8px",paddingTop:"6px"},".Label--resting":{fontSize:zonosStore.appearance.fontSizeInputLabel?"".concat(zonosStore.appearance.fontSizeInputLabel,"px"):undefined},".PickerItem--highlight":{boxShadow:"0 0 0 2px var(--colorBackground)"},".PickerItem--highlight:hover":{backgroundColor:"var(--colorBackground)",boxShadow:"none"},".PickerItem--new":{color:"var(--colorText)"},".Tab--selected":{borderStyle:"solid",borderWidth:"1px"}};switch(t){case"DARK":{return Object.assign(Object.assign({},r),{".Action":Object.assign(Object.assign({},r[".Action"]),{color:"white"}),".PickerItem--new":Object.assign(Object.assign({},r[".PickerItem--new"]),{color:"white"})})}default:return r}};var defaultVariable=function(e){var t=e.borderStyle,r=e.theme;switch(r){case"DARK":return{borderRadius:getBorderRadius({overrideBorderStyle:t}),colorBackground:"#101117",colorBackgroundText:"#C5C6CA",colorText:"#C5C6CA",colorTextPlaceholder:"#C5C6CA"};default:return{borderRadius:getBorderRadius({overrideBorderStyle:t}),iconMenuColor:"var(--colorText)",iconMenuHoverColor:"var(--colorText)"}}};var checkoutPaymentProcessorType={Airwallex:"AIRWALLEX",Paypal:"PAYPAL",Stripe:"STRIPE"};var _q=createStore((function(){return{checkoutSettlementCurrency:"USD",clientSecret:sessionStorage.getItem("zonos--client-secret")||"",companyName:"",companyNameUsedWhenAsyncAddressUpdate:"",customAddressErrors:{city:"",firstName:"",lastName:"",line1:"",phone:"",postalCode:"",showError:false,state:""},customBillingAddressErrors:{city:"",firstName:"",lastName:"",line1:"",phone:"",postalCode:"",showError:false,state:""},customErrorMessage:null,customerProfile:null,fetchingLandedCostAbortController:null,hasPaymentError:false,isFetchingLandedCost:false,isFetchingSession:false,partyBillingId:null,partyShippingId:null,shortAddressCode:"",shouldInventoryRefund:false,shouldRenderPayInUsdButton:false,skipPaymentIntent:new URLSearchParams(window.location.search).get("skipPaymentIntent")==="0"?false:true,stripe:null,stripeAddressElement:null,stripeAddressEventData:null,stripeAddressUsedWhenAsyncAddressUpdate:null,stripeAddressUsedWhenFetchingLC:null,stripeAddressUsedWhenValidatingAddress:null,stripeBillingAddressElement:null,stripeBillingAddressEventData:null,stripeBillingAddressUsedWhenAsyncAddressUpdate:null,stripeBillingAddressUsedWhenFetchingLC:null,stripeBillingAddressUsedWhenValidatingAddress:null,stripeCustomerSessionClientSecret:null,stripeElements:null,stripeElementsForBillingAddress:null,stripeElementsOptions:null,stripeLinkElement:null,stripeLinkEventData:null,stripeLinkUsedWhenFetchingLC:null,stripePaymentElement:null,stripePaymentEventData:null,stripeShippingSameAsBilling:true,taxId:"",taxIdUsedWhenAsyncAddressUpdate:"",translatedAddress:{address:{},billingAddress:{},firstName:{},lastName:{},name:{}}}})),stripeStoreOnChange=_q.onChange,reset$1=_q.reset,stripeStore=_q.state;var getStripeOptions=function(e){var t=e.clientSecret,r=e.overrideBorderRadius,o=e.overridePrimaryColor,n=e.overrideSecondaryColor,i=e.overrideTheme,a=e.paypalEnabled;var s=o||zonosStore.appearance.colorPrimary;var d=n||zonosStore.appearance.colorSecondary;var c=window.Zonos.isCollect||window.Zonos.isInvoice?zonosStore.appearance.theme==="DARK":s&&isDarkColor(s);var l=c?"night":"flat";var u=i==="DARK"?"night":"flat";var S=a?["external_paypal"]:[];var v=(t===null||t===void 0?void 0:t.includes("_secret_"))?t:undefined;return{appearance:{labels:"floating",rules:Object.assign({},addressRuleStyle({theme:i||"LIGHT"})),theme:i?u:l,variables:Object.assign(Object.assign({},defaultVariable({borderStyle:r,theme:"LIGHT"})),{colorPrimary:d})},clientSecret:v,customerSessionClientSecret:stripeStore.stripeCustomerSessionClientSecret||undefined,externalPaymentMethodTypes:__spreadArray([],S,true),locale:localizationStore.selectedLocale}};var stripeStoreCleanupDomesticShippingSession=function(){window.sessionStorage.removeItem("zonos--bigcommerce-domestic-checkout-shipping")};var stripeStoreSaveDomesticShippingSession=function(e){window.sessionStorage.setItem("zonos--bigcommerce-domestic-checkout-shipping",JSON.stringify(e))};var stripeStoreGetDomesticShippingSession=function(){var e=window.sessionStorage.getItem("zonos--bigcommerce-domestic-checkout-shipping");return jsonParse(e)};var initStripeElements=function(e){return __awaiter(void 0,void 0,void 0,(function(){var t,r,o,n,i;return __generator(this,(function(a){o=stripeStore.clientSecret;if(!stripeStore.stripe){log("Skip. Stripe is not initialized");return[2]}n=getStripeOptions({clientSecret:o,overrideBorderRadius:e===null||e===void 0?void 0:e.overrideBorderRadius,overridePrimaryColor:e===null||e===void 0?void 0:e.overridePrimaryColor,overrideSecondaryColor:e===null||e===void 0?void 0:e.overrideSecondaryColor,overrideTheme:e===null||e===void 0?void 0:e.overrideTheme,paypalEnabled:e===null||e===void 0?void 0:e.paypalEnabled});i=JSON.stringify(n)===JSON.stringify(stripeStore.stripeElementsOptions);if(!stripeStore.stripeElements||!stripeStore.stripeElementsForBillingAddress){stripeStore.stripeElementsForBillingAddress=(t=stripeStore.stripe)===null||t===void 0?void 0:t.elements(n);log("Stripe elements for billing address initialized");stripeStore.stripeElements=(r=stripeStore.stripe)===null||r===void 0?void 0:r.elements(n);stripeStore.stripeElementsOptions=n;log("Stripe elements initialized");return[2]}if(!i){stripeStore.stripeElements.update(n);stripeStore.stripeElementsForBillingAddress.update(n);stripeStore.stripeElementsOptions=n;void stripeStore.stripeElements.fetchUpdates()}log("Stripe elements updated");return[2]}))}))};var stripeStoreReset=function(){sessionStorage.removeItem("zonos--client-secret");reset$1();stripeStore.stripe=window.Zonos.stripe};var checkIsAddressOutdatedForValidation=function(){var e,t,r,o;var n=JSON.stringify((e=stripeStore.stripeAddressUsedWhenValidatingAddress)===null||e===void 0?void 0:e.value)!==JSON.stringify((t=stripeStore.stripeAddressEventData)===null||t===void 0?void 0:t.value);var i=!stripeStore.stripeShippingSameAsBilling&&JSON.stringify((r=stripeStore.stripeBillingAddressEventData)===null||r===void 0?void 0:r.value)!==JSON.stringify((o=stripeStore.stripeBillingAddressUsedWhenValidatingAddress)===null||o===void 0?void 0:o.value);return n||i};var checkIsAddressOutdatedForAsyncAddressUpdate=function(){var e,t,r,o,n,i,a,s;var d=(e=cartStore.partiesData.find((function(e){return e.type==="DESTINATION"})))===null||e===void 0?void 0:e.id;var c=(t=cartStore.partiesData.find((function(e){return e.type==="PAYOR"})))===null||t===void 0?void 0:t.id;if(!d||!c){return false}if(stripeStore.partyShippingId!==d||stripeStore.partyBillingId!==c){return true}var l=JSON.stringify((r=stripeStore.stripeLinkUsedWhenFetchingLC)===null||r===void 0?void 0:r.value)!==JSON.stringify((o=stripeStore.stripeLinkEventData)===null||o===void 0?void 0:o.value);var u=JSON.stringify((n=stripeStore.stripeAddressUsedWhenAsyncAddressUpdate)===null||n===void 0?void 0:n.value)!==JSON.stringify((i=stripeStore.stripeAddressEventData)===null||i===void 0?void 0:i.value);var S=!stripeStore.stripeShippingSameAsBilling&&JSON.stringify((a=stripeStore.stripeBillingAddressUsedWhenAsyncAddressUpdate)===null||a===void 0?void 0:a.value)!==JSON.stringify((s=stripeStore.stripeBillingAddressEventData)===null||s===void 0?void 0:s.value);var v=stripeStore.taxIdUsedWhenAsyncAddressUpdate!==stripeStore.taxId;var p=stripeStore.companyNameUsedWhenAsyncAddressUpdate!==stripeStore.companyName;return l||u||S||v||p};var stripeStoreBuildAddressForPartyCreate=function(e){var t=e.address,r=e.firstName,o=e.lastName,n=e.name,i=e.phone;var a=extractName({firstName:r,lastName:o,name:n}),s=a.firstName,d=a.lastName;if(!s||!d){void sendErrorLog({endpoint:"PARTY_CREATE_NO_NAME_FOUND",errors:["No name found"],metadata:{allLogs:allLogs,cartId:window.Zonos.cartId,checkoutSessionId:storageStore.checkoutSessionId,firstName:r,lastName:o,name:n}})}if(!i){void sendErrorLog({endpoint:"PARTY_CREATE_NO_PHONE_FOUND",errors:["No phone found"],metadata:{allLogs:allLogs,cartId:window.Zonos.cartId,checkoutSessionId:storageStore.checkoutSessionId,phone:i}})}return{city:t.city,country:t.country,firstName:s,lastName:d,line1:t.line1,line2:t.line2,phone:i||"",postal_code:t.postal_code,state:t.state}};var stripeStoreAsyncAddressUpdate=function(){return __awaiter(void 0,void 0,void 0,(function(){var e,t,r,o,n,i,a,s,d,c,l,u;return __generator(this,(function(S){switch(S.label){case 0:if(!((e=stripeStore.stripeAddressEventData)===null||e===void 0?void 0:e.complete)||!stripeStore.stripeShippingSameAsBilling&&!((t=stripeStore.stripeBillingAddressEventData)===null||t===void 0?void 0:t.complete)||!stripeStore.stripeBillingAddressEventData){return[2,{partiesCreated:false}]}if(!cartStore.landedCostData){return[2,{partiesCreated:false}]}n=(r=cartStore.landedCostData.find(Boolean))===null||r===void 0?void 0:r.landedCost.rootId;if(!n){void sendErrorLog({endpoint:"PF_NO_SELECTED_LANDED_COST",errors:["No selected landed cost"],metadata:{allLogs:allLogs,cartId:window.Zonos.cartId,checkoutSessionId:storageStore.checkoutSessionId}});return[2,{partiesCreated:false}]}i=checkIsAddressOutdatedForAsyncAddressUpdate();if(!i){return[2,{partiesCreated:false}]}a=stripeStoreBuildAddressForPartyCreate({address:stripeStore.stripeAddressEventData.value.address,firstName:stripeStore.stripeAddressEventData.value.firstName,lastName:stripeStore.stripeAddressEventData.value.lastName,name:stripeStore.stripeAddressEventData.value.name,phone:stripeStore.stripeAddressEventData.value.phone});s=stripeStore.stripeShippingSameAsBilling?a:stripeStoreBuildAddressForPartyCreate({address:stripeStore.stripeBillingAddressEventData.value.address,firstName:stripeStore.stripeBillingAddressEventData.value.firstName,lastName:stripeStore.stripeBillingAddressEventData.value.lastName,name:stripeStore.stripeBillingAddressEventData.value.name,phone:stripeStore.stripeBillingAddressEventData.value.phone});d=new URLSearchParams(window.location.search).get("zonosE2ETest")==="1";return[4,handleFetch("/api/zonos-elements/create-parties",{body:{address:a,billingAddress:s,companyName:stripeStore.companyName,email:((o=stripeStore.stripeLinkEventData)===null||o===void 0?void 0:o.value.email)||"",isTest:d,rootId:n,shortAddressCode:stripeStore.shortAddressCode,taxId:stripeStore.taxId},method:"POST"})];case 1:c=S.sent(),l=c.errors,u=c.json;if(l.length||!u){logError("Error occurs when creating parties",JSON.stringify(l,null,2));void sendErrorLog({endpoint:"PF_PARTY_CREATE_FAILED",errors:["Failed to create parties"],metadata:{allLogs:allLogs,cartId:window.Zonos.cartId,checkoutSessionId:storageStore.checkoutSessionId,errors:l,json:u}});return[2,{partiesCreated:false}]}stripeStore.companyNameUsedWhenAsyncAddressUpdate=stripeStore.companyName;stripeStore.stripeAddressUsedWhenAsyncAddressUpdate=stripeStore.stripeAddressEventData;stripeStore.stripeBillingAddressUsedWhenAsyncAddressUpdate=stripeStore.stripeBillingAddressEventData;stripeStore.taxIdUsedWhenAsyncAddressUpdate=stripeStore.taxId;stripeStore.partyBillingId=u.billToPartyId;stripeStore.partyShippingId=u.shipToPartyId;cartStore.partiesData=cartStore.partiesData.map((function(e){if(e.type==="DESTINATION"&&e.id!==u.shipToPartyId){return Object.assign(Object.assign({},e),{id:u.shipToPartyId})}if(e.type==="PAYOR"&&e.id!==u.billToPartyId){return Object.assign(Object.assign({},e),{id:u.billToPartyId})}return e}));return[2,{partiesCreated:true}]}}))}))};var buildAddressForLCPrefetch=function(e){return{countryCode:e.address.country,postalCode:e.address.postal_code,state:e.address.state}};var checkIsAddressOutdatedForLCPrefetch=function(){var e,t;var r=JSON.stringify((e=stripeStore.stripeLinkUsedWhenFetchingLC)===null||e===void 0?void 0:e.value)!==JSON.stringify((t=stripeStore.stripeLinkEventData)===null||t===void 0?void 0:t.value);var o=stripeStore.stripeAddressEventData&&JSON.stringify(buildAddressForLCPrefetch(stripeStore.stripeAddressEventData.value))!==JSON.stringify(stripeStore.stripeAddressUsedWhenFetchingLC);var n=!stripeStore.stripeShippingSameAsBilling&&stripeStore.stripeBillingAddressEventData&&JSON.stringify(buildAddressForLCPrefetch(stripeStore.stripeBillingAddressEventData.value))!==JSON.stringify(stripeStore.stripeBillingAddressUsedWhenFetchingLC);return r||o||n};var isPrefetchInfoOutdated=function(){var e;var t=cartStore.landedCostData&&((e=cartStore.landedCostData.find(Boolean))===null||e===void 0?void 0:e.subtotals.items)!==cartStore.subtotal;var r=checkIsAddressOutdatedForLCPrefetch();log("isPrefetchInfoOutdated","info",{isAddressOutdated:r});return!cartStore.landedCostData&&!stripeStore.isFetchingLandedCost||r||t};var getCountryField=function(e){var t,r;var o=(t=zonosStore.genericSettings)===null||t===void 0?void 0:t.countryFields;var n=(r=zonosStore.genericSettings)===null||r===void 0?void 0:r.stripeCountryFieldLabels;var i=n&&e in n?n[e]:null;var a=o&&e in o?o[e]:null;if(cartStore.addressFormRenderType==="stripe"){return i||a}return a};var isAddressReadyToRequestLandedCost=function(){var e,t,r,o;var n=!!((e=stripeStore.stripeLinkEventData)===null||e===void 0?void 0:e.complete);var i=!!((t=stripeStore.stripeAddressEventData)===null||t===void 0?void 0:t.complete);var a=stripeStore.stripeShippingSameAsBilling?i:!!((r=stripeStore.stripeBillingAddressEventData)===null||r===void 0?void 0:r.complete);var s=((o=stripeStore.stripeAddressEventData)===null||o===void 0?void 0:o.value.address.country)||"US";var d=getCountryField(s);if(i&&a&&n){return true}if(!d||!stripeStore.stripeAddressEventData){return i&&a&&n}var c=stripeStore.stripeAddressEventData.value.address.line1.length>0;var l=stripeStore.stripeAddressEventData.value.firstName&&stripeStore.stripeAddressEventData.value.lastName;var u=!d.stateRequired||d.stateRequired&&stripeStore.stripeAddressEventData.value.address.state.length>0;var S=!d.zipRequired||d.zipRequired&&stripeStore.stripeAddressEventData.value.address.postal_code.length>=3;var v=stripeStore.stripeAddressEventData.value.phone&&stripeStore.stripeAddressEventData.value.phone.length>0;return n&&l&&c&&u&&S&&v};var stripeCalculateLandedCost=function(){return __awaiter(void 0,void 0,void 0,(function(){var e,t,r,o,n,i,a,s,d,c,l;return __generator(this,(function(u){switch(u.label){case 0:t=new AbortController;stripeStore.fetchingLandedCostAbortController=t;cartStoreResetCartItems();return[4,calculateLandedCostNormalized(t)];case 1:r=u.sent(),o=r.checkoutSessionWorkflow,n=r.errors,i=r.itemCreateWorkflow,a=r.landedCostCalculateWorkflow,s=r.partyCreateWorkflow,d=r.shipmentRatingCalculateWorkflow;cartStore.customQuotingError=((e=n===null||n===void 0?void 0:n.find((function(e){var t,r;return((t=e.extensions)===null||t===void 0?void 0:t.ruleMessageType)==="CUSTOM"||((r=e.extensions)===null||r===void 0?void 0:r.source)==="COUNTRY_CONSTRAINT"})))===null||e===void 0?void 0:e.message)||null;cartStore.shippingData=sortServiceLevelOptionsByAmount((d===null||d===void 0?void 0:d.filter(Boolean))||[]);cartStoreCheckItemRestrictions(i);stripeStore.fetchingLandedCostAbortController=null;cartStore.partiesData=(s===null||s===void 0?void 0:s.filter(Boolean))||[];cartStore.landedCostData=(o===null||o===void 0?void 0:o.map((function(e){var t=a===null||a===void 0?void 0:a.find((function(t){return(t===null||t===void 0?void 0:t.id)===e.landedCostId}));if(!t){return null}return Object.assign(Object.assign({},e),{landedCost:t})})).filter(Boolean))||[];c=storageStore.checkoutSessionId;if(o===null||o===void 0?void 0:o.length){void trackConversionEvent({checkoutSessionId:c,eventName:"checkout_quoteReceived"})}l=cartStore.promoCodeApplied&&!cartStore.landedCostData.find((function(e){var t;return(t=e.landedCost.appliedAdjustments)===null||t===void 0?void 0:t.find((function(e){return e.type==="PROMO_CODE"}))}));cartStore.promoCodeError=l;if(!l){sessionStorage.setItem("zonos--promo-code",cartStore.promoCode)}return[2]}}))}))};var stripeStorePrefetchLandedCost=function(e){return __awaiter(void 0,void 0,void 0,(function(){var t,r,o,n,i,a,s,d,c,l,u,S,v,p;return __generator(this,(function(f){switch(f.label){case 0:i=(e===null||e===void 0?void 0:e.retries)||0;a=!!(e===null||e===void 0?void 0:e.applyingPromocode);s=isPrefetchInfoOutdated();d=isAddressReadyToRequestLandedCost();if(!d){return[2,{isRequestNotReady:true}]}if(s){(t=stripeStore.fetchingLandedCostAbortController)===null||t===void 0?void 0:t.abort();stripeStore.fetchingLandedCostAbortController=null}if(!s&&!a){return[2,{isRequestNotReady:false}]}if(i){stripeStore.isFetchingLandedCost=false;setTimeout((function(){stripeStore.isFetchingLandedCost=true}),300)}else{stripeStore.isFetchingLandedCost=true}if(stripeStore.stripeAddressEventData){stripeStore.stripeAddressUsedWhenFetchingLC={countryCode:stripeStore.stripeAddressEventData.value.address.country,postalCode:stripeStore.stripeAddressEventData.value.address.postal_code,state:stripeStore.stripeAddressEventData.value.address.state}}if(stripeStore.stripeBillingAddressEventData){stripeStore.stripeBillingAddressUsedWhenFetchingLC={countryCode:stripeStore.stripeBillingAddressEventData.value.address.country,postalCode:stripeStore.stripeBillingAddressEventData.value.address.postal_code,state:stripeStore.stripeBillingAddressEventData.value.address.state}}if(stripeStore.stripeLinkEventData){stripeStore.stripeLinkUsedWhenFetchingLC=Object.assign({},stripeStore.stripeLinkEventData)}f.label=1;case 1:f.trys.push([1,3,,7]);cartStoreResetCartItems();return[4,stripeCalculateLandedCost()];case 2:f.sent();c=(r=cartStore.shippingData)===null||r===void 0?void 0:r.find(Boolean);l=(o=cartStore.landedCostData)===null||o===void 0?void 0:o.find((function(e){return e.landedCost.shipmentRating.id===(c===null||c===void 0?void 0:c.id)}));u=!!l?l.subtotals:null;if(u){cartStoreApplySubtotals({method:(l===null||l===void 0?void 0:l.landedCost.method)||"DDP",subtotals:u})}return[3,7];case 3:S=f.sent();cartStore.landedCostData=[];cartStore.shippingData=[];v=["The landed cost calculation request was aborted to initiate a new one."];if(!(S instanceof Error&&S.message&&!v.includes(S.message)))return[3,6];if(!(i<1))return[3,5];return[4,stripeStorePrefetchLandedCost(Object.assign(Object.assign({},e),{retries:(i||0)+1}))];case 4:f.sent();return[2,{isRequestNotReady:false}];case 5:p=(n=stripeStore.stripeAddressEventData)===null||n===void 0?void 0:n.value;void sendErrorLog({endpoint:"Failed to fetch landed cost (".concat(i," retries)"),errors:[S.message],metadata:{cartId:window.Zonos.cartId,shipToAddress:p}});f.label=6;case 6:logError(S);return[3,7];case 7:stripeStore.isFetchingLandedCost=false;return[2,{isRequestNotReady:false}]}}))}))};var stripeStoreApplyPromoCode=function(){return __awaiter(void 0,void 0,void 0,(function(){var e,t,r,o;return __generator(this,(function(n){switch(n.label){case 0:return[4,stripeStorePrefetchLandedCost({applyingPromocode:true})];case 1:n.sent();if(cartStore.step==="payment"){cartStorePreviousStep()}return[4,stripeStoreAsyncAddressUpdate()];case 2:n.sent();r=(e=cartStore.shippingData)===null||e===void 0?void 0:e.find(Boolean);o=(t=cartStore.landedCostData)===null||t===void 0?void 0:t.find((function(e){return e.landedCost.id===(r===null||r===void 0?void 0:r.id)}));if(!r||!o){return[2]}return[4,cartStoreUpdateSelectedShippingOption({applySubtotalsOnly:false,landedCostId:o.landedCostId,selectedShippingOption:r})];case 3:n.sent();return[2]}}))}))};var stripeStoreResetPromoCode=function(){cartStore.promoCode="";sessionStorage.removeItem("zonos--promo-code");cartStore.promoCodeError=false;cartStore.promoCodeApplied=false};var stripeStoreRemovePromoCode=function(){return __awaiter(void 0,void 0,void 0,(function(){return __generator(this,(function(e){switch(e.label){case 0:if(cartStore.step==="payment"){cartStorePreviousStep()}stripeStoreResetPromoCode();return[4,stripeStoreApplyPromoCode()];case 1:e.sent();return[2]}}))}))};var stripeStoreMessageBasedOnStatus=function(e){var t=[];var r=true;var o=window.Zonos.isCollect;var n=window.Zonos.isInvoice;switch(e){case"succeeded":{t=[translate("Your payment went through successfully! Thank you for shopping with us! We hope you had an enjoyable experience and your support means the world to us."),"",translate("We've sent an email confirmation of the order details for your review. And our team is carefully preparing your order so it arrives on time.")];if(o||n){t=[translate("Thank you for submitting your payment. We appreciate your prompt attention."),"",translate("A confirmation email with your payment details has been sent for your records. If you have any questions or need support, our team is here to help.")]}r=false;break}case"requires_capture":case"processing":{t=[translate("Payment processing. We'll update you when payment is received.")];r=false;break}case"requires_payment_method":{t=[translate("Payment failed. Please try another payment method.")];if(o){t=[translate("Payment failed. Please reload the page and try another payment method.")]}break}case"requires_action":{r=false;t=[translate("Your selected payment method requires additional verification. Please follow the instructions provided by your payment provider to complete the transaction.")]}default:{t=[translate("Something went wrong.")];break}}return{isError:r,messages:t}};var stripeStoreHandleInventoryCheck=function(){return __awaiter(void 0,void 0,void 0,(function(){var e,t,r,o,n,i,a,s,d,s;return __generator(this,(function(c){switch(c.label){case 0:r=zonosStore.checkoutSettings.onInventoryCheck;o=!!((t=(e=window.Zonos.cartData)===null||e===void 0?void 0:e.metadata.find((function(e){return e.key==="referenceId"})))===null||t===void 0?void 0:t.value);if(!(window.Zonos.isLegacyCheckout&&window.Zonos.cartData&&o))return[3,2];return[4,handleFetch("/api/zonos-elements/legacy/inventory-check",{body:{cartData:window.Zonos.cartData},method:"POST"})];case 1:n=c.sent(),i=n.errors,a=n.json;if(i.length||!a){logError("Error occurs when handling inventory refund","warn",JSON.stringify(i));return[2,null]}if(!a.available||a.status===204){return[2,translate("The item you're looking for is currently unavailable in our inventory. Please check back later or contact support for assistance with availability.")]}if(a.available||a.status===200){stripeStore.shouldInventoryRefund=true;return[2,null]}return[2,null];case 2:if(typeof r!=="function"){return[2,null]}c.label=3;case 3:c.trys.push([3,5,,6]);return[4,r({items:cartStore.items},{translate:translate,zonosApiRoute:fallbackApiList["vercel"]})];case 4:s=c.sent();return[2,s];case 5:d=c.sent();s=d instanceof Error?d.message:"Unknown error";void sendErrorLog({endpoint:"onInventoryCheck",errors:["cartId: ".concat(window.Zonos.cartId," - ").concat(s)],metadata:{cartId:window.Zonos.cartId,href:window.location.href,items:cartStore.items}});throw d;case 6:return[2]}}))}))};var stripeStoreHandleInventoryRefund=function(){return __awaiter(void 0,void 0,void 0,(function(){var e,t,r;return __generator(this,(function(o){switch(o.label){case 0:r=!!((t=(e=window.Zonos.cartData)===null||e===void 0?void 0:e.metadata.find((function(e){return e.key==="referenceId"})))===null||t===void 0?void 0:t.value);if(!window.Zonos.isLegacyCheckout||!window.Zonos.cartData||!r){return[2]}return[4,handleFetch("/api/zonos-elements/legacy/inventory-refund",{body:{cartData:window.Zonos.cartData},method:"POST"})];case 1:o.sent();return[2]}}))}))};var stripeStoreRetrievePayment=function(e){return __awaiter(void 0,[e],void 0,(function(e){var t,r,o,n,i,a,s,d,c;var l=e.clientSecret,u=e.storybookForceStatus;return __generator(this,(function(e){switch(e.label){case 0:if(u){t=stripeStoreMessageBasedOnStatus(u),r=t.isError,o=t.messages;return[2,{error:r,messages:o}]}n=l||stripeStore.clientSecret;if(!stripeStore.stripe||!n){logError("Failed to retrieve payment intent. Stripe is not initialized");return[2,{error:true,message:[translate("Something went wrong.")]}]}if(!n.includes("_secret_")){return[2,{error:true,messages:[translate("Something went wrong.")]}]}return[4,stripeStore.stripe.retrievePaymentIntent(n)];case 1:i=e.sent().paymentIntent;a=i===null||i===void 0?void 0:i.status;s=stripeStoreMessageBasedOnStatus(a),d=s.isError,c=s.messages;return[2,{amount:i===null||i===void 0?void 0:i.amount,currency:i===null||i===void 0?void 0:i.currency,error:d,messages:c,paymentIntentId:i===null||i===void 0?void 0:i.id,paymentMethod:i===null||i===void 0?void 0:i.payment_method,status:a}]}}))}))};var stripeStoreConfirmPayment=function(e){return __awaiter(void 0,void 0,void 0,(function(){var t,r,o,n,i,a,s,d,c,l,u,S;return __generator(this,(function(v){switch(v.label){case 0:o=!!((t=stripeStore.stripePaymentEventData)===null||t===void 0?void 0:t.complete);n=stripeStore.stripeElements;i=stripeStore.stripe;a=stripeStore.clientSecret;stripeStore.customErrorMessage=null;if(!((r=cartStore.selectedLandedCost)===null||r===void 0?void 0:r.landedCost.id)&&!(e===null||e===void 0?void 0:e.noLandedCostCheck)){throw new Error("Attempted to confirm the payment when no landed cost is found in store")}return[4,validateCheckoutSession()];case 1:s=v.sent();if(!s.valid){stripeStore.customErrorMessage=s.errorMessage;throw new Error(s.errorMessage)}d=storageStore.checkoutSessionId;if(!(i&&n&&o&&a&&d))return[3,3];c=new URL(window.location.href);c.searchParams.set("payment_intent_client_secret",a);c.searchParams.set("zonosCheckoutSessionId",d);void trackConversionEvent({checkoutSessionId:d,eventName:"checkout_paymentInfoCompleted"});return[4,i.confirmPayment({confirmParams:{return_url:c.toString()},elements:n,redirect:"if_required"})];case 2:l=v.sent(),u=l.error,S=l.paymentIntent;log("Payment intent confirmed","info",{error:u,paymentIntent:S});if((S===null||S===void 0?void 0:S.status)==="requires_action"){throw new Error(translate("Your selected payment method requires additional verification. Please follow the instructions provided by your payment provider to complete the transaction."))}if(u){if(u.type==="card_error"||u.type==="validation_error"){throw new Error(u.message)}if(u.type==="invalid_request_error"){if(u.code==="payment_intent_unexpected_state"){return[2]}}throw new Error("An unexpected error occurred.")}if(S.status==="requires_payment_method"){throw new Error(translate("Payment failed. Please try another payment method."))}v.label=3;case 3:return[2]}}))}))};var buildPolicyConsentMetadataEntry=function(){if(!policyConsentStore.accepted){return null}var e=getEnabledPolicies();if(!e.length){return null}return{key:"merchantPolicyConsent",value:JSON.stringify({acceptedAt:policyConsentStore.acceptedAt||(new Date).toISOString(),locale:localizationStore.selectedLocale,policies:e.reduce((function(e,t){e[t.key]=t.url;return e}),{})})}};var getPaymentProcessorFromUrl=function(){var e=new URLSearchParams(window.location.search).get("paymentProcessor");var t=function(e){return Object.values(checkoutPaymentProcessorType).some((function(t){return t===e}))};return e&&t(e)?e:undefined};var getCheckoutSessionBody=function(){var e;var t=cartStore.items.reduce((function(e,t){return e+t.amount*t.quantity}),0);var r=storageStore.enabledVariantTestKeys||[];var o={adjustmentsAmount:cartStore.adjustments.reduce((function(e,t){return e+t.amount}),0),cartId:window.Zonos.cartId,currency:((e=cartStore.items.find(Boolean))===null||e===void 0?void 0:e.currencyCode)||"",customerAuthenticationToken:cartStore.customerAuthenticationToken||undefined,isCollect:!!window.Zonos.isCollect,isInvoice:!!window.Zonos.isInvoice,itemsAmount:t,metadata:[{key:"language",value:localizationStore.selectedLocale}],paymentProcessor:getPaymentProcessorFromUrl(),presentmentCountryCode:localizationStore.selectedCountryCode,skipPaymentIntent:stripeStore.skipPaymentIntent,varianceTestInput:r};return o};var stripeStoreGetPaymentIntent=function(){return __awaiter(void 0,void 0,void 0,(function(){var e,t,r,o,n;return __generator(this,(function(i){switch(i.label){case 0:if(!storageStore.checkoutSessionId){void sendErrorLog({endpoint:"Error creating payment intent",errors:["No checkout session id found when retrieving payment intent"],metadata:{allLogs:allLogs,cartId:window.Zonos.cartId}});cartStoreUpdateToErrorState({messages:[translate("There's been an error creating your checkout session. Please reload and try again or contact support if the error persists")],title:translate("Error creating Checkout")});return[2]}return[4,handleFetch("/api/zonos-elements/create-payment-intent",{body:{checkoutSessionId:storageStore.checkoutSessionId},method:"POST"})];case 1:t=i.sent(),r=t.errors,o=t.json;n=(e=o===null||o===void 0?void 0:o.checkoutSessionPaymentIntentCreate)===null||e===void 0?void 0:e.clientSecret;if(r.length||!n){logError("Error occurs when getting payment intent",JSON.stringify(r,null,2));void sendErrorLog({endpoint:"Error creating payment intent",errors:r.map((function(e){return e.message})),metadata:{allLogs:allLogs,cartId:window.Zonos.cartId,checkoutSessionId:storageStore.checkoutSessionId,clientSecret:n}});cartStoreUpdateToErrorState({messages:[translate("There's been an error creating your checkout session. Please reload and try again or contact support if the error persists")],title:translate("Error creating Checkout")});return[2]}cartStoreSetCheckoutSession(o.checkoutSessionPaymentIntentCreate);return[2]}}))}))};var stripeStoreInitCheckoutSession=function(){return __awaiter(void 0,void 0,void 0,(function(){var e,t,r,o,n,i,a,s;return __generator(this,(function(d){switch(d.label){case 0:if(!localizationStore.targetCurrency){logError("Failed to create checkout session - missing localizationStore.targetCurrency");return[2,false]}stripeStore.isFetchingSession=true;r=getCheckoutSessionBody();log("Checkout session body","info",r);return[4,handleFetch("/api/zonos-elements/create-checkout-session",{body:r,method:"POST"})];case 1:o=d.sent(),n=o.errors,i=o.json;stripeStore.isFetchingSession=false;if(n.length||!i){a=(e=n.find((function(e){return e.message})))===null||e===void 0?void 0:e.message;if(Array.isArray(a)&&a.some((function(e){return e.message==="Cart is expired."}))){throw new Error("Cart is expired.")}logError("Error occurred when creating checkout session",JSON.stringify(n,null,2));return[2,false]}s=i.checkoutSessionCreate;cartStoreSetCheckoutSession(s);cartStoreApplySubtotals({method:((t=s.landedCost)===null||t===void 0?void 0:t.method)||"DDP",subtotals:s.subtotals});log("Exchange rate updated for cart items (checkout session create)","info",cartStore.exchangeRate);log("done-init-checkout-session");return[2,true]}}))}))};var stripeStoreUpdateCheckoutSessionBaseCurrency=function(){return __awaiter(void 0,void 0,void 0,(function(){var e,t,r;return __generator(this,(function(o){switch(o.label){case 0:e=storageStore.checkoutSessionId;if(!e){logError("Failed to update checkout session base currency");return[2,false]}if(zonosStore.checkoutSettings.allowedSettlementCurrencies==="LOCAL"){log('allowedSettlementCurrencies: "LOCAL". Skip updating checkout session base currency');return[2,true]}return[4,handleFetch("/api/zonos-elements/update-checkout-session-base-currency",{body:{checkoutSessionId:e,currencyCode:stripeStore.checkoutSettlementCurrency},method:"POST"})];case 1:t=o.sent().json;r=t===null||t===void 0?void 0:t.checkoutSessionBaseCurrencyUpdate.subtotals.presentmentCurrencyCode;if(!t||r!==stripeStore.checkoutSettlementCurrency){logError("Failed to update checkout session base currency");return[2,false]}log('Updated checkout session to settlement currency "'.concat(r,'".'));return[2,true]}}))}))};var stripeStoreUpdateCheckoutSession=function(e){return __awaiter(void 0,[e],void 0,(function(e){var t,r,o,n;var i=e.adjustmentsAmount,a=e.cartId,s=e.currency,d=e.id,c=e.itemsAmount,l=e.landedCostId,u=e.presentmentCountryCode,S=e.storeCreditApplication;return __generator(this,(function(e){switch(e.label){case 0:t=storageStore.enabledVariantTestKeys||[];return[4,handleFetch("/api/zonos-elements/update-checkout-session",{body:{adjustmentsAmount:i,billToPartyId:stripeStore.partyBillingId,cartId:a,currency:s,customerAuthenticationToken:cartStore.customerAuthenticationToken||undefined,id:d,itemsAmount:c,landedCostId:l,metadata:[{key:"language",value:localizationStore.selectedLocale}],presentmentCountryCode:u,shipToPartyId:stripeStore.partyShippingId,skipPaymentIntent:stripeStore.skipPaymentIntent,storeCreditApplication:S,varianceTestInput:t},method:"POST"})];case 1:r=e.sent(),o=r.errors,n=r.json;if(o.length||!n){logError("Error occurs when updating checkout session",JSON.stringify(o,null,2));return[2,{errors:o,json:n}]}return[2,{errors:[],json:n}]}}))}))};var stripeStoreRecordPolicyConsent=function(){return __awaiter(void 0,void 0,void 0,(function(){var e,t;return __generator(this,(function(r){switch(r.label){case 0:e=buildPolicyConsentMetadataEntry();if(!e){return[2,{errors:[]}]}if(!storageStore.checkoutSessionId){return[2,{errors:[]}]}return[4,handleFetch("/api/zonos-elements/update-checkout-session-metadata",{body:{id:storageStore.checkoutSessionId,metadata:[e]},method:"POST"})];case 1:t=r.sent().errors;if(t.length){logError("Failed to record merchant policy consent on checkout session",JSON.stringify(t,null,2));return[2,{errors:t.map((function(e){return e.message||"Unknown error"}))}]}return[2,{errors:[]}]}}))}))};var buildTranslatedAddress=function(e){var t,r,o,n,i,a;var s=e.currentAddress,d=e.translatedAddressResult;var c={};if(!d){return c}var l=d.city,u=d.line1,S=d.line2,v=d.name,p=d.postal_code,f=d.state;if(s.city&&l){c.city=(t={},t[s.city]=l,t)}if(s.line1&&u){c.line1=(r={},r[s.line1]=u,r)}if(s.line2&&S){c.line2=(o={},o[s.line2]=S,o)}if(s.postal_code&&p){c.postal_code=(n={},n[s.postal_code]=p,n)}if(s.state&&f){c.state=(i={},i[s.state]=f,i)}if(s.name&&v){c.name=(a={},a[s.name]=v,a)}return c};var stripeStoreTranslateAddressToLatin=function(e){return __awaiter(void 0,[e],void 0,(function(e){var t,r,o,n,i,a,s,d,c,l,u;var S=e.addressInvalidCharactersList,v=e.billingAddressInvalidCharactersList;return __generator(this,(function(e){switch(e.label){case 0:i=buildTranslateRequest({addressInvalidCharactersList:S,billingAddressInvalidCharactersList:v,stripeAddressEventData:stripeStore.stripeAddressEventData,stripeBillingAddressEventData:stripeStore.stripeBillingAddressEventData,stripeShippingSameAsBilling:stripeStore.stripeShippingSameAsBilling});if(!i){stripeStore.translatedAddress={address:{},billingAddress:{}};return[2]}a=checkIsAddressOutdatedForValidation();if(!a){return[2]}return[4,handleFetch("/api/zonos-elements/validate-address",{body:i,method:"POST"})];case 1:s=e.sent(),d=s.errors,c=s.json;if(d.length||!c){logError("Error occurs when translating address to latin",JSON.stringify(d,null,2));stripeStore.translatedAddress={address:{},billingAddress:{}};return[2]}stripeStore.stripeAddressUsedWhenValidatingAddress=stripeStore.stripeAddressEventData;stripeStore.stripeBillingAddressUsedWhenValidatingAddress=stripeStore.stripeBillingAddressEventData;l=(t=stripeStore.stripeAddressEventData)===null||t===void 0?void 0:t.value.address;u=(r=stripeStore.stripeBillingAddressEventData)===null||r===void 0?void 0:r.value.address;stripeStore.translatedAddress={address:l?buildTranslatedAddress({currentAddress:Object.assign(Object.assign({},l),{name:(o=stripeStore.stripeAddressEventData)===null||o===void 0?void 0:o.value.name}),translatedAddressResult:c.address||null}):{},billingAddress:!stripeStore.stripeShippingSameAsBilling?buildTranslatedAddress({currentAddress:Object.assign(Object.assign({},u),{name:(n=stripeStore.stripeBillingAddressEventData)===null||n===void 0?void 0:n.value.name}),translatedAddressResult:c.billingAddress||null}):{}};return[2]}}))}))};stripeStoreOnChange("clientSecret",(function(e){if(e&&stripeStore.stripe){sessionStorage.setItem("zonos--client-secret",e)}if(!e){sessionStorage.removeItem("zonos--client-secret")}}));var isEuDapRemittance=function(e){var t=e.deliveryType,r=e.landedCost,o=e.shipToCountry;return r.method==="DAP"&&t==="POSTAL"&&r.remittance.length>0&&!!o&&euCountryCodes.includes(o)};var _r=createStore((function(){return{addressFormRenderType:"stripe",adjustmentTotal:0,adjustments:[],checkoutSession:null,checkoutSessionTimeoutShow:false,checkoutTimeoutInterval:null,currency:"USD",customMessage:[],customQuotingError:null,customerAuthenticationToken:null,displayBaseCurrency:false,dutiesTaxesFees:null,dutiesTaxesFeesEstimate:null,error:null,exchangeRate:null,externalConfirmationPageURL:null,inventoryCheckErrorMessage:null,isSelectedShippingAboveDeminimis:false,isSelectedShippingGuarantee:false,isStagingMode:getIsStagingMode(),items:[],landedCostData:null,landedCostMethod:"DDP",partiesData:[],promoCode:sessionStorage.getItem("zonos--promo-code")||"",promoCodeApplied:!!sessionStorage.getItem("zonos--promo-code"),promoCodeError:false,restrictedItems:[],selectedLandedCost:null,selectedShippingOption:null,selectedShippingOptionExpectedDate:"",selectedShippingOptionTransitTime:"",shipping:0,shippingData:null,shouldHideDiscountInput:false,step:"customer-info",storeCredit:0,subtotal:0,tabItems:{"customer-info":{index:1,isDone:false,label:"Customer",value:"customer-info"},shipping:{index:2,isDone:false,label:"Shipping",value:"shipping"},payment:{index:3,isDone:false,label:"Payment",value:"payment"}},total:0}})),cartStoreOnChange=_r.onChange,reset=_r.reset,cartStore=_r.state;var getTransitUnit=function(e){switch(e){case"DAYS":return translate("days");case"WEEKS":return translate("weeks");case"BUSINESS_DAYS":default:return translate("business days")}};var cartStoreGetShippingTransitInfo=function(e){var t;var r=(t=e.shippingProfile)===null||t===void 0?void 0:t.transitTime;if(!(r===null||r===void 0?void 0:r.min)||!(r===null||r===void 0?void 0:r.max)||!(r===null||r===void 0?void 0:r.type)){return null}return{maxTransit:r.max,minTransit:r.min,unit:getTransitUnit(r.type)}};var getMatchItem=function(e){var t=e.item1,r=e.item2;if(!t||!r){return false}return r.sku&&t.sku&&t.sku===r.sku||r.description&&t.description&&t.description===r.description||t.name&&r.name&&t.name===r.name};var cartStoreCheckItemRestrictions=function(e){log("Checking item restrictions");var t=e.map((function(e){if(!e.restriction){return null}var t=e.restriction;var r=cartStore.items.find((function(t){return getMatchItem({item1:t,item2:e})}));return Object.assign(Object.assign({matchedItem:r},e),{restriction:t})})).filter(Boolean);cartStore.restrictedItems=t;cartStore.items=cartStore.items.map((function(e){return Object.assign(Object.assign({},e),{isRestricted:!!t.find((function(t){return getMatchItem({item1:t,item2:e})}))})}));return{cartItems:cartStore.items,restrictedItems:t}};var storeCreditUpdateTimeout=null;var cartStoreReset=function(){storageStore.checkoutSessionId=null;if(storeCreditUpdateTimeout){clearTimeout(storeCreditUpdateTimeout);storeCreditUpdateTimeout=null}storeCreditStoreReset();reset()};var cartStoreUpdateToErrorState=function(e){var t=e.messages,r=e.title;cartStoreReset();stripeStoreReset();cartStore.step="error";cartStore.error={messages:t,title:r}};var cartStoreApplySubtotals=function(e){var t=e.dutiesTaxesFeesEstimate,r=e.method,o=e.subtotals;var n;cartStore.exchangeRate=o.exchangeRate;cartStore.adjustmentTotal=o.adjustments;cartStore.dutiesTaxesFees=r==="DAP"?null:o.landedCostTotal;cartStore.storeCredit=(n=o.storeCredit)!==null&&n!==void 0?n:0;cartStore.subtotal=o.items;cartStore.total=o.total;cartStore.currency=o.presentmentCurrencyCode;cartStore.dutiesTaxesFeesEstimate=t||null};var cartStoreHasOneEligibleItem=function(){var e=cartStore.items.filter((function(e){return e.amount>0}));return!!e.find((function(e){return!e.isRestricted}))};var cartStoreIsOrderModificationPaymentOnlySession=function(){var e,t;return!!(((t=(e=cartStore.checkoutSession)===null||e===void 0?void 0:e.order)===null||t===void 0?void 0:t.id)&&!cartStore.checkoutSession.completedAt)};var cartStoreSetCheckoutSession=function(e){var t,r,o,n,i,a,s;stripeStore.clientSecret=e.clientSecret;stripeStore.stripeCustomerSessionClientSecret=e.customerSessionClientSecret;stripeStore.customerProfile=e.customerProfile;cartStore.checkoutSession=e;storeCreditStoreSetBalanceFromSession((r=(t=e.customerProfile)===null||t===void 0?void 0:t.storeCreditBalance)!==null&&r!==void 0?r:null);if(!e.id){void sendErrorLog({endpoint:"cartStoreSetCheckoutSession",errors:["Missing checkout session id in checkout session"],metadata:{allLogs:allLogs,checkoutSession:e}})}if(e.id){storageStore.checkoutSessionId=e.id}var d=filterValidTests(e.varianceTestResults||[]);storageStoreSetEnabledVariantTestKeys(d);var c=((i=(n=(o=cartStore.checkoutSession)===null||o===void 0?void 0:o.metadata)===null||n===void 0?void 0:n.find((function(e){return(e===null||e===void 0?void 0:e.key)==="externalConfirmationPageURL"})))===null||i===void 0?void 0:i.value)||((s=(a=window.Zonos.cartData)===null||a===void 0?void 0:a.metadata.find((function(e){return(e===null||e===void 0?void 0:e.key)==="externalConfirmationPageURL"})))===null||s===void 0?void 0:s.value)||null;if(c){log("Found externalConfirmationPageURL: ".concat(c));cartStore.externalConfirmationPageURL=c}};var cartStoreReCalculateTotal=function(e){return __awaiter(void 0,[e],void 0,(function(e){var t,r,o,n,i,a;var s=e.adjustmentsAmount,d=e.cartId,c=e.currency,l=e.dutiesTaxesFeesEstimate,u=e.itemsAmount,S=e.landedCostId,v=e.shouldInitSessionOnFailure;return __generator(this,(function(e){switch(e.label){case 0:if(S&&cartStore.selectedLandedCost){r=cartStore.selectedLandedCost.subtotals;cartStoreApplySubtotals({dutiesTaxesFeesEstimate:l,method:cartStore.landedCostMethod,subtotals:r});log("Exchange rate updated for cart items (landed cost subtotal)","info",cartStore.exchangeRate)}if(!storageStore.checkoutSessionId){log("Could not update cart total without checkout session id","info");return[2,false]}return[4,stripeStoreUpdateCheckoutSession({adjustmentsAmount:s,billToPartyId:stripeStore.partyBillingId,cartId:d,currency:c,id:storageStore.checkoutSessionId,itemsAmount:u,landedCostId:S,presentmentCountryCode:localizationStore.selectedCountryCode,shipToPartyId:stripeStore.partyShippingId,varianceTestInput:storageStore.enabledVariantTestKeys||[]})];case 1:o=e.sent(),n=o.errors,i=o.json;if(!(n.length>0||!i))return[3,4];logError("Error occurs when updating checkout session.");if(!v)return[3,3];log("Initiating checkout session on failure","info");return[4,stripeStoreInitCheckoutSession()];case 2:a=e.sent();log("stripeStoreInitCheckoutSession: ".concat(a));if(!a){cartStoreUpdateToErrorState({messages:[translate("There's been an error creating your checkout session. Please reload and try again or contact support if the error persists")],title:translate("Error creating Checkout")});return[2,false]}return[2,true];case 3:return[2,false];case 4:if(!S){cartStoreApplySubtotals({method:((t=i.checkoutSessionUpdate.landedCost)===null||t===void 0?void 0:t.method)||"DDP",subtotals:i.checkoutSessionUpdate.subtotals});log("Exchange rate updated for cart items (checkout session update)","info",cartStore.exchangeRate)}cartStoreSetCheckoutSession(i.checkoutSessionUpdate);return[2,true]}}))}))};var cartStoreGetMethod=function(e,t){var r,o,n,i;if(e.method==="DAP"&&((o=(r=zonosStore.genericSettings)===null||r===void 0?void 0:r.domesticCountries)===null||o===void 0?void 0:o.includes(((n=stripeStore.stripeAddressEventData)===null||n===void 0?void 0:n.value.address.country)||"US"))){return"DDP"}if(isEuDapRemittance({deliveryType:t,landedCost:e,shipToCountry:(i=stripeStore.stripeAddressEventData)===null||i===void 0?void 0:i.value.address.country})){return"DAP"}if(e.method==="DAP"&&e.remittance.length&&e.landedCostGuaranteeCode==="ZONOS"){return"DDP"}return e.method};var cartStoreUpdateSelectedShippingOption=function(e){return __awaiter(void 0,[e],void 0,(function(e){var t,r,o,n,i,a,s,d,c,l,u,S,v,p,f,h,m,g,C,y,w,b,A,_,O,k;var I=e.applySubtotalsOnly,E=e.landedCostId,T=e.selectedShippingOption;return __generator(this,(function(e){switch(e.label){case 0:log("Updating selected shipping option","info",{landedCostId:E,selectedShippingOption:T});cartStore.selectedShippingOption=T;v=cartStoreGetShippingTransitInfo(cartStore.selectedShippingOption);if(v){p=v.maxTransit,f=v.minTransit,h=v.unit;cartStore.selectedShippingOptionTransitTime="".concat(f,"-").concat(p," ").concat(h)}else{cartStore.selectedShippingOptionTransitTime=""}m=(t=cartStore.landedCostData)===null||t===void 0?void 0:t.find((function(e){return e.landedCostId===E}));cartStore.selectedLandedCost=m||null;if(!m){return[2,false]}g=((r=m.landedCost.amountSubtotals)===null||r===void 0?void 0:r.landedCostTotal)||0;C=m.subtotals.exchangeRate.rate;y=g*C;if(y){log("DAP quote, using estimate: ".concat(y),"info")}cartStore.landedCostMethod=cartStoreGetMethod(m.landedCost,(o=T.shippingProfile)===null||o===void 0?void 0:o.serviceLevel.deliveryType);cartStore.shipping=m.subtotals.shipping;w=((n=m===null||m===void 0?void 0:m.landedCost)===null||n===void 0?void 0:n.landedCostGuaranteeCode)==="ZONOS";b=!!((a=(i=m===null||m===void 0?void 0:m.landedCost)===null||i===void 0?void 0:i.deMinimis)===null||a===void 0?void 0:a.find((function(e){return["DUTY","TAX"].includes(e.type)&&e.threshold==="ABOVE"})));cartStore.isSelectedShippingAboveDeminimis=b;cartStore.isSelectedShippingGuarantee=w;A=false;if(!I)return[3,1];_=m.subtotals;cartStoreApplySubtotals({dutiesTaxesFeesEstimate:y,method:cartStore.landedCostMethod,subtotals:_});log("Exchange rate updated for cart items (landed cost subtotal)","info",cartStore.exchangeRate);A=true;return[3,3];case 1:return[4,cartStoreReCalculateTotal({adjustmentsAmount:cartStore.adjustmentTotal,billToPartyId:stripeStore.partyBillingId,cartId:window.Zonos.cartId,dutiesTaxesFeesEstimate:y,landedCostId:(s=m.landedCost)===null||s===void 0?void 0:s.id,shipToPartyId:stripeStore.partyShippingId,varianceTestInput:storageStore.enabledVariantTestKeys||[]})];case 2:A=e.sent();e.label=3;case 3:O=(d=cartStore.items.find(Boolean))===null||d===void 0?void 0:d.currencyCode;k=((c=stripeStore.stripeAddressEventData)===null||c===void 0?void 0:c.value.address.country)||"US";stripeStore.shouldRenderPayInUsdButton=O==="USD"&&zonosStore.checkoutSettings.allowedSettlementCurrencies==="LOCAL_AND_USD"&&((l=cartStore.checkoutSession)===null||l===void 0?void 0:l.subtotals.presentmentCurrencyCode)!=="USD"&&!!((S=(u=zonosStore.genericSettings)===null||u===void 0?void 0:u.usdSettlementCountryEnabled)===null||S===void 0?void 0:S.includes(k));return[2,A]}}))}))};var cartStoreStartCheckoutInterval=function(e){var t=e.isPreview,r=e.sessionTimeout;if(t){return}var o=new URLSearchParams(window.location.search).get("zonosCheckoutTimeout");var n=o&&!isNaN(parseInt(o,10))?parseInt(o,10):r;log("==START CHECKOUT TIMEOUT - ".concat(n,"=="));cartStore.checkoutTimeoutInterval=setTimeout((function(){cartStore.checkoutSessionTimeoutShow=true}),n)};var cartStoreClearCheckoutInterval=function(){if(cartStore.checkoutTimeoutInterval){clearTimeout(cartStore.checkoutTimeoutInterval);cartStore.checkoutTimeoutInterval=null}};var getCartItemToUse=function(e){return e.map((function(e){return Object.assign(Object.assign({},e),{isRestricted:false})}))};var cartStoreResetCartItems=function(){cartStore.items=cartStore.items.map((function(e){return Object.assign(Object.assign({},e),{isRestricted:false})}));cartStore.restrictedItems=[]};var cartStoreUpdateItems=function(e){return __awaiter(void 0,[e],void 0,(function(e){var t,r,o,n;var i=e.adjustments,a=e.cartItems,s=e.landedCostId,d=e.shouldInitSessionOnFailure,c=d===void 0?true:d;return __generator(this,(function(e){switch(e.label){case 0:cartStore.adjustments=i;cartStore.items=getCartItemToUse(a);r=(t=a.find(Boolean))===null||t===void 0?void 0:t.currencyCode;o=a.reduce((function(e,t){return e+t.amount*t.quantity}),0);n=i.reduce((function(e,t){return e+t.amount}),0);if(!r||!o){return[2]}cartStore.currency=r;stripeStore.isFetchingSession=true;return[4,cartStoreReCalculateTotal({adjustmentsAmount:n,billToPartyId:stripeStore.partyBillingId,cartId:window.Zonos.cartId,currency:r,dutiesTaxesFeesEstimate:0,itemsAmount:o,landedCostId:s,shipToPartyId:stripeStore.partyShippingId,shouldInitSessionOnFailure:c,varianceTestInput:storageStore.enabledVariantTestKeys||[]})];case 1:e.sent();stripeStore.isFetchingSession=false;return[2]}}))}))};var cartStoreResetSelectedShippingOption=function(){cartStore.selectedShippingOption=null;cartStore.isSelectedShippingAboveDeminimis=false;cartStore.isSelectedShippingGuarantee=false;cartStore.selectedShippingOptionTransitTime="";cartStore.dutiesTaxesFees=0;cartStore.dutiesTaxesFeesEstimate=0;cartStore.shipping=0;cartStore.total=cartStore.subtotal};var cartStorePreviousStep=function(){if(cartStore.step==="shipping"){cartStore.step="customer-info";cartStore.tabItems=Object.assign(Object.assign({},cartStore.tabItems),{"customer-info":Object.assign(Object.assign({},cartStore.tabItems.shipping),{isDone:false})})}else if(cartStore.step==="payment"){cartStore.step="shipping";cartStore.tabItems=Object.assign(Object.assign({},cartStore.tabItems),{shipping:Object.assign(Object.assign({},cartStore.tabItems.shipping),{isDone:false})})}else if(cartStore.step==="finish"){cartStore.step="payment";cartStore.tabItems=Object.assign(Object.assign({},cartStore.tabItems),{payment:Object.assign(Object.assign({},cartStore.tabItems.payment),{isDone:false})})}};var cartStoreNextStep=function(){if(cartStore.step==="customer-info"){cartStore.step="shipping";cartStore.tabItems=Object.assign(Object.assign({},cartStore.tabItems),{"customer-info":Object.assign(Object.assign({},cartStore.tabItems["customer-info"]),{isDone:true})})}else if(cartStore.step==="shipping"){cartStore.step="payment";cartStore.tabItems=Object.assign(Object.assign({},cartStore.tabItems),{shipping:Object.assign(Object.assign({},cartStore.tabItems.shipping),{isDone:true})})}else if(cartStore.step==="payment"){cartStore.step="finish"}};var cartStoreResetTabItems=function(){cartStore.step="customer-info";cartStore.tabItems=Object.assign(Object.assign({},cartStore.tabItems),{"customer-info":Object.assign(Object.assign({},cartStore.tabItems["customer-info"]),{isDone:false}),payment:Object.assign(Object.assign({},cartStore.tabItems.payment),{isDone:false}),shipping:Object.assign(Object.assign({},cartStore.tabItems.shipping),{isDone:false})});cartStoreResetSelectedShippingOption()};var cartStoreUpdateStoreCreditImmediate=function(){return __awaiter(void 0,void 0,void 0,(function(){var e,t,r,o,n,i,a,s,d;return __generator(this,(function(c){switch(c.label){case 0:if(!storageStore.checkoutSessionId){log("Could not update store credit without checkout session id","info");return[2]}r=cartStore.selectedLandedCost;o=cartStore.currency||((e=cartStore.items.find(Boolean))===null||e===void 0?void 0:e.currencyCode)||"";n=cartStore.adjustments.reduce((function(e,t){return e+t.amount}),0);i=cartStore.items.reduce((function(e,t){return e+t.amount*t.quantity}),0);return[4,stripeStoreUpdateCheckoutSession({adjustmentsAmount:n,cartId:window.Zonos.cartId,currency:o,id:storageStore.checkoutSessionId,itemsAmount:i,landedCostId:r===null||r===void 0?void 0:r.landedCostId,presentmentCountryCode:localizationStore.selectedCountryCode,storeCreditApplication:storeCreditStoreGetInput()})];case 1:a=c.sent(),s=a.errors,d=a.json;if(s.length>0||!d){logError("Error updating checkout session with store credit");return[2]}cartStoreApplySubtotals({method:((t=d.checkoutSessionUpdate.landedCost)===null||t===void 0?void 0:t.method)||"DDP",subtotals:d.checkoutSessionUpdate.subtotals});cartStoreSetCheckoutSession(d.checkoutSessionUpdate);return[2]}}))}))};var cartStoreUpdateStoreCredit=function(){if(storeCreditUpdateTimeout){clearTimeout(storeCreditUpdateTimeout)}storeCreditUpdateTimeout=setTimeout((function(){storeCreditUpdateTimeout=null;void cartStoreUpdateStoreCreditImmediate()}),300)};export{cartStoreGetMethod as $,storeCreditStoreApplyCredit as A,storeCreditStoreCoversFullAmount as B,validateCheckoutSession as C,storeCreditStoreCreateOrder as D,stripeStoreConfirmPayment as E,stripeStoreHandleInventoryRefund as F,policyConsentStore as G,stripeStoreReset as H,cartStoreOnChange as I,stripeStoreOnChange as J,storeCreditStoreGetEffectiveAmount as K,stripeStoreRecordPolicyConsent as L,stripeStoreBuildAddressForPartyCreate as M,cartStoreUpdateSelectedShippingOption as N,cartStoreHasOneEligibleItem as O,isEuDapRemittance as P,stripeStoreApplyPromoCode as Q,stripeStoreRemovePromoCode as R,stripeStoreResetPromoCode as S,stripeStoreMessageBasedOnStatus as T,storeCreditStore as U,storeCreditStoreReset as V,extractName as W,stripeStoreTranslateAddressToLatin as X,getCountryField as Y,stripeStoreAsyncAddressUpdate as Z,cartStoreGetShippingTransitInfo as _,stripeStoreSaveDomesticShippingSession as a,sortServiceLevelOptionsByAmount as a0,getEnabledPolicies as a1,storeCreditStoreSetEnabled as a2,storeCreditStoreSetUseFullBalance as a3,cartStoreUpdateStoreCredit as a4,storeCreditStoreSetAmount as a5,storeCreditStoreRefreshBalance as a6,stripeStore as b,stripeStoreRetrievePayment as c,cartStore as d,cartStoreUpdateItems as e,cartStoreReset as f,getCheckoutSession as g,cartStoreResetTabItems as h,initStripeElements as i,cartStoreClearCheckoutInterval as j,stripeStoreInitCheckoutSession as k,stripeStoreGetPaymentIntent as l,cartStoreIsOrderModificationPaymentOnlySession as m,stripeStoreHandleInventoryCheck as n,cartStoreStartCheckoutInterval as o,policyConsentStoreReset as p,getCheckoutSessionBody as q,cartStoreUpdateToErrorState as r,stripeStoreGetDomesticShippingSession as s,trackConversionEvent as t,stripeStoreCleanupDomesticShippingSession as u,cartStoreSetCheckoutSession as v,stripeStorePrefetchLandedCost as w,cartStoreNextStep as x,isPolicyConsentRequired as y,stripeStoreUpdateCheckoutSessionBaseCurrency as z};