@zonos/elements 1.3.143 → 1.3.145

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 (342) hide show
  1. package/dist/cjs/{CheckoutConfig-eaaf62a1.js → CheckoutConfig-d25d548d.js} +13 -3
  2. package/dist/cjs/{cart-6ac8dc06.js → cart-9d5e2816.js} +296 -41
  3. package/dist/cjs/{createCustomEvent-3e982e57.js → createCustomEvent-7b6fad95.js} +0 -3
  4. package/dist/cjs/{getBorderRadius-f97c99ad.js → getBorderRadius-7d0772bf.js} +1 -1
  5. package/dist/cjs/{handleFetch-864d3c53.js → handleFetch-3673a0c2.js} +30 -1
  6. package/dist/cjs/{index-b678ce0c.js → index-2f90486e.js} +209 -157
  7. package/dist/cjs/index.cjs.js +12 -11
  8. package/dist/cjs/{isDarkColor-434d71dd.js → isDarkColor-2acf30d1.js} +1 -1
  9. package/dist/cjs/loader.cjs.js +2 -2
  10. package/dist/cjs/{paypal-ea8b4ca0.js → paypal-f9015045.js} +4 -4
  11. package/dist/cjs/zonos-address_8.cjs.entry.js +96 -18
  12. package/dist/cjs/zonos-badge.cjs.entry.js +2 -2
  13. package/dist/cjs/zonos-banner.cjs.entry.js +2 -2
  14. package/dist/cjs/zonos-button_3.cjs.entry.js +4 -4
  15. package/dist/cjs/zonos-card.cjs.entry.js +3 -3
  16. package/dist/cjs/zonos-cart-items_13.cjs.entry.js +128 -30
  17. package/dist/cjs/zonos-checkout.cjs.entry.js +47 -27
  18. package/dist/cjs/zonos-collapse.cjs.entry.js +2 -2
  19. package/dist/cjs/zonos-component.cjs.entry.js +1 -1
  20. package/dist/cjs/zonos-controller.cjs.entry.js +31 -10
  21. package/dist/cjs/zonos-country-flag.cjs.entry.js +6 -6
  22. package/dist/cjs/zonos-country-select_4.cjs.entry.js +6 -6
  23. package/dist/cjs/zonos-elements.cjs.js +3 -3
  24. package/dist/cjs/{zonos-notification_3.cjs.entry.js → zonos-empty-state-payment_4.cjs.entry.js} +86 -8
  25. package/dist/cjs/zonos-hello-dialog.cjs.entry.js +7 -7
  26. package/dist/cjs/zonos-hello.cjs.entry.js +6 -6
  27. package/dist/cjs/zonos-input.cjs.entry.js +3 -3
  28. package/dist/cjs/zonos-language-select_2.cjs.entry.js +6 -6
  29. package/dist/cjs/zonos-link.cjs.entry.js +1 -1
  30. package/dist/cjs/zonos-logo.cjs.entry.js +2 -2
  31. package/dist/cjs/zonos-shipping-rich-radio.cjs.entry.js +3 -3
  32. package/dist/cjs/zonos-text.cjs.entry.js +2 -2
  33. package/dist/cjs/zonos-toggle.cjs.entry.js +2 -2
  34. package/dist/cjs/zonos-tooltip.cjs.entry.js +1 -1
  35. package/dist/cjs/zonos-v-stack.cjs.entry.js +2 -2
  36. package/dist/cjs/{zonosStore-8971eb65.js → zonosStore-46809186.js} +1 -1
  37. package/dist/collection/collection-manifest.json +2 -1
  38. package/dist/collection/components/checkout/zonos-checkout/zonos-address-update-dialog/zonos-address-display/zonos-address-display.js +5 -1
  39. package/dist/collection/components/checkout/zonos-checkout/zonos-address-update-dialog/zonos-address-form/zonos-address-form.js +8 -2
  40. package/dist/collection/components/checkout/zonos-checkout/zonos-address-update-dialog/zonos-address-update-dialog.js +24 -4
  41. package/dist/collection/components/checkout/zonos-checkout/zonos-cart-restricted-items/zonos-cart-restricted-items.js +2 -0
  42. package/dist/collection/components/checkout/zonos-checkout/zonos-cart-subtotal/zonos-cart-subtotal.js +4 -0
  43. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-finish/zonos-checkout-finish.js +34 -6
  44. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-footer/zonos-checkout-footer.js +4 -0
  45. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-payment/zonos-checkout-payment.js +109 -18
  46. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-payment/zonos-empty-state-payment/assets/PaymentEmptyStateDarkIcon.svg +22 -0
  47. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-payment/zonos-empty-state-payment/assets/PaymentEmptyStateLightIcon.svg +22 -0
  48. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-payment/zonos-empty-state-payment/zonos-empty-state-payment.css +51 -0
  49. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-payment/zonos-empty-state-payment/zonos-empty-state-payment.js +90 -0
  50. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout.js +73 -18
  51. package/dist/collection/components/checkout/zonos-checkout/zonos-customer-info/zonos-customer-info.js +10 -0
  52. package/dist/collection/components/checkout/zonos-checkout/zonos-review/zonos-review.js +4 -0
  53. package/dist/collection/components/checkout/zonos-checkout/zonos-shipping/zonos-shipping.js +6 -0
  54. package/dist/collection/components/common/zonos-badge/zonos-badge.js +18 -2
  55. package/dist/collection/components/common/zonos-banner/zonos-banner.js +4 -0
  56. package/dist/collection/components/common/zonos-button/zonos-button.js +30 -0
  57. package/dist/collection/components/common/zonos-card/zonos-card.js +20 -4
  58. package/dist/collection/components/common/zonos-checkbox/zonos-checkbox.js +14 -0
  59. package/dist/collection/components/common/zonos-checkout-progress-tabs/zonos-checkout-progress-tabs.js +4 -0
  60. package/dist/collection/components/common/zonos-collapse/zonos-collapse.js +4 -0
  61. package/dist/collection/components/common/zonos-confirm-dialog/zonos-confirm-dialog.js +22 -0
  62. package/dist/collection/components/common/zonos-country-flag/zonos-country-flag.js +4 -0
  63. package/dist/collection/components/common/zonos-country-select/zonos-country-select.js +2 -0
  64. package/dist/collection/components/common/zonos-custom-message/zonos-custom-message.js +4 -0
  65. package/dist/collection/components/common/zonos-dialog/zonos-dialog.js +26 -0
  66. package/dist/collection/components/common/zonos-icon/zonos-icon.js +8 -0
  67. package/dist/collection/components/common/zonos-input/zonos-input.js +12 -0
  68. package/dist/collection/components/common/zonos-language-select/zonos-language-select.js +2 -0
  69. package/dist/collection/components/common/zonos-link/zonos-link.js +8 -0
  70. package/dist/collection/components/common/zonos-logo/zonos-logo.js +4 -0
  71. package/dist/collection/components/common/zonos-rest-state/zonos-rest-state.js +6 -0
  72. package/dist/collection/components/common/zonos-select-dialog-header/zonos-select-dialog-header.js +4 -0
  73. package/dist/collection/components/common/zonos-shipping-rich-radio/zonos-shipping-rich-radio.js +11 -1
  74. package/dist/collection/components/common/zonos-spinner/zonos-spinner.js +4 -0
  75. package/dist/collection/components/common/zonos-stripe-input/zonos-stripe-input.css +3 -3
  76. package/dist/collection/components/common/zonos-stripe-input/zonos-stripe-input.js +52 -8
  77. package/dist/collection/components/common/zonos-text/zonos-text.js +8 -0
  78. package/dist/collection/components/common/zonos-toggle/zonos-toggle.js +4 -0
  79. package/dist/collection/components/common/zonos-tooltip/zonos-tooltip.js +4 -0
  80. package/dist/collection/components/common/zonos-v-stack/zonos-v-stack.js +2 -0
  81. package/dist/collection/components/common/zonos-virtual-scroll/zonos-virtual-scroll.js +10 -2
  82. package/dist/collection/components/component-template/zonos-component/zonos-component.js +6 -0
  83. package/dist/collection/components/hello/zonos-hello/zonos-hello.js +7 -1
  84. package/dist/collection/components/hello/zonos-hello-dialog/zonos-hello-dialog-footer/zonos-hello-dialog-footer.js +7 -1
  85. package/dist/collection/components/hello/zonos-hello-dialog/zonos-hello-dialog.js +14 -2
  86. package/dist/collection/components/main/zonos-controller.js +30 -5
  87. package/dist/collection/components/store/checkout/cart.js +3 -0
  88. package/dist/collection/components/store/checkout/stripe.js +112 -39
  89. package/dist/collection/components/store/translationStore/strings.arabic.js +9 -0
  90. package/dist/collection/components/store/translationStore/strings.base.js +9 -0
  91. package/dist/collection/components/store/translationStore/strings.chinese.js +9 -0
  92. package/dist/collection/components/store/translationStore/strings.danish.js +9 -0
  93. package/dist/collection/components/store/translationStore/strings.dutch.js +9 -0
  94. package/dist/collection/components/store/translationStore/strings.french.js +9 -0
  95. package/dist/collection/components/store/translationStore/strings.german.js +9 -0
  96. package/dist/collection/components/store/translationStore/strings.hebrew.js +9 -0
  97. package/dist/collection/components/store/translationStore/strings.indonesian.js +9 -0
  98. package/dist/collection/components/store/translationStore/strings.italian.js +9 -0
  99. package/dist/collection/components/store/translationStore/strings.japanese.js +9 -0
  100. package/dist/collection/components/store/translationStore/strings.korean.js +9 -0
  101. package/dist/collection/components/store/translationStore/strings.norwegian.js +9 -0
  102. package/dist/collection/components/store/translationStore/strings.polish.js +9 -0
  103. package/dist/collection/components/store/translationStore/strings.portuguese.js +9 -0
  104. package/dist/collection/components/store/translationStore/strings.russian.js +9 -0
  105. package/dist/collection/components/store/translationStore/strings.spanish.js +9 -0
  106. package/dist/collection/components/store/translationStore/strings.swedish.js +9 -0
  107. package/dist/collection/components/store/translationStore/strings.turkish.js +9 -0
  108. package/dist/collection/components/store/translationStore/strings.vietnamese.js +9 -0
  109. package/dist/collection/components/stripe/zonos-address/zonos-address.js +6 -0
  110. package/dist/collection/components/stripe/zonos-link-authentication/zonos-link-authentication.js +84 -3
  111. package/dist/collection/components/stripe/zonos-payment/zonos-payment.js +3 -1
  112. package/dist/collection/components/utils/api/getCheckoutSession.js +1 -1
  113. package/dist/collection/components/utils/api/placeTestOrder.js +40 -0
  114. package/dist/collection/components/utils/checkout/getIsStagingMode.js +1 -0
  115. package/dist/collection/components/utils/checkout/getIsTestMode.js +5 -1
  116. package/dist/collection/components/utils/handleFetch.js +22 -1
  117. package/dist/collection/components/utils/validateEmailValue.js +4 -0
  118. package/dist/collection/scripts/_getTempCartById.js +2 -2
  119. package/dist/collection/scripts/_getWithTestPublicCredential.js +5 -2
  120. package/dist/collection/scripts/cart/_getIsValidCartId.js +11 -0
  121. package/dist/collection/types/checkout/api/PlaceTestOrder.js +1 -0
  122. package/dist/collection/types/generated/graphql.internal.types.js +13 -1
  123. package/dist/collection/types/index.js +1 -0
  124. package/dist/esm/{CheckoutConfig-262008fe.js → CheckoutConfig-573bd959.js} +13 -3
  125. package/dist/esm/{cart-acba54d0.js → cart-887f7d66.js} +296 -41
  126. package/dist/esm/{createCustomEvent-31a792d3.js → createCustomEvent-58159025.js} +1 -3
  127. package/dist/esm/{getBorderRadius-4aca63d4.js → getBorderRadius-b32d4218.js} +1 -1
  128. package/dist/esm/{handleFetch-badf4543.js → handleFetch-b4633675.js} +29 -2
  129. package/dist/esm/{index-986b5ff2.js → index-d82f06f2.js} +209 -157
  130. package/dist/esm/index.js +13 -12
  131. package/dist/esm/{isDarkColor-4915739f.js → isDarkColor-10f38df6.js} +1 -1
  132. package/dist/esm/loader.js +3 -3
  133. package/dist/esm/{paypal-3401f757.js → paypal-6fd5749b.js} +4 -4
  134. package/dist/esm/zonos-address_8.entry.js +96 -18
  135. package/dist/esm/zonos-badge.entry.js +2 -2
  136. package/dist/esm/zonos-banner.entry.js +2 -2
  137. package/dist/esm/zonos-button_3.entry.js +4 -4
  138. package/dist/esm/zonos-card.entry.js +3 -3
  139. package/dist/esm/zonos-cart-items_13.entry.js +126 -28
  140. package/dist/esm/zonos-checkout.entry.js +45 -25
  141. package/dist/esm/zonos-collapse.entry.js +2 -2
  142. package/dist/esm/zonos-component.entry.js +1 -1
  143. package/dist/esm/zonos-controller.entry.js +31 -10
  144. package/dist/esm/zonos-country-flag.entry.js +6 -6
  145. package/dist/esm/zonos-country-select_4.entry.js +6 -6
  146. package/dist/esm/zonos-elements.js +4 -4
  147. package/dist/esm/{zonos-notification_3.entry.js → zonos-empty-state-payment_4.entry.js} +86 -9
  148. package/dist/esm/zonos-hello-dialog.entry.js +7 -7
  149. package/dist/esm/zonos-hello.entry.js +6 -6
  150. package/dist/esm/zonos-input.entry.js +3 -3
  151. package/dist/esm/zonos-language-select_2.entry.js +6 -6
  152. package/dist/esm/zonos-link.entry.js +1 -1
  153. package/dist/esm/zonos-logo.entry.js +2 -2
  154. package/dist/esm/zonos-shipping-rich-radio.entry.js +3 -3
  155. package/dist/esm/zonos-text.entry.js +2 -2
  156. package/dist/esm/zonos-toggle.entry.js +2 -2
  157. package/dist/esm/zonos-tooltip.entry.js +1 -1
  158. package/dist/esm/zonos-v-stack.entry.js +2 -2
  159. package/dist/esm/{zonosStore-708637e7.js → zonosStore-44efd080.js} +1 -1
  160. package/dist/esm-es5/CheckoutConfig-573bd959.js +1 -0
  161. package/dist/esm-es5/cart-887f7d66.js +1 -0
  162. package/dist/esm-es5/createCustomEvent-58159025.js +1 -0
  163. package/dist/esm-es5/{getBorderRadius-4aca63d4.js → getBorderRadius-b32d4218.js} +1 -1
  164. package/dist/esm-es5/handleFetch-b4633675.js +1 -0
  165. package/dist/esm-es5/index-d82f06f2.js +2 -0
  166. package/dist/esm-es5/index.js +1 -1
  167. package/dist/esm-es5/{isDarkColor-4915739f.js → isDarkColor-10f38df6.js} +1 -1
  168. package/dist/esm-es5/loader.js +1 -1
  169. package/dist/esm-es5/{paypal-3401f757.js → paypal-6fd5749b.js} +1 -1
  170. package/dist/esm-es5/zonos-address_8.entry.js +1 -1
  171. package/dist/esm-es5/zonos-badge.entry.js +1 -1
  172. package/dist/esm-es5/zonos-banner.entry.js +1 -1
  173. package/dist/esm-es5/zonos-button_3.entry.js +1 -1
  174. package/dist/esm-es5/zonos-card.entry.js +1 -1
  175. package/dist/esm-es5/zonos-cart-items_13.entry.js +1 -1
  176. package/dist/esm-es5/zonos-checkout.entry.js +1 -1
  177. package/dist/esm-es5/zonos-collapse.entry.js +1 -1
  178. package/dist/esm-es5/zonos-component.entry.js +1 -1
  179. package/dist/esm-es5/zonos-controller.entry.js +1 -1
  180. package/dist/esm-es5/zonos-country-flag.entry.js +1 -1
  181. package/dist/esm-es5/zonos-country-select_4.entry.js +1 -1
  182. package/dist/esm-es5/zonos-elements.js +1 -1
  183. package/dist/esm-es5/zonos-empty-state-payment_4.entry.js +1 -0
  184. package/dist/esm-es5/zonos-hello-dialog.entry.js +1 -1
  185. package/dist/esm-es5/zonos-hello.entry.js +1 -1
  186. package/dist/esm-es5/zonos-input.entry.js +1 -1
  187. package/dist/esm-es5/zonos-language-select_2.entry.js +1 -1
  188. package/dist/esm-es5/zonos-link.entry.js +1 -1
  189. package/dist/esm-es5/zonos-logo.entry.js +1 -1
  190. package/dist/esm-es5/zonos-shipping-rich-radio.entry.js +1 -1
  191. package/dist/esm-es5/zonos-text.entry.js +1 -1
  192. package/dist/esm-es5/zonos-toggle.entry.js +1 -1
  193. package/dist/esm-es5/zonos-tooltip.entry.js +1 -1
  194. package/dist/esm-es5/zonos-v-stack.entry.js +1 -1
  195. package/dist/esm-es5/{zonosStore-708637e7.js → zonosStore-44efd080.js} +1 -1
  196. package/dist/scripts/index.d.ts +61 -0
  197. package/dist/scripts/index.js +1 -1
  198. package/dist/scripts/loadZonos.js +1 -1
  199. package/dist/scripts/zonos.js +1 -1
  200. package/dist/types/components/checkout/zonos-checkout/zonos-checkout-finish/zonos-checkout-finish.d.ts +1 -0
  201. package/dist/types/components/checkout/zonos-checkout/zonos-checkout-payment/zonos-checkout-payment.d.ts +18 -0
  202. package/dist/types/components/checkout/zonos-checkout/zonos-checkout-payment/zonos-empty-state-payment/zonos-empty-state-payment.d.ts +13 -0
  203. package/dist/types/components/checkout/zonos-checkout/zonos-checkout.d.ts +10 -0
  204. package/dist/types/components/common/zonos-stripe-input/zonos-stripe-input.d.ts +7 -3
  205. package/dist/types/components/main/zonos-controller.d.ts +1 -0
  206. package/dist/types/components/store/checkout/cart.d.ts +5 -0
  207. package/dist/types/components/store/checkout/stripe.d.ts +8 -2
  208. package/dist/types/components/store/translationStore/strings.arabic.d.ts +9 -0
  209. package/dist/types/components/store/translationStore/strings.base.d.ts +9 -0
  210. package/dist/types/components/store/translationStore/strings.chinese.d.ts +9 -0
  211. package/dist/types/components/store/translationStore/strings.danish.d.ts +9 -0
  212. package/dist/types/components/store/translationStore/strings.dutch.d.ts +9 -0
  213. package/dist/types/components/store/translationStore/strings.french.d.ts +9 -0
  214. package/dist/types/components/store/translationStore/strings.german.d.ts +9 -0
  215. package/dist/types/components/store/translationStore/strings.hebrew.d.ts +9 -0
  216. package/dist/types/components/store/translationStore/strings.indonesian.d.ts +9 -0
  217. package/dist/types/components/store/translationStore/strings.italian.d.ts +9 -0
  218. package/dist/types/components/store/translationStore/strings.japanese.d.ts +9 -0
  219. package/dist/types/components/store/translationStore/strings.korean.d.ts +9 -0
  220. package/dist/types/components/store/translationStore/strings.norwegian.d.ts +9 -0
  221. package/dist/types/components/store/translationStore/strings.polish.d.ts +9 -0
  222. package/dist/types/components/store/translationStore/strings.portuguese.d.ts +9 -0
  223. package/dist/types/components/store/translationStore/strings.russian.d.ts +9 -0
  224. package/dist/types/components/store/translationStore/strings.spanish.d.ts +9 -0
  225. package/dist/types/components/store/translationStore/strings.swedish.d.ts +9 -0
  226. package/dist/types/components/store/translationStore/strings.turkish.d.ts +9 -0
  227. package/dist/types/components/store/translationStore/strings.vietnamese.d.ts +9 -0
  228. package/dist/types/components/stripe/zonos-link-authentication/zonos-link-authentication.d.ts +6 -0
  229. package/dist/types/components/utils/api/getLocaleMessages.d.ts +1 -1
  230. package/dist/types/components/utils/api/placeTestOrder.d.ts +7 -0
  231. package/dist/types/components/utils/checkout/getIsStagingMode.d.ts +1 -0
  232. package/dist/types/components/utils/checkout/getIsTestMode.d.ts +1 -1
  233. package/dist/types/components/utils/validateEmailValue.d.ts +1 -0
  234. package/dist/types/components.d.ts +61 -0
  235. package/dist/types/types/checkout/api/CheckoutSession.d.ts +8 -2
  236. package/dist/types/types/checkout/api/PlaceTestOrder.d.ts +7 -0
  237. package/dist/types/types/generated/graphql.frontend.types.d.ts +1 -1
  238. package/dist/types/types/generated/graphql.frontend.types.ts +1 -1
  239. package/dist/types/types/generated/graphql.internal.types.d.ts +87 -12
  240. package/dist/types/types/generated/graphql.internal.types.ts +104 -14
  241. package/dist/types/types/index.d.ts +1 -0
  242. package/dist/zonos-elements/assets/RemoveIcon.svg +1 -1
  243. package/dist/zonos-elements/index.esm.js +1 -1
  244. package/dist/zonos-elements/{p-d3867033.entry.js → p-0028d158.entry.js} +1 -1
  245. package/dist/zonos-elements/{p-54058b57.entry.js → p-05013308.entry.js} +1 -1
  246. package/dist/zonos-elements/{p-9e84f647.system.entry.js → p-0e9826d2.system.entry.js} +1 -1
  247. package/dist/zonos-elements/{p-c0164a3c.system.js → p-12546668.system.js} +1 -1
  248. package/dist/zonos-elements/p-18e5b741.system.js +1 -0
  249. package/dist/zonos-elements/{p-f2d07062.entry.js → p-1d466ac6.entry.js} +1 -1
  250. package/dist/zonos-elements/{p-654fc23d.system.entry.js → p-2e6265cc.system.entry.js} +1 -1
  251. package/dist/zonos-elements/{p-36dfc7ac.system.js → p-32912caf.system.js} +1 -1
  252. package/dist/zonos-elements/{p-fc4658a6.entry.js → p-36f97fd9.entry.js} +1 -1
  253. package/dist/zonos-elements/{p-8ac02349.system.entry.js → p-3a213429.system.entry.js} +1 -1
  254. package/dist/zonos-elements/{p-e6554a6f.system.entry.js → p-3aa4841a.system.entry.js} +1 -1
  255. package/dist/zonos-elements/{p-2ab5e362.system.entry.js → p-3bd17598.system.entry.js} +1 -1
  256. package/dist/zonos-elements/{p-a13d5957.system.entry.js → p-3d221556.system.entry.js} +1 -1
  257. package/dist/zonos-elements/p-3f282167.system.entry.js +1 -0
  258. package/dist/zonos-elements/{p-381874b0.system.entry.js → p-41e26cc4.system.entry.js} +1 -1
  259. package/dist/zonos-elements/p-46f6e5e9.system.js +1 -0
  260. package/dist/zonos-elements/p-49b8760c.system.entry.js +1 -0
  261. package/dist/zonos-elements/p-4caffd96.system.js +2 -0
  262. package/dist/zonos-elements/{p-0ab29580.entry.js → p-4d353108.entry.js} +1 -1
  263. package/dist/zonos-elements/p-595f5dd2.js +1 -0
  264. package/dist/zonos-elements/{p-a4f045d4.js → p-5e4b6b77.js} +1 -1
  265. package/dist/zonos-elements/{p-4c7f0417.entry.js → p-5e76c269.entry.js} +1 -1
  266. package/dist/zonos-elements/{p-2761ad55.system.entry.js → p-619c07c6.system.entry.js} +1 -1
  267. package/dist/zonos-elements/{p-9d7a860c.entry.js → p-69f84611.entry.js} +1 -1
  268. package/dist/zonos-elements/{p-766dd01f.js → p-6c578d26.js} +1 -1
  269. package/dist/zonos-elements/{p-28295342.entry.js → p-709c7e9e.entry.js} +1 -1
  270. package/dist/zonos-elements/{p-0197a9bf.system.entry.js → p-7140439f.system.entry.js} +1 -1
  271. package/dist/zonos-elements/{p-df9c0bfa.system.entry.js → p-794b2d24.system.entry.js} +1 -1
  272. package/dist/zonos-elements/{p-44dd4269.entry.js → p-7f288336.entry.js} +1 -1
  273. package/dist/zonos-elements/{p-78e4f877.system.entry.js → p-81084be5.system.entry.js} +1 -1
  274. package/dist/zonos-elements/p-81a5dd5c.js +1 -0
  275. package/dist/zonos-elements/{p-0b5c9f89.system.js → p-826b5d0c.system.js} +1 -1
  276. package/dist/zonos-elements/{p-33e1d25e.system.entry.js → p-86e825f0.system.entry.js} +1 -1
  277. package/dist/zonos-elements/p-896dca32.entry.js +1 -0
  278. package/dist/zonos-elements/{p-d9511c4a.entry.js → p-9024f5a1.entry.js} +1 -1
  279. package/dist/zonos-elements/{p-0b5f4ca7.system.entry.js → p-91fc6c24.system.entry.js} +1 -1
  280. package/dist/zonos-elements/p-98db517b.entry.js +1 -0
  281. package/dist/zonos-elements/p-9ae29c27.system.entry.js +1 -0
  282. package/dist/zonos-elements/{p-a2bce31d.system.entry.js → p-9cf018c8.system.entry.js} +1 -1
  283. package/dist/zonos-elements/p-ab68ad11.js +2 -0
  284. package/dist/zonos-elements/{p-4b685549.js → p-b0616716.js} +1 -1
  285. package/dist/zonos-elements/p-b0ced00a.system.js +1 -0
  286. package/dist/zonos-elements/{p-1e3ea4ae.entry.js → p-b12fbc07.entry.js} +1 -1
  287. package/dist/zonos-elements/p-b18c4d1d.js +1 -0
  288. package/dist/zonos-elements/{p-dba6147b.system.entry.js → p-b2292b70.system.entry.js} +1 -1
  289. package/dist/zonos-elements/{p-545c05ce.entry.js → p-b288c2ed.entry.js} +1 -1
  290. package/dist/zonos-elements/p-b3882a73.system.js +1 -0
  291. package/dist/zonos-elements/p-b4823b13.entry.js +1 -0
  292. package/dist/zonos-elements/{p-9306a835.entry.js → p-b5c360af.entry.js} +1 -1
  293. package/dist/zonos-elements/{p-2cfc00b8.system.entry.js → p-b6bbdb59.system.entry.js} +1 -1
  294. package/dist/zonos-elements/{p-0db28495.system.entry.js → p-b7a40db9.system.entry.js} +1 -1
  295. package/dist/zonos-elements/p-bf37ccc7.system.js +1 -0
  296. package/dist/zonos-elements/{p-21b538ea.system.js → p-c015be06.system.js} +1 -1
  297. package/dist/zonos-elements/{p-39cac2c1.entry.js → p-cbd5d932.entry.js} +1 -1
  298. package/dist/zonos-elements/{p-7c5c0a85.entry.js → p-cdfca133.entry.js} +1 -1
  299. package/dist/zonos-elements/{p-675f60b4.entry.js → p-d2f2c685.entry.js} +1 -1
  300. package/dist/zonos-elements/{p-3f991022.entry.js → p-db3f381d.entry.js} +1 -1
  301. package/dist/zonos-elements/{p-9dec2b74.entry.js → p-de221545.entry.js} +1 -1
  302. package/dist/zonos-elements/{p-b0174a8f.js → p-e02fd9ae.js} +1 -1
  303. package/dist/zonos-elements/p-e3abf96c.system.entry.js +1 -0
  304. package/dist/zonos-elements/p-e4d509be.entry.js +1 -0
  305. package/dist/zonos-elements/{p-ab6973a5.entry.js → p-e8926f59.entry.js} +1 -1
  306. package/dist/zonos-elements/{p-6a8862a6.system.entry.js → p-e8c70c7d.system.entry.js} +1 -1
  307. package/dist/zonos-elements/p-f0c8150e.js +1 -0
  308. package/dist/zonos-elements/p-f824a75f.entry.js +1 -0
  309. package/dist/zonos-elements/{p-d5a3851d.system.entry.js → p-fc4ebe6b.system.entry.js} +1 -1
  310. package/dist/zonos-elements/p-fdb592a8.system.js +1 -0
  311. package/dist/zonos-elements/p-fec7bdd4.system.entry.js +1 -0
  312. package/dist/zonos-elements/zonos-elements.esm.js +1 -1
  313. package/dist/zonos-elements/zonos-elements.js +1 -1
  314. package/package.json +9 -8
  315. package/dist/esm-es5/CheckoutConfig-262008fe.js +0 -1
  316. package/dist/esm-es5/cart-acba54d0.js +0 -1
  317. package/dist/esm-es5/createCustomEvent-31a792d3.js +0 -1
  318. package/dist/esm-es5/handleFetch-badf4543.js +0 -1
  319. package/dist/esm-es5/index-986b5ff2.js +0 -2
  320. package/dist/esm-es5/zonos-notification_3.entry.js +0 -1
  321. package/dist/zonos-elements/p-1198c874.entry.js +0 -1
  322. package/dist/zonos-elements/p-1460f917.js +0 -1
  323. package/dist/zonos-elements/p-302f5d25.entry.js +0 -1
  324. package/dist/zonos-elements/p-386325ae.system.js +0 -1
  325. package/dist/zonos-elements/p-38d0c496.system.entry.js +0 -1
  326. package/dist/zonos-elements/p-64372f93.system.js +0 -1
  327. package/dist/zonos-elements/p-680d3694.js +0 -2
  328. package/dist/zonos-elements/p-7b999a40.js +0 -1
  329. package/dist/zonos-elements/p-7c643376.system.js +0 -1
  330. package/dist/zonos-elements/p-8e30228d.system.entry.js +0 -1
  331. package/dist/zonos-elements/p-8f26cc7e.entry.js +0 -1
  332. package/dist/zonos-elements/p-9da2d116.entry.js +0 -1
  333. package/dist/zonos-elements/p-a08ea336.js +0 -1
  334. package/dist/zonos-elements/p-a5b294d7.js +0 -1
  335. package/dist/zonos-elements/p-b2ea7adb.entry.js +0 -1
  336. package/dist/zonos-elements/p-b50667b6.system.js +0 -2
  337. package/dist/zonos-elements/p-bfcfd29b.system.js +0 -1
  338. package/dist/zonos-elements/p-c437d76c.system.js +0 -1
  339. package/dist/zonos-elements/p-d1afd314.system.entry.js +0 -1
  340. package/dist/zonos-elements/p-e9964a5a.system.js +0 -1
  341. package/dist/zonos-elements/p-f9aef1fc.system.entry.js +0 -1
  342. package/dist/zonos-elements/p-fa538a74.system.entry.js +0 -1
