@zonos/elements 1.3.38 → 1.3.40

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 (282) hide show
  1. package/dist/cjs/{cart-c7212410.js → cart-775440b7.js} +240 -7
  2. package/dist/cjs/{getBorderRadius-074b46ef.js → getBorderRadius-9ae7890c.js} +1 -1
  3. package/dist/cjs/{index-b071017b.js → index-ef8b2c76.js} +234 -167
  4. package/dist/cjs/index.cjs.js +10 -4
  5. package/dist/cjs/{isDarkColor-371a3b1a.js → isDarkColor-5f56770b.js} +1 -1
  6. package/dist/cjs/loader.cjs.js +2 -2
  7. package/dist/cjs/paypal-25c84e33.js +461 -0
  8. package/dist/cjs/{submitGtag-7a679d92.js → sendErrorLog-7818b288.js} +2 -19
  9. package/dist/cjs/zonos-address_8.cjs.entry.js +8 -8
  10. package/dist/cjs/zonos-badge_2.cjs.entry.js +2 -2
  11. package/dist/cjs/zonos-banner.cjs.entry.js +2 -2
  12. package/dist/cjs/zonos-button_3.cjs.entry.js +4 -4
  13. package/dist/cjs/zonos-card.cjs.entry.js +3 -3
  14. package/dist/cjs/zonos-cart-items_12.cjs.entry.js +73 -35
  15. package/dist/cjs/zonos-checkout.cjs.entry.js +50 -70
  16. package/dist/cjs/zonos-component.cjs.entry.js +1 -1
  17. package/dist/cjs/zonos-controller.cjs.entry.js +15 -15
  18. package/dist/cjs/zonos-country-flag.cjs.entry.js +5 -5
  19. package/dist/cjs/zonos-country-select_3.cjs.entry.js +5 -5
  20. package/dist/cjs/zonos-elements.cjs.js +3 -3
  21. package/dist/cjs/zonos-hello-dialog.cjs.entry.js +5 -5
  22. package/dist/cjs/zonos-hello.cjs.entry.js +5 -5
  23. package/dist/cjs/zonos-input.cjs.entry.js +3 -3
  24. package/dist/cjs/zonos-language-select_2.cjs.entry.js +5 -5
  25. package/dist/cjs/zonos-link.cjs.entry.js +1 -1
  26. package/dist/cjs/zonos-logo.cjs.entry.js +2 -2
  27. package/dist/cjs/{zonos-notification_2.cjs.entry.js → zonos-notification_3.cjs.entry.js} +59 -7
  28. package/dist/cjs/zonos-shipping-rich-radio.cjs.entry.js +3 -3
  29. package/dist/cjs/zonos-text.cjs.entry.js +2 -2
  30. package/dist/cjs/zonos-v-stack.cjs.entry.js +2 -2
  31. package/dist/cjs/{zonosStore-4c6c85da.js → zonosStore-b6c72408.js} +5 -1
  32. package/dist/collection/__tests__/build-utils/urlCheckOne.js +3 -1
  33. package/dist/collection/collection-manifest.json +2 -1
  34. package/dist/collection/components/checkout/zonos-checkout/zonos-address-update-dialog/zonos-address-update-dialog.css +1 -0
  35. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-finish/zonos-checkout-finish.js +39 -8
  36. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-footer/zonos-checkout-footer.css +1 -0
  37. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-payment/zonos-checkout-payment.css +7 -1
  38. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-payment/zonos-checkout-payment.js +37 -22
  39. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout.css +3 -0
  40. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout.js +37 -60
  41. package/dist/collection/components/checkout/zonos-checkout/zonos-customer-info/zonos-customer-info.css +1 -0
  42. package/dist/collection/components/checkout/zonos-checkout/zonos-shipping/zonos-shipping.css +1 -0
  43. package/dist/collection/components/main/zonos-controller.js +22 -8
  44. package/dist/collection/components/paypal/zonos-paypal-payment.css +37 -0
  45. package/dist/collection/components/paypal/zonos-paypal-payment.js +92 -0
  46. package/dist/collection/components/store/checkout/cart.js +26 -1
  47. package/dist/collection/components/store/checkout/paypal.js +219 -0
  48. package/dist/collection/components/store/checkout/stripe.js +16 -4
  49. package/dist/collection/components/store/translationStore/strings.arabic.js +9 -0
  50. package/dist/collection/components/store/translationStore/strings.base.js +9 -0
  51. package/dist/collection/components/store/translationStore/strings.chinese.js +9 -0
  52. package/dist/collection/components/store/translationStore/strings.danish.js +9 -0
  53. package/dist/collection/components/store/translationStore/strings.dutch.js +9 -0
  54. package/dist/collection/components/store/translationStore/strings.french.js +9 -0
  55. package/dist/collection/components/store/translationStore/strings.german.js +9 -0
  56. package/dist/collection/components/store/translationStore/strings.hebrew.js +9 -0
  57. package/dist/collection/components/store/translationStore/strings.indonesian.js +9 -0
  58. package/dist/collection/components/store/translationStore/strings.italian.js +9 -0
  59. package/dist/collection/components/store/translationStore/strings.japanese.js +9 -0
  60. package/dist/collection/components/store/translationStore/strings.korean.js +9 -0
  61. package/dist/collection/components/store/translationStore/strings.norwegian.js +9 -0
  62. package/dist/collection/components/store/translationStore/strings.polish.js +9 -0
  63. package/dist/collection/components/store/translationStore/strings.portuguese.js +9 -0
  64. package/dist/collection/components/store/translationStore/strings.russian.js +9 -0
  65. package/dist/collection/components/store/translationStore/strings.spanish.js +9 -0
  66. package/dist/collection/components/store/translationStore/strings.swedish.js +9 -0
  67. package/dist/collection/components/store/translationStore/strings.turkish.js +9 -0
  68. package/dist/collection/components/store/translationStore/strings.vietnamese.js +9 -0
  69. package/dist/collection/components/store/zonosStore.js +4 -0
  70. package/dist/collection/components/stripe/zonos-address/zonos-address.js +2 -2
  71. package/dist/collection/components/stripe/zonos-link-authentication/zonos-link-authentication.js +1 -1
  72. package/dist/collection/components/stripe/zonos-payment/zonos-payment.js +2 -3
  73. package/dist/collection/components/utils/api/getZonosSettings.js +3 -3
  74. package/dist/collection/components/utils/api/paypalCaptureOrder.js +8 -0
  75. package/dist/collection/components/utils/api/paypalCreateOrder.js +8 -0
  76. package/dist/collection/components/utils/getContrastColor.js +6 -2
  77. package/dist/collection/components/utils/handleFetch.js +6 -1
  78. package/dist/collection/components/utils/isContrastColor.js +7 -0
  79. package/dist/collection/environment.js +4 -5
  80. package/dist/collection/scripts/_getZonosQaUrl.js +4 -0
  81. package/dist/collection/scripts/_zonosBase.js +2 -0
  82. package/dist/collection/styles/stripe/addressRuleStyle.js +6 -0
  83. package/dist/collection/types/generated/graphql.customer.types.js +35 -0
  84. package/dist/esm/{cart-eb75b113.js → cart-e9cd8286.js} +236 -8
  85. package/dist/esm/{getBorderRadius-947c24de.js → getBorderRadius-3c75c4c1.js} +1 -1
  86. package/dist/esm/{index-3b46f3c3.js → index-5a37ccde.js} +234 -167
  87. package/dist/esm/index.js +10 -4
  88. package/dist/esm/{isDarkColor-f8324c10.js → isDarkColor-3eb31a6d.js} +1 -1
  89. package/dist/esm/loader.js +3 -3
  90. package/dist/esm/paypal-da2b3db1.js +453 -0
  91. package/dist/esm/{submitGtag-0bc0baa0.js → sendErrorLog-2fcf78a2.js} +3 -19
  92. package/dist/esm/zonos-address_8.entry.js +8 -8
  93. package/dist/esm/zonos-badge_2.entry.js +2 -2
  94. package/dist/esm/zonos-banner.entry.js +2 -2
  95. package/dist/esm/zonos-button_3.entry.js +4 -4
  96. package/dist/esm/zonos-card.entry.js +3 -3
  97. package/dist/esm/zonos-cart-items_12.entry.js +60 -22
  98. package/dist/esm/zonos-checkout.entry.js +41 -61
  99. package/dist/esm/zonos-component.entry.js +1 -1
  100. package/dist/esm/zonos-controller.entry.js +15 -15
  101. package/dist/esm/zonos-country-flag.entry.js +5 -5
  102. package/dist/esm/zonos-country-select_3.entry.js +5 -5
  103. package/dist/esm/zonos-elements.js +4 -4
  104. package/dist/esm/zonos-hello-dialog.entry.js +5 -5
  105. package/dist/esm/zonos-hello.entry.js +5 -5
  106. package/dist/esm/zonos-input.entry.js +3 -3
  107. package/dist/esm/zonos-language-select_2.entry.js +5 -5
  108. package/dist/esm/zonos-link.entry.js +1 -1
  109. package/dist/esm/zonos-logo.entry.js +2 -2
  110. package/dist/esm/{zonos-notification_2.entry.js → zonos-notification_3.entry.js} +60 -9
  111. package/dist/esm/zonos-shipping-rich-radio.entry.js +3 -3
  112. package/dist/esm/zonos-text.entry.js +2 -2
  113. package/dist/esm/zonos-v-stack.entry.js +2 -2
  114. package/dist/esm/{zonosStore-ba9e541e.js → zonosStore-425abc1b.js} +5 -1
  115. package/dist/esm-es5/cart-e9cd8286.js +1 -0
  116. package/dist/esm-es5/{getBorderRadius-947c24de.js → getBorderRadius-3c75c4c1.js} +1 -1
  117. package/dist/esm-es5/index-5a37ccde.js +2 -0
  118. package/dist/esm-es5/index.js +1 -1
  119. package/dist/esm-es5/{isDarkColor-f8324c10.js → isDarkColor-3eb31a6d.js} +1 -1
  120. package/dist/esm-es5/loader.js +1 -1
  121. package/dist/esm-es5/paypal-da2b3db1.js +17 -0
  122. package/dist/esm-es5/sendErrorLog-2fcf78a2.js +1 -0
  123. package/dist/esm-es5/zonos-address_8.entry.js +1 -1
  124. package/dist/esm-es5/zonos-badge_2.entry.js +1 -1
  125. package/dist/esm-es5/zonos-banner.entry.js +1 -1
  126. package/dist/esm-es5/zonos-button_3.entry.js +1 -1
  127. package/dist/esm-es5/zonos-card.entry.js +1 -1
  128. package/dist/esm-es5/zonos-cart-items_12.entry.js +1 -1
  129. package/dist/esm-es5/zonos-checkout.entry.js +1 -1
  130. package/dist/esm-es5/zonos-component.entry.js +1 -1
  131. package/dist/esm-es5/zonos-controller.entry.js +1 -1
  132. package/dist/esm-es5/zonos-country-flag.entry.js +1 -1
  133. package/dist/esm-es5/zonos-country-select_3.entry.js +1 -1
  134. package/dist/esm-es5/zonos-elements.js +1 -1
  135. package/dist/esm-es5/zonos-hello-dialog.entry.js +1 -1
  136. package/dist/esm-es5/zonos-hello.entry.js +1 -1
  137. package/dist/esm-es5/zonos-input.entry.js +1 -1
  138. package/dist/esm-es5/zonos-language-select_2.entry.js +1 -1
  139. package/dist/esm-es5/zonos-link.entry.js +1 -1
  140. package/dist/esm-es5/zonos-logo.entry.js +1 -1
  141. package/dist/esm-es5/zonos-notification_3.entry.js +1 -0
  142. package/dist/esm-es5/zonos-shipping-rich-radio.entry.js +1 -1
  143. package/dist/esm-es5/zonos-text.entry.js +1 -1
  144. package/dist/esm-es5/zonos-v-stack.entry.js +1 -1
  145. package/dist/esm-es5/{zonosStore-ba9e541e.js → zonosStore-425abc1b.js} +1 -1
  146. package/dist/scripts/index.d.ts +91 -6
  147. package/dist/scripts/index.js +1 -1
  148. package/dist/scripts/loadZonos.js +1 -1
  149. package/dist/scripts/zonos.js +1 -1
  150. package/dist/types/components/checkout/zonos-checkout/zonos-checkout-finish/zonos-checkout-finish.d.ts +2 -1
  151. package/dist/types/components/checkout/zonos-checkout/zonos-checkout-payment/zonos-checkout-payment.d.ts +8 -4
  152. package/dist/types/components/checkout/zonos-checkout/zonos-checkout.d.ts +1 -20
  153. package/dist/types/components/main/zonos-controller.d.ts +6 -0
  154. package/dist/types/components/paypal/zonos-paypal-payment.d.ts +17 -0
  155. package/dist/types/components/store/checkout/cart.d.ts +19 -1
  156. package/dist/types/components/store/checkout/paypal.d.ts +28 -0
  157. package/dist/types/components/store/checkout/stripe.d.ts +10 -1
  158. package/dist/types/components/store/translationStore/strings.arabic.d.ts +9 -0
  159. package/dist/types/components/store/translationStore/strings.base.d.ts +9 -0
  160. package/dist/types/components/store/translationStore/strings.chinese.d.ts +9 -0
  161. package/dist/types/components/store/translationStore/strings.danish.d.ts +9 -0
  162. package/dist/types/components/store/translationStore/strings.dutch.d.ts +9 -0
  163. package/dist/types/components/store/translationStore/strings.french.d.ts +9 -0
  164. package/dist/types/components/store/translationStore/strings.german.d.ts +9 -0
  165. package/dist/types/components/store/translationStore/strings.hebrew.d.ts +9 -0
  166. package/dist/types/components/store/translationStore/strings.indonesian.d.ts +9 -0
  167. package/dist/types/components/store/translationStore/strings.italian.d.ts +9 -0
  168. package/dist/types/components/store/translationStore/strings.japanese.d.ts +9 -0
  169. package/dist/types/components/store/translationStore/strings.korean.d.ts +9 -0
  170. package/dist/types/components/store/translationStore/strings.norwegian.d.ts +9 -0
  171. package/dist/types/components/store/translationStore/strings.polish.d.ts +9 -0
  172. package/dist/types/components/store/translationStore/strings.portuguese.d.ts +9 -0
  173. package/dist/types/components/store/translationStore/strings.russian.d.ts +9 -0
  174. package/dist/types/components/store/translationStore/strings.spanish.d.ts +9 -0
  175. package/dist/types/components/store/translationStore/strings.swedish.d.ts +9 -0
  176. package/dist/types/components/store/translationStore/strings.turkish.d.ts +9 -0
  177. package/dist/types/components/store/translationStore/strings.vietnamese.d.ts +9 -0
  178. package/dist/types/components/store/translationStore.d.ts +1 -1
  179. package/dist/types/components/store/zonosStore.d.ts +4 -0
  180. package/dist/types/components/utils/api/getZonosSettings.d.ts +2 -0
  181. package/dist/types/components/utils/api/paypalCaptureOrder.d.ts +10 -0
  182. package/dist/types/components/utils/api/paypalCreateOrder.d.ts +9 -0
  183. package/dist/types/components/utils/handleFetch.d.ts +4 -0
  184. package/dist/types/components/utils/isContrastColor.d.ts +4 -0
  185. package/dist/types/components.d.ts +50 -6
  186. package/dist/types/scripts/_zonosBase.d.ts +9 -1
  187. package/dist/types/stencil-public-runtime.d.ts +3 -10
  188. package/dist/types/types/checkout/CheckoutConfig.d.ts +14 -1
  189. package/dist/types/types/generated/graphql.customer.types.d.ts +71 -11
  190. package/dist/types/types/generated/graphql.customer.types.ts +103 -11
  191. package/dist/zonos-elements/index.esm.js +1 -1
  192. package/dist/zonos-elements/{p-ed333de6.system.entry.js → p-01bd2187.system.entry.js} +1 -1
  193. package/dist/zonos-elements/{p-f06bb776.system.entry.js → p-14b53e8f.system.entry.js} +1 -1
  194. package/dist/zonos-elements/p-15ecad81.entry.js +1 -0
  195. package/dist/zonos-elements/p-1b499bcc.system.js +1 -0
  196. package/dist/zonos-elements/{p-d2992457.system.entry.js → p-1daa3b1e.system.entry.js} +1 -1
  197. package/dist/zonos-elements/{p-085548f2.entry.js → p-1debb7b2.entry.js} +1 -1
  198. package/dist/zonos-elements/{p-9de374a7.system.entry.js → p-2bfb5e4b.system.entry.js} +1 -1
  199. package/dist/zonos-elements/{p-01304a58.system.entry.js → p-2c03ac78.system.entry.js} +1 -1
  200. package/dist/zonos-elements/p-3447ef24.system.js +17 -0
  201. package/dist/zonos-elements/{p-699a5376.entry.js → p-3496183d.entry.js} +1 -1
  202. package/dist/zonos-elements/{p-59f37de3.entry.js → p-36df9785.entry.js} +1 -1
  203. package/dist/zonos-elements/p-3996d025.system.js +1 -0
  204. package/dist/zonos-elements/p-3b6a7200.entry.js +1 -0
  205. package/dist/zonos-elements/p-3d98f422.system.entry.js +1 -0
  206. package/dist/zonos-elements/{p-31b3d26b.js → p-3da1bc42.js} +1 -1
  207. package/dist/zonos-elements/{p-a21ec316.system.entry.js → p-445fb353.system.entry.js} +1 -1
  208. package/dist/zonos-elements/{p-3541e6dd.entry.js → p-54101ed6.entry.js} +1 -1
  209. package/dist/zonos-elements/p-54971a77.system.js +1 -0
  210. package/dist/zonos-elements/{p-c0fcc0fa.system.entry.js → p-5a5d1a12.system.entry.js} +1 -1
  211. package/dist/zonos-elements/{p-c21802e9.entry.js → p-5e55dcbc.entry.js} +1 -1
  212. package/dist/zonos-elements/{p-71882ac9.system.entry.js → p-5f68f356.system.entry.js} +1 -1
  213. package/dist/zonos-elements/{p-73ba4398.system.entry.js → p-61842b4f.system.entry.js} +1 -1
  214. package/dist/zonos-elements/{p-3523c3b4.entry.js → p-657be9e9.entry.js} +1 -1
  215. package/dist/zonos-elements/p-6897be29.entry.js +1 -0
  216. package/dist/zonos-elements/{p-3f5e2e5c.system.entry.js → p-6f39051c.system.entry.js} +1 -1
  217. package/dist/zonos-elements/{p-966ab4e7.system.entry.js → p-70b024ad.system.entry.js} +1 -1
  218. package/dist/zonos-elements/{p-22882fd6.entry.js → p-71037fe5.entry.js} +1 -1
  219. package/dist/zonos-elements/p-7dd54a63.entry.js +1 -0
  220. package/dist/zonos-elements/{p-e3c014ae.entry.js → p-7f96d3b4.entry.js} +1 -1
  221. package/dist/zonos-elements/p-800db524.system.js +1 -0
  222. package/dist/zonos-elements/{p-9a1c0d02.js → p-890f5788.js} +1 -1
  223. package/dist/zonos-elements/{p-62ed4236.entry.js → p-8d149b99.entry.js} +1 -1
  224. package/dist/zonos-elements/p-916adba7.entry.js +1 -0
  225. package/dist/zonos-elements/{p-5821856c.js → p-92bebe7a.js} +1 -1
  226. package/dist/zonos-elements/p-94279862.system.js +1 -0
  227. package/dist/zonos-elements/{p-b903af96.system.entry.js → p-97dadd90.system.entry.js} +1 -1
  228. package/dist/zonos-elements/{p-e37440ad.system.js → p-b2007124.system.js} +1 -1
  229. package/dist/zonos-elements/p-b55b557a.system.js +2 -0
  230. package/dist/zonos-elements/{p-18b28104.entry.js → p-bfa5ec2b.entry.js} +1 -1
  231. package/dist/zonos-elements/p-c55a5fe4.system.entry.js +1 -0
  232. package/dist/zonos-elements/p-c5a5512a.system.entry.js +1 -0
  233. package/dist/zonos-elements/p-c87113fb.system.entry.js +1 -0
  234. package/dist/zonos-elements/p-ca58f16e.system.entry.js +1 -0
  235. package/dist/zonos-elements/{p-6c3390b7.entry.js → p-d46fa40a.entry.js} +1 -1
  236. package/dist/zonos-elements/p-d6135575.js +1 -0
  237. package/dist/zonos-elements/p-d95cb86a.system.js +1 -0
  238. package/dist/zonos-elements/{p-d8c1eb99.entry.js → p-d9d5ee2f.entry.js} +1 -1
  239. package/dist/zonos-elements/{p-2a45c837.system.entry.js → p-da15b587.system.entry.js} +1 -1
  240. package/dist/zonos-elements/{p-8acdf43b.system.entry.js → p-dc6a17fe.system.entry.js} +1 -1
  241. package/dist/zonos-elements/p-dd61b7a0.js +2 -0
  242. package/dist/zonos-elements/p-e252d86f.entry.js +1 -0
  243. package/dist/zonos-elements/{p-da2e5289.system.entry.js → p-e6efc2e1.system.entry.js} +1 -1
  244. package/dist/zonos-elements/{p-63a27875.entry.js → p-efdc7748.entry.js} +1 -1
  245. package/dist/zonos-elements/{p-2aa72606.entry.js → p-f643035f.entry.js} +1 -1
  246. package/dist/zonos-elements/p-f98f7066.js +17 -0
  247. package/dist/zonos-elements/{p-9d29f3f4.system.entry.js → p-fa02dd07.system.entry.js} +1 -1
  248. package/dist/zonos-elements/{p-c3619b3d.entry.js → p-fa95c3dc.entry.js} +1 -1
  249. package/dist/zonos-elements/p-fb63bd03.js +1 -0
  250. package/dist/zonos-elements/zonos-elements.esm.js +1 -1
  251. package/dist/zonos-elements/zonos-elements.js +1 -1
  252. package/loader/cdn.js +1 -2
  253. package/loader/index.cjs.js +1 -2
  254. package/loader/index.d.ts +3 -0
  255. package/loader/index.es2017.js +1 -2
  256. package/loader/index.js +1 -2
  257. package/package.json +12 -11
  258. package/dist/esm-es5/cart-eb75b113.js +0 -1
  259. package/dist/esm-es5/index-3b46f3c3.js +0 -2
  260. package/dist/esm-es5/submitGtag-0bc0baa0.js +0 -1
  261. package/dist/esm-es5/zonos-notification_2.entry.js +0 -1
  262. package/dist/zonos-elements/p-02405211.system.entry.js +0 -1
  263. package/dist/zonos-elements/p-0b538ed4.system.js +0 -1
  264. package/dist/zonos-elements/p-357322ea.system.entry.js +0 -1
  265. package/dist/zonos-elements/p-467f934c.system.entry.js +0 -1
  266. package/dist/zonos-elements/p-53acc999.js +0 -1
  267. package/dist/zonos-elements/p-548ac127.entry.js +0 -1
  268. package/dist/zonos-elements/p-5609876a.system.entry.js +0 -1
  269. package/dist/zonos-elements/p-57617755.entry.js +0 -1
  270. package/dist/zonos-elements/p-6f9448bb.entry.js +0 -1
  271. package/dist/zonos-elements/p-70262120.system.js +0 -1
  272. package/dist/zonos-elements/p-878293fe.js +0 -1
  273. package/dist/zonos-elements/p-a8b934c2.entry.js +0 -1
  274. package/dist/zonos-elements/p-a8cb25de.system.js +0 -1
  275. package/dist/zonos-elements/p-abe8ea12.system.js +0 -1
  276. package/dist/zonos-elements/p-ad37d20e.system.js +0 -1
  277. package/dist/zonos-elements/p-ae04d3ff.entry.js +0 -1
  278. package/dist/zonos-elements/p-b684f8aa.system.entry.js +0 -1
  279. package/dist/zonos-elements/p-ce347974.js +0 -2
  280. package/dist/zonos-elements/p-d99232c5.system.js +0 -2
  281. package/dist/zonos-elements/p-e0bf9666.system.js +0 -1
  282. package/dist/zonos-elements/p-e1db1bc9.entry.js +0 -1
