@zonos/elements 1.3.36 → 1.3.37
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.
- package/README.md +6 -6
- package/dist/cjs/{cart-401b6d32.js → cart-0cac4ec9.js} +280 -199
- package/dist/cjs/index.cjs.js +4 -4
- package/dist/cjs/{submitGtag-bc6af393.js → submitGtag-2c66e270.js} +1 -1
- package/dist/cjs/zonos-address_8.cjs.entry.js +3 -3
- package/dist/cjs/zonos-cart-items_12.cjs.entry.js +2 -2
- package/dist/cjs/zonos-checkout.cjs.entry.js +2 -2
- package/dist/cjs/zonos-controller.cjs.entry.js +2 -2
- package/dist/cjs/zonos-country-flag.cjs.entry.js +1 -1
- package/dist/cjs/zonos-country-select_3.cjs.entry.js +3 -3
- package/dist/cjs/zonos-hello-dialog.cjs.entry.js +35 -14
- package/dist/cjs/zonos-hello.cjs.entry.js +1 -1
- package/dist/cjs/zonos-language-select_2.cjs.entry.js +1 -1
- package/dist/cjs/zonos-notification_2.cjs.entry.js +2 -2
- package/dist/collection/components/hello/zonos-hello-dialog/assets/inclusivePricingIcon.svg +8 -0
- package/dist/collection/components/hello/zonos-hello-dialog/zonos-hello-dialog-footer/zonos-hello-dialog-footer.js +2 -2
- package/dist/collection/components/hello/zonos-hello-dialog/zonos-hello-dialog.js +28 -14
- package/dist/collection/components/main/zonos-controller.js +1 -1
- package/dist/collection/components/store/hello/localization.js +8 -0
- package/dist/collection/components/store/translationStore/strings.arabic.js +13 -10
- package/dist/collection/components/store/translationStore/strings.base.js +13 -10
- package/dist/collection/components/store/translationStore/strings.chinese.js +13 -10
- package/dist/collection/components/store/translationStore/strings.danish.js +13 -10
- package/dist/collection/components/store/translationStore/strings.dutch.js +13 -10
- package/dist/collection/components/store/translationStore/strings.french.js +13 -10
- package/dist/collection/components/store/translationStore/strings.german.js +13 -10
- package/dist/collection/components/store/translationStore/strings.hebrew.js +13 -10
- package/dist/collection/components/store/translationStore/strings.indonesian.js +13 -10
- package/dist/collection/components/store/translationStore/strings.italian.js +13 -10
- package/dist/collection/components/store/translationStore/strings.japanese.js +12 -9
- package/dist/collection/components/store/translationStore/strings.korean.js +13 -10
- package/dist/collection/components/store/translationStore/strings.norwegian.js +13 -10
- package/dist/collection/components/store/translationStore/strings.polish.js +13 -10
- package/dist/collection/components/store/translationStore/strings.portuguese.js +13 -10
- package/dist/collection/components/store/translationStore/strings.russian.js +13 -10
- package/dist/collection/components/store/translationStore/strings.spanish.js +13 -10
- package/dist/collection/components/store/translationStore/strings.swedish.js +13 -10
- package/dist/collection/components/store/translationStore/strings.turkish.js +13 -10
- package/dist/collection/components/store/translationStore/strings.vietnamese.js +13 -10
- package/dist/collection/components/stripe/zonos-address/zonos-address.js +1 -1
- package/dist/collection/components/stripe/zonos-link-authentication/zonos-link-authentication.js +1 -1
- package/dist/collection/components/stripe/zonos-payment/zonos-payment.js +1 -1
- package/dist/collection/components/utils/api/getInclusivePricing.js +15 -0
- package/dist/collection/types/generated/graphql.customer.types.js +57 -9
- package/dist/esm/{cart-f29968a8.js → cart-f4204129.js} +280 -199
- package/dist/esm/index.js +4 -4
- package/dist/esm/{submitGtag-fcfd5cf4.js → submitGtag-1df655bc.js} +1 -1
- package/dist/esm/zonos-address_8.entry.js +3 -3
- package/dist/esm/zonos-cart-items_12.entry.js +2 -2
- package/dist/esm/zonos-checkout.entry.js +2 -2
- package/dist/esm/zonos-controller.entry.js +2 -2
- package/dist/esm/zonos-country-flag.entry.js +1 -1
- package/dist/esm/zonos-country-select_3.entry.js +3 -3
- package/dist/esm/zonos-hello-dialog.entry.js +36 -15
- package/dist/esm/zonos-hello.entry.js +1 -1
- package/dist/esm/zonos-language-select_2.entry.js +1 -1
- package/dist/esm/zonos-notification_2.entry.js +2 -2
- package/dist/esm-es5/cart-f4204129.js +1 -0
- package/dist/esm-es5/index.js +1 -1
- package/dist/esm-es5/{submitGtag-fcfd5cf4.js → submitGtag-1df655bc.js} +1 -1
- package/dist/esm-es5/zonos-address_8.entry.js +1 -1
- package/dist/esm-es5/zonos-cart-items_12.entry.js +1 -1
- package/dist/esm-es5/zonos-checkout.entry.js +1 -1
- package/dist/esm-es5/zonos-controller.entry.js +1 -1
- package/dist/esm-es5/zonos-country-flag.entry.js +1 -1
- package/dist/esm-es5/zonos-country-select_3.entry.js +1 -1
- package/dist/esm-es5/zonos-hello-dialog.entry.js +1 -1
- package/dist/esm-es5/zonos-hello.entry.js +1 -1
- package/dist/esm-es5/zonos-language-select_2.entry.js +1 -1
- package/dist/esm-es5/zonos-notification_2.entry.js +1 -1
- package/dist/scripts/index.js +1 -1
- package/dist/scripts/loadZonos.js +1 -1
- package/dist/scripts/zonos.js +1 -1
- package/dist/types/components/hello/zonos-hello-dialog/zonos-hello-dialog.d.ts +1 -0
- package/dist/types/components/store/hello/localization.d.ts +1 -0
- package/dist/types/components/store/translationStore/strings.arabic.d.ts +8 -5
- package/dist/types/components/store/translationStore/strings.base.d.ts +8 -5
- package/dist/types/components/store/translationStore/strings.chinese.d.ts +8 -5
- package/dist/types/components/store/translationStore/strings.danish.d.ts +8 -5
- package/dist/types/components/store/translationStore/strings.dutch.d.ts +8 -5
- package/dist/types/components/store/translationStore/strings.french.d.ts +8 -5
- package/dist/types/components/store/translationStore/strings.german.d.ts +8 -5
- package/dist/types/components/store/translationStore/strings.hebrew.d.ts +8 -5
- package/dist/types/components/store/translationStore/strings.indonesian.d.ts +8 -5
- package/dist/types/components/store/translationStore/strings.italian.d.ts +8 -5
- package/dist/types/components/store/translationStore/strings.japanese.d.ts +8 -5
- package/dist/types/components/store/translationStore/strings.korean.d.ts +8 -5
- package/dist/types/components/store/translationStore/strings.norwegian.d.ts +8 -5
- package/dist/types/components/store/translationStore/strings.polish.d.ts +8 -5
- package/dist/types/components/store/translationStore/strings.portuguese.d.ts +8 -5
- package/dist/types/components/store/translationStore/strings.russian.d.ts +8 -5
- package/dist/types/components/store/translationStore/strings.spanish.d.ts +8 -5
- package/dist/types/components/store/translationStore/strings.swedish.d.ts +8 -5
- package/dist/types/components/store/translationStore/strings.turkish.d.ts +8 -5
- package/dist/types/components/store/translationStore/strings.vietnamese.d.ts +8 -5
- package/dist/types/components/store/translationStore.d.ts +1 -1
- package/dist/types/components/utils/api/getInclusivePricing.d.ts +8 -0
- package/dist/types/types/generated/graphql.customer.types.d.ts +74 -10
- package/dist/types/types/generated/graphql.customer.types.ts +98 -12
- package/dist/zonos-elements/assets/inclusivePricingIcon.svg +8 -0
- package/dist/zonos-elements/index.esm.js +1 -1
- package/dist/zonos-elements/{p-d410ef50.system.entry.js → p-0ce1e237.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-38f882ea.system.entry.js → p-0d029fb3.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-4d95b4f4.system.entry.js → p-19241859.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-e4ef71bd.entry.js → p-1f350060.entry.js} +1 -1
- package/dist/zonos-elements/{p-1fbf0527.system.js → p-22a4f8a9.system.js} +1 -1
- package/dist/zonos-elements/p-2aac5bc8.js +1 -0
- package/dist/zonos-elements/p-4d8ad8e2.system.js +1 -0
- package/dist/zonos-elements/{p-f9931ad1.system.entry.js → p-57cbbf1e.system.entry.js} +1 -1
- package/dist/zonos-elements/p-5e46d19e.system.entry.js +1 -0
- package/dist/zonos-elements/p-720e9236.entry.js +1 -0
- package/dist/zonos-elements/{p-60f7bcee.entry.js → p-74c85d7f.entry.js} +1 -1
- package/dist/zonos-elements/{p-891d2c76.system.entry.js → p-8de3cf00.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-2cee5f3a.system.entry.js → p-9a27550a.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-1c2de5da.system.js → p-ab117c05.system.js} +1 -1
- package/dist/zonos-elements/{p-5ce19bce.system.entry.js → p-ab43d893.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-8363436f.entry.js → p-acb75c06.entry.js} +1 -1
- package/dist/zonos-elements/{p-eea3ec17.entry.js → p-af996985.entry.js} +1 -1
- package/dist/zonos-elements/{p-62e21e2b.system.entry.js → p-c2a9555c.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-5b723a1d.js → p-c7b07f80.js} +1 -1
- package/dist/zonos-elements/{p-c9062536.system.entry.js → p-c993d267.system.entry.js} +1 -1
- package/dist/zonos-elements/{p-e0709be2.entry.js → p-de71eaea.entry.js} +1 -1
- package/dist/zonos-elements/p-e0bf9666.system.js +1 -1
- package/dist/zonos-elements/{p-6b06ac3d.entry.js → p-e3631ac5.entry.js} +1 -1
- package/dist/zonos-elements/{p-6ec40c8f.entry.js → p-e3c43972.entry.js} +1 -1
- package/dist/zonos-elements/{p-cfe9c940.entry.js → p-e4888976.entry.js} +1 -1
- package/dist/zonos-elements/{p-bf9578d3.entry.js → p-ee4e6e08.entry.js} +1 -1
- package/dist/zonos-elements/zonos-elements.esm.js +1 -1
- package/package.json +5 -3
- package/dist/esm-es5/cart-f29968a8.js +0 -1
- package/dist/zonos-elements/p-2947c138.js +0 -1
- package/dist/zonos-elements/p-91635589.system.js +0 -1
- package/dist/zonos-elements/p-952e331c.entry.js +0 -1
- package/dist/zonos-elements/p-c0efa3a3.system.entry.js +0 -1
package/dist/cjs/index.cjs.js
CHANGED
|
@@ -249,9 +249,9 @@ const zonosLoadUrl = (() => {
|
|
|
249
249
|
}
|
|
250
250
|
return null;
|
|
251
251
|
})();
|
|
252
|
-
const ZONOS_URL = "https://v1.3.
|
|
253
|
-
const JS_DELIVR_ZONOS_URL = zonosLoadUrl || "https://cdn.jsdelivr.net/npm/@zonos/elements@1.3.
|
|
254
|
-
const UNPKG_ZONOS_URL = "https://unpkg.com/@zonos/elements@1.3.
|
|
252
|
+
const ZONOS_URL = "https://v1.3.37.js.zonos.com";
|
|
253
|
+
const JS_DELIVR_ZONOS_URL = zonosLoadUrl || "https://cdn.jsdelivr.net/npm/@zonos/elements@1.3.37";
|
|
254
|
+
const UNPKG_ZONOS_URL = "https://unpkg.com/@zonos/elements@1.3.37";
|
|
255
255
|
const MAIN_LOAD_CDN_TYPE = 'jsdelivr';
|
|
256
256
|
const INTER_FONT_URL = 'https://rsms.me';
|
|
257
257
|
const GOOGLE_FONT_URL = 'https://fonts.googleapis.com';
|
|
@@ -271,7 +271,7 @@ Zonos.isBigCommerce = false;
|
|
|
271
271
|
*/
|
|
272
272
|
Zonos.isNpm = true;
|
|
273
273
|
Zonos.zonosQaUrl = null;
|
|
274
|
-
Zonos.version = `v${"1.3.
|
|
274
|
+
Zonos.version = `v${"1.3.37"}`;
|
|
275
275
|
Zonos.modeAlerted = false;
|
|
276
276
|
Zonos.tempCartData = null;
|
|
277
277
|
Zonos.getCurrentTimestamp = () => new Date().getTime();
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
const index = require('./index-b071017b.js');
|
|
6
|
-
const cart = require('./cart-
|
|
6
|
+
const cart = require('./cart-0cac4ec9.js');
|
|
7
7
|
const isCheckoutMobile = require('./isCheckoutMobile-f491ca7c.js');
|
|
8
8
|
const logError = require('./logError-4e2f2020.js');
|
|
9
9
|
const containsNonLatinChars = require('./containsNonLatinChars-2be5129b.js');
|
|
@@ -147,7 +147,7 @@ const ZonosAddress = class {
|
|
|
147
147
|
}
|
|
148
148
|
render() {
|
|
149
149
|
// this component loads iframe from the stripe elements and puts here, so we don't need to do anything here
|
|
150
|
-
return (index.h(index.Host, { key: '
|
|
150
|
+
return (index.h(index.Host, { key: 'f5729bb12351fedbb82e0fa80a7f094faad3a526', class: "zonos--address zonos--elements" }, index.h("zonos-text", { key: 'b2c50846e6da81a598ba670b14d01861703e5c78', class: "zonos--title", type: "semiBoldLabel" }, this.titleText), index.h("div", { key: 'bb401f27626d88d883aaaab71bc0907a28bf35d3', class: "zonos--address-component" })));
|
|
151
151
|
}
|
|
152
152
|
get el() { return index.getElement(this); }
|
|
153
153
|
static get watchers() { return {
|
|
@@ -636,7 +636,7 @@ const ZonosLinkAuthentication = class {
|
|
|
636
636
|
}
|
|
637
637
|
render() {
|
|
638
638
|
// this component loads iframe from the stripe elements and puts here, so we don't need to do anything here
|
|
639
|
-
return (index.h(index.Host, { key: '
|
|
639
|
+
return (index.h(index.Host, { key: '5dfff9d2fcadfebdea65359e7b2bfdb525c3b242', class: "zonos--link-authentication zonos--elements" }, index.h("zonos-text", { key: 'fb080d667fdfc1a3f41e9cc128d2177af8dc7195', class: "zonos--title", type: "semiBoldLabel" }, this.titleText), index.h("div", { key: 'b79693e8082c7c341895c81ad0787bb2bf152ca9', class: "zonos--link-authentication-component" })));
|
|
640
640
|
}
|
|
641
641
|
get el() { return index.getElement(this); }
|
|
642
642
|
static get watchers() { return {
|
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
const index = require('./index-b071017b.js');
|
|
6
|
-
const cart = require('./cart-
|
|
6
|
+
const cart = require('./cart-0cac4ec9.js');
|
|
7
7
|
const classes = require('./classes-b7918f56.js');
|
|
8
8
|
const zonosStore = require('./zonosStore-4c6c85da.js');
|
|
9
|
-
const submitGtag = require('./submitGtag-
|
|
9
|
+
const submitGtag = require('./submitGtag-2c66e270.js');
|
|
10
10
|
const getBorderRadius = require('./getBorderRadius-074b46ef.js');
|
|
11
11
|
const isCheckoutMobile = require('./isCheckoutMobile-f491ca7c.js');
|
|
12
12
|
const ILanguage = require('./ILanguage-98b04442.js');
|
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
const index = require('./index-b071017b.js');
|
|
6
|
-
const cart = require('./cart-
|
|
6
|
+
const cart = require('./cart-0cac4ec9.js');
|
|
7
7
|
const zonosStore = require('./zonosStore-4c6c85da.js');
|
|
8
|
-
const submitGtag = require('./submitGtag-
|
|
8
|
+
const submitGtag = require('./submitGtag-2c66e270.js');
|
|
9
9
|
const isCheckoutMobile = require('./isCheckoutMobile-f491ca7c.js');
|
|
10
10
|
const logError = require('./logError-4e2f2020.js');
|
|
11
11
|
const classes = require('./classes-b7918f56.js');
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
const index = require('./index-b071017b.js');
|
|
6
|
-
const cart = require('./cart-
|
|
6
|
+
const cart = require('./cart-0cac4ec9.js');
|
|
7
7
|
const zonosStore = require('./zonosStore-4c6c85da.js');
|
|
8
8
|
const logError = require('./logError-4e2f2020.js');
|
|
9
9
|
require('./isDarkColor-371a3b1a.js');
|
|
@@ -304,7 +304,7 @@ const ZonosController = class {
|
|
|
304
304
|
zonosStore.zonosStore.organizationName = organizationName;
|
|
305
305
|
}
|
|
306
306
|
render() {
|
|
307
|
-
return index.h(index.Host, { key: '
|
|
307
|
+
return index.h(index.Host, { key: '209a2ea0249b9561b5ca1f84f7d31b1520ef49fe', class: "zonos--elements" });
|
|
308
308
|
}
|
|
309
309
|
};
|
|
310
310
|
ZonosController.style = ZonosControllerStyle0;
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
const index = require('./index-b071017b.js');
|
|
6
|
-
const cart = require('./cart-
|
|
6
|
+
const cart = require('./cart-0cac4ec9.js');
|
|
7
7
|
const zonosStore = require('./zonosStore-4c6c85da.js');
|
|
8
8
|
const classes = require('./classes-b7918f56.js');
|
|
9
9
|
require('./logError-4e2f2020.js');
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
const index = require('./index-b071017b.js');
|
|
6
|
-
const cart = require('./cart-
|
|
6
|
+
const cart = require('./cart-0cac4ec9.js');
|
|
7
7
|
const zonosStore = require('./zonosStore-4c6c85da.js');
|
|
8
8
|
const formatStringWithLinks = require('./formatStringWithLinks-52341fc7.js');
|
|
9
9
|
const isDarkColor = require('./isDarkColor-371a3b1a.js');
|
|
@@ -1890,9 +1890,9 @@ const ZonosHelloDialogFooter = class {
|
|
|
1890
1890
|
const language = (_b = ILanguage.languages.find(x => x.code === cart.localizationStore.selectedLocale)) === null || _b === void 0 ? void 0 : _b.translatedLabel;
|
|
1891
1891
|
// Only use gray-0 (white) when the background color is dark (apply inverted color if the element is using dark theme variable)
|
|
1892
1892
|
const mainColor = primaryColor && isDarkColor.isDarkColor(primaryColor) ? 'white' : 'black';
|
|
1893
|
-
return (index.h(index.Host, { key: '
|
|
1893
|
+
return (index.h(index.Host, { key: '49ed5ba840bd0d1e813b8eb4b89d0508930928a2', class: "zonos--elements" }, index.h("div", { key: 'ae66c6a3e8c824189b4eae2208c873943f8687ca', class: "zonos--hello-dialog-footer", style: {
|
|
1894
1894
|
'--primary-color': primaryColor,
|
|
1895
|
-
} }, index.h("a", { key: '
|
|
1895
|
+
} }, index.h("a", { key: '61226c77fe20c817efd58e12c5d5c16dad6375ac', href: "https://zonos.com", target: "_blank", title: "Zonos website" }, index.h("zonos-icon", { key: '7dc60e603c7f64fc42359632190249caf0a18317', "aria-label": "Zonos Logo", autoHeight: true, content: ZonosIcon, iconColor: mainColor, size: 108 })), index.h("div", { key: 'a6875d4c4dcf5804570d47409567f87728b8c8b5', class: "zonos--hello-locale-wrapper" }, index.h("zonos-button", { key: '51083ce07a51f62469afce508c79a7ebbf4eeacf', buttonColor: mainColor, icon: index.h("zonos-icon", { "aria-label": "Open language select", content: Globe, iconColor: mainColor }), onClick: () => this.setShowLanguageSelect(true), variant: "subtle" }, language), index.h("zonos-button", { key: '46b826f2fc8f819507db9d432da459124b65cee8', buttonColor: mainColor, icon: index.h("zonos-country-flag", { "aria-label": "Open country select", class: "zonos--footer-country-flag", countryCode: cart.localizationStore.selectedCountryCode }), onClick: () => this.setShowCountrySelect(true), variant: "subtle" }, cart.localizationStore.selectedCountryCode)))));
|
|
1896
1896
|
}
|
|
1897
1897
|
get ele() { return index.getElement(this); }
|
|
1898
1898
|
};
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
const index = require('./index-b071017b.js');
|
|
6
|
-
const cart = require('./cart-
|
|
6
|
+
const cart = require('./cart-0cac4ec9.js');
|
|
7
7
|
const zonosStore = require('./zonosStore-4c6c85da.js');
|
|
8
8
|
const classes = require('./classes-b7918f56.js');
|
|
9
9
|
const formatStringWithLinks = require('./formatStringWithLinks-52341fc7.js');
|
|
@@ -34,6 +34,15 @@ const ImportIcon = `<svg width="24" height="24" viewBox="0 0 24 24" fill="none"
|
|
|
34
34
|
</svg>
|
|
35
35
|
`;
|
|
36
36
|
|
|
37
|
+
const InclusivePricingIcon = `<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
38
|
+
<path fill-rule="evenodd" clip-rule="evenodd"
|
|
39
|
+
d="M4.04505 6.64123C2.19006 8.49622 2.19006 11.5038 4.04505 13.3587L11.2929 20.6066C11.6834 20.9971 12.3166 20.9971 12.7071 20.6066L19.955 13.3587C21.8099 11.5038 21.8099 8.49622 19.955 6.64123L17.8336 4.51991C17.4431 4.12939 16.8099 4.12939 16.4194 4.51991L13.5241 7.41527C12.5864 6.86157 11.4136 6.86157 10.4759 7.41527L7.58059 4.51991C7.19006 4.12939 6.5569 4.12939 6.16637 4.51991L4.04505 6.64123ZM5.10571 12.2981C3.83651 11.0289 3.83651 8.9711 5.10571 7.70189L6.87348 5.93413L9.70191 8.76255C10.1056 9.16622 10.6991 9.12 11.0641 8.82749C11.6091 8.39083 12.3909 8.39082 12.9359 8.82749C13.301 9.12 13.8944 9.16622 14.2981 8.76255L17.1265 5.93413L18.8943 7.70189C20.1635 8.9711 20.1635 11.0289 18.8943 12.2981L12 19.1924L5.10571 12.2981Z"
|
|
40
|
+
fill="#0F1015" />
|
|
41
|
+
<path
|
|
42
|
+
d="M10.0333 3.28075C9.63566 3.39679 9.40739 3.8132 9.52343 4.21083C9.63947 4.60846 10.0559 4.83673 10.4535 4.72069C11.4618 4.42644 12.5383 4.42644 13.5466 4.72069C13.9442 4.83673 14.3606 4.60846 14.4766 4.21083C14.5927 3.81321 14.3644 3.39679 13.9668 3.28075C12.6841 2.90642 11.316 2.90642 10.0333 3.28075Z"
|
|
43
|
+
fill="#0F1015" />
|
|
44
|
+
</svg>`;
|
|
45
|
+
|
|
37
46
|
const MessageIcon = `<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="https://www.w3.org/2000/svg">
|
|
38
47
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M2.25 4.5C2.25 3.25736 3.25736 2.25 4.5 2.25H13.5C14.7426 2.25 15.75 3.25736 15.75 4.5V10.5C15.75 11.7426 14.7426 12.75 13.5 12.75H8.25C8.01393 12.75 7.79164 12.8611 7.65 13.05L6.3 14.85C5.87508 15.4166 5.2082 15.75 4.5 15.75C3.25736 15.75 2.25 14.7426 2.25 13.5V4.5ZM4.5 3.75C4.08579 3.75 3.75 4.08579 3.75 4.5V13.5C3.75 13.9142 4.08579 14.25 4.5 14.25C4.73607 14.25 4.95836 14.1389 5.1 13.95L6.45 12.15C6.87492 11.5834 7.5418 11.25 8.25 11.25H13.5C13.9142 11.25 14.25 10.9142 14.25 10.5V4.5C14.25 4.08579 13.9142 3.75 13.5 3.75H4.5ZM5.25 6C5.25 5.58579 5.58579 5.25 6 5.25H12C12.4142 5.25 12.75 5.58579 12.75 6C12.75 6.41421 12.4142 6.75 12 6.75H6C5.58579 6.75 5.25 6.41421 5.25 6ZM5.25 9C5.25 8.58579 5.58579 8.25 6 8.25H8.25C8.66421 8.25 9 8.58579 9 9C9 9.41421 8.66421 9.75 8.25 9.75H6C5.58579 9.75 5.25 9.41421 5.25 9Z" fill="#4D505A"/>
|
|
39
48
|
</svg>
|
|
@@ -49,6 +58,11 @@ const RemoveIcon = `<svg xmlns="https://www.w3.org/2000/svg" width="24" height="
|
|
|
49
58
|
const zonosHelloDialogCss = ":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 .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}}@media (max-width: 768px){:host .zonos--hello-dialog.zonos--hello-dialog-open{opacity:1;-webkit-transform:scaleY(1);transform:scaleY(1)}}";
|
|
50
59
|
const ZonosHelloDialogStyle0 = zonosHelloDialogCss;
|
|
51
60
|
|
|
61
|
+
const dutyTaxMessage_AU_lowValueGST = `${cart.translate('The low-value GST law passed July 1st, 2018 applies to this retailer.')} ${wrapStringWithLink({
|
|
62
|
+
href: 'https://zonos.com/docs/global-ecommerce/landed-cost/tax-remittance/australia-gst',
|
|
63
|
+
text: cart.translate('Learn more.'),
|
|
64
|
+
})}`;
|
|
65
|
+
const inclusivePriceMessage = cart.translate('Product prices already include duties, taxes, and fees. No additional duties or taxes will be added at checkout, with rare exceptions.');
|
|
52
66
|
const ZonosHelloDialog = class {
|
|
53
67
|
constructor(hostRef) {
|
|
54
68
|
index.registerInstance(this, hostRef);
|
|
@@ -85,6 +99,9 @@ const ZonosHelloDialog = class {
|
|
|
85
99
|
var _a;
|
|
86
100
|
return (_a = cart.localizationStore.countryLandedCost) === null || _a === void 0 ? void 0 : _a.hasTaxId;
|
|
87
101
|
};
|
|
102
|
+
this.hasInclusivePrices = () => {
|
|
103
|
+
return cart.localizationStore.hasInclusivePrices;
|
|
104
|
+
};
|
|
88
105
|
/**
|
|
89
106
|
* Some countries don't have threshold. So we need to show generic message for them
|
|
90
107
|
*/
|
|
@@ -104,10 +121,10 @@ const ZonosHelloDialog = class {
|
|
|
104
121
|
// If deminimis is undefined or null, assume it's $0
|
|
105
122
|
return dutyDeminimis &&
|
|
106
123
|
!this.isNoThresholdCountry(countryLandedCost === null || countryLandedCost === void 0 ? void 0 : countryLandedCost.countryCode)
|
|
107
|
-
? cart.translate('Spend [threshold] duty free', {
|
|
124
|
+
? cart.translate('Spend [threshold] duty free.', {
|
|
108
125
|
threshold: dutyDeminimis,
|
|
109
126
|
})
|
|
110
|
-
: cart.translate('Duties will apply to all orders');
|
|
127
|
+
: cart.translate('Duties will apply to all orders.');
|
|
111
128
|
};
|
|
112
129
|
this.getTaxMessage = () => {
|
|
113
130
|
const { countryLandedCost } = cart.localizationStore;
|
|
@@ -117,10 +134,10 @@ const ZonosHelloDialog = class {
|
|
|
117
134
|
: null;
|
|
118
135
|
return taxDeminimis &&
|
|
119
136
|
!this.isNoThresholdCountry(countryLandedCost === null || countryLandedCost === void 0 ? void 0 : countryLandedCost.countryCode)
|
|
120
|
-
? cart.translate('Spend [threshold] tax free', {
|
|
137
|
+
? cart.translate('Spend [threshold] tax free.', {
|
|
121
138
|
threshold: taxDeminimis,
|
|
122
139
|
})
|
|
123
|
-
: cart.translate('Taxes will apply to all orders');
|
|
140
|
+
: cart.translate('Taxes will apply to all orders.');
|
|
124
141
|
};
|
|
125
142
|
this.getUkDutyTaxMessage = (landedCost) => {
|
|
126
143
|
if (landedCost.allowLowValueOrders) {
|
|
@@ -136,17 +153,20 @@ const ZonosHelloDialog = class {
|
|
|
136
153
|
];
|
|
137
154
|
};
|
|
138
155
|
this.getAustraliaDutyTaxMessage = (landedCost) => {
|
|
156
|
+
if (cart.localizationStore.hasInclusivePrices) {
|
|
157
|
+
return [dutyTaxMessage_AU_lowValueGST];
|
|
158
|
+
}
|
|
139
159
|
return [
|
|
140
|
-
cart.translate('Duties & taxes in Australia, VAT or GST is [percentage] and is due on all orders', {
|
|
160
|
+
cart.translate('Duties & taxes in Australia, VAT or GST is [percentage] and is due on all orders.', {
|
|
141
161
|
percentage: `${landedCost.vatTaxRate * 100}%`,
|
|
142
162
|
}),
|
|
143
|
-
|
|
144
|
-
href: 'https://zonos.com/docs/global-ecommerce/landed-cost/tax-remittance/australia-gst',
|
|
145
|
-
text: cart.translate('Learn more.'),
|
|
146
|
-
})}`,
|
|
163
|
+
dutyTaxMessage_AU_lowValueGST,
|
|
147
164
|
];
|
|
148
165
|
};
|
|
149
166
|
this.getNewZealandDutyTaxMessge = (landedCost) => {
|
|
167
|
+
if (cart.localizationStore.hasInclusivePrices) {
|
|
168
|
+
return null;
|
|
169
|
+
}
|
|
150
170
|
return [
|
|
151
171
|
cart.translate('[percentage] GST due on any order above [threshold] along with an import entry transaction fee and MPI levy.', {
|
|
152
172
|
percentage: `${landedCost.vatTaxRate * 100}%`,
|
|
@@ -199,6 +219,7 @@ const ZonosHelloDialog = class {
|
|
|
199
219
|
render() {
|
|
200
220
|
var _a;
|
|
201
221
|
const { selectedCountryCode } = cart.localizationStore;
|
|
222
|
+
const hasInclusivePrices = this.hasInclusivePrices();
|
|
202
223
|
// If deminimis is undefined or null, assume it's $0
|
|
203
224
|
const dutyDeMinimisMessage = this.getDutyMessage();
|
|
204
225
|
// If deminimis is undefined or null, assume it's $0
|
|
@@ -217,18 +238,18 @@ const ZonosHelloDialog = class {
|
|
|
217
238
|
const defaultMessage = formatStringWithLinks.formatStringWithLinks(defaultMessageStr);
|
|
218
239
|
const currentPage = this.getCurrentPageEnum();
|
|
219
240
|
const filteredMessages = customMessages.filter(x => x.pageName === currentPage);
|
|
220
|
-
return (index.h(index.Host, { key: '
|
|
241
|
+
return (index.h(index.Host, { key: '7fa136af625bb72bb9f14ba4f3ff3aa70a95074b', class: "zonos--elements" }, index.h("div", { key: '94839999d9a9f2ff182f50ba24ad3183c44c6a31', class: classes.classes([
|
|
221
242
|
'zonos--hello-dialog',
|
|
222
243
|
animateLeft && 'zonos--hello-dialog-animate-from-left',
|
|
223
244
|
animateFromBottom && 'zonos--hello-dialog-animate-from-bottom',
|
|
224
245
|
!!this.mobileLocationOverride &&
|
|
225
246
|
'zonos--hello-dialog-mobile-override',
|
|
226
247
|
this.isOpen && 'zonos--hello-dialog-open',
|
|
227
|
-
]), inert: !this.isOpen, ref: el => el && (this.dialogRef = el) }, !this.showCountrySelect && !this.showLanguageSelect && (index.h("div", { key: '
|
|
248
|
+
]), inert: !this.isOpen, ref: el => el && (this.dialogRef = el) }, !this.showCountrySelect && !this.showLanguageSelect && (index.h("div", { key: '7c412fd167248e55b4b285cd77f4cfc85a6a038f' }, index.h("div", { key: '78d376fffe7289f3a4e144aca964e6a11da45600', class: "zonos--hello-dialog-content" }, index.h("zonos-button", { key: 'b1c03836ef2825d4f0cf7c395aab0905008f2d5d', 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: '91249ab433e0c29ca013c8cba607693a7a6bed02', spacing: 24 }, index.h("zonos-country-flag", { key: 'f11acc0b2f96f3fd0e5af6f4abb34c64bd290dae', class: "zonos--hello-country-flag", countryCode: selectedCountryCode }), index.h("zonos-v-stack", { key: '7322b563606ae3e6f5e0751305ef5779c99f3b36', class: "zonos--hello-dialog-header", spacing: 4 }, index.h("zonos-text", { key: 'cc6b7618a289bb0b001e2f1268b30e2ef18a6e54', type: "boldSubheader" }, welcomeMessage), index.h("zonos-text", { key: 'f60575298db7743c942bfaa922baff1e93ea6774', innerHTML: defaultMessage, textColor: "gray-800" })), index.h("zonos-v-stack", { key: '28c6a3bd2b49078ee337ae1e755519de332cda5d', spacing: 8 }, this.restrictedItems.map(item => {
|
|
228
249
|
var _a;
|
|
229
250
|
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)))));
|
|
230
|
-
}), index.h("zonos-card", { key: '
|
|
231
|
-
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: '
|
|
251
|
+
}), index.h("zonos-card", { key: '3fe69193fa354dcd592957333d8ddb484a88f309', spacing: "12px" }, index.h("zonos-v-stack", { key: '327079d7ead3a16af25b9131e1882f97c6ebe2be', 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 :
|
|
252
|
+
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: 'ce8ca134e3918406bf69c0ab8dd883fd1af802c2', appearanceSettings: this.appearanceSettings, setShowCountrySelect: value => this.setShowCountrySelect(value), setShowLanguageSelect: value => this.setShowLanguageSelect(value) }))), this.showCountrySelect && (index.h("div", { key: '03f07b6d622b1bc0ac918e9c910e5d5d815bd886' }, index.h("zonos-country-select", { key: 'fcbc3374d29c7b52f5316450956671340e0dd45c', handleOnClose: () => this.setShowCountrySelect(false) }))), this.showLanguageSelect && (index.h("div", { key: '32e7c6391b5299fc845f7404745ee768a6f5e7bf' }, index.h("zonos-language-select", { key: 'b82087d23130629c339f02236d18dab598f33993', handleOnClose: () => this.setShowLanguageSelect(false) }))))));
|
|
232
253
|
}
|
|
233
254
|
static get assetsDirs() { return ["assets"]; }
|
|
234
255
|
static get watchers() { return {
|
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
const index = require('./index-b071017b.js');
|
|
6
6
|
const zonosStore = require('./zonosStore-4c6c85da.js');
|
|
7
|
-
const cart = require('./cart-
|
|
7
|
+
const cart = require('./cart-0cac4ec9.js');
|
|
8
8
|
const classes = require('./classes-b7918f56.js');
|
|
9
9
|
const logError = require('./logError-4e2f2020.js');
|
|
10
10
|
const getHasMoreSpaceOnRight = require('./getHasMoreSpaceOnRight-4c94667f.js');
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
const index = require('./index-b071017b.js');
|
|
6
|
-
const cart = require('./cart-
|
|
6
|
+
const cart = require('./cart-0cac4ec9.js');
|
|
7
7
|
const zonosStore = require('./zonosStore-4c6c85da.js');
|
|
8
8
|
const ILanguage = require('./ILanguage-98b04442.js');
|
|
9
9
|
require('./logError-4e2f2020.js');
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
5
5
|
const index = require('./index-b071017b.js');
|
|
6
6
|
const zonosStore = require('./zonosStore-4c6c85da.js');
|
|
7
7
|
const classes = require('./classes-b7918f56.js');
|
|
8
|
-
const cart = require('./cart-
|
|
8
|
+
const cart = require('./cart-0cac4ec9.js');
|
|
9
9
|
const logError = require('./logError-4e2f2020.js');
|
|
10
10
|
require('./isDarkColor-371a3b1a.js');
|
|
11
11
|
require('./getBorderRadius-074b46ef.js');
|
|
@@ -109,7 +109,7 @@ const ZonosPayment = class {
|
|
|
109
109
|
}
|
|
110
110
|
render() {
|
|
111
111
|
// this component loads iframe from the stripe elements and puts here, so we don't need to do anything here
|
|
112
|
-
return (index.h(index.Host, { key: '
|
|
112
|
+
return (index.h(index.Host, { key: 'c940b38c3bb7e8a7856ce28e62ee40d60eb445a1', class: "zonos--payment zonos--elements" }, this.titleText && (index.h("zonos-text", { key: '7625e3865a13cdf4fc6c05d7a2e0c7b84ae5ebd4', class: "zonos--title", type: "semiBoldLabel" }, this.titleText)), index.h("div", { key: '92cde315378611a675b19cdce46b1bf6ac2221a1', class: "zonos--payment-component" })));
|
|
113
113
|
}
|
|
114
114
|
get el() { return index.getElement(this); }
|
|
115
115
|
static get watchers() { return {
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<path fill-rule="evenodd" clip-rule="evenodd"
|
|
3
|
+
d="M4.04505 6.64123C2.19006 8.49622 2.19006 11.5038 4.04505 13.3587L11.2929 20.6066C11.6834 20.9971 12.3166 20.9971 12.7071 20.6066L19.955 13.3587C21.8099 11.5038 21.8099 8.49622 19.955 6.64123L17.8336 4.51991C17.4431 4.12939 16.8099 4.12939 16.4194 4.51991L13.5241 7.41527C12.5864 6.86157 11.4136 6.86157 10.4759 7.41527L7.58059 4.51991C7.19006 4.12939 6.5569 4.12939 6.16637 4.51991L4.04505 6.64123ZM5.10571 12.2981C3.83651 11.0289 3.83651 8.9711 5.10571 7.70189L6.87348 5.93413L9.70191 8.76255C10.1056 9.16622 10.6991 9.12 11.0641 8.82749C11.6091 8.39083 12.3909 8.39082 12.9359 8.82749C13.301 9.12 13.8944 9.16622 14.2981 8.76255L17.1265 5.93413L18.8943 7.70189C20.1635 8.9711 20.1635 11.0289 18.8943 12.2981L12 19.1924L5.10571 12.2981Z"
|
|
4
|
+
fill="#0F1015" />
|
|
5
|
+
<path
|
|
6
|
+
d="M10.0333 3.28075C9.63566 3.39679 9.40739 3.8132 9.52343 4.21083C9.63947 4.60846 10.0559 4.83673 10.4535 4.72069C11.4618 4.42644 12.5383 4.42644 13.5466 4.72069C13.9442 4.83673 14.3606 4.60846 14.4766 4.21083C14.5927 3.81321 14.3644 3.39679 13.9668 3.28075C12.6841 2.90642 11.316 2.90642 10.0333 3.28075Z"
|
|
7
|
+
fill="#0F1015" />
|
|
8
|
+
</svg>
|
|
@@ -18,9 +18,9 @@ export class ZonosHelloDialogFooter {
|
|
|
18
18
|
const language = (_b = languages.find(x => x.code === localizationStore.selectedLocale)) === null || _b === void 0 ? void 0 : _b.translatedLabel;
|
|
19
19
|
// Only use gray-0 (white) when the background color is dark (apply inverted color if the element is using dark theme variable)
|
|
20
20
|
const mainColor = primaryColor && isDarkColor(primaryColor) ? 'white' : 'black';
|
|
21
|
-
return (h(Host, { key: '
|
|
21
|
+
return (h(Host, { key: '49ed5ba840bd0d1e813b8eb4b89d0508930928a2', class: "zonos--elements" }, h("div", { key: 'ae66c6a3e8c824189b4eae2208c873943f8687ca', class: "zonos--hello-dialog-footer", style: {
|
|
22
22
|
'--primary-color': primaryColor,
|
|
23
|
-
} }, h("a", { key: '
|
|
23
|
+
} }, h("a", { key: '61226c77fe20c817efd58e12c5d5c16dad6375ac', href: "https://zonos.com", target: "_blank", title: "Zonos website" }, h("zonos-icon", { key: '7dc60e603c7f64fc42359632190249caf0a18317', "aria-label": "Zonos Logo", autoHeight: true, content: ZonosIcon, iconColor: mainColor, size: 108 })), h("div", { key: 'a6875d4c4dcf5804570d47409567f87728b8c8b5', class: "zonos--hello-locale-wrapper" }, h("zonos-button", { key: '51083ce07a51f62469afce508c79a7ebbf4eeacf', buttonColor: mainColor, icon: h("zonos-icon", { "aria-label": "Open language select", content: Globe, iconColor: mainColor }), onClick: () => this.setShowLanguageSelect(true), variant: "subtle" }, language), h("zonos-button", { key: '46b826f2fc8f819507db9d432da459124b65cee8', buttonColor: mainColor, icon: h("zonos-country-flag", { "aria-label": "Open country select", class: "zonos--footer-country-flag", countryCode: localizationStore.selectedCountryCode }), onClick: () => this.setShowCountrySelect(true), variant: "subtle" }, localizationStore.selectedCountryCode)))));
|
|
24
24
|
}
|
|
25
25
|
static get is() { return "zonos-hello-dialog-footer"; }
|
|
26
26
|
static get encapsulation() { return "shadow"; }
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { h, Host, } from "@stencil/core";
|
|
1
|
+
import { Fragment, h, Host, } from "@stencil/core";
|
|
2
2
|
import { localizationStore } from "../../store/hello/localization";
|
|
3
3
|
import { translate } from "../../store/translationStore";
|
|
4
4
|
import { zonosStore } from "../../store/zonosStore";
|
|
@@ -13,11 +13,18 @@ import BagIcon from "./assets/bagIcon.svg";
|
|
|
13
13
|
// eslint-disable-next-line no-relative-import-paths/no-relative-import-paths
|
|
14
14
|
import ImportIcon from "./assets/importIcon.svg";
|
|
15
15
|
// eslint-disable-next-line no-relative-import-paths/no-relative-import-paths
|
|
16
|
+
import InclusivePricingIcon from "./assets/inclusivePricingIcon.svg";
|
|
17
|
+
// eslint-disable-next-line no-relative-import-paths/no-relative-import-paths
|
|
16
18
|
import MessageIcon from "./assets/messageIcon.svg";
|
|
17
19
|
// eslint-disable-next-line no-relative-import-paths/no-relative-import-paths
|
|
18
20
|
import MoneyIcon from "./assets/moneyIcon.svg";
|
|
19
21
|
// eslint-disable-next-line no-relative-import-paths/no-relative-import-paths
|
|
20
22
|
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
|
+
const inclusivePriceMessage = translate('Product prices already include duties, taxes, and fees. No additional duties or taxes will be added at checkout, with rare exceptions.');
|
|
21
28
|
export class ZonosHelloDialog {
|
|
22
29
|
constructor() {
|
|
23
30
|
this.clickOutsideDialogHandler = (e) => {
|
|
@@ -52,6 +59,9 @@ export class ZonosHelloDialog {
|
|
|
52
59
|
var _a;
|
|
53
60
|
return (_a = localizationStore.countryLandedCost) === null || _a === void 0 ? void 0 : _a.hasTaxId;
|
|
54
61
|
};
|
|
62
|
+
this.hasInclusivePrices = () => {
|
|
63
|
+
return localizationStore.hasInclusivePrices;
|
|
64
|
+
};
|
|
55
65
|
/**
|
|
56
66
|
* Some countries don't have threshold. So we need to show generic message for them
|
|
57
67
|
*/
|
|
@@ -71,10 +81,10 @@ export class ZonosHelloDialog {
|
|
|
71
81
|
// If deminimis is undefined or null, assume it's $0
|
|
72
82
|
return dutyDeminimis &&
|
|
73
83
|
!this.isNoThresholdCountry(countryLandedCost === null || countryLandedCost === void 0 ? void 0 : countryLandedCost.countryCode)
|
|
74
|
-
? translate('Spend [threshold] duty free', {
|
|
84
|
+
? translate('Spend [threshold] duty free.', {
|
|
75
85
|
threshold: dutyDeminimis,
|
|
76
86
|
})
|
|
77
|
-
: translate('Duties will apply to all orders');
|
|
87
|
+
: translate('Duties will apply to all orders.');
|
|
78
88
|
};
|
|
79
89
|
this.getTaxMessage = () => {
|
|
80
90
|
const { countryLandedCost } = localizationStore;
|
|
@@ -84,10 +94,10 @@ export class ZonosHelloDialog {
|
|
|
84
94
|
: null;
|
|
85
95
|
return taxDeminimis &&
|
|
86
96
|
!this.isNoThresholdCountry(countryLandedCost === null || countryLandedCost === void 0 ? void 0 : countryLandedCost.countryCode)
|
|
87
|
-
? translate('Spend [threshold] tax free', {
|
|
97
|
+
? translate('Spend [threshold] tax free.', {
|
|
88
98
|
threshold: taxDeminimis,
|
|
89
99
|
})
|
|
90
|
-
: translate('Taxes will apply to all orders');
|
|
100
|
+
: translate('Taxes will apply to all orders.');
|
|
91
101
|
};
|
|
92
102
|
this.getUkDutyTaxMessage = (landedCost) => {
|
|
93
103
|
if (landedCost.allowLowValueOrders) {
|
|
@@ -103,17 +113,20 @@ export class ZonosHelloDialog {
|
|
|
103
113
|
];
|
|
104
114
|
};
|
|
105
115
|
this.getAustraliaDutyTaxMessage = (landedCost) => {
|
|
116
|
+
if (localizationStore.hasInclusivePrices) {
|
|
117
|
+
return [dutyTaxMessage_AU_lowValueGST];
|
|
118
|
+
}
|
|
106
119
|
return [
|
|
107
|
-
translate('Duties & taxes in Australia, VAT or GST is [percentage] and is due on all orders', {
|
|
120
|
+
translate('Duties & taxes in Australia, VAT or GST is [percentage] and is due on all orders.', {
|
|
108
121
|
percentage: `${landedCost.vatTaxRate * 100}%`,
|
|
109
122
|
}),
|
|
110
|
-
|
|
111
|
-
href: 'https://zonos.com/docs/global-ecommerce/landed-cost/tax-remittance/australia-gst',
|
|
112
|
-
text: translate('Learn more.'),
|
|
113
|
-
})}`,
|
|
123
|
+
dutyTaxMessage_AU_lowValueGST,
|
|
114
124
|
];
|
|
115
125
|
};
|
|
116
126
|
this.getNewZealandDutyTaxMessge = (landedCost) => {
|
|
127
|
+
if (localizationStore.hasInclusivePrices) {
|
|
128
|
+
return null;
|
|
129
|
+
}
|
|
117
130
|
return [
|
|
118
131
|
translate('[percentage] GST due on any order above [threshold] along with an import entry transaction fee and MPI levy.', {
|
|
119
132
|
percentage: `${landedCost.vatTaxRate * 100}%`,
|
|
@@ -166,6 +179,7 @@ export class ZonosHelloDialog {
|
|
|
166
179
|
render() {
|
|
167
180
|
var _a;
|
|
168
181
|
const { selectedCountryCode } = localizationStore;
|
|
182
|
+
const hasInclusivePrices = this.hasInclusivePrices();
|
|
169
183
|
// If deminimis is undefined or null, assume it's $0
|
|
170
184
|
const dutyDeMinimisMessage = this.getDutyMessage();
|
|
171
185
|
// If deminimis is undefined or null, assume it's $0
|
|
@@ -184,18 +198,18 @@ export class ZonosHelloDialog {
|
|
|
184
198
|
const defaultMessage = formatStringWithLinks(defaultMessageStr);
|
|
185
199
|
const currentPage = this.getCurrentPageEnum();
|
|
186
200
|
const filteredMessages = customMessages.filter(x => x.pageName === currentPage);
|
|
187
|
-
return (h(Host, { key: '
|
|
201
|
+
return (h(Host, { key: '7fa136af625bb72bb9f14ba4f3ff3aa70a95074b', class: "zonos--elements" }, h("div", { key: '94839999d9a9f2ff182f50ba24ad3183c44c6a31', class: classes([
|
|
188
202
|
'zonos--hello-dialog',
|
|
189
203
|
animateLeft && 'zonos--hello-dialog-animate-from-left',
|
|
190
204
|
animateFromBottom && 'zonos--hello-dialog-animate-from-bottom',
|
|
191
205
|
!!this.mobileLocationOverride &&
|
|
192
206
|
'zonos--hello-dialog-mobile-override',
|
|
193
207
|
this.isOpen && 'zonos--hello-dialog-open',
|
|
194
|
-
]), inert: !this.isOpen, ref: el => el && (this.dialogRef = el) }, !this.showCountrySelect && !this.showLanguageSelect && (h("div", { key: '
|
|
208
|
+
]), inert: !this.isOpen, ref: el => el && (this.dialogRef = el) }, !this.showCountrySelect && !this.showLanguageSelect && (h("div", { key: '7c412fd167248e55b4b285cd77f4cfc85a6a038f' }, h("div", { key: '78d376fffe7289f3a4e144aca964e6a11da45600', class: "zonos--hello-dialog-content" }, h("zonos-button", { key: 'b1c03836ef2825d4f0cf7c395aab0905008f2d5d', 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: '91249ab433e0c29ca013c8cba607693a7a6bed02', spacing: 24 }, h("zonos-country-flag", { key: 'f11acc0b2f96f3fd0e5af6f4abb34c64bd290dae', class: "zonos--hello-country-flag", countryCode: selectedCountryCode }), h("zonos-v-stack", { key: '7322b563606ae3e6f5e0751305ef5779c99f3b36', class: "zonos--hello-dialog-header", spacing: 4 }, h("zonos-text", { key: 'cc6b7618a289bb0b001e2f1268b30e2ef18a6e54', type: "boldSubheader" }, welcomeMessage), h("zonos-text", { key: 'f60575298db7743c942bfaa922baff1e93ea6774', innerHTML: defaultMessage, textColor: "gray-800" })), h("zonos-v-stack", { key: '28c6a3bd2b49078ee337ae1e755519de332cda5d', spacing: 8 }, this.restrictedItems.map(item => {
|
|
195
209
|
var _a;
|
|
196
210
|
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)))));
|
|
197
|
-
}), h("zonos-card", { key: '
|
|
198
|
-
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: '
|
|
211
|
+
}), h("zonos-card", { key: '3fe69193fa354dcd592957333d8ddb484a88f309', spacing: "12px" }, h("zonos-v-stack", { key: '327079d7ead3a16af25b9131e1882f97c6ebe2be', 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 :
|
|
212
|
+
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: 'ce8ca134e3918406bf69c0ab8dd883fd1af802c2', appearanceSettings: this.appearanceSettings, setShowCountrySelect: value => this.setShowCountrySelect(value), setShowLanguageSelect: value => this.setShowLanguageSelect(value) }))), this.showCountrySelect && (h("div", { key: '03f07b6d622b1bc0ac918e9c910e5d5d815bd886' }, h("zonos-country-select", { key: 'fcbc3374d29c7b52f5316450956671340e0dd45c', handleOnClose: () => this.setShowCountrySelect(false) }))), this.showLanguageSelect && (h("div", { key: '32e7c6391b5299fc845f7404745ee768a6f5e7bf' }, h("zonos-language-select", { key: 'b82087d23130629c339f02236d18dab598f33993', handleOnClose: () => this.setShowLanguageSelect(false) }))))));
|
|
199
213
|
}
|
|
200
214
|
static get is() { return "zonos-hello-dialog"; }
|
|
201
215
|
static get encapsulation() { return "shadow"; }
|
|
@@ -187,7 +187,7 @@ export class ZonosController {
|
|
|
187
187
|
zonosStore.organizationName = organizationName;
|
|
188
188
|
}
|
|
189
189
|
render() {
|
|
190
|
-
return h(Host, { key: '
|
|
190
|
+
return h(Host, { key: '209a2ea0249b9561b5ca1f84f7d31b1520ef49fe', class: "zonos--elements" });
|
|
191
191
|
}
|
|
192
192
|
static get is() { return "zonos-controller"; }
|
|
193
193
|
static get encapsulation() { return "shadow"; }
|
|
@@ -5,6 +5,7 @@ import { zonosStore } from "../zonosStore";
|
|
|
5
5
|
import { getCountries } from "../../utils/api/getCountries";
|
|
6
6
|
import { getCountryLandedCost, } from "../../utils/api/getCountryLandedCost";
|
|
7
7
|
import { getExchangeRate, } from "../../utils/api/getExchangeRate";
|
|
8
|
+
import { getInclusivePricing } from "../../utils/api/getInclusivePricing";
|
|
8
9
|
import { getLocaleMessages } from "../../utils/api/getLocaleMessages";
|
|
9
10
|
import { getLocalization } from "../../utils/api/getLocalization";
|
|
10
11
|
import { getShippingZones } from "../../utils/api/getShippingZones";
|
|
@@ -18,6 +19,7 @@ const { dispose: localizationDispose, onChange: localizationStoreOnUpdate, state
|
|
|
18
19
|
countryLandedCost: null,
|
|
19
20
|
customMessages: [],
|
|
20
21
|
exchangeRate: null,
|
|
22
|
+
hasInclusivePrices: false,
|
|
21
23
|
isShippableCountry: false,
|
|
22
24
|
localizationLoaded: false,
|
|
23
25
|
selectedCountryCode: null,
|
|
@@ -53,9 +55,15 @@ const startExchangeRateTimeout = ({ isGuaranteed, maxAge, }) => {
|
|
|
53
55
|
}, maxAgeToUse * 1000);
|
|
54
56
|
};
|
|
55
57
|
const getNewLocalization = async () => {
|
|
58
|
+
var _a;
|
|
56
59
|
log('get new localization store');
|
|
57
60
|
const { isShippableCountry, selectedCountryCode } = localizationStore;
|
|
58
61
|
localizationStore.countryLandedCost = await getCountryLandedCost(localizationStore.selectedCountryCode);
|
|
62
|
+
localizationStore.hasInclusivePrices =
|
|
63
|
+
((_a = (await getInclusivePricing(selectedCountryCode))) === null || _a === void 0 ? void 0 : _a.hasEnabledInclusivePrices) || false;
|
|
64
|
+
if (localizationStore.hasInclusivePrices) {
|
|
65
|
+
log(`Inclusive prices are enabled for the country ${selectedCountryCode}`);
|
|
66
|
+
}
|
|
59
67
|
if (zonosStore.helloSettings.currencyBehavior === 'DISABLED' ||
|
|
60
68
|
!isShippableCountry ||
|
|
61
69
|
!selectedCountryCode) {
|
|
@@ -68,14 +68,14 @@ export const stringsArabic = {
|
|
|
68
68
|
"Don't close": {
|
|
69
69
|
value: 'لا تغلق',
|
|
70
70
|
},
|
|
71
|
-
'Duties & taxes in Australia, VAT or GST is [percentage] and is due on all orders': {
|
|
72
|
-
value: 'الرسوم والضرائب في أستراليا، ضريبة القيمة المضافة أو
|
|
71
|
+
'Duties & taxes in Australia, VAT or GST is [percentage] and is due on all orders.': {
|
|
72
|
+
value: 'الرسوم والضرائب في أستراليا، ضريبة القيمة المضافة أو GST هي [percentage] وتستحق على جميع الطلبات.',
|
|
73
73
|
},
|
|
74
74
|
'Duties and taxes will be applied to items and shipping.': {
|
|
75
75
|
value: 'سيتم تطبيق الرسوم والضرائب على العناصر والشحن.',
|
|
76
76
|
},
|
|
77
|
-
'Duties will apply to all orders': {
|
|
78
|
-
value: 'ستنطبق الرسوم على جميع
|
|
77
|
+
'Duties will apply to all orders.': {
|
|
78
|
+
value: 'ستنطبق الرسوم على جميع الطلبات.',
|
|
79
79
|
},
|
|
80
80
|
'Duties, taxes, and fees': {
|
|
81
81
|
value: 'الرسوم والضرائب والرسوم',
|
|
@@ -182,6 +182,9 @@ export const stringsArabic = {
|
|
|
182
182
|
'Prepay duties and taxes at checkout': {
|
|
183
183
|
value: 'دفع الرسوم والضرائب مقدمًا عند الدفع',
|
|
184
184
|
},
|
|
185
|
+
'Product prices already include duties, taxes, and fees. No additional duties or taxes will be added at checkout, with rare exceptions.': {
|
|
186
|
+
value: 'أسعار المنتجات تشمل بالفعل الرسوم والضرائب والرسوم. لن يتم إضافة أي رسوم أو ضرائب إضافية عند الدفع، مع استثناءات نادرة.',
|
|
187
|
+
},
|
|
185
188
|
Reload: {
|
|
186
189
|
value: 'إعادة تحميل',
|
|
187
190
|
},
|
|
@@ -224,11 +227,11 @@ export const stringsArabic = {
|
|
|
224
227
|
'Something went wrong.': {
|
|
225
228
|
value: 'حدث خطأ ما.',
|
|
226
229
|
},
|
|
227
|
-
'Spend [threshold] duty free': {
|
|
228
|
-
value: 'أنفق [threshold]
|
|
230
|
+
'Spend [threshold] duty free.': {
|
|
231
|
+
value: 'أنفق [threshold] معفى من الرسوم الجمركية.',
|
|
229
232
|
},
|
|
230
|
-
'Spend [threshold] tax free': {
|
|
231
|
-
value: 'أنفق [threshold]
|
|
233
|
+
'Spend [threshold] tax free.': {
|
|
234
|
+
value: 'أنفق [threshold] بدون ضرائب.',
|
|
232
235
|
},
|
|
233
236
|
State: {
|
|
234
237
|
value: 'ولاية',
|
|
@@ -239,8 +242,8 @@ export const stringsArabic = {
|
|
|
239
242
|
Success: {
|
|
240
243
|
value: 'نجاح',
|
|
241
244
|
},
|
|
242
|
-
'Taxes will apply to all orders': {
|
|
243
|
-
value: '
|
|
245
|
+
'Taxes will apply to all orders.': {
|
|
246
|
+
value: 'سيتم تطبيق الضرائب على جميع الطلبات.',
|
|
244
247
|
},
|
|
245
248
|
'Test cards': {
|
|
246
249
|
value: 'بطاقات اختبار',
|