@zonos/elements 1.3.107 → 1.3.108

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 (87) hide show
  1. package/dist/cjs/{cart-9f3864db.js → cart-d25b699a.js} +4 -2
  2. package/dist/cjs/{createCustomEvent-7a156d77.js → createCustomEvent-4ea7b6dc.js} +1 -1
  3. package/dist/cjs/index.cjs.js +7 -7
  4. package/dist/cjs/{paypal-610cccad.js → paypal-fd423375.js} +7 -1
  5. package/dist/cjs/zonos-address_7.cjs.entry.js +1 -1
  6. package/dist/cjs/zonos-cart-items_13.cjs.entry.js +3 -3
  7. package/dist/cjs/zonos-checkout.cjs.entry.js +4 -3
  8. package/dist/cjs/zonos-controller.cjs.entry.js +1 -1
  9. package/dist/cjs/zonos-country-flag.cjs.entry.js +1 -1
  10. package/dist/cjs/zonos-country-select_4.cjs.entry.js +1 -1
  11. package/dist/cjs/zonos-hello-dialog.cjs.entry.js +1 -1
  12. package/dist/cjs/zonos-hello.cjs.entry.js +1 -1
  13. package/dist/cjs/zonos-language-select_2.cjs.entry.js +1 -1
  14. package/dist/cjs/zonos-notification_3.cjs.entry.js +2 -2
  15. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout.js +2 -1
  16. package/dist/collection/components/store/checkout/paypal.js +3 -1
  17. package/dist/collection/components/store/checkout/stripe.js +4 -2
  18. package/dist/collection/utils/generateCloudflareDeployUrl.js +2 -1
  19. package/dist/esm/{cart-4ba1878f.js → cart-911ba5dd.js} +4 -2
  20. package/dist/esm/{createCustomEvent-5fdd75bf.js → createCustomEvent-6ba5bcde.js} +1 -1
  21. package/dist/esm/index.js +7 -7
  22. package/dist/esm/{paypal-3d7d0148.js → paypal-04a10fc2.js} +7 -2
  23. package/dist/esm/zonos-address_7.entry.js +1 -1
  24. package/dist/esm/zonos-cart-items_13.entry.js +3 -3
  25. package/dist/esm/zonos-checkout.entry.js +4 -3
  26. package/dist/esm/zonos-controller.entry.js +1 -1
  27. package/dist/esm/zonos-country-flag.entry.js +1 -1
  28. package/dist/esm/zonos-country-select_4.entry.js +1 -1
  29. package/dist/esm/zonos-hello-dialog.entry.js +1 -1
  30. package/dist/esm/zonos-hello.entry.js +1 -1
  31. package/dist/esm/zonos-language-select_2.entry.js +1 -1
  32. package/dist/esm/zonos-notification_3.entry.js +2 -2
  33. package/dist/esm-es5/cart-911ba5dd.js +1 -0
  34. package/dist/esm-es5/{createCustomEvent-5fdd75bf.js → createCustomEvent-6ba5bcde.js} +1 -1
  35. package/dist/esm-es5/index.js +1 -1
  36. package/dist/esm-es5/{paypal-3d7d0148.js → paypal-04a10fc2.js} +2 -2
  37. package/dist/esm-es5/zonos-address_7.entry.js +1 -1
  38. package/dist/esm-es5/zonos-cart-items_13.entry.js +1 -1
  39. package/dist/esm-es5/zonos-checkout.entry.js +1 -1
  40. package/dist/esm-es5/zonos-controller.entry.js +1 -1
  41. package/dist/esm-es5/zonos-country-flag.entry.js +1 -1
  42. package/dist/esm-es5/zonos-country-select_4.entry.js +1 -1
  43. package/dist/esm-es5/zonos-hello-dialog.entry.js +1 -1
  44. package/dist/esm-es5/zonos-hello.entry.js +1 -1
  45. package/dist/esm-es5/zonos-language-select_2.entry.js +1 -1
  46. package/dist/esm-es5/zonos-notification_3.entry.js +1 -1
  47. package/dist/scripts/index.js +1 -1
  48. package/dist/scripts/loadZonos.js +1 -1
  49. package/dist/scripts/zonos.js +1 -1
  50. package/dist/types/components/store/checkout/stripe.d.ts +1 -0
  51. package/dist/zonos-elements/index.esm.js +1 -1
  52. package/dist/zonos-elements/p-018a4b36.js +1 -0
  53. package/dist/zonos-elements/{p-b0e0271d.system.entry.js → p-123cabaa.system.entry.js} +1 -1
  54. package/dist/zonos-elements/{p-7ef9b1e9.system.js → p-14de27ff.system.js} +1 -1
  55. package/dist/zonos-elements/{p-db824268.entry.js → p-1e1397fe.entry.js} +1 -1
  56. package/dist/zonos-elements/{p-43df09ad.system.entry.js → p-24813754.system.entry.js} +1 -1
  57. package/dist/zonos-elements/{p-fce4ea2c.system.entry.js → p-27188a22.system.entry.js} +1 -1
  58. package/dist/zonos-elements/p-39c09f18.system.entry.js +1 -0
  59. package/dist/zonos-elements/{p-62d88537.system.entry.js → p-45323a2f.system.entry.js} +1 -1
  60. package/dist/zonos-elements/{p-99d3ecd4.js → p-60303c84.js} +1 -1
  61. package/dist/zonos-elements/{p-c3167f3c.system.js → p-631570f0.system.js} +1 -1
  62. package/dist/zonos-elements/{p-bac9279b.system.entry.js → p-6927d227.system.entry.js} +1 -1
  63. package/dist/zonos-elements/{p-2a522e2f.system.entry.js → p-76a4a647.system.entry.js} +1 -1
  64. package/dist/zonos-elements/{p-db0c6041.entry.js → p-8632c8f1.entry.js} +1 -1
  65. package/dist/zonos-elements/{p-b2a3e0f0.entry.js → p-8b0feb0e.entry.js} +1 -1
  66. package/dist/zonos-elements/{p-250f5e67.entry.js → p-8d98fed0.entry.js} +1 -1
  67. package/dist/zonos-elements/{p-a84da418.entry.js → p-a0af6dc1.entry.js} +1 -1
  68. package/dist/zonos-elements/{p-b9f595e2.entry.js → p-adbcf21c.entry.js} +1 -1
  69. package/dist/zonos-elements/{p-d65d7206.entry.js → p-ba3d2965.entry.js} +1 -1
  70. package/dist/zonos-elements/p-c78dd680.system.js +1 -1
  71. package/dist/zonos-elements/{p-6b58734c.system.entry.js → p-c9e8f159.system.entry.js} +1 -1
  72. package/dist/zonos-elements/{p-bfab2cf6.entry.js → p-d6de8661.entry.js} +1 -1
  73. package/dist/zonos-elements/p-e2fa7600.entry.js +1 -0
  74. package/dist/zonos-elements/{p-7f543fa7.system.entry.js → p-e5d1d031.system.entry.js} +1 -1
  75. package/dist/zonos-elements/{p-09faf6e8.system.js → p-e880ab28.system.js} +2 -2
  76. package/dist/zonos-elements/p-e9771827.system.js +1 -0
  77. package/dist/zonos-elements/{p-5d7606f0.entry.js → p-eaf09ccb.entry.js} +1 -1
  78. package/dist/zonos-elements/{p-6fb1434f.system.entry.js → p-ee14ba06.system.entry.js} +1 -1
  79. package/dist/zonos-elements/p-ef9d6106.js +17 -0
  80. package/dist/zonos-elements/zonos-elements.esm.js +1 -1
  81. package/package.json +1 -1
  82. package/dist/esm-es5/cart-4ba1878f.js +0 -1
  83. package/dist/zonos-elements/p-61489a67.js +0 -17
  84. package/dist/zonos-elements/p-9c89dadf.system.js +0 -1
  85. package/dist/zonos-elements/p-9d7eb65e.system.entry.js +0 -1
  86. package/dist/zonos-elements/p-d9752dd6.js +0 -1
  87. package/dist/zonos-elements/p-ec46325e.entry.js +0 -1