@@ -1,14 +1,14 @@
1
- import { r as registerInstance, a as getAssetPath, h, H as Host, F as Fragment, c as createEvent, d as getElement } from './index-986b5ff2.js';
2
- import { e as cartStore, J as currencyFormat, q as translate, K as cartStoreHasOneEligibleItem, L as stripeStoreApplyPromoCode, M as stripeStoreRemovePromoCode, f as stripeStore, A as stripeStoreReset, d as stripeStoreRetrievePayment, t as trackConversionEvent, N as stripeStoreResetPromoCode, O as stripeStoreMessageBasedOnStatus, l as localizationStore, P as stripeStoreTranslateAddressToLatin, Q as cartStoreUpdateSelectedShippingOption, R as cartStoreGetShippingTransitInfo, S as sortServiceLevelOptionsByAmount } from './cart-acba54d0.js';
1
+ import { r as registerInstance, a as getAssetPath, h, H as Host, F as Fragment, c as createEvent, d as getElement } from './index-d82f06f2.js';
2
+ import { e as cartStore, J as currencyFormat, q as translate, K as cartStoreHasOneEligibleItem, L as stripeStoreApplyPromoCode, M as stripeStoreRemovePromoCode, f as stripeStore, A as stripeStoreReset, d as stripeStoreRetrievePayment, t as trackConversionEvent, N as stripeStoreResetPromoCode, O as stripeStoreMessageBasedOnStatus, l as localizationStore, w as cartStoreNextStep, P as stripeStoreTranslateAddressToLatin, Q as cartStoreUpdateSelectedShippingOption, R as cartStoreGetShippingTransitInfo, S as sortServiceLevelOptionsByAmount } from './cart-887f7d66.js';
3
3
  import { c as classes } from './classes-0d95c529.js';
