@zonos/elements 1.3.17 → 1.3.18-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 (171) hide show
  1. package/dist/cjs/{cart-d25723e7.js → cart-95209ae8.js} +308 -8
  2. package/dist/cjs/loader.cjs.js +1 -1
  3. package/dist/cjs/{submitGtag-484eaf9d.js → submitGtag-9d60f3bb.js} +1 -1
  4. package/dist/cjs/zonos-address_8.cjs.entry.js +1 -1
  5. package/dist/cjs/zonos-card_2.cjs.entry.js +1 -1
  6. package/dist/cjs/{zonos-cart-items_9.cjs.entry.js → zonos-cart-items_10.cjs.entry.js} +114 -10
  7. package/dist/cjs/zonos-checkout.cjs.entry.js +4 -4
  8. package/dist/cjs/zonos-controller.cjs.entry.js +1 -1
  9. package/dist/cjs/zonos-country-flag.cjs.entry.js +1 -1
  10. package/dist/cjs/zonos-country-select_3.cjs.entry.js +1 -1
  11. package/dist/cjs/zonos-elements.cjs.js +1 -1
  12. package/dist/cjs/zonos-hello-dialog.cjs.entry.js +1 -1
  13. package/dist/cjs/zonos-hello.cjs.entry.js +1 -1
  14. package/dist/cjs/zonos-payment.cjs.entry.js +1 -1
  15. package/dist/collection/collection-manifest.json +1 -0
  16. package/dist/collection/components/checkout/zonos-checkout/zonos-cart-items/zonos-cart-items.js +2 -1
  17. package/dist/collection/components/checkout/zonos-checkout/zonos-cart-restricted-items/assets/ChevronUpIcon.svg +23 -0
  18. package/dist/collection/components/checkout/zonos-checkout/zonos-cart-restricted-items/assets/empty-item.jpeg +0 -0
  19. package/dist/collection/components/checkout/zonos-checkout/zonos-cart-restricted-items/zonos-cart-restricted-items.css +105 -0
  20. package/dist/collection/components/checkout/zonos-checkout/zonos-cart-restricted-items/zonos-cart-restricted-items.js +101 -0
  21. package/dist/collection/components/checkout/zonos-checkout/zonos-cart-subtotal/zonos-cart-subtotal.js +6 -3
  22. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-payment/zonos-checkout-payment.css +3 -0
  23. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout.css +1 -1
  24. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout.js +1 -1
  25. package/dist/collection/components/checkout/zonos-checkout/zonos-customer-info/zonos-customer-info.js +18 -2
  26. package/dist/collection/components/checkout/zonos-checkout/zonos-review/zonos-review.js +3 -2
  27. package/dist/collection/components/store/checkout/cart.js +55 -5
  28. package/dist/collection/components/store/checkout/stripe.js +6 -2
  29. package/dist/collection/components/store/hello/localization.js +1 -1
  30. package/dist/collection/components/store/translationStore/strings.arabic.js +12 -0
  31. package/dist/collection/components/store/translationStore/strings.base.js +12 -0
  32. package/dist/collection/components/store/translationStore/strings.chinese.js +12 -0
  33. package/dist/collection/components/store/translationStore/strings.danish.js +12 -0
  34. package/dist/collection/components/store/translationStore/strings.dutch.js +12 -0
  35. package/dist/collection/components/store/translationStore/strings.french.js +12 -0
  36. package/dist/collection/components/store/translationStore/strings.german.js +12 -0
  37. package/dist/collection/components/store/translationStore/strings.hebrew.js +12 -0
  38. package/dist/collection/components/store/translationStore/strings.indonesian.js +12 -0
  39. package/dist/collection/components/store/translationStore/strings.italian.js +12 -0
  40. package/dist/collection/components/store/translationStore/strings.japanese.js +12 -0
  41. package/dist/collection/components/store/translationStore/strings.korean.js +12 -0
  42. package/dist/collection/components/store/translationStore/strings.norwegian.js +12 -0
  43. package/dist/collection/components/store/translationStore/strings.polish.js +12 -0
  44. package/dist/collection/components/store/translationStore/strings.portuguese.js +12 -0
  45. package/dist/collection/components/store/translationStore/strings.russian.js +12 -0
  46. package/dist/collection/components/store/translationStore/strings.spanish.js +12 -0
  47. package/dist/collection/components/store/translationStore/strings.swedish.js +12 -0
  48. package/dist/collection/components/store/translationStore/strings.turkish.js +12 -0
  49. package/dist/collection/components/store/translationStore/strings.vietnamese.js +12 -0
  50. package/dist/collection/components/utils/api/prepCalculateLandedCost.js +1 -1
  51. package/dist/collection/components/utils/hello/currencyConversion/currencyDisplay.js +6 -1
  52. package/dist/collection/types/checkout/RestrictProduct.js +1 -0
  53. package/dist/collection/types/generated/graphql.customer.types.js +40 -0
  54. package/dist/collection/types/generated/graphql.frontend.types.js +1 -0
  55. package/dist/components/stripe.js +68 -9
  56. package/dist/components/submitGtag.js +1 -1
  57. package/dist/components/trackConversionEvent.js +1 -1
  58. package/dist/components/translationStore.js +240 -0
  59. package/dist/components/zonos-cart-items2.js +2 -1
  60. package/dist/components/zonos-cart-restricted-items.d.ts +11 -0
  61. package/dist/components/zonos-cart-restricted-items.js +6 -0
  62. package/dist/components/zonos-cart-restricted-items2.js +135 -0
  63. package/dist/components/zonos-cart-subtotal2.js +6 -3
  64. package/dist/components/zonos-checkout-finish2.js +1 -1
  65. package/dist/components/zonos-checkout-payment2.js +1 -1
  66. package/dist/components/zonos-checkout.js +27 -21
  67. package/dist/components/zonos-controller.js +1 -1
  68. package/dist/components/zonos-country-select2.js +1 -1
  69. package/dist/components/zonos-customer-info2.js +19 -3
  70. package/dist/components/zonos-hello-dialog2.js +1 -1
  71. package/dist/components/zonos-hello.js +1 -1
  72. package/dist/components/zonos-language-select2.js +1 -1
  73. package/dist/components/zonos-review2.js +3 -2
  74. package/dist/components/zonos-shipping2.js +1 -1
  75. package/dist/esm/{cart-02f5c2ea.js → cart-6448e883.js} +308 -9
  76. package/dist/esm/loader.js +1 -1
  77. package/dist/esm/{submitGtag-ba38e1ac.js → submitGtag-b7d369cd.js} +1 -1
  78. package/dist/esm/zonos-address_8.entry.js +1 -1
  79. package/dist/esm/zonos-card_2.entry.js +1 -1
  80. package/dist/esm/{zonos-cart-items_9.entry.js → zonos-cart-items_10.entry.js} +114 -11
  81. package/dist/esm/zonos-checkout.entry.js +4 -4
  82. package/dist/esm/zonos-controller.entry.js +1 -1
  83. package/dist/esm/zonos-country-flag.entry.js +1 -1
  84. package/dist/esm/zonos-country-select_3.entry.js +1 -1
  85. package/dist/esm/zonos-elements.js +1 -1
  86. package/dist/esm/zonos-hello-dialog.entry.js +1 -1
  87. package/dist/esm/zonos-hello.entry.js +1 -1
  88. package/dist/esm/zonos-payment.entry.js +1 -1
  89. package/dist/esm-es5/cart-6448e883.js +1 -0
  90. package/dist/esm-es5/loader.js +1 -1
  91. package/dist/esm-es5/{submitGtag-ba38e1ac.js → submitGtag-b7d369cd.js} +1 -1
  92. package/dist/esm-es5/zonos-address_8.entry.js +1 -1
  93. package/dist/esm-es5/zonos-card_2.entry.js +1 -1
  94. package/dist/esm-es5/zonos-cart-items_10.entry.js +1 -0
  95. package/dist/esm-es5/zonos-checkout.entry.js +1 -1
  96. package/dist/esm-es5/zonos-controller.entry.js +1 -1
  97. package/dist/esm-es5/zonos-country-flag.entry.js +1 -1
  98. package/dist/esm-es5/zonos-country-select_3.entry.js +1 -1
  99. package/dist/esm-es5/zonos-elements.js +1 -1
  100. package/dist/esm-es5/zonos-hello-dialog.entry.js +1 -1
  101. package/dist/esm-es5/zonos-hello.entry.js +1 -1
  102. package/dist/esm-es5/zonos-payment.entry.js +1 -1
  103. package/dist/scripts/loadZonos.js +1 -1
  104. package/dist/scripts/zonos.js +1 -1
  105. package/dist/scripts/zonosBase.js +1 -1
  106. package/dist/types/components/checkout/zonos-checkout/zonos-cart-restricted-items/zonos-cart-restricted-items.d.ts +14 -0
  107. package/dist/types/components/checkout/zonos-checkout/zonos-customer-info/zonos-customer-info.d.ts +2 -0
  108. package/dist/types/components/store/checkout/cart.d.ts +38 -4
  109. package/dist/types/components/store/translationStore/strings.arabic.d.ts +12 -0
  110. package/dist/types/components/store/translationStore/strings.base.d.ts +12 -0
  111. package/dist/types/components/store/translationStore/strings.chinese.d.ts +12 -0
  112. package/dist/types/components/store/translationStore/strings.danish.d.ts +12 -0
  113. package/dist/types/components/store/translationStore/strings.dutch.d.ts +12 -0
  114. package/dist/types/components/store/translationStore/strings.french.d.ts +12 -0
  115. package/dist/types/components/store/translationStore/strings.german.d.ts +12 -0
  116. package/dist/types/components/store/translationStore/strings.hebrew.d.ts +12 -0
  117. package/dist/types/components/store/translationStore/strings.indonesian.d.ts +12 -0
  118. package/dist/types/components/store/translationStore/strings.italian.d.ts +12 -0
  119. package/dist/types/components/store/translationStore/strings.japanese.d.ts +12 -0
  120. package/dist/types/components/store/translationStore/strings.korean.d.ts +12 -0
  121. package/dist/types/components/store/translationStore/strings.norwegian.d.ts +12 -0
  122. package/dist/types/components/store/translationStore/strings.polish.d.ts +12 -0
  123. package/dist/types/components/store/translationStore/strings.portuguese.d.ts +12 -0
  124. package/dist/types/components/store/translationStore/strings.russian.d.ts +12 -0
  125. package/dist/types/components/store/translationStore/strings.spanish.d.ts +12 -0
  126. package/dist/types/components/store/translationStore/strings.swedish.d.ts +12 -0
  127. package/dist/types/components/store/translationStore/strings.turkish.d.ts +12 -0
  128. package/dist/types/components/store/translationStore/strings.vietnamese.d.ts +12 -0
  129. package/dist/types/components/store/translationStore.d.ts +1 -1
  130. package/dist/types/components/utils/api/getLocaleMessages.d.ts +1 -1
  131. package/dist/types/components.d.ts +21 -0
  132. package/dist/types/scripts/zonosBase.d.ts +6 -1
  133. package/dist/types/types/checkout/RestrictProduct.d.ts +7 -0
  134. package/dist/types/types/generated/graphql.customer.types.d.ts +54 -0
  135. package/dist/types/types/generated/graphql.customer.types.ts +66 -1
  136. package/dist/types/types/generated/graphql.frontend.types.d.ts +2 -1
  137. package/dist/types/types/generated/graphql.frontend.types.ts +2 -1
  138. package/dist/zonos-elements/{p-6dec476d.system.entry.js → p-0759a84d.system.entry.js} +1 -1
  139. package/dist/zonos-elements/{p-47e00966.system.entry.js → p-0ee61fba.system.entry.js} +1 -1
  140. package/dist/zonos-elements/p-154aaf95.system.js +1 -1
  141. package/dist/zonos-elements/{p-239cc943.system.entry.js → p-2fc561ac.system.entry.js} +1 -1
  142. package/dist/zonos-elements/{p-cf0f8e32.entry.js → p-345503b7.entry.js} +1 -1
  143. package/dist/zonos-elements/{p-6ece23b9.entry.js → p-3be2e469.entry.js} +1 -1
  144. package/dist/zonos-elements/p-47c75f81.system.entry.js +1 -0
  145. package/dist/zonos-elements/{p-532995a4.system.entry.js → p-58f8cee7.system.entry.js} +1 -1
  146. package/dist/zonos-elements/{p-572a4de2.system.entry.js → p-61100d2e.system.entry.js} +1 -1
  147. package/dist/zonos-elements/{p-905d842b.entry.js → p-6ea746b9.entry.js} +1 -1
  148. package/dist/zonos-elements/{p-f124e659.system.entry.js → p-70c35519.system.entry.js} +1 -1
  149. package/dist/zonos-elements/{p-246133d3.entry.js → p-7b19cd96.entry.js} +1 -1
  150. package/dist/zonos-elements/{p-0265da6f.js → p-7cc730b0.js} +1 -1
  151. package/dist/zonos-elements/{p-57adc7f8.entry.js → p-7f48fafe.entry.js} +1 -1
  152. package/dist/zonos-elements/p-9c575a18.system.entry.js +1 -0
  153. package/dist/zonos-elements/{p-e0e66004.system.js → p-aaf1e517.system.js} +1 -1
  154. package/dist/zonos-elements/p-aff5f4ca.js +1 -0
  155. package/dist/zonos-elements/{p-f99eb5e7.entry.js → p-beca252d.entry.js} +1 -1
  156. package/dist/zonos-elements/{p-1ba4cf64.entry.js → p-c1f4bb4a.entry.js} +1 -1
  157. package/dist/zonos-elements/{p-5e33aab7.system.entry.js → p-c64eefdd.system.entry.js} +1 -1
  158. package/dist/zonos-elements/p-ca621143.entry.js +1 -0
  159. package/dist/zonos-elements/{p-0267a969.entry.js → p-dbee6587.entry.js} +1 -1
  160. package/dist/zonos-elements/{p-9da0562e.system.entry.js → p-e0706108.system.entry.js} +1 -1
  161. package/dist/zonos-elements/{p-54a32fd7.entry.js → p-e3335228.entry.js} +1 -1
  162. package/dist/zonos-elements/p-ef9cbb66.system.js +1 -0
  163. package/dist/zonos-elements/zonos-elements.esm.js +1 -1
  164. package/package.json +12 -12
  165. package/dist/esm-es5/cart-02f5c2ea.js +0 -1
  166. package/dist/esm-es5/zonos-cart-items_9.entry.js +0 -1
  167. package/dist/zonos-elements/p-168e5b5f.system.js +0 -1
  168. package/dist/zonos-elements/p-1b8082dd.entry.js +0 -1
  169. package/dist/zonos-elements/p-5d13795a.system.entry.js +0 -1
  170. package/dist/zonos-elements/p-981bf71a.js +0 -1
  171. package/dist/zonos-elements/p-ed7d251d.system.entry.js +0 -1