@@ -1,9 +1,9 @@
1
- import { r as registerInstance, h, H as Host, d as getElement } from './index-3b46f3c3.js';
2
- import { z as zonosStore, d as zonosStoreFontFamily } from './zonosStore-ba9e541e.js';
1
+ import { r as registerInstance, h, H as Host, d as getElement } from './index-5a37ccde.js';
2
+ import { z as zonosStore, d as zonosStoreFontFamily } from './zonosStore-425abc1b.js';
3
3
  import { c as classes } from './classes-0d95c529.js';
4
- import { g as getBorderRadius } from './getBorderRadius-947c24de.js';
4
+ import { g as getBorderRadius } from './getBorderRadius-3c75c4c1.js';
5
5
  import { i as isColorVariable } from './isColorVariable-82457bef.js';
6
- import { i as isDarkColor } from './isDarkColor-f8324c10.js';
6
+ import { i as isDarkColor } from './isDarkColor-3eb31a6d.js';
7
7
 
8
8
  /**
9
9
  * Get theme for button text based on background color
@@ -1,7 +1,7 @@
1
- import { r as registerInstance, h, H as Host } from './index-3b46f3c3.js';
2
- import { d as zonosStoreFontFamily } from './zonosStore-ba9e541e.js';
1
+ import { r as registerInstance, h, H as Host } from './index-5a37ccde.js';
2
+ import { d as zonosStoreFontFamily } from './zonosStore-425abc1b.js';
3
3
  import { c as classes } from './classes-0d95c529.js';
4
- import { g as getBorderRadius } from './getBorderRadius-947c24de.js';
4
+ import { g as getBorderRadius } from './getBorderRadius-3c75c4c1.js';
5
5
 
6
6
  const zonosCardCss = ":host{font-family:var(--font-family, Inter), Inter;display:block;white-space:normal}:host *{font-family:var(--font-family, Inter), Inter}:host img{max-width:100%}:host dl,:host dd,:host h1,:host h2,:host h3,:host h4,:host h5,:host h6,:host hr,:host figure,:host p,:host pre{margin:0}:host{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}:host .styled-card{border:var(--zonos-elements-border);border-radius:var(--border-radius, var(--zonos-elements-radius-6));padding:var(--spacing, 24px);text-align:left;background-color:var(--background-color);overflow:hidden}:host .styled-card hr{margin-left:calc(var(--spacing, 24px) * -1);margin-right:calc(var(--spacing, 24px) * -1)}:host .styled-card .card-header{margin:calc(var(--spacing, 24px) * -1);padding:var(--spacing, 24px);display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;margin-bottom:var(--spacing, 24px);border-bottom:var(--zonos-elements-border);height:65px;line-height:65px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host .styled-card .card-header h5{margin-bottom:0;-ms-flex:1;flex:1}:host .styled-card .card-footer{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;margin:calc(var(--spacing, 24px) * -1);padding:var(--spacing, 24px);border-top:var(--zonos-elements-border);background:var(--zonos-elements-surface-color-secondary);margin-top:var(--spacing, 24px);border-bottom-left-radius:var(--zonos-elements-radius-8);border-bottom-right-radius:var(--zonos-elements-radius-8);height:var(--footerHeight)}";
7
7
  const ZonosCardStyle0 = zonosCardCss;
@@ -1,12 +1,13 @@
1
- import { r as registerInstance, a as getAssetPath, h, H as Host, F as Fragment, c as createEvent, d as getElement } from './index-3b46f3c3.js';
2
- import { d as cartStore, B as currencyFormat, C as cartStoreHasOneEligibleItem, t as translate, r as handleFetch, p as stripeStoreReset, h as stripeStore, D as stripeStoreRetrievePayment, l as localizationStore, E as stripeStoreTranslateAddressToLatin, F as cartStoreUpdateSelectedShippingOption, G as cartStoreGetShippingTransitInfo } from './cart-eb75b113.js';
1
+ import { r as registerInstance, a as getAssetPath, h, H as Host, F as Fragment, c as createEvent, d as getElement } from './index-5a37ccde.js';
2
+ import { d as cartStore, F as currencyFormat, G as cartStoreHasOneEligibleItem, t as translate, w as handleFetch, u as stripeStoreReset, j as stripeStore, H as stripeStoreRetrievePayment, I as stripeStoreMessageBasedOnStatus, l as localizationStore, J as stripeStoreTranslateAddressToLatin, K as cartStoreUpdateSelectedShippingOption, L as cartStoreGetShippingTransitInfo } from './cart-e9cd8286.js';
3
3
  import { c as classes } from './classes-0d95c529.js';
4
- import { z as zonosStore, g as getZonosStoreTheme, d as zonosStoreFontFamily } from './zonosStore-ba9e541e.js';
5
- import { t as trackConversionEvent, s as sendErrorLog, a as submitGtag, c as createCustomEvent, g as getIsTestMode } from './submitGtag-0bc0baa0.js';
6
- import { g as getBorderRadius } from './getBorderRadius-947c24de.js';
4
+ import { s as submitGtag, a as paypalStore, b as paypalStoreReset, c as paypalStoreHasPaypalEnabled, i as isContrastColor } from './paypal-da2b3db1.js';
5
+ import { z as zonosStore, g as getZonosStoreTheme, d as zonosStoreFontFamily } from './zonosStore-425abc1b.js';
6
+ import { t as trackConversionEvent, s as sendErrorLog, c as createCustomEvent, g as getIsTestMode } from './sendErrorLog-2fcf78a2.js';
7
+ import { g as getBorderRadius } from './getBorderRadius-3c75c4c1.js';
7
8
  import { i as isCheckoutMobile } from './isCheckoutMobile-8846dccb.js';
8
9
  import { l as languages } from './ILanguage-cd6acb72.js';
9
- import { t as tinycolor, i as isDarkColor } from './isDarkColor-f8324c10.js';
10
+ import { i as isDarkColor, t as tinycolor } from './isDarkColor-3eb31a6d.js';
10
11
  import { i as isColorVariable } from './isColorVariable-82457bef.js';
11
12
  import { c as containsNonLatinChars } from './containsNonLatinChars-2d8810c3.js';
12
13
  import './logError-c456c092.js';
@@ -266,7 +267,7 @@ const ZonosCheckoutFinish = class {
266
267
  this.notificationActionText = successPageActionText;
267
268
  }
268
269
  };
269
- this.checkPaymentStatus = async () => {
270
+ this.checkStripePaymentStatus = async () => {
270
271
  this.isLoading = true;
271
272
  const clientSecret = new URLSearchParams(window.location.search).get('payment_intent_client_secret') || stripeStore.clientSecret;
272
273
  if (clientSecret || this.storybookForceStatus) {
@@ -279,8 +280,6 @@ const ZonosCheckoutFinish = class {
279
280
  this.notificationTitle = error
280
281
  ? translate('Payment failed')
281
282
  : translate("You're all set!");
282
- // override title if notification type is success
283
- this.useOverrideSuccessNotification();
284
283
  if (error) {
285
284
  submitGtag('zonos-checkout-payment-fail');
286
285
  }
@@ -296,6 +295,8 @@ const ZonosCheckoutFinish = class {
296
295
  }
297
296
  // Attempt to pull the order details from the graph every second on 5 attempts. Only pull if checkoutSessionId is available
298
297
  if (this.notificationType === 'success' && cartStore.checkoutSessionId) {
298
+ // override title if notification type is success
299
+ this.useOverrideSuccessNotification();
299
300
  // wait this to finish before resetting store and checkout session id
300
301
  await this.getPullOrder();
301
302
  }
@@ -309,6 +310,31 @@ const ZonosCheckoutFinish = class {
309
310
  stripeStoreReset();
310
311
  cartStore.checkoutSessionId = null;
311
312
  };
313
+ this.checkPaypalPaymentStatus = async () => {
314
+ this.isLoading = true;
315
+ // render error message if there's an error
316
+ if (paypalStore.paypalErrorMessage) {
317
+ this.notificationType = 'error';
318
+ this.notificationTitle = translate('Payment failed');
319
+ this.notificationMessages = [paypalStore.paypalErrorMessage];
320
+ this.isLoading = false;
321
+ return;
322
+ }
323
+ if (paypalStore.orderIdCreated) {
324
+ this.notificationType = 'success';
325
+ this.notificationTitle = translate("You're all set!");
326
+ this.notificationMessages =
327
+ stripeStoreMessageBasedOnStatus('succeeded').messages;
328
+ // override title if notification type is success
329
+ this.useOverrideSuccessNotification();
330
+ // wait this to finish before resetting store and checkout session id
331
+ await this.getPullOrder();
332
+ }
333
+ this.isLoading = false;
334
+ stripeStoreReset();
335
+ paypalStoreReset();
336
+ cartStore.checkoutSessionId = null;
337
+ };
312
338
  this.closeClickHandler = () => {
313
339
  this.closeClick.emit();
314
340
  };
@@ -331,17 +357,22 @@ const ZonosCheckoutFinish = class {
331
357
  this.isLoading = false;
332
358
  return;
333
359
  }
334
- void this.checkPaymentStatus();
360
+ if (paypalStore.orderIdCreated) {
361
+ void this.checkPaypalPaymentStatus();
362
+ }
363
+ else {
364
+ void this.checkStripePaymentStatus();
365
+ }
335
366
  }
336
367
  render() {
337
368
  var _a, _b;
338
369
  const orderId = ((_a = this.order) === null || _a === void 0 ? void 0 : _a.accountOrderNumber) || ((_b = this.order) === null || _b === void 0 ? void 0 : _b.id);
339
370
  const isTestMode = getIsTestMode();
340
- return (h(Host, { key: 'd36ab5e23e09a467b2616ade463baec9626c0157', class: "zonos--checkout-finish zonos--elements", style: {
371
+ return (h(Host, { key: '4e00e5d3d8de136e4161fdea6afba86616748d66', class: "zonos--checkout-finish zonos--elements", style: {
341
372
  '--border-radius': getBorderRadius({
342
373
  overrideBorderStyle: this.borderRadius,
343
374
  }),
344
- } }, this.isLoading && (h("div", { key: '58181470e5a3e75655bde5bf91ac4a857a8144f8', class: "loading-wrapper" }, h("zonos-spinner", { key: 'b1aba8ef89c9fbce271d6c3226f32e0a0dd1561d' }))), !this.isLoading && (h("div", { key: 'd02576373b5a3affc73906e125d443ce12e6c8d6', class: "zonos--finish-details" }, h("div", { key: 'ba06598ed291e565663c5b321e9419215cd2832a', class: "zonos--group" }, this.notificationType === 'success' ? (h("zonos-icon", { "aria-label": "Order success", content: SuccessIcon, iconColor: 'blue-800', size: 50 })) : (h("zonos-icon", { "aria-label": "Order failed", content: RemoveIcon, iconColor: 'red-800', size: 50 })), h("zonos-text", { key: '55c453a319a693280518a4b2c2f502a1cc90dc2a', class: "zonos--title", type: "semiBoldSubheader" }, this.notificationTitle), orderId && (h("zonos-badge", { key: '31042753fb3a1ef5155314c1d55abc067c6a6d31', badgeColor: "transparent" }, orderId)), h("zonos-text", { key: 'e9eceec74357986169f829a1c650f1e4b1605245', textColor: "gray-600" }, this.notificationMessages.map(message => (h(Fragment, null, message, h("br", null))))), h("zonos-button", { key: '7c6e8b61be1bf7cc3c84ed369f438af7b1ad60c0', onClick: () => this.closeClickHandler(), size: "md", variant: "primary" }, this.notificationActionText)), isTestMode && cartStore.step === 'finish' && (h("div", { key: 'bb567e9a67e6895b7f3c97e6d02584ba9f279acd', class: "zonos--finish-button-wrapper" }, h("zonos-button", { key: '50afe47a9e5d25759b4f82bb619f5de7fc56f260', backgroundColor: "gray-0", buttonColor: "gray-1200", onClick: () => this.closeClickHandler(), size: "lg", variant: "outline" }, "New test cart"), h("zonos-button", { key: '6cf9d0d670aa07ade295aa5ef3781dcd65e4d812', onClick: () => this.redirectToUrl(`/orders/all`), size: "lg", variant: "primary" }, "View order in Dashboard")))))));
375
+ } }, this.isLoading && (h("div", { key: '6b4f755402951c5fd0e5150ccd05542b85ca2121', class: "loading-wrapper" }, h("zonos-spinner", { key: 'a3e6b561c6796891b33d273b9729d0f8fab4a308' }))), !this.isLoading && (h("div", { key: '798bfa6f1ee9f7b682e0d7389654f5b3d1549ba6', class: "zonos--finish-details" }, h("div", { key: 'cd7a52c193aa3bb5ef2e49e6027bf0448de14046', class: "zonos--group" }, this.notificationType === 'success' ? (h("zonos-icon", { "aria-label": "Order success", content: SuccessIcon, iconColor: 'blue-800', size: 50 })) : (h("zonos-icon", { "aria-label": "Order failed", content: RemoveIcon, iconColor: 'red-800', size: 50 })), h("zonos-text", { key: 'b4c5751d55a3ef5d06e68a1065dc017b455a9d1f', class: "zonos--title", type: "semiBoldSubheader" }, this.notificationTitle), orderId && (h("zonos-badge", { key: 'd8c13fb55fe83d1caf26efbd037da866b26af108', badgeColor: "transparent" }, orderId)), h("zonos-text", { key: '5ae6e0d1b42e7d0ab578229d8c9eebcd660b78db', textColor: "gray-600" }, this.notificationMessages.map(message => (h(Fragment, null, message, h("br", null))))), h("zonos-button", { key: '0a3447480fe0ddcff91579602621b9ee70ae2a64', onClick: () => this.closeClickHandler(), size: "md", variant: "primary" }, this.notificationActionText)), isTestMode && cartStore.step === 'finish' && (h("div", { key: 'c3374a72c1e2d9350f152c7e2016463bf0a7f02e', class: "zonos--finish-button-wrapper" }, h("zonos-button", { key: '7d34001e6798162cbcb1d9ef8949d15617c64362', backgroundColor: "gray-0", buttonColor: "gray-1200", onClick: () => this.closeClickHandler(), size: "lg", variant: "outline" }, "New test cart"), h("zonos-button", { key: 'e217f0bde5d4b0df0220983a32ae8853469d1d23', onClick: () => this.redirectToUrl(`/orders/all`), size: "lg", variant: "primary" }, "View order in Dashboard")))))));
345
376
  }
346
377
  static get assetsDirs() { return ["assets"]; }
347
378
  };
@@ -359,7 +390,7 @@ const ZonosIcon = `<svg width="105" height="29" viewBox="0 0 105 29" fill="none"
359
390
  </svg>
360
391
  `;
361
392
 
362
- const zonosCheckoutFooterCss = ":host{font-family:var(--font-family, Inter), Inter;display:block;white-space:normal}:host *{font-family:var(--font-family, Inter), Inter}:host img{max-width:100%}:host dl,:host dd,:host h1,:host h2,:host h3,:host h4,:host h5,:host h6,:host hr,:host figure,:host p,:host pre{margin:0}:host{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}:host{position:absolute;bottom:-50px;left:0;right:0;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;z-index:2}:host .zonos--checkout-footer{width:calc(90vw - 22px);gap:16px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:12px;padding-left:0;-ms-flex-align:center;align-items:center}:host .zonos--checkout-footer .zonos--checkout-footer-icon-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:24px}:host .zonos--checkout-footer .zonos--checkout-footer-icon-wrapper .zonos--checkout-footer-logo{display:-ms-inline-flexbox;display:inline-flex;gap:8px;-ms-flex-align:center;align-items:center}:host .zonos--checkout-footer .zonos--checkout-footer-icon-wrapper .zonos--checkout-footer-logo a{line-height:0}:host .zonos--checkout-footer .zonos--checkout-footer-icon-wrapper a{text-decoration:none}:host .zonos--checkout-footer zonos-button button.outline{outline:1px solid var(--zonos-elements-gray-800)}:host .zonos--checkout-footer .zonos--checkout-locale-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:8px;position:relative}@media (max-width: 400px){:host .zonos--checkout-footer .zonos--checkout-locale-wrapper{gap:4px}}:host .zonos--checkout-footer .zonos--checkout-footer-dialog{position:absolute;bottom:36px;left:var(--language-dialog-left);background:var(--zonos-elements-surface-color);-webkit-box-shadow:var(--zonos-elements-v3-shadow-xl);box-shadow:var(--zonos-elements-v3-shadow-xl);border-radius:var(--zonos-elements-radius-12);width:360px;max-width:100vw;max-height:500px;z-index:2147483011;overflow:auto;-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:bottom left;transform-origin:bottom left;opacity:0;-webkit-transition:opacity 0.3s ease-out, -webkit-transform 0.3s ease-out;transition:opacity 0.3s ease-out, -webkit-transform 0.3s ease-out;transition:transform 0.3s ease-out, opacity 0.3s ease-out;transition:transform 0.3s ease-out, opacity 0.3s ease-out, -webkit-transform 0.3s ease-out}:host .zonos--checkout-footer .zonos--checkout-footer-dialog::-webkit-scrollbar{width:10px}:host .zonos--checkout-footer .zonos--checkout-footer-dialog::-webkit-scrollbar-track{background:var(--zonos-elements-gray-50)}:host .zonos--checkout-footer .zonos--checkout-footer-dialog::-webkit-scrollbar-thumb{border-radius:10px;background:#cccccc;border:3px solid transparent;background-clip:content-box}:host .zonos--checkout-footer .zonos--checkout-footer-dialog::-webkit-scrollbar-thumb:hover{background:#d6d6d6}:host .zonos--checkout-footer .zonos--checkout-footer-dialog::-webkit-scrollbar-track{border-top-right-radius:var(--zonos-elements-radius-12);border-bottom-right-radius:var(--zonos-elements-radius-12)}:host .zonos--checkout-footer .zonos--checkout-footer-dialog.zonos--checkout-footer-dialog-open{opacity:1;-webkit-transform:scale(1);transform:scale(1)}:host(.mobile){-ms-flex-direction:column;flex-direction:column;gap:32px;background:var(--zonos-elements-gray-0);position:relative;padding-top:24px;bottom:0}:host(.mobile) .zonos--checkout-footer{-ms-flex-direction:column;flex-direction:column;gap:4px}:host(.mobile) .zonos--checkout-locale-wrapper{-ms-flex-direction:column;flex-direction:column}:host(.mobile) .zonos--checkout-footer-icon-wrapper{-ms-flex-direction:column;flex-direction:column}:host(.mobile) .zonos--checkout-footer-dialog{position:fixed;left:0;right:0;bottom:0;-webkit-transform-origin:bottom center;transform-origin:bottom center;width:100vw}";
393
+ const zonosCheckoutFooterCss = ":host{font-family:var(--font-family, Inter), Inter;display:block;white-space:normal}:host *{font-family:var(--font-family, Inter), Inter}:host img{max-width:100%}:host dl,:host dd,:host h1,:host h2,:host h3,:host h4,:host h5,:host h6,:host hr,:host figure,:host p,:host pre{margin:0}:host{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}:host{position:absolute;bottom:-50px;left:0;right:0;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;z-index:2}:host .zonos--checkout-footer{width:calc(90vw - 22px);gap:16px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:12px;padding-left:0;-ms-flex-align:center;align-items:center}:host .zonos--checkout-footer .zonos--checkout-footer-icon-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:24px}:host .zonos--checkout-footer .zonos--checkout-footer-icon-wrapper .zonos--checkout-footer-logo{display:-ms-inline-flexbox;display:inline-flex;gap:8px;-ms-flex-align:center;align-items:center}:host .zonos--checkout-footer .zonos--checkout-footer-icon-wrapper .zonos--checkout-footer-logo a{line-height:0}:host .zonos--checkout-footer .zonos--checkout-footer-icon-wrapper a{text-decoration:none}:host .zonos--checkout-footer zonos-button button.outline{outline:1px solid var(--zonos-elements-gray-800)}:host .zonos--checkout-footer .zonos--checkout-locale-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:8px;position:relative}@media (max-width: 400px){:host .zonos--checkout-footer .zonos--checkout-locale-wrapper{gap:4px}}:host .zonos--checkout-footer .zonos--checkout-footer-dialog{position:absolute;bottom:36px;left:var(--language-dialog-left);background:var(--zonos-elements-surface-color);-webkit-box-shadow:var(--zonos-elements-v3-shadow-xl);box-shadow:var(--zonos-elements-v3-shadow-xl);border-radius:var(--zonos-elements-radius-12);width:360px;max-width:100vw;max-height:500px;z-index:2147483011;overflow:auto;-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:bottom left;transform-origin:bottom left;opacity:0;-webkit-transition:opacity 0.3s ease-out, -webkit-transform 0.3s ease-out;transition:opacity 0.3s ease-out, -webkit-transform 0.3s ease-out;transition:transform 0.3s ease-out, opacity 0.3s ease-out;transition:transform 0.3s ease-out, opacity 0.3s ease-out, -webkit-transform 0.3s ease-out;-ms-scroll-chaining:none;overscroll-behavior:contain}:host .zonos--checkout-footer .zonos--checkout-footer-dialog::-webkit-scrollbar{width:10px}:host .zonos--checkout-footer .zonos--checkout-footer-dialog::-webkit-scrollbar-track{background:var(--zonos-elements-gray-50)}:host .zonos--checkout-footer .zonos--checkout-footer-dialog::-webkit-scrollbar-thumb{border-radius:10px;background:#cccccc;border:3px solid transparent;background-clip:content-box}:host .zonos--checkout-footer .zonos--checkout-footer-dialog::-webkit-scrollbar-thumb:hover{background:#d6d6d6}:host .zonos--checkout-footer .zonos--checkout-footer-dialog::-webkit-scrollbar-track{border-top-right-radius:var(--zonos-elements-radius-12);border-bottom-right-radius:var(--zonos-elements-radius-12)}:host .zonos--checkout-footer .zonos--checkout-footer-dialog.zonos--checkout-footer-dialog-open{opacity:1;-webkit-transform:scale(1);transform:scale(1)}:host(.mobile){-ms-flex-direction:column;flex-direction:column;gap:32px;background:var(--zonos-elements-gray-0);position:relative;padding-top:24px;bottom:0}:host(.mobile) .zonos--checkout-footer{-ms-flex-direction:column;flex-direction:column;gap:4px}:host(.mobile) .zonos--checkout-locale-wrapper{-ms-flex-direction:column;flex-direction:column}:host(.mobile) .zonos--checkout-footer-icon-wrapper{-ms-flex-direction:column;flex-direction:column}:host(.mobile) .zonos--checkout-footer-dialog{position:fixed;left:0;right:0;bottom:0;-webkit-transform-origin:bottom center;transform-origin:bottom center;width:100vw}";
363
394
  const ZonosCheckoutFooterStyle0 = zonosCheckoutFooterCss;
364
395
 
365
396
  const ZonosCheckoutFooter = class {
@@ -405,13 +436,15 @@ const CheckmarkLineIcon = `<svg color="var(--zonos-elements-gray-1000)" xmlns="h
405
436
 
406
437
  const RemoveLineIcon = `<svg color="var(--zonos-elements-gray-1000)" xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none" viewBox="0 0 24 24"><path fill="var(--zonos-elements-gray-1000)" d="M14.475 10.586a.75.75 0 1 0-1.06-1.06L12 10.938l-1.414-1.414a.75.75 0 0 0-1.06 1.06L10.938 12l-1.414 1.414a.75.75 0 1 0 1.06 1.06L12 13.062l1.414 1.414a.75.75 0 0 0 1.06-1.06L13.062 12l1.414-1.414Z"/><path fill="var(--zonos-elements-gray-1000)" fill-rule="evenodd" d="M12 4a8 8 0 1 0 0 16 8 8 0 0 0 0-16Zm-6.5 8a6.5 6.5 0 1 1 13 0 6.5 6.5 0 0 1-13 0Z" clip-rule="evenodd"/></svg>`;
407
438
 
408
- const zonosCheckoutPaymentCss = ".sc-zonos-checkout-payment-h{font-family:var(--font-family, Inter), Inter;display:block;white-space:normal}.sc-zonos-checkout-payment-h *.sc-zonos-checkout-payment{font-family:var(--font-family, Inter), Inter}.sc-zonos-checkout-payment-h img.sc-zonos-checkout-payment{max-width:100%}.sc-zonos-checkout-payment-h dl.sc-zonos-checkout-payment,.sc-zonos-checkout-payment-h dd.sc-zonos-checkout-payment,.sc-zonos-checkout-payment-h h1.sc-zonos-checkout-payment,.sc-zonos-checkout-payment-h h2.sc-zonos-checkout-payment,.sc-zonos-checkout-payment-h h3.sc-zonos-checkout-payment,.sc-zonos-checkout-payment-h h4.sc-zonos-checkout-payment,.sc-zonos-checkout-payment-h h5.sc-zonos-checkout-payment,.sc-zonos-checkout-payment-h h6.sc-zonos-checkout-payment,.sc-zonos-checkout-payment-h hr.sc-zonos-checkout-payment,.sc-zonos-checkout-payment-h figure.sc-zonos-checkout-payment,.sc-zonos-checkout-payment-h p.sc-zonos-checkout-payment,.sc-zonos-checkout-payment-h pre.sc-zonos-checkout-payment{margin:0}.sc-zonos-checkout-payment-h{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.sc-zonos-checkout-payment-h{overflow:hidden;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex:1;flex:1}.sc-zonos-checkout-payment-h .zonos--title.sc-zonos-checkout-payment{margin-bottom:24px}.sc-zonos-checkout-payment-h .zonos--group.sc-zonos-checkout-payment{margin-bottom:20px;overflow:auto;padding:5px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex:1;flex:1}.sc-zonos-checkout-payment-h .zonos--group.sc-zonos-checkout-payment::-webkit-scrollbar{width:10px}.sc-zonos-checkout-payment-h .zonos--group.sc-zonos-checkout-payment::-webkit-scrollbar-track{background:var(--zonos-elements-gray-50)}.sc-zonos-checkout-payment-h .zonos--group.sc-zonos-checkout-payment::-webkit-scrollbar-thumb{border-radius:10px;background:#cccccc;border:3px solid transparent;background-clip:content-box}.sc-zonos-checkout-payment-h .zonos--group.sc-zonos-checkout-payment::-webkit-scrollbar-thumb:hover{background:#d6d6d6}.sc-zonos-checkout-payment-h .zonos--payment-error-banner.sc-zonos-checkout-payment{margin-bottom:8px}.sc-zonos-checkout-payment-h .zonos--error-banner.sc-zonos-checkout-payment{margin-bottom:16px}.sc-zonos-checkout-payment-h zonos-button.sc-zonos-checkout-payment{-webkit-box-shadow:0 0 1px 0 var(--zonos-elements-gray-600);box-shadow:0 0 1px 0 var(--zonos-elements-gray-600)}.sc-zonos-checkout-payment-h zonos-button.sc-zonos-checkout-payment{-webkit-box-shadow:0 0 1px 0 var(--zonos-elements-gray-600);box-shadow:0 0 1px 0 var(--zonos-elements-gray-600)}.sc-zonos-checkout-payment-h .zonos--group-btn.sc-zonos-checkout-payment{position:-webkit-sticky;position:sticky;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;bottom:0;margin-top:12px;background:var(--primary-color, var(--zonos-elements-gray-0))}.sc-zonos-checkout-payment-h .zonos--group-btn.sc-zonos-checkout-payment zonos-button.sc-zonos-checkout-payment{width:100%}.sc-zonos-checkout-payment-h .zonos--test-cards.sc-zonos-checkout-payment{margin-top:auto;padding-top:16px}";
439
+ const zonosCheckoutPaymentCss = ".sc-zonos-checkout-payment-h{font-family:var(--font-family, Inter), Inter;display:block;white-space:normal}.sc-zonos-checkout-payment-h *.sc-zonos-checkout-payment{font-family:var(--font-family, Inter), Inter}.sc-zonos-checkout-payment-h img.sc-zonos-checkout-payment{max-width:100%}.sc-zonos-checkout-payment-h dl.sc-zonos-checkout-payment,.sc-zonos-checkout-payment-h dd.sc-zonos-checkout-payment,.sc-zonos-checkout-payment-h h1.sc-zonos-checkout-payment,.sc-zonos-checkout-payment-h h2.sc-zonos-checkout-payment,.sc-zonos-checkout-payment-h h3.sc-zonos-checkout-payment,.sc-zonos-checkout-payment-h h4.sc-zonos-checkout-payment,.sc-zonos-checkout-payment-h h5.sc-zonos-checkout-payment,.sc-zonos-checkout-payment-h h6.sc-zonos-checkout-payment,.sc-zonos-checkout-payment-h hr.sc-zonos-checkout-payment,.sc-zonos-checkout-payment-h figure.sc-zonos-checkout-payment,.sc-zonos-checkout-payment-h p.sc-zonos-checkout-payment,.sc-zonos-checkout-payment-h pre.sc-zonos-checkout-payment{margin:0}.sc-zonos-checkout-payment-h{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.sc-zonos-checkout-payment-h{overflow:hidden;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex:1;flex:1}.sc-zonos-checkout-payment-h .zonos--title.sc-zonos-checkout-payment{margin-bottom:24px}.sc-zonos-checkout-payment-h .zonos--group.sc-zonos-checkout-payment{margin-bottom:20px;overflow:auto;padding:5px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex:1;flex:1;-ms-scroll-chaining:none;overscroll-behavior:contain}.sc-zonos-checkout-payment-h .zonos--group.sc-zonos-checkout-payment::-webkit-scrollbar{width:10px}.sc-zonos-checkout-payment-h .zonos--group.sc-zonos-checkout-payment::-webkit-scrollbar-track{background:var(--zonos-elements-gray-50)}.sc-zonos-checkout-payment-h .zonos--group.sc-zonos-checkout-payment::-webkit-scrollbar-thumb{border-radius:10px;background:#cccccc;border:3px solid transparent;background-clip:content-box}.sc-zonos-checkout-payment-h .zonos--group.sc-zonos-checkout-payment::-webkit-scrollbar-thumb:hover{background:#d6d6d6}.sc-zonos-checkout-payment-h .zonos--payment-error-banner.sc-zonos-checkout-payment{margin-bottom:8px}.sc-zonos-checkout-payment-h .zonos--error-banner.sc-zonos-checkout-payment{margin-bottom:16px}.sc-zonos-checkout-payment-h zonos-button.sc-zonos-checkout-payment{-webkit-box-shadow:0 0 1px 0 var(--zonos-elements-gray-600);box-shadow:0 0 1px 0 var(--zonos-elements-gray-600)}.sc-zonos-checkout-payment-h zonos-button.sc-zonos-checkout-payment{-webkit-box-shadow:0 0 1px 0 var(--zonos-elements-gray-600);box-shadow:0 0 1px 0 var(--zonos-elements-gray-600)}.sc-zonos-checkout-payment-h .zonos--group-btn.sc-zonos-checkout-payment{position:-webkit-sticky;position:sticky;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-direction:column;flex-direction:column;gap:12px;bottom:0;padding-top:12px;background:var(--primary-color, var(--zonos-elements-gray-0))}.sc-zonos-checkout-payment-h .zonos--group-btn.sc-zonos-checkout-payment zonos-text.sc-zonos-checkout-payment{text-align:center}.sc-zonos-checkout-payment-h .zonos--group-btn.sc-zonos-checkout-payment zonos-button.sc-zonos-checkout-payment{width:100%}.sc-zonos-checkout-payment-h .zonos--test-cards.sc-zonos-checkout-payment{margin-top:auto;padding-top:16px}";
409
440
  const ZonosCheckoutPaymentStyle0 = zonosCheckoutPaymentCss;
410
441
 
411
442
  const ZonosCheckoutPayment = class {
412
443
  constructor(hostRef) {
413
444
  registerInstance(this, hostRef);
414
445
  this.continueClicked = createEvent(this, "continueClicked", 7);
446
+ this.paypalSessionFailed = createEvent(this, "paypalSessionFailed", 7);
447
+ this.paypalSessionDone = createEvent(this, "paypalSessionDone", 7);
415
448
  this.handleValidate = () => {
416
449
  var _a;
417
450
  return !!((_a = stripeStore.stripePaymentEventData) === null || _a === void 0 ? void 0 : _a.complete);
@@ -424,9 +457,9 @@ const ZonosCheckoutPayment = class {
424
457
  this.showErrorBanner = true;
425
458
  return;
426
459
  }
427
- this.continueClicked.emit();
428
460
  // submit google tag when the form is complete
429
461
  submitGtag('zonos-checkout-payment-info');
462
+ this.continueClicked.emit();
430
463
  };
431
464
  this.copyCardToClipboard = (cardNumber) => {
432
465
  void navigator.clipboard.writeText(cardNumber);
@@ -436,7 +469,6 @@ const ZonosCheckoutPayment = class {
436
469
  type: 'success',
437
470
  });
438
471
  };
439
- this.paymentError = false;
440
472
  this.submitBtnType = undefined;
441
473
  this.continueLoading = false;
442
474
  this.submitBtnColor = undefined;
@@ -451,22 +483,28 @@ const ZonosCheckoutPayment = class {
451
483
  this.showErrorBanner = !this.handleValidate();
452
484
  }
453
485
  const isTestMode = getIsTestMode();
454
- return (h(Host, { class: "zonos--checkout-payment zonos--elements" }, h("div", { class: "zonos--group" }, h("zonos-text", { class: "zonos--title", type: "semiBoldSubheader" }, translate('Payment method')), this.showErrorBanner && (h("zonos-banner", { class: "zonos--error-banner", intent: "error" }, translate('Missing required fields. Make sure all fields are completed.'))), this.paymentError && (h("zonos-banner", { class: "zonos--payment-error-banner", intent: "error" }, translate("We couldn't complete your payment. Please verify the payment details and try again."))), h("zonos-payment", null), h("div", { class: "zonos--group-btn" }, h("zonos-button", { backgroundColor: this.submitBtnColor, loading: this.continueLoading, onClick: () => this.continueClickHandler(), size: "lg",
486
+ const hasPaypalEnabled = paypalStoreHasPaypalEnabled();
487
+ return (h(Host, { class: "zonos--checkout-payment zonos--elements" }, h("div", { class: "zonos--group" }, h("zonos-text", { class: "zonos--title", type: "semiBoldSubheader" }, translate('Payment method')), this.showErrorBanner && (h("zonos-banner", { class: "zonos--error-banner", intent: "error" }, translate('Missing required fields. Make sure all fields are completed.'))), stripeStore.hasPaymentError && (h("zonos-banner", { class: "zonos--payment-error-banner", intent: "error" }, translate("We couldn't complete your payment. Please verify the payment details and try again."))), paypalStore.paypalErrorMessage && (h("zonos-banner", { class: "zonos--payment-error-banner", intent: "error" }, paypalStore.paypalErrorMessage)), h("zonos-payment", null), h("div", { class: "zonos--group-btn" }, h("zonos-button", { backgroundColor: this.submitBtnColor, loading: this.continueLoading, onClick: () => this.continueClickHandler(), size: "lg",
455
488
  // use primary type when on mobile mode
456
489
  variant: this.submitBtnType }, translate('Pay [orderTotal]', {
457
490
  orderTotal: currencyFormat({
458
491
  amount: cartStore.total,
459
492
  currency: cartStore.currency,
460
493
  }),
461
- }))), isTestMode && (h("zonos-card", { backgroundColor: "gray-100", borderRadius: 12, class: "zonos--test-cards" }, h("zonos-v-stack", { spacing: 16 }, h("div", null, h("zonos-text", { type: "semiBoldLabel" }, translate('Test cards')), h("zonos-text", { textColor: "gray-700" }, translate('Click to copy the card number. Use any future expiration date and three number CVC.'))), h("zonos-button", { icon: h("zonos-icon", { content: CheckmarkLineIcon }), justifyContent: "flex-start", onClick: () => this.copyCardToClipboard('4242424242424242') }, translate('Success'), " (****4242)"), h("zonos-button", { icon: h("zonos-icon", { content: RemoveLineIcon }), justifyContent: "flex-start", onClick: () => this.copyCardToClipboard('4000000000000002') }, translate('Failure'), " (****0002)")), h("zonos-notification", null))))));
494
+ })), hasPaypalEnabled && (h("zonos-text", { type: "smallHeader" }, translate('or'))), h("zonos-paypal-payment", { onPaypalSessionDone: ({ detail: { orderId } }) => {
495
+ this.paypalSessionDone.emit(orderId);
496
+ }, onPaypalSessionFail: () => this.paypalSessionFailed.emit() })), isTestMode && (h("zonos-card", { backgroundColor: "gray-100", borderRadius: 12, class: "zonos--test-cards" }, h("zonos-v-stack", { spacing: 16 }, h("div", null, h("zonos-text", { type: "semiBoldLabel" }, translate('Test cards')), h("zonos-text", { textColor: "gray-700" }, translate('Click to copy the card number. Use any future expiration date and three number CVC.'))), h("zonos-button", { icon: h("zonos-icon", { content: CheckmarkLineIcon }), justifyContent: "flex-start", onClick: () => this.copyCardToClipboard('4242424242424242') }, translate('Success'), " (****4242)"), h("zonos-button", { icon: h("zonos-icon", { content: RemoveLineIcon }), justifyContent: "flex-start", onClick: () => this.copyCardToClipboard('4000000000000002') }, translate('Failure'), " (****0002)")), h("zonos-notification", null))))));
462
497
  }
463
498
  };
464
499
  ZonosCheckoutPayment.style = ZonosCheckoutPaymentStyle0;
465
500
 
466
501
  const getContrastColor = ({ backgroundColor, color, }) => {
467
502
  // get readibility of the color
468
- const colorReadibilityValue = tinycolor.readability(color, backgroundColor);
469
- if (colorReadibilityValue > 2.5) {
503
+ const isContrastEnough = isContrastColor({
504
+ backgroundColor1: backgroundColor,
505
+ backgroundColor2: color,
506
+ });
507
+ if (isContrastEnough) {
470
508
  // no need to change the color if it's already contrast enough
471
509
  return color;
472
510
  }
@@ -666,7 +704,7 @@ const ZonosConfirmDialog = class {
666
704
  };
667
705
  ZonosConfirmDialog.style = ZonosConfirmDialogStyle0;
668
706
 
669
- const zonosCustomerInfoCss = ".sc-zonos-customer-info-h{font-family:var(--font-family, Inter), Inter;display:block;white-space:normal}.sc-zonos-customer-info-h *.sc-zonos-customer-info{font-family:var(--font-family, Inter), Inter}.sc-zonos-customer-info-h img.sc-zonos-customer-info{max-width:100%}.sc-zonos-customer-info-h dl.sc-zonos-customer-info,.sc-zonos-customer-info-h dd.sc-zonos-customer-info,.sc-zonos-customer-info-h h1.sc-zonos-customer-info,.sc-zonos-customer-info-h h2.sc-zonos-customer-info,.sc-zonos-customer-info-h h3.sc-zonos-customer-info,.sc-zonos-customer-info-h h4.sc-zonos-customer-info,.sc-zonos-customer-info-h h5.sc-zonos-customer-info,.sc-zonos-customer-info-h h6.sc-zonos-customer-info,.sc-zonos-customer-info-h hr.sc-zonos-customer-info,.sc-zonos-customer-info-h figure.sc-zonos-customer-info,.sc-zonos-customer-info-h p.sc-zonos-customer-info,.sc-zonos-customer-info-h pre.sc-zonos-customer-info{margin:0}.sc-zonos-customer-info-h{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.sc-zonos-customer-info-h{overflow:hidden;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.sc-zonos-customer-info-h .zonos--title.sc-zonos-customer-info{margin-bottom:20px}.sc-zonos-customer-info-h .zonos--link-authentication.sc-zonos-customer-info{margin-bottom:32px}.sc-zonos-customer-info-h .zonos--address.sc-zonos-customer-info{margin-bottom:16px}.sc-zonos-customer-info-h .zonos--checkbox.sc-zonos-customer-info{margin-bottom:16px}.sc-zonos-customer-info-h .zonos--checkbox.sc-zonos-customer-info+.zonos--address.sc-zonos-customer-info{margin-bottom:0}.sc-zonos-customer-info-h zonos-button.sc-zonos-customer-info{-webkit-box-shadow:0 0 1px 0 var(--zonos-elements-gray-600);box-shadow:0 0 1px 0 var(--zonos-elements-gray-600)}.sc-zonos-customer-info-h .zonos--error-banner.sc-zonos-customer-info{margin-bottom:16px}.sc-zonos-customer-info-h .zonos--group.sc-zonos-customer-info{margin-bottom:20px;overflow:auto;padding:5px}.sc-zonos-customer-info-h .zonos--group.sc-zonos-customer-info::-webkit-scrollbar{width:10px}.sc-zonos-customer-info-h .zonos--group.sc-zonos-customer-info::-webkit-scrollbar-track{background:var(--zonos-elements-gray-50)}.sc-zonos-customer-info-h .zonos--group.sc-zonos-customer-info::-webkit-scrollbar-thumb{border-radius:10px;background:#cccccc;border:3px solid transparent;background-clip:content-box}.sc-zonos-customer-info-h .zonos--group.sc-zonos-customer-info::-webkit-scrollbar-thumb:hover{background:#d6d6d6}.sc-zonos-customer-info-h .zonos--group-btn.sc-zonos-customer-info{position:-webkit-sticky;position:sticky;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;bottom:-5px;padding-top:8px;margin-top:12px;background:var(--primary-color, var(--zonos-elements-gray-0))}.sc-zonos-customer-info-h .zonos--group-btn.sc-zonos-customer-info zonos-button.sc-zonos-customer-info{width:100%}";
707
+ const zonosCustomerInfoCss = ".sc-zonos-customer-info-h{font-family:var(--font-family, Inter), Inter;display:block;white-space:normal}.sc-zonos-customer-info-h *.sc-zonos-customer-info{font-family:var(--font-family, Inter), Inter}.sc-zonos-customer-info-h img.sc-zonos-customer-info{max-width:100%}.sc-zonos-customer-info-h dl.sc-zonos-customer-info,.sc-zonos-customer-info-h dd.sc-zonos-customer-info,.sc-zonos-customer-info-h h1.sc-zonos-customer-info,.sc-zonos-customer-info-h h2.sc-zonos-customer-info,.sc-zonos-customer-info-h h3.sc-zonos-customer-info,.sc-zonos-customer-info-h h4.sc-zonos-customer-info,.sc-zonos-customer-info-h h5.sc-zonos-customer-info,.sc-zonos-customer-info-h h6.sc-zonos-customer-info,.sc-zonos-customer-info-h hr.sc-zonos-customer-info,.sc-zonos-customer-info-h figure.sc-zonos-customer-info,.sc-zonos-customer-info-h p.sc-zonos-customer-info,.sc-zonos-customer-info-h pre.sc-zonos-customer-info{margin:0}.sc-zonos-customer-info-h{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.sc-zonos-customer-info-h{overflow:hidden;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.sc-zonos-customer-info-h .zonos--title.sc-zonos-customer-info{margin-bottom:20px}.sc-zonos-customer-info-h .zonos--link-authentication.sc-zonos-customer-info{margin-bottom:32px}.sc-zonos-customer-info-h .zonos--address.sc-zonos-customer-info{margin-bottom:16px}.sc-zonos-customer-info-h .zonos--checkbox.sc-zonos-customer-info{margin-bottom:16px}.sc-zonos-customer-info-h .zonos--checkbox.sc-zonos-customer-info+.zonos--address.sc-zonos-customer-info{margin-bottom:0}.sc-zonos-customer-info-h zonos-button.sc-zonos-customer-info{-webkit-box-shadow:0 0 1px 0 var(--zonos-elements-gray-600);box-shadow:0 0 1px 0 var(--zonos-elements-gray-600)}.sc-zonos-customer-info-h .zonos--error-banner.sc-zonos-customer-info{margin-bottom:16px}.sc-zonos-customer-info-h .zonos--group.sc-zonos-customer-info{margin-bottom:20px;overflow:auto;padding:5px;-ms-scroll-chaining:none;overscroll-behavior:contain}.sc-zonos-customer-info-h .zonos--group.sc-zonos-customer-info::-webkit-scrollbar{width:10px}.sc-zonos-customer-info-h .zonos--group.sc-zonos-customer-info::-webkit-scrollbar-track{background:var(--zonos-elements-gray-50)}.sc-zonos-customer-info-h .zonos--group.sc-zonos-customer-info::-webkit-scrollbar-thumb{border-radius:10px;background:#cccccc;border:3px solid transparent;background-clip:content-box}.sc-zonos-customer-info-h .zonos--group.sc-zonos-customer-info::-webkit-scrollbar-thumb:hover{background:#d6d6d6}.sc-zonos-customer-info-h .zonos--group-btn.sc-zonos-customer-info{position:-webkit-sticky;position:sticky;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;bottom:-5px;padding-top:8px;margin-top:12px;background:var(--primary-color, var(--zonos-elements-gray-0))}.sc-zonos-customer-info-h .zonos--group-btn.sc-zonos-customer-info zonos-button.sc-zonos-customer-info{width:100%}";
670
708
  const ZonosCustomerInfoStyle0 = zonosCustomerInfoCss;
671
709
 
672
710
  const ZonosCustomerInfo = class {
@@ -950,7 +988,7 @@ const sortServiceLevelOptions = (serviceLevels) => {
950
988
  return sortedServiceLevels;
951
989
  };
952
990
 
953
- const zonosShippingCss = ".sc-zonos-shipping-h{font-family:var(--font-family, Inter), Inter;display:block;white-space:normal}.sc-zonos-shipping-h *.sc-zonos-shipping{font-family:var(--font-family, Inter), Inter}.sc-zonos-shipping-h img.sc-zonos-shipping{max-width:100%}.sc-zonos-shipping-h dl.sc-zonos-shipping,.sc-zonos-shipping-h dd.sc-zonos-shipping,.sc-zonos-shipping-h h1.sc-zonos-shipping,.sc-zonos-shipping-h h2.sc-zonos-shipping,.sc-zonos-shipping-h h3.sc-zonos-shipping,.sc-zonos-shipping-h h4.sc-zonos-shipping,.sc-zonos-shipping-h h5.sc-zonos-shipping,.sc-zonos-shipping-h h6.sc-zonos-shipping,.sc-zonos-shipping-h hr.sc-zonos-shipping,.sc-zonos-shipping-h figure.sc-zonos-shipping,.sc-zonos-shipping-h p.sc-zonos-shipping,.sc-zonos-shipping-h pre.sc-zonos-shipping{margin:0}.sc-zonos-shipping-h{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.sc-zonos-shipping-h{overflow:hidden;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.sc-zonos-shipping-h .zonos--title.sc-zonos-shipping{margin-bottom:24px}.sc-zonos-shipping-h .zonos--shipping-method-title.sc-zonos-shipping{margin-bottom:16px}.sc-zonos-shipping-h .zonos-shipping-rich-radio.sc-zonos-shipping{margin-bottom:24px}.sc-zonos-shipping-h .zonos--group.sc-zonos-shipping{margin-bottom:20px;overflow:auto;padding:5px}.sc-zonos-shipping-h .zonos--group.sc-zonos-shipping::-webkit-scrollbar{width:10px}.sc-zonos-shipping-h .zonos--group.sc-zonos-shipping::-webkit-scrollbar-track{background:var(--zonos-elements-gray-50)}.sc-zonos-shipping-h .zonos--group.sc-zonos-shipping::-webkit-scrollbar-thumb{border-radius:10px;background:#cccccc;border:3px solid transparent;background-clip:content-box}.sc-zonos-shipping-h .zonos--group.sc-zonos-shipping::-webkit-scrollbar-thumb:hover{background:#d6d6d6}.sc-zonos-shipping-h .zonos--error-banner.sc-zonos-shipping{margin-bottom:16px}.sc-zonos-shipping-h zonos-button.sc-zonos-shipping{-webkit-box-shadow:0 0 1px 0 var(--zonos-elements-gray-600);box-shadow:0 0 1px 0 var(--zonos-elements-gray-600)}.sc-zonos-shipping-h .zonos--group-btn.sc-zonos-shipping{position:-webkit-sticky;position:sticky;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;bottom:0;margin-top:12px;background:var(--primary-color, var(--zonos-elements-gray-0))}.sc-zonos-shipping-h .zonos--group-btn.sc-zonos-shipping zonos-button.sc-zonos-shipping{width:100%}.sc-zonos-shipping-h zonos-banner.sc-zonos-shipping{margin-top:24px}";
991
+ const zonosShippingCss = ".sc-zonos-shipping-h{font-family:var(--font-family, Inter), Inter;display:block;white-space:normal}.sc-zonos-shipping-h *.sc-zonos-shipping{font-family:var(--font-family, Inter), Inter}.sc-zonos-shipping-h img.sc-zonos-shipping{max-width:100%}.sc-zonos-shipping-h dl.sc-zonos-shipping,.sc-zonos-shipping-h dd.sc-zonos-shipping,.sc-zonos-shipping-h h1.sc-zonos-shipping,.sc-zonos-shipping-h h2.sc-zonos-shipping,.sc-zonos-shipping-h h3.sc-zonos-shipping,.sc-zonos-shipping-h h4.sc-zonos-shipping,.sc-zonos-shipping-h h5.sc-zonos-shipping,.sc-zonos-shipping-h h6.sc-zonos-shipping,.sc-zonos-shipping-h hr.sc-zonos-shipping,.sc-zonos-shipping-h figure.sc-zonos-shipping,.sc-zonos-shipping-h p.sc-zonos-shipping,.sc-zonos-shipping-h pre.sc-zonos-shipping{margin:0}.sc-zonos-shipping-h{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.sc-zonos-shipping-h{overflow:hidden;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.sc-zonos-shipping-h .zonos--title.sc-zonos-shipping{margin-bottom:24px}.sc-zonos-shipping-h .zonos--shipping-method-title.sc-zonos-shipping{margin-bottom:16px}.sc-zonos-shipping-h .zonos-shipping-rich-radio.sc-zonos-shipping{margin-bottom:24px}.sc-zonos-shipping-h .zonos--group.sc-zonos-shipping{margin-bottom:20px;overflow:auto;padding:5px;-ms-scroll-chaining:none;overscroll-behavior:contain}.sc-zonos-shipping-h .zonos--group.sc-zonos-shipping::-webkit-scrollbar{width:10px}.sc-zonos-shipping-h .zonos--group.sc-zonos-shipping::-webkit-scrollbar-track{background:var(--zonos-elements-gray-50)}.sc-zonos-shipping-h .zonos--group.sc-zonos-shipping::-webkit-scrollbar-thumb{border-radius:10px;background:#cccccc;border:3px solid transparent;background-clip:content-box}.sc-zonos-shipping-h .zonos--group.sc-zonos-shipping::-webkit-scrollbar-thumb:hover{background:#d6d6d6}.sc-zonos-shipping-h .zonos--error-banner.sc-zonos-shipping{margin-bottom:16px}.sc-zonos-shipping-h zonos-button.sc-zonos-shipping{-webkit-box-shadow:0 0 1px 0 var(--zonos-elements-gray-600);box-shadow:0 0 1px 0 var(--zonos-elements-gray-600)}.sc-zonos-shipping-h .zonos--group-btn.sc-zonos-shipping{position:-webkit-sticky;position:sticky;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;bottom:0;margin-top:12px;background:var(--primary-color, var(--zonos-elements-gray-0))}.sc-zonos-shipping-h .zonos--group-btn.sc-zonos-shipping zonos-button.sc-zonos-shipping{width:100%}.sc-zonos-shipping-h zonos-banner.sc-zonos-shipping{margin-top:24px}";
954
992
  const ZonosShippingStyle0 = zonosShippingCss;
955
993
 
956
994
  const ZonosShipping = class {
@@ -1,12 +1,13 @@
1
- import { r as registerInstance, h, H as Host, F as Fragment } from './index-3b46f3c3.js';
2
- import { l as localizationStore, s as stripeStoreGetDomesticShippingSession, a as localizationStoreUpdateSelectedCountryCode, b as stripeStoreCleanupDomesticShippingSession, c as stripeStoreSaveDomesticShippingSession, i as initStripeElements, d as cartStore, e as cartStoreUpdateItems, f as cartStoreReset, g as cartStoreResetTabItems, h as stripeStore, j as stripeStoreInitCheckoutSession, k as cartStoreUpdateToErrorState, t as translate, m as stripeStorePrefetchLandedCost, n as cartStoreNextStep, o as stripeStoreConfirmPayment, p as stripeStoreReset, q as localizationStoreOnUpdate } from './cart-eb75b113.js';
3
- import { z as zonosStore, g as getZonosStoreTheme, m as mergeConfig } from './zonosStore-ba9e541e.js';
4
- import { c as createCustomEvent, s as sendErrorLog, a as submitGtag, t as trackConversionEvent, g as getIsTestMode } from './submitGtag-0bc0baa0.js';
1
+ import { r as registerInstance, h, H as Host, F as Fragment } from './index-5a37ccde.js';
2
+ import { l as localizationStore, s as stripeStoreGetDomesticShippingSession, a as localizationStoreUpdateSelectedCountryCode, b as stripeStoreCleanupDomesticShippingSession, c as stripeStoreSaveDomesticShippingSession, i as initStripeElements, d as cartStore, e as cartStoreUpdateItems, f as cartStoreReset, g as cartStoreResetTabItems, h as cartStoreClearCheckoutInterval, j as stripeStore, k as stripeStoreInitCheckoutSession, m as cartStoreStartCheckoutInterval, n as cartStoreUpdateToErrorState, t as translate, o as stripeStorePrefetchLandedCost, p as cartStoreNextStep, q as stripeStoreHandleInventoryCheck, r as stripeStoreConfirmPayment, u as stripeStoreReset, v as localizationStoreOnUpdate } from './cart-e9cd8286.js';
3
+ import { s as submitGtag, p as paypalInitScript } from './paypal-da2b3db1.js';
4
+ import { z as zonosStore, g as getZonosStoreTheme, m as mergeConfig } from './zonosStore-425abc1b.js';
5
+ import { c as createCustomEvent, s as sendErrorLog, t as trackConversionEvent, g as getIsTestMode } from './sendErrorLog-2fcf78a2.js';
5
6
  import { i as isCheckoutMobile } from './isCheckoutMobile-8846dccb.js';
6
7
  import { l as log, a as logError } from './logError-c456c092.js';
7
8
  import { c as classes } from './classes-0d95c529.js';
8
- import { g as getBorderRadius } from './getBorderRadius-947c24de.js';
9
- import { i as isDarkColor } from './isDarkColor-f8324c10.js';
9
+ import { g as getBorderRadius } from './getBorderRadius-3c75c4c1.js';
10
+ import { i as isDarkColor } from './isDarkColor-3eb31a6d.js';
10
11
  import { R as RemoveIcon } from './RemoveIcon-9dc5dd1a.js';
11
12
 
12
13
  /**
@@ -284,7 +285,7 @@ const MessageIcon = `<svg width="18" height="18" viewBox="0 0 18 18" fill="none"
284
285
  </svg>
285
286
  `;
286
287
 
287
- const zonosCheckoutCss = ".sc-zonos-checkout-h{font-family:var(--font-family, Inter), Inter;display:block;white-space:normal}.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(--zonos-elements-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(--zonos-elements-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:32px}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--left.sc-zonos-checkout{background-color:var(--primary-color, var(--zonos-elements-gray-0));border-right:1px solid var(--zonos-elements-gray-200)}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--right.sc-zonos-checkout{background-color:var(--zonos-elements-gray-0)}.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(--zonos-elements-gray-0);-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:24px;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;position:relative}.sc-zonos-checkout-h .zonos--left.sc-zonos-checkout .zonos--wrapper.sc-zonos-checkout{padding:0 8px 8px}.sc-zonos-checkout-h .zonos--left.sc-zonos-checkout .zonos--payment-error-banner.sc-zonos-checkout{margin-top:24px}.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:24px;top:24px;z-index:2}.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-wrapper.sc-zonos-checkout{display:-ms-flexbox;display:flex;gap:16px;-ms-flex-align:center;align-items:center}.sc-zonos-checkout-h .zonos--logo-wrapper.sc-zonos-checkout>*.sc-zonos-checkout{height:-webkit-fit-content;height:-moz-fit-content;height:fit-content}.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:76px;margin-bottom:8px}.preview.sc-zonos-checkout-h{min-width:500px;margin:auto}.preview.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout{border:var(--zonos-elements-border)}.preview.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--done.sc-zonos-checkout{padding:32px}.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:12px;padding-bottom:76px}@media (max-width: 768px){.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-bottom:0}}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--left.sc-zonos-checkout{-ms-flex-order:2;order:2;border-right:none}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--right.sc-zonos-checkout{-ms-flex-order:1;order:1;padding-top:16px}.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;border:var(--zonos-elements-border);border-radius:var(--border-radius, var(--zonos-elements-radius-10));background-color:var(--zonos-elements-gray-50);padding:12px;margin-top:32px}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--right.sc-zonos-checkout .zonos--review.sc-zonos-checkout{margin-bottom:0}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--right.sc-zonos-checkout .zonos--cart-items.sc-zonos-checkout{margin-top:8px}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout zonos-checkout-footer.sc-zonos-checkout{-ms-flex-order:3;order:3}.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}";
288
+ const zonosCheckoutCss = ".sc-zonos-checkout-h{font-family:var(--font-family, Inter), Inter;display:block;white-space:normal}.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{-ms-scroll-chaining:none;overscroll-behavior:contain}.sc-zonos-checkout-h *.sc-zonos-checkout::-webkit-scrollbar{width:10px}.sc-zonos-checkout-h *.sc-zonos-checkout::-webkit-scrollbar-track{background:var(--zonos-elements-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(--zonos-elements-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:32px}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--left.sc-zonos-checkout{background-color:var(--primary-color, var(--zonos-elements-gray-0));border-right:1px solid var(--zonos-elements-gray-200)}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--right.sc-zonos-checkout{background-color:var(--zonos-elements-gray-0)}.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(--zonos-elements-gray-0);-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:24px;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;position:relative}.sc-zonos-checkout-h .zonos--left.sc-zonos-checkout .zonos--wrapper.sc-zonos-checkout{padding:0 8px 8px}.sc-zonos-checkout-h .zonos--left.sc-zonos-checkout .zonos--payment-error-banner.sc-zonos-checkout{margin-top:24px}.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:24px;top:24px;z-index:2}.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-wrapper.sc-zonos-checkout{display:-ms-flexbox;display:flex;gap:16px;-ms-flex-align:center;align-items:center}.sc-zonos-checkout-h .zonos--logo-wrapper.sc-zonos-checkout>*.sc-zonos-checkout{height:-webkit-fit-content;height:-moz-fit-content;height:fit-content}.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:76px;margin-bottom:8px}.preview.sc-zonos-checkout-h{min-width:500px;margin:auto}.preview.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout{border:var(--zonos-elements-border)}.preview.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--done.sc-zonos-checkout{padding:32px}.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:12px;padding-bottom:76px}@media (max-width: 768px){.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-bottom:0}}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--left.sc-zonos-checkout{-ms-flex-order:2;order:2;border-right:none}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--right.sc-zonos-checkout{-ms-flex-order:1;order:1;padding-top:16px}.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;border:var(--zonos-elements-border);border-radius:var(--border-radius, var(--zonos-elements-radius-10));background-color:var(--zonos-elements-gray-50);padding:12px;margin-top:32px}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--right.sc-zonos-checkout .zonos--review.sc-zonos-checkout{margin-bottom:0}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--right.sc-zonos-checkout .zonos--cart-items.sc-zonos-checkout{margin-top:8px}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout zonos-checkout-footer.sc-zonos-checkout{-ms-flex-order:3;order:3}.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}";
288
289
  const ZonosCheckoutStyle0 = zonosCheckoutCss;
289
290
 
290
291
  // 90 minutes
@@ -327,7 +328,6 @@ const ZonosCheckout = class {
327
328
  this.open = this.forceDialogOpen;
328
329
  this.stripe = window.Zonos.stripe;
329
330
  this.submitLoading = false;
330
- this.paymentError = false;
331
331
  this.collapseReviewMobile = true;
332
332
  this.isAttachError = false;
333
333
  this.isMobile = false;
@@ -337,8 +337,6 @@ const ZonosCheckout = class {
337
337
  this.legacyCheckoutHiddenBtnSelector = '#legacy-checkout-hidden-button';
338
338
  this.isLegacyCheckout = false;
339
339
  this.confirmDialogOpen = false;
340
- this.showSessionTimoutScreen = false;
341
- this.checkoutTimeoutInterval = null;
342
340
  this.inventoryCheckErrorMessage = null;
343
341
  }
344
342
  /**
@@ -380,7 +378,7 @@ const ZonosCheckout = class {
380
378
  // reset the tab item, so that user needs to click on Continue button to re-quote the landed cost if needed.
381
379
  cartStoreResetTabItems();
382
380
  // clear the checkout session timeout timer when checkout dialog close action is triggered
383
- this.clearCheckoutTimeoutInterval();
381
+ cartStoreClearCheckoutInterval();
384
382
  /**
385
383
  * Trigger callback when the checkout is closed
386
384
  */
