@zonos/elements 1.3.205 → 1.3.206

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 (125) hide show
  1. package/dist/cjs/{cart-193af95a.js → cart-3d961c6e.js} +1 -1
  2. package/dist/cjs/index.cjs.js +7 -7
  3. package/dist/cjs/{localization-88da0959.js → localization-ff33875b.js} +420 -181
  4. package/dist/cjs/{paypal-8525404c.js → paypal-dee5c109.js} +2 -2
  5. package/dist/cjs/zonos-address_11.cjs.entry.js +2 -2
  6. package/dist/cjs/zonos-cart-items_14.cjs.entry.js +3 -3
  7. package/dist/cjs/zonos-checkout.cjs.entry.js +3 -3
  8. package/dist/cjs/zonos-controller.cjs.entry.js +2 -2
  9. package/dist/cjs/zonos-country-flag.cjs.entry.js +1 -1
  10. package/dist/cjs/zonos-country-select_4.cjs.entry.js +1 -1
  11. package/dist/cjs/zonos-empty-state-payment_4.cjs.entry.js +3 -3
  12. package/dist/cjs/zonos-hello-dialog.cjs.entry.js +82 -24
  13. package/dist/cjs/zonos-hello.cjs.entry.js +1 -1
  14. package/dist/cjs/zonos-language-select_2.cjs.entry.js +1 -1
  15. package/dist/collection/components/hello/zonos-hello-dialog/zonos-hello-dialog.js +81 -23
  16. package/dist/collection/components/store/translationStore/strings.arabic.js +21 -9
  17. package/dist/collection/components/store/translationStore/strings.base.js +21 -10
  18. package/dist/collection/components/store/translationStore/strings.chinese.js +21 -9
  19. package/dist/collection/components/store/translationStore/strings.danish.js +21 -9
  20. package/dist/collection/components/store/translationStore/strings.dutch.js +21 -9
  21. package/dist/collection/components/store/translationStore/strings.french.js +21 -9
  22. package/dist/collection/components/store/translationStore/strings.german.js +21 -9
  23. package/dist/collection/components/store/translationStore/strings.hebrew.js +21 -9
  24. package/dist/collection/components/store/translationStore/strings.indonesian.js +21 -9
  25. package/dist/collection/components/store/translationStore/strings.italian.js +21 -9
  26. package/dist/collection/components/store/translationStore/strings.japanese.js +21 -9
  27. package/dist/collection/components/store/translationStore/strings.korean.js +21 -9
  28. package/dist/collection/components/store/translationStore/strings.norwegian.js +21 -9
  29. package/dist/collection/components/store/translationStore/strings.polish.js +21 -9
  30. package/dist/collection/components/store/translationStore/strings.portuguese.js +21 -9
  31. package/dist/collection/components/store/translationStore/strings.russian.js +21 -9
  32. package/dist/collection/components/store/translationStore/strings.spanish.js +21 -9
  33. package/dist/collection/components/store/translationStore/strings.swedish.js +21 -9
  34. package/dist/collection/components/store/translationStore/strings.turkish.js +21 -9
  35. package/dist/collection/components/store/translationStore/strings.vietnamese.js +21 -9
  36. package/dist/esm/{cart-a921e0b7.js → cart-5835676d.js} +1 -1
  37. package/dist/esm/index.js +7 -7
  38. package/dist/esm/{localization-a2b8f9ed.js → localization-4c7f64e8.js} +420 -181
  39. package/dist/esm/{paypal-67d51f03.js → paypal-b4f106be.js} +2 -2
  40. package/dist/esm/zonos-address_11.entry.js +2 -2
  41. package/dist/esm/zonos-cart-items_14.entry.js +3 -3
  42. package/dist/esm/zonos-checkout.entry.js +3 -3
  43. package/dist/esm/zonos-controller.entry.js +2 -2
  44. package/dist/esm/zonos-country-flag.entry.js +1 -1
  45. package/dist/esm/zonos-country-select_4.entry.js +1 -1
  46. package/dist/esm/zonos-empty-state-payment_4.entry.js +3 -3
  47. package/dist/esm/zonos-hello-dialog.entry.js +82 -24
  48. package/dist/esm/zonos-hello.entry.js +1 -1
  49. package/dist/esm/zonos-language-select_2.entry.js +1 -1
  50. package/dist/esm-es5/{cart-a921e0b7.js → cart-5835676d.js} +1 -1
  51. package/dist/esm-es5/index.js +1 -1
  52. package/dist/esm-es5/localization-4c7f64e8.js +1 -0
  53. package/dist/esm-es5/{paypal-67d51f03.js → paypal-b4f106be.js} +1 -1
  54. package/dist/esm-es5/zonos-address_11.entry.js +1 -1
  55. package/dist/esm-es5/zonos-cart-items_14.entry.js +1 -1
  56. package/dist/esm-es5/zonos-checkout.entry.js +1 -1
  57. package/dist/esm-es5/zonos-controller.entry.js +1 -1
  58. package/dist/esm-es5/zonos-country-flag.entry.js +1 -1
  59. package/dist/esm-es5/zonos-country-select_4.entry.js +1 -1
  60. package/dist/esm-es5/zonos-empty-state-payment_4.entry.js +1 -1
  61. package/dist/esm-es5/zonos-hello-dialog.entry.js +1 -1
  62. package/dist/esm-es5/zonos-hello.entry.js +1 -1
  63. package/dist/esm-es5/zonos-language-select_2.entry.js +1 -1
  64. package/dist/scripts/index.js +1 -1
  65. package/dist/scripts/loadZonos.js +1 -1
  66. package/dist/scripts/zonos.js +1 -1
  67. package/dist/types/components/hello/zonos-hello-dialog/zonos-hello-dialog.d.ts +3 -0
  68. package/dist/types/components/store/translationStore/strings.arabic.d.ts +18 -6
  69. package/dist/types/components/store/translationStore/strings.base.d.ts +18 -6
  70. package/dist/types/components/store/translationStore/strings.chinese.d.ts +18 -6
  71. package/dist/types/components/store/translationStore/strings.danish.d.ts +18 -6
  72. package/dist/types/components/store/translationStore/strings.dutch.d.ts +18 -6
  73. package/dist/types/components/store/translationStore/strings.french.d.ts +18 -6
  74. package/dist/types/components/store/translationStore/strings.german.d.ts +18 -6
  75. package/dist/types/components/store/translationStore/strings.hebrew.d.ts +18 -6
  76. package/dist/types/components/store/translationStore/strings.indonesian.d.ts +18 -6
  77. package/dist/types/components/store/translationStore/strings.italian.d.ts +18 -6
  78. package/dist/types/components/store/translationStore/strings.japanese.d.ts +18 -6
  79. package/dist/types/components/store/translationStore/strings.korean.d.ts +18 -6
  80. package/dist/types/components/store/translationStore/strings.norwegian.d.ts +18 -6
  81. package/dist/types/components/store/translationStore/strings.polish.d.ts +18 -6
  82. package/dist/types/components/store/translationStore/strings.portuguese.d.ts +18 -6
  83. package/dist/types/components/store/translationStore/strings.russian.d.ts +18 -6
  84. package/dist/types/components/store/translationStore/strings.spanish.d.ts +18 -6
  85. package/dist/types/components/store/translationStore/strings.swedish.d.ts +18 -6
  86. package/dist/types/components/store/translationStore/strings.turkish.d.ts +18 -6
  87. package/dist/types/components/store/translationStore/strings.vietnamese.d.ts +18 -6
  88. package/dist/types/types/index.d.ts +1 -0
  89. package/dist/zonos-elements/assets/RemoveIcon.svg +1 -1
  90. package/dist/zonos-elements/index.esm.js +1 -1
  91. package/dist/zonos-elements/{p-16e858f9.entry.js → p-051e0e48.entry.js} +1 -1
  92. package/dist/zonos-elements/{p-8debefec.system.entry.js → p-265af369.system.entry.js} +1 -1
  93. package/dist/zonos-elements/p-30778fde.system.entry.js +1 -0
  94. package/dist/zonos-elements/{p-ebe08e44.entry.js → p-3505e4c4.entry.js} +1 -1
  95. package/dist/zonos-elements/{p-6d467dfb.entry.js → p-3a50124e.entry.js} +1 -1
  96. package/dist/zonos-elements/p-3ee44728.system.js +1 -1
  97. package/dist/zonos-elements/p-41c1d7c4.entry.js +1 -0
  98. package/dist/zonos-elements/{p-87e807b4.entry.js → p-42a9557f.entry.js} +1 -1
  99. package/dist/zonos-elements/{p-90c185ac.entry.js → p-47e2cd31.entry.js} +1 -1
  100. package/dist/zonos-elements/{p-d649fb9a.system.entry.js → p-4cb8b87f.system.entry.js} +1 -1
  101. package/dist/zonos-elements/p-4e9c8f9e.system.js +1 -0
  102. package/dist/zonos-elements/{p-05a91fe6.entry.js → p-5616b304.entry.js} +1 -1
  103. package/dist/zonos-elements/{p-dfe7d1dd.js → p-658936c9.js} +2 -2
  104. package/dist/zonos-elements/{p-be53e893.system.js → p-666164d9.system.js} +1 -1
  105. package/dist/zonos-elements/{p-28fcd277.system.js → p-91c996d3.system.js} +1 -1
  106. package/dist/zonos-elements/{p-f98276ed.entry.js → p-a2b55d11.entry.js} +1 -1
  107. package/dist/zonos-elements/{p-3c921768.system.entry.js → p-aafcd40f.system.entry.js} +1 -1
  108. package/dist/zonos-elements/{p-0d7af8be.system.entry.js → p-abe218ab.system.entry.js} +1 -1
  109. package/dist/zonos-elements/{p-dd0f8f06.system.entry.js → p-ba027b70.system.entry.js} +1 -1
  110. package/dist/zonos-elements/{p-91fc6911.entry.js → p-bab19e2a.entry.js} +1 -1
  111. package/dist/zonos-elements/{p-5fbaa153.system.entry.js → p-c4e0f49a.system.entry.js} +1 -1
  112. package/dist/zonos-elements/{p-69577745.system.js → p-d5f7f7e6.system.js} +1 -1
  113. package/dist/zonos-elements/{p-dcbd57df.entry.js → p-dbd23bea.entry.js} +1 -1
  114. package/dist/zonos-elements/{p-20ac92e1.system.entry.js → p-ea88baa9.system.entry.js} +1 -1
  115. package/dist/zonos-elements/p-edcfb3a3.js +1 -0
  116. package/dist/zonos-elements/{p-4329f616.system.entry.js → p-f4d741de.system.entry.js} +1 -1
  117. package/dist/zonos-elements/{p-ee7a661d.system.entry.js → p-f8bfc320.system.entry.js} +1 -1
  118. package/dist/zonos-elements/{p-8e000d8d.js → p-f9664811.js} +1 -1
  119. package/dist/zonos-elements/zonos-elements.esm.js +1 -1
  120. package/package.json +1 -1
  121. package/dist/esm-es5/localization-a2b8f9ed.js +0 -1
  122. package/dist/zonos-elements/p-0d2df4d2.system.js +0 -1
  123. package/dist/zonos-elements/p-43b72ad6.system.entry.js +0 -1
  124. package/dist/zonos-elements/p-8609e956.js +0 -1
  125. package/dist/zonos-elements/p-e0ebbefe.entry.js +0 -1
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
2
 