@@ -9362,12 +9362,13 @@ const { onChange: onChange$1, reset: reset$1, state: stripeStore, } = zonosStore
9362
9362
  name: {},
9363
9363
  },
9364
9364
  }));
9365
- const getStripeOptions = ({ clientSecret, overrideBorderRadius, overridePrimaryColor, overrideSecondaryColor, overrideTheme, }) => {
9365
+ const getStripeOptions = ({ clientSecret, overrideBorderRadius, overridePrimaryColor, overrideSecondaryColor, overrideTheme, paypalEnabled, }) => {
9366
9366
  const primaryColor = overridePrimaryColor || zonosStore.zonosStore.appearance.colorPrimary;
9367
9367
  const secondaryColor = overrideSecondaryColor || zonosStore.zonosStore.appearance.colorSecondary;
9368
9368
  const themeBasedColor = primaryColor && isDarkColor.isDarkColor(primaryColor) ? 'night' : 'flat';
9369
9369
  // if overrideTheme is provided, use it. Otherwise, use theme based on primary color
9370
9370
  const theme = overrideTheme === 'DARK' ? 'night' : 'flat';
9371
+ const paypalPaymenType = paypalEnabled ? ['external_paypal'] : [];
9371
9372
  return {
9372
9373
  appearance: {
9373
9374
  labels: 'floating',
@@ -9382,7 +9383,7 @@ const getStripeOptions = ({ clientSecret, overrideBorderRadius, overridePrimaryC
9382
9383
  colorPrimary: secondaryColor }),
9383
9384
  },
9384
9385
  clientSecret,
9385
- externalPaymentMethodTypes: ['external_paypal'],
9386
+ externalPaymentMethodTypes: [...paypalPaymenType],
9386
9387
  locale: localizationStore.selectedLocale,
9387
9388
  };
9388
9389
  };
@@ -9411,6 +9412,7 @@ const initStripeElements = async (props) => {
9411
9412
  overridePrimaryColor: props === null || props === void 0 ? void 0 : props.overridePrimaryColor,
9412
9413
  overrideSecondaryColor: props === null || props === void 0 ? void 0 : props.overrideSecondaryColor,
9413
9414
  overrideTheme: props === null || props === void 0 ? void 0 : props.overrideTheme,
9415
+ paypalEnabled: props === null || props === void 0 ? void 0 : props.paypalEnabled,
9414
9416
  });
9415
9417
  // compare with the previous options to see if we need to update
9416
9418
  const isSameOptions = JSON.stringify(stripeOptions) ===
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- const cart = require('./cart-9f3864db.js');
3
+ const cart = require('./cart-d25b699a.js');
4
4
  const zonosStore = require('./zonosStore-b18fe6b6.js');
5
5
  const handleFetch = require('./handleFetch-aa729c61.js');
6
6
 
@@ -97,7 +97,7 @@ const getZonosQaUrl = () => {
97
97
  return null;
98
98
  }
99
99
  const qaUrl = extractZonosQaUrl(window.location.href);
100
- const cdnUrl = "https://v1.3.107.js.zonos.com";
100
+ const cdnUrl = "https://v1.3.108.js.zonos.com";
101
101
  // when the qaUrl is not set and the built URL is from the test domain, use the test domain for testing
