@zonos/elements 1.2.2 → 1.2.4-alpha.1

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 (546) hide show
  1. package/dist/cjs/cart-4ddc2af5.js +616 -0
  2. package/dist/cjs/getBorderRadius-a97a5f75.js +18 -0
  3. package/dist/cjs/getHasMoreSpaceOnRight-4c94667f.js +10 -0
  4. package/dist/cjs/{index-9542d2e7.js → index-20cb112f.js} +127 -26
  5. package/dist/cjs/index.cjs.js +6 -6
  6. package/dist/cjs/isColorVariable-41cacd82.js +16 -0
  7. package/dist/cjs/{isDarkColor-f3446afd.js → isDarkColor-261fcf3d.js} +2 -2
  8. package/dist/cjs/loader.cjs.js +2 -2
  9. package/dist/cjs/localization-11360fed.js +3629 -0
  10. package/dist/cjs/submitGtag-bb093547.js +27 -0
  11. package/dist/cjs/zonos-address_2.cjs.entry.js +108 -108
  12. package/dist/cjs/zonos-badge.cjs.entry.js +25 -22
  13. package/dist/cjs/zonos-banner.cjs.entry.js +65 -53
  14. package/dist/cjs/zonos-button_2.cjs.entry.js +100 -99
  15. package/dist/cjs/zonos-card_2.cjs.entry.js +32 -27
  16. package/dist/cjs/zonos-cart-items_10.cjs.entry.js +422 -419
  17. package/dist/cjs/zonos-checkout.cjs.entry.js +356 -352
  18. package/dist/cjs/zonos-component.cjs.entry.js +15 -15
  19. package/dist/cjs/zonos-controller.cjs.entry.js +235 -151
  20. package/dist/cjs/zonos-country-flag_4.cjs.entry.js +85 -77
  21. package/dist/cjs/zonos-elements.cjs.js +3 -3
  22. package/dist/cjs/zonos-hello-dialog.cjs.entry.js +101 -101
  23. package/dist/cjs/zonos-hello.cjs.entry.js +349 -349
  24. package/dist/cjs/zonos-icon.cjs.entry.js +22 -20
  25. package/dist/cjs/zonos-notification.cjs.entry.js +60 -57
  26. package/dist/cjs/zonos-payment.cjs.entry.js +45 -45
  27. package/dist/cjs/zonos-shipping-rich-radio.cjs.entry.js +40 -40
  28. package/dist/cjs/zonos-text.cjs.entry.js +145 -143
  29. package/dist/cjs/{zonosStore-a430ec5b.js → zonosStore-a0fa5b77.js} +102 -97
  30. package/dist/collection/__mocks__/vercel-app/loadZonos.js +492 -0
  31. package/dist/collection/__mocks__/vercel-app/localization.js +1 -0
  32. package/dist/collection/__mocks__/vercel-app/zonos-hello.entry.js +1 -0
  33. package/dist/collection/__mocks__/zonos-url/loadZonos.js +492 -0
  34. package/dist/{esm-es5/localization-f3828793.js → collection/__mocks__/zonos-url/localization.js} +1 -1
  35. package/dist/collection/__mocks__/zonos-url/zonos-hello.entry.js +1 -0
  36. package/dist/collection/__tests__/build-utils/urlCheckOne.js +59 -0
  37. package/dist/collection/collection-manifest.json +2 -2
  38. package/dist/collection/components/checkout/zonos-checkout/zonos-cart-items/zonos-cart-items.css +4 -1
  39. package/dist/collection/components/checkout/zonos-checkout/zonos-cart-items/zonos-cart-items.js +37 -37
  40. package/dist/collection/components/checkout/zonos-checkout/zonos-cart-subtotal/zonos-cart-subtotal.css +4 -1
  41. package/dist/collection/components/checkout/zonos-checkout/zonos-cart-subtotal/zonos-cart-subtotal.js +44 -44
  42. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-finish/zonos-checkout-finish.css +4 -1
  43. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-finish/zonos-checkout-finish.js +164 -164
  44. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-payment/zonos-checkout-payment.css +4 -1
  45. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-payment/zonos-checkout-payment.js +149 -149
  46. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout.css +4 -1
  47. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout.js +559 -555
  48. package/dist/collection/components/checkout/zonos-checkout/zonos-customer-info/zonos-customer-info.css +4 -1
  49. package/dist/collection/components/checkout/zonos-checkout/zonos-customer-info/zonos-customer-info.js +153 -153
  50. package/dist/collection/components/checkout/zonos-checkout/zonos-review/zonos-review.css +4 -1
  51. package/dist/collection/components/checkout/zonos-checkout/zonos-review/zonos-review.js +107 -107
  52. package/dist/collection/components/checkout/zonos-checkout/zonos-shipping/zonos-shipping.css +4 -1
  53. package/dist/collection/components/checkout/zonos-checkout/zonos-shipping/zonos-shipping.js +164 -164
  54. package/dist/collection/components/common/countries.js +261 -261
  55. package/dist/collection/components/common/zonos-badge/zonos-badge.css +4 -1
  56. package/dist/collection/components/common/zonos-badge/zonos-badge.js +189 -186
  57. package/dist/collection/components/common/zonos-banner/zonos-banner.css +4 -1
  58. package/dist/collection/components/common/zonos-banner/zonos-banner.js +140 -128
  59. package/dist/collection/components/common/zonos-button/zonos-button.css +5 -5
  60. package/dist/collection/components/common/zonos-button/zonos-button.js +407 -406
  61. package/dist/collection/components/common/zonos-card/zonos-card.css +4 -1
  62. package/dist/collection/components/common/zonos-card/zonos-card.js +165 -162
  63. package/dist/collection/components/common/zonos-collapse/zonos-collapse.css +4 -1
  64. package/dist/collection/components/common/zonos-collapse/zonos-collapse.js +85 -83
  65. package/dist/collection/components/common/zonos-country-flag/zonos-country-flag.css +4 -1
  66. package/dist/collection/components/common/zonos-country-flag/zonos-country-flag.js +101 -96
  67. package/dist/collection/components/common/zonos-country-select/zonos-country-select.css +4 -1
  68. package/dist/collection/components/common/zonos-country-select/zonos-country-select.js +73 -70
  69. package/dist/collection/components/common/zonos-custom-message/zonos-custom-message.css +4 -1
  70. package/dist/collection/components/common/zonos-custom-message/zonos-custom-message.js +62 -59
  71. package/dist/collection/components/common/zonos-dialog/zonos-dialog.css +4 -1
  72. package/dist/collection/components/common/zonos-dialog/zonos-dialog.js +373 -371
  73. package/dist/collection/components/common/zonos-icon/zonos-icon.css +4 -1
  74. package/dist/collection/components/common/zonos-icon/zonos-icon.js +123 -121
  75. package/dist/collection/components/common/zonos-logo/zonos-logo.css +4 -1
  76. package/dist/collection/components/common/zonos-logo/zonos-logo.js +92 -90
  77. package/dist/collection/components/common/zonos-notification/zonos-notification.css +4 -1
  78. package/dist/collection/components/common/zonos-notification/zonos-notification.js +128 -125
  79. package/dist/collection/components/common/zonos-shipping-rich-radio/zonos-shipping-rich-radio.css +5 -1
  80. package/dist/collection/components/common/zonos-shipping-rich-radio/zonos-shipping-rich-radio.js +168 -168
  81. package/dist/collection/components/common/zonos-spinner/zonos-spinner.css +4 -1
  82. package/dist/collection/components/common/zonos-spinner/zonos-spinner.js +71 -71
  83. package/dist/collection/components/common/zonos-text/zonos-text.css +4 -1
  84. package/dist/collection/components/common/zonos-text/zonos-text.js +193 -191
  85. package/dist/collection/components/common/zonos-v-stack/zonos-v-stack.css +4 -1
  86. package/dist/collection/components/common/zonos-v-stack/zonos-v-stack.js +70 -67
  87. package/dist/collection/components/component-template/zonos-component/zonos-component.css +4 -1
  88. package/dist/collection/components/component-template/zonos-component/zonos-component.js +81 -81
  89. package/dist/collection/components/hello/zonos-hello/zonos-hello.css +4 -2
  90. package/dist/collection/components/hello/zonos-hello/zonos-hello.js +447 -446
  91. package/dist/collection/components/hello/zonos-hello-dialog/zonos-hello-dialog-footer/zonos-hello-dialog-footer.css +4 -1
  92. package/dist/collection/components/hello/zonos-hello-dialog/zonos-hello-dialog-footer/zonos-hello-dialog-footer.js +70 -70
  93. package/dist/collection/components/hello/zonos-hello-dialog/zonos-hello-dialog.css +4 -1
  94. package/dist/collection/components/hello/zonos-hello-dialog/zonos-hello-dialog.js +272 -272
  95. package/dist/collection/components/main/zonos-controller.css +4 -1
  96. package/dist/collection/components/main/zonos-controller.js +400 -273
  97. package/dist/collection/components/store/checkout/cart.js +162 -162
  98. package/dist/collection/components/store/checkout/stripe.js +264 -254
  99. package/dist/collection/components/store/hello/localization.js +112 -112
  100. package/dist/collection/components/store/translationStore/strings.arabic.js +147 -147
  101. package/dist/collection/components/store/translationStore/strings.base.js +147 -147
  102. package/dist/collection/components/store/translationStore/strings.chinese.js +147 -147
  103. package/dist/collection/components/store/translationStore/strings.danish.js +147 -147
  104. package/dist/collection/components/store/translationStore/strings.dutch.js +147 -147
  105. package/dist/collection/components/store/translationStore/strings.french.js +147 -147
  106. package/dist/collection/components/store/translationStore/strings.german.js +147 -147
  107. package/dist/collection/components/store/translationStore/strings.hebrew.js +147 -147
  108. package/dist/collection/components/store/translationStore/strings.indonesian.js +147 -147
  109. package/dist/collection/components/store/translationStore/strings.italian.js +147 -147
  110. package/dist/collection/components/store/translationStore/strings.japanese.js +147 -147
  111. package/dist/collection/components/store/translationStore/strings.korean.js +147 -147
  112. package/dist/collection/components/store/translationStore/strings.norwegian.js +147 -147
  113. package/dist/collection/components/store/translationStore/strings.polish.js +147 -147
  114. package/dist/collection/components/store/translationStore/strings.portuguese.js +147 -147
  115. package/dist/collection/components/store/translationStore/strings.russian.js +147 -147
  116. package/dist/collection/components/store/translationStore/strings.spanish.js +147 -147
  117. package/dist/collection/components/store/translationStore/strings.swedish.js +147 -147
  118. package/dist/collection/components/store/translationStore/strings.turkish.js +147 -147
  119. package/dist/collection/components/store/translationStore/strings.vietnamese.js +147 -147
  120. package/dist/collection/components/store/translationStore.js +65 -65
  121. package/dist/collection/components/store/zonosStore.js +98 -94
  122. package/dist/collection/components/stripe/zonos-address/zonos-address.css +4 -1
  123. package/dist/collection/components/stripe/zonos-address/zonos-address.js +142 -142
  124. package/dist/collection/components/stripe/zonos-link-authentication/zonos-link-authentication.css +4 -1
  125. package/dist/collection/components/stripe/zonos-link-authentication/zonos-link-authentication.js +76 -76
  126. package/dist/collection/components/stripe/zonos-payment/zonos-payment.css +4 -1
  127. package/dist/collection/components/stripe/zonos-payment/zonos-payment.js +81 -81
  128. package/dist/collection/components/utils/addDays.js +5 -5
  129. package/dist/collection/components/utils/api/calculateLandedCost.js +11 -11
  130. package/dist/collection/components/utils/api/checkItemRestrictions.js +13 -13
  131. package/dist/collection/components/utils/api/getCountries.js +11 -11
  132. package/dist/collection/components/utils/api/getCountryLandedCost.js +11 -11
  133. package/dist/collection/components/utils/api/getExchangeRate.js +17 -17
  134. package/dist/collection/components/utils/api/getLocaleMessages.js +9 -9
  135. package/dist/collection/components/utils/api/getLocalization.js +24 -19
  136. package/dist/collection/components/utils/api/getShippingZones.js +9 -9
  137. package/dist/collection/components/utils/api/getZonosSetting.js +7 -7
  138. package/dist/collection/components/utils/api/prepCalculateLandedCost.js +26 -26
  139. package/dist/collection/components/utils/checkout/initCheckout.js +17 -17
  140. package/dist/collection/components/utils/checkout/isCheckoutMobile.js +1 -1
  141. package/dist/collection/components/utils/darkenColor.js +4 -4
  142. package/dist/collection/components/utils/formatCurrency.js +8 -8
  143. package/dist/collection/components/utils/formatDate.js +2 -2
  144. package/dist/collection/components/utils/getBorderRadius.js +5 -5
  145. package/dist/collection/components/utils/getButtonTheme.js +8 -8
  146. package/dist/collection/components/utils/getDaysDifference.js +4 -4
  147. package/dist/collection/components/utils/handleFetch.js +89 -77
  148. package/dist/collection/components/utils/hello/currencyConversion/currencyConvert.js +9 -9
  149. package/dist/collection/components/utils/hello/currencyConversion/currencyConvertAndFormat.js +3 -3
  150. package/dist/collection/components/utils/hello/currencyConversion/currencyDisplay.js +10 -10
  151. package/dist/collection/components/utils/hello/currencyConversion/currencyFormat.js +29 -29
  152. package/dist/collection/components/utils/hello/currencyConversion/defaultCurrencyConverter.js +35 -35
  153. package/dist/collection/components/utils/hello/currencyConversion/getCurrencyCode.js +6 -6
  154. package/dist/collection/components/utils/hello/currencyConversion/getCurrencyElements.js +13 -13
  155. package/dist/collection/components/utils/hello/currencyConversion/getInitialElementAmount.js +12 -12
  156. package/dist/collection/components/utils/hello/currencyConversion/getLanguageCode.js +6 -6
  157. package/dist/collection/components/utils/hello/detectItemRestrictions.js +23 -23
  158. package/dist/collection/components/utils/hello/getCurrentHelloLocalePage.js +17 -17
  159. package/dist/collection/components/utils/hello/getHasMoreSpaceAbove.js +5 -5
  160. package/dist/collection/components/utils/hello/getHasMoreSpaceOnRight.js +5 -5
  161. package/dist/collection/components/utils/hello/getProductsOnPage.js +42 -42
  162. package/dist/collection/components/utils/hello/getZCountryUrlParam.js +5 -0
  163. package/dist/collection/components/utils/hello/initHello.js +15 -15
  164. package/dist/collection/components/utils/hello/setZCountryUrlParam.js +9 -0
  165. package/dist/collection/components/utils/isColorVariable.js +10 -10
  166. package/dist/collection/components/utils/isDarkColor.js +1 -1
  167. package/dist/collection/components/utils/isValidSelector.js +8 -8
  168. package/dist/collection/components/utils/jsonParse.js +10 -10
  169. package/dist/collection/components/utils/lightenColor.js +4 -4
  170. package/dist/collection/components/utils/logging/log.js +22 -22
  171. package/dist/collection/components/utils/logging/logError.js +2 -2
  172. package/dist/collection/components/utils/mergeConfig.js +3 -3
  173. package/dist/collection/components/utils/submitGtag.js +9 -9
  174. package/dist/collection/environment.js +142 -111
  175. package/dist/collection/scripts/extractZonosQaUrl.js +26 -0
  176. package/dist/collection/scripts/loadStripe.js +7 -7
  177. package/dist/collection/scripts/stripe.js +80 -80
  178. package/dist/collection/scripts/zonos.js +287 -181
  179. package/dist/collection/styles/stripe/addressRuleStyle.js +14 -14
  180. package/dist/collection/styles/stripe/defaultVariable.js +14 -14
  181. package/dist/collection/types/generated/graphql.customer.types.js +1424 -1424
  182. package/dist/collection/types/generated/graphql.frontend.types.js +376 -376
  183. package/dist/collection/types/stripe/Apperance.js +56 -56
  184. package/dist/collection/types/styles/Color.js +18 -18
  185. package/dist/collection/types/styles/Text.js +97 -97
  186. package/dist/collection/utils/format.js +1 -1
  187. package/dist/collection/utils/generateVercelDeployUrl.js +20 -19
  188. package/dist/components/cart.js +497 -487
  189. package/dist/components/formatCurrency.js +8 -8
  190. package/dist/components/getBorderRadius.js +5 -5
  191. package/dist/components/isColorVariable.js +10 -10
  192. package/dist/components/isDarkColor.js +1 -1
  193. package/dist/components/localization.js +3448 -3426
  194. package/dist/components/submitGtag.js +9 -9
  195. package/dist/components/zonos-address.d.ts +2 -2
  196. package/dist/components/zonos-address2.js +90 -90
  197. package/dist/components/zonos-badge.d.ts +2 -2
  198. package/dist/components/zonos-badge2.js +52 -43
  199. package/dist/components/zonos-banner.d.ts +2 -2
  200. package/dist/components/zonos-banner2.js +88 -76
  201. package/dist/components/zonos-button.d.ts +2 -2
  202. package/dist/components/zonos-button2.js +120 -119
  203. package/dist/components/zonos-card.d.ts +2 -2
  204. package/dist/components/zonos-card2.js +48 -39
  205. package/dist/components/zonos-cart-items.d.ts +2 -2
  206. package/dist/components/zonos-cart-items2.js +43 -43
  207. package/dist/components/zonos-cart-subtotal.d.ts +2 -2
  208. package/dist/components/zonos-cart-subtotal2.js +65 -65
  209. package/dist/components/zonos-checkout-finish.d.ts +2 -2
  210. package/dist/components/zonos-checkout-finish2.js +101 -101
  211. package/dist/components/zonos-checkout-payment.d.ts +2 -2
  212. package/dist/components/zonos-checkout-payment2.js +82 -82
  213. package/dist/components/zonos-checkout.d.ts +2 -2
  214. package/dist/components/zonos-checkout.js +498 -494
  215. package/dist/components/zonos-collapse.d.ts +2 -2
  216. package/dist/components/zonos-collapse2.js +48 -46
  217. package/dist/components/zonos-component.d.ts +2 -2
  218. package/dist/components/zonos-component.js +32 -32
  219. package/dist/components/zonos-controller.d.ts +2 -2
  220. package/dist/components/zonos-controller.js +263 -177
  221. package/dist/components/zonos-country-flag.d.ts +2 -2
  222. package/dist/components/zonos-country-flag2.js +41 -36
  223. package/dist/components/zonos-country-select.d.ts +2 -2
  224. package/dist/components/zonos-country-select2.js +82 -79
  225. package/dist/components/zonos-custom-message.d.ts +2 -2
  226. package/dist/components/zonos-custom-message2.js +44 -41
  227. package/dist/components/zonos-customer-info.d.ts +2 -2
  228. package/dist/components/zonos-customer-info2.js +82 -82
  229. package/dist/components/zonos-dialog.d.ts +2 -2
  230. package/dist/components/zonos-dialog2.js +105 -103
  231. package/dist/components/zonos-hello-dialog-footer.d.ts +2 -2
  232. package/dist/components/zonos-hello-dialog-footer2.js +46 -46
  233. package/dist/components/zonos-hello-dialog.d.ts +2 -2
  234. package/dist/components/zonos-hello-dialog2.js +182 -182
  235. package/dist/components/zonos-hello.d.ts +2 -2
  236. package/dist/components/zonos-hello.js +437 -437
  237. package/dist/components/zonos-icon.d.ts +2 -2
  238. package/dist/components/zonos-icon2.js +40 -38
  239. package/dist/components/zonos-link-authentication.d.ts +2 -2
  240. package/dist/components/zonos-link-authentication2.js +60 -60
  241. package/dist/components/zonos-logo.d.ts +2 -2
  242. package/dist/components/zonos-logo2.js +37 -35
  243. package/dist/components/zonos-notification.d.ts +2 -2
  244. package/dist/components/zonos-notification2.js +82 -79
  245. package/dist/components/zonos-payment.d.ts +2 -2
  246. package/dist/components/zonos-payment2.js +64 -64
  247. package/dist/components/zonos-review.d.ts +2 -2
  248. package/dist/components/zonos-review2.js +72 -72
  249. package/dist/components/zonos-shipping-rich-radio.d.ts +2 -2
  250. package/dist/components/zonos-shipping-rich-radio2.js +62 -62
  251. package/dist/components/zonos-shipping.d.ts +2 -2
  252. package/dist/components/zonos-shipping2.js +114 -114
  253. package/dist/components/zonos-spinner.d.ts +2 -2
  254. package/dist/components/zonos-spinner2.js +31 -31
  255. package/dist/components/zonos-text.d.ts +2 -2
  256. package/dist/components/zonos-text2.js +166 -164
  257. package/dist/components/zonos-v-stack.d.ts +2 -2
  258. package/dist/components/zonos-v-stack2.js +29 -26
  259. package/dist/components/zonosStore.js +101 -97
  260. package/dist/esm/cart-cd87f476.js +598 -0
  261. package/dist/esm/getBorderRadius-35e8acce.js +16 -0
  262. package/dist/esm/getHasMoreSpaceOnRight-70eb913a.js +8 -0
  263. package/dist/esm/{index-d1aa9293.js → index-3617e24c.js} +127 -26
  264. package/dist/esm/index.js +6 -6
  265. package/dist/esm/isColorVariable-91c33804.js +14 -0
  266. package/dist/esm/{isDarkColor-6fbb9b14.js → isDarkColor-44e9e451.js} +2 -2
  267. package/dist/esm/loader.js +3 -3
  268. package/dist/esm/localization-f573428e.js +3614 -0
  269. package/dist/esm/submitGtag-75af52be.js +24 -0
  270. package/dist/esm/zonos-address_2.entry.js +108 -108
  271. package/dist/esm/zonos-badge.entry.js +25 -22
  272. package/dist/esm/zonos-banner.entry.js +65 -53
  273. package/dist/esm/zonos-button_2.entry.js +100 -99
  274. package/dist/esm/zonos-card_2.entry.js +32 -27
  275. package/dist/esm/zonos-cart-items_10.entry.js +422 -419
  276. package/dist/esm/zonos-checkout.entry.js +356 -352
  277. package/dist/esm/zonos-component.entry.js +15 -15
  278. package/dist/esm/zonos-controller.entry.js +235 -151
  279. package/dist/esm/zonos-country-flag_4.entry.js +85 -77
  280. package/dist/esm/zonos-elements.js +4 -4
  281. package/dist/esm/zonos-hello-dialog.entry.js +101 -101
  282. package/dist/esm/zonos-hello.entry.js +349 -349
  283. package/dist/esm/zonos-icon.entry.js +22 -20
  284. package/dist/esm/zonos-notification.entry.js +60 -57
  285. package/dist/esm/zonos-payment.entry.js +45 -45
  286. package/dist/esm/zonos-shipping-rich-radio.entry.js +40 -40
  287. package/dist/esm/zonos-text.entry.js +145 -143
  288. package/dist/esm/{zonosStore-05a62104.js → zonosStore-e0b7a5cf.js} +102 -98
  289. package/dist/esm-es5/cart-cd87f476.js +1 -0
  290. package/dist/esm-es5/getBorderRadius-35e8acce.js +1 -0
  291. package/dist/esm-es5/getHasMoreSpaceOnRight-70eb913a.js +1 -0
  292. package/dist/esm-es5/index-3617e24c.js +2 -0
  293. package/dist/esm-es5/index.js +1 -1
  294. package/dist/esm-es5/{isDarkColor-6fbb9b14.js → isDarkColor-44e9e451.js} +1 -1
  295. package/dist/esm-es5/loader.js +1 -1
  296. package/dist/esm-es5/localization-f573428e.js +1 -0
  297. package/dist/esm-es5/{submitGtag-a901ece5.js → submitGtag-75af52be.js} +1 -1
  298. package/dist/esm-es5/zonos-address_2.entry.js +1 -1
  299. package/dist/esm-es5/zonos-badge.entry.js +1 -1
  300. package/dist/esm-es5/zonos-banner.entry.js +1 -1
  301. package/dist/esm-es5/zonos-button_2.entry.js +1 -1
  302. package/dist/esm-es5/zonos-card_2.entry.js +1 -1
  303. package/dist/esm-es5/zonos-cart-items_10.entry.js +1 -1
  304. package/dist/esm-es5/zonos-checkout.entry.js +1 -1
  305. package/dist/esm-es5/zonos-component.entry.js +1 -1
  306. package/dist/esm-es5/zonos-controller.entry.js +1 -1
  307. package/dist/esm-es5/zonos-country-flag_4.entry.js +1 -1
  308. package/dist/esm-es5/zonos-elements.js +1 -1
  309. package/dist/esm-es5/zonos-hello-dialog.entry.js +1 -1
  310. package/dist/esm-es5/zonos-hello.entry.js +1 -1
  311. package/dist/esm-es5/zonos-icon.entry.js +1 -1
  312. package/dist/esm-es5/zonos-notification.entry.js +1 -1
  313. package/dist/esm-es5/zonos-payment.entry.js +1 -1
  314. package/dist/esm-es5/zonos-shipping-rich-radio.entry.js +1 -1
  315. package/dist/esm-es5/zonos-text.entry.js +1 -1
  316. package/dist/esm-es5/zonosStore-e0b7a5cf.js +1 -0
  317. package/dist/scripts/extractZonosQaUrl.js +30 -0
  318. package/dist/scripts/loadZonos.js +152 -20
  319. package/dist/scripts/zonos.js +152 -20
  320. package/dist/types/__tests__/build-utils/urlCheckOne.d.ts +6 -0
  321. package/dist/types/components/checkout/zonos-checkout/zonos-cart-items/zonos-cart-items.d.ts +2 -2
  322. package/dist/types/components/checkout/zonos-checkout/zonos-cart-subtotal/zonos-cart-subtotal.d.ts +1 -1
  323. package/dist/types/components/checkout/zonos-checkout/zonos-checkout-finish/zonos-checkout-finish.d.ts +28 -28
  324. package/dist/types/components/checkout/zonos-checkout/zonos-checkout-payment/zonos-checkout-payment.d.ts +31 -31
  325. package/dist/types/components/checkout/zonos-checkout/zonos-checkout.d.ts +77 -77
  326. package/dist/types/components/checkout/zonos-checkout/zonos-customer-info/zonos-customer-info.d.ts +31 -31
  327. package/dist/types/components/checkout/zonos-checkout/zonos-review/zonos-review.d.ts +14 -14
  328. package/dist/types/components/checkout/zonos-checkout/zonos-shipping/zonos-shipping.d.ts +29 -29
  329. package/dist/types/components/common/zonos-badge/zonos-badge.d.ts +35 -35
  330. package/dist/types/components/common/zonos-banner/zonos-banner.d.ts +21 -21
  331. package/dist/types/components/common/zonos-button/zonos-button.d.ts +92 -92
  332. package/dist/types/components/common/zonos-card/zonos-card.d.ts +29 -29
  333. package/dist/types/components/common/zonos-collapse/zonos-collapse.d.ts +14 -14
  334. package/dist/types/components/common/zonos-country-flag/zonos-country-flag.d.ts +16 -16
  335. package/dist/types/components/common/zonos-country-select/zonos-country-select.d.ts +9 -9
  336. package/dist/types/components/common/zonos-custom-message/zonos-custom-message.d.ts +9 -9
  337. package/dist/types/components/common/zonos-dialog/zonos-dialog.d.ts +75 -75
  338. package/dist/types/components/common/zonos-icon/zonos-icon.d.ts +27 -27
  339. package/dist/types/components/common/zonos-logo/zonos-logo.d.ts +13 -13
  340. package/dist/types/components/common/zonos-notification/zonos-notification.d.ts +28 -28
  341. package/dist/types/components/common/zonos-shipping-rich-radio/zonos-shipping-rich-radio.d.ts +35 -35
  342. package/dist/types/components/common/zonos-spinner/zonos-spinner.d.ts +11 -11
  343. package/dist/types/components/common/zonos-text/zonos-text.d.ts +30 -30
  344. package/dist/types/components/common/zonos-v-stack/zonos-v-stack.d.ts +10 -10
  345. package/dist/types/components/component-template/zonos-component/zonos-component.d.ts +14 -14
  346. package/dist/types/components/hello/zonos-hello/zonos-hello.d.ts +68 -68
  347. package/dist/types/components/hello/zonos-hello-dialog/zonos-hello-dialog-footer/zonos-hello-dialog-footer.d.ts +10 -10
  348. package/dist/types/components/hello/zonos-hello-dialog/zonos-hello-dialog.d.ts +41 -41
  349. package/dist/types/components/main/zonos-controller.d.ts +47 -37
  350. package/dist/types/components/store/checkout/cart.d.ts +64 -64
  351. package/dist/types/components/store/checkout/stripe.d.ts +44 -43
  352. package/dist/types/components/store/hello/localization.d.ts +15 -15
  353. package/dist/types/components/store/translationStore/strings.arabic.d.ts +147 -147
  354. package/dist/types/components/store/translationStore/strings.base.d.ts +147 -147
  355. package/dist/types/components/store/translationStore/strings.chinese.d.ts +147 -147
  356. package/dist/types/components/store/translationStore/strings.danish.d.ts +147 -147
  357. package/dist/types/components/store/translationStore/strings.dutch.d.ts +147 -147
  358. package/dist/types/components/store/translationStore/strings.french.d.ts +147 -147
  359. package/dist/types/components/store/translationStore/strings.german.d.ts +147 -147
  360. package/dist/types/components/store/translationStore/strings.hebrew.d.ts +147 -147
  361. package/dist/types/components/store/translationStore/strings.indonesian.d.ts +147 -147
  362. package/dist/types/components/store/translationStore/strings.italian.d.ts +147 -147
  363. package/dist/types/components/store/translationStore/strings.japanese.d.ts +147 -147
  364. package/dist/types/components/store/translationStore/strings.korean.d.ts +147 -147
  365. package/dist/types/components/store/translationStore/strings.norwegian.d.ts +147 -147
  366. package/dist/types/components/store/translationStore/strings.polish.d.ts +147 -147
  367. package/dist/types/components/store/translationStore/strings.portuguese.d.ts +147 -147
  368. package/dist/types/components/store/translationStore/strings.russian.d.ts +147 -147
  369. package/dist/types/components/store/translationStore/strings.spanish.d.ts +147 -147
  370. package/dist/types/components/store/translationStore/strings.swedish.d.ts +147 -147
  371. package/dist/types/components/store/translationStore/strings.turkish.d.ts +147 -147
  372. package/dist/types/components/store/translationStore/strings.vietnamese.d.ts +147 -147
  373. package/dist/types/components/store/translationStore.d.ts +2 -2
  374. package/dist/types/components/store/zonosStore.d.ts +23 -22
  375. package/dist/types/components/stripe/zonos-address/zonos-address.d.ts +17 -17
  376. package/dist/types/components/stripe/zonos-link-authentication/zonos-link-authentication.d.ts +9 -9
  377. package/dist/types/components/stripe/zonos-payment/zonos-payment.d.ts +10 -10
  378. package/dist/types/components/utils/addDays.d.ts +6 -6
  379. package/dist/types/components/utils/api/checkItemRestrictions.d.ts +14 -14
  380. package/dist/types/components/utils/api/getCountryLandedCost.d.ts +6 -6
  381. package/dist/types/components/utils/api/getExchangeRate.d.ts +17 -17
  382. package/dist/types/components/utils/api/getLocaleMessages.d.ts +15 -15
  383. package/dist/types/components/utils/api/getLocalization.d.ts +2 -2
  384. package/dist/types/components/utils/api/getZonosSetting.d.ts +4 -4
  385. package/dist/types/components/utils/changeDeepProperty.d.ts +4 -4
  386. package/dist/types/components/utils/changeDeepPropertyAtIndex.d.ts +5 -5
  387. package/dist/types/components/utils/checkout/initCheckout.d.ts +1 -1
  388. package/dist/types/components/utils/darkenColor.d.ts +2 -2
  389. package/dist/types/components/utils/formatCurrency.d.ts +3 -3
  390. package/dist/types/components/utils/formatDate.d.ts +6 -6
  391. package/dist/types/components/utils/handleFetch.d.ts +7 -7
  392. package/dist/types/components/utils/hello/detectItemRestrictions.d.ts +10 -10
  393. package/dist/types/components/utils/hello/getZCountryUrlParam.d.ts +2 -0
  394. package/dist/types/components/utils/hello/setZCountryUrlParam.d.ts +2 -0
  395. package/dist/types/components/utils/lightenColor.d.ts +2 -2
  396. package/dist/types/components/utils/mergeConfig.d.ts +1 -1
  397. package/dist/types/components/utils/submitGtag.d.ts +3 -3
  398. package/dist/types/components.d.ts +96 -0
  399. package/dist/types/environment.d.ts +42 -32
  400. package/dist/types/scripts/extractZonosQaUrl.d.ts +11 -0
  401. package/dist/types/scripts/stripe.d.ts +2 -2
  402. package/dist/types/scripts/zonos.d.ts +50 -37
  403. package/dist/types/stencil-public-runtime.d.ts +29 -0
  404. package/dist/types/styles/stripe/addressRuleStyle.d.ts +1 -1
  405. package/dist/types/styles/stripe/defaultVariable.d.ts +2 -2
  406. package/dist/types/types/ICountryJson.d.ts +20 -20
  407. package/dist/types/types/JsonError.d.ts +3 -3
  408. package/dist/types/types/Translation.d.ts +1 -1
  409. package/dist/types/types/checkout/CheckoutConfig.d.ts +52 -52
  410. package/dist/types/types/checkout/api/CalculateLandedCostRequest.d.ts +16 -16
  411. package/dist/types/types/generated/graphql.customer.types.d.ts +1968 -1968
  412. package/dist/types/types/generated/graphql.frontend.types.d.ts +449 -449
  413. package/dist/types/types/hello/HelloConfig.d.ts +20 -20
  414. package/dist/types/types/hello/Product.d.ts +3 -3
  415. package/dist/types/types/hello/RestrictedItem.d.ts +1 -1
  416. package/dist/types/types/online-store/OnlineStoreConfig.d.ts +1 -1
  417. package/dist/types/types/stripe/Apperance.d.ts +3 -3
  418. package/dist/types/types/styles/Text.d.ts +90 -90
  419. package/dist/types/types/utils/deep/IDeepKeyof.d.ts +1 -1
  420. package/dist/types/types/utils/deep/IDeepKeyofAtIndex.d.ts +2 -2
  421. package/dist/types/utils/generateVercelDeployUrl.d.ts +2 -2
  422. package/dist/zonos-elements/assets/RemoveIcon.svg +1 -1
  423. package/dist/zonos-elements/index.esm.js +1 -1
  424. package/dist/zonos-elements/p-0175125e.system.js +1 -0
  425. package/dist/zonos-elements/p-03923a86.system.entry.js +1 -0
  426. package/dist/zonos-elements/p-08298e74.entry.js +1 -0
  427. package/dist/zonos-elements/p-1bddc7ca.system.entry.js +1 -0
  428. package/dist/zonos-elements/{p-770c959e.js → p-1f8b684a.js} +1 -1
  429. package/dist/zonos-elements/p-2228b050.entry.js +1 -0
  430. package/dist/zonos-elements/p-23e7c655.system.js +1 -1
  431. package/dist/zonos-elements/p-2466df77.entry.js +1 -0
  432. package/dist/zonos-elements/p-29b993c2.system.entry.js +1 -0
  433. package/dist/zonos-elements/p-2a32dc0a.system.entry.js +1 -0
  434. package/dist/zonos-elements/p-2a666084.entry.js +1 -0
  435. package/dist/zonos-elements/p-2f1e9192.system.entry.js +1 -0
  436. package/dist/zonos-elements/{p-f7875c40.js → p-39a5e8e0.js} +1 -1
  437. package/dist/zonos-elements/p-44ddebe4.system.entry.js +1 -0
  438. package/dist/zonos-elements/p-4e8b5d86.system.entry.js +1 -0
  439. package/dist/zonos-elements/p-534dcbd4.system.js +1 -0
  440. package/dist/zonos-elements/p-5a41b5fd.entry.js +1 -0
  441. package/dist/zonos-elements/p-5d0eceaa.entry.js +1 -0
  442. package/dist/zonos-elements/p-62ccb686.entry.js +1 -0
  443. package/dist/zonos-elements/p-643eeb24.system.js +1 -0
  444. package/dist/zonos-elements/p-660a588b.entry.js +1 -0
  445. package/dist/zonos-elements/p-6affe5cc.entry.js +1 -0
  446. package/dist/zonos-elements/p-72ea628d.system.js +1 -0
  447. package/dist/zonos-elements/{p-85ab35c9.system.js → p-754bdfdb.system.js} +1 -1
  448. package/dist/zonos-elements/{p-164fae93.system.js → p-779621e4.system.js} +1 -1
  449. package/dist/zonos-elements/{p-08695f4e.js → p-77a7929b.js} +1 -1
  450. package/dist/zonos-elements/p-7a15d841.entry.js +1 -0
  451. package/dist/zonos-elements/p-7a81ccb5.system.entry.js +1 -0
  452. package/dist/zonos-elements/p-80ba24a8.system.js +1 -0
  453. package/dist/zonos-elements/p-83d100b8.entry.js +1 -0
  454. package/dist/zonos-elements/{p-bf070bf6.js → p-8bbad467.js} +1 -1
  455. package/dist/zonos-elements/p-8ebc3ca5.system.entry.js +1 -0
  456. package/dist/zonos-elements/p-9c78d0ca.entry.js +1 -0
  457. package/dist/zonos-elements/p-9ef86de7.entry.js +1 -0
  458. package/dist/zonos-elements/p-ab46cee9.system.entry.js +1 -0
  459. package/dist/zonos-elements/p-b0268bc5.entry.js +1 -0
  460. package/dist/zonos-elements/p-b4db1620.entry.js +1 -0
  461. package/dist/zonos-elements/p-bc7bf53e.system.js +1 -0
  462. package/dist/zonos-elements/p-bec05c21.system.js +2 -0
  463. package/dist/zonos-elements/p-bec21999.system.js +1 -0
  464. package/dist/zonos-elements/p-c299049e.js +1 -0
  465. package/dist/zonos-elements/p-cd4f8e13.system.entry.js +1 -0
  466. package/dist/zonos-elements/p-ceb2cd7b.system.entry.js +1 -0
  467. package/dist/zonos-elements/p-cf4545ed.system.entry.js +1 -0
  468. package/dist/zonos-elements/p-cf8aaa17.js +2 -0
  469. package/dist/zonos-elements/p-dc9b318c.system.entry.js +1 -0
  470. package/dist/zonos-elements/p-dcf64928.system.entry.js +1 -0
  471. package/dist/zonos-elements/p-e1de2a1f.js +1 -0
  472. package/dist/zonos-elements/{p-3f3fbcea.entry.js → p-e694312d.entry.js} +1 -1
  473. package/dist/zonos-elements/p-ec26fe57.entry.js +1 -0
  474. package/dist/zonos-elements/p-edbea8df.system.js +1 -0
  475. package/dist/zonos-elements/p-f8198015.system.entry.js +1 -0
  476. package/dist/zonos-elements/p-fcd4fc66.system.entry.js +1 -0
  477. package/dist/zonos-elements/zonos-elements.esm.js +1 -1
  478. package/dist/zonos-elements/zonos-elements.js +15 -15
  479. package/package.json +57 -56
  480. package/dist/cjs/cart-d4b52ae8.js +0 -606
  481. package/dist/cjs/getBorderRadius-fdd605c6.js +0 -18
  482. package/dist/cjs/getHasMoreSpaceOnRight-2855491b.js +0 -10
  483. package/dist/cjs/isColorVariable-c1ed7303.js +0 -16
  484. package/dist/cjs/localization-d7fe7290.js +0 -3606
  485. package/dist/cjs/submitGtag-d65003f9.js +0 -27
  486. package/dist/collection/components/utils/hello/setZonosCountryUrlParam.js +0 -9
  487. package/dist/esm/cart-e1b93711.js +0 -588
  488. package/dist/esm/getBorderRadius-45764ad7.js +0 -16
  489. package/dist/esm/getHasMoreSpaceOnRight-feba1ae2.js +0 -8
  490. package/dist/esm/isColorVariable-4cda28c9.js +0 -14
  491. package/dist/esm/localization-f3828793.js +0 -3592
  492. package/dist/esm/submitGtag-a901ece5.js +0 -24
  493. package/dist/esm-es5/cart-e1b93711.js +0 -1
  494. package/dist/esm-es5/getBorderRadius-45764ad7.js +0 -1
  495. package/dist/esm-es5/getHasMoreSpaceOnRight-feba1ae2.js +0 -1
  496. package/dist/esm-es5/index-d1aa9293.js +0 -2
  497. package/dist/esm-es5/zonosStore-05a62104.js +0 -1
  498. package/dist/types/components/utils/hello/setZonosCountryUrlParam.d.ts +0 -2
  499. package/dist/zonos-elements/p-0190f7c4.entry.js +0 -1
  500. package/dist/zonos-elements/p-05256415.system.entry.js +0 -1
  501. package/dist/zonos-elements/p-0e0b46a5.js +0 -1
  502. package/dist/zonos-elements/p-15b71f0b.system.entry.js +0 -1
  503. package/dist/zonos-elements/p-23204b78.system.entry.js +0 -1
  504. package/dist/zonos-elements/p-25db3885.js +0 -1
  505. package/dist/zonos-elements/p-28681677.entry.js +0 -1
  506. package/dist/zonos-elements/p-2b6325ab.entry.js +0 -1
  507. package/dist/zonos-elements/p-34a49bce.entry.js +0 -1
  508. package/dist/zonos-elements/p-36425562.system.entry.js +0 -1
  509. package/dist/zonos-elements/p-365970ff.entry.js +0 -1
  510. package/dist/zonos-elements/p-40083e93.system.entry.js +0 -1
  511. package/dist/zonos-elements/p-40778e43.entry.js +0 -1
  512. package/dist/zonos-elements/p-43a25dab.entry.js +0 -1
  513. package/dist/zonos-elements/p-4a5096d2.system.js +0 -1
  514. package/dist/zonos-elements/p-53649e16.system.js +0 -1
  515. package/dist/zonos-elements/p-5d7ffddb.entry.js +0 -1
  516. package/dist/zonos-elements/p-60821b2a.entry.js +0 -1
  517. package/dist/zonos-elements/p-64fdb7b6.system.js +0 -1
  518. package/dist/zonos-elements/p-68d06767.system.js +0 -2
  519. package/dist/zonos-elements/p-6d82986c.system.entry.js +0 -1
  520. package/dist/zonos-elements/p-6dcd752e.system.js +0 -1
  521. package/dist/zonos-elements/p-6e7cd3f7.entry.js +0 -1
  522. package/dist/zonos-elements/p-7bacecf7.entry.js +0 -1
  523. package/dist/zonos-elements/p-81c699f7.system.entry.js +0 -1
  524. package/dist/zonos-elements/p-824395fd.system.entry.js +0 -1
  525. package/dist/zonos-elements/p-8a75b765.system.entry.js +0 -1
  526. package/dist/zonos-elements/p-8aabbb9b.system.js +0 -1
  527. package/dist/zonos-elements/p-8c867835.system.js +0 -1
  528. package/dist/zonos-elements/p-8db8cc05.system.js +0 -1
  529. package/dist/zonos-elements/p-914ce305.system.entry.js +0 -1
  530. package/dist/zonos-elements/p-9688bb12.entry.js +0 -1
  531. package/dist/zonos-elements/p-96a3c767.entry.js +0 -1
  532. package/dist/zonos-elements/p-98a6e093.system.entry.js +0 -1
  533. package/dist/zonos-elements/p-a3641931.system.entry.js +0 -1
  534. package/dist/zonos-elements/p-aca66238.system.entry.js +0 -1
  535. package/dist/zonos-elements/p-b618cf03.entry.js +0 -1
  536. package/dist/zonos-elements/p-b75ffe64.system.entry.js +0 -1
  537. package/dist/zonos-elements/p-c8ad044e.system.entry.js +0 -1
  538. package/dist/zonos-elements/p-cc070c1c.entry.js +0 -1
  539. package/dist/zonos-elements/p-cc1c785c.system.entry.js +0 -1
  540. package/dist/zonos-elements/p-dc8d7000.js +0 -2
  541. package/dist/zonos-elements/p-de9d8a4f.system.entry.js +0 -1
  542. package/dist/zonos-elements/p-f8491335.system.js +0 -1
  543. package/dist/zonos-elements/p-f868ed42.entry.js +0 -1
  544. /package/dist/esm-es5/{isColorVariable-4cda28c9.js → isColorVariable-91c33804.js} +0 -0
  545. /package/dist/zonos-elements/{p-0636859b.js → p-4c414a92.js} +0 -0
  546. /package/dist/zonos-elements/{p-b6c499d4.js → p-5883217a.js} +0 -0