3
3
  const zonosStore = require('./zonosStore-7c1e1bc1.js');
4
- const cart = require('./cart-193af95a.js');
5
- const localization = require('./localization-88da0959.js');
4
+ const cart = require('./cart-3d961c6e.js');
5
+ const localization = require('./localization-ff33875b.js');
6
6
  const handleFetch = require('./handleFetch-969d05d8.js');
7
7
  const isDarkColor = require('./isDarkColor-35e8daec.js');
8
8
 
@@ -3,8 +3,8 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-1c710d00.js');
6
- const cart = require('./cart-193af95a.js');
7
- const localization = require('./localization-88da0959.js');
6
+ const cart = require('./cart-3d961c6e.js');
7
+ const localization = require('./localization-ff33875b.js');
8
8
  const zonosStore = require('./zonosStore-7c1e1bc1.js');
9
9
  const handleFetch = require('./handleFetch-969d05d8.js');
10
10
  const shouldRenderTaxIdInput = require('./shouldRenderTaxIdInput-9b8a8de1.js');
@@ -3,10 +3,10 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-1c710d00.js');
6
- const cart = require('./cart-193af95a.js');
7
- const localization = require('./localization-88da0959.js');
6
+ const cart = require('./cart-3d961c6e.js');
7
+ const localization = require('./localization-ff33875b.js');
8
8
  const classes = require('./classes-b7918f56.js');
9
- const paypal = require('./paypal-8525404c.js');
9
+ const paypal = require('./paypal-dee5c109.js');
10
10
  const zonosStore = require('./zonosStore-7c1e1bc1.js');
11
11
  const handleFetch = require('./handleFetch-969d05d8.js');
12
12
  const createCustomEvent = require('./createCustomEvent-7b6fad95.js');
@@ -3,9 +3,9 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-1c710d00.js');
6
- const cart = require('./cart-193af95a.js');
7
- const paypal = require('./paypal-8525404c.js');
8
- const localization = require('./localization-88da0959.js');
6
+ const cart = require('./cart-3d961c6e.js');
7
+ const paypal = require('./paypal-dee5c109.js');
8
+ const localization = require('./localization-ff33875b.js');
9
9
  const zonosStore = require('./zonosStore-7c1e1bc1.js');
10
10
  const handleFetch = require('./handleFetch-969d05d8.js');
11
11
  const classes = require('./classes-b7918f56.js');
@@ -3,8 +3,8 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-1c710d00.js');
6
- const cart = require('./cart-193af95a.js');
7
- const localization = require('./localization-88da0959.js');
6
+ const cart = require('./cart-3d961c6e.js');
7
+ const localization = require('./localization-ff33875b.js');
8
8
  const zonosStore = require('./zonosStore-7c1e1bc1.js');
9
9
  const getGenericSettingsOverride = require('./getGenericSettingsOverride-c0ca32b9.js');
10
10
  const handleFetch = require('./handleFetch-969d05d8.js');
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-1c710d00.js');
6
- const localization = require('./localization-88da0959.js');
6
+ const localization = require('./localization-ff33875b.js');
7
7
  const zonosStore = require('./zonosStore-7c1e1bc1.js');
8
8
  const classes = require('./classes-b7918f56.js');
9
9
  require('./handleFetch-969d05d8.js');
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-1c710d00.js');
6
- const localization = require('./localization-88da0959.js');
6
+ const localization = require('./localization-ff33875b.js');
7
7
  const zonosStore = require('./zonosStore-7c1e1bc1.js');
8
8
  const formatStringWithLinks = require('./formatStringWithLinks-52341fc7.js');
9
9
  const isDarkColor = require('./isDarkColor-35e8daec.js');
@@ -6,10 +6,10 @@ const index = require('./index-1c710d00.js');
6
6
  const zonosStore = require('./zonosStore-7c1e1bc1.js');
7
7
  const classes = require('./classes-b7918f56.js');
8
8
  const getBorderRadius = require('./getBorderRadius-c424eb05.js');
9
- const cart = require('./cart-193af95a.js');
10
- const localization = require('./localization-88da0959.js');
9
+ const cart = require('./cart-3d961c6e.js');
10
+ const localization = require('./localization-ff33875b.js');
11
11
  const handleFetch = require('./handleFetch-969d05d8.js');
12
- const paypal = require('./paypal-8525404c.js');
12
+ const paypal = require('./paypal-dee5c109.js');
13
13
  require('./VarianceTest-0cb1e118.js');