102
102
  if (!qaUrl &&
103
103
  (cdnUrl.includes('test.') ||
@@ -281,10 +281,10 @@ const zonosLoadUrl = (() => {
281
281
  }
282
282
  return null;
283
283
  })();
284
- const ZONOS_URL = "https://v1.3.107.js.zonos.com";
285
- const JS_DELIVR_ZONOS_URL = zonosLoadUrl || "https://cdn.jsdelivr.net/npm/@zonos/elements@1.3.107";
286
- const UNPKG_ZONOS_URL = "https://unpkg.com/@zonos/elements@1.3.107";
287
- const CDNJS_ZONOS_URL = "https://cdnjs.cloudflare.com/ajax/libs/zonos-elements/1.3.107";
284
+ const ZONOS_URL = "https://v1.3.108.js.zonos.com";
285
+ const JS_DELIVR_ZONOS_URL = zonosLoadUrl || "https://cdn.jsdelivr.net/npm/@zonos/elements@1.3.108";
286
+ const UNPKG_ZONOS_URL = "https://unpkg.com/@zonos/elements@1.3.108";
287
+ const CDNJS_ZONOS_URL = "https://cdnjs.cloudflare.com/ajax/libs/zonos-elements/1.3.108";
288
288
  const INTER_FONT_URL = 'https://rsms.me';
289
289
  const GOOGLE_FONT_URL = 'https://fonts.googleapis.com';
290
290
  const INTER_FONT_REGEX = /^https:\/\/rsms\.me\/inter\/inter\.css(.*)$/;
@@ -299,7 +299,7 @@ Zonos.zonosConversionTest = typeof window !== 'undefined' &&
299
299
  !!window.location.search.match(/\?.*(&*)zonosConversionTest/);
300
300
  Zonos._paypalMockResponse = null;
301
301
  Zonos.isBigCommerce = false;
302
- Zonos.releaseDate = "1729719030640";
302
+ Zonos.releaseDate = "1729779914092";
303
303
  Zonos.isLegacyCheckout = false;
304
304
  Zonos.showBaseForeign = typeof window !== 'undefined' &&
305
305
  window.location.search.includes('zonosShowBaseForeign');
@@ -309,7 +309,7 @@ Zonos.showBaseForeign = typeof window !== 'undefined' &&
309
309
  Zonos.isNpm = true;
310
310
  Zonos.zonosQaUrl = null;
311
311
  Zonos.zonosQaUrlApi = null;
312
- Zonos.version = `v${"1.3.107"}`;
312
+ Zonos.version = `v${"1.3.108"}`;
313
313
  Zonos.modeAlerted = false;
314
314
  Zonos.cartData = null;
315
315
  Zonos.paypal = null;
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  const zonosStore = require('./zonosStore-b18fe6b6.js');
4
- const cart = require('./cart-9f3864db.js');
4
+ const cart = require('./cart-d25b699a.js');
5
5
  const handleFetch = require('./handleFetch-aa729c61.js');
6
6
  const isDarkColor = require('./isDarkColor-87ee1eb7.js');
7
7
 
@@ -448,10 +448,16 @@ const paypalStoreInitButtons = (props) => {
448
448
  .filter(Boolean);
449
449
  return paypalStore.paypalButtons;
450
450
  };
451
+ const paypalStoreHasPaypalEnabled = () => {
452
+ var _a, _b;
453
+ const paypalEnabledInSetting = ((_b = (_a = zonosStore.zonosStore.checkoutSettings.externalPaymentMethods) === null || _a === void 0 ? void 0 : _a.find(payment => payment.type === 'PAYPAL')) === null || _b === void 0 ? void 0 : _b.status) === 'ENABLED';
454
+ return paypalEnabledInSetting || !!paypalStore.paypalButtons.length;
455
+ };
451
456
 
452
457
  exports.isContrastColor = isContrastColor;
453
458
  exports.paypalInitScript = paypalInitScript;
454
459
  exports.paypalStore = paypalStore;
460
+ exports.paypalStoreHasPaypalEnabled = paypalStoreHasPaypalEnabled;
455
461
  exports.paypalStoreInitButtons = paypalStoreInitButtons;
456
462
  exports.paypalStoreReset = paypalStoreReset;
457
463
  exports.submitGtag = submitGtag;
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-d56e0a8b.js');
6
- const cart = require('./cart-9f3864db.js');
6
+ const cart = require('./cart-d25b699a.js');
7
7
  const isCheckoutMobile = require('./isCheckoutMobile-f491ca7c.js');
8
8
  const handleFetch = require('./handleFetch-aa729c61.js');
9
9
  const containsNonLatinChars = require('./containsNonLatinChars-2be5129b.js');
@@ -3,11 +3,11 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-d56e0a8b.js');
6
- const cart = require('./cart-9f3864db.js');
6
+ const cart = require('./cart-d25b699a.js');
7
7
  const classes = require('./classes-b7918f56.js');
8
- const paypal = require('./paypal-610cccad.js');
8
+ const paypal = require('./paypal-fd423375.js');
9
9
  const zonosStore = require('./zonosStore-b18fe6b6.js');
10
- const createCustomEvent = require('./createCustomEvent-7a156d77.js');
10
+ const createCustomEvent = require('./createCustomEvent-4ea7b6dc.js');
11
11
  const getBorderRadius = require('./getBorderRadius-53c35cd1.js');
12
12
  const handleFetch = require('./handleFetch-aa729c61.js');
13
13
  const isCheckoutMobile = require('./isCheckoutMobile-f491ca7c.js');
@@ -3,11 +3,11 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-d56e0a8b.js');
6
- const cart = require('./cart-9f3864db.js');
7
- const paypal = require('./paypal-610cccad.js');
6
+ const cart = require('./cart-d25b699a.js');
7
+ const paypal = require('./paypal-fd423375.js');
8
8
  const zonosStore = require('./zonosStore-b18fe6b6.js');
9
9
  const handleFetch = require('./handleFetch-aa729c61.js');
10
- const createCustomEvent = require('./createCustomEvent-7a156d77.js');
10
+ const createCustomEvent = require('./createCustomEvent-4ea7b6dc.js');
11
11
  const isCheckoutMobile = require('./isCheckoutMobile-f491ca7c.js');
12
12
  const classes = require('./classes-b7918f56.js');
13
13
  const getBorderRadius = require('./getBorderRadius-53c35cd1.js');
@@ -264,6 +264,7 @@ const ZonosCheckout = class {
264
264
  overrideSecondaryColor: (_d = this.appearanceSettingsOverride) === null || _d === void 0 ? void 0 : _d.colorSecondary,
265
265
  // only override theme or theme from appearance if it's mobile
266
266
  overrideTheme: this.isMobile ? theme : undefined,
267
+ paypalEnabled: paypal.paypalStoreHasPaypalEnabled(),
267
268
  });
