@zonos/elements 1.2.3 → 1.2.4-alpha.2

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 (541) 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 -356
  18. package/dist/cjs/zonos-component.cjs.entry.js +15 -15
  19. package/dist/cjs/zonos-controller.cjs.entry.js +231 -193
  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 -559
  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 +4 -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 -319
  97. package/dist/collection/components/store/checkout/cart.js +162 -162
  98. package/dist/collection/components/store/checkout/stripe.js +264 -264
  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 +16 -16
  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 +139 -116
  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 +279 -254
  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 +17 -17
  188. package/dist/components/cart.js +497 -497
  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 -498
  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 +259 -219
  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 -356
  277. package/dist/esm/zonos-component.entry.js +15 -15
  278. package/dist/esm/zonos-controller.entry.js +231 -193
  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-17650017.js → cart-cd87f476.js} +1 -1
  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 +99 -48
  319. package/dist/scripts/zonos.js +99 -48
  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 -38
  350. package/dist/types/components/store/checkout/cart.d.ts +64 -64
  351. package/dist/types/components/store/checkout/stripe.d.ts +43 -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 +3 -3
  386. package/dist/types/components/utils/changeDeepPropertyAtIndex.d.ts +4 -4
  387. package/dist/types/components/utils/darkenColor.d.ts +2 -2
  388. package/dist/types/components/utils/formatCurrency.d.ts +3 -3
  389. package/dist/types/components/utils/formatDate.d.ts +6 -6
  390. package/dist/types/components/utils/handleFetch.d.ts +7 -7
  391. package/dist/types/components/utils/hello/detectItemRestrictions.d.ts +10 -10
  392. package/dist/types/components/utils/hello/getZCountryUrlParam.d.ts +2 -0
  393. package/dist/types/components/utils/hello/setZCountryUrlParam.d.ts +2 -0
  394. package/dist/types/components/utils/lightenColor.d.ts +2 -2
  395. package/dist/types/components/utils/mergeConfig.d.ts +1 -1
  396. package/dist/types/components/utils/submitGtag.d.ts +3 -3
  397. package/dist/types/components.d.ts +96 -0
  398. package/dist/types/environment.d.ts +39 -34
  399. package/dist/types/scripts/extractZonosQaUrl.d.ts +11 -0
  400. package/dist/types/scripts/stripe.d.ts +2 -2
  401. package/dist/types/scripts/zonos.d.ts +50 -40
  402. package/dist/types/stencil-public-runtime.d.ts +29 -0
  403. package/dist/types/styles/stripe/addressRuleStyle.d.ts +1 -1
  404. package/dist/types/styles/stripe/defaultVariable.d.ts +2 -2
  405. package/dist/types/types/ICountryJson.d.ts +20 -20
  406. package/dist/types/types/JsonError.d.ts +3 -3
  407. package/dist/types/types/Translation.d.ts +1 -1
  408. package/dist/types/types/checkout/CheckoutConfig.d.ts +52 -52
  409. package/dist/types/types/checkout/api/CalculateLandedCostRequest.d.ts +16 -16
  410. package/dist/types/types/generated/graphql.customer.types.d.ts +1968 -1968
  411. package/dist/types/types/generated/graphql.frontend.types.d.ts +449 -449
  412. package/dist/types/types/hello/HelloConfig.d.ts +20 -20
  413. package/dist/types/types/hello/Product.d.ts +3 -3
  414. package/dist/types/types/hello/RestrictedItem.d.ts +1 -1
  415. package/dist/types/types/online-store/OnlineStoreConfig.d.ts +1 -1
  416. package/dist/types/types/stripe/Apperance.d.ts +3 -3
  417. package/dist/types/types/styles/Text.d.ts +90 -90
  418. package/dist/types/types/utils/deep/IDeepKeyof.d.ts +1 -1
  419. package/dist/types/types/utils/deep/IDeepKeyofAtIndex.d.ts +2 -2
  420. package/dist/types/utils/generateVercelDeployUrl.d.ts +2 -2
  421. package/dist/zonos-elements/index.esm.js +1 -1
  422. package/dist/zonos-elements/p-0175125e.system.js +1 -0
  423. package/dist/zonos-elements/p-03923a86.system.entry.js +1 -0
  424. package/dist/zonos-elements/p-08298e74.entry.js +1 -0
  425. package/dist/zonos-elements/p-1bddc7ca.system.entry.js +1 -0
  426. package/dist/zonos-elements/{p-770c959e.js → p-1f8b684a.js} +1 -1
  427. package/dist/zonos-elements/p-2228b050.entry.js +1 -0
  428. package/dist/zonos-elements/p-23e7c655.system.js +1 -1
  429. package/dist/zonos-elements/p-2466df77.entry.js +1 -0
  430. package/dist/zonos-elements/p-29b993c2.system.entry.js +1 -0
  431. package/dist/zonos-elements/p-2a32dc0a.system.entry.js +1 -0
  432. package/dist/zonos-elements/p-2a666084.entry.js +1 -0
  433. package/dist/zonos-elements/p-2f1e9192.system.entry.js +1 -0
  434. package/dist/zonos-elements/{p-f7875c40.js → p-39a5e8e0.js} +1 -1
  435. package/dist/zonos-elements/p-44ddebe4.system.entry.js +1 -0
  436. package/dist/zonos-elements/p-4e8b5d86.system.entry.js +1 -0
  437. package/dist/zonos-elements/p-534dcbd4.system.js +1 -0
  438. package/dist/zonos-elements/p-5a41b5fd.entry.js +1 -0
  439. package/dist/zonos-elements/p-5d0eceaa.entry.js +1 -0
  440. package/dist/zonos-elements/{p-a1fa50fb.entry.js → p-62ccb686.entry.js} +1 -1
  441. package/dist/zonos-elements/p-643eeb24.system.js +1 -0
  442. package/dist/zonos-elements/p-660a588b.entry.js +1 -0
  443. package/dist/zonos-elements/p-6affe5cc.entry.js +1 -0
  444. package/dist/zonos-elements/p-72ea628d.system.js +1 -0
  445. package/dist/zonos-elements/{p-85ab35c9.system.js → p-754bdfdb.system.js} +1 -1
  446. package/dist/zonos-elements/{p-164fae93.system.js → p-779621e4.system.js} +1 -1
  447. package/dist/zonos-elements/{p-08695f4e.js → p-77a7929b.js} +1 -1
  448. package/dist/zonos-elements/p-7a15d841.entry.js +1 -0
  449. package/dist/zonos-elements/p-7a81ccb5.system.entry.js +1 -0
  450. package/dist/zonos-elements/p-80ba24a8.system.js +1 -0
  451. package/dist/zonos-elements/p-83d100b8.entry.js +1 -0
  452. package/dist/zonos-elements/{p-bf070bf6.js → p-8bbad467.js} +1 -1
  453. package/dist/zonos-elements/p-8ebc3ca5.system.entry.js +1 -0
  454. package/dist/zonos-elements/p-9c78d0ca.entry.js +1 -0
  455. package/dist/zonos-elements/p-9ef86de7.entry.js +1 -0
  456. package/dist/zonos-elements/p-ab46cee9.system.entry.js +1 -0
  457. package/dist/zonos-elements/p-b0268bc5.entry.js +1 -0
  458. package/dist/zonos-elements/p-b4db1620.entry.js +1 -0
  459. package/dist/zonos-elements/p-bc7bf53e.system.js +1 -0
  460. package/dist/zonos-elements/p-bec05c21.system.js +2 -0
  461. package/dist/zonos-elements/p-bec21999.system.js +1 -0
  462. package/dist/zonos-elements/{p-8378d94e.js → p-c299049e.js} +1 -1
  463. package/dist/zonos-elements/p-cd4f8e13.system.entry.js +1 -0
  464. package/dist/zonos-elements/p-ceb2cd7b.system.entry.js +1 -0
  465. package/dist/zonos-elements/p-cf4545ed.system.entry.js +1 -0
  466. package/dist/zonos-elements/p-cf8aaa17.js +2 -0
  467. package/dist/zonos-elements/p-dc9b318c.system.entry.js +1 -0
  468. package/dist/zonos-elements/p-dcf64928.system.entry.js +1 -0
  469. package/dist/zonos-elements/p-e1de2a1f.js +1 -0
  470. package/dist/zonos-elements/{p-3f3fbcea.entry.js → p-e694312d.entry.js} +1 -1
  471. package/dist/zonos-elements/p-ec26fe57.entry.js +1 -0
  472. package/dist/zonos-elements/p-edbea8df.system.js +1 -0
  473. package/dist/zonos-elements/p-f8198015.system.entry.js +1 -0
  474. package/dist/zonos-elements/p-fcd4fc66.system.entry.js +1 -0
  475. package/dist/zonos-elements/zonos-elements.esm.js +1 -1
  476. package/dist/zonos-elements/zonos-elements.js +15 -15
  477. package/package.json +55 -54
  478. package/dist/cjs/cart-55512e32.js +0 -616
  479. package/dist/cjs/getBorderRadius-fdd605c6.js +0 -18
  480. package/dist/cjs/getHasMoreSpaceOnRight-2855491b.js +0 -10
  481. package/dist/cjs/isColorVariable-c1ed7303.js +0 -16
  482. package/dist/cjs/localization-d7fe7290.js +0 -3606
  483. package/dist/cjs/submitGtag-d65003f9.js +0 -27
  484. package/dist/collection/components/utils/hello/setZonosCountryUrlParam.js +0 -9
  485. package/dist/esm/cart-17650017.js +0 -598
  486. package/dist/esm/getBorderRadius-45764ad7.js +0 -16
  487. package/dist/esm/getHasMoreSpaceOnRight-feba1ae2.js +0 -8
  488. package/dist/esm/isColorVariable-4cda28c9.js +0 -14
  489. package/dist/esm/localization-f3828793.js +0 -3592
  490. package/dist/esm/submitGtag-a901ece5.js +0 -24
  491. package/dist/esm-es5/getBorderRadius-45764ad7.js +0 -1
  492. package/dist/esm-es5/getHasMoreSpaceOnRight-feba1ae2.js +0 -1
  493. package/dist/esm-es5/index-d1aa9293.js +0 -2
  494. package/dist/esm-es5/zonosStore-05a62104.js +0 -1
  495. package/dist/types/components/utils/hello/setZonosCountryUrlParam.d.ts +0 -2
  496. package/dist/zonos-elements/p-0190f7c4.entry.js +0 -1
  497. package/dist/zonos-elements/p-0e0b46a5.js +0 -1
  498. package/dist/zonos-elements/p-0ed3bb9f.system.entry.js +0 -1
  499. package/dist/zonos-elements/p-15b71f0b.system.entry.js +0 -1
  500. package/dist/zonos-elements/p-224125da.system.entry.js +0 -1
  501. package/dist/zonos-elements/p-23204b78.system.entry.js +0 -1
  502. package/dist/zonos-elements/p-28681677.entry.js +0 -1
  503. package/dist/zonos-elements/p-2b6325ab.entry.js +0 -1
  504. package/dist/zonos-elements/p-36425562.system.entry.js +0 -1
  505. package/dist/zonos-elements/p-3a56c240.entry.js +0 -1
  506. package/dist/zonos-elements/p-43a25dab.entry.js +0 -1
  507. package/dist/zonos-elements/p-4a5096d2.system.js +0 -1
  508. package/dist/zonos-elements/p-64fdb7b6.system.js +0 -1
  509. package/dist/zonos-elements/p-68d06767.system.js +0 -2
  510. package/dist/zonos-elements/p-6d82986c.system.entry.js +0 -1
  511. package/dist/zonos-elements/p-6dcd752e.system.js +0 -1
  512. package/dist/zonos-elements/p-6e7cd3f7.entry.js +0 -1
  513. package/dist/zonos-elements/p-7bacecf7.entry.js +0 -1
  514. package/dist/zonos-elements/p-824395fd.system.entry.js +0 -1
  515. package/dist/zonos-elements/p-84b00605.system.entry.js +0 -1
  516. package/dist/zonos-elements/p-8a75b765.system.entry.js +0 -1
  517. package/dist/zonos-elements/p-8aabbb9b.system.js +0 -1
  518. package/dist/zonos-elements/p-8b415737.system.entry.js +0 -1
  519. package/dist/zonos-elements/p-8c867835.system.js +0 -1
  520. package/dist/zonos-elements/p-9202375f.entry.js +0 -1
  521. package/dist/zonos-elements/p-9688bb12.entry.js +0 -1
  522. package/dist/zonos-elements/p-98a6e093.system.entry.js +0 -1
  523. package/dist/zonos-elements/p-aca66238.system.entry.js +0 -1
  524. package/dist/zonos-elements/p-b618cf03.entry.js +0 -1
  525. package/dist/zonos-elements/p-b75ffe64.system.entry.js +0 -1
  526. package/dist/zonos-elements/p-bc2c42f5.entry.js +0 -1
  527. package/dist/zonos-elements/p-c8ad044e.system.entry.js +0 -1
  528. package/dist/zonos-elements/p-cc070c1c.entry.js +0 -1
  529. package/dist/zonos-elements/p-cc1c785c.system.entry.js +0 -1
  530. package/dist/zonos-elements/p-cd71e41e.entry.js +0 -1
  531. package/dist/zonos-elements/p-cf97cc68.system.entry.js +0 -1
  532. package/dist/zonos-elements/p-d6b8563b.system.entry.js +0 -1
  533. package/dist/zonos-elements/p-dc8d7000.js +0 -2
  534. package/dist/zonos-elements/p-e5908de2.entry.js +0 -1
  535. package/dist/zonos-elements/p-f6add79c.system.js +0 -1
  536. package/dist/zonos-elements/p-f8491335.system.js +0 -1
  537. package/dist/zonos-elements/p-f868ed42.entry.js +0 -1
  538. package/dist/zonos-elements/p-f95ac9ec.system.js +0 -1
  539. /package/dist/esm-es5/{isColorVariable-4cda28c9.js → isColorVariable-91c33804.js} +0 -0
  540. /package/dist/zonos-elements/{p-0636859b.js → p-4c414a92.js} +0 -0
  541. /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-17650017.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,372 +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