@@ -1,11 +1,11 @@
1
- import { r as registerInstance, h, F as Fragment, H as Host } from './index-d1aa9293.js';
2
- import { k as initStripeElements, c as cartStore, h as cartStoreUpdateItems, g as cartStoreReset, s as stripeStore, l as stripeStoreInitCheckoutSession, j as cartStoreUpdateToErrorState, m as stripeStorePrefetchLandedCost, d as cartStoreNextStep, n as stripeStoreConfirmPayment, o as stripeStoreReset, e as cartStorePreviousStep } from './cart-e1b93711.js';
3
- import { a as localizationStore, l as log, t as translate } from './localization-f3828793.js';
4
- import { z as zonosStore, m as mergeConfig } from './zonosStore-05a62104.js';
5
- import { s as submitGtag, i as isCheckoutMobile } from './submitGtag-a901ece5.js';
1
+ import { r as registerInstance, h, F as Fragment, H as Host } from './index-3617e24c.js';
2
+ import { k as initStripeElements, c as cartStore, h as cartStoreUpdateItems, g as cartStoreReset, s as stripeStore, l as stripeStoreInitCheckoutSession, j as cartStoreUpdateToErrorState, m as stripeStorePrefetchLandedCost, d as cartStoreNextStep, n as stripeStoreConfirmPayment, o as stripeStoreReset, e as cartStorePreviousStep } from './cart-cd87f476.js';
3
+ import { a as localizationStore, l as log, t as translate } from './localization-f573428e.js';
4
+ import { z as zonosStore, m as mergeConfig } from './zonosStore-e0b7a5cf.js';
5
+ import { s as submitGtag, i as isCheckoutMobile } from './submitGtag-75af52be.js';
6
6
  import { c as classes } from './classes-0d95c529.js';