268
269
  };
269
270
  this.formatDate = (timestamp) => {
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-d56e0a8b.js');
6
- const cart = require('./cart-9f3864db.js');
6
+ const cart = require('./cart-d25b699a.js');
7
7
  const zonosStore = require('./zonosStore-b18fe6b6.js');
8
8
  const handleFetch = require('./handleFetch-aa729c61.js');
9
9
  require('./isDarkColor-87ee1eb7.js');
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-d56e0a8b.js');
6
- const cart = require('./cart-9f3864db.js');
6
+ const cart = require('./cart-d25b699a.js');
7
7
  const zonosStore = require('./zonosStore-b18fe6b6.js');
8
8
  const classes = require('./classes-b7918f56.js');
9
9
  require('./handleFetch-aa729c61.js');
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-d56e0a8b.js');
6
- const cart = require('./cart-9f3864db.js');
6
+ const cart = require('./cart-d25b699a.js');
7
7
  const zonosStore = require('./zonosStore-b18fe6b6.js');
8
8
  const formatStringWithLinks = require('./formatStringWithLinks-52341fc7.js');
9
9
  const isDarkColor = require('./isDarkColor-87ee1eb7.js');
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-d56e0a8b.js');
6
- const cart = require('./cart-9f3864db.js');
6
+ const cart = require('./cart-d25b699a.js');
7
7
  const zonosStore = require('./zonosStore-b18fe6b6.js');
8
8
  const classes = require('./classes-b7918f56.js');
9
9
  const formatStringWithLinks = require('./formatStringWithLinks-52341fc7.js');
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-d56e0a8b.js');
6
6
  const zonosStore = require('./zonosStore-b18fe6b6.js');
7
- const cart = require('./cart-9f3864db.js');
7
+ const cart = require('./cart-d25b699a.js');
8
8
  const classes = require('./classes-b7918f56.js');
9
9
  const handleFetch = require('./handleFetch-aa729c61.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-d56e0a8b.js');
6
- const cart = require('./cart-9f3864db.js');
6
+ const cart = require('./cart-d25b699a.js');
7
7
  const zonosStore = require('./zonosStore-b18fe6b6.js');
8
8
  const ILanguage = require('./ILanguage-98b04442.js');
9
9
  require('./handleFetch-aa729c61.js');
@@ -5,9 +5,9 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  const index = require('./index-d56e0a8b.js');
6
6
  const zonosStore = require('./zonosStore-b18fe6b6.js');
7
7
  const classes = require('./classes-b7918f56.js');
8
- const cart = require('./cart-9f3864db.js');
8
+ const cart = require('./cart-d25b699a.js');
9
9
  const handleFetch = require('./handleFetch-aa729c61.js');
10
- const paypal = require('./paypal-610cccad.js');
10
+ const paypal = require('./paypal-fd423375.js');
11
11
  require('./isDarkColor-87ee1eb7.js');
12
12
  require('./getBorderRadius-53c35cd1.js');
13
13
 
@@ -1,6 +1,6 @@
1
1
  import { Fragment, h, Host, } from "@stencil/core";
2
2
  import { cartStore, cartStoreClearCheckoutInterval, cartStoreNextStep, cartStoreReset, cartStoreResetTabItems, cartStoreSetCheckoutSession, cartStoreStartCheckoutInterval, cartStoreUpdateItems, cartStoreUpdateToErrorState, } from "../../store/checkout/cart";
3
- import { paypalInitScript } from "../../store/checkout/paypal";
3
+ import { paypalInitScript, paypalStoreHasPaypalEnabled, } from "../../store/checkout/paypal";
4
4
  import { initStripeElements, stripeStore, stripeStoreCleanupDomesticShippingSession, stripeStoreConfirmPayment, stripeStoreHandleInventoryCheck, stripeStoreInitCheckoutSession, stripeStorePrefetchLandedCost, stripeStoreReset, } from "../../store/checkout/stripe";
5
5
  import { localizationStore, localizationStoreOnUpdate, } from "../../store/hello/localization";
6
6
  import { translate } from "../../store/translationStore";
@@ -51,6 +51,7 @@ export class ZonosCheckout {
51
51
  overrideSecondaryColor: (_d = this.appearanceSettingsOverride) === null || _d === void 0 ? void 0 : _d.colorSecondary,
52
52
  // only override theme or theme from appearance if it's mobile
53
53
  overrideTheme: this.isMobile ? theme : undefined,
54
+ paypalEnabled: paypalStoreHasPaypalEnabled(),
54
55
  });
55
56
  };
56
57
  this.formatDate = (timestamp) => {
@@ -214,6 +214,8 @@ const paypalStoreInitButtons = (props) => {
214
214
  return paypalStore.paypalButtons;
215
215
  };
216
216
  const paypalStoreHasPaypalEnabled = () => {
217
- return !!paypalStore.paypalButtons.length;
217
+ var _a, _b;
218
+ const paypalEnabledInSetting = ((_b = (_a = zonosStore.checkoutSettings.externalPaymentMethods) === null || _a === void 0 ? void 0 : _a.find(payment => payment.type === 'PAYPAL')) === null || _b === void 0 ? void 0 : _b.status) === 'ENABLED';
219
+ return paypalEnabledInSetting || !!paypalStore.paypalButtons.length;
218
220
  };
219
221
  export { paypalInitScript, paypalStore, paypalStoreCreaterOrder, paypalStoreHasPaypalEnabled, paypalStoreInitButtons, paypalStoreReset, };
@@ -45,12 +45,13 @@ const { onChange, reset, state: stripeStore, } = createStore(() => ({
45
45
  name: {},
46
46
  },
47
47
  }));