4
- import { s as submitGtag, b as paypalStore, c as paypalStoreReset, i as isContrastColor } from './paypal-3401f757.js';
5
- import { z as zonosStore, g as getZonosStoreTheme, d as zonosStoreFontFamily } from './zonosStore-708637e7.js';
6
- import { c as createCustomEvent, g as getIsTestMode } from './createCustomEvent-31a792d3.js';
7
- import { g as getBorderRadius } from './getBorderRadius-4aca63d4.js';
8
- import { h as handleFetch, l as log, s as sendErrorLog, j as jsonParse, b as allLogs } from './handleFetch-badf4543.js';
4
+ import { s as submitGtag, c as paypalStoreReset, b as paypalStore, i as isContrastColor } from './paypal-6fd5749b.js';
5
+ import { z as zonosStore, g as getZonosStoreTheme, d as zonosStoreFontFamily } from './zonosStore-44efd080.js';
6
+ import { h as handleFetch, l as log, s as sendErrorLog, j as jsonParse, g as getIsTestMode, d as allLogs, b as logError, a as getIsStagingMode } from './handleFetch-b4633675.js';
7
+ import { c as createCustomEvent } from './createCustomEvent-58159025.js';
8
+ import { g as getBorderRadius } from './getBorderRadius-b32d4218.js';
9
9
  import { i as isCheckoutMobile } from './isCheckoutMobile-8846dccb.js';