@@ -413,30 +411,6 @@ const ZonosCheckout = class {
413
411
  await this.applyStripeTheme();
414
412
  return true;
415
413
  }
416
- clearCheckoutTimeoutInterval() {
417
- if (this.checkoutTimeoutInterval) {
418
- clearTimeout(this.checkoutTimeoutInterval);
419
- this.checkoutTimeoutInterval = null;
420
- }
421
- }
422
- startCheckoutTimeoutInterval() {
423
- // do nothing if in preview mode
424
- if (this.preview) {
425
- return;
426
- }
427
- const timeoutQuery = new URLSearchParams(window.location.search).get('zonosCheckoutTimeout');
428
- const timeout =
429
- // timeout query is mainly for testing purpose
430
- timeoutQuery && !isNaN(parseInt(timeoutQuery, 10))
431
- ? parseInt(timeoutQuery, 10)
432
- : CHECKOUT_SESSION_TIMEOUT;
433
- log(`==START CHECKOUT TIMEOUT - ${timeout}==`);
434
- // start a timer to validate the price
435
- this.checkoutTimeoutInterval = setTimeout(() => {
436
- // Show session timeout alert
437
- this.showSessionTimoutScreen = true;
438
- }, timeout);
439
- }
440
414
  reloadCheckoutSession() {
441
415
  window.location.reload();
442
416
  }
