@zonos/elements 1.3.7 → 1.3.8-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (202) hide show
  1. package/dist/cjs/{cart-eee85bda.js → cart-c22d66c8.js} +98 -21
  2. package/dist/cjs/{getBorderRadius-d8f18958.js → getBorderRadius-d9a954a3.js} +1 -1
  3. package/dist/cjs/{isDarkColor-57860b44.js → isDarkColor-c01f24df.js} +1 -1
  4. package/dist/cjs/loader.cjs.js +1 -1
  5. package/dist/cjs/{submitGtag-a2e1f652.js → submitGtag-9c0a8038.js} +2 -2
  6. package/dist/cjs/zonos-address_4.cjs.entry.js +60 -7
  7. package/dist/cjs/zonos-badge_2.cjs.entry.js +1 -1
  8. package/dist/cjs/zonos-banner.cjs.entry.js +1 -1
  9. package/dist/cjs/zonos-button_3.cjs.entry.js +3 -3
  10. package/dist/cjs/zonos-card_2.cjs.entry.js +4 -4
  11. package/dist/cjs/zonos-cart-items_9.cjs.entry.js +32 -17
  12. package/dist/cjs/zonos-checkout.cjs.entry.js +5 -5
  13. package/dist/cjs/zonos-controller.cjs.entry.js +4 -4
  14. package/dist/cjs/zonos-country-flag.cjs.entry.js +4 -4
  15. package/dist/cjs/zonos-country-select_3.cjs.entry.js +4 -4
  16. package/dist/cjs/zonos-elements.cjs.js +1 -1
  17. package/dist/cjs/zonos-hello-dialog.cjs.entry.js +4 -4
  18. package/dist/cjs/zonos-hello.cjs.entry.js +4 -4
  19. package/dist/cjs/zonos-logo.cjs.entry.js +1 -1
  20. package/dist/cjs/zonos-notification.cjs.entry.js +1 -1
  21. package/dist/cjs/zonos-payment.cjs.entry.js +4 -4
  22. package/dist/cjs/zonos-select-dialog-header_2.cjs.entry.js +1 -1
  23. package/dist/cjs/zonos-shipping-rich-radio.cjs.entry.js +2 -2
  24. package/dist/cjs/zonos-text.cjs.entry.js +1 -1
  25. package/dist/cjs/{zonosStore-138c5555.js → zonosStore-2a8612a4.js} +1 -0
  26. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-finish/zonos-checkout-finish.js +3 -3
  27. package/dist/collection/components/checkout/zonos-checkout/zonos-customer-info/zonos-customer-info.js +27 -10
  28. package/dist/collection/components/store/checkout/stripe.js +3 -3
  29. package/dist/collection/components/store/translationStore/strings.arabic.js +3 -0
  30. package/dist/collection/components/store/translationStore/strings.base.js +3 -0
  31. package/dist/collection/components/store/translationStore/strings.chinese.js +3 -0
  32. package/dist/collection/components/store/translationStore/strings.danish.js +3 -0
  33. package/dist/collection/components/store/translationStore/strings.dutch.js +3 -0
  34. package/dist/collection/components/store/translationStore/strings.french.js +3 -0
  35. package/dist/collection/components/store/translationStore/strings.german.js +3 -0
  36. package/dist/collection/components/store/translationStore/strings.hebrew.js +3 -0
  37. package/dist/collection/components/store/translationStore/strings.indonesian.js +3 -0
  38. package/dist/collection/components/store/translationStore/strings.italian.js +3 -0
  39. package/dist/collection/components/store/translationStore/strings.japanese.js +3 -0
  40. package/dist/collection/components/store/translationStore/strings.korean.js +3 -0
  41. package/dist/collection/components/store/translationStore/strings.norwegian.js +3 -0
  42. package/dist/collection/components/store/translationStore/strings.polish.js +3 -0
  43. package/dist/collection/components/store/translationStore/strings.portuguese.js +3 -0
  44. package/dist/collection/components/store/translationStore/strings.russian.js +3 -0
  45. package/dist/collection/components/store/translationStore/strings.spanish.js +3 -0
  46. package/dist/collection/components/store/translationStore/strings.swedish.js +3 -0
  47. package/dist/collection/components/store/translationStore/strings.turkish.js +3 -0
  48. package/dist/collection/components/store/translationStore/strings.vietnamese.js +3 -0
  49. package/dist/collection/components/store/zonosStore.js +1 -0
  50. package/dist/collection/components/stripe/zonos-address/zonos-address.css +3 -0
  51. package/dist/collection/components/stripe/zonos-address/zonos-address.js +63 -4
  52. package/dist/collection/components/utils/containsNonLatinChars.js +13 -0
  53. package/dist/collection/styles/stripe/addressRuleStyle.js +32 -15
  54. package/dist/collection/types/generated/graphql.customer.types.js +37 -0
  55. package/dist/collection/types/generated/graphql.frontend.types.js +19 -0
  56. package/dist/components/stripe.js +95 -18
  57. package/dist/components/zonos-address2.js +67 -6
  58. package/dist/components/zonos-checkout-finish2.js +3 -3
  59. package/dist/components/zonos-customer-info2.js +35 -12
  60. package/dist/components/zonosStore.js +1 -0
  61. package/dist/esm/{cart-e261efc1.js → cart-f70b9be6.js} +98 -21
  62. package/dist/esm/{getBorderRadius-19787feb.js → getBorderRadius-0d133844.js} +1 -1
  63. package/dist/esm/{isDarkColor-2344e7a5.js → isDarkColor-8eeda28e.js} +1 -1
  64. package/dist/esm/loader.js +1 -1
  65. package/dist/esm/{submitGtag-dfc6f1dc.js → submitGtag-1d7ee6b8.js} +2 -2
  66. package/dist/esm/zonos-address_4.entry.js +61 -8
  67. package/dist/esm/zonos-badge_2.entry.js +1 -1
  68. package/dist/esm/zonos-banner.entry.js +1 -1
  69. package/dist/esm/zonos-button_3.entry.js +3 -3
  70. package/dist/esm/zonos-card_2.entry.js +4 -4
  71. package/dist/esm/zonos-cart-items_9.entry.js +32 -17
  72. package/dist/esm/zonos-checkout.entry.js +5 -5
  73. package/dist/esm/zonos-controller.entry.js +4 -4
  74. package/dist/esm/zonos-country-flag.entry.js +4 -4
  75. package/dist/esm/zonos-country-select_3.entry.js +4 -4
  76. package/dist/esm/zonos-elements.js +1 -1
  77. package/dist/esm/zonos-hello-dialog.entry.js +4 -4
  78. package/dist/esm/zonos-hello.entry.js +4 -4
  79. package/dist/esm/zonos-logo.entry.js +1 -1
  80. package/dist/esm/zonos-notification.entry.js +1 -1
  81. package/dist/esm/zonos-payment.entry.js +4 -4
  82. package/dist/esm/zonos-select-dialog-header_2.entry.js +1 -1
  83. package/dist/esm/zonos-shipping-rich-radio.entry.js +2 -2
  84. package/dist/esm/zonos-text.entry.js +1 -1
  85. package/dist/esm/{zonosStore-00bce01b.js → zonosStore-807f931f.js} +1 -0
  86. package/dist/esm-es5/cart-f70b9be6.js +1 -0
  87. package/dist/esm-es5/{getBorderRadius-19787feb.js → getBorderRadius-0d133844.js} +1 -1
  88. package/dist/esm-es5/{isDarkColor-2344e7a5.js → isDarkColor-8eeda28e.js} +1 -1
  89. package/dist/esm-es5/loader.js +1 -1
  90. package/dist/esm-es5/{submitGtag-dfc6f1dc.js → submitGtag-1d7ee6b8.js} +1 -1
  91. package/dist/esm-es5/zonos-address_4.entry.js +1 -1
  92. package/dist/esm-es5/zonos-badge_2.entry.js +1 -1
  93. package/dist/esm-es5/zonos-banner.entry.js +1 -1
  94. package/dist/esm-es5/zonos-button_3.entry.js +1 -1
  95. package/dist/esm-es5/zonos-card_2.entry.js +1 -1
  96. package/dist/esm-es5/zonos-cart-items_9.entry.js +1 -1
  97. package/dist/esm-es5/zonos-checkout.entry.js +1 -1
  98. package/dist/esm-es5/zonos-controller.entry.js +1 -1
  99. package/dist/esm-es5/zonos-country-flag.entry.js +1 -1
  100. package/dist/esm-es5/zonos-country-select_3.entry.js +1 -1
  101. package/dist/esm-es5/zonos-elements.js +1 -1
  102. package/dist/esm-es5/zonos-hello-dialog.entry.js +1 -1
  103. package/dist/esm-es5/zonos-hello.entry.js +1 -1
  104. package/dist/esm-es5/zonos-logo.entry.js +1 -1
  105. package/dist/esm-es5/zonos-notification.entry.js +1 -1
  106. package/dist/esm-es5/zonos-payment.entry.js +1 -1
  107. package/dist/esm-es5/zonos-select-dialog-header_2.entry.js +1 -1
  108. package/dist/esm-es5/zonos-shipping-rich-radio.entry.js +1 -1
  109. package/dist/esm-es5/zonos-text.entry.js +1 -1
  110. package/dist/esm-es5/{zonosStore-00bce01b.js → zonosStore-807f931f.js} +1 -1
  111. package/dist/scripts/loadZonos.js +1 -1
  112. package/dist/scripts/zonos.js +1 -1
  113. package/dist/scripts/zonosBase.js +1 -1
  114. package/dist/types/components/checkout/zonos-checkout/zonos-customer-info/zonos-customer-info.d.ts +9 -0
  115. package/dist/types/components/store/translationStore/strings.arabic.d.ts +3 -0
  116. package/dist/types/components/store/translationStore/strings.base.d.ts +3 -0
  117. package/dist/types/components/store/translationStore/strings.chinese.d.ts +3 -0
  118. package/dist/types/components/store/translationStore/strings.danish.d.ts +3 -0
  119. package/dist/types/components/store/translationStore/strings.dutch.d.ts +3 -0
  120. package/dist/types/components/store/translationStore/strings.french.d.ts +3 -0
  121. package/dist/types/components/store/translationStore/strings.german.d.ts +3 -0
  122. package/dist/types/components/store/translationStore/strings.hebrew.d.ts +3 -0
  123. package/dist/types/components/store/translationStore/strings.indonesian.d.ts +3 -0
  124. package/dist/types/components/store/translationStore/strings.italian.d.ts +3 -0
  125. package/dist/types/components/store/translationStore/strings.japanese.d.ts +3 -0
  126. package/dist/types/components/store/translationStore/strings.korean.d.ts +3 -0
  127. package/dist/types/components/store/translationStore/strings.norwegian.d.ts +3 -0
  128. package/dist/types/components/store/translationStore/strings.polish.d.ts +3 -0
  129. package/dist/types/components/store/translationStore/strings.portuguese.d.ts +3 -0
  130. package/dist/types/components/store/translationStore/strings.russian.d.ts +3 -0
  131. package/dist/types/components/store/translationStore/strings.spanish.d.ts +3 -0
  132. package/dist/types/components/store/translationStore/strings.swedish.d.ts +3 -0
  133. package/dist/types/components/store/translationStore/strings.turkish.d.ts +3 -0
  134. package/dist/types/components/store/translationStore/strings.vietnamese.d.ts +3 -0
  135. package/dist/types/components/stripe/zonos-address/zonos-address.d.ts +7 -0
  136. package/dist/types/components/utils/api/getLocaleMessages.d.ts +1 -1
  137. package/dist/types/components/utils/containsNonLatinChars.d.ts +16 -0
  138. package/dist/types/components.d.ts +19 -0
  139. package/dist/types/types/checkout/CheckoutConfig.d.ts +5 -0
  140. package/dist/types/types/generated/graphql.customer.types.d.ts +53 -0
  141. package/dist/types/types/generated/graphql.customer.types.ts +71 -0
  142. package/dist/types/types/generated/graphql.frontend.types.d.ts +20 -1
  143. package/dist/types/types/generated/graphql.frontend.types.ts +23 -1
  144. package/dist/zonos-elements/p-039803aa.system.js +1 -0
  145. package/dist/zonos-elements/{p-0c91720b.entry.js → p-04acf5ef.entry.js} +1 -1
  146. package/dist/zonos-elements/p-066c5893.system.js +1 -1
  147. package/dist/zonos-elements/{p-14c3ef38.entry.js → p-0ed00121.entry.js} +1 -1
  148. package/dist/zonos-elements/{p-143dc0d9.system.entry.js → p-121c551d.system.entry.js} +1 -1
  149. package/dist/zonos-elements/{p-f6eaef7b.system.entry.js → p-166ec0c2.system.entry.js} +1 -1
  150. package/dist/zonos-elements/{p-1e0dd491.entry.js → p-1691b167.entry.js} +1 -1
  151. package/dist/zonos-elements/{p-07966463.entry.js → p-25de098d.entry.js} +1 -1
  152. package/dist/zonos-elements/{p-c2e58ee1.system.entry.js → p-2eb62b45.system.entry.js} +1 -1
  153. package/dist/zonos-elements/{p-3a1e685f.entry.js → p-32f43296.entry.js} +1 -1
  154. package/dist/zonos-elements/{p-14d27ce1.system.entry.js → p-35e878eb.system.entry.js} +1 -1
  155. package/dist/zonos-elements/p-373e579c.entry.js +1 -0
  156. package/dist/zonos-elements/{p-354603b3.system.entry.js → p-3a406969.system.entry.js} +1 -1
  157. package/dist/zonos-elements/p-3d4fc5aa.js +1 -0
  158. package/dist/zonos-elements/{p-c060d475.js → p-4679840f.js} +1 -1
  159. package/dist/zonos-elements/{p-78ba2928.system.js → p-4c4ccf82.system.js} +1 -1
  160. package/dist/zonos-elements/{p-4fb77a38.system.entry.js → p-4da6d5bb.system.entry.js} +1 -1
  161. package/dist/zonos-elements/{p-328b7f6f.system.entry.js → p-50460bf4.system.entry.js} +1 -1
  162. package/dist/zonos-elements/{p-a3cc0f84.entry.js → p-55cbb4cd.entry.js} +1 -1
  163. package/dist/zonos-elements/{p-745cd869.system.entry.js → p-56318a1f.system.entry.js} +1 -1
  164. package/dist/zonos-elements/{p-f7c36fcc.entry.js → p-58a25a6a.entry.js} +1 -1
  165. package/dist/zonos-elements/{p-389599d3.system.entry.js → p-5d73cde0.system.entry.js} +1 -1
  166. package/dist/zonos-elements/{p-857cfe35.entry.js → p-6d2ba24a.entry.js} +1 -1
  167. package/dist/zonos-elements/p-6dc7222d.js +1 -0
  168. package/dist/zonos-elements/{p-ac0a7b8f.entry.js → p-701d0fef.entry.js} +1 -1
  169. package/dist/zonos-elements/{p-49f6a985.system.js → p-75490d7c.system.js} +1 -1
  170. package/dist/zonos-elements/{p-165d469e.system.entry.js → p-7736198d.system.entry.js} +1 -1
  171. package/dist/zonos-elements/{p-69e2c59e.entry.js → p-780ab968.entry.js} +1 -1
  172. package/dist/zonos-elements/{p-7f4f45b3.entry.js → p-7da1d7da.entry.js} +1 -1
  173. package/dist/zonos-elements/{p-1119dddf.system.entry.js → p-824882ce.system.entry.js} +1 -1
  174. package/dist/zonos-elements/p-86fe18ea.system.entry.js +1 -0
  175. package/dist/zonos-elements/{p-91797d4e.system.js → p-95dee6f4.system.js} +1 -1
  176. package/dist/zonos-elements/{p-279d1c5f.entry.js → p-96e2cde7.entry.js} +1 -1
  177. package/dist/zonos-elements/p-9a9902ca.entry.js +1 -0
  178. package/dist/zonos-elements/p-9cdc6b5f.js +1 -0
  179. package/dist/zonos-elements/{p-61e5cf29.system.entry.js → p-af946fb3.system.entry.js} +1 -1
  180. package/dist/zonos-elements/{p-b4725505.system.js → p-c476a347.system.js} +1 -1
  181. package/dist/zonos-elements/p-c97cb066.system.entry.js +1 -0
  182. package/dist/zonos-elements/p-cbc7edb4.entry.js +1 -0
  183. package/dist/zonos-elements/{p-17e87be1.entry.js → p-d427adf2.entry.js} +1 -1
  184. package/dist/zonos-elements/{p-5c176b23.system.entry.js → p-d93d74c1.system.entry.js} +1 -1
  185. package/dist/zonos-elements/{p-9e6b489d.system.entry.js → p-d9ba11cf.system.entry.js} +1 -1
  186. package/dist/zonos-elements/{p-dd9e8589.entry.js → p-e043e830.entry.js} +1 -1
  187. package/dist/zonos-elements/{p-7c45ce37.system.entry.js → p-e28d648c.system.entry.js} +1 -1
  188. package/dist/zonos-elements/{p-95e0fc06.js → p-e71fbec9.js} +1 -1
  189. package/dist/zonos-elements/{p-799d8a17.system.entry.js → p-e76069cc.system.entry.js} +1 -1
  190. package/dist/zonos-elements/{p-5f4ba44c.entry.js → p-fc0a051b.entry.js} +1 -1
  191. package/dist/zonos-elements/zonos-elements.esm.js +1 -1
  192. package/package.json +1 -1
  193. package/dist/esm-es5/cart-e261efc1.js +0 -1
  194. package/dist/zonos-elements/p-0c0aa552.js +0 -1
  195. package/dist/zonos-elements/p-3b23e462.entry.js +0 -1
  196. package/dist/zonos-elements/p-5496951a.system.js +0 -1
  197. package/dist/zonos-elements/p-5d9a000a.system.entry.js +0 -1
  198. package/dist/zonos-elements/p-79b24786.system.entry.js +0 -1
  199. package/dist/zonos-elements/p-7b87b82f.js +0 -1
  200. package/dist/zonos-elements/p-9f4e02a1.entry.js +0 -1
  201. package/dist/zonos-elements/p-da767f8b.js +0 -1
  202. package/dist/zonos-elements/p-f11a3d9e.entry.js +0 -1
