@zonos/elements 1.3.75 → 1.3.76

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 (163) hide show
  1. package/dist/cjs/{cart-6dd9e3cd.js → cart-307b8dc7.js} +23 -17
  2. package/dist/cjs/{createCustomEvent-4efb5ab7.js → createCustomEvent-8b7e430f.js} +1 -1
  3. package/dist/cjs/index.cjs.js +7 -7
  4. package/dist/cjs/{paypal-f0d2a8cf.js → paypal-f0e6424f.js} +1 -1
  5. package/dist/cjs/zonos-address_8.cjs.entry.js +1 -1
  6. package/dist/cjs/zonos-badge_13.cjs.entry.js +3 -3
  7. package/dist/cjs/zonos-checkout.cjs.entry.js +9 -6
  8. package/dist/cjs/zonos-controller.cjs.entry.js +3 -3
  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-finish/zonos-checkout-finish.js +2 -2
  16. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-footer/zonos-checkout-footer.js +2 -2
  17. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout.js +8 -5
  18. package/dist/collection/components/checkout/zonos-checkout/zonos-review/zonos-review.js +1 -1
  19. package/dist/collection/components/common/zonos-button/zonos-button.js +4 -4
  20. package/dist/collection/components/common/zonos-checkbox/zonos-checkbox.js +2 -2
  21. package/dist/collection/components/common/zonos-country-flag/zonos-country-flag.js +2 -2
  22. package/dist/collection/components/common/zonos-dialog/zonos-dialog.js +2 -2
  23. package/dist/collection/components/common/zonos-logo/zonos-logo.js +2 -2
  24. package/dist/collection/components/common/zonos-shipping-rich-radio/zonos-shipping-rich-radio.js +4 -4
  25. package/dist/collection/components/hello/zonos-hello/zonos-hello.js +2 -2
  26. package/dist/collection/components/hello/zonos-hello-dialog/zonos-hello-dialog.js +2 -2
  27. package/dist/collection/components/main/zonos-controller.js +4 -4
  28. package/dist/collection/components/store/checkout/cart.js +4 -4
  29. package/dist/collection/components/store/checkout/stripe.js +6 -6
  30. package/dist/collection/components/store/hello/localization.js +11 -5
  31. package/dist/collection/components/utils/api/prepCalculateLandedCost.js +1 -1
  32. package/dist/collection/components/utils/checkout/{buildTranslateRequestBody.js → buildTranslateRequest.js} +2 -2
  33. package/dist/collection/types/checkout/api/CheckoutSession.js +1 -0
  34. package/dist/collection/types/checkout/api/Paypal.js +1 -0
  35. package/dist/collection/types/checkout/api/ValidateAddress.js +1 -0
  36. package/dist/collection/types/generated/{graphql.customer.types.js → graphql.internal.types.js} +8 -0
  37. package/dist/collection/types/index.js +8 -1
  38. package/dist/esm/{cart-66d17f99.js → cart-0345943b.js} +23 -17
  39. package/dist/esm/{createCustomEvent-4ac32a26.js → createCustomEvent-11fa43d2.js} +1 -1
  40. package/dist/esm/index.js +7 -7
  41. package/dist/esm/{paypal-3e2c7b41.js → paypal-7592a690.js} +1 -1
  42. package/dist/esm/zonos-address_8.entry.js +1 -1
  43. package/dist/esm/zonos-badge_13.entry.js +3 -3
  44. package/dist/esm/zonos-checkout.entry.js +9 -6
  45. package/dist/esm/zonos-controller.entry.js +3 -3
  46. package/dist/esm/zonos-country-flag.entry.js +1 -1
  47. package/dist/esm/zonos-country-select_4.entry.js +1 -1
  48. package/dist/esm/zonos-hello-dialog.entry.js +1 -1
  49. package/dist/esm/zonos-hello.entry.js +1 -1
  50. package/dist/esm/zonos-language-select_2.entry.js +1 -1
  51. package/dist/esm/zonos-notification_3.entry.js +2 -2
  52. package/dist/esm-es5/{cart-66d17f99.js → cart-0345943b.js} +1 -1
  53. package/dist/esm-es5/{createCustomEvent-4ac32a26.js → createCustomEvent-11fa43d2.js} +1 -1
  54. package/dist/esm-es5/index.js +1 -1
  55. package/dist/esm-es5/{paypal-3e2c7b41.js → paypal-7592a690.js} +1 -1
  56. package/dist/esm-es5/zonos-address_8.entry.js +1 -1
  57. package/dist/esm-es5/zonos-badge_13.entry.js +1 -1
  58. package/dist/esm-es5/zonos-checkout.entry.js +1 -1
  59. package/dist/esm-es5/zonos-controller.entry.js +1 -1
  60. package/dist/esm-es5/zonos-country-flag.entry.js +1 -1
  61. package/dist/esm-es5/zonos-country-select_4.entry.js +1 -1
  62. package/dist/esm-es5/zonos-hello-dialog.entry.js +1 -1
  63. package/dist/esm-es5/zonos-hello.entry.js +1 -1
  64. package/dist/esm-es5/zonos-language-select_2.entry.js +1 -1
  65. package/dist/esm-es5/zonos-notification_3.entry.js +1 -1
  66. package/dist/scripts/index.d.ts +51 -50
  67. package/dist/scripts/index.js +1 -1
  68. package/dist/scripts/loadZonos.js +1 -1
  69. package/dist/scripts/zonos.js +1 -1
  70. package/dist/types/components/checkout/zonos-checkout/zonos-checkout-finish/zonos-checkout-finish.d.ts +1 -1
  71. package/dist/types/components/checkout/zonos-checkout/zonos-checkout-footer/zonos-checkout-footer.d.ts +1 -1
  72. package/dist/types/components/checkout/zonos-checkout/zonos-checkout.d.ts +2 -2
  73. package/dist/types/components/common/zonos-button/zonos-button.d.ts +1 -1
  74. package/dist/types/components/common/zonos-checkbox/zonos-checkbox.d.ts +1 -1
  75. package/dist/types/components/common/zonos-country-flag/zonos-country-flag.d.ts +1 -1
  76. package/dist/types/components/common/zonos-dialog/zonos-dialog.d.ts +1 -1
  77. package/dist/types/components/common/zonos-logo/zonos-logo.d.ts +1 -1
  78. package/dist/types/components/common/zonos-shipping-rich-radio/zonos-shipping-rich-radio.d.ts +1 -1
  79. package/dist/types/components/hello/zonos-hello/zonos-hello.d.ts +1 -1
  80. package/dist/types/components/hello/zonos-hello-dialog/zonos-hello-dialog.d.ts +1 -1
  81. package/dist/types/components/main/zonos-controller.d.ts +1 -1
  82. package/dist/types/components/store/checkout/cart.d.ts +8 -8
  83. package/dist/types/components/store/checkout/paypal.d.ts +1 -1
  84. package/dist/types/components/store/checkout/stripe.d.ts +3 -15
  85. package/dist/types/components/store/hello/localization.d.ts +1 -1
  86. package/dist/types/components/store/zonosStore.d.ts +1 -1
  87. package/dist/types/components/utils/api/calculateLandedCost.d.ts +1 -1
  88. package/dist/types/components/utils/api/calculateLandedCostNormalized.d.ts +1 -1
  89. package/dist/types/components/utils/api/cartCalculateLandedCost.d.ts +1 -1
  90. package/dist/types/components/utils/api/checkItemRestrictions.d.ts +4 -13
  91. package/dist/types/components/utils/api/getInclusivePricing.d.ts +1 -1
  92. package/dist/types/components/utils/api/getShippingZones.d.ts +1 -1
  93. package/dist/types/components/utils/api/getZonosSettings.d.ts +1 -1
  94. package/dist/types/components/utils/api/paypalCaptureOrder.d.ts +3 -7
  95. package/dist/types/components/utils/api/paypalCreateOrder.d.ts +3 -6
  96. package/dist/types/components/utils/api/prepCalculateLandedCost.d.ts +1 -1
  97. package/dist/types/components/utils/api/trackConversionEvent.d.ts +1 -2
  98. package/dist/types/components/utils/api/triggerBuildLandedCost.d.ts +2 -2
  99. package/dist/types/components/utils/checkout/{buildTranslateRequestBody.d.ts → buildTranslateRequest.d.ts} +3 -3
  100. package/dist/types/components/utils/getBorderRadius.d.ts +1 -1
  101. package/dist/types/components/utils/hello/currencyConversion/currencyFormat.d.ts +1 -1
  102. package/dist/types/components/utils/hello/currencyConversion/getCurrencyCode.d.ts +1 -1
  103. package/dist/types/components/utils/hello/currencyConversion/numberFormat.d.ts +1 -1
  104. package/dist/types/components/utils/hello/detectItemRestrictions.d.ts +2 -2
  105. package/dist/types/components/utils/hello/initHello.d.ts +1 -1
  106. package/dist/types/components/utils/logging/sendLoadScriptLog.d.ts +2 -2
  107. package/dist/types/components.d.ts +2 -2
  108. package/dist/types/scripts/_zonosBase.d.ts +1 -1
  109. package/dist/types/scripts/cart/_setupCartData.d.ts +1 -1
  110. package/dist/types/styles/stripe/addressRuleStyle.d.ts +1 -1
  111. package/dist/types/styles/stripe/defaultVariable.d.ts +1 -1
  112. package/dist/types/types/ConversionEvent.d.ts +12 -0
  113. package/dist/types/types/ICountryJson.d.ts +1 -1
  114. package/dist/types/types/{LogErrorRequestBody.d.ts → LogError.d.ts} +1 -1
  115. package/dist/types/types/{LogLoadScriptRequestBody.d.ts → LogLoadScript.d.ts} +1 -1
  116. package/dist/types/types/checkout/CheckoutConfig.d.ts +1 -1
  117. package/dist/types/types/checkout/TranslatedText.d.ts +1 -1
  118. package/dist/types/types/checkout/api/{CalculateLandedCostRequest.d.ts → CalculateLandedCost.d.ts} +12 -11
  119. package/dist/types/types/checkout/api/CheckoutSession.d.ts +30 -0
  120. package/dist/types/types/checkout/api/NormalizedTempCart.d.ts +1 -1
  121. package/dist/types/types/checkout/api/Paypal.d.ts +8 -0
  122. package/dist/types/types/checkout/api/{ValidateAddressRequest.d.ts → ValidateAddress.d.ts} +2 -2
  123. package/dist/types/types/generated/{graphql.customer.types.d.ts → graphql.internal.types.d.ts} +10 -0
  124. package/dist/types/types/generated/{graphql.customer.types.ts → graphql.internal.types.ts} +14 -0
  125. package/dist/types/types/hello/HelloConfig.d.ts +1 -1
  126. package/dist/types/types/hello/RestrictedItem.d.ts +10 -1
  127. package/dist/types/types/index.d.ts +8 -1
  128. package/dist/zonos-elements/index.esm.js +1 -1
  129. package/dist/zonos-elements/p-31c8e3f2.entry.js +1 -0
  130. package/dist/zonos-elements/{p-3088517c.system.js → p-320e3627.system.js} +2 -2
  131. package/dist/zonos-elements/{p-0d719ad2.system.js → p-3b78b5db.system.js} +1 -1
  132. package/dist/zonos-elements/{p-325233e3.js → p-4e21f719.js} +2 -2
  133. package/dist/zonos-elements/{p-432a5555.system.entry.js → p-514b94ec.system.entry.js} +1 -1
  134. package/dist/zonos-elements/{p-6488e805.system.entry.js → p-54d31641.system.entry.js} +1 -1
  135. package/dist/zonos-elements/{p-01a8ec15.system.entry.js → p-55020546.system.entry.js} +1 -1
  136. package/dist/zonos-elements/{p-ea340dbf.entry.js → p-70acd15f.entry.js} +1 -1
  137. package/dist/zonos-elements/{p-dbbf8d3e.system.js → p-71382e47.system.js} +1 -1
  138. package/dist/zonos-elements/{p-ffaef730.js → p-76b9668f.js} +1 -1
  139. package/dist/zonos-elements/{p-bc803391.system.entry.js → p-78abda17.system.entry.js} +1 -1
  140. package/dist/zonos-elements/{p-b6e58c30.js → p-8478f4ee.js} +1 -1
  141. package/dist/zonos-elements/{p-d0ae7ede.system.entry.js → p-85140605.system.entry.js} +1 -1
  142. package/dist/zonos-elements/{p-0a411ee0.system.entry.js → p-8915c7ff.system.entry.js} +1 -1
  143. package/dist/zonos-elements/{p-1b101d0f.entry.js → p-94d92a0b.entry.js} +1 -1
  144. package/dist/zonos-elements/{p-c86fa519.system.js → p-95c4785f.system.js} +1 -1
  145. package/dist/zonos-elements/{p-0819aa2d.system.entry.js → p-9a88fb19.system.entry.js} +1 -1
  146. package/dist/zonos-elements/{p-882d2619.entry.js → p-a57f0556.entry.js} +1 -1
  147. package/dist/zonos-elements/{p-3ec5cfe1.entry.js → p-be6c49ec.entry.js} +1 -1
  148. package/dist/zonos-elements/{p-438ac9d0.entry.js → p-c6e90e75.entry.js} +1 -1
  149. package/dist/zonos-elements/p-c78dd680.system.js +1 -1
  150. package/dist/zonos-elements/{p-b362e3c9.entry.js → p-cab296cc.entry.js} +1 -1
  151. package/dist/zonos-elements/{p-72345655.entry.js → p-cf61027a.entry.js} +1 -1
  152. package/dist/zonos-elements/{p-999c1c0b.entry.js → p-dc430b34.entry.js} +1 -1
  153. package/dist/zonos-elements/{p-bad47d15.system.entry.js → p-e3068a5f.system.entry.js} +1 -1
  154. package/dist/zonos-elements/{p-ac3cd38e.system.entry.js → p-eacd1669.system.entry.js} +1 -1
  155. package/dist/zonos-elements/{p-a6223def.system.entry.js → p-f7965bc8.system.entry.js} +1 -1
  156. package/dist/zonos-elements/{p-ea124e18.entry.js → p-f8cbd1b8.entry.js} +1 -1
  157. package/dist/zonos-elements/zonos-elements.esm.js +1 -1
  158. package/package.json +1 -1
  159. package/dist/zonos-elements/p-913efe84.entry.js +0 -1
  160. /package/dist/collection/types/{LogErrorRequestBody.js → ConversionEvent.js} +0 -0
  161. /package/dist/collection/types/{LogLoadScriptRequestBody.js → LogError.js} +0 -0
  162. /package/dist/collection/types/{checkout/api/CalculateLandedCostRequest.js → LogLoadScript.js} +0 -0
  163. /package/dist/collection/types/checkout/api/{ValidateAddressRequest.js → CalculateLandedCost.js} +0 -0
@@ -1,4 +1,4 @@
1
- import type { LogLoadScriptRequestBody } from "../../../types/LogLoadScriptRequestBody";
2
- type Params = Omit<LogLoadScriptRequestBody, 'href'>;
1
+ import type { LogLoadScriptRequest } from "../../../types/LogLoadScript";
2
+ type Params = Omit<LogLoadScriptRequest, 'href'>;
3
3
  export declare const sendLoadScriptLog: (params: Params) => Promise<void>;
4
4
  export {};
@@ -10,7 +10,7 @@ import { EnteredInfo, TranslatedAddressObject } from "./types/checkout/Translate
10
10
  import { SubmitEventData } from "./components/checkout/zonos-checkout/zonos-address-update-dialog/zonos-address-update-dialog";
11
11
  import { CheckboxColorPrefix, Color, ColorPrefix } from "./types/styles/Color";
12
12
  import { BannerIntent } from "./components/common/zonos-banner/zonos-banner";
13
- import { CheckoutSessionDetailsFragment, CountryCode, ElementsUiStyle, ElementsUiTheme, HelloMobileLocation } from "./types/generated/graphql.customer.types";
13
+ import { CheckoutSessionDetailsFragment, CountryCode, ElementsUiStyle, ElementsUiTheme, HelloMobileLocation } from "./types/generated/graphql.internal.types";
14
14
  import { Color as Color1 } from "./types/index";
15
15
  import { FontWeight, Size, Type } from "./types/styles/Text";
16
16
  import { AppearanceConfig } from "./components/store/zonosStore";
@@ -30,7 +30,7 @@ export { EnteredInfo, TranslatedAddressObject } from "./types/checkout/Translate
30
30
  export { SubmitEventData } from "./components/checkout/zonos-checkout/zonos-address-update-dialog/zonos-address-update-dialog";
31
31
  export { CheckboxColorPrefix, Color, ColorPrefix } from "./types/styles/Color";
32
32
  export { BannerIntent } from "./components/common/zonos-banner/zonos-banner";
33
- export { CheckoutSessionDetailsFragment, CountryCode, ElementsUiStyle, ElementsUiTheme, HelloMobileLocation } from "./types/generated/graphql.customer.types";
33
+ export { CheckoutSessionDetailsFragment, CountryCode, ElementsUiStyle, ElementsUiTheme, HelloMobileLocation } from "./types/generated/graphql.internal.types";
34
34
  export { Color as Color1 } from "./types/index";
