@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,295 +1,422 @@
1
1
  import { h, Host, } from "@stencil/core";
2
2
  import { stripeStore } from "../store/checkout/stripe";
3
3
  import { initLocalizationStore, localizationStoreUpdateSelectedCountryCode, } from "../store/hello/localization";
4
- import { zonosStore, zonosStoreInitSetting, } from "../store/zonosStore";
4
+ import { zonosStore, zonosStoreFontFamily, zonosStoreInitSetting, } from "../store/zonosStore";
5
5
  import { getZonosSetting } from "../utils/api/getZonosSetting";
6
6
  import { initCheckout } from "../utils/checkout/initCheckout";
7
+ import { handleFetch } from "../utils/handleFetch";
7
8
  import { initHello } from "../utils/hello/initHello";
8
9
  import { log } from "../utils/logging/log";
9
10
  export class ZonosController {
10
- constructor() {
11
- this.config = undefined;
12
- this.zonosApiKey = undefined;
13
- }
14
- /**
15
- * Method to initialize checkout element
16
- */
17
- async initCheckoutElement(stripe) {
18
- if (!stripe) {
19
- // eslint-disable-next-line no-console
20
- log('Stripe is not loaded yet - cannot init checkout element', 'warn');
21
- return;
11
+ constructor() {
12
+ this.disablePlaceOrderButtons = ({ disable }) => {
13
+ const placeOrderButtonSelector = zonosStore.checkoutSettings.placeOrderButtonSelector;
14
+ if (!placeOrderButtonSelector) {
15
+ return;
16
+ }
17
+ const disableEvent = (e) => {
18
+ const target = e.target;
19
+ // prevent default and propagation when the item has disabled attribute
20
+ if (target.getAttribute('disabled')) {
21
+ e.preventDefault();
22
+ e.stopPropagation();
23
+ }
24
+ };
25
+ const placeOrderButton = document.querySelectorAll(placeOrderButtonSelector);
26
+ placeOrderButton.forEach(button => {
27
+ if (disable) {
28
+ button.setAttribute('disabled', 'true');
29
+ // prevent the selector to perform default action when it's disabled
30
+ button.addEventListener('click', disableEvent);
31
+ }
32
+ else {
33
+ button.removeAttribute('disabled');
34
+ // clean up the event listener
35
+ button.removeEventListener('click', disableEvent);
36
+ }
37
+ });
38
+ // only auto enable if autoEnable is true and the state is enable
39
+ if (disable) {
40
+ setTimeout(() => {
41
+ // release it if zonos is not initialized after 5 seconds (this is to prevent the place order button from being disabled forever due to api)
42
+ placeOrderButton.forEach(button => {
43
+ button.removeAttribute('disabled');
44
+ // clean up the event listener if exists
45
+ button.removeEventListener('click', disableEvent);
46
+ });
47
+ }, 5000);
48
+ }
49
+ };
50
+ this.config = undefined;
51
+ this.zonosApiKey = undefined;
22
52
  }
23
- stripeStore.stripe = stripe;
24
- void initCheckout(zonosStore.checkoutSettings);
25
- log('init checkout element');
26
- }
27
- /**
28
- * Init zonos notification
29
- */
30
- initZonosNotification() {
31
- const existingNotification = document.querySelector('zonos-notification');
32
- if (existingNotification) {
33
- return;
53
+ /**
54
+ * Method to initialize checkout element
55
+ */
56
+ async initCheckoutElement(stripe) {
57
+ if (!stripe) {
58
+ // eslint-disable-next-line no-console
59
+ log('Stripe is not loaded yet - cannot init checkout element', 'warn');
60
+ return;
61
+ }
62
+ stripeStore.stripe = stripe;
63
+ void initCheckout(zonosStore.checkoutSettings);
64
+ log('init checkout element');
65
+ // enable place order button after checkout is loaded
66
+ this.disablePlaceOrderButtons({
67
+ disable: false,
68
+ });
34
69
  }
35
- const zonosNotification = document.createElement('zonos-notification');
36
- document.body.appendChild(zonosNotification);
37
- }
38
- async componentWillLoad() {
39
- zonosStore.zonosApiKey = this.zonosApiKey;
40
- // running with scope async function to avoid blocking the main thread
41
- (async () => {
42
- var _a, _b;
43
- const { errors, json } = await getZonosSetting();
44
- if (((_a = errors[0]) === null || _a === void 0 ? void 0 : _a.type.toString()) === '403') {
45
- log('Failed to load zonos settings. This domain may not have access', 'warn');
46
- return;
47
- }
48
- // init zonos notification
49
- this.initZonosNotification();
50
- // load default setting if fail to load user setting
51
- zonosStoreInitSetting({
52
- overrideSettings: this.config,
53
- zonosSettings: json,
54
- });
55
- if (zonosStore.helloSettings) {
56
- void initHello(zonosStore.helloSettings);
57
- }
58
- // init localization store
59
- await initLocalizationStore();
60
- // checkout init
61
- const publishableKey = ((_b = json === null || json === void 0 ? void 0 : json.checkoutSettings) === null || _b === void 0 ? void 0 : _b.externalServiceTokens.find(item => item.type === 'STRIPE_PUBLISHABLE_TOKEN')) || null;
62
- if (!publishableKey || !this.stripeInitEvent) {
63
- log('Checkout failed to load -- missing publishable key', 'warn');
64
- return;
65
- }
66
- if (zonosStore.checkoutSettings.subscriptionStatus === 'INACTIVE') {
67
- log('=== Checkout subscription is "INACTIVE" - Cancel initializing for Checkout ===', 'warn');
68
- log('zonos controller loaded');
69
- return;
70
- }
71
- if (zonosStore.checkoutSettings.visibilityStatus === 'DISABLED') {
72
- log('=== Checkout is disabled by store owner ===', 'warn');
73
- log('zonos controller loaded');
74
- return;
75
- }
76
- // send publishable key out to load stripe
77
- this.stripeInitEvent.emit({
78
- publishableKey: publishableKey.token,
79
- });
80
- log('zonos controller loaded');
81
- })();
82
- }
83
- /**
84
- * Show notification
85
- */
86
- async showNotification(notification) {
87
- const notificationElement = document.querySelector('zonos-notification');
88
- if (!notificationElement) {
89
- log('Failed to show notification - zonos-notification not found', 'warn');
90
- return;
70
+ /**
71
+ * Init zonos notification
72
+ */
73
+ initZonosNotification() {
74
+ const existingNotification = document.querySelector('zonos-notification');
75
+ if (existingNotification) {
76
+ return;
77
+ }
78
+ const zonosNotification = document.createElement('zonos-notification');
79
+ document.body.appendChild(zonosNotification);
91
80
  }
92
- void notificationElement.showNotification(notification);
93
- }
94
- /**
95
- * Override the setting
96
- * @param config config that need to override the default setting
97
- */
98
- async overrideConfig(config) {
99
- zonosStoreInitSetting({
100
- overrideSettings: config,
101
- zonosSettings: null,
102
- });
103
- }
104
- /**
105
- * Override country code for storybook
106
- */
107
- async overrideCountry(countryCode) {
108
- void localizationStoreUpdateSelectedCountryCode(countryCode);
109
- }
110
- render() {
111
- return h(Host, { class: "zonos--elements" });
112
- }
113
- static get is() { return "zonos-controller"; }
114
- static get encapsulation() { return "shadow"; }
115
- static get originalStyleUrls() {
116
- return {
117
- "$": ["zonos-controller.scss"]
118
- };
119
- }
120
- static get styleUrls() {
121
- return {
122
- "$": ["zonos-controller.css"]
123
- };
124
- }
125
- static get properties() {
126
- return {
127
- "config": {
128
- "type": "unknown",
129
- "mutable": false,
130
- "complexType": {
131
- "original": "LoadZonosParamsConfig",
132
- "resolved": "{ appearance?: Partial<AppearanceConfig> | undefined; checkoutSettings?: Partial<CheckoutConfig> | undefined; currencyConverter?: CurrencyConverter | undefined; helloSettings?: Partial<HelloConfig> | undefined; onlineStoreSettings?: Partial<OnlineStoreConfig> | undefined; }",
133
- "references": {
134
- "LoadZonosParamsConfig": {
135
- "location": "import",
136
- "path": "src/scripts/zonos",
137
- "id": "src/scripts/zonos.ts::LoadZonosParamsConfig"
81
+ /**
82
+ * Setup google font
83
+ */
84
+ async setupGoogleFont(overrideFont) {
85
+ var _a, _b;
86
+ // use override font if it exists, otherwise use font from setting
87
+ const fontSelected = overrideFont || zonosStoreFontFamily();
88
+ if (fontSelected === 'Inter') {
89
+ if (!overrideFont) {
90
+ // Do nothing if font is Inter, since we already inject it on start
91
+ return;
138
92
  }
139
- }
140
- },
141
- "required": true,
142
- "optional": false,
143
- "docs": {
144
- "tags": [],
145
- "text": "The zonos config object"
93
+ log(`[FONT] Just applied Inter , but no need to inject since we already inject Inter on start`, 'warn');
94
+ zonosStore.appearance = Object.assign(Object.assign({}, zonosStore.appearance), { fontFamily: overrideFont });
146
95
  }
147
- },
148
- "zonosApiKey": {
149
- "type": "string",
150
- "mutable": false,
151
- "complexType": {
152
- "original": "string",
153
- "resolved": "string",
154
- "references": {}
155
- },
156
- "required": true,
157
- "optional": false,
158
- "docs": {
159
- "tags": [],
160
- "text": "The zonos api key"
161
- },
162
- "attribute": "zonos-api-key",
163
- "reflect": false
164
- }
165
- };
166
- }
167
- static get events() {
168
- return [{
169
- "method": "stripeInitEvent",
170
- "name": "stripeInitEvent",
171
- "bubbles": true,
172
- "cancelable": true,
173
- "composed": true,
174
- "docs": {
175
- "tags": [],
176
- "text": "Event emitted when stripe is initialized"
177
- },
178
- "complexType": {
179
- "original": "{ publishableKey: string }",
180
- "resolved": "{ publishableKey: string; }",
181
- "references": {}
96
+ const routeUrl = process.env.NEXT_PUBLIC_ZONOS_ROUTE_URL;
97
+ const { errors, json } = await handleFetch(`${routeUrl}/api/get-font-detail?family=${fontSelected}`);
98
+ if (errors.length > 0 || !json) {
99
+ log(`Failed to load font ${fontSelected}`, 'warn');
100
+ return;
182
101
  }
183
- }];
184
- }
185
- static get methods() {
186
- return {
187
- "initCheckoutElement": {
188
- "complexType": {
189
- "signature": "(stripe: Stripe) => Promise<void>",
190
- "parameters": [{
191
- "tags": [],
192
- "text": ""
193
- }],
194
- "references": {
195
- "Promise": {
196
- "location": "global",
197
- "id": "global::Promise"
198
- },
199
- "Stripe": {
200
- "location": "import",
201
- "path": "@stripe/stripe-js",
202
- "id": ""
203
- }
204
- },
205
- "return": "Promise<void>"
206
- },
207
- "docs": {
208
- "text": "Method to initialize checkout element",
209
- "tags": []
102
+ const fontUrl = json.fontUrl;
103
+ (_b = (_a = window.Zonos).injectSupportGoogleFont) === null || _b === void 0 ? void 0 : _b.call(_a, fontUrl);
104
+ if (!overrideFont) {
105
+ return;
210
106
  }
211
- },
212
- "showNotification": {
213
- "complexType": {
214
- "signature": "(notification: NotificationInit) => Promise<void>",
215
- "parameters": [{
216
- "tags": [],
217
- "text": ""
218
- }],
219
- "references": {
220
- "Promise": {
221
- "location": "global",
222
- "id": "global::Promise"
223
- },
224
- "NotificationInit": {
225
- "location": "import",
226
- "path": "src/components/common/zonos-notification/zonos-notification",
227
- "id": "src/components/common/zonos-notification/zonos-notification.tsx::NotificationInit"
107
+ // apply override font
108
+ log(`[FONT] ${overrideFont} font override applied`);
109
+ zonosStore.appearance = Object.assign(Object.assign({}, zonosStore.appearance), { fontFamily: overrideFont });
110
+ }
111
+ async componentWillLoad() {
112
+ zonosStore.zonosApiKey = this.zonosApiKey;
113
+ // running with scope async function to avoid blocking the main thread
114
+ (async () => {
115
+ var _a, _b;
116
+ const { errors, json } = await getZonosSetting();
117
+ if (((_a = errors[0]) === null || _a === void 0 ? void 0 : _a.type.toString()) === '403') {
118
+ log('Failed to load zonos settings. This domain may not have access', 'warn');
119
+ return;
228
120
  }
229
- },
230
- "return": "Promise<void>"
231
- },
232
- "docs": {
233
- "text": "Show notification",
234
- "tags": []
121
+ // disable place order button until checkout is loaded
122
+ this.disablePlaceOrderButtons({
123
+ disable: true,
124
+ });
125
+ // init zonos notification
126
+ this.initZonosNotification();
127
+ // load default setting if fail to load user setting
128
+ zonosStoreInitSetting({
129
+ overrideSettings: this.config,
130
+ zonosSettings: json,
131
+ });
132
+ // setup google font after store loaded
133
+ void this.setupGoogleFont();
134
+ if (zonosStore.helloSettings) {
135
+ void initHello(zonosStore.helloSettings);
136
+ }
137
+ // init localization store
138
+ await initLocalizationStore();
139
+ // checkout init
140
+ const publishableKey = ((_b = json === null || json === void 0 ? void 0 : json.checkoutSettings) === null || _b === void 0 ? void 0 : _b.externalServiceTokens.find(item => item.type === 'STRIPE_PUBLISHABLE_TOKEN')) || null;
141
+ if (!publishableKey || !this.stripeInitEvent) {
142
+ log('Checkout failed to load -- missing publishable key', 'warn');
143
+ return;
144
+ }
145
+ if (zonosStore.checkoutSettings.subscriptionStatus === 'INACTIVE') {
146
+ log('=== Checkout subscription is "INACTIVE" - Cancel initializing for Checkout ===', 'warn');
147
+ log('zonos controller loaded');
148
+ return;
149
+ }
150
+ if (zonosStore.checkoutSettings.visibilityStatus === 'DISABLED') {
151
+ log('=== Checkout is disabled by store owner ===', 'warn');
152
+ log('zonos controller loaded');
153
+ return;
154
+ }
155
+ // send publishable key out to load stripe
156
+ this.stripeInitEvent.emit({
157
+ publishableKey: publishableKey.token,
158
+ });
159
+ log('zonos controller loaded');
160
+ })();
161
+ }
162
+ /**
163
+ * Show notification
164
+ */
165
+ async showNotification(notification) {
166
+ const notificationElement = document.querySelector('zonos-notification');
167
+ if (!notificationElement) {
168
+ log('Failed to show notification - zonos-notification not found', 'warn');
169
+ return;
235
170
  }
236
- },
237
- "overrideConfig": {
238
- "complexType": {
239
- "signature": "(config: LoadZonosParamsConfig) => Promise<void>",
240
- "parameters": [{
241
- "tags": [{
242
- "name": "param",
243
- "text": "config config that need to override the default setting"
244
- }],
245
- "text": "config that need to override the default setting"
246
- }],
247
- "references": {
248
- "Promise": {
249
- "location": "global",
250
- "id": "global::Promise"
171
+ void notificationElement.showNotification(notification);
172
+ }
173
+ /**
174
+ * Override the setting
175
+ * @param config config that need to override the default setting
176
+ */
177
+ async overrideConfig(config) {
178
+ zonosStoreInitSetting({
179
+ overrideSettings: config,
180
+ zonosSettings: null,
181
+ });
182
+ }
183
+ /**
184
+ * Override country code for storybook
185
+ */
186
+ async overrideCountry(countryCode) {
187
+ void localizationStoreUpdateSelectedCountryCode(countryCode);
188
+ }
189
+ /**
190
+ * Get appearance from setting
191
+ */
192
+ async getAppearanceSetting() {
193
+ return zonosStore.appearance;
194
+ }
195
+ render() {
196
+ return h(Host, { class: "zonos--elements" });
197
+ }
198
+ static get is() { return "zonos-controller"; }
199
+ static get encapsulation() { return "shadow"; }
200
+ static get originalStyleUrls() {
201
+ return {
202
+ "$": ["zonos-controller.scss"]
203
+ };
204
+ }
205
+ static get styleUrls() {
206
+ return {
207
+ "$": ["zonos-controller.css"]
208
+ };
209
+ }
210
+ static get properties() {
211
+ return {
212
+ "config": {
213
+ "type": "unknown",
214
+ "mutable": false,
215
+ "complexType": {
216
+ "original": "LoadZonosParamsConfig",
217
+ "resolved": "{ appearance?: Partial<AppearanceConfig> | undefined; checkoutSettings?: Partial<CheckoutConfig> | undefined; currencyConverter?: CurrencyConverter | undefined; helloSettings?: Partial<HelloConfig> | undefined; onlineStoreSettings?: Partial<OnlineStoreConfig> | undefined; }",
218
+ "references": {
219
+ "LoadZonosParamsConfig": {
220
+ "location": "import",
221
+ "path": "src/scripts/zonos",
222
+ "id": "src/scripts/zonos.ts::LoadZonosParamsConfig"
223
+ }
224
+ }
225
+ },
226
+ "required": true,
227
+ "optional": false,
228
+ "docs": {
229
+ "tags": [],
230
+ "text": "The zonos config object"
231
+ }
251
232
  },
252
- "LoadZonosParamsConfig": {
253
- "location": "import",
254
- "path": "src/scripts/zonos",
255
- "id": "src/scripts/zonos.ts::LoadZonosParamsConfig"
233
+ "zonosApiKey": {
234
+ "type": "string",
235
+ "mutable": false,
236
+ "complexType": {
237
+ "original": "string",
238
+ "resolved": "string",
239
+ "references": {}
240
+ },
241
+ "required": true,
242
+ "optional": false,
243
+ "docs": {
244
+ "tags": [],
245
+ "text": "The zonos api key"
246
+ },
247
+ "attribute": "zonos-api-key",
248
+ "reflect": false
256
249
  }
257
- },
258
- "return": "Promise<void>"
259
- },
260
- "docs": {
261
- "text": "Override the setting",
262
- "tags": [{
263
- "name": "param",
264
- "text": "config config that need to override the default setting"
265
- }]
266
- }
267
- },
268
- "overrideCountry": {
269
- "complexType": {
270
- "signature": "(countryCode: CountryCode) => Promise<void>",
271
- "parameters": [{
272
- "tags": [],
273
- "text": ""
274
- }],
275
- "references": {
276
- "Promise": {
277
- "location": "global",
278
- "id": "global::Promise"
250
+ };
251
+ }
252
+ static get events() {
253
+ return [{
254
+ "method": "stripeInitEvent",
255
+ "name": "stripeInitEvent",
256
+ "bubbles": true,
257
+ "cancelable": true,
258
+ "composed": true,
259
+ "docs": {
260
+ "tags": [],
261
+ "text": "Event emitted when stripe is initialized"
262
+ },
263
+ "complexType": {
264
+ "original": "{ publishableKey: string }",
265
+ "resolved": "{ publishableKey: string; }",
266
+ "references": {}
267
+ }
268
+ }];
269
+ }
270
+ static get methods() {
271
+ return {
272
+ "initCheckoutElement": {
273
+ "complexType": {
274
+ "signature": "(stripe: Stripe) => Promise<void>",
275
+ "parameters": [{
276
+ "tags": [],
277
+ "text": ""
278
+ }],
279
+ "references": {
280
+ "Promise": {
281
+ "location": "global",
282
+ "id": "global::Promise"
283
+ },
284
+ "Stripe": {
285
+ "location": "import",
286
+ "path": "@stripe/stripe-js",
287
+ "id": ""
288
+ }
289
+ },
290
+ "return": "Promise<void>"
291
+ },
292
+ "docs": {
293
+ "text": "Method to initialize checkout element",
294
+ "tags": []
295
+ }
296
+ },
297
+ "setupGoogleFont": {
298
+ "complexType": {
299
+ "signature": "(overrideFont?: string) => Promise<void>",
300
+ "parameters": [{
301
+ "tags": [],
302
+ "text": ""
303
+ }],
304
+ "references": {
305
+ "Promise": {
306
+ "location": "global",
307
+ "id": "global::Promise"
308
+ }
309
+ },
310
+ "return": "Promise<void>"
311
+ },
312
+ "docs": {
313
+ "text": "Setup google font",
314
+ "tags": []
315
+ }
316
+ },
317
+ "showNotification": {
318
+ "complexType": {
319
+ "signature": "(notification: NotificationInit) => Promise<void>",
320
+ "parameters": [{
321
+ "tags": [],
322
+ "text": ""
323
+ }],
324
+ "references": {
325
+ "Promise": {
326
+ "location": "global",
327
+ "id": "global::Promise"
328
+ },
329
+ "NotificationInit": {
330
+ "location": "import",
331
+ "path": "src/components/common/zonos-notification/zonos-notification",
332
+ "id": "src/components/common/zonos-notification/zonos-notification.tsx::NotificationInit"
333
+ }
334
+ },
335
+ "return": "Promise<void>"
336
+ },
337
+ "docs": {
338
+ "text": "Show notification",
339
+ "tags": []
340
+ }
341
+ },
342
+ "overrideConfig": {
343
+ "complexType": {
344
+ "signature": "(config: LoadZonosParamsConfig) => Promise<void>",
345
+ "parameters": [{
346
+ "tags": [{
347
+ "name": "param",
348
+ "text": "config config that need to override the default setting"
349
+ }],
350
+ "text": "config that need to override the default setting"
351
+ }],
352
+ "references": {
353
+ "Promise": {
354
+ "location": "global",
355
+ "id": "global::Promise"
356
+ },
357
+ "LoadZonosParamsConfig": {
358
+ "location": "import",
359
+ "path": "src/scripts/zonos",
360
+ "id": "src/scripts/zonos.ts::LoadZonosParamsConfig"
361
+ }
362
+ },
363
+ "return": "Promise<void>"
364
+ },
365
+ "docs": {
366
+ "text": "Override the setting",
367
+ "tags": [{
368
+ "name": "param",
369
+ "text": "config config that need to override the default setting"
370
+ }]
371
+ }
279
372
  },
280
- "CountryCode": {
281
- "location": "import",
282
- "path": "src/types/generated/graphql.customer.types",
283
- "id": "src/types/generated/graphql.customer.types.ts::CountryCode"
373
+ "overrideCountry": {
374
+ "complexType": {
375
+ "signature": "(countryCode: CountryCode) => Promise<void>",
376
+ "parameters": [{
377
+ "tags": [],
378
+ "text": ""
379
+ }],
380
+ "references": {
381
+ "Promise": {
382
+ "location": "global",
383
+ "id": "global::Promise"
384
+ },
385
+ "CountryCode": {
386
+ "location": "import",
387
+ "path": "src/types/generated/graphql.customer.types",
388
+ "id": "src/types/generated/graphql.customer.types.ts::CountryCode"
389
+ }
390
+ },
391
+ "return": "Promise<void>"
392
+ },
393
+ "docs": {
394
+ "text": "Override country code for storybook",
395
+ "tags": []
396
+ }
397
+ },
398
+ "getAppearanceSetting": {
399
+ "complexType": {
400
+ "signature": "() => Promise<AppearanceConfig>",
401
+ "parameters": [],
402
+ "references": {
403
+ "Promise": {
404
+ "location": "global",
405
+ "id": "global::Promise"
406
+ },
407
+ "AppearanceConfig": {
408
+ "location": "import",
409
+ "path": "src/components/store/zonosStore",
410
+ "id": "src/components/store/zonosStore.ts::AppearanceConfig"
411
+ }
412
+ },
413
+ "return": "Promise<AppearanceConfig>"
414
+ },
415
+ "docs": {
416
+ "text": "Get appearance from setting",
417
+ "tags": []
418
+ }
284
419
  }
285
- },
286
- "return": "Promise<void>"
287
- },
288
- "docs": {
289
- "text": "Override country code for storybook",
290
- "tags": []
291
- }
292
- }
293
- };
294
- }
420
+ };
421
+ }
295
422
  }