48
- const getStripeOptions = ({ clientSecret, overrideBorderRadius, overridePrimaryColor, overrideSecondaryColor, overrideTheme, }) => {
48
+ const getStripeOptions = ({ clientSecret, overrideBorderRadius, overridePrimaryColor, overrideSecondaryColor, overrideTheme, paypalEnabled, }) => {
49
49
  const primaryColor = overridePrimaryColor || zonosStore.appearance.colorPrimary;
50
50
  const secondaryColor = overrideSecondaryColor || zonosStore.appearance.colorSecondary;
51
51
  const themeBasedColor = primaryColor && isDarkColor(primaryColor) ? 'night' : 'flat';
52
52
  // if overrideTheme is provided, use it. Otherwise, use theme based on primary color
53
53
  const theme = overrideTheme === 'DARK' ? 'night' : 'flat';
54
+ const paypalPaymenType = paypalEnabled ? ['external_paypal'] : [];
54
55
  return {
55
56
  appearance: {
56
57
  labels: 'floating',
@@ -66,7 +67,7 @@ const getStripeOptions = ({ clientSecret, overrideBorderRadius, overridePrimaryC
66
67
  }),
67
68
  },
68
69
  clientSecret,
69
- externalPaymentMethodTypes: ['external_paypal'],
70
+ externalPaymentMethodTypes: [...paypalPaymenType],
70
71
  locale: localizationStore.selectedLocale,
71
72
  };
72
73
  };
@@ -95,6 +96,7 @@ const initStripeElements = async (props) => {
95
96
  overridePrimaryColor: props === null || props === void 0 ? void 0 : props.overridePrimaryColor,
96
97
  overrideSecondaryColor: props === null || props === void 0 ? void 0 : props.overrideSecondaryColor,
97
98
  overrideTheme: props === null || props === void 0 ? void 0 : props.overrideTheme,
99
+ paypalEnabled: props === null || props === void 0 ? void 0 : props.paypalEnabled,
98
100
  });
99
101
  // compare with the previous options to see if we need to update
100
102
  const isSameOptions = JSON.stringify(stripeOptions) ===
@@ -17,7 +17,8 @@ export const generateCloudflareDeployUrl = ({ branchName, projectName, }) => {
17
17
  .replace(/[^a-z0-9-_]/g, '') // Remove any characters that aren't alphanumeric, hyphens, or underscores
18
18
  .replace(/-+/g, '-') // Collapse multiple hyphens into a single hyphen
19
19
  .replace(/^-+|-+$/g, '') // Trim hyphens from start and end
20
- .slice(0, 28); // truncate to 28 characters;
20
+ .slice(0, 28)
21
+ .replace(/-+$/g, ''); // remove last character if it's a hyphen
21
22
  if (!normalizedProjectName || !normalizedBranchName) {
22
23
  return null;
23
24
  }
@@ -9360,12 +9360,13 @@ const { onChange: onChange$1, reset: reset$1, state: stripeStore, } = createStor
9360
9360
  name: {},
9361
9361
  },
9362
9362
  }));
9363
- const getStripeOptions = ({ clientSecret, overrideBorderRadius, overridePrimaryColor, overrideSecondaryColor, overrideTheme, }) => {
9363
+ const getStripeOptions = ({ clientSecret, overrideBorderRadius, overridePrimaryColor, overrideSecondaryColor, overrideTheme, paypalEnabled, }) => {
9364
9364
  const primaryColor = overridePrimaryColor || zonosStore.appearance.colorPrimary;
9365
9365
  const secondaryColor = overrideSecondaryColor || zonosStore.appearance.colorSecondary;
9366
9366
  const themeBasedColor = primaryColor && isDarkColor(primaryColor) ? 'night' : 'flat';
9367
9367
  // if overrideTheme is provided, use it. Otherwise, use theme based on primary color
9368
9368
  const theme = overrideTheme === 'DARK' ? 'night' : 'flat';
9369
+ const paypalPaymenType = paypalEnabled ? ['external_paypal'] : [];
9369
9370
  return {
9370
9371
  appearance: {
9371
9372
  labels: 'floating',
@@ -9380,7 +9381,7 @@ const getStripeOptions = ({ clientSecret, overrideBorderRadius, overridePrimaryC
9380
9381
  colorPrimary: secondaryColor }),
9381
9382
  },
9382
9383
  clientSecret,
9383
- externalPaymentMethodTypes: ['external_paypal'],
9384
+ externalPaymentMethodTypes: [...paypalPaymenType],
9384
9385
  locale: localizationStore.selectedLocale,
9385
9386
  };
9386
9387
  };
@@ -9409,6 +9410,7 @@ const initStripeElements = async (props) => {
9409
9410
  overridePrimaryColor: props === null || props === void 0 ? void 0 : props.overridePrimaryColor,
9410
9411
  overrideSecondaryColor: props === null || props === void 0 ? void 0 : props.overrideSecondaryColor,
9411
9412
  overrideTheme: props === null || props === void 0 ? void 0 : props.overrideTheme,
9413
+ paypalEnabled: props === null || props === void 0 ? void 0 : props.paypalEnabled,
9412
9414
  });
9413
9415
  // compare with the previous options to see if we need to update
9414
9416
  const isSameOptions = JSON.stringify(stripeOptions) ===
@@ -1,4 +1,4 @@
1
- import { d as cartStore, l as localizationStore } from './cart-4ba1878f.js';
1
+ import { d as cartStore, l as localizationStore } from './cart-911ba5dd.js';
2
2
  import { z as zonosStore } from './zonosStore-7798ac16.js';