14
14
  require('./isDarkColor-35e8daec.js');
15
15
 
@@ -3,11 +3,12 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-1c710d00.js');
6
- const localization = require('./localization-88da0959.js');
6
+ const localization = require('./localization-ff33875b.js');
7
7
  const zonosStore = require('./zonosStore-7c1e1bc1.js');
8
8
  const classes = require('./classes-b7918f56.js');
9
9
  const formatStringWithLinks = require('./formatStringWithLinks-52341fc7.js');
10
10
  const getHasMoreSpaceOnRight = require('./getHasMoreSpaceOnRight-4c94667f.js');
11
+ const TaxId = require('./TaxId-12acedde.js');
11
12
  require('./handleFetch-969d05d8.js');
12
13
  require('./VarianceTest-0cb1e118.js');
13
14
 
@@ -57,10 +58,6 @@ const RemoveIcon = `<svg xmlns="https://www.w3.org/2000/svg" width="24" height="
57
58
  const zonosHelloDialogCss = ":host{font-family:var(--zonos--font-family, Inter), Inter;display:block;white-space:normal}:host *{font-family:var(--zonos--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 .zonos--hello-country-flag{height:18px;width:18px;position:relative;overflow:hidden;border-radius:30px;-webkit-box-shadow:var(--zonos-elements-v3-shadow-medium);box-shadow:var(--zonos-elements-v3-shadow-medium);z-index:10;justify-self:center}:host .zonos--hello-dialog{position:absolute;background:var(--zonos-elements-surface-color);width:100vw;max-width:430px;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;max-height:600px;border-radius:var(--zonos-elements-radius-12);outline:none;-webkit-box-shadow:var(--zonos-elements-v3-shadow-xxl);box-shadow:var(--zonos-elements-v3-shadow-xxl);overflow-y:auto;top:-2px;right:-2px;opacity:0;-webkit-transition:opacity 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;transition:opacity 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;transition:opacity 0.3s ease-in-out, transform 0.3s ease-in-out;transition:opacity 0.3s ease-in-out, transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:top right;transform-origin:top right;z-index:1001}:host .zonos--hello-dialog .zonos--hello-dialog-header{text-align:center}:host .zonos--hello-dialog.zonos--hello-dialog-animate-from-left{-webkit-transform-origin:top left;transform-origin:top left;right:unset;left:-2px}:host .zonos--hello-dialog.zonos--hello-dialog-animate-from-bottom{-webkit-transform-origin:bottom right;transform-origin:bottom right;bottom:calc(100% - 32px);top:unset}:host .zonos--hello-dialog.zonos--hello-dialog-animate-from-bottom.zonos--hello-dialog-animate-from-left{-webkit-transform-origin:bottom left;transform-origin:bottom left}:host .zonos--hello-dialog::-webkit-scrollbar{width:12px;height:12px}:host .zonos--hello-dialog::-webkit-scrollbar-track{background:#f5f5f5;border-top-right-radius:var(--zonos-elements-radius-12);border-bottom-right-radius:var(--zonos-elements-radius-12)}:host .zonos--hello-dialog::-webkit-scrollbar-thumb{border-radius:10px;background:#ccc;border:4px solid transparent;background-clip:content-box}:host .zonos--hello-dialog::-webkit-scrollbar-thumb:hover{background:#999}:host .zonos--hello-dialog .zonos--animate-content{opacity:0;height:0;-webkit-transition:all 0.3s ease-in-out;transition:all 0.3s ease-in-out}:host .zonos--hello-dialog .zonos--show-animate-content{opacity:1;height:100%}:host .zonos--hello-dialog.zonos--hello-dialog-open{opacity:1;-webkit-transform:scale(1);transform:scale(1)}:host .zonos--hello-dialog .zonos--close-button{position:absolute;right:8px;top:8px;width:var(--zonos-elements-size-md);height:var(--zonos-elements-size-md);display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;cursor:pointer;z-index:10}:host .zonos--hello-dialog .zonos--close-button:hover{background:var(--zonos-elements-hover-color);border-radius:var(--zonos-elements-radius-6)}:host .zonos--hello-dialog .zonos--hello-dialog-content{padding:16px}:host .zonos--hello-dialog .zonos--hello-dialog-content .zonos--hello-country-flag{border-radius:var(--zonos-elements-radius-4);width:32px;height:24px}:host .zonos--hello-dialog .zonos--flex-message{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:12px}:host .zonos--hello-dialog.zonos--hello-dialog-mobile-override{position:-webkit-sticky;position:sticky;top:unset;left:unset;right:unset;bottom:0;width:100vw;max-width:100vw;max-height:500px;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;-webkit-transform:scaleY(0);transform:scaleY(0);border-radius:0;-webkit-transform-origin:bottom;transform-origin:bottom}@media (max-height: 600px){:host .zonos--hello-dialog.zonos--hello-dialog-mobile-override{max-height:80vh}}:host .zonos--hello-dialog.zonos--hello-dialog-mobile-override.zonos--hello-dialog-animate-from-left{-webkit-transform-origin:bottom;transform-origin:bottom}:host .zonos--hello-dialog.zonos--hello-dialog-mobile-override.zonos--hello-dialog-open{opacity:1;-webkit-transform:scaleY(1);transform:scaleY(1)}@media (max-width: 768px){:host .zonos--hello-dialog{position:-webkit-sticky;position:sticky;top:unset;left:unset;right:unset;bottom:0;width:100vw;max-width:100vw;max-height:500px;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;-webkit-transform:scaleY(0);transform:scaleY(0);border-radius:0;-webkit-transform-origin:bottom;transform-origin:bottom}}@media (max-width: 768px) and (max-height: 600px){:host .zonos--hello-dialog{max-height:80vh}}@media (max-width: 768px){:host .zonos--hello-dialog.zonos--hello-dialog-animate-from-left{-webkit-transform-origin:bottom;transform-origin:bottom}:host .zonos--hello-dialog.zonos--hello-dialog-open{opacity:1;-webkit-transform:scaleY(1);transform:scaleY(1)}}";
58
59
  const ZonosHelloDialogStyle0 = zonosHelloDialogCss;
59
60
 
60
- const dutyTaxMessage_AU_lowValueGST = `${localization.translate('The low-value GST law passed July 1st, 2018 applies to this retailer.')} ${wrapStringWithLink({
61
- href: 'https://zonos.com/docs/global-ecommerce/landed-cost/tax-remittance/australia-gst',
62
- text: localization.translate('Learn more.'),
63
- })}`;
64
61
  const ZonosHelloDialog = class {
65
62
  constructor(hostRef) {
66
63
  index.registerInstance(this, hostRef);
@@ -126,18 +123,25 @@ const ZonosHelloDialog = class {
126
123
  if (!countryCode || !this.hasTaxId()) {
127
124
  return false;
128
125
  }
129
- return ['AU'].includes(countryCode);
126
+ const countryCodes = [
127
+ 'AU',
128
+ 'NZ',
129
+ 'GB',
130
+ 'NO',
131
+ 'SG',
132
+ ...TaxId.euCountryCodes,
133
+ ];
134
+ return countryCodes.includes(countryCode);
130
135
  };
131
136
  this.getDutyMessage = () => {
132
- const { countryLandedCost } = localization.localizationStore;
137
+ const countryLandedCost = localization.localizationStore.countryLandedCost;
133
138
  // Our Robby API spells deminimis wrong here
134
139
  const dutyDeminimis = (countryLandedCost === null || countryLandedCost === void 0 ? void 0 : countryLandedCost.dutyDeminimus)
135
140
  ? localization.currencyFormat({ amount: countryLandedCost.dutyDeminimus })
136
141
  : null;
137
142
  // If deminimis is undefined or null, assume it's $0
138
- return dutyDeminimis &&
139
- !this.isNoThresholdCountry(countryLandedCost === null || countryLandedCost === void 0 ? void 0 : countryLandedCost.countryCode)
140
- ? localization.translate('Spend [threshold] duty free.', {
143
+ return dutyDeminimis
144
+ ? localization.translate('Spend up to [threshold] duty free.', {
141
145
  threshold: dutyDeminimis,
142
146
  })
143
147
  : localization.translate('Duties will apply to all orders.');
@@ -150,15 +154,31 @@ const ZonosHelloDialog = class {
150
154
  : null;
151
155
  return taxDeminimis &&
152
156
  !this.isNoThresholdCountry(countryLandedCost === null || countryLandedCost === void 0 ? void 0 : countryLandedCost.countryCode)
153
- ? localization.translate('Spend [threshold] tax free.', {
157
+ ? localization.translate('Spend up to [threshold] tax free.', {
154
158
  threshold: taxDeminimis,
155
159
  })
156
160
  : localization.translate('Taxes will apply to all orders.');
157
161
  };
162
+ this.getEuDutyTaxMessage = (landedCost) => {
163
+ return [
164
+ `${localization.translate('Due to the IOSS tax law, all orders will be assessed at [percentage] VAT regardless of order total.', {
165
+ percentage: `${landedCost.vatTaxRate * 100}%`,
166
+ })} ${wrapStringWithLink({
167
+ href: 'https://zonos.com/docs/global-ecommerce/landed-cost/tax-remittance/european-ioss',
168
+ text: localization.translate('Learn more.'),
169
+ })}`,
170
+ ];
171
+ };
158
172
  this.getUkDutyTaxMessage = (landedCost) => {
159
173
  if (landedCost.allowLowValueOrders) {
160
- // show nothing if low value orders are allowed
161
- return null;
174
+ return [
175
+ `${localization.translate('Due to the UK tax law, all orders will be assessed at [percentage] VAT regardless of order total.', {
176
+ percentage: `${landedCost.vatTaxRate * 100}%`,
177
+ })} ${wrapStringWithLink({
178
+ href: 'https://zonos.com/docs/global-ecommerce/landed-cost/tax-remittance/european-ioss',
179
+ text: localization.translate('Learn more.'),
180
+ })}`,
181
+ ];
162
182
  }
163
183
  const dutyDeminimis = landedCost.dutyDeminimus;
164
184
  return [
@@ -170,13 +190,15 @@ const ZonosHelloDialog = class {
170
190
  };
171
191
  this.getAustraliaDutyTaxMessage = (landedCost) => {
172
192
  if (this.hasInclusivePrices()) {
173
- return [dutyTaxMessage_AU_lowValueGST];
193
+ return [];
174
194
  }
175
195
  return [
176
- localization.translate('Duties & taxes in Australia, VAT or GST is [percentage] and is due on all orders.', {
196
+ `${localization.translate('Due to the Australia tax law, all orders will be assessed at [percentage] GST regardless of order total.', {
177
197
  percentage: `${landedCost.vatTaxRate * 100}%`,
178
- }),
179
- dutyTaxMessage_AU_lowValueGST,
198
+ })} ${wrapStringWithLink({
199
+ href: 'https://zonos.com/docs/global-ecommerce/landed-cost/tax-remittance/australia-gst',
200
+ text: localization.translate('Learn more.'),
201
+ })}`,
180
202
  ];
181
203
  };
182
204
  this.getNewZealandDutyTaxMessge = (landedCost) => {
@@ -184,10 +206,38 @@ const ZonosHelloDialog = class {
184
206
  return null;
185
207
  }
186
208
  return [
187
- localization.translate('[percentage] GST due on any order above [threshold] along with an import entry transaction fee and MPI levy.', {
209
+ `${localization.translate('Due to the New Zealand tax law, all orders will be assessed at [percentage] GST regardless of order total.', {
188
210
  percentage: `${landedCost.vatTaxRate * 100}%`,
189
- threshold: localization.currencyFormat({ amount: landedCost.vatTaxDeminimus }),
190
- }),
211
+ })} ${wrapStringWithLink({
212
+ href: 'https://zonos.com/docs/guides/country-guides/new-zealand/new-zealand-import-taxes',
213
+ text: localization.translate('Learn more.'),
214
+ })}`,
215
+ ];
216
+ };
217
+ this.getNorwayDutyTaxMessage = (landedCost) => {
218
+ if (this.hasInclusivePrices()) {
219
+ return null;
220
+ }
221
+ return [
222
+ `${localization.translate('Due to the VOEC tax law, all orders will be assessed at [percentage] VAT regardless of order total.', {
223
+ percentage: `${landedCost.vatTaxRate * 100}%`,
224
+ })} ${wrapStringWithLink({
225
+ href: 'https://zonos.com/docs/guides/country-guides/norway-voec-scheme',
226
+ text: localization.translate('Learn more.'),
227
+ })}`,
228
+ ];
229
+ };
230
+ this.getSingaporeDutyTaxMessage = (landedCost) => {
231
+ if (this.hasInclusivePrices()) {
232
+ return null;
233
+ }
234
+ return [
235
+ `${localization.translate('Due to the Singapore tax law, all orders will be assessed at [percentage] GST regardless of order total.', {
236
+ percentage: `${landedCost.vatTaxRate * 100}%`,
237
+ })} ${wrapStringWithLink({
238
+ href: 'https://zonos.com/docs/global-ecommerce/landed-cost/tax-remittance/singapore-gst-settings',
239
+ text: localization.translate('Learn more.'),
240
+ })}`,
191
241
  ];
192
242
  };
193
243
  this.getInclusivePriceMessage = () => {
@@ -241,7 +291,15 @@ const ZonosHelloDialog = class {
241
291
  return this.getAustraliaDutyTaxMessage(localization.localizationStore.countryLandedCost);
242
292
  case 'NZ':
243
293
  return this.getNewZealandDutyTaxMessge(localization.localizationStore.countryLandedCost);
294
+ case 'NO':
295
+ return this.getNorwayDutyTaxMessage(localization.localizationStore.countryLandedCost);
296
+ case 'SG':
297
+ return this.getSingaporeDutyTaxMessage(localization.localizationStore.countryLandedCost);
244
298
  default:
299
+ // show EU duty tax message if country is in EU
300
+ if (TaxId.euCountryCodes.includes(localization.localizationStore.countryLandedCost.countryCode)) {
301
+ return this.getEuDutyTaxMessage(localization.localizationStore.countryLandedCost);
302
+ }
245
303
  // show nothing
246
304
  return null;
247
305
  }
@@ -279,18 +337,18 @@ const ZonosHelloDialog = class {
279
337
  const defaultMessage = formatStringWithLinks.formatStringWithLinks(defaultMessageStr);
280
338
  const currentPage = this.getCurrentPageEnum();
281
339
  const filteredMessages = customMessages.filter(x => x.pageName === currentPage);
282
- return (index.h(index.Host, { key: '7b6752f327fdefb40d272d30d50a5fd208ff69a6', class: "zonos--elements" }, index.h("div", { key: 'b03b78ddfb3a0d6cedb156161fd82ebe45926773', class: classes.classes([
340
+ return (index.h(index.Host, { key: '0830447fd72c987521c1790936f64948c28e368a', class: "zonos--elements" }, index.h("div", { key: '945b144257ac98cd3e18484b5df7c656967ed4bb', class: classes.classes([
283
341
  'zonos--hello-dialog',
284
342
  animateLeft && 'zonos--hello-dialog-animate-from-left',
285
343
  animateFromBottom && 'zonos--hello-dialog-animate-from-bottom',
286
344
  !!this.mobileLocationOverride &&
287
345
  'zonos--hello-dialog-mobile-override',
288
346
  this.isOpen && 'zonos--hello-dialog-open',
289
- ]), inert: !this.isOpen, ref: el => el && (this.dialogRef = el) }, !this.showCountrySelect && !this.showLanguageSelect && (index.h("div", { key: '367b5a0158679001cb3004d5d965a518cdc3b8ce' }, index.h("div", { key: '01dd9b2df5b20e61764274a6405118a7b42019f3', class: "zonos--hello-dialog-content" }, index.h("zonos-button", { key: 'ed49fe9a95fd6ace11669ee194d90eaae951d938', class: "zonos--close-button", icon: index.h("zonos-icon", { "aria-label": "Close Zonos Hello dialog", content: RemoveIcon }), noBackground: true, onClick: () => this.setIsOpen(false) }), index.h("zonos-v-stack", { key: '23d391b8f4a13a1b077333f7ac788306dbeb98d6', spacing: 24 }, index.h("zonos-country-flag", { key: '24c6682b66fe5aa5061bab0b260d6c6fed724f52', class: "zonos--hello-country-flag", countryCode: selectedCountryCode }), index.h("zonos-v-stack", { key: 'fcb2717fa3403337b507f64adb557bd300841a41', class: "zonos--hello-dialog-header", spacing: 4 }, index.h("zonos-text", { key: '013fbda529816a2a1f22fc9d524d087fd69145c8', type: "boldSubheader" }, welcomeMessage), index.h("zonos-text", { key: '2134a015a6e22f6e02db8935150055b04620eed8', innerHTML: defaultMessage, textColor: "gray-800" })), index.h("zonos-v-stack", { key: '67030faaca46fea72230037b594eb3d0abb18acb', spacing: 8 }, this.restrictedItems.map(item => {
347
+ ]), inert: !this.isOpen, ref: el => el && (this.dialogRef = el) }, !this.showCountrySelect && !this.showLanguageSelect && (index.h("div", { key: 'd4281bee820f6f1c0128a27a68637d9cf14bb9df' }, index.h("div", { key: '2eb86efbcf9a69fcad628fff00d6f4834026f720', class: "zonos--hello-dialog-content" }, index.h("zonos-button", { key: '54c1db50880af58304586091a2c96b63d21939b9', class: "zonos--close-button", icon: index.h("zonos-icon", { "aria-label": "Close Zonos Hello dialog", content: RemoveIcon }), noBackground: true, onClick: () => this.setIsOpen(false) }), index.h("zonos-v-stack", { key: '4814c176342c0a81379e499c9e9c9fff2611ca30', spacing: 24 }, index.h("zonos-country-flag", { key: 'a96e2f98b8d34d9c9b85e7b1989e6c29a9efb319', class: "zonos--hello-country-flag", countryCode: selectedCountryCode }), index.h("zonos-v-stack", { key: 'bdfcfa7d339c007df770101d8a63433d40be6ce2', class: "zonos--hello-dialog-header", spacing: 4 }, index.h("zonos-text", { key: '7bebb2baef3b43444325b8755d9de41f7617a30a', type: "boldSubheader" }, welcomeMessage), index.h("zonos-text", { key: 'cc5e7c2dda01e545a1d85bbbb1e5cab53ab27574', innerHTML: defaultMessage, textColor: "gray-800" })), index.h("zonos-v-stack", { key: 'dbd3743ea89e59796b8f0a7c90eb4bf2564212ad', spacing: 8 }, this.restrictedItems.map(item => {
290
348
  var _a;
291
349
  return item && (index.h("zonos-banner", { bannerTitle: item.name, intent: "error" }, (_a = item.itemRestrictions) === null || _a === void 0 ? void 0 : _a.map(x => (index.h("zonos-text", { textColor: "red-800" }, x === null || x === void 0 ? void 0 : x.note)))));
292
- }), index.h("zonos-card", { key: '21d50e218fd560e137b68e6d2a16edf118d18148', spacing: "12px" }, index.h("zonos-v-stack", { key: '70c333afd352aee4a92b47b58c267ec5c6ff122c', spacing: 12 }, hasInclusivePrices ? (index.h("div", { class: "zonos--flex-message" }, index.h("zonos-icon", { "aria-label": "Duty de minimis", content: InclusivePricingIcon }), index.h("zonos-text", null, inclusivePriceMessage))) : (index.h(index.Fragment, null, index.h("div", { class: "zonos--flex-message" }, index.h("zonos-icon", { "aria-label": "Duty de minimis", content: ImportIcon }), index.h("zonos-text", null, dutyDeMinimisMessage)), index.h("div", { class: "zonos--flex-message" }, index.h("zonos-icon", { "aria-label": "Tax de minimis", content: MoneyIcon }), index.h("zonos-text", null, taxDeMinimisMessage)))), additionalInformation === null || additionalInformation === void 0 ? void 0 :
293
- additionalInformation.map(info => (index.h("div", { class: "zonos--flex-message" }, index.h("zonos-icon", { "aria-label": "Additional information for buying goods from selected country", content: BagIcon }), index.h("zonos-text", { innerHTML: info })))))), filteredMessages.map(x => (index.h("zonos-custom-message", { icon: MessageIcon, message: x.message })))))), index.h("zonos-hello-dialog-footer", { key: '7fa2a3e7646668c37ad2026dcfe0d59d6fd350b8', appearanceSettings: this.appearanceSettings, setShowCountrySelect: value => this.setShowCountrySelect(value), setShowLanguageSelect: value => this.setShowLanguageSelect(value) }))), this.showCountrySelect && (index.h("div", { key: '9a59a41f8ffbef2361ada0d5390708232c829026' }, index.h("zonos-country-select", { key: '3f10795b4eb5695e9848e2c69611f1a4953f5370', handleOnClose: () => this.setShowCountrySelect(false) }))), this.showLanguageSelect && (index.h("div", { key: 'c4aa8b2d533e6735a587fc8c7eb217f52e1fc5c9' }, index.h("zonos-language-select", { key: 'eb75fbe3e7de95b0459d559ac7ee233b77873545', handleOnClose: () => this.setShowLanguageSelect(false) }))))));
350
+ }), index.h("zonos-card", { key: '428f00f603d782b9496d40049571e3ea9dad57ba', spacing: "12px" }, index.h("zonos-v-stack", { key: '1433a878c9782cb57cbe85d83bdbe090d0e5d610', spacing: 12 }, hasInclusivePrices ? (index.h("div", { class: "zonos--flex-message" }, index.h("zonos-icon", { "aria-label": "Duty de minimis", content: InclusivePricingIcon }), index.h("zonos-text", null, inclusivePriceMessage))) : (index.h(index.Fragment, null, index.h("div", { class: "zonos--flex-message" }, index.h("zonos-icon", { "aria-label": "Duty de minimis icon", content: ImportIcon }), index.h("zonos-text", { "aria-label": "Duty de minimis message" }, dutyDeMinimisMessage)), index.h("div", { class: "zonos--flex-message" }, index.h("zonos-icon", { "aria-label": "Tax de minimis icon", content: MoneyIcon }), index.h("zonos-text", { "aria-label": "Tax de minimis message" }, taxDeMinimisMessage)))), additionalInformation === null || additionalInformation === void 0 ? void 0 :
351
+ additionalInformation.map(info => (index.h("div", { class: "zonos--flex-message" }, index.h("zonos-icon", { "aria-label": "Additional information for buying goods from selected country icon", content: BagIcon }), index.h("zonos-text", { "aria-label": `Additional information for buying goods from selected country message`, innerHTML: info })))))), filteredMessages.map(x => (index.h("zonos-custom-message", { icon: MessageIcon, message: x.message })))))), index.h("zonos-hello-dialog-footer", { key: '09e8b05e240cd995e16c0f736df6ef66d9fff511', appearanceSettings: this.appearanceSettings, setShowCountrySelect: value => this.setShowCountrySelect(value), setShowLanguageSelect: value => this.setShowLanguageSelect(value) }))), this.showCountrySelect && (index.h("div", { key: '1ed01c7f23d1b1f5a1e95d39e614e748ea407d6f' }, index.h("zonos-country-select", { key: 'b8c249f2e9f902e444b22371e9581be7ab34f07a', handleOnClose: () => this.setShowCountrySelect(false) }))), this.showLanguageSelect && (index.h("div", { key: 'cc6066e1e0eba08130342cef80ecdcd8c2e53e49' }, index.h("zonos-language-select", { key: 'c803df7ce92321f72d48a39eddcf1bbd3e279738', handleOnClose: () => this.setShowLanguageSelect(false) }))))));
294
352
  }
295
353
  static get assetsDirs() { return ["assets"]; }
296
354
  static get watchers() { return {
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-1c710d00.js');
6
6
  const debounce = require('./debounce-0b9c0f8a.js');
7
- const localization = require('./localization-88da0959.js');
7
+ const localization = require('./localization-ff33875b.js');
8
8
  const zonosStore = require('./zonosStore-7c1e1bc1.js');
9
9
  const classes = require('./classes-b7918f56.js');
10
10
  const handleFetch = require('./handleFetch-969d05d8.js');
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-1c710d00.js');
6
- const localization = require('./localization-88da0959.js');
6
+ const localization = require('./localization-ff33875b.js');
7
7
  const zonosStore = require('./zonosStore-7c1e1bc1.js');
8
8
  const ILanguage = require('./ILanguage-98b04442.js');
9
9
  require('./handleFetch-969d05d8.js');
@@ -8,6 +8,7 @@ import { currencyFormat } from "../../utils/hello/currencyConversion/currencyFor
8
8
  import { getHasMoreSpaceAbove } from "../../utils/hello/getHasMoreSpaceAbove";
9
9
  import { getHasMoreSpaceOnRight } from "../../utils/hello/getHasMoreSpaceOnRight";
10
10
  import { wrapStringWithLink } from "../../utils/wrapStringWithLink";
11
+ import { euCountryCodes } from "../../../types/checkout/Tax";
11
12
  // eslint-disable-next-line no-relative-import-paths/no-relative-import-paths
12
13
  import BagIcon from "./assets/bagIcon.svg";
13
14
  // eslint-disable-next-line no-relative-import-paths/no-relative-import-paths
@@ -20,10 +21,6 @@ import MessageIcon from "./assets/messageIcon.svg";
20
21
  import MoneyIcon from "./assets/moneyIcon.svg";
21
22
  // eslint-disable-next-line no-relative-import-paths/no-relative-import-paths
22
23
  import RemoveIcon from "./assets/removeIcon.svg";
23
- const dutyTaxMessage_AU_lowValueGST = `${translate('The low-value GST law passed July 1st, 2018 applies to this retailer.')} ${wrapStringWithLink({
24
- href: 'https://zonos.com/docs/global-ecommerce/landed-cost/tax-remittance/australia-gst',
25
- text: translate('Learn more.'),
26
- })}`;
27
24
  export class ZonosHelloDialog {
28
25
  constructor() {
29
26
  /**
@@ -87,18 +84,25 @@ export class ZonosHelloDialog {
87
84
  if (!countryCode || !this.hasTaxId()) {
88
85
  return false;
89
86
  }
90
- return ['AU'].includes(countryCode);
87
+ const countryCodes = [
88
+ 'AU',
89
+ 'NZ',
90
+ 'GB',
91
+ 'NO',
92
+ 'SG',
93
+ ...euCountryCodes,
94
+ ];
95
+ return countryCodes.includes(countryCode);
91
96
  };
92
97
  this.getDutyMessage = () => {
93
- const { countryLandedCost } = localizationStore;
98
+ const countryLandedCost = localizationStore.countryLandedCost;
94
99
  // Our Robby API spells deminimis wrong here
95
100
  const dutyDeminimis = (countryLandedCost === null || countryLandedCost === void 0 ? void 0 : countryLandedCost.dutyDeminimus)
96
101
  ? currencyFormat({ amount: countryLandedCost.dutyDeminimus })
97
102
  : null;
98
103
  // If deminimis is undefined or null, assume it's $0
99
- return dutyDeminimis &&
100
- !this.isNoThresholdCountry(countryLandedCost === null || countryLandedCost === void 0 ? void 0 : countryLandedCost.countryCode)
101
- ? translate('Spend [threshold] duty free.', {
104
+ return dutyDeminimis
105
+ ? translate('Spend up to [threshold] duty free.', {
102
106
  threshold: dutyDeminimis,
103
107
  })
104
108
  : translate('Duties will apply to all orders.');
@@ -111,15 +115,31 @@ export class ZonosHelloDialog {
111
115
  : null;
112
116
  return taxDeminimis &&
113
117
  !this.isNoThresholdCountry(countryLandedCost === null || countryLandedCost === void 0 ? void 0 : countryLandedCost.countryCode)
114
- ? translate('Spend [threshold] tax free.', {
118
+ ? translate('Spend up to [threshold] tax free.', {
115
119
  threshold: taxDeminimis,
116
120
  })
117
121
  : translate('Taxes will apply to all orders.');
118
122
  };
123
+ this.getEuDutyTaxMessage = (landedCost) => {
124
+ return [
125
+ `${translate('Due to the IOSS tax law, all orders will be assessed at [percentage] VAT regardless of order total.', {
126
+ percentage: `${landedCost.vatTaxRate * 100}%`,
127
+ })} ${wrapStringWithLink({
128
+ href: 'https://zonos.com/docs/global-ecommerce/landed-cost/tax-remittance/european-ioss',
129
+ text: translate('Learn more.'),
130
+ })}`,
131
+ ];
132
+ };
119
133
  this.getUkDutyTaxMessage = (landedCost) => {
120
134
  if (landedCost.allowLowValueOrders) {
121
- // show nothing if low value orders are allowed
122
- return null;
135
+ return [
136
+ `${translate('Due to the UK tax law, all orders will be assessed at [percentage] VAT regardless of order total.', {
137
+ percentage: `${landedCost.vatTaxRate * 100}%`,
138
+ })} ${wrapStringWithLink({
139
+ href: 'https://zonos.com/docs/global-ecommerce/landed-cost/tax-remittance/european-ioss',
140
+ text: translate('Learn more.'),
141
+ })}`,
142
+ ];
123
143
  }
124
144
  const dutyDeminimis = landedCost.dutyDeminimus;
125
145
  return [
@@ -131,13 +151,15 @@ export class ZonosHelloDialog {
131
151
  };
132
152
  this.getAustraliaDutyTaxMessage = (landedCost) => {
133
153
  if (this.hasInclusivePrices()) {
134
- return [dutyTaxMessage_AU_lowValueGST];
154
+ return [];
135
155
  }
136
156
  return [
137
- translate('Duties & taxes in Australia, VAT or GST is [percentage] and is due on all orders.', {
157
+ `${translate('Due to the Australia tax law, all orders will be assessed at [percentage] GST regardless of order total.', {
138
158
  percentage: `${landedCost.vatTaxRate * 100}%`,
139
- }),
140
- dutyTaxMessage_AU_lowValueGST,
159
+ })} ${wrapStringWithLink({
160
+ href: 'https://zonos.com/docs/global-ecommerce/landed-cost/tax-remittance/australia-gst',
161
+ text: translate('Learn more.'),
162
+ })}`,
141
163
  ];
142
164
  };
143
165
  this.getNewZealandDutyTaxMessge = (landedCost) => {
@@ -145,10 +167,38 @@ export class ZonosHelloDialog {
145
167
  return null;
146
168
  }
147
169
  return [
148
- translate('[percentage] GST due on any order above [threshold] along with an import entry transaction fee and MPI levy.', {
170
+ `${translate('Due to the New Zealand tax law, all orders will be assessed at [percentage] GST regardless of order total.', {
149
171
  percentage: `${landedCost.vatTaxRate * 100}%`,
150
- threshold: currencyFormat({ amount: landedCost.vatTaxDeminimus }),
151
- }),
172
+ })} ${wrapStringWithLink({
173
+ href: 'https://zonos.com/docs/guides/country-guides/new-zealand/new-zealand-import-taxes',
174
+ text: translate('Learn more.'),
175
+ })}`,
176
+ ];
177
+ };
178
+ this.getNorwayDutyTaxMessage = (landedCost) => {
179
+ if (this.hasInclusivePrices()) {
180
+ return null;
181
+ }
182
+ return [
183
+ `${translate('Due to the VOEC tax law, all orders will be assessed at [percentage] VAT regardless of order total.', {
184
+ percentage: `${landedCost.vatTaxRate * 100}%`,
185
+ })} ${wrapStringWithLink({
186
+ href: 'https://zonos.com/docs/guides/country-guides/norway-voec-scheme',
187
+ text: translate('Learn more.'),
188
+ })}`,
189
+ ];
190
+ };
191
+ this.getSingaporeDutyTaxMessage = (landedCost) => {
192
+ if (this.hasInclusivePrices()) {
193
+ return null;
194
+ }
195
+ return [
196
+ `${translate('Due to the Singapore tax law, all orders will be assessed at [percentage] GST regardless of order total.', {
197
+ percentage: `${landedCost.vatTaxRate * 100}%`,
198
+ })} ${wrapStringWithLink({
199
+ href: 'https://zonos.com/docs/global-ecommerce/landed-cost/tax-remittance/singapore-gst-settings',
200
+ text: translate('Learn more.'),
201
+ })}`,
152
202
  ];
153
203
  };
154
204
  this.getInclusivePriceMessage = () => {
@@ -202,7 +252,15 @@ export class ZonosHelloDialog {
202
252
  return this.getAustraliaDutyTaxMessage(localizationStore.countryLandedCost);
203
253
  case 'NZ':
204
254
  return this.getNewZealandDutyTaxMessge(localizationStore.countryLandedCost);
255
+ case 'NO':
256
+ return this.getNorwayDutyTaxMessage(localizationStore.countryLandedCost);
257
+ case 'SG':
258
+ return this.getSingaporeDutyTaxMessage(localizationStore.countryLandedCost);
205
259
  default:
260
+ // show EU duty tax message if country is in EU
261
+ if (euCountryCodes.includes(localizationStore.countryLandedCost.countryCode)) {
262
+ return this.getEuDutyTaxMessage(localizationStore.countryLandedCost);
263
+ }
206
264
  // show nothing
207
265
  return null;
208
266
  }
@@ -240,18 +298,18 @@ export class ZonosHelloDialog {
240
298
  const defaultMessage = formatStringWithLinks(defaultMessageStr);
241
299
  const currentPage = this.getCurrentPageEnum();
242
300
  const filteredMessages = customMessages.filter(x => x.pageName === currentPage);
243
- return (h(Host, { key: '7b6752f327fdefb40d272d30d50a5fd208ff69a6', class: "zonos--elements" }, h("div", { key: 'b03b78ddfb3a0d6cedb156161fd82ebe45926773', class: classes([
301
+ return (h(Host, { key: '0830447fd72c987521c1790936f64948c28e368a', class: "zonos--elements" }, h("div", { key: '945b144257ac98cd3e18484b5df7c656967ed4bb', class: classes([
244
302
  'zonos--hello-dialog',
245
303
  animateLeft && 'zonos--hello-dialog-animate-from-left',
246
304
  animateFromBottom && 'zonos--hello-dialog-animate-from-bottom',
247
305
  !!this.mobileLocationOverride &&
248
306
  'zonos--hello-dialog-mobile-override',
249
307
  this.isOpen && 'zonos--hello-dialog-open',
250
- ]), inert: !this.isOpen, ref: el => el && (this.dialogRef = el) }, !this.showCountrySelect && !this.showLanguageSelect && (h("div", { key: '367b5a0158679001cb3004d5d965a518cdc3b8ce' }, h("div", { key: '01dd9b2df5b20e61764274a6405118a7b42019f3', class: "zonos--hello-dialog-content" }, h("zonos-button", { key: 'ed49fe9a95fd6ace11669ee194d90eaae951d938', class: "zonos--close-button", icon: h("zonos-icon", { "aria-label": "Close Zonos Hello dialog", content: RemoveIcon }), noBackground: true, onClick: () => this.setIsOpen(false) }), h("zonos-v-stack", { key: '23d391b8f4a13a1b077333f7ac788306dbeb98d6', spacing: 24 }, h("zonos-country-flag", { key: '24c6682b66fe5aa5061bab0b260d6c6fed724f52', class: "zonos--hello-country-flag", countryCode: selectedCountryCode }), h("zonos-v-stack", { key: 'fcb2717fa3403337b507f64adb557bd300841a41', class: "zonos--hello-dialog-header", spacing: 4 }, h("zonos-text", { key: '013fbda529816a2a1f22fc9d524d087fd69145c8', type: "boldSubheader" }, welcomeMessage), h("zonos-text", { key: '2134a015a6e22f6e02db8935150055b04620eed8', innerHTML: defaultMessage, textColor: "gray-800" })), h("zonos-v-stack", { key: '67030faaca46fea72230037b594eb3d0abb18acb', spacing: 8 }, this.restrictedItems.map(item => {
308
+ ]), inert: !this.isOpen, ref: el => el && (this.dialogRef = el) }, !this.showCountrySelect && !this.showLanguageSelect && (h("div", { key: 'd4281bee820f6f1c0128a27a68637d9cf14bb9df' }, h("div", { key: '2eb86efbcf9a69fcad628fff00d6f4834026f720', class: "zonos--hello-dialog-content" }, h("zonos-button", { key: '54c1db50880af58304586091a2c96b63d21939b9', class: "zonos--close-button", icon: h("zonos-icon", { "aria-label": "Close Zonos Hello dialog", content: RemoveIcon }), noBackground: true, onClick: () => this.setIsOpen(false) }), h("zonos-v-stack", { key: '4814c176342c0a81379e499c9e9c9fff2611ca30', spacing: 24 }, h("zonos-country-flag", { key: 'a96e2f98b8d34d9c9b85e7b1989e6c29a9efb319', class: "zonos--hello-country-flag", countryCode: selectedCountryCode }), h("zonos-v-stack", { key: 'bdfcfa7d339c007df770101d8a63433d40be6ce2', class: "zonos--hello-dialog-header", spacing: 4 }, h("zonos-text", { key: '7bebb2baef3b43444325b8755d9de41f7617a30a', type: "boldSubheader" }, welcomeMessage), h("zonos-text", { key: 'cc5e7c2dda01e545a1d85bbbb1e5cab53ab27574', innerHTML: defaultMessage, textColor: "gray-800" })), h("zonos-v-stack", { key: 'dbd3743ea89e59796b8f0a7c90eb4bf2564212ad', spacing: 8 }, this.restrictedItems.map(item => {
251
309
  var _a;
252
310
  return item && (h("zonos-banner", { bannerTitle: item.name, intent: "error" }, (_a = item.itemRestrictions) === null || _a === void 0 ? void 0 : _a.map(x => (h("zonos-text", { textColor: "red-800" }, x === null || x === void 0 ? void 0 : x.note)))));
253
- }), h("zonos-card", { key: '21d50e218fd560e137b68e6d2a16edf118d18148', spacing: "12px" }, h("zonos-v-stack", { key: '70c333afd352aee4a92b47b58c267ec5c6ff122c', spacing: 12 }, hasInclusivePrices ? (h("div", { class: "zonos--flex-message" }, h("zonos-icon", { "aria-label": "Duty de minimis", content: InclusivePricingIcon }), h("zonos-text", null, inclusivePriceMessage))) : (h(Fragment, null, h("div", { class: "zonos--flex-message" }, h("zonos-icon", { "aria-label": "Duty de minimis", content: ImportIcon }), h("zonos-text", null, dutyDeMinimisMessage)), h("div", { class: "zonos--flex-message" }, h("zonos-icon", { "aria-label": "Tax de minimis", content: MoneyIcon }), h("zonos-text", null, taxDeMinimisMessage)))), additionalInformation === null || additionalInformation === void 0 ? void 0 :
254
- additionalInformation.map(info => (h("div", { class: "zonos--flex-message" }, h("zonos-icon", { "aria-label": "Additional information for buying goods from selected country", content: BagIcon }), h("zonos-text", { innerHTML: info })))))), filteredMessages.map(x => (h("zonos-custom-message", { icon: MessageIcon, message: x.message })))))), h("zonos-hello-dialog-footer", { key: '7fa2a3e7646668c37ad2026dcfe0d59d6fd350b8', appearanceSettings: this.appearanceSettings, setShowCountrySelect: value => this.setShowCountrySelect(value), setShowLanguageSelect: value => this.setShowLanguageSelect(value) }))), this.showCountrySelect && (h("div", { key: '9a59a41f8ffbef2361ada0d5390708232c829026' }, h("zonos-country-select", { key: '3f10795b4eb5695e9848e2c69611f1a4953f5370', handleOnClose: () => this.setShowCountrySelect(false) }))), this.showLanguageSelect && (h("div", { key: 'c4aa8b2d533e6735a587fc8c7eb217f52e1fc5c9' }, h("zonos-language-select", { key: 'eb75fbe3e7de95b0459d559ac7ee233b77873545', handleOnClose: () => this.setShowLanguageSelect(false) }))))));
311
+ }), h("zonos-card", { key: '428f00f603d782b9496d40049571e3ea9dad57ba', spacing: "12px" }, h("zonos-v-stack", { key: '1433a878c9782cb57cbe85d83bdbe090d0e5d610', spacing: 12 }, hasInclusivePrices ? (h("div", { class: "zonos--flex-message" }, h("zonos-icon", { "aria-label": "Duty de minimis", content: InclusivePricingIcon }), h("zonos-text", null, inclusivePriceMessage))) : (h(Fragment, null, h("div", { class: "zonos--flex-message" }, h("zonos-icon", { "aria-label": "Duty de minimis icon", content: ImportIcon }), h("zonos-text", { "aria-label": "Duty de minimis message" }, dutyDeMinimisMessage)), h("div", { class: "zonos--flex-message" }, h("zonos-icon", { "aria-label": "Tax de minimis icon", content: MoneyIcon }), h("zonos-text", { "aria-label": "Tax de minimis message" }, taxDeMinimisMessage)))), additionalInformation === null || additionalInformation === void 0 ? void 0 :
312
+ additionalInformation.map(info => (h("div", { class: "zonos--flex-message" }, h("zonos-icon", { "aria-label": "Additional information for buying goods from selected country icon", content: BagIcon }), h("zonos-text", { "aria-label": `Additional information for buying goods from selected country message`, innerHTML: info })))))), filteredMessages.map(x => (h("zonos-custom-message", { icon: MessageIcon, message: x.message })))))), h("zonos-hello-dialog-footer", { key: '09e8b05e240cd995e16c0f736df6ef66d9fff511', appearanceSettings: this.appearanceSettings, setShowCountrySelect: value => this.setShowCountrySelect(value), setShowLanguageSelect: value => this.setShowLanguageSelect(value) }))), this.showCountrySelect && (h("div", { key: '1ed01c7f23d1b1f5a1e95d39e614e748ea407d6f' }, h("zonos-country-select", { key: 'b8c249f2e9f902e444b22371e9581be7ab34f07a', handleOnClose: () => this.setShowCountrySelect(false) }))), this.showLanguageSelect && (h("div", { key: 'cc6066e1e0eba08130342cef80ecdcd8c2e53e49' }, h("zonos-language-select", { key: 'c803df7ce92321f72d48a39eddcf1bbd3e279738', handleOnClose: () => this.setShowLanguageSelect(false) }))))));
255
313
  }
256
314
  static get is() { return "zonos-hello-dialog"; }
257
315
  static get encapsulation() { return "shadow"; }
@@ -152,8 +152,23 @@ export const stringsArabic = {
152
152
  'Due at delivery': {
153
153
  value: 'مستحق عند التسليم',
154
154
  },
155
- 'Duties & taxes in Australia, VAT or GST is [percentage] and is due on all orders.': {
156
- value: 'الرسوم والضرائب في أستراليا، ضريبة القيمة المضافة أو GST هي [percentage] وتستحق على جميع الطلبات.',
155
+ 'Due to the Australia tax law, all orders will be assessed at [percentage] GST regardless of order total.': {
156
+ value: 'بسبب قانون الضرائب الأسترالي، سيتم تقييم جميع الطلبات بنسبة [percentage] من ضريبة السلع والخدمات بغض النظر عن إجمالي الطلب.',
157
+ },
158
+ 'Due to the IOSS tax law, all orders will be assessed at [percentage] VAT regardless of order total.': {
159
+ value: 'بسبب قانون الضرائب IOSS، سيتم تقييم جميع الطلبات بنسبة [percentage] ضريبة القيمة المضافة بغض النظر عن إجمالي الطلب.',
160
+ },
161
+ 'Due to the New Zealand tax law, all orders will be assessed at [percentage] GST regardless of order total.': {
162
+ value: 'بسبب قانون الضرائب النيوزيلندي، سيتم تقييم جميع الطلبات بنسبة [percentage] من ضريبة السلع والخدمات بغض النظر عن إجمالي الطلب.',
163
+ },
164
+ 'Due to the Singapore tax law, all orders will be assessed at [percentage] GST regardless of order total.': {
165
+ value: 'بسبب قانون الضرائب في سنغافورة، سيتم تقييم جميع الطلبات بنسبة [percentage] GST بغض النظر عن إجمالي الطلب.',
166
+ },
167
+ 'Due to the UK tax law, all orders will be assessed at [percentage] VAT regardless of order total.': {
168
+ value: 'بسبب قانون الضرائب في المملكة المتحدة، سيتم تقييم جميع الطلبات بنسبة [percentage] ضريبة القيمة المضافة بغض النظر عن إجمالي الطلب.',
169
+ },
170
+ 'Due to the VOEC tax law, all orders will be assessed at [percentage] VAT regardless of order total.': {
171
+ value: 'بسبب قانون الضرائب VOEC، سيتم تقييم جميع الطلبات بنسبة [percentage] ضريبة القيمة المضافة بغض النظر عن إجمالي الطلب.',
157
172
  },
158
173
  'Duties and taxes will be applied to items and shipping.': {
159
174
  value: 'سيتم تطبيق الرسوم والضرائب على العناصر والشحن.',
@@ -464,11 +479,11 @@ export const stringsArabic = {
464
479
  'Something went wrong.': {
465
480
  value: 'حدث خطأ ما.',
466
481
  },
467
- 'Spend [threshold] duty free.': {
468
- value: 'أنفق [threshold] معفى من الرسوم الجمركية.',
482
+ 'Spend up to [threshold] duty free.': {
483
+ value: 'أنفق حتى [threshold] معفى من الرسوم الجمركية.',
469
484
  },
470
- 'Spend [threshold] tax free.': {
471
- value: 'أنفق [threshold] بدون ضرائب.',
485
+ 'Spend up to [threshold] tax free.': {
486
+ value: 'أنفق حتى [threshold] معفى من الضرائب.',
472
487
  },
473
488
  'Staging mode': {
474
489
  value: 'وضع التدريج',
@@ -626,9 +641,6 @@ export const stringsArabic = {
626
641
  Zip: {
627
642
  value: 'الرمز البريدي',
628
643
  },
629
- '[percentage] GST due on any order above [threshold] along with an import entry transaction fee and MPI levy.': {
630
- value: '[percentage] ضريبة القيمة المضافة مستحقة على أي طلب يتجاوز [threshold] بالإضافة إلى رسوم معاملة إدخال الاستيراد ورسوم MPI.',
631
- },
632
644
  '[percentage] GST due on any order above [threshold].': {
633
645
  value: '[percentage] ضريبة القيمة المضافة مستحقة على أي طلب يتجاوز [threshold].',
634
646
  },