- // start loading
135
- stripeStore.isFetchingSession = true;
136
- 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;
137
266
  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');
267
+ await stripeStoreConfirmPayment();
268
+ cartStoreNextStep();
144
269
  }
145
270
  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
- });
271
+ // eslint-disable-next-line no-console
272
+ console.error(err);
273
+ this.paymentError = true;
154
274
  }
155
- });
156
- button.setAttribute('data-zonos-checkout-attached', 'true');
157
- });
158
- }
159
- appearanceSettingsOverrideChanged() {
160
- if (!this.appearanceSettingsOverride) {
161
- return;
275
+ this.submitLoading = false;
162
276
  }
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();
277
+ async handleFinishClick() {
278
+ // reset stripe store
279
+ stripeStoreReset();
280
+ if (this.preview) {
281
+ cartStore.step = 'customer-info';
282
+ await this.init();
283
+ return;
248
284
  }
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;
266
- try {
267
- await stripeStoreConfirmPayment();
268
- 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;
269
294
  }
270
- catch (err) {
271
- // eslint-disable-next-line no-console
272
- console.error(err);
273
- 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();
274
302
  }
275
- this.submitLoading = false;
276
- }
277
- async handleFinishClick() {
278
- // reset stripe store
279
- stripeStoreReset();
280
- if (this.preview) {
281
- cartStore.step = 'customer-info';
282
- await this.init();
283
- return;
303
+ handleWindowResize() {
304
+ this.isMobile = isCheckoutMobile(this.mobile);
305
+ // apply theme to stripe elements
306
+ void this.applyStripeTheme();
307
+ log(`mobile: ${this.isMobile}`);
284
308
  }
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;
294
- }
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;
309
+ handleMobileChange() {
310
+ this.isMobile = isCheckoutMobile(this.mobile);
311
+ // apply theme to stripe elements
312
+ void this.applyStripeTheme();
313
+ log(`mobile: ${this.isMobile}`);
300
314
  }
301
- cartStorePreviousStep();
302
- }
303
- handleWindowResize() {
304
- this.isMobile = isCheckoutMobile(this.mobile);
305
- // apply theme to stripe elements
306
- void this.applyStripeTheme();
307
- log(`mobile: ${this.isMobile}`);
308
- }
309
- handleMobileChange() {
310
- this.isMobile = isCheckoutMobile(this.mobile);
311
- // apply theme to stripe elements
312
- void this.applyStripeTheme();
313
- log(`mobile: ${this.isMobile}`);
314
- }
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
- }; }
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
+ }; }
385
385
  };
386
386
  ZonosCheckout.style = zonosCheckoutCss;
387
387