7
- import { g as getBorderRadius } from './getBorderRadius-45764ad7.js';
8
- import { i as isDarkColor } from './isDarkColor-6fbb9b14.js';
7
+ import { g as getBorderRadius } from './getBorderRadius-35e8acce.js';
8
+ import { i as isDarkColor } from './isDarkColor-44e9e451.js';
9
9
 
10
10
  const LeftArrow = `<svg color="var(--amino-gray-800)" fill="none" height="24" viewBox="0 0 24 24" width="24" xmlns="https://www.w3.org/2000/svg"><path clip-rule="evenodd" d="M9.707 16.707a1 1 0 0 1-1.414 0l-3.647-3.646a1.5 1.5 0 0 1 0-2.122l3.647-3.646a1 1 0 0 1 1.414 1.414L7.414 11H19a1 1 0 1 1 0 2H7.414l2.293 2.293a1 1 0 0 1 0 1.414Z" fill="currentColor" fill-rule="evenodd"></path></svg>`;
11
11
 
@@ -16,368 +16,372 @@ const MessageIcon = `<svg width="18" height="18" viewBox="0 0 18 18" fill="none"
16
16
 
17
17
  const RemoveIcon = `<svg color="var(--amino-gray-800)" fill="none" height="24" viewBox="0 0 24 24" width="24" xmlns="https://www.w3.org/2000/svg"><path clip-rule="evenodd" d="M22 12c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10Z" data-is-secondary-color="true" fill="var(--amino-gray-200)" fill-rule="evenodd"></path><path clip-rule="evenodd" d="M8.293 8.293a1 1 0 0 1 1.414 0L12 10.586l2.293-2.293a1 1 0 1 1 1.414 1.414L13.414 12l2.293 2.293a1 1 0 0 1-1.414 1.414L12 13.414l-2.293 2.293a1 1 0 0 1-1.414-1.414L10.586 12 8.293 9.707a1 1 0 0 1 0-1.414Z" fill="currentColor" fill-rule="evenodd"></path></svg>`;
18
18
 
19
- const zonosCheckoutCss = ".sc-zonos-checkout-h{font-family:Inter;display:block}.sc-zonos-checkout-h img.sc-zonos-checkout{max-width:100%}.sc-zonos-checkout-h dl.sc-zonos-checkout,.sc-zonos-checkout-h dd.sc-zonos-checkout,.sc-zonos-checkout-h h1.sc-zonos-checkout,.sc-zonos-checkout-h h2.sc-zonos-checkout,.sc-zonos-checkout-h h3.sc-zonos-checkout,.sc-zonos-checkout-h h4.sc-zonos-checkout,.sc-zonos-checkout-h h5.sc-zonos-checkout,.sc-zonos-checkout-h h6.sc-zonos-checkout,.sc-zonos-checkout-h hr.sc-zonos-checkout,.sc-zonos-checkout-h figure.sc-zonos-checkout,.sc-zonos-checkout-h p.sc-zonos-checkout,.sc-zonos-checkout-h pre.sc-zonos-checkout{margin:0}.sc-zonos-checkout-h{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.sc-zonos-checkout-h *.sc-zonos-checkout::-webkit-scrollbar{width:10px}.sc-zonos-checkout-h *.sc-zonos-checkout::-webkit-scrollbar-track{background:var(--amino-gray-50)}.sc-zonos-checkout-h *.sc-zonos-checkout::-webkit-scrollbar-thumb{border-radius:10px;background:#cccccc;border:3px solid transparent;background-clip:content-box}.sc-zonos-checkout-h *.sc-zonos-checkout::-webkit-scrollbar-thumb:hover{background:#d6d6d6}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout{display:-ms-flexbox;display:flex;height:100%;overflow:hidden;border-radius:var(--border-radius, var(--amino-radius-10))}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--left.sc-zonos-checkout,.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--right.sc-zonos-checkout{-ms-flex:1;flex:1;padding:var(--amino-space-48) var(--amino-space-56)}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--left.sc-zonos-checkout{background-color:var(--primary-color, var(--amino-gray-0));border-right:1px solid var(--amino-gray-200)}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--right.sc-zonos-checkout{background-color:var(--amino-gray-0);padding-bottom:var(--amino-space-80)}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--done.sc-zonos-checkout{width:100%;max-height:100%;height:100%;overflow:auto;-ms-flex-direction:column;flex-direction:column;background-color:var(--amino-gray-0);-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:var(--amino-space-24);padding-bottom:50px}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--done.sc-zonos-checkout .zonos--header.sc-zonos-checkout{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center;width:100%}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--done.sc-zonos-checkout .zonos--header.sc-zonos-checkout img.sc-zonos-checkout{width:150px;min-width:150px}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--done.sc-zonos-checkout .zonos--logo.sc-zonos-checkout{margin-bottom:0}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--done.sc-zonos-checkout zonos-checkout-finish.sc-zonos-checkout{-ms-flex:1;flex:1}.sc-zonos-checkout-h .zonos--left.sc-zonos-checkout{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.sc-zonos-checkout-h .zonos--left.sc-zonos-checkout .zonos--back-button.sc-zonos-checkout{margin-bottom:var(--amino-space-24)}.sc-zonos-checkout-h .zonos--left.sc-zonos-checkout .zonos--wrapper.sc-zonos-checkout{padding:0 var(--amino-space-8) var(--amino-space-8)}.sc-zonos-checkout-h .zonos--left.sc-zonos-checkout .zonos--payment-error-banner.sc-zonos-checkout{margin-top:var(--amino-space-24)}.sc-zonos-checkout-h .zonos--right.sc-zonos-checkout{position:relative}.sc-zonos-checkout-h .zonos--right.sc-zonos-checkout .zonos--close-button.sc-zonos-checkout{position:absolute;right:var(--amino-space-24);top:var(--amino-space-24)}.sc-zonos-checkout-h .zonos--footer.sc-zonos-checkout{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;-ms-flex-align:center;align-items:center;position:absolute;bottom:var(--amino-space-32);right:var(--amino-space-56);gap:var(--amino-space-8)}.sc-zonos-checkout-h .zonos--wrapper.sc-zonos-checkout{overflow:auto;max-height:100%;position:relative}.sc-zonos-checkout-h .flex--wrapper.sc-zonos-checkout{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;max-height:100%}.sc-zonos-checkout-h .zonos--logo.sc-zonos-checkout{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.sc-zonos-checkout-h .zonos--checkout-default-message.sc-zonos-checkout{margin-left:var(--amino-space-76);margin-bottom:var(--amino-space-8)}.preview.sc-zonos-checkout-h{min-width:500px;margin:auto}.preview.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout{border:var(--amino-border)}.preview.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--done.sc-zonos-checkout{padding:var(--amino-space-32)}.mobile.sc-zonos-checkout-h{min-width:auto}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;overflow:auto;border-radius:0;max-height:100%;height:100%;border:0}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--left.sc-zonos-checkout,.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--right.sc-zonos-checkout{padding:var(--amino-space-12)}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--left.sc-zonos-checkout{-ms-flex-order:2;order:2}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--right.sc-zonos-checkout{-ms-flex-order:1;order:1;padding-top:var(--amino-space-16)}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--right.sc-zonos-checkout .zonos--wrapper.sc-zonos-checkout{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;gap:var(--amino-space-16);margin-top:var(--amino-space-24);border:var(--amino-border);border-radius:var(--border-radius, var(--amino-radius-10));background-color:var(--amino-gray-50);padding:var(--amino-space-12);margin-top:var(--amino-space-32)}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--wrapper.sc-zonos-checkout{max-height:100%}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--footer.sc-zonos-checkout{-ms-flex-order:3;order:3}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--done.sc-zonos-checkout{width:auto}.mobile.sc-zonos-checkout-h .zonos--cart-subtotal.sc-zonos-checkout{margin:0}.mobile.sc-zonos-checkout-h .zonos--footer.sc-zonos-checkout{bottom:0;left:0;padding:var(--amino-space-12);position:relative;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;background-color:var(--amino-gray-0)}";
19
+ const zonosCheckoutCss = ".sc-zonos-checkout-h{font-family:var(--font-family, Inter), Inter;display:block}.sc-zonos-checkout-h *.sc-zonos-checkout{font-family:var(--font-family, Inter), Inter}.sc-zonos-checkout-h img.sc-zonos-checkout{max-width:100%}.sc-zonos-checkout-h dl.sc-zonos-checkout,.sc-zonos-checkout-h dd.sc-zonos-checkout,.sc-zonos-checkout-h h1.sc-zonos-checkout,.sc-zonos-checkout-h h2.sc-zonos-checkout,.sc-zonos-checkout-h h3.sc-zonos-checkout,.sc-zonos-checkout-h h4.sc-zonos-checkout,.sc-zonos-checkout-h h5.sc-zonos-checkout,.sc-zonos-checkout-h h6.sc-zonos-checkout,.sc-zonos-checkout-h hr.sc-zonos-checkout,.sc-zonos-checkout-h figure.sc-zonos-checkout,.sc-zonos-checkout-h p.sc-zonos-checkout,.sc-zonos-checkout-h pre.sc-zonos-checkout{margin:0}.sc-zonos-checkout-h{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.sc-zonos-checkout-h *.sc-zonos-checkout::-webkit-scrollbar{width:10px}.sc-zonos-checkout-h *.sc-zonos-checkout::-webkit-scrollbar-track{background:var(--amino-gray-50)}.sc-zonos-checkout-h *.sc-zonos-checkout::-webkit-scrollbar-thumb{border-radius:10px;background:#cccccc;border:3px solid transparent;background-clip:content-box}.sc-zonos-checkout-h *.sc-zonos-checkout::-webkit-scrollbar-thumb:hover{background:#d6d6d6}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout{display:-ms-flexbox;display:flex;height:100%;overflow:hidden;border-radius:var(--border-radius, var(--amino-radius-10))}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--left.sc-zonos-checkout,.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--right.sc-zonos-checkout{-ms-flex:1;flex:1;padding:var(--amino-space-48) var(--amino-space-56)}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--left.sc-zonos-checkout{background-color:var(--primary-color, var(--amino-gray-0));border-right:1px solid var(--amino-gray-200)}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--right.sc-zonos-checkout{background-color:var(--amino-gray-0);padding-bottom:var(--amino-space-80)}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--done.sc-zonos-checkout{width:100%;max-height:100%;height:100%;overflow:auto;-ms-flex-direction:column;flex-direction:column;background-color:var(--amino-gray-0);-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:var(--amino-space-24);padding-bottom:50px}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--done.sc-zonos-checkout .zonos--header.sc-zonos-checkout{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center;width:100%}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--done.sc-zonos-checkout .zonos--header.sc-zonos-checkout img.sc-zonos-checkout{width:150px;min-width:150px}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--done.sc-zonos-checkout .zonos--logo.sc-zonos-checkout{margin-bottom:0}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--done.sc-zonos-checkout zonos-checkout-finish.sc-zonos-checkout{-ms-flex:1;flex:1}.sc-zonos-checkout-h .zonos--left.sc-zonos-checkout{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.sc-zonos-checkout-h .zonos--left.sc-zonos-checkout .zonos--back-button.sc-zonos-checkout{margin-bottom:var(--amino-space-24)}.sc-zonos-checkout-h .zonos--left.sc-zonos-checkout .zonos--wrapper.sc-zonos-checkout{padding:0 var(--amino-space-8) var(--amino-space-8)}.sc-zonos-checkout-h .zonos--left.sc-zonos-checkout .zonos--payment-error-banner.sc-zonos-checkout{margin-top:var(--amino-space-24)}.sc-zonos-checkout-h .zonos--right.sc-zonos-checkout{position:relative}.sc-zonos-checkout-h .zonos--right.sc-zonos-checkout .zonos--close-button.sc-zonos-checkout{position:absolute;right:var(--amino-space-24);top:var(--amino-space-24)}.sc-zonos-checkout-h .zonos--footer.sc-zonos-checkout{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;-ms-flex-align:center;align-items:center;position:absolute;bottom:var(--amino-space-32);right:var(--amino-space-56);gap:var(--amino-space-8)}.sc-zonos-checkout-h .zonos--wrapper.sc-zonos-checkout{overflow:auto;max-height:100%;position:relative}.sc-zonos-checkout-h .flex--wrapper.sc-zonos-checkout{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;max-height:100%}.sc-zonos-checkout-h .zonos--logo.sc-zonos-checkout{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.sc-zonos-checkout-h .zonos--checkout-default-message.sc-zonos-checkout{margin-left:var(--amino-space-76);margin-bottom:var(--amino-space-8)}.preview.sc-zonos-checkout-h{min-width:500px;margin:auto}.preview.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout{border:var(--amino-border)}.preview.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--done.sc-zonos-checkout{padding:var(--amino-space-32)}.mobile.sc-zonos-checkout-h{min-width:auto}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;overflow:auto;border-radius:0;max-height:100%;height:100%;border:0}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--left.sc-zonos-checkout,.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--right.sc-zonos-checkout{padding:var(--amino-space-12)}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--left.sc-zonos-checkout{-ms-flex-order:2;order:2}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--right.sc-zonos-checkout{-ms-flex-order:1;order:1;padding-top:var(--amino-space-16)}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--right.sc-zonos-checkout .zonos--wrapper.sc-zonos-checkout{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;gap:var(--amino-space-16);margin-top:var(--amino-space-24);border:var(--amino-border);border-radius:var(--border-radius, var(--amino-radius-10));background-color:var(--amino-gray-50);padding:var(--amino-space-12);margin-top:var(--amino-space-32)}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--wrapper.sc-zonos-checkout{max-height:100%}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--footer.sc-zonos-checkout{-ms-flex-order:3;order:3}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--done.sc-zonos-checkout{width:auto}.mobile.sc-zonos-checkout-h .zonos--cart-subtotal.sc-zonos-checkout{margin:0}.mobile.sc-zonos-checkout-h .zonos--footer.sc-zonos-checkout{bottom:0;left:0;padding:var(--amino-space-12);position:relative;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;background-color:var(--amino-gray-0)}";
20
20
 
21
21
  const ZonosCheckout = class {
22
- constructor(hostRef) {
23
- registerInstance(this, hostRef);
24
- this.applyStripeTheme = async () => {
25
- var _a, _b, _c;
26
- const theme = ((_a = this.appearanceSettingsOverride) === null || _a === void 0 ? void 0 : _a.theme) || zonosStore.appearance.theme;
27
- await initStripeElements({
28
- overrideBorderRaidus: (_b = this.appearanceSettingsOverride) === null || _b === void 0 ? void 0 : _b.style,
29
- overridePrimaryColor: (_c = this.appearanceSettingsOverride) === null || _c === void 0 ? void 0 : _c.colorPrimary,
30
- // only override theme or theme from appearance if it's mobile
31
- overrideTheme: this.isMobile ? theme : undefined,
32
- });
33
- };
34
- this.isShippableCountry = (showLog = true) => {
35
- if (!localizationStore.localizationLoaded) {
36
- return false;
37
- }
38
- // if localization is loaded and the localization is not a shippable country, keep the original click event
39
- if (!localizationStore.isShippableCountry) {
40
- if (showLog) {
41
- log(`Checkout: not shippable country`);
42
- }
43
- return false;
44
- }
45
- return true;
46
- };
47
- this.getCurrentLocalePageEnum = () => {
48
- switch (cartStore.step) {
49
- case 'customer-info':
50
- return 'checkout_customer_info';
51
- case 'shipping':
52
- return 'checkout_shipping_info';
53
- case 'payment':
54
- return 'checkout_payment_info';
55
- default:
56
- return null;
57
- }
58
- };
59
- this.appearanceSettingsOverride = undefined;
60
- this.preview = false;
61
- this.mobile = false;
62
- this.defaultAddress = null;
63
- this.forceDialogOpen = false;
64
- this.open = this.forceDialogOpen;
65
- this.stripe = window.Zonos.stripe;
66
- this.submitLoading = false;
67
- this.paymentError = false;
68
- this.collapseReviewMobile = false;
69
- this.isAttachError = false;
70
- this.isMobile = false;
71
- this.zonosReviewRef = undefined;
72
- this.storybookPaymentStatusOverride = undefined;
73
- }
74
- /**
75
- * Init cart info handler event
76
- */
77
- async initCartInfoHandler(e) {
78
- const cartItems = e.detail;
79
- void cartStoreUpdateItems(cartItems);
80
- }
81
- /**
82
- * Close dialog action
83
- */
84
- async closeDialogHandler() {
85
- submitGtag('zonos-checkout-close');
86
- this.open = this.forceDialogOpen || false;
87
- if (!this.preview && cartStore.step === 'finish') {
88
- // reset cart store if it's not preview mode and only when checkout is in the finish step.
89
- cartStoreReset();
22
+ constructor(hostRef) {
23
+ registerInstance(this, hostRef);
24
+ this.applyStripeTheme = async () => {
25
+ var _a, _b, _c;
26
+ const theme = ((_a = this.appearanceSettingsOverride) === null || _a === void 0 ? void 0 : _a.theme) || zonosStore.appearance.theme;
27
+ await initStripeElements({
28
+ overrideBorderRaidus: (_b = this.appearanceSettingsOverride) === null || _b === void 0 ? void 0 : _b.style,
29
+ overridePrimaryColor: (_c = this.appearanceSettingsOverride) === null || _c === void 0 ? void 0 : _c.colorPrimary,
30
+ // only override theme or theme from appearance if it's mobile
31
+ overrideTheme: this.isMobile ? theme : undefined,
32
+ });
33
+ };
34
+ this.isShippableCountry = (showLog = true) => {
35
+ if (!localizationStore.localizationLoaded) {
36
+ return false;
37
+ }
38
+ // if localization is loaded and the localization is not a shippable country, keep the original click event
39
+ if (!localizationStore.isShippableCountry) {
40
+ if (showLog) {
41
+ log(`Checkout: not shippable country`);
42
+ }
43
+ return false;
44
+ }
45
+ return true;
46
+ };
47
+ this.getCurrentLocalePageEnum = () => {
48
+ switch (cartStore.step) {
49
+ case 'customer-info':
50
+ return 'checkout_customer_info';
51
+ case 'shipping':
52
+ return 'checkout_shipping_info';
53
+ case 'payment':
54
+ return 'checkout_payment_info';
55
+ default:
56
+ return null;
57
+ }
58
+ };
59
+ this.appearanceSettingsOverride = undefined;
60
+ this.preview = false;
61
+ this.mobile = false;
62
+ this.defaultAddress = null;
63
+ this.forceDialogOpen = false;
64
+ this.open = this.forceDialogOpen;
65
+ this.stripe = window.Zonos.stripe;
66
+ this.submitLoading = false;
67
+ this.paymentError = false;
68
+ this.collapseReviewMobile = false;
69
+ this.isAttachError = false;
70
+ this.isMobile = false;
71
+ this.zonosReviewRef = undefined;
72
+ this.storybookPaymentStatusOverride = undefined;
90
73
  }
91
- // reset step to customer info
92
- cartStore.step = 'customer-info';
93
- }
94
- async buildCartAndInit() {
95
- if (zonosStore.checkoutSettings.buildCartDetail) {
96
- log('build cart detail');
97
- const cartItems = await zonosStore.checkoutSettings.buildCartDetail();
98
- await cartStoreUpdateItems(cartItems);
74
+ /**
75
+ * Init cart info handler event
76
+ */
77
+ async initCartInfoHandler(e) {
78
+ const cartItems = e.detail;
79
+ void cartStoreUpdateItems(cartItems);
99
80
  }
100
- // if client secret doesn't exist, request a new one.
101
- if (!stripeStore.clientSecret) {
102
- const success = await stripeStoreInitCheckoutSession();
103
- log(`stripeStoreInitCheckoutSession: ${success}`);
104
- if (!success) {
105
- return false;
106
- }
81
+ /**
82
+ * Close dialog action
83
+ */
84
+ async closeDialogHandler() {
85
+ submitGtag('zonos-checkout-close');
86
+ this.open = this.forceDialogOpen || false;
87
+ if (!this.preview && cartStore.step === 'finish') {
88
+ // reset cart store if it's not preview mode and only when checkout is in the finish step.
89
+ cartStoreReset();
90
+ }
91
+ // reset step to customer info
92
+ cartStore.step = 'customer-info';
107
93
  }
108
- // apply theme to stripe elements
109
- await this.applyStripeTheme();
110
- return true;
111
- }
112
- attachCheckout() {
113
- const buttonAnchorSelector = zonosStore.checkoutSettings.placeOrderButtonSelector;
114
- if (!buttonAnchorSelector) {
115
- // do nothing if button element is not found
116
- return;
94
+ async buildCartAndInit() {
95
+ if (zonosStore.checkoutSettings.buildCartDetail) {
96
+ log('build cart detail');
97
+ const cartItems = await zonosStore.checkoutSettings.buildCartDetail();
98
+ await cartStoreUpdateItems(cartItems);
99
+ }
100
+ // if client secret doesn't exist, request a new one.
101
+ if (!stripeStore.clientSecret) {
102
+ const success = await stripeStoreInitCheckoutSession();
103
+ log(`stripeStoreInitCheckoutSession: ${success}`);
104
+ if (!success) {
105
+ return false;
106
+ }
107
+ }
108
+ // apply theme to stripe elements
109
+ await this.applyStripeTheme();
110
+ return true;
111
+ }
112
+ attachCheckout() {
113
+ const buttonAnchorSelector = zonosStore.checkoutSettings.placeOrderButtonSelector;
114
+ if (!buttonAnchorSelector) {
115
+ // do nothing if button element is not found
116
+ return;
117
+ }
118
+ const buttonAnchorElements = document.querySelectorAll(buttonAnchorSelector);
119
+ // only attach event once, and looping through all of the button elements
120
+ buttonAnchorElements.forEach(button => {
121
+ const isEventAttached = button.getAttribute('data-zonos-checkout-attached');
122
+ if (isEventAttached) {
123
+ // do nothing if event is already attached
124
+ return;
125
+ }
126
+ button.addEventListener('click', async (e) => {
127
+ // do nothing if it's not shippable country
128
+ if (!this.isShippableCountry()) {
129
+ return;
130
+ }
131
+ e.preventDefault();
132
+ e.stopPropagation();
133
+ log('zonos checkout button clicked');
134
+ // start loading
135
+ stripeStore.isFetchingSession = true;
136
+ this.open = true;
137
+ try {
138
+ // buildCartDetail need to be catch since it may throw error
139
+ const result = await this.buildCartAndInit();
140
+ if (!result) {
141
+ throw new Error('Error building cart');
142
+ }
143
+ submitGtag('zonos-checkout-start');
144
+ }
145
+ catch (err) {
146
+ // stop loading
147
+ stripeStore.isFetchingSession = false;
148
+ cartStoreUpdateToErrorState({
149
+ messages: [
150
+ translate("There's been an error creating your checkout session. Please reload and try again or contact support if the error persists"),
151
+ ],
152
+ title: translate('Error creating Checkout'),
153
+ });
154
+ }
155
+ });
156
+ button.setAttribute('data-zonos-checkout-attached', 'true');
157
+ });
117
158
  }
118
- const buttonAnchorElements = document.querySelectorAll(buttonAnchorSelector);
119
- // only attach event once, and looping through all of the button elements
120
- buttonAnchorElements.forEach(button => {
121
- const isEventAttached = button.getAttribute('data-zonos-checkout-attached');
122
- if (isEventAttached) {
123
- // do nothing if event is already attached
124
- return;
125
- }
126
- button.addEventListener('click', async (e) => {
127
- // do nothing if it's not shippable country
128
- if (!this.isShippableCountry()) {
129
- return;
159
+ appearanceSettingsOverrideChanged() {
160
+ if (!this.appearanceSettingsOverride) {
161
+ return;
130
162
  }
131
- e.preventDefault();
132
- e.stopPropagation();
133
- log('zonos checkout button clicked');
134
- this.open = true;
163
+ // apply theme to stripe elements
164
+ void this.applyStripeTheme();
165
+ }
166
+ /**
167
+ * Setup all of the event listeners for the component on first load
168
+ */
169
+ async init() {
170
+ stripeStore.stripe = window.Zonos.stripe;
171
+ this.stripe = window.Zonos.stripe;
172
+ const hideInternationalOrderInterval = setInterval(() => {
173
+ const internationalSelector = window.Zonos.internationalHideSelector;
174
+ if (!internationalSelector) {
175
+ // cleanup right away if selector is not found
176
+ clearInterval(hideInternationalOrderInterval);
177
+ return;
178
+ }
179
+ // hide the selector if it's international
180
+ const isInternationalOrder = this.isShippableCountry(false);
181
+ const selector = document.querySelectorAll(internationalSelector);
182
+ if (!isInternationalOrder) {
183
+ // show the selector when it's domestic
184
+ selector === null || selector === void 0 ? void 0 : selector.forEach(el => {
185
+ const element = el;
186
+ const display = element.getAttribute('data-zonos-checkout-original-display') ||
187
+ getComputedStyle(element).display;
188
+ // fallback to initial (browser value) if "display" is not found
189
+ element.style.display = display || 'initial';
190
+ });
191
+ return;
192
+ }
193
+ selector === null || selector === void 0 ? void 0 : selector.forEach(el => {
194
+ const element = el;
195
+ const display = element.style.display;
196
+ // save the display state so we can restore it later
197
+ element.setAttribute('data-zonos-checkout-original-display', display);
198
+ element.style.display = 'none';
199
+ });
200
+ }, 100);
201
+ // only init checkout if visitor's country is in the shipping zones.
202
+ const interval = setInterval(() => {
203
+ stripeStore.stripe = window.Zonos.stripe;
204
+ this.stripe = window.Zonos.stripe;
205
+ if (!this.stripe) {
206
+ log('waiting for stripe to be loaded');
207
+ return;
208
+ }
209
+ if (this.storybookPaymentStatusOverride) {
210
+ clearInterval(interval);
211
+ return;
212
+ }
213
+ log('init checkout');
214
+ if (this.preview || this.forceDialogOpen) {
215
+ void this.buildCartAndInit();
216
+ }
217
+ else {
218
+ this.attachCheckout();
219
+ // keep checking for checkout selector every 50ms just in case the selector is not loaded in the DOM yet
220
+ setInterval(() => {
221
+ this.attachCheckout();
222
+ }, 50);
223
+ }
224
+ clearInterval(interval);
225
+ }, 50);
226
+ setTimeout(() => {
227
+ // if localization is not loaded after 10 seconds, stop the interval and don't init checkout
228
+ clearInterval(interval);
229
+ }, 10000);
230
+ }
231
+ /**
232
+ * For storybook to set to finish step, this is to trigger in the story for zonos-checkout-finish
233
+ */
234
+ async setToFinishStep(forcePaymentStatus) {
235
+ cartStore.step = 'finish';
236
+ this.storybookPaymentStatusOverride = forcePaymentStatus;
237
+ }
238
+ async handleCustomerInfoContinue() {
239
+ this.submitLoading = true;
240
+ // fetch landed cost data if we not fetching.
241
+ await stripeStorePrefetchLandedCost();
242
+ // keep checking landed cost data until it's ready to move to next screen
243
+ const interval = setInterval(() => {
244
+ if (cartStore.landedCostData || !stripeStore.isFetchingLandedCost) {
245
+ if (cartStore.landedCostData) {
246
+ // only go to next step if landed cost data is ready
247
+ cartStoreNextStep();
248
+ }
249
+ this.submitLoading = false;
250
+ clearInterval(interval);
251
+ }
252
+ }, 500);
253
+ }
254
+ async handleShippingContinue() {
255
+ this.submitLoading = true;
256
+ // show loading for the button for a bit
257
+ setTimeout(() => {
258
+ cartStoreNextStep();
259
+ this.submitLoading = false;
260
+ }, 500);
261
+ }
262
+ async handleCheckoutPaymentContinue() {
263
+ // reset error state
264
+ this.paymentError = false;
265
+ this.submitLoading = true;
135
266
  try {
136
- // buildCartDetail need to be catch since it may throw error
137
- const result = await this.buildCartAndInit();
138
- if (!result) {
139
- throw new Error('Error building cart');
140
- }
141
- submitGtag('zonos-checkout-start');
267
+ await stripeStoreConfirmPayment();
268
+ cartStoreNextStep();
142
269
  }
143
270
  catch (err) {
144
- cartStoreUpdateToErrorState({
145
- messages: [
146
- translate("There's been an error creating your checkout session. Please reload and try again or contact support if the error persists"),
147
- ],
148
- title: translate('Error creating Checkout'),
149
- });
271
+ // eslint-disable-next-line no-console
272
+ console.error(err);
273
+ this.paymentError = true;
150
274
  }
151
- });
152
- button.setAttribute('data-zonos-checkout-attached', 'true');
153
- });
154
- }
155
- appearanceSettingsOverrideChanged() {
156
- if (!this.appearanceSettingsOverride) {
157
- return;
275
+ this.submitLoading = false;
158
276
  }
159
- // apply theme to stripe elements
160
- void this.applyStripeTheme();
161
- }
162
- /**
163
- * Setup all of the event listeners for the component on first load
164
- */
165
- async init() {
166
- stripeStore.stripe = window.Zonos.stripe;
167
- this.stripe = window.Zonos.stripe;
168
- const hideInternationalOrderInterval = setInterval(() => {
169
- const internationalSelector = window.Zonos.internationalHideSelector;
170
- if (!internationalSelector) {
171
- // cleanup right away if selector is not found
172
- clearInterval(hideInternationalOrderInterval);
173
- return;
174
- }
175
- // hide the selector if it's international
176
- const isInternationalOrder = this.isShippableCountry(false);
177
- const selector = document.querySelectorAll(internationalSelector);
178
- if (!isInternationalOrder) {
179
- // show the selector when it's domestic
180
- selector === null || selector === void 0 ? void 0 : selector.forEach(el => {
181
- const element = el;
182
- const display = element.getAttribute('data-zonos-checkout-original-display') ||
183
- getComputedStyle(element).display;
184
- // fallback to initial (browser value) if "display" is not found
185
- element.style.display = display || 'initial';
186
- });
187
- return;
188
- }
189
- selector === null || selector === void 0 ? void 0 : selector.forEach(el => {
190
- const element = el;
191
- const display = element.style.display;
192
- // save the display state so we can restore it later
193
- element.setAttribute('data-zonos-checkout-original-display', display);
194
- element.style.display = 'none';
195
- });
196
- }, 100);
197
- // only init checkout if visitor's country is in the shipping zones.
198
- const interval = setInterval(() => {
199
- stripeStore.stripe = window.Zonos.stripe;
200
- this.stripe = window.Zonos.stripe;
201
- if (!this.stripe) {
202
- log('waiting for stripe to be loaded');
203
- return;
204
- }
205
- if (this.storybookPaymentStatusOverride) {
206
- clearInterval(interval);
207
- return;
208
- }
209
- log('init checkout');
210
- if (this.preview || this.forceDialogOpen) {
211
- void this.buildCartAndInit();
212
- }
213
- else {
214
- this.attachCheckout();
215
- // keep checking for checkout selector every 50ms just in case the selector is not loaded in the DOM yet
216
- setInterval(() => {
217
- this.attachCheckout();
218
- }, 50);
219
- }
220
- clearInterval(interval);
221
- }, 50);
222
- setTimeout(() => {
223
- // if localization is not loaded after 10 seconds, stop the interval and don't init checkout
224
- clearInterval(interval);
225
- }, 10000);
226
- }
227
- /**
228
- * For storybook to set to finish step, this is to trigger in the story for zonos-checkout-finish
229
- */
230
- async setToFinishStep(forcePaymentStatus) {
231
- cartStore.step = 'finish';
232
- this.storybookPaymentStatusOverride = forcePaymentStatus;
233
- }
234
- async handleCustomerInfoContinue() {
235
- this.submitLoading = true;
236
- // fetch landed cost data if we not fetching.
237
- await stripeStorePrefetchLandedCost();
238
- // keep checking landed cost data until it's ready to move to next screen
239
- const interval = setInterval(() => {
240
- if (cartStore.landedCostData || !stripeStore.isFetchingLandedCost) {
241
- if (cartStore.landedCostData) {
242
- // only go to next step if landed cost data is ready
243
- cartStoreNextStep();
277
+ async handleFinishClick() {
278
+ // reset stripe store
279
+ stripeStoreReset();
280
+ if (this.preview) {
281
+ cartStore.step = 'customer-info';
282
+ await this.init();
283
+ return;
244
284
  }
245
- this.submitLoading = false;
246
- clearInterval(interval);
247
- }
248
- }, 500);
249
- }
250
- async handleShippingContinue() {
251
- this.submitLoading = true;
252
- // show loading for the button for a bit
253
- setTimeout(() => {
254
- cartStoreNextStep();
255
- this.submitLoading = false;
256
- }, 500);
257
- }
258
- async handleCheckoutPaymentContinue() {
259
- // reset error state
260
- this.paymentError = false;
261
- this.submitLoading = true;
262
- try {
263
- await stripeStoreConfirmPayment();
264
- cartStoreNextStep();
285
+ // reset cart store
286
+ cartStoreReset();
287
+ // reset url
288
+ const url = window.location.href;
289
+ // Remove query parameters
290
+ const cleanUrl = url.split('?')[0];
291
+ // Update the URL without query parameters
292
+ window.history.replaceState({}, document.title, cleanUrl);
293
+ this.open = false;
265
294
  }
266
- catch (err) {
267
- // eslint-disable-next-line no-console
268
- console.error(err);
269
- this.paymentError = true;
295
+ async handleBackClick() {
296
+ // close the modal if back button is clicked on customer info step
297
+ if (cartStore.step === 'customer-info') {
298
+ await this.closeDialogHandler();
299
+ return;
300
+ }
301
+ cartStorePreviousStep();
270
302
  }
271
- this.submitLoading = false;
272
- }
273
- async handleFinishClick() {
274
- // reset stripe store
275
- stripeStoreReset();
276
- if (this.preview) {
277
- cartStore.step = 'customer-info';
278
- await this.init();
279
- return;
303
+ handleWindowResize() {
304
+ this.isMobile = isCheckoutMobile(this.mobile);
305
+ // apply theme to stripe elements
306
+ void this.applyStripeTheme();
307
+ log(`mobile: ${this.isMobile}`);
280
308
  }
281
- // reset cart store
282
- cartStoreReset();
283
- // reset url
284
- const url = window.location.href;
285
- // Remove query parameters
286
- const cleanUrl = url.split('?')[0];
287
- // Update the URL without query parameters
288
- window.history.replaceState({}, document.title, cleanUrl);
289
- this.open = false;
290
- }
291
- async handleBackClick() {
292
- // close the modal if back button is clicked on customer info step
293
- if (cartStore.step === 'customer-info') {
294
- await this.closeDialogHandler();
295
- return;
309
+ handleMobileChange() {
310
+ this.isMobile = isCheckoutMobile(this.mobile);
311
+ // apply theme to stripe elements
312
+ void this.applyStripeTheme();
313
+ log(`mobile: ${this.isMobile}`);
296
314
  }
297
- cartStorePreviousStep();
298
- }
299
- handleWindowResize() {
300
- this.isMobile = isCheckoutMobile(this.mobile);
301
- // apply theme to stripe elements
302
- void this.applyStripeTheme();
303
- log(`mobile: ${this.isMobile}`);
304
- }
305
- handleMobileChange() {
306
- this.isMobile = isCheckoutMobile(this.mobile);
307
- // apply theme to stripe elements
308
- void this.applyStripeTheme();
309
- log(`mobile: ${this.isMobile}`);
310
- }
311
- componentWillLoad() {
312
- void this.init();
313
- this.isMobile = isCheckoutMobile(this.mobile);
314
- log(`mobile: ${this.isMobile}`);
315
- }
316
- // do clean up when component is unmounted
317
- disconnectedCallback() {
318
- // reset stripe store
319
- stripeStoreReset();
320
- // reset cart store
321
- cartStoreReset();
322
- }
323
- render() {
324
- var _a;
325
- const dialogLoading =
326
- // if it's last step, don't need to check stripe elements
327
- (cartStore.step !== 'finish' &&
328
- cartStore.step !== 'error' &&
329
- !stripeStore.stripeElements) ||
330
- stripeStore.isFetchingSession;
331
- const { colorPrimary, colorSecondary, logoUrl, style } = mergeConfig(zonosStore.appearance, this.appearanceSettingsOverride);
332
- const hasFooter = zonosStore.appearance.zonosAttribution === 'ENABLED';
333
- const rightSideTheme = zonosStore.appearance.theme;
334
- const themePrimaryColorBased = colorPrimary && isDarkColor(colorPrimary) ? 'DARK' : 'LIGHT';
335
- // use right side theme if it's mobile, otherwise use themePrimaryColorBased
336
- const leftSideTheme = this.isMobile
337
- ? rightSideTheme
338
- : themePrimaryColorBased;
339
- // only use submit button color if it's on desktop
340
- const submitButtonColor = !this.isMobile ? colorSecondary : undefined;
341
- const { customMessages } = localizationStore;
342
- const defaultMessage = ((_a = customMessages.find(x => x.pageName === 'checkout_default')) === null || _a === void 0 ? void 0 : _a.message) ||
343
- 'Know about duties and taxes before you buy. Shop with confidence!';
344
- const localePageEnum = this.getCurrentLocalePageEnum();
345
- const filteredMessages = customMessages.filter(x => x.pageName === localePageEnum);
346
- const renderLogo = () => (h("div", { class: "zonos--logo" }, logoUrl && (h("img", { alt: `${zonosStore.organizationName} logo`, src: logoUrl, width: 100 }))));
347
- const renderTopHeader = () => (h("zonos-v-stack", null, renderLogo(), filteredMessages.map(x => (h("zonos-custom-message", { icon: MessageIcon, message: x.message }))), h("div", null, h("zonos-button", { class: "zonos--back-button", icon: h("zonos-icon", { content: LeftArrow }), noBackground: true, noPaddingLeft: true, noPaddingRight: true, onClick: () => this.handleBackClick(), theme: leftSideTheme }, translate('Back')))));
348
- const renderFooter = () => hasFooter && (h("div", { class: "zonos--footer", "data-theme": rightSideTheme }, h("zonos-text", { type: "hintText" }, translate('Powered by')), h("zonos-logo", { theme: rightSideTheme, width: "100px" })));
349
- const renderContent = () => {
350
- var _a;
351
- const submitBtnType = this.isMobile ? 'primary' : undefined;
352
- const reviewElementSize = (_a = this.zonosReviewRef) === null || _a === void 0 ? void 0 : _a.scrollHeight;
353
- return (h("div", { class: 'zonos--content', style: {
354
- '--border-radius': getBorderRadius(style),
355
- } }, cartStore.step !== 'finish' && cartStore.step !== 'error' && (h(Fragment, null, h("div", { class: "zonos--left", "data-theme": leftSideTheme, style: {
356
- '--primary-color': !this.isMobile ? colorPrimary : '',
357
- } }, !this.isMobile && renderTopHeader(), cartStore.step === 'customer-info' && (h("zonos-customer-info", { continueLoading: this.submitLoading, defaultAddress: this.defaultAddress, onContinueClicked: () => this.handleCustomerInfoContinue(), submitBtnColor: submitButtonColor, submitBtnType: submitBtnType })), cartStore.step === 'shipping' && (h("zonos-shipping", { continueLoading: this.submitLoading, onContinueClicked: () => this.handleShippingContinue(), submitBtnColor: submitButtonColor, submitBtnType: submitBtnType })), cartStore.step === 'payment' && (h("zonos-checkout-payment", { continueLoading: this.submitLoading, onContinueClicked: () => this.handleCheckoutPaymentContinue(), paymentError: this.paymentError, submitBtnColor: submitButtonColor, submitBtnType: submitBtnType }))), h("div", { class: "zonos--right", "data-theme": rightSideTheme }, this.isMobile && renderTopHeader(), !this.isMobile && (h("zonos-button", { class: "zonos--close-button", icon: h("zonos-icon", { content: RemoveIcon }), noBackground: true, onClick: () => this.closeDialogHandler() })), h("div", { class: "flex--wrapper" }, h("div", { class: "zonos--wrapper" }, h("zonos-collapse", { collapseSize: reviewElementSize,
358
- // only collapse on mobile
359
- collapsed: this.collapseReviewMobile && this.isMobile }, h("zonos-review", { collapsed: this.collapseReviewMobile, mobile: this.isMobile, onClick: () => {
360
- // do nothing if it's not mobile
361
- if (!this.isMobile) {
362
- return;
363
- }
364
- this.collapseReviewMobile =
365
- !this.collapseReviewMobile;
366
- }, ref: el => (this.zonosReviewRef = el) }), h("zonos-cart-items", null))), h("zonos-v-stack", { spacing: 16 }, h("zonos-cart-subtotal", null), h("zonos-custom-message", { class: "zonos--checkout-default-message", icon: MessageIcon, message: defaultMessage }))), !this.isMobile && renderFooter()), this.isMobile && renderFooter())), (cartStore.step === 'finish' || cartStore.step === 'error') && (h("div", { class: "zonos--done", "data-theme": rightSideTheme }, h("div", { class: "zonos--header" }, renderLogo(), h("zonos-button", { class: "zonos--close-button", icon: h("zonos-icon", { content: RemoveIcon }), noBackground: true, onClick: () => this.handleFinishClick(), theme: rightSideTheme })), h("zonos-checkout-finish", { borderRadius: style, onCloseClick: () => this.handleFinishClick(), overrideNotification: cartStore.step === 'error' && !!cartStore.error
367
- ? Object.assign(Object.assign({}, cartStore.error), { type: 'error' }) : undefined, storybookForceStatus: this.storybookPaymentStatusOverride })))));
368
- };
369
- return (h(Host, { class: classes([
370
- 'zonos--checkout zonos--elements',
371
- hasFooter && 'has-footer',
372
- this.preview && 'preview',
373
- this.isMobile && 'mobile',
374
- ]) }, this.preview ? (renderContent()) : (h("zonos-dialog", { borderStyle: style, "data-theme": rightSideTheme, height: "980px", isLoading: dialogLoading, mobile: this.isMobile, noBodyPadding: true, noBorder: true, noClickOutside: true, noCloseButton: true, onCloseDialog: () => this.closeDialogHandler(), open: this.open, width: "1200px" }, renderContent()))));
375
- }
376
- static get assetsDirs() { return ["assets"]; }
377
- static get watchers() { return {
378
- "appearanceSettingsOverride": ["appearanceSettingsOverrideChanged"],
379
- "mobile": ["handleMobileChange"]
380
- }; }
315
+ componentWillLoad() {
316
+ void this.init();
317
+ this.isMobile = isCheckoutMobile(this.mobile);
318
+ log(`mobile: ${this.isMobile}`);
319
+ }
320
+ // do clean up when component is unmounted
321
+ disconnectedCallback() {
322
+ // reset stripe store
323
+ stripeStoreReset();
324
+ // reset cart store
325
+ cartStoreReset();
326
+ }
327
+ render() {
328
+ var _a;
329
+ const dialogLoading =
330
+ // if it's last step, don't need to check stripe elements
331
+ (cartStore.step !== 'finish' &&
332
+ cartStore.step !== 'error' &&
333
+ !stripeStore.stripeElements) ||
334
+ stripeStore.isFetchingSession;
335
+ const { colorPrimary, colorSecondary, logoUrl, style } = mergeConfig(zonosStore.appearance, this.appearanceSettingsOverride);
336
+ const hasFooter = zonosStore.appearance.zonosAttribution === 'ENABLED';
337
+ const rightSideTheme = zonosStore.appearance.theme;
338
+ const themePrimaryColorBased = colorPrimary && isDarkColor(colorPrimary) ? 'DARK' : 'LIGHT';
339
+ // use right side theme if it's mobile, otherwise use themePrimaryColorBased
340
+ const leftSideTheme = this.isMobile
341
+ ? rightSideTheme
342
+ : themePrimaryColorBased;
343
+ // only use submit button color if it's on desktop
344
+ const submitButtonColor = !this.isMobile ? colorSecondary : undefined;
345
+ const { customMessages } = localizationStore;
346
+ const defaultMessage = ((_a = customMessages.find(x => x.pageName === 'checkout_default')) === null || _a === void 0 ? void 0 : _a.message) ||
347
+ 'Know about duties and taxes before you buy. Shop with confidence!';
348
+ const localePageEnum = this.getCurrentLocalePageEnum();
349
+ const filteredMessages = customMessages.filter(x => x.pageName === localePageEnum);
350
+ const renderLogo = () => (h("div", { class: "zonos--logo" }, logoUrl && (h("img", { alt: `${zonosStore.organizationName} logo`, src: logoUrl, width: 100 }))));
351
+ const renderTopHeader = () => (h("zonos-v-stack", null, renderLogo(), filteredMessages.map(x => (h("zonos-custom-message", { icon: MessageIcon, message: x.message }))), h("div", null, h("zonos-button", { class: "zonos--back-button", icon: h("zonos-icon", { content: LeftArrow }), noBackground: true, noPaddingLeft: true, noPaddingRight: true, onClick: () => this.handleBackClick(), theme: leftSideTheme }, translate('Back')))));
352
+ const renderFooter = () => hasFooter && (h("div", { class: "zonos--footer", "data-theme": rightSideTheme }, h("zonos-text", { type: "hintText" }, translate('Powered by')), h("zonos-logo", { theme: rightSideTheme, width: "100px" })));
353
+ const renderContent = () => {
354
+ var _a;
355
+ const submitBtnType = this.isMobile ? 'primary' : undefined;
356
+ const reviewElementSize = (_a = this.zonosReviewRef) === null || _a === void 0 ? void 0 : _a.scrollHeight;
357
+ return (h("div", { class: 'zonos--content', style: {
358
+ '--border-radius': getBorderRadius(style),
359
+ } }, cartStore.step !== 'finish' && cartStore.step !== 'error' && (h(Fragment, null, h("div", { class: "zonos--left", "data-theme": leftSideTheme, style: {
360
+ '--primary-color': !this.isMobile ? colorPrimary : '',
361
+ } }, !this.isMobile && renderTopHeader(), cartStore.step === 'customer-info' && (h("zonos-customer-info", { continueLoading: this.submitLoading, defaultAddress: this.defaultAddress, onContinueClicked: () => this.handleCustomerInfoContinue(), submitBtnColor: submitButtonColor, submitBtnType: submitBtnType })), cartStore.step === 'shipping' && (h("zonos-shipping", { continueLoading: this.submitLoading, onContinueClicked: () => this.handleShippingContinue(), submitBtnColor: submitButtonColor, submitBtnType: submitBtnType })), cartStore.step === 'payment' && (h("zonos-checkout-payment", { continueLoading: this.submitLoading, onContinueClicked: () => this.handleCheckoutPaymentContinue(), paymentError: this.paymentError, submitBtnColor: submitButtonColor, submitBtnType: submitBtnType }))), h("div", { class: "zonos--right", "data-theme": rightSideTheme }, this.isMobile && renderTopHeader(), !this.isMobile && (h("zonos-button", { class: "zonos--close-button", icon: h("zonos-icon", { content: RemoveIcon }), noBackground: true, onClick: () => this.closeDialogHandler() })), h("div", { class: "flex--wrapper" }, h("div", { class: "zonos--wrapper" }, h("zonos-collapse", { collapseSize: reviewElementSize,
362
+ // only collapse on mobile
363
+ collapsed: this.collapseReviewMobile && this.isMobile }, h("zonos-review", { collapsed: this.collapseReviewMobile, mobile: this.isMobile, onClick: () => {
364
+ // do nothing if it's not mobile
365
+ if (!this.isMobile) {
366
+ return;
367
+ }
368
+ this.collapseReviewMobile =
369
+ !this.collapseReviewMobile;
370
+ }, ref: el => (this.zonosReviewRef = el) }), h("zonos-cart-items", null))), h("zonos-v-stack", { spacing: 16 }, h("zonos-cart-subtotal", null), h("zonos-custom-message", { class: "zonos--checkout-default-message", icon: MessageIcon, message: defaultMessage }))), !this.isMobile && renderFooter()), this.isMobile && renderFooter())), (cartStore.step === 'finish' || cartStore.step === 'error') && (h("div", { class: "zonos--done", "data-theme": rightSideTheme }, h("div", { class: "zonos--header" }, renderLogo(), h("zonos-button", { class: "zonos--close-button", icon: h("zonos-icon", { content: RemoveIcon }), noBackground: true, onClick: () => this.handleFinishClick(), theme: rightSideTheme })), h("zonos-checkout-finish", { borderRadius: style, onCloseClick: () => this.handleFinishClick(), overrideNotification: cartStore.step === 'error' && !!cartStore.error
371
+ ? Object.assign(Object.assign({}, cartStore.error), { type: 'error' }) : undefined, storybookForceStatus: this.storybookPaymentStatusOverride })))));
372
+ };
373
+ return (h(Host, { class: classes([
374
+ 'zonos--checkout zonos--elements',
375
+ hasFooter && 'has-footer',
376
+ this.preview && 'preview',
377
+ this.isMobile && 'mobile',
378
+ ]) }, this.preview ? (renderContent()) : (h("zonos-dialog", { borderStyle: style, "data-theme": rightSideTheme, height: "980px", isLoading: dialogLoading, mobile: this.isMobile, noBodyPadding: true, noBorder: true, noClickOutside: true, noCloseButton: true, onCloseDialog: () => this.closeDialogHandler(), open: this.open, width: "1200px" }, renderContent()))));
379
+ }
380
+ static get assetsDirs() { return ["assets"]; }
381
+ static get watchers() { return {
382
+ "appearanceSettingsOverride": ["appearanceSettingsOverrideChanged"],
383
+ "mobile": ["handleMobileChange"]
384
+ }; }
381
385
  };
382
386
  ZonosCheckout.style = zonosCheckoutCss;
383
387