35
35
  export { FontWeight, Size, Type } from "./types/styles/Text";
36
36
  export { AppearanceConfig } from "./components/store/zonosStore";
@@ -4,7 +4,7 @@ import type { AppearanceConfig } from "../components/store/zonosStore";
4
4
  import type { NotificationInit } from "../types/index";
5
5
  import type { NormalizedTempCart } from "../types/checkout/api/NormalizedTempCart";
6
6
  import { type CheckoutConfig } from "../types/checkout/CheckoutConfig";
7
- import type { CountryCode, CurrencyCode, PaypalMockResponse } from "../types/generated/graphql.customer.types";
7
+ import type { CountryCode, CurrencyCode, PaypalMockResponse } from "../types/generated/graphql.internal.types";
8
8
  import type { HelloConfig } from "../types/hello/HelloConfig";
9
9
  /**
10
10
  * Currency converter function to be used in Hello and Checkout
@@ -1,5 +1,5 @@
1
1
  export declare const setupCartData: (cartId: string) => Promise<{
2
- cartData: import("../../types/checkout/api/NormalizedTempCart").NormalizedTempCart;
2
+ cartData: import("../..").NormalizedTempCart;
3
3
  storeFavicon: string;
4
4
  storeId: number;
5
5
  storeLogo: string;
@@ -1,4 +1,4 @@
1
- import type { ElementsUiTheme } from "../../types/generated/graphql.customer.types";
1
+ import type { ElementsUiTheme } from "../../types/generated/graphql.internal.types";
2
2
  import type { StripeRuleType } from "../../types/stripe/Apperance";
3
3
  export declare const addressRuleStyle: ({ theme, }: {
4
4
  theme: ElementsUiTheme;
@@ -1,5 +1,5 @@
1
1
  import type { Appearance } from '@stripe/stripe-js';
2
- import type { ElementsUiStyle, ElementsUiTheme } from "../../types/generated/graphql.customer.types";
2
+ import type { ElementsUiStyle, ElementsUiTheme } from "../../types/generated/graphql.internal.types";
3
3
  export declare const defaultVariable: ({ borderStyle, theme, }: {
4
4
  borderStyle?: ElementsUiStyle;
5
5
  theme: ElementsUiTheme;
@@ -0,0 +1,12 @@
1
+ import type { CountryCode } from "./index";
2
+ export type ConversionEvent = 'checkout_open' | 'checkout_customerInfoCompleted' | 'checkout_shippingInfoCompleted' | 'checkout_paymentInfoCompleted' | 'checkout_orderCompleted';
3
+ export type ConversionEventRequest = {
4
+ checkoutSessionId: string;
5
+ countryCode: CountryCode | null;
6
+ eventName: ConversionEvent;
7
+ metadata?: Record<string, unknown>;
8
+ organizationId: string;
9
+ };
10
+ export type ConversionEventResponse = {
11
+ message: string;
12
+ };
@@ -1,5 +1,5 @@
1
- import type { CountryCode } from "./generated/graphql.customer.types";
2
1
  import type { Locale_ElementsSupportedLocationCode_Enum } from "./generated/graphql.frontend.types";
2
+ import type { CountryCode } from "./generated/graphql.internal.types";
3
3
  export type ICountry = {
4
4
  bigcommerceDisplayName?: string;
5
5
  code: CountryCode;
@@ -1,4 +1,4 @@
1
- export type LogErrorRequestBody = {
1
+ export type LogErrorRequest = {
2
2
  endpoint: string;
3
3
  errors: string[];
4
4
  metadata: Record<string, unknown>;
@@ -1,5 +1,5 @@
1
1
  type LoadEventName = 'vercel' | 'jsdelivr' | 'unpkg' | 'cdnjs';
2
- export type LogLoadScriptRequestBody = {
2
+ export type LogLoadScriptRequest = {
3
3
  cache: 'hit' | 'miss';
4
4
  cdnLoadTime?: number;
5
5
  eventName: LoadEventName;
@@ -1,6 +1,6 @@
1
1
  import type { CartItem } from "../../components/store/checkout/cart";
2
2
  import type { BuildLandedCostParams, BuildLandedCostResponse } from "../../components/utils/api/triggerBuildLandedCost";
3
- import type { AnalyticsProviderStatus, AnalyticsProviderType, CheckoutSubscriptionStatus, CheckoutSuccessBehavior, CheckoutVisibilityStatus, CountryCode, CurrencyCode, ExternalPaymentMethodStatus, ExternalPaymentMethodType, ExternalServiceTokenType, GetOrderQuery, Mode, NotificationActiveStatus } from "../generated/graphql.customer.types";
3
+ import type { AnalyticsProviderStatus, AnalyticsProviderType, CheckoutSubscriptionStatus, CheckoutSuccessBehavior, CheckoutVisibilityStatus, CountryCode, CurrencyCode, ExternalPaymentMethodStatus, ExternalPaymentMethodType, ExternalServiceTokenType, GetOrderQuery, Mode, NotificationActiveStatus } from "../generated/graphql.internal.types";
4
4
  export declare const checkoutHiddenBtnSelector = "zonos--checkout-hidden-button";
5
5
  export declare const domesticRedirectedBtnSelector = "zonos--domestic-redirected-checkout-button";
6
6
  export type ZonosOrder = GetOrderQuery['order'];
@@ -1,5 +1,5 @@
1
1
  import type { StripeAddressElementChangeEvent } from '@stripe/stripe-js';
2
- import type { CountryCode } from "../generated/graphql.customer.types";
2
+ import type { CountryCode } from "../generated/graphql.internal.types";
3
3
  export type TranslatedText = {
4
4
  [key: string]: string;
5
5
  };
@@ -1,11 +1,17 @@
1
1
  import type { CartItem } from "../../../components/store/checkout/cart";
2
- import type { CurrencyCode, LandedCostAdjustmentType } from "../../generated/graphql.customer.types";
2
+ import type { CountryCode, CurrencyCode, LandedCostAdjustmentType } from "../../generated/graphql.internal.types";
3
+ export type CalculateLandedCostAdjustmentInput = {
4
+ amount: number;
5
+ productId: string | null;
6
+ sku: string | null;
7
+ type: LandedCostAdjustmentType;
8
+ };
3
9
  export type CalculateLandedCostRequest = {
4
10
  billingAddress: {
5
11
  addressLine1: string;
6
12
  addressLine2?: string | undefined;
7
13
  city: string;
8
- country: string;
14
+ country: CountryCode;
9
15
  postalCode: string;
10
16
  state: string;
11
17
  };
@@ -22,12 +28,7 @@ export type CalculateLandedCostRequest = {
22
28
  phone: string;
23
29
  };
24
30
  items: CartItem[];
25
- landedCostAdjustments?: {
26
- amount: number;
27
- productId: string | null;
28
- sku: string | null;
29
- type: LandedCostAdjustmentType;
30
- }[];
31
+ landedCostAdjustments?: CalculateLandedCostAdjustmentInput[];
31
32
  metadata?: {
32
33
  key: string;
33
34
  value: string;
@@ -36,7 +37,7 @@ export type CalculateLandedCostRequest = {
36
37
  addressLine1: string;
37
38
  addressLine2?: string | undefined;
38
39
  city: string;
39
- country: string;
40
+ country: CountryCode;
40
41
  postalCode: string;
41
42
  state: string;
42
43
  };
@@ -46,7 +47,7 @@ export type CartCalculateLandedCostRequest = {
46
47
  addressLine1: string;
47
48
  addressLine2?: string | undefined;
48
49
  city: string;
49
- country: string;
50
+ country: CountryCode;
50
51
  postalCode: string;
51
52
  state: string;
52
53
  };
@@ -75,7 +76,7 @@ export type CartCalculateLandedCostRequest = {
75
76
  addressLine1: string;
76
77
  addressLine2?: string | undefined;
77
78
  city: string;
78
- country: string;
79
+ country: CountryCode;
79
80
  postalCode: string;
80
81
  state: string;
81
82
  };
@@ -0,0 +1,30 @@
1
+ import type { CountryCode } from "../../generated/graphql.internal.types";
2
+ export type CheckoutSessionUpdateRequest = {
3
+ adjustmentsAmount: number;
4
+ cartId: string | null;
5
+ currency?: string;
6
+ id: string;
7
+ itemsAmount?: number;
8
+ landedCostId?: string;
9
+ metadata?: {
10
+ key: string;
11
+ value: string;
12
+ }[];
13
+ presentmentCountryCode: CountryCode | null;
14
+ };
15
+ export type CheckoutSessionUpdateMetadata = {
16
+ key: string;
17
+ value: string;
18
+ }[];
19
+ export type CheckoutSessionUpdateMetadataRequest = {
20
+ id: string;
21
+ metadata: CheckoutSessionUpdateMetadata;
22
+ };
23
+ export type CheckoutSessionCreateRequest = {
24
+ adjustmentsAmount: number;
25
+ cartId: string | null;
26
+ currency: string;
27
+ itemsAmount: number;
28
+ metadata: CheckoutSessionUpdateMetadata;
29
+ presentmentCountryCode: CountryCode | null;
30
+ };
@@ -1,4 +1,4 @@
1
- import type { CartAdjustmentType, CountryCode, CurrencyCode, ItemMeasurementType, ItemType, ItemUnitOfMeasure } from "../../generated/graphql.customer.types";
1
+ import type { CartAdjustmentType, CountryCode, CurrencyCode, ItemMeasurementType, ItemType, ItemUnitOfMeasure } from "../../generated/graphql.internal.types";
2
2
  export type NormalizedTempCartItem = {
3
3
  amount: number;
4
4
  attributes: {
@@ -0,0 +1,8 @@
1
+ import type { PaypalMockResponse } from "../../generated/graphql.internal.types";
2
+ export type PaypalCaptureOrderRequest = {
3
+ checkoutSessionId: string;
4
+ paypalMockResponse: PaypalMockResponse | null;
5
+ };
6
+ export type PaypalCreateOrderRequest = {
7
+ checkoutSessionId: string;
8
+ };
@@ -1,5 +1,5 @@
1
- import type { CountryCode } from "../../generated/graphql.customer.types";
2
- export type ValidateAddressRequestBody = {
1
+ import type { CountryCode } from "../../generated/graphql.internal.types";
2
+ export type ValidateAddressRequest = {
3
3
  address?: {
4
4
  city?: string;
5
5
  line1?: string;
@@ -111,6 +111,11 @@ export declare const adjustmentRecordType: {
111
111
  readonly InvoiceLineRecord: "INVOICE_LINE_RECORD";
112
112
  };
113
113
  export type AdjustmentRecordType = (typeof adjustmentRecordType)[keyof typeof adjustmentRecordType];
114
+ export declare const adjustmentSource: {
115
+ readonly ApiRequest: "API_REQUEST";
116
+ readonly PromoCode: "PROMO_CODE";
117
+ };
118
+ export type AdjustmentSource = (typeof adjustmentSource)[keyof typeof adjustmentSource];
114
119
  export declare const adjustmentType: {
115
120
  readonly Charge: "CHARGE";
116
121
  readonly Credit: "CREDIT";
@@ -2023,6 +2028,11 @@ export declare const matchType: {
2023
2028
  readonly PartialMatch: "PARTIAL_MATCH";
2024
2029
  };
2025
2030
  export type MatchType = (typeof matchType)[keyof typeof matchType];
2031
+ export declare const merchantOfRecordType: {
2032
+ readonly Merchant: "MERCHANT";
2033
+ readonly Zonos: "ZONOS";
2034
+ };
2035
+ export type MerchantOfRecordType = (typeof merchantOfRecordType)[keyof typeof merchantOfRecordType];
2026
2036
  export declare const mode: {
2027
2037
  readonly Live: "LIVE";
2028
2038
  readonly Test: "TEST";
@@ -98,6 +98,13 @@ export const adjustmentRecordType = {
98
98
 
99
99
  export type AdjustmentRecordType =
100
100
  (typeof adjustmentRecordType)[keyof typeof adjustmentRecordType];
101
+ export const adjustmentSource = {
102
+ ApiRequest: 'API_REQUEST',
103
+ PromoCode: 'PROMO_CODE',
104
+ } as const;
105
+
106
+ export type AdjustmentSource =
107
+ (typeof adjustmentSource)[keyof typeof adjustmentSource];
101
108
  export const adjustmentType = {
102
109
  Charge: 'CHARGE',
103
110
  Credit: 'CREDIT',
@@ -2422,6 +2429,13 @@ export const matchType = {
2422
2429
  } as const;
2423
2430
 
2424
2431
  export type MatchType = (typeof matchType)[keyof typeof matchType];
2432
+ export const merchantOfRecordType = {
2433
+ Merchant: 'MERCHANT',
2434
+ Zonos: 'ZONOS',
2435
+ } as const;
2436
+
2437
+ export type MerchantOfRecordType =
2438
+ (typeof merchantOfRecordType)[keyof typeof merchantOfRecordType];
2425
2439
 
2426
2440
  export const mode = {
2427
2441
  Live: 'LIVE',
@@ -1,4 +1,4 @@
1
- import type { CountryCode, CurrencyCode, HelloCurrencyBehavior, HelloMobileLocation, HelloPeekMessageBehavior, HelloRestrictionBehavior, Mode } from "../generated/graphql.customer.types";
1
+ import type { CountryCode, CurrencyCode, HelloCurrencyBehavior, HelloMobileLocation, HelloPeekMessageBehavior, HelloRestrictionBehavior, Mode } from "../generated/graphql.internal.types";
2
2
  export type CountryOverrideBehavior = 'URL_PARAM' | 'SESSION';
3
3
  export type ShowForCountries = 'ALL' | 'ONLY_SHIPPABLE' | CountryCode[];
4
4
  export type ShowCountryList = 'ALL' | 'ONLY_SHIPPABLE' | CountryCode[];
@@ -1,6 +1,15 @@
1
- import type { CheckItemRestrictionsMutation } from "../generated/graphql.customer.types";
1
+ import type { CheckItemRestrictionsMutation, CountryCode } from "../generated/graphql.internal.types";
2
2
  type Items = CheckItemRestrictionsMutation['itemRestrictionApply']['items'];
3
3
  export type RestrictedItem = Items[number] & {
4
4
  name?: string;
5
5
  };
6
+ type CheckItemRestrictionItem = {
7
+ description: string;
8
+ name: string;
9
+ };
10
+ export type CheckItemRestrictionRequest = {
11
+ items: CheckItemRestrictionItem[];
12
+ shipFrom: CountryCode;
13
+ shipTo: CountryCode;
14
+ };
6
15
  export {};
@@ -1,10 +1,17 @@
1
1
  import './global.d';
2
2
  export * from '../components.d';
3
3
  export type { CartItem, ItemMeasurement, } from '../components/store/checkout/cart';
4
- export * from './checkout/api/CalculateLandedCostRequest';
4
+ export * from './checkout/api/CalculateLandedCost';
5
+ export * from './checkout/api/CheckoutSession';
6
+ export * from './checkout/api/NormalizedTempCart';
7
+ export * from './checkout/api/Paypal';
8
+ export * from './checkout/api/ValidateAddress';
5
9
  export * from './checkout/CheckoutConfig';
10
+ export * from './ConversionEvent';
6
11
  export * from './hello/HelloConfig';
7
12
  export * from './JsonError';
13
+ export * from './LogError';
14
+ export * from './LogLoadScript';
8
15
  export * from './NoInfer';
9
16
  export * from './stripe/Apperance';
10
17
  export * from './Translation';
@@ -1 +1 @@
1
- import{l as e,a as n}from"./p-2ec2e9d3.js";import{s as t,c as o}from"./p-6b3fd741.js";export{c as checkoutHiddenBtnSelector,d as domesticRedirectedBtnSelector}from"./p-6b3fd741.js";const s=["jsdelivr","cdnjs","unpkg","vercel"],r="jsdelivr",i=e=>{const n=s.indexOf(e);return s[n+1]||null},l="https://js.stripe.com/v3",u=/^https:\/\/js\.stripe\.com\/v3\/?(\?.*)?$/,a="loadStripe.setLoadParameters was called but an existing Stripe.js script already exists in the document; existing script parameters will be used";let m=null;const p=Promise.resolve().then((()=>{return e=null,null!==m||(m=new Promise(((t,o)=>{if("undefined"!=typeof window&&"undefined"!=typeof document)if(window.Stripe&&e&&console.warn(a),window.Stripe)t(window.Stripe);else try{let s=(()=>{const e=document.querySelectorAll(`script[src^="${l}"]`);for(let n=0;n<e.length;n++){const t=e[n];if(t&&u.test(t.src))return t}return null})();s&&e?console.warn(a):s||(s=(e=>{const t=e&&!e.advancedFraudSignals?"?advancedFraudSignals=false":"",o=document.createElement("script");o.src=`${l}${t}`;const s=document.head||document.body;return s?(s.appendChild(o),o):(n("Expected document.body not to be null. Stripe.js requires a <body> element."),null)})(e)),null==s||s.addEventListener("load",(()=>{window.Stripe?t(window.Stripe):o(new Error("Stripe.js not available"))})),null==s||s.addEventListener("error",(()=>{o(new Error("Failed to load Stripe.js"))}))}catch(e){return void o(e)}else t(null)}))),m;var e}));let w=!1;var f;p.catch((e=>{w||console.warn(e)}));const h=(()=>{if("undefined"==typeof document)return null;const e=document.querySelector('script[src*="/zonos.js"]'),{currentLoadScriptUrl:n,isWhiteListed:t}=(({loadScriptSrc:e})=>{if(!e)return{currentLoadScriptUrl:"",isForceLoadVersionDomain:!1,isWhiteListed:!1};const n=new URL(e).origin,t=["dev.elements.zonos.com","dev.assets-checkout.zonos.com",".js.zonos.com","zonos-elements-test-git","zonos-elements-git"].some((e=>n.includes(e))),o=["qa.js.zonos.com"].some((e=>n.includes(e)));return{currentLoadScriptUrl:n,isForceLoadVersionDomain:o,isWhiteListed:t}})({loadScriptSrc:null==e?void 0:e.src});return t?n:null})(),v="https://v1.3.75.js.zonos.com",y=h||"https://cdn.jsdelivr.net/npm/@zonos/elements@1.3.75",z="https://rsms.me",j="https://fonts.googleapis.com",S=/^https:\/\/rsms\.me\/inter\/inter\.css(.*)$/;class g{}f=g,g.doneInit=!1,g.debug="undefined"!=typeof window&&!!window.location.search.match(/\?.*(&*)zonosDebug=1/),g.zonosConversionTest="undefined"!=typeof window&&!!window.location.search.match(/\?.*(&*)zonosConversionTest/),g._paypalMockResponse=null,g.isBigCommerce=!1,g.releaseDate="1728510301035",g.isLegacyCheckout=!1,g.isNpm=!0,g.zonosQaUrl=null,g.zonosQaUrlApi=null,g.version="v1.3.75",g.modeAlerted=!1,g.cartData=null,g.paypal=null,g.getCurrentTimestamp=()=>(new Date).getTime(),g.zonosController=null,g.init=async({appearance:s,checkoutSettings:r,currencyConverter:i,helloSettings:c,onCountryChange:l,overrideCurrencyFormat:d,storeId:u,zonosApiKey:a})=>{if(f.cartId=new URLSearchParams(window.location.search).get("tempCartUUID"),!f.doneInit){if(e(`====== ZONOS DEBUG MODE: on (${f.version}) ======`),f.zonosApiKey=a,f.storeId=u,f.isNpm){if(e("====== ZONOS LOADING FROM NPM ======"),!a&&!f.cartId)return void n("Zonos API key is required unless `tempCartUUID` is provided in url query params.");if(!f.cartData&&f.cartId){e("Initialize cart data");const o=await t(f.cartId);if(!o)return void n("Failed to get cart data");f.cartData=o.cartData,f.zonosApiKey=o.zonosApiKey}}if(f.cartId&&f.cartData){e("Cart data is available, inject hidden button and trigger checkout");const n=document.createElement("button");n.style.display="none",n.id=`${o}`,document.body.appendChild(n)}e("init zonos"),f.injectZonosCdn(),f.injectZonosCss(),f.injectFonts(),f.injectController({config:{appearance:s,checkoutSettings:r,currencyConverter:i,helloSettings:c,onCountryChange:l,overrideCurrencyFormat:d}}),f.doneInit=!0}},g.displayCurrency=()=>{const e=document.querySelector("zonos-hello");e&&e.displayCurrency()},g.openHelloDialog=e=>{const n=document.querySelector("zonos-hello");n&&n.openHelloDialog(null==e||e)},g.showNotification=e=>{var n;null===(n=f.zonosController)||void 0===n||n.showNotification(e)},g.updateOrganizationName=e=>{var n;null===(n=f.zonosController)||void 0===n||n.updateOrganizationName(e)},g.disablePlaceOrderButtons=({autoEnable:e=!0,config:n,disable:t,placeOrderButtonSelector:o})=>{var s;if(!(null===(s=n.checkoutSettings)||void 0===s?void 0:s.disablePlaceOrderButtonActivation)&&o){const n=document.querySelectorAll(o),s=e=>{e.target.getAttribute("disabled")&&(e.preventDefault(),e.stopPropagation())};n.forEach((e=>{e.getAttribute("data-zonos-checkout-attached")||(t?(e.setAttribute("disabled","true"),e.addEventListener("click",s)):(e.removeAttribute("disabled"),e.removeEventListener("click",s)))})),e&&t&&setTimeout((()=>{n.forEach((e=>{e.removeAttribute("disabled"),e.removeEventListener("click",s)}))}),5e3)}},g.injectController=({config:t})=>{var o;if(document.querySelector("zonos-controller"))return;if(null===(o=t.checkoutSettings)||void 0===o?void 0:o.placeOrderButtonSelector){const e=t.checkoutSettings.placeOrderButtonSelector;f.disablePlaceOrderButtons({config:t,disable:!0,placeOrderButtonSelector:e}),new MutationObserver((()=>{f.disablePlaceOrderButtons({config:t,disable:!0,placeOrderButtonSelector:e})})).observe(document.body,{childList:!0,subtree:!0})}const s=document.createElement("zonos-controller");s.config=t,s.zonosApiKey=f.zonosApiKey||"",s.addEventListener("stripeInitEvent",(async t=>{const{detail:o}=t;e("loading Stripe");const r=await(async(...e)=>{w=!0;const n=Date.now();return p.then((t=>((e,n,t)=>{if(null===e)return null;const o=e.apply(void 0,n);return((e,n)=>{e&&e._registerWrapper&&e._registerWrapper({name:"stripe-js",startTime:n})})(o,t),o})(t,e,n)))})(o.publishableKey);r?(window.Zonos.stripe=r,s.initCheckoutElement(r)):n("API seems to be invalid or missing. Failed to load Stripe")})),document.body.appendChild(s),f.zonosController=s,e("Zonos controller injected!")},g.injectScript=({cdnType:t,isModule:o,theRestUrl:s})=>{const r=`${f.getZonosUrl(t)}/${s}`;if(document.querySelector(`script[src="${r}"]`))return void e(`Zonos script "${r}" already exists in the document`,"warn");const c=document.head||document.body,l=document.createElement("script");o?l.type="module":l.noModule=!0,l.src=r,l.crossOrigin="anonymous",l.onerror=()=>{n(`Failed to load ${l.src}`);const e=i(t);e&&f.injectScript({cdnType:e,isModule:o,theRestUrl:s})},c.appendChild(l)},g.getZonosUrl=n=>{const t=()=>{switch(n){case"jsdelivr":return y;case"unpkg":return"https://unpkg.com/@zonos/elements@1.3.75";case"cdnjs":return"https://cdnjs.cloudflare.com/ajax/libs/zonos-elements/1.3.75";case"vercel":return v}};return f.isNpm&&(()=>{const n=window&&window.location.href.includes("forceLoadCdn");if("undefined"==typeof window||n)return null;const t=(e=>{if(!e)return null;const n=new URL(e).searchParams.get("zonosQaUrl");return n?/[^a-zA-Z0-9-_]+/.test(n)?null:n:null})(window.location.href),o="https://v1.3.75.js.zonos.com";if(!t&&(o.includes("test.")||o.includes("test-")))return o;if(!t&&["dev.demo.elements.zonos.com"].includes(window.location.hostname))return"https://dev.elements.zonos.com";if(!t)return null;if("dev-elements"===t)return"https://dev.elements.zonos.com";const s=`https://${t}.preview.js.zonos.com`;return e(`[ZONOS-WARNING] using '${s}' for loading script`,"warn"),fetch(s).then((()=>{window.sessionStorage.removeItem("zonos--checkout-session-id"),window.sessionStorage.removeItem("zonos--client-secret")})).catch((()=>{alert(`[ZONOS-WARNING] '${s}' IS NO LONGER AVAILABLE. REMOVING zonosQaUrl PARAM AND RELOADING THE PAGE`);const e=new URLSearchParams(window.location.search);e.delete("zonosQaUrl");const{pathname:n}=window.location,t=`${n}?${e.toString()}`;return window.history.replaceState(window.history.state,"",t),window.location.reload(),null})),s})()||t()},g.injectZonosCdn=()=>{f.injectScript({cdnType:r,isModule:!0,theRestUrl:"dist/zonos-elements/zonos-elements.esm.js"}),f.injectScript({cdnType:r,isModule:!1,theRestUrl:"dist/zonos-elements/zonos-elements.js"}),e("Zonos cdn script injected!")},g.injectStylesheet=({cdnType:e,theRestUrl:t})=>{const o=f.getZonosUrl(e),s=document.head||document.body,r=document.createElement("link");r.rel="preconnect",r.href=`${v}/`,s.appendChild(r);const c=document.createElement("link");c.rel="stylesheet",c.href=`${o}/${t}`,c.onerror=()=>{n(`Failed to load ${c.href}`);const o=i(e);o&&f.injectStylesheet({cdnType:o,theRestUrl:t})},s.appendChild(c)},g.injectZonosCss=()=>{document.querySelector('link[rel="stylesheet"][href*="/dist/zonos-elements/zonos-elements.css"]')?e("Zonos style links already injected","warn"):(f.injectStylesheet({cdnType:r,theRestUrl:"dist/zonos-elements/zonos-elements.css"}),e("Zonos style css injected!"))},g.injectFonts=()=>{if((()=>{const e=document.querySelectorAll(`link[rel="stylesheet"][href^="${z}"]`);for(let n=0;n<e.length;n++){const t=e[n];if(t&&!S.test(t.href))return t}return null})())return void e("Inter font already injected","warn");const n=document.head||document.body,t=document.createElement("link");t.rel="preconnect",t.href=z,n.appendChild(t);const o=document.createElement("link");o.rel="stylesheet",o.href=`${z}/inter/inter.css`,n.appendChild(o),e("Zonos font injected!")},g.setupGoogleFont=e=>{var n;null===(n=f.zonosController)||void 0===n||n.setupGoogleFont(e)},g.injectSupportGoogleFont=n=>{var t;e(`[FONT] injecting ${n}`);const o=null===(t=n.match(/family=(.*?):/))||void 0===t?void 0:t[1],s=document.head||document.body;if(!document.querySelector(`link[rel="preconnect"][href^="${j}"]`)){const e=document.createElement("link");e.rel="preconnect",e.href=j,s.appendChild(e)}if(document.querySelector(`link[rel="stylesheet"][href="${n}"]`))return void e(`[FONT] ${o} font already injected`,"warn");const r=document.createElement("link");r.rel="stylesheet",r.href=n,s.appendChild(r),e(`[FONT] ${o} font injected!`)};export{g as Zonos}
1
+ import{l as e,a as n}from"./p-2ec2e9d3.js";import{s as t,c as o}from"./p-6b3fd741.js";export{c as checkoutHiddenBtnSelector,d as domesticRedirectedBtnSelector}from"./p-6b3fd741.js";const s=["jsdelivr","cdnjs","unpkg","vercel"],r="jsdelivr",i=e=>{const n=s.indexOf(e);return s[n+1]||null},l="https://js.stripe.com/v3",u=/^https:\/\/js\.stripe\.com\/v3\/?(\?.*)?$/,a="loadStripe.setLoadParameters was called but an existing Stripe.js script already exists in the document; existing script parameters will be used";let m=null;const p=Promise.resolve().then((()=>{return e=null,null!==m||(m=new Promise(((t,o)=>{if("undefined"!=typeof window&&"undefined"!=typeof document)if(window.Stripe&&e&&console.warn(a),window.Stripe)t(window.Stripe);else try{let s=(()=>{const e=document.querySelectorAll(`script[src^="${l}"]`);for(let n=0;n<e.length;n++){const t=e[n];if(t&&u.test(t.src))return t}return null})();s&&e?console.warn(a):s||(s=(e=>{const t=e&&!e.advancedFraudSignals?"?advancedFraudSignals=false":"",o=document.createElement("script");o.src=`${l}${t}`;const s=document.head||document.body;return s?(s.appendChild(o),o):(n("Expected document.body not to be null. Stripe.js requires a <body> element."),null)})(e)),null==s||s.addEventListener("load",(()=>{window.Stripe?t(window.Stripe):o(new Error("Stripe.js not available"))})),null==s||s.addEventListener("error",(()=>{o(new Error("Failed to load Stripe.js"))}))}catch(e){return void o(e)}else t(null)}))),m;var e}));let w=!1;var f;p.catch((e=>{w||console.warn(e)}));const h=(()=>{if("undefined"==typeof document)return null;const e=document.querySelector('script[src*="/zonos.js"]'),{currentLoadScriptUrl:n,isWhiteListed:t}=(({loadScriptSrc:e})=>{if(!e)return{currentLoadScriptUrl:"",isForceLoadVersionDomain:!1,isWhiteListed:!1};const n=new URL(e).origin,t=["dev.elements.zonos.com","dev.assets-checkout.zonos.com",".js.zonos.com","zonos-elements-test-git","zonos-elements-git"].some((e=>n.includes(e))),o=["qa.js.zonos.com"].some((e=>n.includes(e)));return{currentLoadScriptUrl:n,isForceLoadVersionDomain:o,isWhiteListed:t}})({loadScriptSrc:null==e?void 0:e.src});return t?n:null})(),v="https://v1.3.76.js.zonos.com",y=h||"https://cdn.jsdelivr.net/npm/@zonos/elements@1.3.76",z="https://rsms.me",j="https://fonts.googleapis.com",S=/^https:\/\/rsms\.me\/inter\/inter\.css(.*)$/;class g{}f=g,g.doneInit=!1,g.debug="undefined"!=typeof window&&!!window.location.search.match(/\?.*(&*)zonosDebug=1/),g.zonosConversionTest="undefined"!=typeof window&&!!window.location.search.match(/\?.*(&*)zonosConversionTest/),g._paypalMockResponse=null,g.isBigCommerce=!1,g.releaseDate="1728577765420",g.isLegacyCheckout=!1,g.isNpm=!0,g.zonosQaUrl=null,g.zonosQaUrlApi=null,g.version="v1.3.76",g.modeAlerted=!1,g.cartData=null,g.paypal=null,g.getCurrentTimestamp=()=>(new Date).getTime(),g.zonosController=null,g.init=async({appearance:s,checkoutSettings:r,currencyConverter:i,helloSettings:c,onCountryChange:l,overrideCurrencyFormat:d,storeId:u,zonosApiKey:a})=>{if(f.cartId=new URLSearchParams(window.location.search).get("tempCartUUID"),!f.doneInit){if(e(`====== ZONOS DEBUG MODE: on (${f.version}) ======`),f.zonosApiKey=a,f.storeId=u,f.isNpm){if(e("====== ZONOS LOADING FROM NPM ======"),!a&&!f.cartId)return void n("Zonos API key is required unless `tempCartUUID` is provided in url query params.");if(!f.cartData&&f.cartId){e("Initialize cart data");const o=await t(f.cartId);if(!o)return void n("Failed to get cart data");f.cartData=o.cartData,f.zonosApiKey=o.zonosApiKey}}if(f.cartId&&f.cartData){e("Cart data is available, inject hidden button and trigger checkout");const n=document.createElement("button");n.style.display="none",n.id=`${o}`,document.body.appendChild(n)}e("init zonos"),f.injectZonosCdn(),f.injectZonosCss(),f.injectFonts(),f.injectController({config:{appearance:s,checkoutSettings:r,currencyConverter:i,helloSettings:c,onCountryChange:l,overrideCurrencyFormat:d}}),f.doneInit=!0}},g.displayCurrency=()=>{const e=document.querySelector("zonos-hello");e&&e.displayCurrency()},g.openHelloDialog=e=>{const n=document.querySelector("zonos-hello");n&&n.openHelloDialog(null==e||e)},g.showNotification=e=>{var n;null===(n=f.zonosController)||void 0===n||n.showNotification(e)},g.updateOrganizationName=e=>{var n;null===(n=f.zonosController)||void 0===n||n.updateOrganizationName(e)},g.disablePlaceOrderButtons=({autoEnable:e=!0,config:n,disable:t,placeOrderButtonSelector:o})=>{var s;if(!(null===(s=n.checkoutSettings)||void 0===s?void 0:s.disablePlaceOrderButtonActivation)&&o){const n=document.querySelectorAll(o),s=e=>{e.target.getAttribute("disabled")&&(e.preventDefault(),e.stopPropagation())};n.forEach((e=>{e.getAttribute("data-zonos-checkout-attached")||(t?(e.setAttribute("disabled","true"),e.addEventListener("click",s)):(e.removeAttribute("disabled"),e.removeEventListener("click",s)))})),e&&t&&setTimeout((()=>{n.forEach((e=>{e.removeAttribute("disabled"),e.removeEventListener("click",s)}))}),5e3)}},g.injectController=({config:t})=>{var o;if(document.querySelector("zonos-controller"))return;if(null===(o=t.checkoutSettings)||void 0===o?void 0:o.placeOrderButtonSelector){const e=t.checkoutSettings.placeOrderButtonSelector;f.disablePlaceOrderButtons({config:t,disable:!0,placeOrderButtonSelector:e}),new MutationObserver((()=>{f.disablePlaceOrderButtons({config:t,disable:!0,placeOrderButtonSelector:e})})).observe(document.body,{childList:!0,subtree:!0})}const s=document.createElement("zonos-controller");s.config=t,s.zonosApiKey=f.zonosApiKey||"",s.addEventListener("stripeInitEvent",(async t=>{const{detail:o}=t;e("loading Stripe");const r=await(async(...e)=>{w=!0;const n=Date.now();return p.then((t=>((e,n,t)=>{if(null===e)return null;const o=e.apply(void 0,n);return((e,n)=>{e&&e._registerWrapper&&e._registerWrapper({name:"stripe-js",startTime:n})})(o,t),o})(t,e,n)))})(o.publishableKey);r?(window.Zonos.stripe=r,s.initCheckoutElement(r)):n("API seems to be invalid or missing. Failed to load Stripe")})),document.body.appendChild(s),f.zonosController=s,e("Zonos controller injected!")},g.injectScript=({cdnType:t,isModule:o,theRestUrl:s})=>{const r=`${f.getZonosUrl(t)}/${s}`;if(document.querySelector(`script[src="${r}"]`))return void e(`Zonos script "${r}" already exists in the document`,"warn");const c=document.head||document.body,l=document.createElement("script");o?l.type="module":l.noModule=!0,l.src=r,l.crossOrigin="anonymous",l.onerror=()=>{n(`Failed to load ${l.src}`);const e=i(t);e&&f.injectScript({cdnType:e,isModule:o,theRestUrl:s})},c.appendChild(l)},g.getZonosUrl=n=>{const t=()=>{switch(n){case"jsdelivr":return y;case"unpkg":return"https://unpkg.com/@zonos/elements@1.3.76";case"cdnjs":return"https://cdnjs.cloudflare.com/ajax/libs/zonos-elements/1.3.76";case"vercel":return v}};return f.isNpm&&(()=>{const n=window&&window.location.href.includes("forceLoadCdn");if("undefined"==typeof window||n)return null;const t=(e=>{if(!e)return null;const n=new URL(e).searchParams.get("zonosQaUrl");return n?/[^a-zA-Z0-9-_]+/.test(n)?null:n:null})(window.location.href),o="https://v1.3.76.js.zonos.com";if(!t&&(o.includes("test.")||o.includes("test-")))return o;if(!t&&["dev.demo.elements.zonos.com"].includes(window.location.hostname))return"https://dev.elements.zonos.com";if(!t)return null;if("dev-elements"===t)return"https://dev.elements.zonos.com";const s=`https://${t}.preview.js.zonos.com`;return e(`[ZONOS-WARNING] using '${s}' for loading script`,"warn"),fetch(s).then((()=>{window.sessionStorage.removeItem("zonos--checkout-session-id"),window.sessionStorage.removeItem("zonos--client-secret")})).catch((()=>{alert(`[ZONOS-WARNING] '${s}' IS NO LONGER AVAILABLE. REMOVING zonosQaUrl PARAM AND RELOADING THE PAGE`);const e=new URLSearchParams(window.location.search);e.delete("zonosQaUrl");const{pathname:n}=window.location,t=`${n}?${e.toString()}`;return window.history.replaceState(window.history.state,"",t),window.location.reload(),null})),s})()||t()},g.injectZonosCdn=()=>{f.injectScript({cdnType:r,isModule:!0,theRestUrl:"dist/zonos-elements/zonos-elements.esm.js"}),f.injectScript({cdnType:r,isModule:!1,theRestUrl:"dist/zonos-elements/zonos-elements.js"}),e("Zonos cdn script injected!")},g.injectStylesheet=({cdnType:e,theRestUrl:t})=>{const o=f.getZonosUrl(e),s=document.head||document.body,r=document.createElement("link");r.rel="preconnect",r.href=`${v}/`,s.appendChild(r);const c=document.createElement("link");c.rel="stylesheet",c.href=`${o}/${t}`,c.onerror=()=>{n(`Failed to load ${c.href}`);const o=i(e);o&&f.injectStylesheet({cdnType:o,theRestUrl:t})},s.appendChild(c)},g.injectZonosCss=()=>{document.querySelector('link[rel="stylesheet"][href*="/dist/zonos-elements/zonos-elements.css"]')?e("Zonos style links already injected","warn"):(f.injectStylesheet({cdnType:r,theRestUrl:"dist/zonos-elements/zonos-elements.css"}),e("Zonos style css injected!"))},g.injectFonts=()=>{if((()=>{const e=document.querySelectorAll(`link[rel="stylesheet"][href^="${z}"]`);for(let n=0;n<e.length;n++){const t=e[n];if(t&&!S.test(t.href))return t}return null})())return void e("Inter font already injected","warn");const n=document.head||document.body,t=document.createElement("link");t.rel="preconnect",t.href=z,n.appendChild(t);const o=document.createElement("link");o.rel="stylesheet",o.href=`${z}/inter/inter.css`,n.appendChild(o),e("Zonos font injected!")},g.setupGoogleFont=e=>{var n;null===(n=f.zonosController)||void 0===n||n.setupGoogleFont(e)},g.injectSupportGoogleFont=n=>{var t;e(`[FONT] injecting ${n}`);const o=null===(t=n.match(/family=(.*?):/))||void 0===t?void 0:t[1],s=document.head||document.body;if(!document.querySelector(`link[rel="preconnect"][href^="${j}"]`)){const e=document.createElement("link");e.rel="preconnect",e.href=j,s.appendChild(e)}if(document.querySelector(`link[rel="stylesheet"][href="${n}"]`))return void e(`[FONT] ${o} font already injected`,"warn");const r=document.createElement("link");r.rel="stylesheet",r.href=n,s.appendChild(r),e(`[FONT] ${o} font injected!`)};export{g as Zonos}
@@ -0,0 +1 @@
1
+ import{r as o,h as s,H as e,F as t}from"./p-5b7da777.js";import{l as n,s as c,a as i,b as r,c as a,i as h,d,e as l,f as u,g as m,h as z,j as k,k as p,m as g,n as f,t as b,o as w,p as v,q as y,r as C,u as x,v as S,w as I}from"./p-76b9668f.js";import{s as A,p as j}from"./p-4e21f719.js";import{z as O,g as B,m as P}from"./p-1086aac3.js";import{c as L,t as T,g as D}from"./p-8478f4ee.js";import{i as $}from"./p-81a54668.js";import{l as H,a as N,s as _}from"./p-2ec2e9d3.js";import{c as M}from"./p-b4b7f705.js";import{g as R}from"./p-1ca5696d.js";import{i as E}from"./p-a1b755bf.js";import{s as U,d as F,c as Z}from"./p-6b3fd741.js";import{R as V}from"./p-08e7107d.js";const W=o=>{const s=o.items.map((o=>({amount:o.amount,attributes:o.attributes||[],countryOfOrigin:o.countryOfOrigin||void 0,currencyCode:o.currencyCode,description:o.description||"",imageUrl:o.imageUrl||"",itemType:o.itemType||"PHYSICAL_GOOD",measurements:o.measurements||[],name:o.name||o.description||"",productId:o.productId||"",quantity:o.quantity||0,sku:o.sku||""})))||[];return{adjustments:o.adjustments,cartItems:s}},q=(o=!0)=>!(!n.localizationLoaded||!n.isShippableCountry&&(document.dispatchEvent(L("legacyCheckoutError","Unable to initiate checkout process in a country where shipping is not available")),o&&H("Checkout: not shippable country"),1)),G='<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="https://www.w3.org/2000/svg">\n<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"/>\n</svg>\n',K=class{constructor(s){o(this,s),this.onChangeLocaleListener=()=>{},this.applyStripeTheme=async()=>{var o,s,e,t;const n=(null===(o=this.appearanceSettingsOverride)||void 0===o?void 0:o.theme)||O.appearance.theme;await h({overrideBorderRadius:null===(s=this.appearanceSettingsOverride)||void 0===s?void 0:s.style,overridePrimaryColor:null===(e=this.appearanceSettingsOverride)||void 0===e?void 0:e.colorPrimary,overrideSecondaryColor:null===(t=this.appearanceSettingsOverride)||void 0===t?void 0:t.colorSecondary,overrideTheme:this.isMobile?n:void 0})},this.getCurrentLocalePageEnum=()=>{switch(d.step){case"customer-info":return"checkout_customer_info";case"shipping":return"checkout_shipping_info";case"payment":return"checkout_payment_info";default:return null}},this.appearanceSettingsOverride=void 0,this.preview=!1,this.mobile=!1,this.defaultAddress=null,this.forceDialogOpen=!1,this.open=this.forceDialogOpen,this.stripe=window.Zonos.stripe,this.submitLoading=!1,this.collapseReviewMobile=!0,this.isAttachError=!1,this.isMobile=!1,this.zonosReviewRef=void 0,this.storybookPaymentStatusOverride=void 0,this.isLegacyCheckout=window.Zonos.isLegacyCheckout,this.confirmDialogOpen=!1,this.inventoryCheckErrorMessage=null}async initCartInfoHandler(o){l({adjustments:d.adjustments,cartItems:o.detail})}async handleKeyPress(o){"Escape"===o.key&&this.closeDialogHandler()}async closeDialogHandler(o){var s,e;this.open&&((null==o?void 0:o.confirmed)?(this.confirmDialogOpen=!1,A("zonos-checkout-close"),this.open=this.forceDialogOpen||!1,this.preview||"finish"!==d.step||u(),d.step="customer-info",m(),z(),null===(e=(s=O.checkoutSettings).onClose)||void 0===e||e.call(s)):this.confirmDialogOpen=!0)}async buildCartAndInit(){if(window.Zonos.cartData){H("tempCartUUID is provided, start building cart");const{adjustments:o,cartItems:s}=W(window.Zonos.cartData);await l({adjustments:o,cartItems:s})}else if("function"==typeof O.checkoutSettings.createCartId){H('"createCartId" is provided, start building cart');const o=await O.checkoutSettings.createCartId();window.Zonos.cartId=o;const s=await U(o),e=null==s?void 0:s.cartData;if(!e)return void N("Failed to build cart, please try again.");const{adjustments:t,cartItems:n}=W(e);await l({adjustments:t,cartItems:n})}else if(O.checkoutSettings.buildCartDetail&&n.selectedCountryCode){H("build cart detail");const o=await O.checkoutSettings.buildCartDetail({countryCode:n.selectedCountryCode,currencyCode:n.targetCurrency});await l({adjustments:[],cartItems:o})}if(!k.clientSecret){const o=await p();if(H(`stripeStoreInitCheckoutSession: ${o}`),!o)return!1}return await this.applyStripeTheme(),!0}reloadCheckoutSession(){window.location.reload()}attachCheckout(){const o=O.checkoutSettings.placeOrderButtonSelector;if(H(`attach checkout ${o}`),!o&&!window.Zonos.cartData)return;const s=[o,`#${F}`,`#${Z}`].filter(Boolean);document.querySelectorAll(s.join(",")).forEach((s=>{s.getAttribute("data-zonos-checkout-attached")||(H(`attached event to button ${o}`,"info",{button:s}),s.addEventListener("click",(async o=>{if(q()&&!((o=!0)=>!n.localizationLoaded||!!n.isDisabledCountry&&(document.dispatchEvent(L("legacyCheckoutError","Unable to initiate checkout process in a country that has been disabled for checkout")),o&&H("Checkout: disabled country"),!0))()){o.preventDefault(),o.stopPropagation(),H("zonos checkout button clicked"),k.isFetchingSession=!0,this.open=!0;try{if(!await this.buildCartAndInit())throw new Error("Error building cart");g({isPreview:this.preview,sessionTimeout:54e5}),A("zonos-checkout-start"),T("checkout_open")}catch(o){k.isFetchingSession=!1,f({messages:[b("There's been an error creating your checkout session. Please reload and try again or contact support if the error persists")],title:b("Error creating Checkout")})}}}),{capture:!0,passive:!1}),O.checkoutSettings.disablePlaceOrderButtonActivation||s.removeAttribute("disabled"),s.setAttribute("data-zonos-checkout-attached","true"),s.matches(F)&&(s.dispatchEvent(L("click")),r(),s.remove()),s.matches(`#${Z}`)&&(s.dispatchEvent(L("click")),s.remove()))}))}appearanceSettingsOverrideChanged(){this.appearanceSettingsOverride&&this.applyStripeTheme()}useLegacyQueryParams(){const o=new URLSearchParams(window.location.search),s={country:o.get("country")||n.selectedCountryCode,customerAddress1:o.get("customerAddress1"),customerAddress2:o.get("customerAddress2"),customerCity:o.get("customerCity"),customerEmail:o.get("customerEmail"),customerName:o.get("customerName"),customerPhone:o.get("customerPhone"),customerState:o.get("customerState"),customerZip:o.get("customerZip")};s.customerAddress1&&s.customerCity&&s.customerName&&s.customerPhone&&s.customerZip&&s.country?this.defaultAddress={address:{city:s.customerCity,country:s.country,line1:s.customerAddress1,line2:s.customerAddress2||"",postal_code:s.customerZip,state:s.customerState||""},email:s.customerEmail||"",name:s.customerName,phone:s.customerPhone}:H("Missing some query params so it can not be prefilled","info",s)}async init(){k.stripe=window.Zonos.stripe,this.stripe=window.Zonos.stripe,(({domesticRedirectedBtnSelector:o,onShippingAddressSessionFound:s})=>{if(!window.Zonos.isBigCommerce)return;const e=new MutationObserver((async()=>{const t=document.querySelector(o),n=c();if(!t&&n){const o=document.createElement("button");return o.style.display="none",o.id="zonos--domestic-redirected-checkout-button",document.body.appendChild(o),null==s||s(n),void e.disconnect()}const h=document.querySelector('select[name="shippingAddress.countryCode"]'),d=document.querySelector("#checkout-shipping-continue");h&&d&&(e.disconnect(),d.addEventListener("click",(async o=>{var s,e;const t=h.value;if(!t)return;if(i(t),!q(!1))return void r();const n=document.querySelector("form");if(!n)return;const c=new FormData(n),d=document.querySelector("input#addressLine1Input"),l={address1:null!==(s=c.get("shippingAddress.address1"))&&void 0!==s?s:d&&d.value,address2:c.get("shippingAddress.address2"),city:c.get("shippingAddress.city"),countryCode:c.get("shippingAddress.countryCode"),firstName:c.get("shippingAddress.firstName"),lastName:c.get("shippingAddress.lastName"),phone:c.get("shippingAddress.phone"),postalCode:c.get("shippingAddress.postalCode"),stateOrProvince:null!==(e=c.get("shippingAddress.stateOrProvince"))&&void 0!==e?e:c.get("shippingAddress.stateOrProvinceCode")};if(Object.values(l).some((o=>null==o)))return N("One or more shipping address field is missing",Object.entries(l)),void _({endpoint:"No endpoint, domestic checkout form missing fields",errors:["Bigcommerce: One or more shipping address field is missing in the domestic checkout form",JSON.stringify(Object.entries(l))],metadata:{domain:window.location.hostname,storeId:O.storeId}});a({address1:l.address1,address2:l.address2,city:l.city,countryCode:l.countryCode,firstName:l.firstName,lastName:l.lastName,phone:l.phone,postalCode:l.postalCode,state:l.stateOrProvince}),o.preventDefault(),o.stopPropagation(),window.location.href="/"})))}));e.observe(document.body,{childList:!0,subtree:!0})})({domesticRedirectedBtnSelector:F,onShippingAddressSessionFound:o=>{this.defaultAddress={address:{city:o.city,country:o.countryCode,line1:o.address1,line2:o.address2,postal_code:o.postalCode,state:o.state},email:"",name:`${o.firstName} ${o.lastName}`,phone:o.phone}}}),window.Zonos&&this.useLegacyQueryParams();const o=setInterval((()=>{k.stripe=window.Zonos.stripe,this.stripe=window.Zonos.stripe,this.stripe?(this.storybookPaymentStatusOverride||(H("init checkout"),this.preview||this.forceDialogOpen?this.buildCartAndInit():window.Zonos.isLegacyCheckout?this.attachCheckout():window&&(this.attachCheckout(),new MutationObserver((()=>{this.attachCheckout()})).observe(document.body,{childList:!0,subtree:!0}))),clearInterval(o)):H("waiting for stripe to be loaded")}),50);setTimeout((()=>{clearInterval(o)}),1e4)}async setToFinishStep(o){d.step="finish",this.storybookPaymentStatusOverride=o}async mockCheckoutSession(o){w(o)}async handleCustomerInfoContinue(){this.submitLoading=!0,await v();const o=setInterval((()=>{!d.landedCostData&&k.isFetchingLandedCost||(d.landedCostData&&(j({currency:d.currency}),y()),this.submitLoading=!1,clearInterval(o))}),500)}async handleShippingContinue(){this.submitLoading=!0,setTimeout((()=>{y(),this.submitLoading=!1}),500)}handleInventoryCheckDialogCancel(){d.inventoryCheckErrorMessage=null}handleInventoryCheckDialogConfirm(){d.inventoryCheckErrorMessage=null,this.closeDialogHandler({confirmed:!0})}async handleStripePaymentContinue(){k.hasPaymentError=!1,this.submitLoading=!0,d.inventoryCheckErrorMessage=null;try{d.inventoryCheckErrorMessage=await C()}catch(o){d.inventoryCheckErrorMessage=b("Unable to check inventory. Please try again.")}if(d.inventoryCheckErrorMessage)this.submitLoading=!1;else{try{await x(),y(),z()}catch(o){N(o),k.hasPaymentError=!0}this.submitLoading=!1}}async handleFinishClick(){if(S(),this.preview)return d.step="customer-info",void await this.init();if(u(),window.Zonos.isLegacyCheckout&&window.Zonos.cartData){const o=window.Zonos.cartData.storeBaseUrl;return void(window.location.href=o)}const o=window.location.href.split("?")[0],s=D();this.open=!1,s||(window.history.replaceState(window.history.state,document.title,o),window.location.reload())}handleWindowResize(){this.isMobile=$(this.mobile),this.applyStripeTheme(),H(`mobile: ${this.isMobile}`)}handleMobileChange(){this.isMobile=$(this.mobile),this.applyStripeTheme(),H(`mobile: ${this.isMobile}`)}handleAppearanceSettingsOverrideChange(){var o;(null===(o=this.appearanceSettingsOverride)||void 0===o?void 0:o.theme)&&(this.appearanceSettingsOverride.theme=B(this.appearanceSettingsOverride.theme))}handleAddressChange(){S()}componentWillLoad(){this.init(),this.isMobile=$(this.mobile),this.handleAppearanceSettingsOverrideChange(),this.onChangeLocaleListener=I("selectedLocale",(()=>{this.applyStripeTheme()})),H(`mobile: ${this.isMobile}`)}disconnectedCallback(){S(),u(),this.onChangeLocaleListener()}render(){var o;const c="finish"!==d.step&&"error"!==d.step&&!k.stripeElements||k.isFetchingSession,{colorPrimary:i,colorSecondary:r,logoUrl:a,style:h}=P(O.appearance,this.appearanceSettingsOverride),l="ENABLED"===O.appearance.zonosAttribution,u=O.appearance.theme,m=i&&E(i)?"DARK":"LIGHT",z=this.isMobile?u:m,p=this.isMobile?void 0:r,{customMessages:g}=n,f=null===(o=g.find((o=>"checkout_default"===o.pageName)))||void 0===o?void 0:o.message,w=this.getCurrentLocalePageEnum(),v=g.filter((o=>o.pageName===w)),y=()=>{const o=this.preview?`${a}?timestamp=${Date.now()}`:a;return s("div",{class:"zonos--logo"},o&&s("img",{alt:`${O.organizationName} logo`,src:o}))},C=D(),x=()=>{const o=new URLSearchParams(window.location.search),e=o.get("zonosQaUrl"),t=o.get("zonosDebug");return s("zonos-v-stack",null,s("div",{class:"zonos--logo-wrapper"},y(),C&&s("zonos-badge",{badgeColor:"orange",size:"small"},b("Test mode")),"1"===t&&s("zonos-badge",{badgeColor:"cyan",size:"small"},"debug"),e&&s("zonos-badge",{badgeColor:"purple",size:"small"},e)),s("zonos-checkout-progress-tabs",{backgroundColor:this.isMobile?"--zonos-elements-gray-0":null}),v.map((o=>s("zonos-custom-message",{icon:G,message:o.message}))))},S=()=>d.checkoutSessionTimeoutShow?s("zonos-rest-state",{class:"zonos--session-timeout",restStateSubtitle:b("Your checkout session has expired. Please reload the page to continue."),restStateTitle:b("Session timed out"),restStateType:"Warning"},s("zonos-button",{onClick:()=>this.reloadCheckoutSession(),variant:"primary"},b("Reload"))):s("div",{class:"zonos--content",style:{"--border-radius":R({overrideBorderStyle:h})}},"finish"!==d.step&&"error"!==d.step&&s(t,null,s("div",{class:"zonos--left","data-theme":z,style:{"--primary-color":this.isMobile?"":i}},!this.isMobile&&x(),"customer-info"===d.step&&s("zonos-customer-info",{continueLoading:this.submitLoading,defaultAddress:this.defaultAddress,isMobile:this.isMobile,onContinueClicked:()=>this.handleCustomerInfoContinue(),submitBtnColor:p}),"shipping"===d.step&&s("zonos-shipping",{continueLoading:this.submitLoading,onContinueClicked:()=>this.handleShippingContinue(),submitBtnColor:p}),"payment"===d.step&&s("zonos-checkout-payment",{continueLoading:this.submitLoading,onContinueClicked:async()=>{await this.handleStripePaymentContinue()},submitBtnColor:p})),s("div",{class:"zonos--right","data-theme":u},this.isMobile&&x(),!this.isLegacyCheckout&&s("zonos-button",{class:"zonos--close-button",icon:s("zonos-icon",{"aria-label":"Close checkout dialog",content:V}),noBackground:!0,onClick:()=>this.closeDialogHandler()}),s("div",{class:"flex--wrapper"},s("div",{class:"zonos--wrapper"},s("zonos-review",{collapsed:this.collapseReviewMobile,mobile:this.isMobile,onClick:()=>{this.isMobile&&(this.collapseReviewMobile=!this.collapseReviewMobile)}}),s("zonos-collapse",{collapsed:this.collapseReviewMobile&&this.isMobile},s("zonos-cart-items",null),this.isMobile&&s("zonos-v-stack",{spacing:16},s("zonos-cart-subtotal",null),s("zonos-custom-message",{class:"zonos--checkout-default-message",icon:G,message:f})))),s("zonos-cart-restricted-items",null),!this.isMobile&&s("zonos-v-stack",{spacing:16},s("zonos-cart-subtotal",null),s("zonos-custom-message",{class:"zonos--checkout-default-message",icon:G,message:f}))))),("finish"===d.step||"error"===d.step)&&s("div",{class:"zonos--done","data-theme":u},s("div",{class:"zonos--header"},y(),s("zonos-button",{class:"zonos--close-button",icon:s("zonos-icon",{"aria-label":"Close checkout dialog",content:V}),noBackground:!0,onClick:()=>this.handleFinishClick(),theme:u})),s("zonos-checkout-finish",{borderRadius:h,onCloseClick:()=>this.handleFinishClick(),overrideNotification:"error"===d.step&&d.error?Object.assign(Object.assign({},d.error),{type:"error"}):void 0,storybookForceStatus:this.storybookPaymentStatusOverride})),s("zonos-checkout-footer",{"data-theme":u,mobile:this.isMobile,slot:this.isMobile?void 0:"dialog-footer"}));return s(e,{class:M(["zonos--checkout zonos--elements",l&&"has-footer",this.preview&&"preview",this.isMobile&&"mobile"])},this.preview?S():s("zonos-dialog",{borderStyle:h,"data-theme":u,height:"980px",isLoading:c,mobile:this.isMobile,noBodyPadding:!0,noBorder:!0,noClickOutside:!0,noCloseButton:!0,onCloseDialog:()=>this.closeDialogHandler(),open:this.open,width:"1200px"},S()),s("zonos-confirm-dialog",{class:"zonos--close-confirm-dialog",dialogCancelBtnText:b("Don't close"),dialogConfirmBtnText:b("Close"),dialogIntent:"warn",dialogOpen:this.confirmDialogOpen,dialogSubtitle:b("Would you like to close checkout and return to the site?"),dialogTitle:b("Are you sure?"),onCancelClicked:()=>{this.confirmDialogOpen=!1},onConfirmClicked:()=>this.closeDialogHandler({confirmed:!0})}),s("zonos-confirm-dialog",{class:"zonos--inventory-check-failure-dialog",dialogConfirmBtnText:b("Return to cart"),dialogIntent:"danger",dialogOpen:!!d.inventoryCheckErrorMessage,dialogSubtitle:d.inventoryCheckErrorMessage,dialogTitle:b("Couldn't place order"),dialogType:"alert",onCancelClicked:()=>{this.handleInventoryCheckDialogCancel()},onConfirmClicked:()=>this.handleInventoryCheckDialogConfirm()}))}static get assetsDirs(){return["assets"]}static get watchers(){return{appearanceSettingsOverride:["appearanceSettingsOverrideChanged","handleAppearanceSettingsOverrideChange"],mobile:["handleMobileChange"],defaultAddress:["handleAddressChange"]}}};K.style=".sc-zonos-checkout-h{font-family:var(--font-family, Inter), Inter;display:block;white-space:normal}.sc-zonos-checkout-h *.sc-zonos-checkout{font-family:var(--font-family, Inter), Inter}.sc-zonos-checkout-h img.sc-zonos-checkout{max-width:100%}.sc-zonos-checkout-h dl.sc-zonos-checkout,.sc-zonos-checkout-h dd.sc-zonos-checkout,.sc-zonos-checkout-h h1.sc-zonos-checkout,.sc-zonos-checkout-h h2.sc-zonos-checkout,.sc-zonos-checkout-h h3.sc-zonos-checkout,.sc-zonos-checkout-h h4.sc-zonos-checkout,.sc-zonos-checkout-h h5.sc-zonos-checkout,.sc-zonos-checkout-h h6.sc-zonos-checkout,.sc-zonos-checkout-h hr.sc-zonos-checkout,.sc-zonos-checkout-h figure.sc-zonos-checkout,.sc-zonos-checkout-h p.sc-zonos-checkout,.sc-zonos-checkout-h pre.sc-zonos-checkout{margin:0}.sc-zonos-checkout-h{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.sc-zonos-checkout-h *.sc-zonos-checkout{-ms-scroll-chaining:none;overscroll-behavior:contain}.sc-zonos-checkout-h *.sc-zonos-checkout::-webkit-scrollbar{width:10px}.sc-zonos-checkout-h *.sc-zonos-checkout::-webkit-scrollbar-track{background:var(--zonos-elements-gray-50)}.sc-zonos-checkout-h *.sc-zonos-checkout::-webkit-scrollbar-thumb{border-radius:10px;background:#cccccc;border:3px solid transparent;background-clip:content-box}.sc-zonos-checkout-h *.sc-zonos-checkout::-webkit-scrollbar-thumb:hover{background:#d6d6d6}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout{display:-ms-flexbox;display:flex;height:100%;overflow:hidden;border-radius:var(--border-radius, var(--zonos-elements-radius-10))}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--left.sc-zonos-checkout,.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--right.sc-zonos-checkout{-ms-flex:1;flex:1;padding:32px}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--left.sc-zonos-checkout{background-color:var(--primary-color, var(--zonos-elements-gray-0));border-right:1px solid var(--zonos-elements-gray-200)}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--right.sc-zonos-checkout{background-color:var(--zonos-elements-gray-0)}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--done.sc-zonos-checkout{width:100%;max-height:100%;height:100%;overflow:auto;-ms-flex-direction:column;flex-direction:column;background-color:var(--zonos-elements-gray-0);-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:24px;padding-bottom:50px}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--done.sc-zonos-checkout .zonos--header.sc-zonos-checkout{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center;width:100%}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--done.sc-zonos-checkout .zonos--header.sc-zonos-checkout img.sc-zonos-checkout{width:150px;min-width:150px}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--done.sc-zonos-checkout .zonos--logo.sc-zonos-checkout{margin-bottom:0}.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--done.sc-zonos-checkout zonos-checkout-finish.sc-zonos-checkout{-ms-flex:1;flex:1}.sc-zonos-checkout-h .zonos--left.sc-zonos-checkout{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;position:relative}.sc-zonos-checkout-h .zonos--left.sc-zonos-checkout .zonos--wrapper.sc-zonos-checkout{padding:0 8px 8px}.sc-zonos-checkout-h .zonos--left.sc-zonos-checkout .zonos--payment-error-banner.sc-zonos-checkout{margin-top:24px}.sc-zonos-checkout-h .zonos--right.sc-zonos-checkout{position:relative}.sc-zonos-checkout-h .zonos--right.sc-zonos-checkout .zonos--close-button.sc-zonos-checkout{position:absolute;right:24px;top:24px;z-index:2}.sc-zonos-checkout-h .zonos--wrapper.sc-zonos-checkout{overflow:auto;max-height:100%;position:relative}.sc-zonos-checkout-h .flex--wrapper.sc-zonos-checkout{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;max-height:100%}.sc-zonos-checkout-h .zonos--logo-wrapper.sc-zonos-checkout{display:-ms-flexbox;display:flex;gap:16px;-ms-flex-align:center;align-items:center}.sc-zonos-checkout-h .zonos--logo-wrapper.sc-zonos-checkout>*.sc-zonos-checkout{height:-webkit-fit-content;height:-moz-fit-content;height:fit-content}.sc-zonos-checkout-h .zonos--logo.sc-zonos-checkout{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;max-width:250px}.sc-zonos-checkout-h .zonos--checkout-default-message.sc-zonos-checkout{margin-left:76px;margin-bottom:8px}.zonos--close-button.sc-zonos-checkout{-ms-flex-item-align:start;align-self:flex-start}.preview.sc-zonos-checkout-h{min-width:500px;margin:auto}.preview.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout{border:var(--zonos-elements-border)}.preview.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--done.sc-zonos-checkout{padding:32px}.mobile.sc-zonos-checkout-h{min-width:auto}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;overflow:auto;border-radius:0;max-height:100%;height:100%;border:0}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--left.sc-zonos-checkout,.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--right.sc-zonos-checkout{padding:12px;padding-bottom:76px}@media (max-width: 768px){.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--left.sc-zonos-checkout,.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--right.sc-zonos-checkout{padding-bottom:0}}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--left.sc-zonos-checkout{-ms-flex-order:2;order:2;border-right:none}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--right.sc-zonos-checkout{-ms-flex-order:1;order:1;padding-top:16px}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--right.sc-zonos-checkout .zonos--wrapper.sc-zonos-checkout{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;border:var(--zonos-elements-border);border-radius:var(--border-radius, var(--zonos-elements-radius-10));background-color:var(--zonos-elements-gray-50);padding:12px;margin-top:32px}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--right.sc-zonos-checkout .zonos--review.sc-zonos-checkout{margin-bottom:0}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--right.sc-zonos-checkout .zonos--cart-items.sc-zonos-checkout{margin-top:8px}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout zonos-checkout-footer.sc-zonos-checkout{-ms-flex-order:3;order:3}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--wrapper.sc-zonos-checkout{max-height:100%}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--footer.sc-zonos-checkout{-ms-flex-order:3;order:3}.mobile.sc-zonos-checkout-h .zonos--content.sc-zonos-checkout .zonos--done.sc-zonos-checkout{width:auto}.mobile.sc-zonos-checkout-h .zonos--cart-subtotal.sc-zonos-checkout{margin:0}";export{K as zonos_checkout}
@@ -1,4 +1,4 @@
1
- var __awaiter=this&&this.__awaiter||function(r,n,e,t){function o(r){return r instanceof e?r:new e((function(n){n(r)}))}return new(e||(e=Promise))((function(e,i){function a(r){try{c(t.next(r))}catch(r){i(r)}}function u(r){try{c(t["throw"](r))}catch(r){i(r)}}function c(r){r.done?e(r.value):o(r.value).then(a,u)}c((t=t.apply(r,n||[])).next())}))};var __generator=this&&this.__generator||function(r,n){var e={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},t,o,i,a;return a={next:u(0),throw:u(1),return:u(2)},typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function u(r){return function(n){return c([r,n])}}function c(u){if(t)throw new TypeError("Generator is already executing.");while(a&&(a=0,u[0]&&(e=0)),e)try{if(t=1,o&&(i=u[0]&2?o["return"]:u[0]?o["throw"]||((i=o["return"])&&i.call(o),0):o.next)&&!(i=i.call(o,u[1])).done)return i;if(o=0,i)u=[u[0]&2,i.value];switch(u[0]){case 0:case 1:i=u;break;case 4:e.label++;return{value:u[1],done:false};case 5:e.label++;o=u[1];u=[0];continue;case 7:u=e.ops.pop();e.trys.pop();continue;default:if(!(i=e.trys,i=i.length>0&&i[i.length-1])&&(u[0]===6||u[0]===2)){e=0;continue}if(u[0]===3&&(!i||u[1]>i[0]&&u[1]<i[3])){e.label=u[1];break}if(u[0]===6&&e.label<i[1]){e.label=i[1];i=u;break}if(i&&e.label<i[2]){e.label=i[2];e.ops.push(u);break}if(i[2])e.ops.pop();e.trys.pop();continue}u=n.call(r,e)}catch(r){u=[6,r];o=0}finally{t=i=0}if(u[0]&5)throw u[1];return{value:u[0]?u[1]:void 0,done:true}}};System.register(["./p-b74ff880.system.js","./p-dbbf8d3e.system.js","./p-c4957e35.system.js","./p-91462d96.system.js"],(function(r){"use strict";var n,e,t,o,i,a,u,c,s,d,l,f;return{setters:[function(r){n=r.z;e=r.c},function(r){t=r.d;o=r.r;i=r.t;a=r.q;u=r.h},function(r){c=r.h;s=r.l;d=r.a;l=r.j},function(r){f=r.t}],execute:function(){var v=this;
1
+ var __awaiter=this&&this.__awaiter||function(r,n,e,t){function o(r){return r instanceof e?r:new e((function(n){n(r)}))}return new(e||(e=Promise))((function(e,i){function a(r){try{c(t.next(r))}catch(r){i(r)}}function u(r){try{c(t["throw"](r))}catch(r){i(r)}}function c(r){r.done?e(r.value):o(r.value).then(a,u)}c((t=t.apply(r,n||[])).next())}))};var __generator=this&&this.__generator||function(r,n){var e={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},t,o,i,a;return a={next:u(0),throw:u(1),return:u(2)},typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function u(r){return function(n){return c([r,n])}}function c(u){if(t)throw new TypeError("Generator is already executing.");while(a&&(a=0,u[0]&&(e=0)),e)try{if(t=1,o&&(i=u[0]&2?o["return"]:u[0]?o["throw"]||((i=o["return"])&&i.call(o),0):o.next)&&!(i=i.call(o,u[1])).done)return i;if(o=0,i)u=[u[0]&2,i.value];switch(u[0]){case 0:case 1:i=u;break;case 4:e.label++;return{value:u[1],done:false};case 5:e.label++;o=u[1];u=[0];continue;case 7:u=e.ops.pop();e.trys.pop();continue;default:if(!(i=e.trys,i=i.length>0&&i[i.length-1])&&(u[0]===6||u[0]===2)){e=0;continue}if(u[0]===3&&(!i||u[1]>i[0]&&u[1]<i[3])){e.label=u[1];break}if(u[0]===6&&e.label<i[1]){e.label=i[1];i=u;break}if(i&&e.label<i[2]){e.label=i[2];e.ops.push(u);break}if(i[2])e.ops.pop();e.trys.pop();continue}u=n.call(r,e)}catch(r){u=[6,r];o=0}finally{t=i=0}if(u[0]&5)throw u[1];return{value:u[0]?u[1]:void 0,done:true}}};System.register(["./p-b74ff880.system.js","./p-71382e47.system.js","./p-c4957e35.system.js","./p-91462d96.system.js"],(function(r){"use strict";var n,e,t,o,i,a,u,c,s,l,d,f;return{setters:[function(r){n=r.z;e=r.c},function(r){t=r.d;o=r.r;i=r.t;a=r.q;u=r.h},function(r){c=r.h;s=r.l;l=r.a;d=r.j},function(r){f=r.t}],execute:function(){var v=this;
2
2
  /*!
3
3
  * paypal-js v8.1.0 (2024-06-07T16:55:00.122Z)
4
4
  * Copyright 2020-present, PayPal, Inc. All rights reserved.
@@ -14,4 +14,4 @@ var __awaiter=this&&this.__awaiter||function(r,n,e,t){function o(r){return r ins
14
14
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
15
  * See the License for the specific language governing permissions and
16
16
  * limitations under the License.
17
- */function p(r,n){var e=document.querySelector('script[src="'.concat(r,'"]'));if(e===null)return null;var t=_(r,n);var o=e.cloneNode();delete o.dataset.uidAuto;if(Object.keys(o.dataset).length!==Object.keys(t.dataset).length){return null}var i=true;Object.keys(o.dataset).forEach((function(r){if(o.dataset[r]!==t.dataset[r]){i=false}}));return i?e:null}function w(r){var n=r.url,e=r.attributes,t=r.onSuccess,o=r.onError;var i=_(n,e);i.onerror=o;i.onload=t;document.head.insertBefore(i,document.head.firstElementChild)}function h(r){var n=r.environment;var e=n==="sandbox"?"https://www.sandbox.paypal.com/sdk/js":"https://www.paypal.com/sdk/js";delete r.environment;if(r.sdkBaseUrl){e=r.sdkBaseUrl;delete r.sdkBaseUrl}var t=r;var o=Object.keys(t).filter((function(r){return typeof t[r]!=="undefined"&&t[r]!==null&&t[r]!==""})).reduce((function(r,n){var e=t[n].toString();n=y(n);if(n.substring(0,4)==="data"||n==="crossorigin"){r.attributes[n]=e}else{r.queryParams[n]=e}return r}),{queryParams:{},attributes:{}}),i=o.queryParams,a=o.attributes;if(i["merchant-id"]&&i["merchant-id"].indexOf(",")!==-1){a["data-merchant-id"]=i["merchant-id"];i["merchant-id"]="*"}return{url:"".concat(e,"?").concat(b(i)),attributes:a}}function y(r){var n=function(r,n){return(n?"-":"")+r.toLowerCase()};return r.replace(/[A-Z]+(?![a-z])|[A-Z]/g,n)}function b(r){var n="";Object.keys(r).forEach((function(e){if(n.length!==0)n+="&";n+=e+"="+r[e]}));return n}function _(r,n){if(n===void 0){n={}}var e=document.createElement("script");e.src=r;Object.keys(n).forEach((function(r){e.setAttribute(r,n[r]);if(r==="data-csp-nonce"){e.setAttribute("nonce",n["data-csp-nonce"])}}));return e}function g(r,n){if(n===void 0){n=Promise}k(r,n);if(typeof document==="undefined")return n.resolve(null);var e=h(r),t=e.url,o=e.attributes;var i=o["data-namespace"]||"paypal";var a=P(i);if(!o["data-js-sdk-library"]){o["data-js-sdk-library"]="paypal-js"}if(p(t,o)&&a){return n.resolve(a)}return m({url:t,attributes:o},n).then((function(){var r=P(i);if(r){return r}throw new Error("The window.".concat(i," global variable is not available."))}))}function m(r,n){if(n===void 0){n=Promise}k(r,n);var e=r.url,t=r.attributes;if(typeof e!=="string"||e.length===0){throw new Error("Invalid url.")}if(typeof t!=="undefined"&&typeof t!=="object"){throw new Error("Expected attributes to be an object.")}return new n((function(r,n){if(typeof document==="undefined")return r();w({url:e,attributes:t,onSuccess:function(){return r()},onError:function(){var r=new Error('The script "'.concat(e,'" failed to load. Check the HTTP status code and response body in DevTools to learn more.'));return n(r)}})}))}function P(r){return window[r]}function k(r,n){if(typeof r!=="object"||r===null){throw new Error("Expected an options object.")}var e=r.environment;if(e&&e!=="production"&&e!=="sandbox"){throw new Error('The `environment` option must be either "production" or "sandbox".')}if(typeof n!=="undefined"&&typeof n!=="function"){throw new Error("Expected PromisePonyfill to be a function.")}}var j=function(r){return __awaiter(v,[r],void 0,(function(r){var n,e,t;var o=r.checkoutSessionId,i=r.paypalMockResponse;return __generator(this,(function(r){switch(r.label){case 0:return[4,c("/api/zonos-elements/capture-paypal-order",{body:{checkoutSessionId:o,paypalMockResponse:i},method:"POST"})];case 1:n=r.sent(),e=n.errors,t=n.json;return[2,{errors:e,json:t}]}}))}))};var E=function(r){return __awaiter(v,[r],void 0,(function(r){var n,e,t;var o=r.checkoutSessionId;return __generator(this,(function(r){switch(r.label){case 0:return[4,c("/api/zonos-elements/create-paypal-order",{body:{checkoutSessionId:o},method:"POST"})];case 1:n=r.sent(),e=n.errors,t=n.json;return[2,{errors:e,json:t}]}}))}))};var S=r("i",(function(r){var n=r.backgroundColor1,e=r.backgroundColor2;var t=f.readability(n,e);return t>2.5}));var I=r("s",(function(r){var e=n.checkoutSettings.analyticsProviders.find((function(r){return r.type==="GOOGLE_ANALYTICS"}));if(!e||(e===null||e===void 0?void 0:e.status)==="DISABLED"){return}if(typeof window.gtag==="function"){s("Zonos submits gtag event","log",r);window.gtag("event",r,{})}}));var A=e((function(){return{orderIdCreated:null,paypalButtons:[],paypalClientId:"",paypalErrorMessage:null}})),x=A.reset,O=A.state;r({b:x,a:O});var T=function(r){return __awaiter(v,[r],void 0,(function(r){var n,e,t,o,i,a;var u=r.checkoutSessionId;return __generator(this,(function(r){switch(r.label){case 0:return[4,E({checkoutSessionId:u})];case 1:t=r.sent(),o=t.errors,i=t.json;a=(n=i===null||i===void 0?void 0:i.paypalOrderCreate)===null||n===void 0?void 0:n.paypalOrderId;if(o.length||!a){throw new Error(((e=o.find(Boolean))===null||e===void 0?void 0:e.message)||"An unexpected error occurred when creating paypal order.")}return[2,a]}}))}))};var L=function(r){return __awaiter(v,[r],void 0,(function(r){var n,e,t,o,a,u;var c=r.checkoutSessionId,s=r.paypalMockResponse;return __generator(this,(function(r){switch(r.label){case 0:new URL(window.location.href);return[4,j({checkoutSessionId:c,paypalMockResponse:s})];case 1:t=r.sent(),o=t.errors,a=t.json;u=(n=a===null||a===void 0?void 0:a.paypalOrderCapture.order)===null||n===void 0?void 0:n.id;if(o.length||!u){throw new Error(((e=o.find(Boolean))===null||e===void 0?void 0:e.message)||i("An unexpected error occurred when processing PayPal order."))}return[2,u]}}))}))};var B=function(r){var n=r.error;var e;var t=l(n.message);var o=(e=t===null||t===void 0?void 0:t.errors.find(Boolean))===null||e===void 0?void 0:e.message;var a=(o===null||o===void 0?void 0:o.match(/\[(.*?)\] (.*)/i))||[];if(!a){O.paypalErrorMessage=i("An unexpected error occurred when processing PayPal order.")}var u=a[2]||i("An unexpected error occurred when processing PayPal order.");O.paypalErrorMessage=u};var C=function(r){var e=r.checkoutSessionId,c=r.onPaypalFail,s=r.onPaypalSessionDone,l=r.overrideBorderRaidus,f=r.overridePrimaryColor;var p=f||n.appearance.colorPrimary;var w="#ffc33a";var h=S({backgroundColor1:w,backgroundColor2:p||""});return{createOrder:function(){return __awaiter(v,void 0,void 0,(function(){var r,n,a,u;return __generator(this,(function(s){switch(s.label){case 0:s.trys.push([0,6,,7]);O.paypalErrorMessage=null;t.inventoryCheckErrorMessage=null;s.label=1;case 1:s.trys.push([1,3,,4]);r=t;return[4,o()];case 2:r.inventoryCheckErrorMessage=s.sent();return[3,4];case 3:n=s.sent();t.inventoryCheckErrorMessage=i("Unable to check inventory. Please try again.");return[3,4];case 4:if(t.inventoryCheckErrorMessage){return[2,""]}return[4,T({checkoutSessionId:e})];case 5:a=s.sent();return[2,a];case 6:u=s.sent();d("Failed to create paypal order",u);O.paypalErrorMessage=i("Failed to create PayPal order. Please try again, or consider using an alternative method.");c===null||c===void 0?void 0:c();return[2,""];case 7:return[2]}}))}))},onApprove:function(r,n){return __awaiter(v,void 0,void 0,(function(){var r,n;return __generator(this,(function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);O.paypalErrorMessage=null;I("zonos-checkout-payment-info");return[4,L({checkoutSessionId:e,paypalMockResponse:window.Zonos._paypalMockResponse})];case 1:r=t.sent();O.orderIdCreated=r;s===null||s===void 0?void 0:s({orderId:r});a();u();return[3,3];case 2:n=t.sent();d("==== Failed to capture paypal order",n);if(n instanceof Error){return[2,B({error:n})]}c===null||c===void 0?void 0:c();return[3,3];case 3:return[2]}}))}))},style:{borderRadius:l==="SHARP"?0:10,color:h?"gold":"blue",shape:"rect"}}};var R=function(){if(!O.paypalButtons.length){return}O.paypalButtons.forEach((function(r){return __awaiter(v,void 0,void 0,(function(){return __generator(this,(function(n){switch(n.label){case 0:return[4,r.close()];case 1:n.sent();return[2]}}))}))}));O.paypalButtons=[]};var D=r("p",(function(r){return __awaiter(v,[r],void 0,(function(r){var e,t,o,i,a;var u=r.currency;return __generator(this,(function(r){switch(r.label){case 0:t=!!((e=n.checkoutSettings.externalPaymentMethods)===null||e===void 0?void 0:e.find((function(r){return r.type==="PAYPAL"&&r.status==="ENABLED"})));if(!t){s("=== Paypal is disabled for this store","warn");return[2]}o=n.checkoutSettings.externalServiceTokens.find((function(r){return r.type==="PAYPAL_CLIENT_ID"}));if(!o){s("Failed to load paypal -- missing paypal publishable key","warn");return[2]}i=n.zonosMode==="production"&&n.checkoutSettings.mode==="LIVE"?"production":"sandbox";a=window.Zonos;return[4,g({clientId:o.token,currency:u,environment:i})];case 1:a.paypal=r.sent();s("==== Paypal script loaded");return[2]}}))}))}));var F=r("d",(function(r){var n;var e=window.Zonos.paypal;if(!e){s("Paypal is not available");return null}var o=t.checkoutSessionId;if(!o){s("Paypal is not available due to checkoutSessionId is not available");return null}s("==== Loading Paypal buttons");R();var i=[(n=e.FUNDING)===null||n===void 0?void 0:n.PAYPAL].filter(Boolean);O.paypalButtons=i.map((function(n){var t;var i=null;try{i=((t=e.Buttons)===null||t===void 0?void 0:t.call(e,Object.assign(Object.assign({},C(Object.assign({checkoutSessionId:o,fundingSource:n},r))),{fundingSource:n})))||null}catch(r){s("===== Failed to load paypal's \"".concat(n,'" button'),"warn",r)}if(i===null||i===void 0?void 0:i.isEligible()){s("==== Paypal button ".concat(n," loaded"));return i}return null})).filter(Boolean);return O.paypalButtons}));var z=r("c",(function(){return!!O.paypalButtons.length}))}}}));
17
+ */function p(r,n){var e=document.querySelector('script[src="'.concat(r,'"]'));if(e===null)return null;var t=_(r,n);var o=e.cloneNode();delete o.dataset.uidAuto;if(Object.keys(o.dataset).length!==Object.keys(t.dataset).length){return null}var i=true;Object.keys(o.dataset).forEach((function(r){if(o.dataset[r]!==t.dataset[r]){i=false}}));return i?e:null}function w(r){var n=r.url,e=r.attributes,t=r.onSuccess,o=r.onError;var i=_(n,e);i.onerror=o;i.onload=t;document.head.insertBefore(i,document.head.firstElementChild)}function h(r){var n=r.environment;var e=n==="sandbox"?"https://www.sandbox.paypal.com/sdk/js":"https://www.paypal.com/sdk/js";delete r.environment;if(r.sdkBaseUrl){e=r.sdkBaseUrl;delete r.sdkBaseUrl}var t=r;var o=Object.keys(t).filter((function(r){return typeof t[r]!=="undefined"&&t[r]!==null&&t[r]!==""})).reduce((function(r,n){var e=t[n].toString();n=y(n);if(n.substring(0,4)==="data"||n==="crossorigin"){r.attributes[n]=e}else{r.queryParams[n]=e}return r}),{queryParams:{},attributes:{}}),i=o.queryParams,a=o.attributes;if(i["merchant-id"]&&i["merchant-id"].indexOf(",")!==-1){a["data-merchant-id"]=i["merchant-id"];i["merchant-id"]="*"}return{url:"".concat(e,"?").concat(b(i)),attributes:a}}function y(r){var n=function(r,n){return(n?"-":"")+r.toLowerCase()};return r.replace(/[A-Z]+(?![a-z])|[A-Z]/g,n)}function b(r){var n="";Object.keys(r).forEach((function(e){if(n.length!==0)n+="&";n+=e+"="+r[e]}));return n}function _(r,n){if(n===void 0){n={}}var e=document.createElement("script");e.src=r;Object.keys(n).forEach((function(r){e.setAttribute(r,n[r]);if(r==="data-csp-nonce"){e.setAttribute("nonce",n["data-csp-nonce"])}}));return e}function g(r,n){if(n===void 0){n=Promise}k(r,n);if(typeof document==="undefined")return n.resolve(null);var e=h(r),t=e.url,o=e.attributes;var i=o["data-namespace"]||"paypal";var a=P(i);if(!o["data-js-sdk-library"]){o["data-js-sdk-library"]="paypal-js"}if(p(t,o)&&a){return n.resolve(a)}return m({url:t,attributes:o},n).then((function(){var r=P(i);if(r){return r}throw new Error("The window.".concat(i," global variable is not available."))}))}function m(r,n){if(n===void 0){n=Promise}k(r,n);var e=r.url,t=r.attributes;if(typeof e!=="string"||e.length===0){throw new Error("Invalid url.")}if(typeof t!=="undefined"&&typeof t!=="object"){throw new Error("Expected attributes to be an object.")}return new n((function(r,n){if(typeof document==="undefined")return r();w({url:e,attributes:t,onSuccess:function(){return r()},onError:function(){var r=new Error('The script "'.concat(e,'" failed to load. Check the HTTP status code and response body in DevTools to learn more.'));return n(r)}})}))}function P(r){return window[r]}function k(r,n){if(typeof r!=="object"||r===null){throw new Error("Expected an options object.")}var e=r.environment;if(e&&e!=="production"&&e!=="sandbox"){throw new Error('The `environment` option must be either "production" or "sandbox".')}if(typeof n!=="undefined"&&typeof n!=="function"){throw new Error("Expected PromisePonyfill to be a function.")}}var j=function(r){return __awaiter(v,[r],void 0,(function(r){var n,e,t;var o=r.checkoutSessionId,i=r.paypalMockResponse;return __generator(this,(function(r){switch(r.label){case 0:return[4,c("/api/zonos-elements/capture-paypal-order",{body:{checkoutSessionId:o,paypalMockResponse:i},method:"POST"})];case 1:n=r.sent(),e=n.errors,t=n.json;return[2,{errors:e,json:t}]}}))}))};var E=function(r){return __awaiter(v,[r],void 0,(function(r){var n,e,t;var o=r.checkoutSessionId;return __generator(this,(function(r){switch(r.label){case 0:return[4,c("/api/zonos-elements/create-paypal-order",{body:{checkoutSessionId:o},method:"POST"})];case 1:n=r.sent(),e=n.errors,t=n.json;return[2,{errors:e,json:t}]}}))}))};var S=r("i",(function(r){var n=r.backgroundColor1,e=r.backgroundColor2;var t=f.readability(n,e);return t>2.5}));var I=r("s",(function(r){var e=n.checkoutSettings.analyticsProviders.find((function(r){return r.type==="GOOGLE_ANALYTICS"}));if(!e||(e===null||e===void 0?void 0:e.status)==="DISABLED"){return}if(typeof window.gtag==="function"){s("Zonos submits gtag event","log",r);window.gtag("event",r,{})}}));var A=e((function(){return{orderIdCreated:null,paypalButtons:[],paypalClientId:"",paypalErrorMessage:null}})),x=A.reset,O=A.state;r({b:x,a:O});var T=function(r){return __awaiter(v,[r],void 0,(function(r){var n,e,t,o,i,a;var u=r.checkoutSessionId;return __generator(this,(function(r){switch(r.label){case 0:return[4,E({checkoutSessionId:u})];case 1:t=r.sent(),o=t.errors,i=t.json;a=(n=i===null||i===void 0?void 0:i.paypalOrderCreate)===null||n===void 0?void 0:n.paypalOrderId;if(o.length||!a){throw new Error(((e=o.find(Boolean))===null||e===void 0?void 0:e.message)||"An unexpected error occurred when creating paypal order.")}return[2,a]}}))}))};var L=function(r){return __awaiter(v,[r],void 0,(function(r){var n,e,t,o,a,u;var c=r.checkoutSessionId,s=r.paypalMockResponse;return __generator(this,(function(r){switch(r.label){case 0:new URL(window.location.href);return[4,j({checkoutSessionId:c,paypalMockResponse:s})];case 1:t=r.sent(),o=t.errors,a=t.json;u=(n=a===null||a===void 0?void 0:a.paypalOrderCapture.order)===null||n===void 0?void 0:n.id;if(o.length||!u){throw new Error(((e=o.find(Boolean))===null||e===void 0?void 0:e.message)||i("An unexpected error occurred when processing PayPal order."))}return[2,u]}}))}))};var B=function(r){var n=r.error;var e;var t=d(n.message);var o=(e=t===null||t===void 0?void 0:t.errors.find(Boolean))===null||e===void 0?void 0:e.message;var a=(o===null||o===void 0?void 0:o.match(/\[(.*?)\] (.*)/i))||[];if(!a){O.paypalErrorMessage=i("An unexpected error occurred when processing PayPal order.")}var u=a[2]||i("An unexpected error occurred when processing PayPal order.");O.paypalErrorMessage=u};var C=function(r){var e=r.checkoutSessionId,c=r.onPaypalFail,s=r.onPaypalSessionDone,d=r.overrideBorderRaidus,f=r.overridePrimaryColor;var p=f||n.appearance.colorPrimary;var w="#ffc33a";var h=S({backgroundColor1:w,backgroundColor2:p||""});return{createOrder:function(){return __awaiter(v,void 0,void 0,(function(){var r,n,a,u;return __generator(this,(function(s){switch(s.label){case 0:s.trys.push([0,6,,7]);O.paypalErrorMessage=null;t.inventoryCheckErrorMessage=null;s.label=1;case 1:s.trys.push([1,3,,4]);r=t;return[4,o()];case 2:r.inventoryCheckErrorMessage=s.sent();return[3,4];case 3:n=s.sent();t.inventoryCheckErrorMessage=i("Unable to check inventory. Please try again.");return[3,4];case 4:if(t.inventoryCheckErrorMessage){return[2,""]}return[4,T({checkoutSessionId:e})];case 5:a=s.sent();return[2,a];case 6:u=s.sent();l("Failed to create paypal order",u);O.paypalErrorMessage=i("Failed to create PayPal order. Please try again, or consider using an alternative method.");c===null||c===void 0?void 0:c();return[2,""];case 7:return[2]}}))}))},onApprove:function(r,n){return __awaiter(v,void 0,void 0,(function(){var r,n;return __generator(this,(function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);O.paypalErrorMessage=null;I("zonos-checkout-payment-info");return[4,L({checkoutSessionId:e,paypalMockResponse:window.Zonos._paypalMockResponse})];case 1:r=t.sent();O.orderIdCreated=r;s===null||s===void 0?void 0:s({orderId:r});a();u();return[3,3];case 2:n=t.sent();l("==== Failed to capture paypal order",n);if(n instanceof Error){return[2,B({error:n})]}c===null||c===void 0?void 0:c();return[3,3];case 3:return[2]}}))}))},style:{borderRadius:d==="SHARP"?0:10,color:h?"gold":"blue",shape:"rect"}}};var R=function(){if(!O.paypalButtons.length){return}O.paypalButtons.forEach((function(r){return __awaiter(v,void 0,void 0,(function(){return __generator(this,(function(n){switch(n.label){case 0:return[4,r.close()];case 1:n.sent();return[2]}}))}))}));O.paypalButtons=[]};var D=r("p",(function(r){return __awaiter(v,[r],void 0,(function(r){var e,t,o,i,a;var u=r.currency;return __generator(this,(function(r){switch(r.label){case 0:t=!!((e=n.checkoutSettings.externalPaymentMethods)===null||e===void 0?void 0:e.find((function(r){return r.type==="PAYPAL"&&r.status==="ENABLED"})));if(!t){s("=== Paypal is disabled for this store","warn");return[2]}o=n.checkoutSettings.externalServiceTokens.find((function(r){return r.type==="PAYPAL_CLIENT_ID"}));if(!o){s("Failed to load paypal -- missing paypal publishable key","warn");return[2]}i=n.zonosMode==="production"&&n.checkoutSettings.mode==="LIVE"?"production":"sandbox";a=window.Zonos;return[4,g({clientId:o.token,currency:u,environment:i})];case 1:a.paypal=r.sent();s("==== Paypal script loaded");return[2]}}))}))}));var F=r("d",(function(r){var n;var e=window.Zonos.paypal;if(!e){s("Paypal is not available");return null}var o=t.checkoutSessionId;if(!o){s("Paypal is not available due to checkoutSessionId is not available");return null}s("==== Loading Paypal buttons");R();var i=[(n=e.FUNDING)===null||n===void 0?void 0:n.PAYPAL].filter(Boolean);O.paypalButtons=i.map((function(n){var t;var i=null;try{i=((t=e.Buttons)===null||t===void 0?void 0:t.call(e,Object.assign(Object.assign({},C(Object.assign({checkoutSessionId:o,fundingSource:n},r))),{fundingSource:n})))||null}catch(r){s("===== Failed to load paypal's \"".concat(n,'" button'),"warn",r)}if(i===null||i===void 0?void 0:i.isEligible()){s("==== Paypal button ".concat(n," loaded"));return i}return null})).filter(Boolean);return O.paypalButtons}));var z=r("c",(function(){return!!O.paypalButtons.length}))}}}));
@@ -1 +1 @@
1
- var __awaiter=this&&this.__awaiter||function(n,t,e,r){function i(n){return n instanceof e?n:new e((function(t){t(n)}))}return new(e||(e=Promise))((function(e,o){function u(n){try{a(r.next(n))}catch(n){o(n)}}function c(n){try{a(r["throw"](n))}catch(n){o(n)}}function a(n){n.done?e(n.value):i(n.value).then(u,c)}a((r=r.apply(n,t||[])).next())}))};var __generator=this&&this.__generator||function(n,t){var e={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},r,i,o,u;return u={next:c(0),throw:c(1),return:c(2)},typeof Symbol==="function"&&(u[Symbol.iterator]=function(){return this}),u;function c(n){return function(t){return a([n,t])}}function a(c){if(r)throw new TypeError("Generator is already executing.");while(u&&(u=0,c[0]&&(e=0)),e)try{if(r=1,i&&(o=c[0]&2?i["return"]:c[0]?i["throw"]||((o=i["return"])&&o.call(i),0):i.next)&&!(o=o.call(i,c[1])).done)return o;if(i=0,o)c=[c[0]&2,o.value];switch(c[0]){case 0:case 1:o=c;break;case 4:e.label++;return{value:c[1],done:false};case 5:e.label++;i=c[1];c=[0];continue;case 7:c=e.ops.pop();e.trys.pop();continue;default:if(!(o=e.trys,o=o.length>0&&o[o.length-1])&&(c[0]===6||c[0]===2)){e=0;continue}if(c[0]===3&&(!o||c[1]>o[0]&&c[1]<o[3])){e.label=c[1];break}if(c[0]===6&&e.label<o[1]){e.label=o[1];o=c;break}if(o&&e.label<o[2]){e.label=o[2];e.ops.push(c);break}if(o[2])e.ops.pop();e.trys.pop();continue}c=t.call(n,e)}catch(n){c=[6,n];i=0}finally{r=o=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}};System.register(["./p-dbbf8d3e.system.js","./p-b74ff880.system.js","./p-c4957e35.system.js"],(function(n){"use strict";var t,e,r,i;return{setters:[function(n){t=n.d;e=n.l},function(n){r=n.z},function(n){i=n.h}],execute:function(){var o=this;var u=n("t",(function(n,u){return __awaiter(o,void 0,void 0,(function(){var o,c,a,s,f,d,v;return __generator(this,(function(w){switch(w.label){case 0:a=window.location.href.includes("zonos.com")||window.location.href.includes("checkout.iglobalstores.com")||!!((o=window.Zonos)===null||o===void 0?void 0:o.zonosQaUrl)||!!((c=window.Zonos)===null||c===void 0?void 0:c.debug);if(a&&!window.Zonos.zonosConversionTest){return[2]}s=e.selectedCountryCode;f=r.organizationId;d=t.checkoutSessionId;if(!d){return[2]}v={checkoutSessionId:d,countryCode:s,eventName:n,metadata:u,organizationId:f};return[4,i("/api/zonos-elements/track-conversion-event",{body:v,method:"POST"})];case 1:w.sent();return[2]}}))}))}));var c=n("g",(function(){var n;return(n=window.Zonos.zonosApiKey)===null||n===void 0?void 0:n.includes("test")}));var a=n("c",(function(n,t){return new CustomEvent(n,{detail:t})}))}}}));
1
+ var __awaiter=this&&this.__awaiter||function(n,t,e,r){function i(n){return n instanceof e?n:new e((function(t){t(n)}))}return new(e||(e=Promise))((function(e,o){function u(n){try{a(r.next(n))}catch(n){o(n)}}function c(n){try{a(r["throw"](n))}catch(n){o(n)}}function a(n){n.done?e(n.value):i(n.value).then(u,c)}a((r=r.apply(n,t||[])).next())}))};var __generator=this&&this.__generator||function(n,t){var e={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},r,i,o,u;return u={next:c(0),throw:c(1),return:c(2)},typeof Symbol==="function"&&(u[Symbol.iterator]=function(){return this}),u;function c(n){return function(t){return a([n,t])}}function a(c){if(r)throw new TypeError("Generator is already executing.");while(u&&(u=0,c[0]&&(e=0)),e)try{if(r=1,i&&(o=c[0]&2?i["return"]:c[0]?i["throw"]||((o=i["return"])&&o.call(i),0):i.next)&&!(o=o.call(i,c[1])).done)return o;if(i=0,o)c=[c[0]&2,o.value];switch(c[0]){case 0:case 1:o=c;break;case 4:e.label++;return{value:c[1],done:false};case 5:e.label++;i=c[1];c=[0];continue;case 7:c=e.ops.pop();e.trys.pop();continue;default:if(!(o=e.trys,o=o.length>0&&o[o.length-1])&&(c[0]===6||c[0]===2)){e=0;continue}if(c[0]===3&&(!o||c[1]>o[0]&&c[1]<o[3])){e.label=c[1];break}if(c[0]===6&&e.label<o[1]){e.label=o[1];o=c;break}if(o&&e.label<o[2]){e.label=o[2];e.ops.push(c);break}if(o[2])e.ops.pop();e.trys.pop();continue}c=t.call(n,e)}catch(n){c=[6,n];i=0}finally{r=o=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}};System.register(["./p-71382e47.system.js","./p-b74ff880.system.js","./p-c4957e35.system.js"],(function(n){"use strict";var t,e,r,i;return{setters:[function(n){t=n.d;e=n.l},function(n){r=n.z},function(n){i=n.h}],execute:function(){var o=this;var u=n("t",(function(n,u){return __awaiter(o,void 0,void 0,(function(){var o,c,a,s,f,d,v;return __generator(this,(function(w){switch(w.label){case 0:a=window.location.href.includes("zonos.com")||window.location.href.includes("checkout.iglobalstores.com")||!!((o=window.Zonos)===null||o===void 0?void 0:o.zonosQaUrl)||!!((c=window.Zonos)===null||c===void 0?void 0:c.debug);if(a&&!window.Zonos.zonosConversionTest){return[2]}s=e.selectedCountryCode;f=r.organizationId;d=t.checkoutSessionId;if(!d){return[2]}v={checkoutSessionId:d,countryCode:s,eventName:n,metadata:u,organizationId:f};return[4,i("/api/zonos-elements/track-conversion-event",{body:v,method:"POST"})];case 1:w.sent();return[2]}}))}))}));var c=n("g",(function(){var n;return(n=window.Zonos.zonosApiKey)===null||n===void 0?void 0:n.includes("test")}));var a=n("c",(function(n,t){return new CustomEvent(n,{detail:t})}))}}}));
@@ -1,4 +1,4 @@
1
- import{z as o,c as e}from"./p-1086aac3.js";import{d as r,r as n,t,q as a,h as i}from"./p-ffaef730.js";import{h as s,l as c,a as l,j as u}from"./p-2ec2e9d3.js";import{t as d}from"./p-a1b755bf.js";
1
+ import{z as o,c as e}from"./p-1086aac3.js";import{d as r,r as n,t,q as a,h as i}from"./p-76b9668f.js";import{h as s,l as c,a as l,j as u}from"./p-2ec2e9d3.js";import{t as d}from"./p-a1b755bf.js";
2
2
  /*!
3
3
  * paypal-js v8.1.0 (2024-06-07T16:55:00.122Z)
4
4
  * Copyright 2020-present, PayPal, Inc. All rights reserved.
@@ -14,4 +14,4 @@ import{z as o,c as e}from"./p-1086aac3.js";import{d as r,r as n,t,q as a,h as i}
14
14
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
15
  * See the License for the specific language governing permissions and
16
16
  * limitations under the License.
17
- */function p(o,e){void 0===e&&(e={});var r=document.createElement("script");return r.src=o,Object.keys(e).forEach((function(o){r.setAttribute(o,e[o]),"data-csp-nonce"===o&&r.setAttribute("nonce",e["data-csp-nonce"])})),r}function y(o){return window[o]}function f(o,e){if("object"!=typeof o||null===o)throw new Error("Expected an options object.");var r=o.environment;if(r&&"production"!==r&&"sandbox"!==r)throw new Error('The `environment` option must be either "production" or "sandbox".');if(void 0!==e&&"function"!=typeof e)throw new Error("Expected PromisePonyfill to be a function.")}const v=({backgroundColor1:o,backgroundColor2:e})=>d.readability(o,e)>2.5,w=e=>{const r=o.checkoutSettings.analyticsProviders.find((o=>"GOOGLE_ANALYTICS"===o.type));r&&"DISABLED"!==(null==r?void 0:r.status)&&"function"==typeof window.gtag&&(c("Zonos submits gtag event","log",e),window.gtag("event",e,{}))},{reset:b,state:h}=e((()=>({orderIdCreated:null,paypalButtons:[],paypalClientId:"",paypalErrorMessage:null}))),m=({checkoutSessionId:e,onPaypalFail:c,onPaypalSessionDone:d,overrideBorderRaidus:p,overridePrimaryColor:y})=>({createOrder:async()=>{try{h.paypalErrorMessage=null,r.inventoryCheckErrorMessage=null;try{r.inventoryCheckErrorMessage=await n()}catch(o){r.inventoryCheckErrorMessage=t("Unable to check inventory. Please try again.")}return r.inventoryCheckErrorMessage?"":await(async({checkoutSessionId:o})=>{var e,r;const{errors:n,json:t}=await(async({checkoutSessionId:o})=>{const{errors:e,json:r}=await s("/api/zonos-elements/create-paypal-order",{body:{checkoutSessionId:o},method:"POST"});return{errors:e,json:r}})({checkoutSessionId:o}),a=null===(e=null==t?void 0:t.paypalOrderCreate)||void 0===e?void 0:e.paypalOrderId;if(n.length||!a)throw new Error((null===(r=n.find(Boolean))||void 0===r?void 0:r.message)||"An unexpected error occurred when creating paypal order.");return a})({checkoutSessionId:e})}catch(o){return l("Failed to create paypal order",o),h.paypalErrorMessage=t("Failed to create PayPal order. Please try again, or consider using an alternative method."),null==c||c(),""}},onApprove:async()=>{try{h.paypalErrorMessage=null,w("zonos-checkout-payment-info");const o=await(async({checkoutSessionId:o,paypalMockResponse:e})=>{var r,n;new URL(window.location.href);const{errors:a,json:i}=await(async({checkoutSessionId:o,paypalMockResponse:e})=>{const{errors:r,json:n}=await s("/api/zonos-elements/capture-paypal-order",{body:{checkoutSessionId:o,paypalMockResponse:e},method:"POST"});return{errors:r,json:n}})({checkoutSessionId:o,paypalMockResponse:e}),c=null===(r=null==i?void 0:i.paypalOrderCapture.order)||void 0===r?void 0:r.id;if(a.length||!c)throw new Error((null===(n=a.find(Boolean))||void 0===n?void 0:n.message)||t("An unexpected error occurred when processing PayPal order."));return c})({checkoutSessionId:e,paypalMockResponse:window.Zonos._paypalMockResponse});h.orderIdCreated=o,null==d||d({orderId:o}),a(),i()}catch(o){if(l("==== Failed to capture paypal order",o),o instanceof Error)return(({error:o})=>{var e;const r=u(o.message),n=null===(e=null==r?void 0:r.errors.find(Boolean))||void 0===e?void 0:e.message,a=(null==n?void 0:n.match(/\[(.*?)\] (.*)/i))||[];a||(h.paypalErrorMessage=t("An unexpected error occurred when processing PayPal order."));const i=a[2]||t("An unexpected error occurred when processing PayPal order.");h.paypalErrorMessage=i})({error:o});null==c||c()}},style:{borderRadius:"SHARP"===p?0:10,color:v({backgroundColor1:"#ffc33a",backgroundColor2:y||o.appearance.colorPrimary||""})?"gold":"blue",shape:"rect"}}),P=async({currency:e})=>{var r;if(!(null===(r=o.checkoutSettings.externalPaymentMethods)||void 0===r?void 0:r.find((o=>"PAYPAL"===o.type&&"ENABLED"===o.status))))return void c("=== Paypal is disabled for this store","warn");const n=o.checkoutSettings.externalServiceTokens.find((o=>"PAYPAL_CLIENT_ID"===o.type));if(!n)return void c("Failed to load paypal -- missing paypal publishable key","warn");const t="production"===o.zonosMode&&"LIVE"===o.checkoutSettings.mode?"production":"sandbox";window.Zonos.paypal=await function(o,e){if(void 0===e&&(e=Promise),f(o,e),"undefined"==typeof document)return e.resolve(null);var r=function(o){var e="sandbox"===o.environment?"https://www.sandbox.paypal.com/sdk/js":"https://www.paypal.com/sdk/js";delete o.environment,o.sdkBaseUrl&&(e=o.sdkBaseUrl,delete o.sdkBaseUrl);var r,n,t=o,a=Object.keys(t).filter((function(o){return null!=t[o]&&""!==t[o]})).reduce((function(o,e){var r=t[e].toString();return"data"===(e=e.replace(/[A-Z]+(?![a-z])|[A-Z]/g,(function(o,e){return(e?"-":"")+o.toLowerCase()}))).substring(0,4)||"crossorigin"===e?o.attributes[e]=r:o.queryParams[e]=r,o}),{queryParams:{},attributes:{}}),i=a.queryParams,s=a.attributes;return i["merchant-id"]&&-1!==i["merchant-id"].indexOf(",")&&(s["data-merchant-id"]=i["merchant-id"],i["merchant-id"]="*"),{url:"".concat(e,"?").concat((r=i,n="",Object.keys(r).forEach((function(o){0!==n.length&&(n+="&"),n+=o+"="+r[o]})),n)),attributes:s}}(o),n=r.url,t=r.attributes,a=t["data-namespace"]||"paypal",i=y(a);return t["data-js-sdk-library"]||(t["data-js-sdk-library"]="paypal-js"),function(o,e){var r=document.querySelector('script[src="'.concat(o,'"]'));if(null===r)return null;var n=p(o,e),t=r.cloneNode();if(delete t.dataset.uidAuto,Object.keys(t.dataset).length!==Object.keys(n.dataset).length)return null;var a=!0;return Object.keys(t.dataset).forEach((function(o){t.dataset[o]!==n.dataset[o]&&(a=!1)})),a?r:null}(n,t)&&i?e.resolve(i):function(o,e){void 0===e&&(e=Promise),f(o,e);var r=o.url,n=o.attributes;if("string"!=typeof r||0===r.length)throw new Error("Invalid url.");if(void 0!==n&&"object"!=typeof n)throw new Error("Expected attributes to be an object.");return new e((function(o,e){if("undefined"==typeof document)return o();!function(o){var e=o.onSuccess,r=o.onError,n=p(o.url,o.attributes);n.onerror=r,n.onload=e,document.head.insertBefore(n,document.head.firstElementChild)}({url:r,attributes:n,onSuccess:function(){return o()},onError:function(){var o=new Error('The script "'.concat(r,'" failed to load. Check the HTTP status code and response body in DevTools to learn more.'));return e(o)}})}))}({url:n,attributes:t},e).then((function(){var o=y(a);if(o)return o;throw new Error("The window.".concat(a," global variable is not available."))}))}({clientId:n.token,currency:e,environment:t}),c("==== Paypal script loaded")},k=o=>{var e;const n=window.Zonos.paypal;if(!n)return c("Paypal is not available"),null;const t=r.checkoutSessionId;if(!t)return c("Paypal is not available due to checkoutSessionId is not available"),null;c("==== Loading Paypal buttons"),h.paypalButtons.length&&(h.paypalButtons.forEach((async o=>{await o.close()})),h.paypalButtons=[]);const a=[null===(e=n.FUNDING)||void 0===e?void 0:e.PAYPAL].filter(Boolean);return h.paypalButtons=a.map((e=>{var r;let a=null;try{a=(null===(r=n.Buttons)||void 0===r?void 0:r.call(n,Object.assign(Object.assign({},m(Object.assign({checkoutSessionId:t,fundingSource:e},o))),{fundingSource:e})))||null}catch(o){c(`===== Failed to load paypal's "${e}" button`,"warn",o)}return(null==a?void 0:a.isEligible())?(c(`==== Paypal button ${e} loaded`),a):null})).filter(Boolean),h.paypalButtons},j=()=>!!h.paypalButtons.length;export{h as a,b,j as c,k as d,v as i,P as p,w as s}
17
+ */function p(o,e){void 0===e&&(e={});var r=document.createElement("script");return r.src=o,Object.keys(e).forEach((function(o){r.setAttribute(o,e[o]),"data-csp-nonce"===o&&r.setAttribute("nonce",e["data-csp-nonce"])})),r}function y(o){return window[o]}function v(o,e){if("object"!=typeof o||null===o)throw new Error("Expected an options object.");var r=o.environment;if(r&&"production"!==r&&"sandbox"!==r)throw new Error('The `environment` option must be either "production" or "sandbox".');if(void 0!==e&&"function"!=typeof e)throw new Error("Expected PromisePonyfill to be a function.")}const f=({backgroundColor1:o,backgroundColor2:e})=>d.readability(o,e)>2.5,w=e=>{const r=o.checkoutSettings.analyticsProviders.find((o=>"GOOGLE_ANALYTICS"===o.type));r&&"DISABLED"!==(null==r?void 0:r.status)&&"function"==typeof window.gtag&&(c("Zonos submits gtag event","log",e),window.gtag("event",e,{}))},{reset:b,state:h}=e((()=>({orderIdCreated:null,paypalButtons:[],paypalClientId:"",paypalErrorMessage:null}))),m=({checkoutSessionId:e,onPaypalFail:c,onPaypalSessionDone:d,overrideBorderRaidus:p,overridePrimaryColor:y})=>({createOrder:async()=>{try{h.paypalErrorMessage=null,r.inventoryCheckErrorMessage=null;try{r.inventoryCheckErrorMessage=await n()}catch(o){r.inventoryCheckErrorMessage=t("Unable to check inventory. Please try again.")}return r.inventoryCheckErrorMessage?"":await(async({checkoutSessionId:o})=>{var e,r;const{errors:n,json:t}=await(async({checkoutSessionId:o})=>{const{errors:e,json:r}=await s("/api/zonos-elements/create-paypal-order",{body:{checkoutSessionId:o},method:"POST"});return{errors:e,json:r}})({checkoutSessionId:o}),a=null===(e=null==t?void 0:t.paypalOrderCreate)||void 0===e?void 0:e.paypalOrderId;if(n.length||!a)throw new Error((null===(r=n.find(Boolean))||void 0===r?void 0:r.message)||"An unexpected error occurred when creating paypal order.");return a})({checkoutSessionId:e})}catch(o){return l("Failed to create paypal order",o),h.paypalErrorMessage=t("Failed to create PayPal order. Please try again, or consider using an alternative method."),null==c||c(),""}},onApprove:async()=>{try{h.paypalErrorMessage=null,w("zonos-checkout-payment-info");const o=await(async({checkoutSessionId:o,paypalMockResponse:e})=>{var r,n;new URL(window.location.href);const{errors:a,json:i}=await(async({checkoutSessionId:o,paypalMockResponse:e})=>{const{errors:r,json:n}=await s("/api/zonos-elements/capture-paypal-order",{body:{checkoutSessionId:o,paypalMockResponse:e},method:"POST"});return{errors:r,json:n}})({checkoutSessionId:o,paypalMockResponse:e}),c=null===(r=null==i?void 0:i.paypalOrderCapture.order)||void 0===r?void 0:r.id;if(a.length||!c)throw new Error((null===(n=a.find(Boolean))||void 0===n?void 0:n.message)||t("An unexpected error occurred when processing PayPal order."));return c})({checkoutSessionId:e,paypalMockResponse:window.Zonos._paypalMockResponse});h.orderIdCreated=o,null==d||d({orderId:o}),a(),i()}catch(o){if(l("==== Failed to capture paypal order",o),o instanceof Error)return(({error:o})=>{var e;const r=u(o.message),n=null===(e=null==r?void 0:r.errors.find(Boolean))||void 0===e?void 0:e.message,a=(null==n?void 0:n.match(/\[(.*?)\] (.*)/i))||[];a||(h.paypalErrorMessage=t("An unexpected error occurred when processing PayPal order."));const i=a[2]||t("An unexpected error occurred when processing PayPal order.");h.paypalErrorMessage=i})({error:o});null==c||c()}},style:{borderRadius:"SHARP"===p?0:10,color:f({backgroundColor1:"#ffc33a",backgroundColor2:y||o.appearance.colorPrimary||""})?"gold":"blue",shape:"rect"}}),P=async({currency:e})=>{var r;if(!(null===(r=o.checkoutSettings.externalPaymentMethods)||void 0===r?void 0:r.find((o=>"PAYPAL"===o.type&&"ENABLED"===o.status))))return void c("=== Paypal is disabled for this store","warn");const n=o.checkoutSettings.externalServiceTokens.find((o=>"PAYPAL_CLIENT_ID"===o.type));if(!n)return void c("Failed to load paypal -- missing paypal publishable key","warn");const t="production"===o.zonosMode&&"LIVE"===o.checkoutSettings.mode?"production":"sandbox";window.Zonos.paypal=await function(o,e){if(void 0===e&&(e=Promise),v(o,e),"undefined"==typeof document)return e.resolve(null);var r=function(o){var e="sandbox"===o.environment?"https://www.sandbox.paypal.com/sdk/js":"https://www.paypal.com/sdk/js";delete o.environment,o.sdkBaseUrl&&(e=o.sdkBaseUrl,delete o.sdkBaseUrl);var r,n,t=o,a=Object.keys(t).filter((function(o){return null!=t[o]&&""!==t[o]})).reduce((function(o,e){var r=t[e].toString();return"data"===(e=e.replace(/[A-Z]+(?![a-z])|[A-Z]/g,(function(o,e){return(e?"-":"")+o.toLowerCase()}))).substring(0,4)||"crossorigin"===e?o.attributes[e]=r:o.queryParams[e]=r,o}),{queryParams:{},attributes:{}}),i=a.queryParams,s=a.attributes;return i["merchant-id"]&&-1!==i["merchant-id"].indexOf(",")&&(s["data-merchant-id"]=i["merchant-id"],i["merchant-id"]="*"),{url:"".concat(e,"?").concat((r=i,n="",Object.keys(r).forEach((function(o){0!==n.length&&(n+="&"),n+=o+"="+r[o]})),n)),attributes:s}}(o),n=r.url,t=r.attributes,a=t["data-namespace"]||"paypal",i=y(a);return t["data-js-sdk-library"]||(t["data-js-sdk-library"]="paypal-js"),function(o,e){var r=document.querySelector('script[src="'.concat(o,'"]'));if(null===r)return null;var n=p(o,e),t=r.cloneNode();if(delete t.dataset.uidAuto,Object.keys(t.dataset).length!==Object.keys(n.dataset).length)return null;var a=!0;return Object.keys(t.dataset).forEach((function(o){t.dataset[o]!==n.dataset[o]&&(a=!1)})),a?r:null}(n,t)&&i?e.resolve(i):function(o,e){void 0===e&&(e=Promise),v(o,e);var r=o.url,n=o.attributes;if("string"!=typeof r||0===r.length)throw new Error("Invalid url.");if(void 0!==n&&"object"!=typeof n)throw new Error("Expected attributes to be an object.");return new e((function(o,e){if("undefined"==typeof document)return o();!function(o){var e=o.onSuccess,r=o.onError,n=p(o.url,o.attributes);n.onerror=r,n.onload=e,document.head.insertBefore(n,document.head.firstElementChild)}({url:r,attributes:n,onSuccess:function(){return o()},onError:function(){var o=new Error('The script "'.concat(r,'" failed to load. Check the HTTP status code and response body in DevTools to learn more.'));return e(o)}})}))}({url:n,attributes:t},e).then((function(){var o=y(a);if(o)return o;throw new Error("The window.".concat(a," global variable is not available."))}))}({clientId:n.token,currency:e,environment:t}),c("==== Paypal script loaded")},k=o=>{var e;const n=window.Zonos.paypal;if(!n)return c("Paypal is not available"),null;const t=r.checkoutSessionId;if(!t)return c("Paypal is not available due to checkoutSessionId is not available"),null;c("==== Loading Paypal buttons"),h.paypalButtons.length&&(h.paypalButtons.forEach((async o=>{await o.close()})),h.paypalButtons=[]);const a=[null===(e=n.FUNDING)||void 0===e?void 0:e.PAYPAL].filter(Boolean);return h.paypalButtons=a.map((e=>{var r;let a=null;try{a=(null===(r=n.Buttons)||void 0===r?void 0:r.call(n,Object.assign(Object.assign({},m(Object.assign({checkoutSessionId:t,fundingSource:e},o))),{fundingSource:e})))||null}catch(o){c(`===== Failed to load paypal's "${e}" button`,"warn",o)}return(null==a?void 0:a.isEligible())?(c(`==== Paypal button ${e} loaded`),a):null})).filter(Boolean),h.paypalButtons},j=()=>!!h.paypalButtons.length;export{h as a,b,j as c,k as d,f as i,P as p,w as s}