@@ -17,7 +17,8 @@ const ZonosCartItems = /*@__PURE__*/ proxyCustomElement(class ZonosCartItems ext
17
17
  var _a;
18
18
  const emptyItemImg = getAssetPath('./assets/empty-item.jpeg');
19
19
  const rate = ((_a = cartStore.exchangeRate) === null || _a === void 0 ? void 0 : _a.rate) || 1;
20
- return (h(Host, { key: 'e2d53d541a342f816efe95f3a0b5551ea7f95e38', class: "zonos--cart-items zonos--elements" }, h("table", { key: 'f2dbf582004f7db5947e55b5b93f1437dc9d2a95', class: "zonos--cart-table" }, h("tbody", { key: 'a9948cbeb5ad9886d582e518d3bbe0ab9c5dda9d' }, cartStore.items.map(item => {
20
+ const nonRestrictedItems = cartStore.items.filter(item => !item.isRestricted);
21
+ return (h(Host, { key: '2dc2189f79fe59260a9fcd8a61142ab628ff7f57', class: "zonos--cart-items zonos--elements" }, h("table", { key: 'd354007fffb5afa397038f319571e83c3fb3ad65', class: "zonos--cart-table" }, h("tbody", { key: '5f31a21b612495ee583650cbd71614cc10a799cc' }, nonRestrictedItems.map(item => {
21
22
  const itemImg = item.imageUrl;
22
23
  return (h("tr", { class: "zonos--cart-item" }, h("td", { class: "zonos--column zonos--cart-item-image" }, itemImg && !this.errorImages.includes(itemImg) ? (h("img", { alt: item.name, onError: () => {
23
24
  this.errorImages = [...this.errorImages, itemImg];
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../types/components";
2
+
3
+ interface ZonosCartRestrictedItems extends Components.ZonosCartRestrictedItems, HTMLElement {}
4
+ export const ZonosCartRestrictedItems: {
5
+ prototype: ZonosCartRestrictedItems;
6
+ new (): ZonosCartRestrictedItems;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,6 @@
1
+ import { Z as ZonosCartRestrictedItems$1, d as defineCustomElement$1 } from './zonos-cart-restricted-items2.js';
2
+
3
+ const ZonosCartRestrictedItems = ZonosCartRestrictedItems$1;
4
+ const defineCustomElement = defineCustomElement$1;
5
+
6
+ export { ZonosCartRestrictedItems, defineCustomElement };
@@ -0,0 +1,135 @@
1
+ import { proxyCustomElement, HTMLElement, getAssetPath, h, Host } from '@stencil/core/internal/client';
2
+ import { b as cartStoreHasOneEligibleItem, c as cartStore } from './stripe.js';
3
+ import { a as translate } from './translationStore.js';
4
+ import { c as classes } from './classes.js';
5
+ import { f as formatCurrency } from './formatCurrency.js';
6
+ import { d as defineCustomElement$4 } from './zonos-banner2.js';
7
+ import { d as defineCustomElement$3 } from './zonos-collapse2.js';
8
+ import { d as defineCustomElement$2 } from './zonos-icon2.js';
9
+ import { d as defineCustomElement$1 } from './zonos-text2.js';
10
+
11
+ const ChevronUpIcon = `<svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg">
12
+ <g filter="url(#filter0_dd_2052_3658)">
13
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M7.46967 14.5303C7.76256 14.8232 8.23744 14.8232 8.53033 14.5303L12.5 10.5607L16.4697 14.5303C16.7626 14.8232 17.2374 14.8232 17.5303 14.5303C17.8232 14.2374 17.8232 13.7626 17.5303 13.4697L13.0303 8.96967C12.7374 8.67678 12.2626 8.67678 11.9697 8.96967L7.46967 13.4697C7.17678 13.7626 7.17678 14.2374 7.46967 14.5303Z" fill="currentColor"/>
14
+ </g>
15
+ <defs>
16
+ <filter id="filter0_dd_2052_3658" x="-3.5" y="-2" width="32" height="32" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
17
+ <feFlood flood-opacity="0" result="BackgroundImageFix"/>
18
+ <feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
19
+ <feOffset dy="2"/>
20
+ <feGaussianBlur stdDeviation="2"/>
21
+ <feComposite in2="hardAlpha" operator="out"/>
22
+ <feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.06 0"/>
23
+ <feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_2052_3658"/>
24
+ <feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
25
+ <feOffset dy="1"/>
26
+ <feGaussianBlur stdDeviation="1"/>
27
+ <feComposite in2="hardAlpha" operator="out"/>
28
+ <feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.04 0"/>
29
+ <feBlend mode="normal" in2="effect1_dropShadow_2052_3658" result="effect2_dropShadow_2052_3658"/>
30
+ <feBlend mode="normal" in="SourceGraphic" in2="effect2_dropShadow_2052_3658" result="shape"/>
31
+ </filter>
32
+ </defs>
33
+ </svg>
34
+ `;
35
+
36
+ const zonosCartRestrictedItemsCss = ":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{overflow:auto;position:relative}:host zonos-banner{margin-bottom:12px}:host .zonos--cart-title-collapse-trigger{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;gap:24px;-ms-flex-align:center;align-items:center;background:var(--zonos-elements-gray-0);width:100%;border:none;cursor:pointer;margin-bottom:16px;position:-webkit-sticky;position:sticky;top:0;z-index:1;-webkit-transition:0.5s all ease;transition:0.5s all ease}:host .zonos--cart-title-collapse-trigger zonos-icon{-webkit-transition:-webkit-transform 0.3s ease;transition:-webkit-transform 0.3s ease;transition:transform 0.3s ease;transition:transform 0.3s ease, -webkit-transform 0.3s ease}:host .zonos--cart-title-collapse-trigger.collapsed{margin-bottom:0}:host .zonos--cart-title-collapse-trigger.collapsed zonos-icon{-webkit-transform:rotate(180deg);transform:rotate(180deg)}:host .zonos--cart-title-collapse-trigger::before,:host .zonos--cart-title-collapse-trigger::after{content:\"\";display:block;width:80%;height:1px;background-color:var(--zonos-elements-border-color);-ms-flex-negative:1;flex-shrink:1}:host .zonos--cart-title-collapse-trigger .zonos--title-wrapper{-ms-flex-positive:1;flex-grow:1;-ms-flex-negative:0;flex-shrink:0;display:-ms-inline-flexbox;display:inline-flex;-ms-flex-direction:row;flex-direction:row;gap:8px;-ms-flex-align:center;align-items:center}:host .zonos--cart-table{opacity:0.5;width:100%;border:none;border-collapse:collapse;overflow:auto;font-size:var(--zonos-elements-font-size-base)}:host .zonos--cart-table .zonos--column{padding:8px;font-size:var(--zonos-elements-font-size-base)}:host .zonos--cart-table .zonos--column:last-child{text-align:right}:host .zonos--cart-table .zonos--column:first-child{width:60px}:host img{min-width:40px}:host(.collapsed){-ms-flex-negative:0;flex-shrink:0}";
37
+ const ZonosCartRestrictedItemsStyle0 = zonosCartRestrictedItemsCss;
38
+
39
+ const ZonosCartRestrictedItems = /*@__PURE__*/ proxyCustomElement(class ZonosCartRestrictedItems extends HTMLElement {
40
+ constructor() {
41
+ super();
42
+ this.__registerHost();
43
+ this.__attachShadow();
44
+ this.hide = false;
45
+ this.errorImages = [];
46
+ this.internalCollapsed = true;
47
+ this.firstRender = true;
48
+ }
49
+ componentDidLoad() {
50
+ // Reset if it's first render
51
+ this.firstRender = true;
52
+ }
53
+ render() {
54
+ var _a;
55
+ const emptyItemImg = getAssetPath('./assets/empty-item.jpeg');
56
+ const rate = ((_a = cartStore.exchangeRate) === null || _a === void 0 ? void 0 : _a.rate) || 1;
57
+ const restrictedItemTotal = cartStore.restrictedItems.length;
58
+ if (this.hide || restrictedItemTotal === 0) {
59
+ // show nothing if the parent is collapsed or no restricted items
60
+ return null;
61
+ }
62
+ if (this.firstRender) {
63
+ // Auto expand if all items are restricted
64
+ this.internalCollapsed = cartStoreHasOneEligibleItem();
65
+ this.firstRender = false;
66
+ }
67
+ return (h(Host, { class: classes([
68
+ 'zonos--cart-restricted-items',
69
+ 'zonos--elements',
70
+ this.internalCollapsed && 'collapsed',
71
+ ]) }, h("button", { class: classes([
72
+ 'zonos--cart-title-collapse-trigger',
73
+ this.internalCollapsed && 'collapsed',
74
+ ]), onClick: () => {
75
+ this.internalCollapsed = !this.internalCollapsed;
76
+ } }, h("div", { class: "zonos--title-wrapper" }, h("zonos-text", { textColor: "red-600", type: "label" }, `${translate(this.internalCollapsed ? 'Show' : 'Hide')} ${restrictedItemTotal} ${translate('restricted items')}`), h("zonos-icon", { content: ChevronUpIcon, iconColor: "red-600" }))), h("zonos-collapse", { collapsed: this.internalCollapsed }, h("zonos-banner", { bannerTitle: translate('The following items are unable to be shipped to your country and are not included in your cart total.'), intent: "error" }), h("table", { class: "zonos--cart-table" }, h("tbody", null, cartStore.restrictedItems.map((item, index) => {
77
+ var _a, _b;
78
+ const itemImg = item.imageUrl;
79
+ return (h("tr", { class: "zonos--cart-item" }, h("td", { class: "zonos--column zonos--cart-item-image" }, itemImg && !this.errorImages.includes(itemImg) ? (h("img", { alt:
80
+ // Use matched item name if available
81
+ ((_a = item.matchedItem) === null || _a === void 0 ? void 0 : _a.name) ||
82
+ item.name ||
83
+ `Restricted item ${index + 1}`, onError: () => {
84
+ this.errorImages = [...this.errorImages, itemImg];
85
+ }, src: itemImg, style: {
86
+ 'min-width': '40px',
87
+ }, width: 40 })) : (h("img", { alt: item.name || `Restricted item ${index + 1}`, src: emptyItemImg, width: 40 }))), h("td", { class: "zonos--column zonos--cart-item-name" }, h("zonos-text", { type: "label" }, ((_b = item.matchedItem) === null || _b === void 0 ? void 0 : _b.name) || item.name), h("zonos-text", { type: "caption" }, item.restriction.reason)), h("td", { class: "zonos--column zonos--cart-item-price" }, h("zonos-text", { type: "semiBoldLabel" }, formatCurrency({
88
+ amount: item.amount * item.quantity * rate,
89
+ currency: cartStore.currency,
90
+ })))));
91
+ }))))));
92
+ }
93
+ static get assetsDirs() { return ["assets"]; }
94
+ static get style() { return ZonosCartRestrictedItemsStyle0; }
95
+ }, [1, "zonos-cart-restricted-items", {
96
+ "hide": [4],
97
+ "errorImages": [32],
98
+ "internalCollapsed": [32],
99
+ "firstRender": [32]
100
+ }]);
101
+ function defineCustomElement() {
102
+ if (typeof customElements === "undefined") {
103
+ return;
104
+ }
105
+ const components = ["zonos-cart-restricted-items", "zonos-banner", "zonos-collapse", "zonos-icon", "zonos-text"];
106
+ components.forEach(tagName => { switch (tagName) {
107
+ case "zonos-cart-restricted-items":
108
+ if (!customElements.get(tagName)) {
109
+ customElements.define(tagName, ZonosCartRestrictedItems);
110
+ }
111
+ break;
112
+ case "zonos-banner":
113
+ if (!customElements.get(tagName)) {
114
+ defineCustomElement$4();
115
+ }
116
+ break;
117
+ case "zonos-collapse":
118
+ if (!customElements.get(tagName)) {
119
+ defineCustomElement$3();
120
+ }
121
+ break;
122
+ case "zonos-icon":
123
+ if (!customElements.get(tagName)) {
124
+ defineCustomElement$2();
125
+ }
126
+ break;
127
+ case "zonos-text":
128
+ if (!customElements.get(tagName)) {
129
+ defineCustomElement$1();
130
+ }
131
+ break;
132
+ } });
133
+ }
134
+
135
+ export { ZonosCartRestrictedItems as Z, defineCustomElement as d };
@@ -1,5 +1,5 @@
1
1
  import { proxyCustomElement, HTMLElement, h, Host, Fragment } from '@stencil/core/internal/client';
2
- import { c as cartStore } from './stripe.js';
2
+ import { b as cartStoreHasOneEligibleItem, c as cartStore } from './stripe.js';
3
3
  import { a as translate } from './translationStore.js';
4
4
  import { f as formatCurrency } from './formatCurrency.js';
5
5
  import { d as defineCustomElement$4 } from './zonos-badge2.js';
@@ -24,6 +24,9 @@ const ZonosCartSubtotal = /*@__PURE__*/ proxyCustomElement(class ZonosCartSubtot
24
24
  }
25
25
  render() {
26
26
  const showDutyTaxesInfo = cartStore.step === 'payment' || cartStore.step === 'shipping';
27
+ // Show 0 for subtotal and total when all items are restricted
28
+ const total = cartStoreHasOneEligibleItem() ? cartStore.total : 0;
29
+ const subtotal = cartStoreHasOneEligibleItem() ? cartStore.subtotal : 0;
27
30
  const renderShippingInfo = () => {
28
31
  if (!cartStore.selectedShippingOption) {
29
32
  return (h(Fragment, null, h("zonos-text", { class: "zonos--title", type: "semiBoldLabel" }, translate('Shipping')), h("zonos-text", { class: "zonos--caption", type: "caption" }, translate('No shipping method selected'))));
@@ -31,7 +34,7 @@ const ZonosCartSubtotal = /*@__PURE__*/ proxyCustomElement(class ZonosCartSubtot
31
34
  return (h(Fragment, null, h("zonos-text", { class: "zonos--title", type: "semiBoldLabel" }, cartStore.selectedShippingOption.displayName), cartStore.selectedShippingOptionTransitTime && (h("zonos-text", { class: "zonos--caption", type: "caption" }, cartStore.selectedShippingOptionTransitTime, ' ', translate('business days')))));
32
35
  };
33
36
  return (h(Host, { class: "zonos--cart-subtotal zonos--elements" }, h("table", { class: "zonos--cart-table" }, h("tr", { class: "zonos--row zonos--cart-subtotal" }, h("td", { class: "zonos--column" }), h("td", { class: "zonos--column zonos--cart-subtotal-title" }, h("zonos-text", { type: "semiBoldLabel" }, translate('Cart subtotal'))), h("td", { class: "zonos--column zonos--cart-subtotal-price" }, h("zonos-text", { type: "semiBoldLabel" }, formatCurrency({
34
- amount: cartStore.subtotal,
37
+ amount: subtotal,
35
38
  currency: cartStore.currency,
36
39
  })))), h("tr", { class: "zonos--row zonos--cart-shipping" }, h("td", { class: "zonos--column" }), h("td", { class: "zonos--column zonos--cart-subtotal-title" }, renderShippingInfo()), h("td", { class: "zonos--column zonos--cart-subtotal-price" }, cartStore.shipping
37
40
  ? formatCurrency({
@@ -44,7 +47,7 @@ const ZonosCartSubtotal = /*@__PURE__*/ proxyCustomElement(class ZonosCartSubtot
44
47
  currency: cartStore.currency,
45
48
  })
46
49
  : '-', cartStore.isSelectedShippingGuarantee && (h("zonos-badge", null, translate('Guaranteed'))))))), h("tr", { class: "zonos--row zonos--cart-pay-total" }, h("td", { class: "zonos--column" }), h("td", { class: "zonos--column" }, h("zonos-text", { class: "zonos--title", type: "semiBoldLabel" }, translate('Order total'))), h("td", { class: "zonos--column" }, h("zonos-text", { type: "semiBoldLabel" }, formatCurrency({
47
- amount: cartStore.total,
50
+ amount: total,
48
51
  currency: cartStore.currency,
49
52
  })))))));
50
53
  }
@@ -1,5 +1,5 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host, Fragment } from '@stencil/core/internal/client';
2
- import { u as handleFetch, r as stripeStoreReset, c as cartStore, s as stripeStore, v as stripeStoreRetrievePayment } from './stripe.js';
2
+ import { v as handleFetch, t as stripeStoreReset, c as cartStore, s as stripeStore, w as stripeStoreRetrievePayment } from './stripe.js';
3
3
  import { a as translate } from './translationStore.js';
4
4
  import { z as zonosStore } from './zonosStore.js';
5
5
  import { t as trackConversionEvent } from './trackConversionEvent.js';
@@ -9,7 +9,7 @@ import { d as defineCustomElement$3 } from './zonos-payment2.js';
9
9
  import { d as defineCustomElement$2 } from './zonos-spinner2.js';
10
10
  import { d as defineCustomElement$1 } from './zonos-text2.js';
11
11
 
12
- 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}.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}.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--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%}";
12
+ 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}.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}.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%}";
13
13
  const ZonosCheckoutPaymentStyle0 = zonosCheckoutPaymentCss;
14
14
 
15
15
  const ZonosCheckoutPayment = /*@__PURE__*/ proxyCustomElement(class ZonosCheckoutPayment extends HTMLElement {
@@ -1,5 +1,5 @@
1
1
  import { proxyCustomElement, HTMLElement, h, Host, Fragment } from '@stencil/core/internal/client';
2
- import { a as localizationStore, b as log, d as stripeStoreGetDomesticShippingSession, e as localizationStoreUpdateSelectedCountryCode, f as stripeStoreCleanupDomesticShippingSession, l as logError, g as stripeStoreSaveDomesticShippingSession, i as initStripeElements, c as cartStore, h as cartStoreUpdateItems, j as cartStoreReset, k as cartStoreResetTabItems, s as stripeStore, m as stripeStoreInitCheckoutSession, n as cartStoreUpdateToErrorState, o as stripeStorePrefetchLandedCost, p as cartStoreNextStep, q as stripeStoreConfirmPayment, r as stripeStoreReset, t as localizationStoreOnUpdate } from './stripe.js';
2
+ import { a as localizationStore, d as log, e as stripeStoreGetDomesticShippingSession, f as localizationStoreUpdateSelectedCountryCode, g as stripeStoreCleanupDomesticShippingSession, l as logError, h as stripeStoreSaveDomesticShippingSession, i as initStripeElements, c as cartStore, j as cartStoreUpdateItems, k as cartStoreReset, m as cartStoreResetTabItems, s as stripeStore, n as stripeStoreInitCheckoutSession, o as cartStoreUpdateToErrorState, p as stripeStorePrefetchLandedCost, q as cartStoreNextStep, r as stripeStoreConfirmPayment, t as stripeStoreReset, u as localizationStoreOnUpdate } from './stripe.js';
3
3
  import { a as translate } from './translationStore.js';
4
4
  import { z as zonosStore, g as getZonosStoreTheme, m as mergeConfig } from './zonosStore.js';
5
5
  import { t as trackConversionEvent } from './trackConversionEvent.js';
@@ -9,15 +9,16 @@ import { c as classes } from './classes.js';
9
9
  import { g as getBorderRadius } from './getBorderRadius.js';
10
10
  import { i as isDarkColor } from './isDarkColor.js';
11
11
  import { s as submitGtag } from './submitGtag.js';
12
- import { R as RemoveIcon, d as defineCustomElement$v } from './zonos-address-update-dialog2.js';
13
- import { d as defineCustomElement$y } from './zonos-address2.js';
14
- import { d as defineCustomElement$x } from './zonos-address-display2.js';
15
- import { d as defineCustomElement$w } from './zonos-address-form2.js';
16
- import { d as defineCustomElement$u } from './zonos-badge2.js';
17
- import { d as defineCustomElement$t } from './zonos-banner2.js';
18
- import { d as defineCustomElement$s } from './zonos-button2.js';
19
- import { d as defineCustomElement$r } from './zonos-card2.js';
20
- import { d as defineCustomElement$q } from './zonos-cart-items2.js';
12
+ import { R as RemoveIcon, d as defineCustomElement$w } from './zonos-address-update-dialog2.js';
13
+ import { d as defineCustomElement$z } from './zonos-address2.js';
14
+ import { d as defineCustomElement$y } from './zonos-address-display2.js';
15
+ import { d as defineCustomElement$x } from './zonos-address-form2.js';
16
+ import { d as defineCustomElement$v } from './zonos-badge2.js';
17
+ import { d as defineCustomElement$u } from './zonos-banner2.js';
18
+ import { d as defineCustomElement$t } from './zonos-button2.js';
19
+ import { d as defineCustomElement$s } from './zonos-card2.js';
20
+ import { d as defineCustomElement$r } from './zonos-cart-items2.js';
21
+ import { d as defineCustomElement$q } from './zonos-cart-restricted-items2.js';
21
22
  import { d as defineCustomElement$p } from './zonos-cart-subtotal2.js';
22
23
  import { d as defineCustomElement$o } from './zonos-checkbox2.js';
23
24
  import { d as defineCustomElement$m } from './zonos-checkout-footer2.js';
@@ -317,7 +318,7 @@ const MessageIcon = `<svg width="18" height="18" viewBox="0 0 18 18" fill="none"
317
318
  </svg>
318
319
  `;
319
320
 
320
- 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}.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.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:0px}}.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}";
321
+ 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}.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.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}";
321
322
  const ZonosCheckoutStyle0 = zonosCheckoutCss;
322
323
 
323
324
  const ZonosCheckout$1 = /*@__PURE__*/ proxyCustomElement(class ZonosCheckout extends HTMLElement {
@@ -780,7 +781,7 @@ const ZonosCheckout$1 = /*@__PURE__*/ proxyCustomElement(class ZonosCheckout ext
780
781
  } }), h("zonos-collapse", {
781
782
  // only collapsible on mobile
782
783
  collapsed: this.collapseReviewMobile && this.isMobile
783
- }, h("zonos-cart-items", null), this.isMobile && (h("zonos-v-stack", { spacing: 16 }, h("zonos-cart-subtotal", null), h("zonos-custom-message", { class: "zonos--checkout-default-message", icon: MessageIcon, message: defaultMessage }))))), !this.isMobile && (h("zonos-v-stack", { spacing: 16 }, h("zonos-cart-subtotal", null), h("zonos-custom-message", { class: "zonos--checkout-default-message", icon: MessageIcon, message: defaultMessage }))))))), (cartStore.step === 'finish' || cartStore.step === 'error') && (h("div", { class: "zonos--done", "data-theme": rightSideTheme }, h("div", { class: "zonos--header" }, renderLogo(), h("zonos-button", { class: "zonos--close-button", icon: h("zonos-icon", { "aria-label": "Close checkout dialog", content: RemoveIcon }), noBackground: true, onClick: () => this.handleFinishClick(), theme: rightSideTheme })), h("zonos-checkout-finish", { borderRadius: style, onCloseClick: () => this.handleFinishClick(), overrideNotification: cartStore.step === 'error' && !!cartStore.error
784
+ }, h("zonos-cart-items", null), this.isMobile && (h("zonos-v-stack", { spacing: 16 }, h("zonos-cart-subtotal", null), h("zonos-custom-message", { class: "zonos--checkout-default-message", icon: MessageIcon, message: defaultMessage }))))), h("zonos-cart-restricted-items", null), !this.isMobile && (h("zonos-v-stack", { spacing: 16 }, h("zonos-cart-subtotal", null), h("zonos-custom-message", { class: "zonos--checkout-default-message", icon: MessageIcon, message: defaultMessage }))))))), (cartStore.step === 'finish' || cartStore.step === 'error') && (h("div", { class: "zonos--done", "data-theme": rightSideTheme }, h("div", { class: "zonos--header" }, renderLogo(), h("zonos-button", { class: "zonos--close-button", icon: h("zonos-icon", { "aria-label": "Close checkout dialog", content: RemoveIcon }), noBackground: true, onClick: () => this.handleFinishClick(), theme: rightSideTheme })), h("zonos-checkout-finish", { borderRadius: style, onCloseClick: () => this.handleFinishClick(), overrideNotification: cartStore.step === 'error' && !!cartStore.error
784
785
  ? Object.assign(Object.assign({}, cartStore.error), { type: 'error' }) : undefined, storybookForceStatus: this.storybookPaymentStatusOverride }))), h("zonos-checkout-footer", { "data-theme": rightSideTheme, mobile: this.isMobile,
785
786
  /**
786
787
  * For this component, use slot instead of passing JSX through prop of other component. Because
@@ -831,7 +832,7 @@ function defineCustomElement$1() {
831
832
  if (typeof customElements === "undefined") {
832
833
  return;
833
834
  }
834
- const components = ["zonos-checkout", "zonos-address", "zonos-address-display", "zonos-address-form", "zonos-address-update-dialog", "zonos-badge", "zonos-banner", "zonos-button", "zonos-card", "zonos-cart-items", "zonos-cart-subtotal", "zonos-checkbox", "zonos-checkout-finish", "zonos-checkout-footer", "zonos-checkout-payment", "zonos-checkout-progress-tabs", "zonos-collapse", "zonos-country-flag", "zonos-custom-message", "zonos-customer-info", "zonos-dialog", "zonos-icon", "zonos-input", "zonos-language-select", "zonos-link-authentication", "zonos-payment", "zonos-review", "zonos-select-dialog-header", "zonos-shipping", "zonos-shipping-rich-radio", "zonos-spinner", "zonos-text", "zonos-tooltip", "zonos-v-stack"];
835
+ const components = ["zonos-checkout", "zonos-address", "zonos-address-display", "zonos-address-form", "zonos-address-update-dialog", "zonos-badge", "zonos-banner", "zonos-button", "zonos-card", "zonos-cart-items", "zonos-cart-restricted-items", "zonos-cart-subtotal", "zonos-checkbox", "zonos-checkout-finish", "zonos-checkout-footer", "zonos-checkout-payment", "zonos-checkout-progress-tabs", "zonos-collapse", "zonos-country-flag", "zonos-custom-message", "zonos-customer-info", "zonos-dialog", "zonos-icon", "zonos-input", "zonos-language-select", "zonos-link-authentication", "zonos-payment", "zonos-review", "zonos-select-dialog-header", "zonos-shipping", "zonos-shipping-rich-radio", "zonos-spinner", "zonos-text", "zonos-tooltip", "zonos-v-stack"];
835
836
  components.forEach(tagName => { switch (tagName) {
836
837
  case "zonos-checkout":
837
838
  if (!customElements.get(tagName)) {
@@ -840,45 +841,50 @@ function defineCustomElement$1() {
840
841
  break;
841
842
  case "zonos-address":
842
843
  if (!customElements.get(tagName)) {
843
- defineCustomElement$y();
844
+ defineCustomElement$z();
844
845
  }
845
846
  break;
846
847
  case "zonos-address-display":
847
848
  if (!customElements.get(tagName)) {
848
- defineCustomElement$x();
849
+ defineCustomElement$y();
849
850
  }
850
851
  break;
851
852
  case "zonos-address-form":
852
853
  if (!customElements.get(tagName)) {
853
- defineCustomElement$w();
854
+ defineCustomElement$x();
854
855
  }
855
856
  break;
856
857
  case "zonos-address-update-dialog":
857
858
  if (!customElements.get(tagName)) {
858
- defineCustomElement$v();
859
+ defineCustomElement$w();
859
860
  }
860
861
  break;
861
862
  case "zonos-badge":
862
863
  if (!customElements.get(tagName)) {
863
- defineCustomElement$u();
864
+ defineCustomElement$v();
864
865
  }
865
866
  break;
866
867
  case "zonos-banner":
867
868
  if (!customElements.get(tagName)) {
868
- defineCustomElement$t();
869
+ defineCustomElement$u();
869
870
  }
870
871
  break;
871
872
  case "zonos-button":
872
873
  if (!customElements.get(tagName)) {
873
- defineCustomElement$s();
874
+ defineCustomElement$t();
874
875
  }
875
876
  break;
876
877
  case "zonos-card":
877
878
  if (!customElements.get(tagName)) {
878
- defineCustomElement$r();
879
+ defineCustomElement$s();
879
880
  }
880
881
  break;
881
882
  case "zonos-cart-items":
883
+ if (!customElements.get(tagName)) {
884
+ defineCustomElement$r();
885
+ }
886
+ break;
887
+ case "zonos-cart-restricted-items":
882
888
  if (!customElements.get(tagName)) {
883
889
  defineCustomElement$q();
884
890
  }
@@ -1,5 +1,5 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
- import { u as handleFetch, l as logError, A as isValidSelector, b as log, s as stripeStore, B as initLocalizationStore, e as localizationStoreUpdateSelectedCountryCode } from './stripe.js';
2
+ import { v as handleFetch, l as logError, B as isValidSelector, d as log, s as stripeStore, C as initLocalizationStore, f as localizationStoreUpdateSelectedCountryCode } from './stripe.js';
3
3
  import { z as zonosStore, d as zonosStoreInitSetting, a as zonosStoreFontFamily } from './zonosStore.js';
4
4
  import { d as defineCustomElement$3 } from './zonos-notification2.js';
5
5
  import { d as defineCustomElement$2 } from './zonos-text2.js';
@@ -1,5 +1,5 @@
1
1
  import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
- import { e as localizationStoreUpdateSelectedCountryCode, a as localizationStore } from './stripe.js';
2
+ import { f as localizationStoreUpdateSelectedCountryCode, a as localizationStore } from './stripe.js';
3
3
  import { a as zonosStoreFontFamily } from './zonosStore.js';
4
4
  import { d as defineCustomElement$7 } from './zonos-button2.js';
5
5
  import { d as defineCustomElement$6 } from './zonos-country-flag2.js';
@@ -1,5 +1,5 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
- import { s as stripeStore, w as stripeStoreTranslateAddressToLatin } from './stripe.js';
2
+ import { s as stripeStore, x as stripeStoreTranslateAddressToLatin } from './stripe.js';
3
3
  import { a as translate } from './translationStore.js';
4
4
  import { z as zonosStore, g as getZonosStoreTheme } from './zonosStore.js';
5
5
  import { t as trackConversionEvent } from './trackConversionEvent.js';
@@ -137,6 +137,8 @@ const ZonosCustomerInfo = /*@__PURE__*/ proxyCustomElement(class ZonosCustomerIn
137
137
  this.isMobile = false;
138
138
  this.defaultAddress = null;
139
139
  this.showErrorBanner = false;
140
+ this.shippingCountry = '';
141
+ this.isCheckingForRestrictedItems = false;
140
142
  this.isValidatingAddress = false;
141
143
  this.invalidShippingCharacterList = null;
142
144
  this.invalidBillingCharacterList = null;
@@ -168,10 +170,22 @@ const ZonosCustomerInfo = /*@__PURE__*/ proxyCustomElement(class ZonosCustomerIn
168
170
  return invalidList;
169
171
  }
170
172
  render() {
171
- var _a;
173
+ var _a, _b;
172
174
  if (!stripeStore.stripeElements) {
173
175
  return null;
174
176
  }
177
+ // init the shipping country when shipping address is available
178
+ if (!this.shippingCountry && stripeStore.stripeAddressEventData) {
179
+ this.shippingCountry =
180
+ (_a = stripeStore.stripeAddressEventData) === null || _a === void 0 ? void 0 : _a.value.address.country;
181
+ }
182
+ if (stripeStore.stripeAddressEventData &&
183
+ this.shippingCountry !==
184
+ stripeStore.stripeAddressEventData.value.address.country) {
185
+ // reset the shipping country if it's different from the current shipping address
186
+ this.shippingCountry =
187
+ stripeStore.stripeAddressEventData.value.address.country;
188
+ }
175
189
  const showBilling = !stripeStore.stripeShippingSameAsBilling;
176
190
  // Get theme for the update dialog, inherit from the theme, no from this component theme
177
191
  const theme = getZonosStoreTheme(zonosStore.appearance.theme);
@@ -179,7 +193,7 @@ const ZonosCustomerInfo = /*@__PURE__*/ proxyCustomElement(class ZonosCustomerIn
179
193
  if (this.showErrorBanner) {
180
194
  this.showErrorBanner = !this.handleValidate();
181
195
  }
182
- 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')), this.showErrorBanner && (h("zonos-banner", { class: "zonos--error-banner", intent: "error" }, translate('Missing required fields. Make sure all fields are completed.'))), h("zonos-link-authentication", { defaultEmail: (_a = this.defaultAddress) === null || _a === void 0 ? void 0 : _a.email, titleText: translate('Contact') }), h("zonos-address", { defaultAddress: this.defaultAddress, titleText: translate('Address'), type: "shipping" }), h("zonos-checkbox", { class: "zonos--shipping-same-as-billing-cbx", isChecked: stripeStore.stripeShippingSameAsBilling, label: translate('Shipping address same as billing'), onCheckboxSelected: e => {
196
+ 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')), this.showErrorBanner && (h("zonos-banner", { class: "zonos--error-banner", intent: "error" }, translate('Missing required fields. Make sure all fields are completed.'))), h("zonos-link-authentication", { defaultEmail: (_b = this.defaultAddress) === null || _b === void 0 ? void 0 : _b.email, titleText: translate('Contact') }), h("zonos-address", { defaultAddress: this.defaultAddress, titleText: translate('Address'), type: "shipping" }), h("zonos-checkbox", { class: "zonos--shipping-same-as-billing-cbx", isChecked: stripeStore.stripeShippingSameAsBilling, label: translate('Shipping address same as billing'), onCheckboxSelected: e => {
183
197
  stripeStore.stripeShippingSameAsBilling = e.detail;
184
198
  } }), 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, loading: this.continueLoading, onClick: () => this.continueClickHandler(), size: "lg",
185
199
  // use primary type when on mobile mode
@@ -203,6 +217,8 @@ const ZonosCustomerInfo = /*@__PURE__*/ proxyCustomElement(class ZonosCustomerIn
203
217
  "isMobile": [4, "is-mobile"],
204
218
  "defaultAddress": [16],
205
219
  "showErrorBanner": [32],
220
+ "shippingCountry": [32],
221
+ "isCheckingForRestrictedItems": [32],
206
222
  "isValidatingAddress": [32],
207
223
  "invalidShippingCharacterList": [32],
208
224
  "invalidBillingCharacterList": [32],
@@ -1,5 +1,5 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
- import { H as currencyFormat, a as localizationStore } from './stripe.js';
2
+ import { I as currencyFormat, a as localizationStore } from './stripe.js';
3
3
  import { a as translate } from './translationStore.js';
4
4
  import { z as zonosStore } from './zonosStore.js';
5
5
  import { c as classes } from './classes.js';
@@ -1,6 +1,6 @@
1
1
  import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
2
  import { _ as _root, e as _baseGetTag, i as isObjectLike_1, f as isObject_1, z as zonosStore, g as getZonosStoreTheme, m as mergeConfig } from './zonosStore.js';
3
- import { u as handleFetch, l as logError, a as localizationStore, A as isValidSelector, C as getZCountryUrlParam, D as setZCountryUrlParam, b as log, E as currencyDisplay, F as currencyConvertAndFormat, G as currencyConvert, H as currencyFormat } from './stripe.js';
3
+ import { v as handleFetch, l as logError, a as localizationStore, B as isValidSelector, D as getZCountryUrlParam, E as setZCountryUrlParam, d as log, F as currencyDisplay, G as currencyConvertAndFormat, H as currencyConvert, I as currencyFormat } from './stripe.js';
4
4
  import { a as translate } from './translationStore.js';
5
5
  import { c as classes } from './classes.js';
6
6
  import { g as getHasMoreSpaceOnRight, d as defineCustomElement$9 } from './zonos-hello-dialog2.js';
@@ -1,5 +1,5 @@
1
1
  import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
- import { x as localizationStoreUpdateSelectedLocale, a as localizationStore } from './stripe.js';
2
+ import { y as localizationStoreUpdateSelectedLocale, a as localizationStore } from './stripe.js';
3
3
  import { a as translate } from './translationStore.js';
4
4
  import { a as zonosStoreFontFamily } from './zonosStore.js';
5
5
  import { l as languages } from './ILanguage.js';
@@ -1,5 +1,5 @@
1
1
  import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
- import { c as cartStore } from './stripe.js';
2
+ import { b as cartStoreHasOneEligibleItem, c as cartStore } from './stripe.js';
3
3
  import { a as translate } from './translationStore.js';
4
4
  import { z as zonosStore } from './zonosStore.js';
5
5
  import { i as isCheckoutMobile } from './isCheckoutMobile.js';
@@ -31,6 +31,7 @@ const ZonosReview = /*@__PURE__*/ proxyCustomElement(class ZonosReview extends H
31
31
  this.isMobile = isCheckoutMobile(this.mobile);
32
32
  }
33
33
  render() {
34
+ const total = cartStoreHasOneEligibleItem() ? cartStore.total : 0;
34
35
  const titleTextType = this.isMobile ? 'boldSubheader' : 'semiBoldLabel';
35
36
  const totalTextType = this.isMobile
36
37
  ? 'boldSubheader'
@@ -50,7 +51,7 @@ const ZonosReview = /*@__PURE__*/ proxyCustomElement(class ZonosReview extends H
50
51
  'zonos--review zonos--elements',
51
52
  this.isMobile && 'mobile',
52
53
  ]) }, h("div", { class: "zonos--title" }, h("zonos-text", { textColor: titleTextColor, type: titleTextType }, translate('Pay'), " ", zonosStore.organizationName), renderCollapseIcon()), h("div", { class: "zonos--total-pay" }, h("zonos-text", { type: totalTextType }, formatCurrency({
53
- amount: cartStore.total,
54
+ amount: total,
54
55
  currency: cartStore.currency,
55
56
  })))));
56
57
  }
@@ -1,5 +1,5 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
- import { c as cartStore, y as cartStoreUpdateSelectedShippingOption, z as cartStoreGetShippingTransitInfo } from './stripe.js';
2
+ import { c as cartStore, z as cartStoreUpdateSelectedShippingOption, A as cartStoreGetShippingTransitInfo } from './stripe.js';
3
3
  import { a as translate } from './translationStore.js';
4
4
  import { t as trackConversionEvent } from './trackConversionEvent.js';
5
5
  import { f as formatCurrency } from './formatCurrency.js';