@@ -456,6 +430,9 @@ const ZonosCheckout = class {
456
430
  // do nothing if event is already attached
457
431
  return;
458
432
  }
433
+ log(`attached event to button ${buttonAnchorSelector}`, 'info', {
434
+ button,
435
+ });
459
436
  button.addEventListener('click', async (e) => {
460
437
  // do nothing if it's not shippable country
461
438
  if (!isShippableCountry()) {
@@ -474,7 +451,10 @@ const ZonosCheckout = class {
474
451
  throw new Error('Error building cart');
475
452
  }
476
453
  // start the timer to validate the price
477
- this.startCheckoutTimeoutInterval();
454
+ cartStoreStartCheckoutInterval({
455
+ isPreview: this.preview,
456
+ sessionTimeout: CHECKOUT_SESSION_TIMEOUT,
457
+ });
478
458
  submitGtag('zonos-checkout-start');
479
459
  void trackConversionEvent('checkout_open');
480
460
  }
@@ -488,6 +468,10 @@ const ZonosCheckout = class {
488
468
  title: translate('Error creating Checkout'),
489
469
  });
490
470
  }
471
+ }, {
472
+ // Trigger this event before any other event
473
+ capture: true,
474
+ passive: false,
491
475
  });
492
476
  if (!zonosStore.checkoutSettings.disablePlaceOrderButtonActivation) {
493
477
  button.removeAttribute('disabled');
@@ -637,6 +621,10 @@ const ZonosCheckout = class {
637
621
  const interval = setInterval(() => {
638
622
  if (cartStore.landedCostData || !stripeStore.isFetchingLandedCost) {
639
623
  if (cartStore.landedCostData) {
624
+ // start init paypal with the presentment currency when landed cost is fetched
625
+ void paypalInitScript({
626
+ currency: cartStore.currency,
627
+ });
640
628
  // only go to next step if landed cost data is ready
641
629
  cartStoreNextStep();
642
630
  }
@@ -655,41 +643,31 @@ const ZonosCheckout = class {
655
643
  }
656
644
  handleInventoryCheckDialogCancel() {
657
645
  // reset inventory check message to close the inventory check alert
658
- this.inventoryCheckErrorMessage = null;
646
+ cartStore.inventoryCheckErrorMessage = null;
659
647
  }
660
648
  handleInventoryCheckDialogConfirm() {
661
649
  // reset inventory check message to close the inventory check alert
662
- this.inventoryCheckErrorMessage = null;
650
+ cartStore.inventoryCheckErrorMessage = null;
663
651
  // close the dialog
664
652
  void this.closeDialogHandler({ confirmed: true });
665
653
  }
666
- /**
667
- * Handle inventory check and returns error message if the callback provided.
668
- */
669
- async handleInventoryCheck() {
670
- const { onInventoryCheck } = zonosStore.checkoutSettings;
671
- if (typeof onInventoryCheck !== 'function') {
672
- return null;
673
- }
674
- const message = await onInventoryCheck({ items: cartStore.items });
675
- return message;
676
- }
677
- async handleCheckoutPaymentContinue() {
654
+ async handleStripePaymentContinue() {
678
655
  // reset error state
679
- this.paymentError = false;
656
+ stripeStore.hasPaymentError = false;
680
657
  this.submitLoading = true;
681
658
  // reset inventory check message
682
- this.inventoryCheckErrorMessage = null;
659
+ cartStore.inventoryCheckErrorMessage = null;
683
660
  try {
684
661
  // check inventory before proceeding to payment
685
- this.inventoryCheckErrorMessage = await this.handleInventoryCheck();
662
+ cartStore.inventoryCheckErrorMessage =
663
+ await stripeStoreHandleInventoryCheck();
686
664
  }
687
665
  catch (err) {
688
666
  // If user provide callback and it throw an exception, default to this message and stop the payment.
689
- this.inventoryCheckErrorMessage = translate('Unable to check inventory. Please try again.');
667
+ cartStore.inventoryCheckErrorMessage = translate('Unable to check inventory. Please try again.');
690
668
  }
691
669
  // Don't proceed to payment if there's an error message
692
- if (this.inventoryCheckErrorMessage) {
670
+ if (cartStore.inventoryCheckErrorMessage) {
693
671
  // stop the submit loading state
694
672
  this.submitLoading = false;
695
673
  return;
@@ -698,11 +676,11 @@ const ZonosCheckout = class {
698
676
  await stripeStoreConfirmPayment();
699
677
  cartStoreNextStep();
700
678
  // clear the checkout session timeout timer when purchase is complete
701
- this.clearCheckoutTimeoutInterval();
679
+ cartStoreClearCheckoutInterval();
702
680
  }
703
681
  catch (err) {
704
682
  logError(err);
705
- this.paymentError = true;
683
+ stripeStore.hasPaymentError = true;
706
684
  }
707
685
  this.submitLoading = false;
708
686
  }
@@ -818,14 +796,16 @@ const ZonosCheckout = class {
818
796
  this.isMobile ? '--zonos-elements-gray-0' : null }), filteredMessages.map(x => (h("zonos-custom-message", { icon: MessageIcon, message: x.message })))));
819
797
  };
820
798
  const renderContent = () => {
821
- if (this.showSessionTimoutScreen) {
799
+ if (cartStore.checkoutSessionTimeoutShow) {
822
800
  return (h("zonos-rest-state", { class: "zonos--session-timeout", restStateSubtitle: translate('Your checkout session has expired. Please reload the page to continue.'), restStateTitle: translate('Session timed out'), restStateType: 'Warning' }, h("zonos-button", { onClick: () => this.reloadCheckoutSession(), variant: "primary" }, translate('Reload'))));
823
801
  }
824
802
  return (h("div", { class: 'zonos--content', style: {
825
803
  '--border-radius': getBorderRadius({ overrideBorderStyle: style }),
826
804
  } }, cartStore.step !== 'finish' && cartStore.step !== 'error' && (h(Fragment, null, h("div", { class: "zonos--left", "data-theme": leftSideTheme, style: {
827
805
  '--primary-color': !this.isMobile ? colorPrimary : '',
828
- } }, !this.isMobile && renderTopHeader(), cartStore.step === 'customer-info' && (h("zonos-customer-info", { continueLoading: this.submitLoading, defaultAddress: this.defaultAddress, isMobile: this.isMobile, onContinueClicked: () => this.handleCustomerInfoContinue(), submitBtnColor: submitButtonColor })), cartStore.step === 'shipping' && (h("zonos-shipping", { continueLoading: this.submitLoading, onContinueClicked: () => this.handleShippingContinue(), submitBtnColor: submitButtonColor })), cartStore.step === 'payment' && (h("zonos-checkout-payment", { continueLoading: this.submitLoading, onContinueClicked: () => this.handleCheckoutPaymentContinue(), paymentError: this.paymentError, submitBtnColor: submitButtonColor }))), h("div", { class: "zonos--right", "data-theme": rightSideTheme }, this.isMobile && renderTopHeader(), !this.isLegacyCheckout && (h("zonos-button", { class: "zonos--close-button", icon: h("zonos-icon", { "aria-label": "Close checkout dialog", content: RemoveIcon }), noBackground: true, onClick: () => this.closeDialogHandler() })), h("div", { class: "flex--wrapper" }, h("div", { class: "zonos--wrapper" }, h("zonos-review", { collapsed: this.collapseReviewMobile, mobile: this.isMobile, onClick: () => {
806
+ } }, !this.isMobile && renderTopHeader(), cartStore.step === 'customer-info' && (h("zonos-customer-info", { continueLoading: this.submitLoading, defaultAddress: this.defaultAddress, isMobile: this.isMobile, onContinueClicked: () => this.handleCustomerInfoContinue(), submitBtnColor: submitButtonColor })), cartStore.step === 'shipping' && (h("zonos-shipping", { continueLoading: this.submitLoading, onContinueClicked: () => this.handleShippingContinue(), submitBtnColor: submitButtonColor })), cartStore.step === 'payment' && (h("zonos-checkout-payment", { continueLoading: this.submitLoading, onContinueClicked: async () => {
807
+ await this.handleStripePaymentContinue();
808
+ }, submitBtnColor: submitButtonColor }))), h("div", { class: "zonos--right", "data-theme": rightSideTheme }, this.isMobile && renderTopHeader(), !this.isLegacyCheckout && (h("zonos-button", { class: "zonos--close-button", icon: h("zonos-icon", { "aria-label": "Close checkout dialog", content: RemoveIcon }), noBackground: true, onClick: () => this.closeDialogHandler() })), h("div", { class: "flex--wrapper" }, h("div", { class: "zonos--wrapper" }, h("zonos-review", { collapsed: this.collapseReviewMobile, mobile: this.isMobile, onClick: () => {
829
809
  // do nothing if it's not mobile
830
810
  if (!this.isMobile) {
831
811
  return;
@@ -854,9 +834,9 @@ const ZonosCheckout = class {
854
834
  // Mark user selected confirm to close the dialog
855
835
  onConfirmClicked: () => this.closeDialogHandler({ confirmed: true }) }), h("zonos-confirm-dialog", { class: "zonos--inventory-check-failure-dialog", dialogConfirmBtnText: translate('Return to cart'), dialogIntent: "danger",
856
836
  // Show dialog if inventory check error message is not null
857
- dialogOpen: !!this.inventoryCheckErrorMessage,
837
+ dialogOpen: !!cartStore.inventoryCheckErrorMessage,
858
838
  // If diallog is in open state, the message should not be null
859
- dialogSubtitle: this.inventoryCheckErrorMessage, dialogTitle: translate("Couldn't place order"), dialogType: "alert", onCancelClicked: () => {
839
+ dialogSubtitle: cartStore.inventoryCheckErrorMessage, dialogTitle: translate("Couldn't place order"), dialogType: "alert", onCancelClicked: () => {
860
840
  this.handleInventoryCheckDialogCancel();
861
841
  },
862
842
  // Mark user selected confirm to close the dialog
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h } from './index-3b46f3c3.js';
1
+ import { r as registerInstance, h } from './index-5a37ccde.js';
2
2
 
3
3
  function format(first, middle, last) {
4
4
  return ((first || '') + (middle ? ` ${middle}` : '') + (last ? ` ${last}` : ''));