3
3
  import { h as handleFetch } from './handleFetch-3dea7d46.js';
4
4
 
package/dist/esm/index.js CHANGED
@@ -94,7 +94,7 @@ const getZonosQaUrl = () => {
94
94
  return null;
95
95
  }
96
96
  const qaUrl = extractZonosQaUrl(window.location.href);
97
- const cdnUrl = "https://v1.3.107.js.zonos.com";
97
+ const cdnUrl = "https://v1.3.108.js.zonos.com";
98
98
  // when the qaUrl is not set and the built URL is from the test domain, use the test domain for testing
99
99
  if (!qaUrl &&
100
100
  (cdnUrl.includes('test.') ||
@@ -278,10 +278,10 @@ const zonosLoadUrl = (() => {
278
278
  }
279
279
  return null;
280
280
  })();
281
- const ZONOS_URL = "https://v1.3.107.js.zonos.com";
282
- const JS_DELIVR_ZONOS_URL = zonosLoadUrl || "https://cdn.jsdelivr.net/npm/@zonos/elements@1.3.107";
283
- const UNPKG_ZONOS_URL = "https://unpkg.com/@zonos/elements@1.3.107";
284
- const CDNJS_ZONOS_URL = "https://cdnjs.cloudflare.com/ajax/libs/zonos-elements/1.3.107";
281
+ const ZONOS_URL = "https://v1.3.108.js.zonos.com";
282
+ const JS_DELIVR_ZONOS_URL = zonosLoadUrl || "https://cdn.jsdelivr.net/npm/@zonos/elements@1.3.108";
283
+ const UNPKG_ZONOS_URL = "https://unpkg.com/@zonos/elements@1.3.108";
284
+ const CDNJS_ZONOS_URL = "https://cdnjs.cloudflare.com/ajax/libs/zonos-elements/1.3.108";
285
285
  const INTER_FONT_URL = 'https://rsms.me';
286
286
  const GOOGLE_FONT_URL = 'https://fonts.googleapis.com';
287
287
  const INTER_FONT_REGEX = /^https:\/\/rsms\.me\/inter\/inter\.css(.*)$/;
@@ -296,7 +296,7 @@ Zonos.zonosConversionTest = typeof window !== 'undefined' &&
296
296
  !!window.location.search.match(/\?.*(&*)zonosConversionTest/);
297
297
  Zonos._paypalMockResponse = null;
298
298
  Zonos.isBigCommerce = false;
299
- Zonos.releaseDate = "1729719030640";
299
+ Zonos.releaseDate = "1729779914092";
300
300
  Zonos.isLegacyCheckout = false;
301
301
  Zonos.showBaseForeign = typeof window !== 'undefined' &&
302
302
  window.location.search.includes('zonosShowBaseForeign');
@@ -306,7 +306,7 @@ Zonos.showBaseForeign = typeof window !== 'undefined' &&
306
306
  Zonos.isNpm = true;
307
307
  Zonos.zonosQaUrl = null;
308
308
  Zonos.zonosQaUrlApi = null;
309
- Zonos.version = `v${"1.3.107"}`;
309
+ Zonos.version = `v${"1.3.108"}`;
310
310
  Zonos.modeAlerted = false;
311
311
  Zonos.cartData = null;
312
312
  Zonos.paypal = null;
@@ -1,5 +1,5 @@
1
1
  import { z as zonosStore, c as createStore } from './zonosStore-7798ac16.js';
2
- import { d as cartStore, u as stripeStoreHandleInventoryCheck, t as translate, r as cartStoreNextStep, h as cartStoreClearCheckoutInterval } from './cart-4ba1878f.js';
2
+ import { d as cartStore, u as stripeStoreHandleInventoryCheck, t as translate, r as cartStoreNextStep, h as cartStoreClearCheckoutInterval } from './cart-911ba5dd.js';
3
3
  import { h as handleFetch, l as log, a as logError, j as jsonParse } from './handleFetch-3dea7d46.js';
4
4
  import { t as tinycolor } from './isDarkColor-4261bc3c.js';
5
5
 
@@ -446,5 +446,10 @@ const paypalStoreInitButtons = (props) => {
446
446
  .filter(Boolean);
447
447
  return paypalStore.paypalButtons;
448
448
  };
449
+ const paypalStoreHasPaypalEnabled = () => {
450
+ var _a, _b;
451
+ const paypalEnabledInSetting = ((_b = (_a = zonosStore.checkoutSettings.externalPaymentMethods) === null || _a === void 0 ? void 0 : _a.find(payment => payment.type === 'PAYPAL')) === null || _b === void 0 ? void 0 : _b.status) === 'ENABLED';
452
+ return paypalEnabledInSetting || !!paypalStore.paypalButtons.length;
453
+ };
449
454
 
450
- export { paypalStore as a, paypalStoreReset as b, paypalStoreInitButtons as c, isContrastColor as i, paypalInitScript as p, submitGtag as s };
455
+ export { paypalInitScript as a, paypalStore as b, paypalStoreReset as c, paypalStoreInitButtons as d, isContrastColor as i, paypalStoreHasPaypalEnabled as p, submitGtag as s };
@@ -1,5 +1,5 @@
1
1
  import { r as registerInstance, c as createEvent, h, H as Host, d as getElement } from './index-86b8247e.js';
2
- import { j as stripeStore, P as getFallbackDefaultCountryCode, l as localizationStore, t as translate } from './cart-4ba1878f.js';
2
+ import { j as stripeStore, P as getFallbackDefaultCountryCode, l as localizationStore, t as translate } from './cart-911ba5dd.js';
3
3
  import { i as isCheckoutMobile } from './isCheckoutMobile-8846dccb.js';
4
4
  import { a as logError, l as log } from './handleFetch-3dea7d46.js';
5
5
  import { i as isTextContainsNonLatinChars, c as containsNonLatinChars } from './containsNonLatinChars-2d8810c3.js';
@@ -1,9 +1,9 @@
1
1
  import { r as registerInstance, a as getAssetPath, h, H as Host, F as Fragment, c as createEvent, d as getElement } from './index-86b8247e.js';
2
- import { d as cartStore, E as currencyFormat, t as translate, F as cartStoreHasOneEligibleItem, G as stripeStoreApplyPromoCode, H as stripeStoreRemovePromoCode, w as stripeStoreReset, j as stripeStore, I as stripeStoreRetrievePayment, J as stripeStoreMessageBasedOnStatus, K as stripeStoreResetPromoCode, l as localizationStore, L as stripeStoreTranslateAddressToLatin, M as cartStoreUpdateSelectedShippingOption, N as cartStoreGetShippingTransitInfo, O as sortServiceLevelOptionsByAmount } from './cart-4ba1878f.js';
2
+ import { d as cartStore, E as currencyFormat, t as translate, F as cartStoreHasOneEligibleItem, G as stripeStoreApplyPromoCode, H as stripeStoreRemovePromoCode, w as stripeStoreReset, j as stripeStore, I as stripeStoreRetrievePayment, J as stripeStoreMessageBasedOnStatus, K as stripeStoreResetPromoCode, l as localizationStore, L as stripeStoreTranslateAddressToLatin, M as cartStoreUpdateSelectedShippingOption, N as cartStoreGetShippingTransitInfo, O as sortServiceLevelOptionsByAmount } from './cart-911ba5dd.js';
3
3
  import { c as classes } from './classes-0d95c529.js';
4
- import { s as submitGtag, a as paypalStore, b as paypalStoreReset, i as isContrastColor } from './paypal-3d7d0148.js';
4
+ import { s as submitGtag, b as paypalStore, c as paypalStoreReset, i as isContrastColor } from './paypal-04a10fc2.js';
5
5
  import { z as zonosStore, g as getZonosStoreTheme, d as zonosStoreFontFamily } from './zonosStore-7798ac16.js';
6
- import { t as trackConversionEvent, c as createCustomEvent, g as getIsTestMode } from './createCustomEvent-5fdd75bf.js';
6
+ import { t as trackConversionEvent, c as createCustomEvent, g as getIsTestMode } from './createCustomEvent-6ba5bcde.js';
7
7
  import { g as getBorderRadius } from './getBorderRadius-e55a9df1.js';
8
8
  import { h as handleFetch, s as sendErrorLog, j as jsonParse } from './handleFetch-3dea7d46.js';
9
9
  import { i as isCheckoutMobile } from './isCheckoutMobile-8846dccb.js';
@@ -1,9 +1,9 @@
1
1
  import { r as registerInstance, h, H as Host, F as Fragment } from './index-86b8247e.js';
2
- import { l as localizationStore, s as stripeStoreGetDomesticShippingSession, a as localizationStoreUpdateSelectedCountryCode, b as stripeStoreCleanupDomesticShippingSession, c as stripeStoreSaveDomesticShippingSession, i as initStripeElements, d as cartStore, e as cartStoreUpdateItems, f as cartStoreReset, g as cartStoreResetTabItems, h as cartStoreClearCheckoutInterval, j as stripeStore, k as stripeStoreInitCheckoutSession, m as cartStoreStartCheckoutInterval, n as cartStoreUpdateToErrorState, t as translate, o as getZCountryUrlParam, p as cartStoreSetCheckoutSession, q as stripeStorePrefetchLandedCost, r as cartStoreNextStep, u as stripeStoreHandleInventoryCheck, v as stripeStoreConfirmPayment, w as stripeStoreReset, x as localizationStoreOnUpdate } from './cart-4ba1878f.js';
3
- import { s as submitGtag, p as paypalInitScript } from './paypal-3d7d0148.js';
2
+ import { l as localizationStore, s as stripeStoreGetDomesticShippingSession, a as localizationStoreUpdateSelectedCountryCode, b as stripeStoreCleanupDomesticShippingSession, c as stripeStoreSaveDomesticShippingSession, i as initStripeElements, d as cartStore, e as cartStoreUpdateItems, f as cartStoreReset, g as cartStoreResetTabItems, h as cartStoreClearCheckoutInterval, j as stripeStore, k as stripeStoreInitCheckoutSession, m as cartStoreStartCheckoutInterval, n as cartStoreUpdateToErrorState, t as translate, o as getZCountryUrlParam, p as cartStoreSetCheckoutSession, q as stripeStorePrefetchLandedCost, r as cartStoreNextStep, u as stripeStoreHandleInventoryCheck, v as stripeStoreConfirmPayment, w as stripeStoreReset, x as localizationStoreOnUpdate } from './cart-911ba5dd.js';
3
+ import { p as paypalStoreHasPaypalEnabled, s as submitGtag, a as paypalInitScript } from './paypal-04a10fc2.js';
4
4
  import { z as zonosStore, g as getZonosStoreTheme, m as mergeConfig } from './zonosStore-7798ac16.js';
5
5
  import { h as handleFetch, l as log, a as logError, s as sendErrorLog, g as getElapsedTime, b as allLogs, j as jsonParse } from './handleFetch-3dea7d46.js';
6
- import { t as trackConversionEvent, c as createCustomEvent, g as getIsTestMode } from './createCustomEvent-5fdd75bf.js';
6
+ import { t as trackConversionEvent, c as createCustomEvent, g as getIsTestMode } from './createCustomEvent-6ba5bcde.js';
7
7
  import { i as isCheckoutMobile } from './isCheckoutMobile-8846dccb.js';
8
8
  import { c as classes } from './classes-0d95c529.js';
9
9
  import { g as getBorderRadius } from './getBorderRadius-e55a9df1.js';
@@ -260,6 +260,7 @@ const ZonosCheckout = class {
260
260
  overrideSecondaryColor: (_d = this.appearanceSettingsOverride) === null || _d === void 0 ? void 0 : _d.colorSecondary,
261
261
  // only override theme or theme from appearance if it's mobile
262
262
  overrideTheme: this.isMobile ? theme : undefined,
263
+ paypalEnabled: paypalStoreHasPaypalEnabled(),
263
264
  });