10
10
  import { l as languages } from './ILanguage-cd6acb72.js';
11
- import { i as isDarkColor, t as tinycolor } from './isDarkColor-4915739f.js';
11
+ import { i as isDarkColor, t as tinycolor } from './isDarkColor-10f38df6.js';
12
12
  import { i as isColorVariable } from './isColorVariable-0a94004f.js';
13
13
  import { c as containsNonLatinChars } from './containsNonLatinChars-2d8810c3.js';
14
14
  import { c as countryRequireTaxId, s as shipToTaxIdLabels } from './TaxId-915ef042.js';
@@ -1525,6 +1525,20 @@ const ZonosCheckoutFinish = class {
1525
1525
  stripeStoreReset();
1526
1526
  cartStore.checkoutSessionId = null;
1527
1527
  };
1528
+ this.checkStagingOrderStatus = async () => {
1529
+ this.notificationType = 'success';
1530
+ this.notificationTitle = translate("You're all set!");
1531
+ this.notificationMessages =
1532
+ stripeStoreMessageBasedOnStatus('succeeded').messages;
1533
+ // override title if notification type is success
1534
+ this.useOverrideSuccessNotification();
1535
+ await this.handleSuccessBehavior();
1536
+ // reset promo when checkout is finished
1537
+ stripeStoreResetPromoCode();
1538
+ stripeStoreReset();
1539
+ paypalStoreReset();
1540
+ cartStore.checkoutSessionId = null;
1541
+ };
1528
1542
  this.checkPaypalPaymentStatus = async () => {
1529
1543
  // render error message if there's an error
1530
1544
  if (paypalStore.paypalErrorMessage) {
@@ -1591,7 +1605,10 @@ const ZonosCheckoutFinish = class {
1591
1605
  this.isLoading = false;
1592
1606
  return;
1593
1607
  }
1594
- if (paypalStore.orderIdCreated) {
1608
+ if (cartStore.isStagingMode) {
1609
+ void this.checkStagingOrderStatus();
1610
+ }
1611
+ else if (paypalStore.orderIdCreated) {
1595
1612
  void this.checkPaypalPaymentStatus();
1596
1613
  }
1597
1614
  else {
@@ -1600,17 +1617,22 @@ const ZonosCheckoutFinish = class {
1600
1617
  }
1601
1618
  render() {
1602
1619
  const isTestMode = getIsTestMode();
1603
- return (h(Host, { key: '7e1b8c53a085ae60d8189aef087a9c458c3dccd0', class: "zonos--checkout-finish zonos--elements", style: {
1620
+ return (h(Host, { key: '6ad050e91df2b56c55e142cc69d0b582c0c8469a', class: "zonos--checkout-finish zonos--elements", style: {
1604
1621
  '--zonos--border-radius': getBorderRadius({
1605
1622
  overrideBorderStyle: this.borderRadius,
1606
1623
  }),
1607
- } }, !this.isLoading && (h("div", { key: 'b31bed34ca67255cdc6ef6b546f5d6a880e4b309', class: "zonos--finish-details" }, h("div", { key: 'e3cb21607b8f1256b3096fe4f21a806a74174f66', class: "zonos--group" }, this.notificationType === 'success' ? (h("zonos-icon", { "aria-label": "Order success", content: SuccessIcon, iconColor: 'blue-800', size: 50 })) : (h("zonos-icon", { "aria-label": "Order failed", content: RemoveIcon, iconColor: 'red-800', size: 50 })), h("zonos-text", { key: 'fac1d2134f1c032cefeb9d36c5c4677767ed0972', class: "zonos--title", type: "semiBoldSubheader" }, this.notificationTitle), h("zonos-text", { key: '94b8da1ca6a391295c22d285e65530f5dfe97a41', class: "zonos--subtitle", textColor: "gray-600" }, this.notificationMessages.map(message => (h(Fragment, null, message, h("br", null))))), this.shouldRenderCloseButtonForRedirectBehavior() && (h("zonos-button", { key: '4ebf2bb81ceb0d27b4fd582400606b238a3dfbae',
1624
+ } }, !this.isLoading && (h("div", { key: '8e47016dc83cbe1af79f384285c606fcb737e475', class: "zonos--finish-details" }, h("div", { key: 'd1c14e8db7aa70d04b77b10bb0d8b1e3de5529e3', class: "zonos--group" }, this.notificationType === 'success' ? (h("zonos-icon", { "aria-label": "Order success", content: SuccessIcon, iconColor: 'blue-800', size: 50 })) : (h("zonos-icon", { "aria-label": "Order failed", content: RemoveIcon, iconColor: 'red-800', size: 50 })), h("zonos-text", { key: 'd26717fe5d844f2fe6a87b05a566ef0da2d740f7', class: "zonos--title", type: "semiBoldSubheader" }, this.notificationTitle), h("zonos-text", { key: '7845c4ff7872884d8e5b8b275eb8a76efa855e52', class: "zonos--subtitle", textColor: "gray-600" }, this.notificationMessages.map(message => (h(Fragment, null, message, h("br", null))))), this.shouldRenderCloseButtonForRedirectBehavior() && (h("zonos-button", { key: '891901ad2c4fb7c2025ad47417425cd239e36cf1',
1608
1625
  // Only show loading spinner if it's not an error notification
1609
1626
  loading: this.isWaitingToRedirect &&
1610
1627
  this.notificationType !== 'error', onClick: () => this.closeClickHandler(), size: "md", variant: "primary" }, translate('Close'))), !window.Zonos.isLegacyCheckout &&
1611
- this.shouldRenderKeepShoppingButton() && (h("zonos-button", { key: '6548724f163ad59fc3cb502c24d82ae7585c6b7f', onClick: () => this.closeClickHandler(), size: "md", variant: "primary" }, this.notificationActionText))), isTestMode &&
1628
+ this.shouldRenderKeepShoppingButton() && (h("zonos-button", { key: '550bd94f93b842d71c23bd158362b711797dd4a1', onClick: () => this.closeClickHandler(), size: "md", variant: "primary" }, this.notificationActionText))), isTestMode &&
1612
1629
  cartStore.step === 'finish' &&
1613
- this.notificationType === 'success' && (h("div", { key: 'f9aeb5d59dc4b0f163868e5a2358a69a0884bb56', class: "zonos--finish-button-wrapper" }, h("zonos-button", { key: '98ae907d33624e54f84f88519abacd1ea178554c', backgroundColor: "gray-0", buttonColor: "gray-1000", onClick: () => this.closeClickHandler(), size: "lg", variant: "outline" }, "New test cart"), h("zonos-button", { key: '506eeb9eabe16fed59b98b9eef49552542272233', onClick: () => this.redirectToUrl(`/orders/all`), size: "lg", variant: "primary" }, "View order in Dashboard")))))));
1630
+ this.notificationType === 'success' && (h("div", { key: '8fdaa205f4517e0a9a6c5482e80d6dbccba6a585', class: "zonos--finish-button-wrapper" }, h("zonos-button", { key: '41b524fc8dea752a6f4745191970ac665e7b9fa8', backgroundColor: "gray-0", buttonColor: "gray-1000", onClick: () => this.closeClickHandler(), size: "lg", variant: "outline" }, "New test cart"), h("zonos-button", { key: '70297a07cc8d3c11545776d600d8a1a2a3c2a744', onClick: () => {
1631
+ const isZonosDashboard = window.location.hostname.includes('dashboard.zonos.com');
1632
+ this.redirectToUrl(isZonosDashboard
1633
+ ? '/orders/all'
1634
+ : 'https://dashboard.zonos.com/orders/all');
1635
+ }, size: "lg", variant: "primary" }, "View order in Dashboard")))))));
1614
1636
  }
1615
1637
  static get assetsDirs() { return ["assets"]; }
1616
1638
  };
@@ -1670,6 +1692,44 @@ const ZonosCheckoutFooter = class {
1670
1692
  };
1671
1693
  ZonosCheckoutFooter.style = ZonosCheckoutFooterStyle0;
1672
1694
 
1695
+ const placeTestOrder = async () => {
1696
+ var _a, _b;
1697
+ const shipToPartyId = (_a = cartStore.partiesData.find(party => party.type === 'DESTINATION')) === null || _a === void 0 ? void 0 : _a.id;
1698
+ const billToPartyId = (_b = cartStore.partiesData.find(party => party.type === 'PAYOR')) === null || _b === void 0 ? void 0 : _b.id;
1699
+ const checkoutSessionId = cartStore.checkoutSessionId;
1700
+ if (!checkoutSessionId || !billToPartyId || !shipToPartyId) {
1701
+ logError('Missing required data', {
1702
+ billToPartyId,
1703
+ checkoutSessionId,
1704
+ shipToPartyId,
1705
+ });
1706
+ return {
1707
+ errors: ['Missing required data'],
1708
+ json: null,
1709
+ };
1710
+ }
1711
+ const payload = {
1712
+ billToPartyId,
1713
+ checkoutSessionId,
1714
+ shipToPartyId,
1715
+ };
1716
+ const { errors, json } = await handleFetch('/api/zonos-elements/place-test-order', {
1717
+ body: payload,
1718
+ method: 'POST',
1719
+ });
1720
+ if (errors.length || !json) {
1721
+ logError('Error occurs when placing test order', errors);
1722
+ return {
1723
+ errors: errors.map(error => error.message),
1724
+ json: null,
1725
+ };
1726
+ }
1727
+ return {
1728
+ errors: [],
1729
+ json,
1730
+ };
1731
+ };
1732
+
1673
1733
  const CheckmarkLineIcon = `<svg color="var(--zonos-elements-gray-1000)" xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none" viewBox="0 0 24 24"><path fill="var(--zonos-elements-gray-1000)" d="M15.342 10.21a.75.75 0 0 0-1.184-.92l-2.978 3.829-1.4-1.4a.75.75 0 1 0-1.06 1.061l1.8 1.8a1 1 0 0 0 1.496-.093l3.326-4.277Z"/><path fill="var(--zonos-elements-gray-1000)" fill-rule="evenodd" d="M12 4a8 8 0 1 0 0 16 8 8 0 0 0 0-16Zm-6.5 8a6.5 6.5 0 1 1 13 0 6.5 6.5 0 0 1-13 0Z" clip-rule="evenodd"/></svg>`;
1674
1734
 
1675
1735
  const RemoveLineIcon = `<svg color="var(--zonos-elements-gray-1000)" xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none" viewBox="0 0 24 24"><path fill="var(--zonos-elements-gray-1000)" d="M14.475 10.586a.75.75 0 1 0-1.06-1.06L12 10.938l-1.414-1.414a.75.75 0 0 0-1.06 1.06L10.938 12l-1.414 1.414a.75.75 0 1 0 1.06 1.06L12 13.062l1.414 1.414a.75.75 0 0 0 1.06-1.06L13.062 12l1.414-1.414Z"/><path fill="var(--zonos-elements-gray-1000)" fill-rule="evenodd" d="M12 4a8 8 0 1 0 0 16 8 8 0 0 0 0-16Zm-6.5 8a6.5 6.5 0 1 1 13 0 6.5 6.5 0 0 1-13 0Z" clip-rule="evenodd"/></svg>`;
@@ -1707,11 +1767,31 @@ const ZonosCheckoutPayment = class {
1707
1767
  type: 'success',
1708
1768
  });
1709
1769
  };
1770
+ this.placeTestOrder = async () => {
1771
+ this.internalContinueLoading = true;
1772
+ const { errors } = await placeTestOrder();
1773
+ if (errors.length) {
1774
+ this.stagingOrderCreateErrorMessage =
1775
+ errors[0] || 'Failed to create staging order. Please try again.';
1776
+ this.internalContinueLoading = false;
1777
+ return;
1778
+ }
1779
+ this.internalContinueLoading = false;
1780
+ // continue to the next step
1781
+ cartStoreNextStep();
1782
+ };
1710
1783
  this.submitBtnType = undefined;
1711
1784
  this.continueLoading = false;
1712
1785
  this.submitBtnColor = undefined;
1786
+ this.isMobile = false;
1787
+ this.overridePrimaryColor = undefined;
1713
1788
  this.showErrorBanner = false;
1714
1789
  this.hasStripePaymentError = false;
1790
+ this.stagingOrderCreateErrorMessage = '';
1791
+ this.internalContinueLoading = this.continueLoading;
1792
+ }
1793
+ continueLoadingWatcher() {
1794
+ this.internalContinueLoading = this.continueLoading;
1715
1795
  }
1716
1796
  stripePaymentErrorWatcher() {
1717
1797
  if (this.hasStripePaymentError) {
@@ -1735,25 +1815,43 @@ const ZonosCheckoutPayment = class {
1735
1815
  this.showErrorBanner = !this.handleValidate();
1736
1816
  }
1737
1817
  const isTestMode = getIsTestMode();
1818
+ const isStagingMode = cartStore.isStagingMode || getIsStagingMode();
1738
1819
  const isPaypalTabSelected = ((_a = stripeStore.stripePaymentEventData) === null || _a === void 0 ? void 0 : _a.value.type) === 'external_paypal';
1739
- return (h(Host, { class: "zonos--checkout-payment zonos--elements" }, h("div", { class: "zonos--group" }, h("zonos-text", { class: "zonos--title", type: "semiBoldSubheader" }, translate('Payment method')), this.showErrorBanner && (h("zonos-banner", { class: "zonos--error-banner", intent: "error" }, translate('Missing required fields. Make sure all fields are completed.'))), this.hasStripePaymentError && (h("zonos-banner", { class: "zonos--payment-error-banner", intent: "error" }, stripeStore.customErrorMessage ||
1740
- translate("We couldn't complete your payment. Please verify the payment details and try again."))), paypalStore.paypalErrorMessage && (h("zonos-banner", { class: "zonos--payment-error-banner", intent: "error" }, paypalStore.paypalErrorMessage)), h("zonos-payment", null), h("div", { class: "zonos--group-btn" }, !isPaypalTabSelected && (h("zonos-button", { backgroundColor: this.submitBtnColor, loading: this.continueLoading, onClick: () => {
1741
- this.continueClickHandler();
1742
- }, size: "lg",
1743
- // use primary type when on mobile mode
1744
- variant: this.submitBtnType }, translate('Pay [orderTotal]', {
1745
- orderTotal: renderCheckoutCurrency({
1746
- amount: cartStore.total,
1747
- isForeign: true,
1748
- }),
1749
- }))), h("zonos-paypal-payment", { onPaypalSessionDone: ({ detail: { orderId } }) => {
1750
- this.paypalSessionDone.emit(orderId);
1751
- }, onPaypalSessionFail: () => this.paypalSessionFailed.emit(), style: {
1752
- display: isPaypalTabSelected ? 'block' : 'none',
1753
- } })), isTestMode && (h("zonos-card", { backgroundColor: "gray-100", borderRadius: 12, class: "zonos--test-cards" }, h("zonos-v-stack", { spacing: 16 }, h("div", null, h("zonos-text", { type: "semiBoldLabel" }, translate('Test cards')), h("zonos-text", { textColor: "gray-700" }, translate('Click to copy the card number. Use any future expiration date and three number CVC.'))), h("zonos-button", { icon: h("zonos-icon", { content: CheckmarkLineIcon }), justifyContent: "flex-start", onClick: () => this.copyCardToClipboard('4242424242424242') }, translate('Success'), " (****4242)"), h("zonos-button", { icon: h("zonos-icon", { content: RemoveLineIcon }), justifyContent: "flex-start", onClick: () => this.copyCardToClipboard('4000000000000002') }, translate('Failure'), " (****0002)")), h("zonos-notification", null))))));
1820
+ const renderPayment = () => {
1821
+ if (isStagingMode) {
1822
+ const { colorPrimary } = zonosStore.appearance;
1823
+ const themeBasedColor = colorPrimary && isDarkColor(colorPrimary) ? 'DARK' : 'LIGHT';
1824
+ // If in mobile, use the theme from the store since the UI is solely by theme
1825
+ const theme = this.isMobile
1826
+ ? zonosStore.appearance.theme
1827
+ : themeBasedColor;
1828
+ return (h(Fragment, null, this.stagingOrderCreateErrorMessage && (h("zonos-banner", { class: "zonos--error-banner", intent: "error" }, this.stagingOrderCreateErrorMessage)), h("zonos-empty-state-payment", { emptyStateText: translate('No payment method needed for staging'), theme: theme }), h("div", { class: "zonos--group-btn" }, h("zonos-button", { backgroundColor: this.submitBtnColor, loading: this.internalContinueLoading, onClick: () => {
1829
+ void this.placeTestOrder();
1830
+ }, size: "lg",
1831
+ // use primary type when on mobile mode
1832
+ variant: this.submitBtnType }, translate('Place test order')))));
1833
+ }
1834
+ return (h(Fragment, null, this.showErrorBanner && (h("zonos-banner", { class: "zonos--error-banner", intent: "error" }, translate('Missing required fields. Make sure all fields are completed.'))), this.hasStripePaymentError && (h("zonos-banner", { class: "zonos--payment-error-banner", intent: "error" }, stripeStore.customErrorMessage ||
1835
+ translate("We couldn't complete your payment. Please verify the payment details and try again."))), paypalStore.paypalErrorMessage && (h("zonos-banner", { class: "zonos--payment-error-banner", intent: "error" }, paypalStore.paypalErrorMessage)), h("zonos-payment", null), h("div", { class: "zonos--group-btn" }, !isPaypalTabSelected && (h("zonos-button", { backgroundColor: this.submitBtnColor, loading: this.continueLoading, onClick: () => {
1836
+ this.continueClickHandler();
1837
+ }, size: "lg",
1838
+ // use primary type when on mobile mode
1839
+ variant: this.submitBtnType }, translate('Pay [orderTotal]', {
1840
+ orderTotal: renderCheckoutCurrency({
1841
+ amount: cartStore.total,
1842
+ isForeign: true,
1843
+ }),
1844
+ }))), h("zonos-paypal-payment", { onPaypalSessionDone: ({ detail: { orderId } }) => {
1845
+ this.paypalSessionDone.emit(orderId);
1846
+ }, onPaypalSessionFail: () => this.paypalSessionFailed.emit(), style: {
1847
+ display: isPaypalTabSelected ? 'block' : 'none',
1848
+ } })), isTestMode && (h("zonos-card", { backgroundColor: "gray-100", borderRadius: 12, class: "zonos--test-cards" }, h("zonos-v-stack", { spacing: 16 }, h("div", null, h("zonos-text", { type: "semiBoldLabel" }, translate('Test cards')), h("zonos-text", { textColor: "gray-700" }, translate('Click to copy the card number. Use any future expiration date and three number CVC.'))), h("zonos-button", { icon: h("zonos-icon", { content: CheckmarkLineIcon }), justifyContent: "flex-start", onClick: () => this.copyCardToClipboard('4242424242424242') }, translate('Success'), " (****4242)"), h("zonos-button", { icon: h("zonos-icon", { content: RemoveLineIcon }), justifyContent: "flex-start", onClick: () => this.copyCardToClipboard('4000000000000002') }, translate('Failure'), " (****0002)")), h("zonos-notification", null)))));
1849
+ };
1850
+ return (h(Host, { class: "zonos--checkout-payment zonos--elements" }, h("div", { class: "zonos--group" }, h("zonos-text", { class: "zonos--title", type: "semiBoldSubheader" }, translate('Payment method')), renderPayment())));
1754
1851
  }
1755
1852
  get ele() { return getElement(this); }
1756
1853
  static get watchers() { return {
1854
+ "continueLoading": ["continueLoadingWatcher"],
1757
1855
  "hasStripePaymentError": ["stripePaymentErrorWatcher"]
1758
1856
  }; }
1759
1857
  };
@@ -1,15 +1,15 @@
1
- import { r as registerInstance, h, H as Host, F as Fragment } from './index-986b5ff2.js';
2
- import { l as localizationStore, s as stripeStoreGetDomesticShippingSession, a as localizationStoreUpdateSelectedCountryCode, b as stripeStoreCleanupDomesticShippingSession, c as stripeStoreSaveDomesticShippingSession, i as initStripeElements, d as stripeStoreRetrievePayment, e as cartStore, f as stripeStore, g as cartStoreUpdateItems, h as cartStoreReset, j as cartStoreResetTabItems, k as cartStoreClearCheckoutInterval, m as stripeStoreInitCheckoutSession, n as cartStoreStartCheckoutInterval, t as trackConversionEvent, o as getCheckoutSessionBody, p as cartStoreUpdateToErrorState, q as translate, r as getZCountryUrlParam, u as cartStoreSetCheckoutSession, v as stripeStorePrefetchLandedCost, w as cartStoreNextStep, x as stripeStoreHandleInventoryCheck, y as stripeStoreConfirmPayment, z as stripeStoreHandleInventoryRefund, A as stripeStoreReset, B as localizationStoreOnUpdate } from './cart-acba54d0.js';
3
- import { p as paypalStoreHasPaypalEnabled, s as submitGtag, a as paypalInitScript, b as paypalStore } from './paypal-3401f757.js';
4
- import { z as zonosStore, g as getZonosStoreTheme, m as mergeConfig } from './zonosStore-708637e7.js';
5
- import { h as handleFetch, l as log, a as logError, s as sendErrorLog, g as getElapsedTime, b as allLogs, j as jsonParse } from './handleFetch-badf4543.js';
6
- import { g as getIsTestMode, c as createCustomEvent } from './createCustomEvent-31a792d3.js';
1
+ import { r as registerInstance, h, H as Host, F as Fragment } from './index-d82f06f2.js';
2
+ import { l as localizationStore, s as stripeStoreGetDomesticShippingSession, a as localizationStoreUpdateSelectedCountryCode, b as stripeStoreCleanupDomesticShippingSession, c as stripeStoreSaveDomesticShippingSession, i as initStripeElements, d as stripeStoreRetrievePayment, e as cartStore, f as stripeStore, g as cartStoreUpdateItems, h as cartStoreReset, j as cartStoreResetTabItems, k as cartStoreClearCheckoutInterval, m as stripeStoreInitCheckoutSession, n as cartStoreStartCheckoutInterval, t as trackConversionEvent, o as getCheckoutSessionBody, p as cartStoreUpdateToErrorState, q as translate, r as getZCountryUrlParam, u as cartStoreSetCheckoutSession, v as stripeStorePrefetchLandedCost, w as cartStoreNextStep, x as stripeStoreHandleInventoryCheck, y as stripeStoreConfirmPayment, z as stripeStoreHandleInventoryRefund, A as stripeStoreReset, B as localizationStoreOnUpdate } from './cart-887f7d66.js';
3
+ import { p as paypalStoreHasPaypalEnabled, s as submitGtag, a as paypalInitScript, b as paypalStore } from './paypal-6fd5749b.js';
4
+ import { z as zonosStore, g as getZonosStoreTheme, m as mergeConfig } from './zonosStore-44efd080.js';
5
+ import { h as handleFetch, l as log, b as logError, s as sendErrorLog, c as getElapsedTime, d as allLogs, g as getIsTestMode, j as jsonParse, a as getIsStagingMode } from './handleFetch-b4633675.js';
7
6
  import { i as isCheckoutMobile } from './isCheckoutMobile-8846dccb.js';
8
7
  import { c as classes } from './classes-0d95c529.js';
9
- import { g as getBorderRadius } from './getBorderRadius-4aca63d4.js';
10
- import { i as isDarkColor } from './isDarkColor-4915739f.js';
8
+ import { c as createCustomEvent } from './createCustomEvent-58159025.js';
9
+ import { g as getBorderRadius } from './getBorderRadius-b32d4218.js';
10
+ import { i as isDarkColor } from './isDarkColor-10f38df6.js';
11
11
  import { s as styles } from './styles-6fc2fad9.js';
12
- import { c as checkoutHiddenBtnSelector, s as setupCartData, d as domesticRedirectedBtnSelector } from './CheckoutConfig-262008fe.js';
12
+ import { c as checkoutHiddenBtnSelector, s as setupCartData, d as domesticRedirectedBtnSelector } from './CheckoutConfig-573bd959.js';
13
13
  import { R as RemoveIcon } from './RemoveIcon-9dc5dd1a.js';
14
14
 
15
15
  /**
@@ -369,6 +369,7 @@ const ZonosCheckout = class {
369
369
  this.appearanceSettingsOverride = undefined;
370
370
  this.preview = false;
371
371
  this.mobile = false;
372
+ this.overrideStagingMode = undefined;
372
373
  this.defaultAddress = null;
373
374
  this.forceDialogOpen = false;
374
375
  this.defaultAddressParams = null;
@@ -386,6 +387,7 @@ const ZonosCheckout = class {
386
387
  this.isCartExpired = false;
387
388
  this.inventoryCheckErrorMessage = null;
388
389
  this.placedOrderInfo = null;
390
+ this.clientSecret = stripeStore.clientSecret;
389
391
  }
390
392
  /**
391
393
  * Init cart info handler event
@@ -436,19 +438,8 @@ const ZonosCheckout = class {
436
438
  (_b = (_a = zonosStore.checkoutSettings).onClose) === null || _b === void 0 ? void 0 : _b.call(_a);
437
439
  }
438
440
  async buildCartAndInit() {
439
- // if tempCartUUID is provided, use it instead of buildCartDetail
440
- if (window.Zonos.cartData) {
441
- log('tempCartUUID is provided, start building cart');
442
- const isExpired = this.handleCartExpiredCheck();
443
- if (isExpired) {
444
- // Do not proceed if the cart is expired
445
- return;
446
- }
447
- const { adjustments, cartItems } = buildCartItemsByTempCart(window.Zonos.cartData);
448
- await cartStoreUpdateItems({ adjustments, cartItems });
449
- }
450
441
  // 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.
451
- else if (typeof zonosStore.checkoutSettings.createCartId === 'function') {
442
+ if (typeof zonosStore.checkoutSettings.createCartId === 'function') {
452
443
  log('"createCartId" is provided, start building cart');
453
444
  const cartId = await zonosStore.checkoutSettings.createCartId();
454
445
  window.Zonos.cartId = cartId;
@@ -456,17 +447,28 @@ const ZonosCheckout = class {
456
447
  const cartData = cartResult === null || cartResult === void 0 ? void 0 : cartResult.cartData;
457
448
  if (!cartData) {
458
449
  logError('Failed to build cart, please try again.');
459
- return;
450
+ return false;
460
451
  }
461
452
  window.Zonos.cartData = cartData;
462
453
  const isExpired = this.handleCartExpiredCheck();
463
454
  if (isExpired) {
464
455
  // Do not proceed if the cart is expired
465
- return;
456
+ return false;
466
457
  }
467
458
  const { adjustments, cartItems } = buildCartItemsByTempCart(cartData);
468
459
  await cartStoreUpdateItems({ adjustments, cartItems });
469
460
  }
461
+ // if tempCartUUID is provided, use it instead of buildCartDetail
462
+ else if (window.Zonos.cartData) {
463
+ log('tempCartUUID is provided, start building cart');
464
+ const isExpired = this.handleCartExpiredCheck();
465
+ if (isExpired) {
466
+ // Do not proceed if the cart is expired
467
+ return false;
468
+ }
469
+ const { adjustments, cartItems } = buildCartItemsByTempCart(window.Zonos.cartData);
470
+ await cartStoreUpdateItems({ adjustments, cartItems });
471
+ }
470
472
  else if (zonosStore.checkoutSettings.buildCartDetail &&
471
473
  localizationStore.selectedCountryCode) {
472
474
  log('build cart detail');
@@ -754,12 +756,21 @@ const ZonosCheckout = class {
754
756
  phone,
755
757
  };
756
758
  }
759
+ overrideStagingModeChanged() {
760
+ cartStore.isStagingMode = !!this.overrideStagingMode;
761
+ }
757
762
  /**
758
763
  * Setup all of the event listeners for the component on first load
759
764
  */
760
765
  async init() {
761
766
  stripeStore.stripe = window.Zonos.stripe;
762
767
  this.stripe = window.Zonos.stripe;
768
+ // Set staging mode on init
769
+ cartStore.isStagingMode = getIsStagingMode();
770
+ // Override staging mode if it's provided
771
+ if (typeof this.overrideStagingMode !== 'undefined') {
772
+ cartStore.isStagingMode = this.overrideStagingMode;
773
+ }
763
774
  // check if bigcommerce, if user enters the shipping address that's in the shipping zone at bigcommerce checkout
764
775
  watchBigcommerceDomesticCheckout({
765
776
  domesticRedirectedBtnSelector: domesticRedirectedBtnSelector,
@@ -998,6 +1009,10 @@ const ZonosCheckout = class {
998
1009
  handleAddressChange() {
999
1010
  stripeStoreReset();
1000
1011
  }
1012
+ handleClientSecretChange() {
1013
+ // apply theme to stripe elements
1014
+ void this.applyStripeTheme();
1015
+ }
1001
1016
  handleOpenChange() {
1002
1017
  const overflowAttrKey = 'data-zonos-overflow-origin';
1003
1018
  const body = document.body;
@@ -1062,6 +1077,8 @@ const ZonosCheckout = class {
1062
1077
  }
1063
1078
  render() {
1064
1079
  var _a, _b, _c, _d;
1080
+ // Set client secret so that we can add this to @Watch listener
1081
+ this.clientSecret = stripeStore.clientSecret;
1065
1082
  const dialogLoading =
1066
1083
  // if it's last step, don't need to check stripe elements
1067
1084
  (cartStore.step !== 'finish' &&
@@ -1095,7 +1112,8 @@ const ZonosCheckout = class {
1095
1112
  const zonosQaUrl = urlParams.get('zonosQaUrl');
1096
1113
  const zonosDebug = urlParams.get('zonosDebug');
1097
1114
  const zonosE2ETest = urlParams.get('zonosE2ETest');
1098
- return (h("zonos-v-stack", null, h("div", { class: "zonos--logo-wrapper" }, renderLogo(), isTestMode && (h("zonos-badge", { badgeColor: "orange", size: "small" }, translate('Test 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:
1115
+ const zonosStagingMode = this.overrideStagingMode || getIsStagingMode();
1116
+ 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:
1099
1117
  // only use different contrast color when the secondary color is too off with the background in mobile
1100
1118
  this.isMobile ? '--zonos-elements-gray-0' : null }), filteredMessages.map(x => (h("zonos-custom-message", { icon: MessageIcon, message: x.message })))));
1101
1119
  };
@@ -1111,7 +1129,7 @@ const ZonosCheckout = class {
1111
1129
  '--zonos--primary-color': !this.isMobile
1112
1130
  ? colorPrimary
1113
1131
  : undefined,
1114
- }) }, !this.isMobile && renderTopHeader(), cartStore.step === 'customer-info' && (h("zonos-customer-info", { continueLoading: this.submitLoading, defaultAddress: this.defaultAddress || this.defaultAddressParams, isMobile: this.isMobile, onContinueClicked: () => this.handleCustomerInfoContinue(), submitBtnColor: submitButtonColor })), cartStore.step === 'shipping' && (h("zonos-shipping", { continueLoading: this.submitLoading, onContinueClicked: () => this.handleShippingContinue(), submitBtnColor: submitButtonColor })), cartStore.step === 'payment' && (h("zonos-checkout-payment", { continueLoading: this.submitLoading, onContinueClicked: async () => {
1132
+ }) }, !this.isMobile && renderTopHeader(), cartStore.step === 'customer-info' && (h("zonos-customer-info", { continueLoading: this.submitLoading, defaultAddress: this.defaultAddress || this.defaultAddressParams, isMobile: this.isMobile, onContinueClicked: () => this.handleCustomerInfoContinue(), submitBtnColor: submitButtonColor })), cartStore.step === 'shipping' && (h("zonos-shipping", { continueLoading: this.submitLoading, onContinueClicked: () => this.handleShippingContinue(), submitBtnColor: submitButtonColor })), cartStore.step === 'payment' && (h("zonos-checkout-payment", { continueLoading: this.submitLoading, isMobile: this.isMobile, onContinueClicked: async () => {
1115
1133
  await this.handleStripePaymentContinue();
1116
1134
  }, submitBtnColor: submitButtonColor }))), h("div", { class: "zonos--right", "data-theme": rightSideTheme }, this.isMobile && renderTopHeader(), h("div", { class: "zonos--right-actions" }, window.Zonos.showBaseForeign && (h("zonos-currency-toggle", null)), !this.isLegacyCheckout && (h("zonos-button", { class: "zonos--close-button", icon: h("zonos-icon", { "aria-label": "Close checkout dialog", content: RemoveIcon }), noBackground: true, onClick: () => this.closeDialogHandler() }))), h("div", { class: "flex--wrapper" }, h("div", { class: "zonos--wrapper" }, h("zonos-review", { collapsed: this.collapseReviewMobile, mobile: this.isMobile, onClick: () => {
1117
1135
  // do nothing if it's not mobile
@@ -1178,8 +1196,10 @@ const ZonosCheckout = class {
1178
1196
  static get assetsDirs() { return ["assets"]; }
1179
1197
  static get watchers() { return {
1180
1198
  "appearanceSettingsOverride": ["appearanceSettingsOverrideChanged", "handleAppearanceSettingsOverrideChange"],
1199
+ "overrideStagingMode": ["overrideStagingModeChanged"],
1181
1200
  "mobile": ["handleMobileChange"],
1182
1201
  "defaultAddress": ["handleAddressChange"],
1202
+ "clientSecret": ["handleClientSecretChange"],
1183
1203
  "open": ["handleOpenChange"]
1184
1204
  }; }
1185
1205
  };
@@ -1,5 +1,5 @@
1
- import { r as registerInstance, h, H as Host, d as getElement } from './index-986b5ff2.js';
2
- import { d as zonosStoreFontFamily } from './zonosStore-708637e7.js';
1
+ import { r as registerInstance, h, H as Host, d as getElement } from './index-d82f06f2.js';
2
+ import { d as zonosStoreFontFamily } from './zonosStore-44efd080.js';
3
3
 
4
4
  const zonosCollapseCss = ":host{font-family:var(--zonos--font-family, Inter), Inter;display:block;white-space:normal}:host *{font-family:var(--zonos--font-family, Inter), Inter}:host img{max-width:100%}:host dl,:host dd,:host h1,:host h2,:host h3,:host h4,:host h5,:host h6,:host hr,:host figure,:host p,:host pre{margin:0}:host{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}:host{-webkit-transition:all 0.3s ease-in-out;transition:all 0.3s ease-in-out;overflow:hidden}:host div{position:relative}:host iframe{width:0;height:100%;position:absolute;top:0;border:0}";
5
5
  const ZonosCollapseStyle0 = zonosCollapseCss;
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h } from './index-986b5ff2.js';
1
+ import { r as registerInstance, h } from './index-d82f06f2.js';
2
2
 
3
3
  function format(first, middle, last) {
4
4
  return ((first || '') + (middle ? ` ${middle}` : '') + (last ? ` ${last}` : ''));
@@ -1,9 +1,9 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host } from './index-986b5ff2.js';
2
- import { D as isValidSelector, f as stripeStore, E as initLocalizationStore, e as cartStore, a as localizationStoreUpdateSelectedCountryCode } from './cart-acba54d0.js';
3
- import { z as zonosStore, b as zonosStoreInitSetting, d as zonosStoreFontFamily } from './zonosStore-708637e7.js';
4
- import { h as handleFetch, a as logError, l as log } from './handleFetch-badf4543.js';
5
- import './isDarkColor-4915739f.js';
6
- import './getBorderRadius-4aca63d4.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host } from './index-d82f06f2.js';
2
+ import { D as isValidSelector, f as stripeStore, E as initLocalizationStore, e as cartStore, a as localizationStoreUpdateSelectedCountryCode } from './cart-887f7d66.js';
3
+ import { z as zonosStore, b as zonosStoreInitSetting, d as zonosStoreFontFamily } from './zonosStore-44efd080.js';
4
+ import { h as handleFetch, b as logError, l as log } from './handleFetch-b4633675.js';
5
+ import './isDarkColor-10f38df6.js';
6
+ import './getBorderRadius-b32d4218.js';
7
7
 
8
8
  const getZonosSettings = async () => {
9
9
  const { errors, json, zonosMode } = await handleFetch('/api/zonos-elements/zonos-settings');
@@ -239,17 +239,38 @@ const ZonosController = class {
239
239
  return oldReplaceState.apply(this, arguments);
240
240
  };
241
241
  }
242
+ injectCustomHTML(htmlString) {
243
+ if (!htmlString) {
244
+ return;
245
+ }
246
+ // Skip injecting custom HTML for legacy checkout
247
+ if (!window.Zonos.isLegacyCheckout) {
248
+ log('=== Skip injecting custom HTML for hosted checkout', 'info');
249
+ return;
250
+ }
251
+ log('=== Injecting custom HTML for hosted checkout');
252
+ const template = document.createElement('template');
253
+ template.innerHTML = htmlString;
254
+ const scripts = template.content.querySelectorAll('script');
255
+ scripts.forEach(script => {
256
+ const scriptToInject = document.createElement('script');
257
+ scriptToInject.textContent = script.innerHTML;
258
+ document.body.appendChild(scriptToInject);
259
+ });
260
+ }
242
261
  async componentWillLoad() {
243
262
  this.initHistoryListener();
244
263
  zonosStore.zonosApiKey = this.zonosApiKey;
245
264
  // running with scope async function to avoid blocking the main thread
246
265
  (async () => {
247
- var _a, _b;
266
+ var _a, _b, _c;
248
267
  const { errors, json, zonosMode } = await getZonosSettings();
249
268
  if (((_a = errors[0]) === null || _a === void 0 ? void 0 : _a.type.toString()) === '403') {
250
269
  log('Failed to load zonos settings. This domain may not have access', 'warn');
251
270
  return;
252
271
  }
272
+ const customHTML = ((_b = json === null || json === void 0 ? void 0 : json.checkoutSettings) === null || _b === void 0 ? void 0 : _b.customHTML) || '';
273
+ this.injectCustomHTML(customHTML);
253
274
  // init zonos notification
254
275
  this.initZonosNotification();
255
276
  const getLogoUrl = () => {
@@ -284,7 +305,7 @@ const ZonosController = class {
284
305
  // init localization store
285
306
  await initLocalizationStore();
286
307
  // checkout init
287
- const publishableKey = ((_b = json === null || json === void 0 ? void 0 : json.checkoutSettings) === null || _b === void 0 ? void 0 : _b.externalServiceTokens.find(item => item.type === 'STRIPE_PUBLISHABLE_TOKEN')) || null;
308
+ const publishableKey = ((_c = json === null || json === void 0 ? void 0 : json.checkoutSettings) === null || _c === void 0 ? void 0 : _c.externalServiceTokens.find(item => item.type === 'STRIPE_PUBLISHABLE_TOKEN')) || null;
288
309
  if (!publishableKey || !this.stripeInitEvent) {
289
310
  log('Checkout failed to load -- missing publishable key', 'warn');
290
311
  return;
@@ -321,7 +342,7 @@ const ZonosController = class {
321
342
  */
322
343
  async reset() {
323
344
  cartStore.checkoutSessionId = null;
324
- stripeStore.clientSecret = null;
345
+ stripeStore.clientSecret = '';
325
346
  }
326
347
  /**
327
348
  * Override the setting
@@ -353,7 +374,7 @@ const ZonosController = class {
353
374
  zonosStore.organizationName = organizationName;
354
375
  }
355
376
  render() {
356
- return h(Host, { key: '816d389c90fab1125a041db4b125557afa5e9372', class: "zonos--elements" });
377
+ return h(Host, { key: 'f59eff8c088135e8fc791d03f668e787ec0d0912', class: "zonos--elements" });
357
378
  }
358
379
  };
359
380
  ZonosController.style = ZonosControllerStyle0;
@@ -1,10 +1,10 @@
1
- import { r as registerInstance, h, H as Host, d as getElement } from './index-986b5ff2.js';
2
- import { l as localizationStore } from './cart-acba54d0.js';
3
- import { d as zonosStoreFontFamily } from './zonosStore-708637e7.js';
1
+ import { r as registerInstance, h, H as Host, d as getElement } from './index-d82f06f2.js';
2
+ import { l as localizationStore } from './cart-887f7d66.js';
3
+ import { d as zonosStoreFontFamily } from './zonosStore-44efd080.js';
4
4
  import { c as classes } from './classes-0d95c529.js';
5
- import './handleFetch-badf4543.js';
6
- import './isDarkColor-4915739f.js';
7
- import './getBorderRadius-4aca63d4.js';
5
+ import './handleFetch-b4633675.js';
6
+ import './isDarkColor-10f38df6.js';
7
+ import './getBorderRadius-b32d4218.js';
8
8
 
9
9
  const zonosCountryFlagCss = ":host{font-family:var(--zonos--font-family, Inter), Inter;display:block;white-space:normal}:host *{font-family:var(--zonos--font-family, Inter), Inter}:host img{max-width:100%}:host dl,:host dd,:host h1,:host h2,:host h3,:host h4,:host h5,:host h6,:host hr,:host figure,:host p,:host pre{margin:0}:host{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}:host{display:-ms-inline-flexbox;display:inline-flex}:host .flag-container{position:relative;overflow:hidden;width:100%;height:100%}:host .flag-icon{position:absolute;top:0;left:0;width:100%;height:100%;background-position:center;background-repeat:no-repeat;background-size:cover}";
10
10
  const ZonosCountryFlagStyle0 = zonosCountryFlagCss;
@@ -1,11 +1,11 @@
1
- import { r as registerInstance, h, H as Host, d as getElement } from './index-986b5ff2.js';
2
- import { a as localizationStoreUpdateSelectedCountryCode, q as translate, l as localizationStore } from './cart-acba54d0.js';
3
- import { d as zonosStoreFontFamily } from './zonosStore-708637e7.js';
1
+ import { r as registerInstance, h, H as Host, d as getElement } from './index-d82f06f2.js';
2
+ import { a as localizationStoreUpdateSelectedCountryCode, q as translate, l as localizationStore } from './cart-887f7d66.js';
3
+ import { d as zonosStoreFontFamily } from './zonosStore-44efd080.js';
4
4
  import { f as formatStringWithLinks } from './formatStringWithLinks-9e819405.js';
5
- import { i as isDarkColor } from './isDarkColor-4915739f.js';
5
+ import { i as isDarkColor } from './isDarkColor-10f38df6.js';
6
6
  import { l as languages } from './ILanguage-cd6acb72.js';
7
- import './handleFetch-badf4543.js';
8
- import './getBorderRadius-4aca63d4.js';
7
+ import './handleFetch-b4633675.js';
8
+ import './getBorderRadius-b32d4218.js';
9
9
 
10
10
  /**
11
11
  * Fuse.js v7.0.0 - Lightweight fuzzy-search (http://fusejs.io)