@@ -1,6 +1,6 @@
1
- import { c as createStore, z as zonosStore } from './zonosStore-00bce01b.js';
2
- import { i as isDarkColor } from './isDarkColor-2344e7a5.js';
3
- import { g as getBorderRadius } from './getBorderRadius-19787feb.js';
1
+ import { c as createStore, z as zonosStore } from './zonosStore-807f931f.js';
2
+ import { i as isDarkColor } from './isDarkColor-8eeda28e.js';
3
+ import { g as getBorderRadius } from './getBorderRadius-0d133844.js';
4
4
 
5
5
  const stringsArabic = {
6
6
  'Above de minimis threshold for': {
@@ -87,6 +87,9 @@ const stringsArabic = {
87
87
  "Payment processing. We'll update you when payment is received.": {
88
88
  value: 'جارٍ معالجة الدفع. سنحدثك عند استلام الدفعة.',
89
89
  },
90
+ 'Please ensure your text uses the Latin alphabet only (A-Z, a-z).': {
91
+ value: 'يرجى التأكد من أن نصك يستخدم الأبجدية اللاتينية فقط (A-Z, a-z).',
92
+ },
90
93
  'Powered by': {
91
94
  value: 'مشغل بواسطة',
92
95
  },
@@ -255,6 +258,9 @@ const stringsBase = {
255
258
  "Payment processing. We'll update you when payment is received.": {
256
259
  value: "Payment processing. We'll update you when payment is received.",
257
260
  },
261
+ 'Please ensure your text uses the Latin alphabet only (A-Z, a-z).': {
262
+ value: 'Please ensure your text uses the Latin alphabet only (A-Z, a-z).',
263
+ },
258
264
  'Powered by': {
259
265
  value: 'Powered by',
260
266
  },
@@ -423,6 +429,9 @@ const stringsChinese = {
423
429
  "Payment processing. We'll update you when payment is received.": {
424
430
  value: '付款处理中。付款收到后,我们将通知您。',
425
431
  },
432
+ 'Please ensure your text uses the Latin alphabet only (A-Z, a-z).': {
433
+ value: '请确保您的文本仅使用拉丁字母表(A-Z, a-z)。',
434
+ },
426
435
  'Powered by': {
427
436
  value: '由...提供支持',
428
437
  },
@@ -591,6 +600,9 @@ const stringsDanish = {
591
600
  "Payment processing. We'll update you when payment is received.": {
592
601
  value: 'Behandler betaling. Vi opdaterer dig, når betalingen er modtaget.',
593
602
  },
603
+ 'Please ensure your text uses the Latin alphabet only (A-Z, a-z).': {
604
+ value: 'Sørg venligst for, at din tekst kun bruger det latinske alfabet (A-Z, a-z).',
605
+ },
594
606
  'Powered by': {
595
607
  value: 'Drevet af',
596
608
  },
@@ -759,6 +771,9 @@ const stringsDutch = {
759
771
  "Payment processing. We'll update you when payment is received.": {
760
772
  value: 'Betaling verwerken. We brengen je op de hoogte wanneer de betaling is ontvangen.',
761
773
  },
774
+ 'Please ensure your text uses the Latin alphabet only (A-Z, a-z).': {
775
+ value: 'Zorg ervoor dat uw tekst alleen het Latijnse alfabet gebruikt (A-Z, a-z).',
776
+ },
762
777
  'Powered by': {
763
778
  value: 'Aangedreven door',
764
779
  },
@@ -927,6 +942,9 @@ const stringsFrench = {
927
942
  "Payment processing. We'll update you when payment is received.": {
928
943
  value: 'Traitement du paiement en cours. Nous vous tiendrons informé dès réception du paiement.',
929
944
  },
945
+ 'Please ensure your text uses the Latin alphabet only (A-Z, a-z).': {
946
+ value: "Veuillez vous assurer que votre texte utilise uniquement l'alphabet latin (A-Z, a-z).",
947
+ },
930
948
  'Powered by': {
931
949
  value: 'Propulsé par',
932
950
  },
@@ -1095,6 +1113,9 @@ const stringsGerman = {
1095
1113
  "Payment processing. We'll update you when payment is received.": {
1096
1114
  value: 'Zahlung wird verarbeitet. Wir informieren Sie, sobald die Zahlung eingegangen ist.',
1097
1115
  },
1116
+ 'Please ensure your text uses the Latin alphabet only (A-Z, a-z).': {
1117
+ value: 'Bitte stellen Sie sicher, dass Ihr Text nur das lateinische Alphabet verwendet (A-Z, a-z).',
1118
+ },
1098
1119
  'Powered by': {
1099
1120
  value: 'Angetrieben von',
1100
1121
  },
@@ -1263,6 +1284,9 @@ const stringsHebrew = {
1263
1284
  "Payment processing. We'll update you when payment is received.": {
1264
1285
  value: 'התשלום מעובד. נעדכן אותך כשהתשלום יתקבל.',
1265
1286
  },
1287
+ 'Please ensure your text uses the Latin alphabet only (A-Z, a-z).': {
1288
+ value: 'אנא ודא שהטקסט שלך משתמש באלפבית הלטיני בלבד (A-Z, a-z).',
1289
+ },
1266
1290
  'Powered by': {
1267
1291
  value: 'מופעל על ידי',
1268
1292
  },
@@ -1431,6 +1455,9 @@ const stringsIndonesian = {
1431
1455
  "Payment processing. We'll update you when payment is received.": {
1432
1456
  value: 'Pemrosesan pembayaran. Kami akan memberi Anda pembaruan ketika pembayaran diterima.',
1433
1457
  },
1458
+ 'Please ensure your text uses the Latin alphabet only (A-Z, a-z).': {
1459
+ value: 'Harap pastikan teks Anda hanya menggunakan alfabet Latin (A-Z, a-z).',
1460
+ },
1434
1461
  'Powered by': {
1435
1462
  value: 'Dipersembahkan oleh',
1436
1463
  },
@@ -1599,6 +1626,9 @@ const stringsItalian = {
1599
1626
  "Payment processing. We'll update you when payment is received.": {
1600
1627
  value: 'Elaborazione pagamento in corso. Ti aggiorneremo quando il pagamento sarà ricevuto.',
1601
1628
  },
1629
+ 'Please ensure your text uses the Latin alphabet only (A-Z, a-z).': {
1630
+ value: "Si prega di assicurarsi che il testo utilizzi solo l'alfabeto latino (A-Z, a-z).",
1631
+ },
1602
1632
  'Powered by': {
1603
1633
  value: 'Offerto da',
1604
1634
  },
@@ -1767,6 +1797,9 @@ const stringsJapanese = {
1767
1797
  "Payment processing. We'll update you when payment is received.": {
1768
1798
  value: '支払処理中です。入金が確認された際に更新いたします。',
1769
1799
  },
1800
+ 'Please ensure your text uses the Latin alphabet only (A-Z, a-z).': {
1801
+ value: 'テキストがラテンアルファベットのみを使用していることを確認してください(A-Z、a-z)。',
1802
+ },
1770
1803
  'Powered by': {
1771
1804
  value: 'Powered by',
1772
1805
  },
@@ -1935,6 +1968,9 @@ const stringsKorean = {
1935
1968
  "Payment processing. We'll update you when payment is received.": {
1936
1969
  value: '결제 처리 중. 결제가 접수되면 알려드리겠습니다.',
1937
1970
  },
1971
+ 'Please ensure your text uses the Latin alphabet only (A-Z, a-z).': {
1972
+ value: '텍스트가 라틴 알파벳만 사용하는지 확인해 주세요 (A-Z, a-z).',
1973
+ },
1938
1974
  'Powered by': {
1939
1975
  value: '제공됨',
1940
1976
  },
@@ -2103,6 +2139,9 @@ const stringsNorwegian = {
2103
2139
  "Payment processing. We'll update you when payment is received.": {
2104
2140
  value: 'Bearbeider betalingen. Vi gir deg beskjed når betalingen er mottatt.',
2105
2141
  },
2142
+ 'Please ensure your text uses the Latin alphabet only (A-Z, a-z).': {
2143
+ value: 'Vennligst sørg for at teksten din kun bruker det latinske alfabetet (A-Z, a-z).',
2144
+ },
2106
2145
  'Powered by': {
2107
2146
  value: 'Drevet av',
2108
2147
  },
@@ -2271,6 +2310,9 @@ const stringsPolish = {
2271
2310
  "Payment processing. We'll update you when payment is received.": {
2272
2311
  value: 'Trwa przetwarzanie płatności. Poinformujemy gdy płatność zostanie otrzymana.',
2273
2312
  },
2313
+ 'Please ensure your text uses the Latin alphabet only (A-Z, a-z).': {
2314
+ value: 'Proszę upewnić się, że tekst używa tylko alfabetu łacińskiego (A-Z, a-z).',
2315
+ },
2274
2316
  'Powered by': {
2275
2317
  value: 'Dostarczone przez',
2276
2318
  },
@@ -2439,6 +2481,9 @@ const stringsPortuguese = {
2439
2481
  "Payment processing. We'll update you when payment is received.": {
2440
2482
  value: 'Processando pagamento. Informaremos quando o pagamento for recebido.',
2441
2483
  },
2484
+ 'Please ensure your text uses the Latin alphabet only (A-Z, a-z).': {
2485
+ value: 'Por favor, certifique-se de que seu texto utilize apenas o alfabeto latino (A-Z, a-z).',
2486
+ },
2442
2487
  'Powered by': {
2443
2488
  value: 'Desenvolvido por',
2444
2489
  },
@@ -2607,6 +2652,9 @@ const stringsRussian = {
2607
2652
  "Payment processing. We'll update you when payment is received.": {
2608
2653
  value: 'Обрабатываем платеж. Сообщим вам, когда платеж будет получен.',
2609
2654
  },
2655
+ 'Please ensure your text uses the Latin alphabet only (A-Z, a-z).': {
2656
+ value: 'Пожалуйста, убедитесь, что ваш текст использует только латинский алфавит (A-Z, a-z).',
2657
+ },
2610
2658
  'Powered by': {
2611
2659
  value: 'Работает на',
2612
2660
  },
@@ -2775,6 +2823,9 @@ const stringsSpanish = {
2775
2823
  "Payment processing. We'll update you when payment is received.": {
2776
2824
  value: 'Procesando pago. Le informaremos cuando se reciba el pago.',
2777
2825
  },
2826
+ 'Please ensure your text uses the Latin alphabet only (A-Z, a-z).': {
2827
+ value: 'Por favor, asegúrese de que su texto use solo el alfabeto latino (A-Z, a-z).',
2828
+ },
2778
2829
  'Powered by': {
2779
2830
  value: 'Desarrollado por',
2780
2831
  },
@@ -2943,6 +2994,9 @@ const stringsSwedish = {
2943
2994
  "Payment processing. We'll update you when payment is received.": {
2944
2995
  value: 'Betalningsbehandling. Vi kommer att uppdatera dig när betalningen har mottagits.',
2945
2996
  },
2997
+ 'Please ensure your text uses the Latin alphabet only (A-Z, a-z).': {
2998
+ value: 'Vänligen se till att din text endast använder det latinska alfabetet (A-Z, a-z).',
2999
+ },
2946
3000
  'Powered by': {
2947
3001
  value: 'Drivs av',
2948
3002
  },
@@ -3111,6 +3165,9 @@ const stringsTurkish = {
3111
3165
  "Payment processing. We'll update you when payment is received.": {
3112
3166
  value: 'Ödeme işleniyor. Ödeme alındığında sizi bilgilendireceğiz.',
3113
3167
  },
3168
+ 'Please ensure your text uses the Latin alphabet only (A-Z, a-z).': {
3169
+ value: 'Lütfen metninizin sadece Latin alfabesini kullandığından emin olun (A-Z, a-z).',
3170
+ },
3114
3171
  'Powered by': {
3115
3172
  value: 'Tarafından desteklenmektedir',
3116
3173
  },
@@ -3279,6 +3336,9 @@ const stringsVietnamese = {
3279
3336
  "Payment processing. We'll update you when payment is received.": {
3280
3337
  value: 'Đang xử lý thanh toán. Chúng tôi sẽ thông báo khi nhận được thanh toán.',
3281
3338
  },
3339
+ 'Please ensure your text uses the Latin alphabet only (A-Z, a-z).': {
3340
+ value: 'Vui lòng đảm bảo rằng văn bản của bạn chỉ sử dụng bảng chữ cái Latinh (A-Z, a-z).',
3341
+ },
3282
3342
  'Powered by': {
3283
3343
  value: 'Nền tảng cung cấp bởi',
3284
3344
  },
@@ -4155,23 +4215,40 @@ const jsonParse = (_data) => {
4155
4215
  };
4156
4216
 
4157
4217
  const addressRuleStyle = ({ theme, }) => {
4218
+ const defaultStyle = {
4219
+ '.Action': {
4220
+ color: 'var(--colorText)',
4221
+ },
4222
+ '.Input': {
4223
+ boxShadow: 'none',
4224
+ // need to reset everything and the paddingTop to default, otherwise the paddingTop will not be updated.
4225
+ padding: '0',
4226
+ paddingBottom: '8px',
4227
+ paddingLeft: '16px',
4228
+ paddingRight: '8px',
4229
+ // any value here will be add up to the default paddingTop (20px).
4230
+ paddingTop: '6px',
4231
+ },
4232
+ '.Input:focus': {
4233
+ boxShadow: 'none',
4234
+ },
4235
+ '.PickerItem--highlight': {
4236
+ boxShadow: '0 0 0 2px var(--colorBackground)',
4237
+ },
4238
+ '.PickerItem--highlight:hover': {
4239
+ backgroundColor: 'var(--colorBackground)',
4240
+ boxShadow: 'none',
4241
+ },
4242
+ '.PickerItem--new': {
4243
+ color: 'var(--colorText)',
4244
+ },
4245
+ };
4158
4246
  switch (theme) {
4247
+ case 'DARK': {
4248
+ return Object.assign(Object.assign({}, defaultStyle), { '.Action': Object.assign(Object.assign({}, defaultStyle['.Action']), { color: 'white' }), '.PickerItem--new': Object.assign(Object.assign({}, defaultStyle['.PickerItem--new']), { color: 'white' }) });
4249
+ }
4159
4250
  default:
4160
- return {
4161
- '.Input': {
4162
- boxShadow: 'none',
4163
- // need to reset everything and the paddingTop to default, otherwise the paddingTop will not be updated.
4164
- padding: '0',
4165
- paddingBottom: '8px',
4166
- paddingLeft: '16px',
4167
- paddingRight: '8px',
4168
- // any value here will be add up to the default paddingTop (20px).
4169
- paddingTop: '6px',
4170
- },
4171
- '.Input:focus': {
4172
- boxShadow: 'none',
4173
- },
4174
- };
4251
+ return defaultStyle;
4175
4252
  }
4176
4253
  };
4177
4254
 
@@ -4223,7 +4300,7 @@ const getStripeOptions = ({ clientSecret, overrideBorderRaidus, overridePrimaryC
4223
4300
  return {
4224
4301
  appearance: {
4225
4302
  labels: 'floating',
4226
- rules: Object.assign({}, addressRuleStyle({ theme: 'LIGHT' })),
4303
+ rules: Object.assign({}, addressRuleStyle({ theme: overrideTheme || 'LIGHT' })),
4227
4304
  // get contrast theme color base on primary color
4228
4305
  theme: overrideTheme ? theme : themeBasedColor,
4229
4306
  variables: Object.assign(Object.assign({}, defaultVariable({
@@ -4360,9 +4437,9 @@ const stripeStorePrefetchLandedCost = async () => {
4360
4437
  return null;
4361
4438
  }
4362
4439
  return Object.assign(Object.assign({}, checkoutSession), { landedCost: foundLandedCost });
4363
- }).filter(Boolean)) || null;
4440
+ }).filter(Boolean)) || [];
4364
4441
  cartStore.shippingData =
4365
- (shipmentRatingCalculateWorkflow === null || shipmentRatingCalculateWorkflow === void 0 ? void 0 : shipmentRatingCalculateWorkflow.filter(Boolean)) || null;
4442
+ (shipmentRatingCalculateWorkflow === null || shipmentRatingCalculateWorkflow === void 0 ? void 0 : shipmentRatingCalculateWorkflow.filter(Boolean)) || [];
4366
4443
  // apply new subtotal and total, this is mainly to show items in the presentment currency
4367
4444
  const firstLandedCostData = (_f = cartStore.landedCostData) === null || _f === void 0 ? void 0 : _f.find(Boolean);
4368
4445
  const subtotals = !!firstLandedCostData
@@ -1,4 +1,4 @@
1
- import { z as zonosStore } from './zonosStore-00bce01b.js';
1
+ import { z as zonosStore } from './zonosStore-807f931f.js';
2
2
 
3
3
  /**
4
4
  * Get the border radius for the elements based on the style
@@ -1,4 +1,4 @@
1
- import { a as commonjsGlobal } from './zonosStore-00bce01b.js';
1
+ import { a as commonjsGlobal } from './zonosStore-807f931f.js';
2
2
 
3
3
  var tinycolor$1 = {exports: {}};
4
4
 
@@ -5,7 +5,7 @@ import { g as globalScripts } from './app-globals-0f993ce5.js';
5
5
  const defineCustomElements = async (win, options) => {
6
6
  if (typeof window === 'undefined') return undefined;
7
7
  await globalScripts();
8
- return bootstrapLazy([["zonos-checkout",[[2,"zonos-checkout",{"appearanceSettingsOverride":[16],"preview":[4],"mobile":[4],"defaultAddress":[16],"forceDialogOpen":[4,"force-dialog-open"],"open":[32],"stripe":[32],"submitLoading":[32],"paymentError":[32],"collapseReviewMobile":[32],"isAttachError":[32],"isMobile":[32],"zonosReviewRef":[32],"storybookPaymentStatusOverride":[32],"domesticRedirectedBtnSelector":[32],"closeDialogHandler":[64],"init":[64],"setToFinishStep":[64]},[[16,"zonos--init-cart-info","initCartInfoHandler"],[9,"resize","handleWindowResize"]],{"appearanceSettingsOverride":["appearanceSettingsOverrideChanged"],"mobile":["handleMobileChange"]}]]],["zonos-hello",[[1,"zonos-hello",{"mobileLocationOverride":[1,"mobile-location-override"],"animateFromLeftOverride":[4,"animate-from-left-override"],"appearanceSettingsOverride":[16],"showPeekMessage":[32],"zonosStoreHelloSettings":[32],"showDialog":[32],"peekMessage":[32],"initialUrl":[32],"allRestrictedItems":[32],"allFoundProducts":[32],"productsOnPage":[32],"displayCurrency":[64],"convertAndFormat":[64],"convert":[64],"format":[64],"openHelloDialog":[64]},[[9,"resize","handleResize"]]]]],["zonos-controller",[[1,"zonos-controller",{"config":[16],"zonosApiKey":[1,"zonos-api-key"],"initCheckoutElement":[64],"setupGoogleFont":[64],"showNotification":[64],"overrideConfig":[64],"overrideCountry":[64],"getAppearanceSetting":[64],"updateOrganizationName":[64]}]]],["zonos-component",[[1,"zonos-component",{"first":[1],"middle":[1],"last":[1]}]]],["zonos-link",[[1,"zonos-link",{"href":[1],"rel":[1],"target":[1],"linkTitle":[1,"link-title"]}]]],["zonos-logo",[[1,"zonos-logo",{"theme":[1],"width":[1]}]]],["zonos-text",[[1,"zonos-text",{"textColor":[1,"text-color"],"size":[1],"type":[1],"weight":[2],"content":[1],"ready":[32]}]]],["zonos-hello-dialog",[[1,"zonos-hello-dialog",{"isOpen":[4,"is-open"],"setIsOpen":[16],"mobileLocationOverride":[1,"mobile-location-override"],"animateFromLeftOverride":[4,"animate-from-left-override"],"appearanceSettings":[16],"restrictedItems":[16],"welcomeMessage":[32],"showCountrySelect":[32],"showLanguageSelect":[32]},[[4,"click","globalClickHandler"]],{"isOpen":["isOpenHandler"]}]]],["zonos-notification",[[1,"zonos-notification",{"notificationArray":[32],"showNotification":[64]}]]],["zonos-payment",[[2,"zonos-payment",{"titleText":[1,"title-text"],"stripe":[32],"stripeElements":[32]},null,{"stripeElements":["watchInitStripe"],"stripe":["watchInitStripe"]}]]],["zonos-shipping-rich-radio",[[1,"zonos-shipping-rich-radio",{"items":[16],"borderColor":[1,"border-color"],"borderStyle":[1,"border-style"],"theme":[1],"selectedItem":[32]}]]],["zonos-badge_2",[[1,"zonos-badge",{"bold":[4],"badgeColor":[1,"badge-color"],"icon":[16],"iconRight":[4,"icon-right"],"size":[1],"rounded":[4]}],[1,"zonos-tooltip",{"label":[1],"subtitle":[1],"showTooltip":[32]}]]],["zonos-country-flag",[[1,"zonos-country-flag",{"countryCode":[1,"country-code"],"size":[2]}]]],["zonos-banner",[[1,"zonos-banner",{"bannerTitle":[1,"banner-title"],"intent":[1],"hasContent":[32]}]]],["zonos-button_3",[[1,"zonos-button",{"buttonColor":[1,"button-color"],"backgroundColor":[1,"background-color"],"borderStyle":[1,"border-style"],"isDisabled":[4,"is-disabled"],"icon":[16],"iconRight":[4,"icon-right"],"size":[1],"variant":[1],"noBackground":[4,"no-background"],"noPaddingLeft":[4,"no-padding-left"],"noPaddingRight":[4,"no-padding-right"],"loading":[4],"theme":[1],"hasIcon":[32],"hasContent":[32]},[[2,"click","clickHandler"]],{"icon":["iconChangeHandler"]}],[1,"zonos-icon",{"autoHeight":[4,"auto-height"],"iconColor":[1,"icon-color"],"content":[1],"size":[2]}],[1,"zonos-spinner",{"size":[2],"spinnerColor":[1,"spinner-color"]}]]],["zonos-select-dialog-header_2",[[1,"zonos-select-dialog-header",{"handleOnClose":[16],"label":[1]}],[1,"zonos-v-stack",{"spacing":[2]}]]],["zonos-card_2",[[1,"zonos-language-select",{"handleOnClose":[16]}],[1,"zonos-card",{"actions":[16],"footerActions":[16],"footerContent":[16],"footerHeight":[2,"footer-height"],"label":[16],"spacing":[1]}]]],["zonos-country-select_3",[[1,"zonos-country-select",{"handleOnClose":[16],"inputValue":[32]}],[1,"zonos-hello-dialog-footer",{"appearanceSettings":[16],"setShowCountrySelect":[16],"setShowLanguageSelect":[16]}],[1,"zonos-custom-message",{"icon":[1],"message":[1]}]]],["zonos-address_4",[[2,"zonos-address",{"type":[1],"titleText":[1,"title-text"],"defaultAddress":[16],"stripe":[32],"isDirtyAddress":[32]},null,{"stripe":["watchInitStripe"]}],[1,"zonos-checkbox",{"backgroundColor":[1,"background-color"],"label":[1],"isChecked":[4,"is-checked"],"isDisabled":[4,"is-disabled"],"size":[2],"fontSize":[1,"font-size"],"borderStyle":[1,"border-style"]}],[2,"zonos-link-authentication",{"titleText":[1,"title-text"],"stripe":[32]},null,{"stripe":["watchInitStripe"]}],[1,"zonos-collapse",{"collapsed":[4],"collapseSize":[2,"collapse-size"],"height":[32],"iframe":[32]}]]],["zonos-cart-items_9",[[1,"zonos-checkout-footer",{"showDialog":[32]},[[4,"click","handleGlobalClick"]]],[2,"zonos-customer-info",{"continueLoading":[4,"continue-loading"],"submitBtnType":[1,"submit-btn-type"],"submitBtnColor":[1,"submit-btn-color"],"defaultAddress":[16],"disabled":[32]},null,{"disabled":["watchFormComplete"]}],[2,"zonos-checkout-payment",{"paymentError":[4,"payment-error"],"submitBtnType":[1,"submit-btn-type"],"continueLoading":[4,"continue-loading"],"submitBtnColor":[1,"submit-btn-color"],"disabled":[32]},null,{"disabled":["watchFormComplete"]}],[2,"zonos-shipping",{"continueLoading":[4,"continue-loading"],"submitBtnColor":[1,"submit-btn-color"],"submitBtnType":[1,"submit-btn-type"],"selectedShippingMethod":[32],"disabled":[32]},null,{"disabled":["watchFormComplete"]}],[1,"zonos-cart-subtotal"],[1,"zonos-checkout-finish",{"borderRadius":[1,"border-radius"],"storybookForceStatus":[1,"storybook-force-status"],"overrideNotification":[16],"isLoading":[32],"notificationType":[32],"notificationTitle":[32],"notificationMessages":[32],"order":[32]}],[1,"zonos-dialog",{"open":[4],"headerText":[1,"header-text"],"width":[1],"height":[1],"noHeader":[4,"no-header"],"noBodyPadding":[4,"no-body-padding"],"noBorder":[4,"no-border"],"footerRightAction":[16],"borderStyle":[1,"border-style"],"noCloseButton":[4,"no-close-button"],"noClickOutside":[4,"no-click-outside"],"mobile":[4],"isLoading":[4,"is-loading"],"isMobile":[32]},[[9,"resize","handleWindowResize"]]],[1,"zonos-review",{"mobile":[4],"collapsed":[4],"isMobile":[32]},[[9,"resize","handleWindowResize"]]],[1,"zonos-cart-items",{"errorImages":[32]}]]]], options);
8
+ return bootstrapLazy([["zonos-checkout",[[2,"zonos-checkout",{"appearanceSettingsOverride":[16],"preview":[4],"mobile":[4],"defaultAddress":[16],"forceDialogOpen":[4,"force-dialog-open"],"open":[32],"stripe":[32],"submitLoading":[32],"paymentError":[32],"collapseReviewMobile":[32],"isAttachError":[32],"isMobile":[32],"zonosReviewRef":[32],"storybookPaymentStatusOverride":[32],"domesticRedirectedBtnSelector":[32],"closeDialogHandler":[64],"init":[64],"setToFinishStep":[64]},[[16,"zonos--init-cart-info","initCartInfoHandler"],[9,"resize","handleWindowResize"]],{"appearanceSettingsOverride":["appearanceSettingsOverrideChanged"],"mobile":["handleMobileChange"]}]]],["zonos-hello",[[1,"zonos-hello",{"mobileLocationOverride":[1,"mobile-location-override"],"animateFromLeftOverride":[4,"animate-from-left-override"],"appearanceSettingsOverride":[16],"showPeekMessage":[32],"zonosStoreHelloSettings":[32],"showDialog":[32],"peekMessage":[32],"initialUrl":[32],"allRestrictedItems":[32],"allFoundProducts":[32],"productsOnPage":[32],"displayCurrency":[64],"convertAndFormat":[64],"convert":[64],"format":[64],"openHelloDialog":[64]},[[9,"resize","handleResize"]]]]],["zonos-controller",[[1,"zonos-controller",{"config":[16],"zonosApiKey":[1,"zonos-api-key"],"initCheckoutElement":[64],"setupGoogleFont":[64],"showNotification":[64],"overrideConfig":[64],"overrideCountry":[64],"getAppearanceSetting":[64],"updateOrganizationName":[64]}]]],["zonos-component",[[1,"zonos-component",{"first":[1],"middle":[1],"last":[1]}]]],["zonos-link",[[1,"zonos-link",{"href":[1],"rel":[1],"target":[1],"linkTitle":[1,"link-title"]}]]],["zonos-logo",[[1,"zonos-logo",{"theme":[1],"width":[1]}]]],["zonos-text",[[1,"zonos-text",{"textColor":[1,"text-color"],"size":[1],"type":[1],"weight":[2],"content":[1],"ready":[32]}]]],["zonos-hello-dialog",[[1,"zonos-hello-dialog",{"isOpen":[4,"is-open"],"setIsOpen":[16],"mobileLocationOverride":[1,"mobile-location-override"],"animateFromLeftOverride":[4,"animate-from-left-override"],"appearanceSettings":[16],"restrictedItems":[16],"welcomeMessage":[32],"showCountrySelect":[32],"showLanguageSelect":[32]},[[4,"click","globalClickHandler"]],{"isOpen":["isOpenHandler"]}]]],["zonos-notification",[[1,"zonos-notification",{"notificationArray":[32],"showNotification":[64]}]]],["zonos-payment",[[2,"zonos-payment",{"titleText":[1,"title-text"],"stripe":[32],"stripeElements":[32]},null,{"stripeElements":["watchInitStripe"],"stripe":["watchInitStripe"]}]]],["zonos-shipping-rich-radio",[[1,"zonos-shipping-rich-radio",{"items":[16],"borderColor":[1,"border-color"],"borderStyle":[1,"border-style"],"theme":[1],"selectedItem":[32]}]]],["zonos-badge_2",[[1,"zonos-badge",{"bold":[4],"badgeColor":[1,"badge-color"],"icon":[16],"iconRight":[4,"icon-right"],"size":[1],"rounded":[4]}],[1,"zonos-tooltip",{"label":[1],"subtitle":[1],"showTooltip":[32]}]]],["zonos-country-flag",[[1,"zonos-country-flag",{"countryCode":[1,"country-code"],"size":[2]}]]],["zonos-banner",[[1,"zonos-banner",{"bannerTitle":[1,"banner-title"],"intent":[1],"hasContent":[32]}]]],["zonos-button_3",[[1,"zonos-button",{"buttonColor":[1,"button-color"],"backgroundColor":[1,"background-color"],"borderStyle":[1,"border-style"],"isDisabled":[4,"is-disabled"],"icon":[16],"iconRight":[4,"icon-right"],"size":[1],"variant":[1],"noBackground":[4,"no-background"],"noPaddingLeft":[4,"no-padding-left"],"noPaddingRight":[4,"no-padding-right"],"loading":[4],"theme":[1],"hasIcon":[32],"hasContent":[32]},[[2,"click","clickHandler"]],{"icon":["iconChangeHandler"]}],[1,"zonos-icon",{"autoHeight":[4,"auto-height"],"iconColor":[1,"icon-color"],"content":[1],"size":[2]}],[1,"zonos-spinner",{"size":[2],"spinnerColor":[1,"spinner-color"]}]]],["zonos-select-dialog-header_2",[[1,"zonos-select-dialog-header",{"handleOnClose":[16],"label":[1]}],[1,"zonos-v-stack",{"spacing":[2]}]]],["zonos-card_2",[[1,"zonos-language-select",{"handleOnClose":[16]}],[1,"zonos-card",{"actions":[16],"footerActions":[16],"footerContent":[16],"footerHeight":[2,"footer-height"],"label":[16],"spacing":[1]}]]],["zonos-country-select_3",[[1,"zonos-country-select",{"handleOnClose":[16],"inputValue":[32]}],[1,"zonos-hello-dialog-footer",{"appearanceSettings":[16],"setShowCountrySelect":[16],"setShowLanguageSelect":[16]}],[1,"zonos-custom-message",{"icon":[1],"message":[1]}]]],["zonos-address_4",[[2,"zonos-address",{"type":[1],"titleText":[1,"title-text"],"defaultAddress":[16],"stripe":[32],"hasInvalidCharacters":[32],"isDirtyAddress":[32]},null,{"stripe":["watchInitStripe"]}],[1,"zonos-checkbox",{"backgroundColor":[1,"background-color"],"label":[1],"isChecked":[4,"is-checked"],"isDisabled":[4,"is-disabled"],"size":[2],"fontSize":[1,"font-size"],"borderStyle":[1,"border-style"]}],[2,"zonos-link-authentication",{"titleText":[1,"title-text"],"stripe":[32]},null,{"stripe":["watchInitStripe"]}],[1,"zonos-collapse",{"collapsed":[4],"collapseSize":[2,"collapse-size"],"height":[32],"iframe":[32]}]]],["zonos-cart-items_9",[[2,"zonos-customer-info",{"continueLoading":[4,"continue-loading"],"submitBtnType":[1,"submit-btn-type"],"submitBtnColor":[1,"submit-btn-color"],"defaultAddress":[16],"disabled":[32],"hasInvalidShippingCharacters":[32],"hasInvalidBillingCharacters":[32]},null,{"disabled":["watchFormComplete"]}],[1,"zonos-checkout-footer",{"showDialog":[32]},[[4,"click","handleGlobalClick"]]],[2,"zonos-checkout-payment",{"paymentError":[4,"payment-error"],"submitBtnType":[1,"submit-btn-type"],"continueLoading":[4,"continue-loading"],"submitBtnColor":[1,"submit-btn-color"],"disabled":[32]},null,{"disabled":["watchFormComplete"]}],[2,"zonos-shipping",{"continueLoading":[4,"continue-loading"],"submitBtnColor":[1,"submit-btn-color"],"submitBtnType":[1,"submit-btn-type"],"selectedShippingMethod":[32],"disabled":[32]},null,{"disabled":["watchFormComplete"]}],[1,"zonos-cart-subtotal"],[1,"zonos-checkout-finish",{"borderRadius":[1,"border-radius"],"storybookForceStatus":[1,"storybook-force-status"],"overrideNotification":[16],"isLoading":[32],"notificationType":[32],"notificationTitle":[32],"notificationMessages":[32],"order":[32]}],[1,"zonos-dialog",{"open":[4],"headerText":[1,"header-text"],"width":[1],"height":[1],"noHeader":[4,"no-header"],"noBodyPadding":[4,"no-body-padding"],"noBorder":[4,"no-border"],"footerRightAction":[16],"borderStyle":[1,"border-style"],"noCloseButton":[4,"no-close-button"],"noClickOutside":[4,"no-click-outside"],"mobile":[4],"isLoading":[4,"is-loading"],"isMobile":[32]},[[9,"resize","handleWindowResize"]]],[1,"zonos-review",{"mobile":[4],"collapsed":[4],"isMobile":[32]},[[9,"resize","handleWindowResize"]]],[1,"zonos-cart-items",{"errorImages":[32]}]]]], options);
9
9
  };
10
10
 
11
11
  export { defineCustomElements };
@@ -1,5 +1,5 @@
1
- import { u as handleFetch, l as localizationStore, a as log } from './cart-e261efc1.js';
2
- import { z as zonosStore } from './zonosStore-00bce01b.js';
1
+ import { u as handleFetch, l as localizationStore, a as log } from './cart-f70b9be6.js';
2
+ import { z as zonosStore } from './zonosStore-807f931f.js';
3
3
 
4
4
  const trackConversionEvent = async (eventName, metadata) => {
5
5
  // If a Zonos domain, we don't want analytics to be tracked
@@ -1,21 +1,37 @@
1
- import { r as registerInstance, h, H as Host, d as getElement, c as createEvent } from './index-b5be4dc3.js';
2
- import { j as stripeStore, n as stripeStorePrefetchLandedCost, d as logError, l as localizationStore } from './cart-e261efc1.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, d as getElement } from './index-b5be4dc3.js';
2
+ import { j as stripeStore, n as stripeStorePrefetchLandedCost, d as logError, l as localizationStore, t as translate } from './cart-f70b9be6.js';
3
+ import { z as zonosStore, d as zonosStoreFontFamily } from './zonosStore-807f931f.js';
3
4
  import { i as isCheckoutMobile } from './isCheckoutMobile-8846dccb.js';
4
- import { d as zonosStoreFontFamily } from './zonosStore-00bce01b.js';
5
5
  import { c as classes } from './classes-0d95c529.js';
6
- import { g as getBorderRadius } from './getBorderRadius-19787feb.js';
7
- import { i as isDarkColor } from './isDarkColor-2344e7a5.js';
6
+ import { g as getBorderRadius } from './getBorderRadius-0d133844.js';
7
+ import { i as isDarkColor } from './isDarkColor-8eeda28e.js';
8
8
 
9
- const zonosAddressCss = ".sc-zonos-address-h{font-family:var(--font-family, Inter), Inter;display:block;white-space:normal}.sc-zonos-address-h *.sc-zonos-address{font-family:var(--font-family, Inter), Inter}.sc-zonos-address-h img.sc-zonos-address{max-width:100%}.sc-zonos-address-h dl.sc-zonos-address,.sc-zonos-address-h dd.sc-zonos-address,.sc-zonos-address-h h1.sc-zonos-address,.sc-zonos-address-h h2.sc-zonos-address,.sc-zonos-address-h h3.sc-zonos-address,.sc-zonos-address-h h4.sc-zonos-address,.sc-zonos-address-h h5.sc-zonos-address,.sc-zonos-address-h h6.sc-zonos-address,.sc-zonos-address-h hr.sc-zonos-address,.sc-zonos-address-h figure.sc-zonos-address,.sc-zonos-address-h p.sc-zonos-address,.sc-zonos-address-h pre.sc-zonos-address{margin:0}.sc-zonos-address-h{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.sc-zonos-address-h .zonos--title.sc-zonos-address{margin-bottom:var(--amino-space-16)}";
9
+ /**
10
+ * Check if the given address object contains non-latin characters
11
+ * @returns an object with the same keys as the input object, and a boolean value indicating if the value contains non-latin characters
12
+ */
13
+ const containsNonLatinChars = (params) => {
14
+ /**
15
+ * This regex matches any character that is not a latin character, punctuation, symbol, number, separator, control, or mark
16
+ * I limited the character found to 1 in the regex, so that we can return early if we find any non-latin character
17
+ **/
18
+ const nonLatinRegex = /[^\p{Script=Latin}\p{P}\p{S}\p{N}\p{Z}\p{C}\p{M}]{1}/u;
19
+ const nonLatinValueList = Object.entries(params).reduce((prev, [key, value]) => nonLatinRegex.test(value) ? Object.assign(Object.assign({}, prev), { [key]: true }) : prev, {});
20
+ return nonLatinValueList;
21
+ };
22
+
23
+ const zonosAddressCss = ".sc-zonos-address-h{font-family:var(--font-family, Inter), Inter;display:block;white-space:normal}.sc-zonos-address-h *.sc-zonos-address{font-family:var(--font-family, Inter), Inter}.sc-zonos-address-h img.sc-zonos-address{max-width:100%}.sc-zonos-address-h dl.sc-zonos-address,.sc-zonos-address-h dd.sc-zonos-address,.sc-zonos-address-h h1.sc-zonos-address,.sc-zonos-address-h h2.sc-zonos-address,.sc-zonos-address-h h3.sc-zonos-address,.sc-zonos-address-h h4.sc-zonos-address,.sc-zonos-address-h h5.sc-zonos-address,.sc-zonos-address-h h6.sc-zonos-address,.sc-zonos-address-h hr.sc-zonos-address,.sc-zonos-address-h figure.sc-zonos-address,.sc-zonos-address-h p.sc-zonos-address,.sc-zonos-address-h pre.sc-zonos-address{margin:0}.sc-zonos-address-h{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.sc-zonos-address-h .zonos--title.sc-zonos-address{margin-bottom:var(--amino-space-16)}.sc-zonos-address-h zonos-banner.sc-zonos-address{margin-top:var(--amino-space-8)}";
10
24
  const ZonosAddressStyle0 = zonosAddressCss;
11
25
 
12
26
  const ZonosAddress = class {
13
27
  constructor(hostRef) {
14
28
  registerInstance(this, hostRef);
29
+ this.invalidCharacters = createEvent(this, "invalidCharacters", 7);
15
30
  this.type = undefined;
16
31
  this.titleText = undefined;
17
32
  this.defaultAddress = null;
18
33
  this.stripe = window.Zonos.stripe;
34
+ this.hasInvalidCharacters = false;
19
35
  this.isDirtyAddress = false;
20
36
  }
21
37
  getStripeAddressInstance() {
@@ -41,6 +57,13 @@ const ZonosAddress = class {
41
57
  stripeStore.stripeAddressEventData = event;
42
58
  break;
43
59
  }
60
+ const hasInvalidCharacters = this.checkInvalidCharacters(event);
61
+ this.invalidCharacters.emit(hasInvalidCharacters);
62
+ this.hasInvalidCharacters = hasInvalidCharacters;
63
+ if (hasInvalidCharacters) {
64
+ // no need to prefetch landed cost if the address contains invalid characters
65
+ return;
66
+ }
44
67
  // only prefetch if the address type is shipping
45
68
  void stripeStorePrefetchLandedCost();
46
69
  }
@@ -51,6 +74,29 @@ const ZonosAddress = class {
51
74
  }
52
75
  stripeStore.stripeBillingAddressElement = stripeAddressElement;
53
76
  }
77
+ checkInvalidCharacters(address) {
78
+ // Do nothing if the allowed character sets is ALL or the address is incomplete
79
+ if (!address.complete ||
80
+ zonosStore.checkoutSettings.allowedCharacterSets === 'ALL') {
81
+ return false;
82
+ }
83
+ const { address: addressValue, firstName, lastName, name } = address.value;
84
+ const { city, country, line1, line2, postal_code, state } = addressValue;
85
+ const invalidList = containsNonLatinChars({
86
+ city,
87
+ country,
88
+ line1,
89
+ line2: line2 || '',
90
+ name: name || `${firstName} ${lastName}`,
91
+ postal_code,
92
+ state,
93
+ });
94
+ // emit event if the address contains invalid characters
95
+ if (Object.keys(invalidList).length) {
96
+ return true;
97
+ }
98
+ return false;
99
+ }
54
100
  async watchInitStripe() {
55
101
  var _a, _b;
56
102
  this.stripe = window.Zonos.stripe;
@@ -114,7 +160,7 @@ const ZonosAddress = class {
114
160
  }, 600);
115
161
  }
116
162
  this.updateAddressEventData({
117
- event: Object.assign(Object.assign({}, event), { elementMode: this.type, elementType: 'address', empty: false, value: Object.assign(Object.assign({}, eventValue), { firstName: eventValue.firstName || eventValue.name.split(' ')[0], lastName: eventValue.lastName || eventValue.name.split(' ').pop() }) }),
163
+ event: Object.assign(Object.assign({}, event), { elementMode: this.type, elementType: 'address', value: Object.assign(Object.assign({}, eventValue), { firstName: eventValue.firstName || eventValue.name.split(' ')[0], lastName: eventValue.lastName || eventValue.name.split(' ')[1] }) }),
118
164
  type: this.type,
119
165
  });
120
166
  });
@@ -135,10 +181,17 @@ const ZonosAddress = class {
135
181
  stripeAddressEventData.value.address.line1.length > 0;
136
182
  // @Watch doesn't get trigger on initial load
137
183
  void this.watchInitStripe();
184
+ setTimeout(() => {
185
+ // check if the address contains invalid characters after address is loaded
186
+ const newStripeAddressEventData = this.getStripeAddressInstance().stripeAddressEventData;
187
+ if (newStripeAddressEventData) {
188
+ this.checkInvalidCharacters(newStripeAddressEventData);
189
+ }
190
+ }, 500);
138
191
  }
139
192
  render() {
140
193
  // this component loads iframe from the stripe elements and puts here, so we don't need to do anything here
141
- return (h(Host, { key: '8d762300d8f599a277806d861d13d2beb6a0a5a6', class: "zonos--address zonos--elements" }, h("zonos-text", { key: 'c355eece2f193cb0595ede434238f062b2c07c7c', class: "zonos--title", type: "semiBoldLabel" }, this.titleText), h("div", { key: '59c3bd68cd67c8d733fd2ca5d9f4b4114c84db4a', class: "zonos--address-component" })));
194
+ return (h(Host, { key: '2656f94224ff0385b4ae2594284257add19f82c3', class: "zonos--address zonos--elements" }, h("zonos-text", { key: '48b5ac45621d6d0f79f62227c71d70bb284c60da', class: "zonos--title", type: "semiBoldLabel" }, this.titleText), h("div", { key: '2f11c7983fd310afa01fa5100ce25ce49cfcc3da', class: "zonos--address-component" }), this.hasInvalidCharacters && (h("zonos-banner", { bannerTitle: translate('Please ensure your text uses the Latin alphabet only (A-Z, a-z).'), intent: "error" }))));
142
195
  }
143
196
  get el() { return getElement(this); }
144
197
  static get watchers() { return {
@@ -1,5 +1,5 @@
1
1
  import { r as registerInstance, h, H as Host } from './index-b5be4dc3.js';
2
- import { d as zonosStoreFontFamily } from './zonosStore-00bce01b.js';
2
+ import { d as zonosStoreFontFamily } from './zonosStore-807f931f.js';
3
3
  import { c as classes } from './classes-0d95c529.js';
4
4
 
5
5
  const zonosBadgeCss = ":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{display:-ms-inline-flexbox;display:inline-flex}:host .zonos--badge-content{display:-ms-flexbox;display:flex;gap:var(--amino-space-8);font-size:var(--amino-font-size-s);padding:4px 8px;text-align:center;border-radius:var(--amino-radius-6);background-color:var(--amino-gray-100);color:var(--amino-gray-800);-ms-flex-align:center;align-items:center}:host p{font-weight:600;line-height:16px}:host .icon-right svg{-ms-flex-order:2;order:2}:host .small{padding:2px 8px}:host .rounded{border-radius:20px}:host .bold{background-color:var(--amino-gray-600);color:var(--amino-gray-100)}:host .blue{background-color:var(--amino-blue-100);color:var(--amino-blue-800)}:host .blue.bold{background-color:var(--amino-blue-600);color:var(--amino-blue-100)}:host .green{background-color:var(--amino-green-100);color:var(--amino-green-800)}:host .green.bold{background-color:var(--amino-green-600);color:var(--amino-green-100)}:host .red{background-color:var(--amino-red-100);color:var(--amino-red-800)}:host .red.bold{background-color:var(--amino-red-600);color:var(--amino-red-100)}:host .orange{background-color:var(--amino-orange-100);color:var(--amino-orange-800)}:host .orange.bold{background-color:var(--amino-orange-600);color:var(--amino-orange-100)}:host .purple{background-color:var(--amino-purple-100);color:var(--amino-purple-800)}:host .purple.bold{background-color:var(--amino-purple-600);color:var(--amino-purple-100)}:host .cyan{background-color:var(--amino-cyan-100);color:var(--amino-cyan-800)}:host .cyan.bold{background-color:var(--amino-cyan-600);color:var(--amino-cyan-100)}";
@@ -1,5 +1,5 @@
1
1
  import { r as registerInstance, h, H as Host } from './index-b5be4dc3.js';
2
- import { d as zonosStoreFontFamily } from './zonosStore-00bce01b.js';
2
+ import { d as zonosStoreFontFamily } from './zonosStore-807f931f.js';
3
3
  import { c as classes } from './classes-0d95c529.js';
4
4
 
5
5
  const zonosBannerCss = ":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{border-radius:var(--amino-radius-10);padding:var(--amino-space-16);background:var(--amino-gray-100)}:host .zonos--container{display:grid;-ms-flex-align:center;align-items:center;grid-template-areas:\"icon header\" \". content\";grid-template-columns:32px auto 0}:host .zonos--icon-wrapper{grid-area:icon;display:-ms-flexbox;display:flex;justify-self:start}:host .zonos--header-wrapper{margin-top:var(--amino-space-0);grid-area:header}:host .zonos--content-wrapper{grid-area:content;margin-top:var(--amino-space-4)}:host(.info){background-color:var(--amino-blue-100);border:1px solid var(--amino-blue-200)}:host(.success){background-color:var(--amino-green-100);border:1px solid var(--amino-green-200)}:host(.error){background-color:var(--amino-red-100);border:1px solid var(--amino-red-200)}:host(.warning){background-color:var(--amino-orange-100);border:1px solid var(--amino-orange-200)}";
@@ -1,9 +1,9 @@
1
1
  import { r as registerInstance, h, H as Host, d as getElement } from './index-b5be4dc3.js';
2
- import { z as zonosStore, d as zonosStoreFontFamily } from './zonosStore-00bce01b.js';
2
+ import { z as zonosStore, d as zonosStoreFontFamily } from './zonosStore-807f931f.js';
3
3
  import { c as classes } from './classes-0d95c529.js';
4
- import { g as getBorderRadius } from './getBorderRadius-19787feb.js';
4
+ import { g as getBorderRadius } from './getBorderRadius-0d133844.js';
5
5
  import { i as isColorVariable } from './isColorVariable-91c33804.js';
6
- import { i as isDarkColor } from './isDarkColor-2344e7a5.js';
6
+ import { i as isDarkColor } from './isDarkColor-8eeda28e.js';
7
7
 
8
8
  /**
9
9
  * Get theme for button text based on background color
@@ -1,10 +1,10 @@
1
1
  import { r as registerInstance, h, H as Host } from './index-b5be4dc3.js';
2
- import { d as zonosStoreFontFamily } from './zonosStore-00bce01b.js';
2
+ import { d as zonosStoreFontFamily } from './zonosStore-807f931f.js';
3
3
  import { c as classes } from './classes-0d95c529.js';
4
- import { G as localizationStoreUpdateSelectedLocale, t as translate, l as localizationStore } from './cart-e261efc1.js';
4
+ import { G as localizationStoreUpdateSelectedLocale, t as translate, l as localizationStore } from './cart-f70b9be6.js';
5
5
  import { l as languages } from './ILanguage-97790bee.js';
6
- import './isDarkColor-2344e7a5.js';
7
- import './getBorderRadius-19787feb.js';
6
+ import './isDarkColor-8eeda28e.js';
7
+ import './getBorderRadius-0d133844.js';
8
8
 
9
9
  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(--amino-border);border-radius:var(--amino-radius-6);padding:var(--spacing, var(--amino-space-24));text-align:left}:host .styled-card hr{margin-left:calc(var(--spacing, var(--amino-space-24)) * -1);margin-right:calc(var(--spacing, var(--amino-space-24)) * -1)}:host .styled-card .card-header{margin:calc(var(--spacing, var(--amino-space-24)) * -1);padding:var(--spacing, var(--amino-space-24));display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;margin-bottom:var(--spacing, var(--amino-space-24));border-bottom:var(--amino-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, var(--amino-space-24)) * -1);padding:var(--spacing, var(--amino-space-24));border-top:var(--amino-border);background:var(--amino-surface-color-secondary);margin-top:var(--spacing, var(--amino-space-24));border-bottom-left-radius:var(--amino-radius-8);border-bottom-right-radius:var(--amino-radius-8);height:var(--footerHeight)}";
10
10
  const ZonosCardStyle0 = zonosCardCss;
@@ -1,10 +1,10 @@
1
1
  import { r as registerInstance, a as getAssetPath, h, H as Host, F as Fragment, c as createEvent, d as getElement } from './index-b5be4dc3.js';
2
- import { f as cartStore, t as translate, u as handleFetch, q as stripeStoreReset, j as stripeStore, D as stripeStoreRetrievePayment, l as localizationStore, E as cartStoreUpdateSelectedShippingOption, F as cartStoreGetShippingTransitInfo } from './cart-e261efc1.js';
3
- import { z as zonosStore, d as zonosStoreFontFamily } from './zonosStore-00bce01b.js';
4
- import { t as trackConversionEvent, s as sendErrorLog, a as submitGtag } from './submitGtag-dfc6f1dc.js';
5
- import { g as getBorderRadius } from './getBorderRadius-19787feb.js';
2
+ import { f as cartStore, t as translate, u as handleFetch, q as stripeStoreReset, j as stripeStore, D as stripeStoreRetrievePayment, l as localizationStore, E as cartStoreUpdateSelectedShippingOption, F as cartStoreGetShippingTransitInfo } from './cart-f70b9be6.js';
3
+ import { z as zonosStore, d as zonosStoreFontFamily } from './zonosStore-807f931f.js';
4
+ import { t as trackConversionEvent, s as sendErrorLog, a as submitGtag } from './submitGtag-1d7ee6b8.js';
5
+ import { g as getBorderRadius } from './getBorderRadius-0d133844.js';
6
6
  import { c as classes } from './classes-0d95c529.js';
7
- import { i as isDarkColor } from './isDarkColor-2344e7a5.js';
7
+ import { i as isDarkColor } from './isDarkColor-8eeda28e.js';
8
8
  import { l as languages } from './ILanguage-97790bee.js';
9
9
  import { i as isCheckoutMobile } from './isCheckoutMobile-8846dccb.js';
10
10
 
@@ -193,8 +193,8 @@ const ZonosCheckoutFinish = class {
193
193
  });
194
194
  document.dispatchEvent(successEvent);
195
195
  }
196
- // Attempt to pull the order details from the graph every second on 5 attempts
197
- if (this.notificationType === 'success') {
196
+ // Attempt to pull the order details from the graph every second on 5 attempts. Only pull if checkoutSessionId is available
197
+ if (this.notificationType === 'success' && cartStore.checkoutSessionId) {
198
198
  // wait this to finish before resetting store and checkout session id
199
199
  await this.getPullOrder();
200
200
  }
@@ -239,7 +239,7 @@ const ZonosCheckoutFinish = class {
239
239
  // const totalItems = this.order?.items?.reduce((acc, item) => {
240
240
  // return acc + item.quantity;
241
241
  // }, 0);
242
- return (h(Host, { key: 'fe08bfd0c0b60f4dce1aa9a6f3ba273dccd70a92', class: "zonos--checkout-finish zonos--elements", style: {
242
+ return (h(Host, { key: 'd3e8a30ddfffe0cee18ff29edf839775f7a9d8ec', class: "zonos--checkout-finish zonos--elements", style: {
243
243
  '--border-radius': getBorderRadius(this.borderRadius),
244
244
  } }, this.isLoading && (h("div", { class: "loading-wrapper" }, h("zonos-spinner", null))), !this.isLoading && (h(Fragment, null, h("div", { 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$1, iconColor: 'red-800', size: 50 })), h("zonos-text", { class: "zonos--title", type: "semiBoldSubheader" }, this.notificationTitle), h("zonos-text", null, this.notificationMessages.map(message => (h(Fragment, null, message, h("br", null))))), h("zonos-button", { onClick: () => this.closeClickHandler(), size: "md", variant: "primary" }, translate('Keep shopping')))))));
245
245
  }
@@ -344,6 +344,17 @@ const ZonosCustomerInfo = class {
344
344
  * handler for continue button click
345
345
  */
346
346
  this.continueClickHandler = () => {
347
+ if (this.hasInvalidBillingCharacters || this.hasInvalidShippingCharacters) {
348
+ // if the address contains invalid characters, scroll to the nearest zonos-banner
349
+ const banner = this.el.querySelector('zonos-address zonos-banner');
350
+ if (banner) {
351
+ banner.scrollIntoView({
352
+ behavior: 'smooth',
353
+ block: 'center',
354
+ });
355
+ }
356
+ return;
357
+ }
347
358
  this.continueClicked.emit();
348
359
  };
349
360
  this.continueLoading = false;
@@ -351,6 +362,8 @@ const ZonosCustomerInfo = class {
351
362
  this.submitBtnColor = undefined;
352
363
  this.defaultAddress = null;
353
364
  this.disabled = true;
365
+ this.hasInvalidShippingCharacters = false;
366
+ this.hasInvalidBillingCharacters = false;
354
367
  }
355
368
  watchFormComplete() {
356
369
  if (!this.disabled) {
@@ -360,26 +373,28 @@ const ZonosCustomerInfo = class {
360
373
  }
361
374
  }
362
375
  render() {
363
- var _a, _b, _c, _d;
364
376
  if (!stripeStore.stripeElements) {
365
377
  return null;
366
378
  }
379
+ const stripeShippingAddressEventData = stripeStore.stripeAddressEventData;
380
+ const stripeBillingAddressEventData = stripeStore.stripeBillingAddressEventData;
381
+ const stripeLinkEventData = stripeStore.stripeLinkEventData;
367
382
  // if the shipping is different from billing, we need to make sure the billing address is valid and disable the button if it's not
368
383
  const isValidBilling = stripeStore.stripeShippingSameAsBilling
369
- ? !!((_a = stripeStore.stripeAddressEventData) === null || _a === void 0 ? void 0 : _a.complete)
370
- : !!((_b = stripeStore.stripeBillingAddressEventData) === null || _b === void 0 ? void 0 : _b.complete);
384
+ ? !!(stripeShippingAddressEventData === null || stripeShippingAddressEventData === void 0 ? void 0 : stripeShippingAddressEventData.complete)
385
+ : !!(stripeBillingAddressEventData === null || stripeBillingAddressEventData === void 0 ? void 0 : stripeBillingAddressEventData.complete);
386
+ const isValidShipping = !!(stripeShippingAddressEventData === null || stripeShippingAddressEventData === void 0 ? void 0 : stripeShippingAddressEventData.complete);
387
+ const isValidLink = !!(stripeLinkEventData === null || stripeLinkEventData === void 0 ? void 0 : stripeLinkEventData.complete);
371
388
  // make sure data is valid
372
- this.disabled =
373
- !isValidBilling ||
374
- !((_c = stripeStore.stripeAddressEventData) === null || _c === void 0 ? void 0 : _c.complete) ||
375
- !((_d = stripeStore.stripeLinkEventData) === null || _d === void 0 ? void 0 : _d.complete);
389
+ this.disabled = !isValidBilling || !isValidShipping || !isValidLink;
376
390
  const showBilling = !stripeStore.stripeShippingSameAsBilling;
377
- return (h(Host, { class: "zonos--customer-info zonos--elements" }, h("div", { class: "zonos--group" }, h("zonos-text", { class: "zonos--title", type: "semiBoldSubheader" }, translate('Customer information')), h("zonos-link-authentication", { titleText: translate('Contact') }), h("zonos-address", { defaultAddress: this.defaultAddress, titleText: translate('Address'), type: "shipping" }), h("zonos-checkbox", { isChecked: stripeStore.stripeShippingSameAsBilling, label: translate('Shipping address same as billing'), onCheckboxSelected: e => {
391
+ return (h(Host, { class: "zonos--customer-info zonos--elements" }, h("div", { class: "zonos--group" }, h("zonos-text", { class: "zonos--title", type: "semiBoldSubheader" }, translate('Customer information')), h("zonos-link-authentication", { titleText: translate('Contact') }), h("zonos-address", { defaultAddress: this.defaultAddress, onInvalidCharacters: e => (this.hasInvalidShippingCharacters = e.detail), titleText: translate('Address'), type: "shipping" }), h("zonos-checkbox", { isChecked: stripeStore.stripeShippingSameAsBilling, label: translate('Shipping address same as billing'), onCheckboxSelected: e => {
378
392
  stripeStore.stripeShippingSameAsBilling = e.detail;
379
- } }), h("zonos-collapse", { collapsed: !showBilling }, h("zonos-address", { defaultAddress: this.defaultAddress, titleText: translate('Billing address'), type: "billing" })), h("div", { class: "zonos--group-btn" }, h("zonos-button", { backgroundColor: this.submitBtnColor, isDisabled: this.disabled, loading: this.continueLoading, onClick: () => this.continueClickHandler(), size: "lg",
393
+ } }), h("zonos-collapse", { collapsed: !showBilling }, h("zonos-address", { defaultAddress: this.defaultAddress, onInvalidCharacters: e => (this.hasInvalidBillingCharacters = e.detail), titleText: translate('Billing address'), type: "billing" })), h("div", { class: "zonos--group-btn" }, h("zonos-button", { backgroundColor: this.submitBtnColor, isDisabled: this.disabled, loading: this.continueLoading, onClick: () => this.continueClickHandler(), size: "lg",
380
394
  // use primary type when on mobile mode
381
395
  variant: this.submitBtnType }, translate('Continue to shipping'))))));
382
396
  }
397
+ get el() { return getElement(this); }
383
398
  static get watchers() { return {
384
399
  "disabled": ["watchFormComplete"]
385
400
  }; }