264
265
  };
265
266
  this.formatDate = (timestamp) => {
@@ -1,5 +1,5 @@
1
1
  import { r as registerInstance, c as createEvent, h, H as Host } from './index-86b8247e.js';
2
- import { y as isValidSelector, j as stripeStore, z as initLocalizationStore, d as cartStore, a as localizationStoreUpdateSelectedCountryCode } from './cart-4ba1878f.js';
2
+ import { y as isValidSelector, j as stripeStore, z as initLocalizationStore, d as cartStore, a as localizationStoreUpdateSelectedCountryCode } from './cart-911ba5dd.js';
3
3
  import { z as zonosStore, b as zonosStoreInitSetting, d as zonosStoreFontFamily } from './zonosStore-7798ac16.js';
4
4
  import { h as handleFetch, a as logError, l as log } from './handleFetch-3dea7d46.js';
5
5
  import './isDarkColor-4261bc3c.js';
@@ -1,5 +1,5 @@
1
1
  import { r as registerInstance, h, H as Host, d as getElement } from './index-86b8247e.js';
2
- import { l as localizationStore } from './cart-4ba1878f.js';
2
+ import { l as localizationStore } from './cart-911ba5dd.js';
3
3
  import { d as zonosStoreFontFamily } from './zonosStore-7798ac16.js';
4
4
  import { c as classes } from './classes-0d95c529.js';
5
5
  import './handleFetch-3dea7d46.js';
@@ -1,5 +1,5 @@
1
1
  import { r as registerInstance, h, H as Host, d as getElement } from './index-86b8247e.js';
2
- import { a as localizationStoreUpdateSelectedCountryCode, t as translate, l as localizationStore } from './cart-4ba1878f.js';
2
+ import { a as localizationStoreUpdateSelectedCountryCode, t as translate, l as localizationStore } from './cart-911ba5dd.js';
3
3
  import { d as zonosStoreFontFamily } from './zonosStore-7798ac16.js';
4
4
  import { f as formatStringWithLinks } from './formatStringWithLinks-9e819405.js';
5
5
  import { i as isDarkColor } from './isDarkColor-4261bc3c.js';
@@ -1,5 +1,5 @@
1
1
  import { r as registerInstance, c as createEvent, h, F as Fragment, H as Host } from './index-86b8247e.js';
2
- import { t as translate, l as localizationStore, E as currencyFormat } from './cart-4ba1878f.js';
2
+ import { t as translate, l as localizationStore, E as currencyFormat } from './cart-911ba5dd.js';
3
3
  import { z as zonosStore } from './zonosStore-7798ac16.js';
4
4
  import { c as classes } from './classes-0d95c529.js';
5
5
  import { f as formatStringWithLinks } from './formatStringWithLinks-9e819405.js';
@@ -1,6 +1,6 @@
1
1
  import { r as registerInstance, h, H as Host } from './index-86b8247e.js';
2
2
  import { _ as _root, e as _baseGetTag, i as isObjectLike_1, f as isObject_1, z as zonosStore, g as getZonosStoreTheme, m as mergeConfig } from './zonosStore-7798ac16.js';
3
- import { l as localizationStore, y as isValidSelector, t as translate, o as getZCountryUrlParam, A as setZCountryUrlParam, B as currencyDisplay, C as currencyConvertAndFormat, D as currencyConvert, E as currencyFormat } from './cart-4ba1878f.js';
3
+ import { l as localizationStore, y as isValidSelector, t as translate, o as getZCountryUrlParam, A as setZCountryUrlParam, B as currencyDisplay, C as currencyConvertAndFormat, D as currencyConvert, E as currencyFormat } from './cart-911ba5dd.js';
4
4
  import { c as classes } from './classes-0d95c529.js';
5
5
  import { h as handleFetch, a as logError, l as log } from './handleFetch-3dea7d46.js';
6
6
  import { g as getHasMoreSpaceOnRight } from './getHasMoreSpaceOnRight-70eb913a.js';
@@ -1,5 +1,5 @@
1
1
  import { r as registerInstance, h, H as Host } from './index-86b8247e.js';
2
- import { Q as localizationStoreUpdateSelectedLocale, t as translate, l as localizationStore } from './cart-4ba1878f.js';
2
+ import { Q as localizationStoreUpdateSelectedLocale, t as translate, l as localizationStore } from './cart-911ba5dd.js';
3
3
  import { d as zonosStoreFontFamily } from './zonosStore-7798ac16.js';
4
4
  import { l as languages } from './ILanguage-cd6acb72.js';
5
5
  import './handleFetch-3dea7d46.js';
@@ -1,9 +1,9 @@
1
1
  import { r as registerInstance, h, H as Host, d as getElement, c as createEvent } from './index-86b8247e.js';
2
2
  import { d as zonosStoreFontFamily } from './zonosStore-7798ac16.js';
3
3
  import { c as classes } from './classes-0d95c529.js';
4
- import { j as stripeStore } from './cart-4ba1878f.js';
4
+ import { j as stripeStore } from './cart-911ba5dd.js';
5
5
  import { a as logError, l as log } from './handleFetch-3dea7d46.js';
6
- import { c as paypalStoreInitButtons } from './paypal-3d7d0148.js';
6
+ import { d as paypalStoreInitButtons } from './paypal-04a10fc2.js';
7
7
  import './isDarkColor-4261bc3c.js';
8
8
  import './getBorderRadius-e55a9df1.js';
9
9