@zonos/elements 1.3.207 → 1.3.209

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 (239) hide show
  1. package/dist/cjs/{CheckoutConfig-4afc683b.js → CheckoutConfig-27c82f94.js} +19 -0
  2. package/dist/cjs/{cart-3d961c6e.js → cart-2ec8cac2.js} +285 -64
  3. package/dist/cjs/{debounce-0b9c0f8a.js → debounce-465a4328.js} +1 -1
  4. package/dist/cjs/{getBorderRadius-c424eb05.js → getBorderRadius-1b5e33cf.js} +1 -1
  5. package/dist/cjs/{handleFetch-969d05d8.js → handleFetch-05227713.js} +2 -6
  6. package/dist/cjs/index.cjs.js +29 -9
  7. package/dist/cjs/{isDarkColor-35e8daec.js → isDarkColor-428965f4.js} +1 -1
  8. package/dist/cjs/loader.cjs.js +1 -1
  9. package/dist/cjs/{localization-ff33875b.js → localization-9b43376c.js} +3 -2
  10. package/dist/cjs/{paypal-dee5c109.js → paypal-6449314e.js} +5 -5
  11. package/dist/cjs/updateCheckoutSessionAttributes-a31bb681.js +50 -0
  12. package/dist/cjs/zonos-address_11.cjs.entry.js +104 -84
  13. package/dist/cjs/zonos-badge.cjs.entry.js +1 -1
  14. package/dist/cjs/zonos-banner.cjs.entry.js +1 -1
  15. package/dist/cjs/zonos-button_3.cjs.entry.js +3 -3
  16. package/dist/cjs/zonos-card.cjs.entry.js +2 -2
  17. package/dist/cjs/zonos-cart-items_14.cjs.entry.js +98 -49
  18. package/dist/cjs/zonos-checkout.cjs.entry.js +87 -31
  19. package/dist/cjs/zonos-collapse.cjs.entry.js +1 -1
  20. package/dist/cjs/zonos-controller.cjs.entry.js +6 -6
  21. package/dist/cjs/zonos-country-flag.cjs.entry.js +3 -3
  22. package/dist/cjs/zonos-country-select_4.cjs.entry.js +13 -9
  23. package/dist/cjs/zonos-elements.cjs.js +1 -1
  24. package/dist/cjs/zonos-empty-state-payment_4.cjs.entry.js +7 -7
  25. package/dist/cjs/zonos-hello-dialog.cjs.entry.js +3 -3
  26. package/dist/cjs/zonos-hello.cjs.entry.js +4 -4
  27. package/dist/cjs/zonos-input.cjs.entry.js +2 -2
  28. package/dist/cjs/zonos-language-select_2.cjs.entry.js +3 -3
  29. package/dist/cjs/zonos-logo.cjs.entry.js +1 -1
  30. package/dist/cjs/zonos-shipping-rich-radio.cjs.entry.js +2 -2
  31. package/dist/cjs/zonos-stripe-input.cjs.entry.js +3 -3
  32. package/dist/cjs/zonos-text.cjs.entry.js +1 -1
  33. package/dist/cjs/zonos-toggle.cjs.entry.js +1 -1
  34. package/dist/cjs/zonos-v-stack.cjs.entry.js +1 -1
  35. package/dist/cjs/{zonosStore-7c1e1bc1.js → zonosStore-f8ee56aa.js} +1 -0
  36. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout.js +79 -24
  37. package/dist/collection/components/checkout/zonos-checkout/zonos-customer-info/zonos-customer-info.js +71 -36
  38. package/dist/collection/components/checkout/zonos-checkout/zonos-shipping/zonos-shipping.js +33 -11
  39. package/dist/collection/components/common/zonos-checkout-progress-tabs/zonos-checkout-progress-tabs.js +2 -2
  40. package/dist/collection/components/common/zonos-country-select/zonos-country-select.js +9 -5
  41. package/dist/collection/components/store/checkout/cart.js +9 -2
  42. package/dist/collection/components/store/checkout/stripe.js +266 -55
  43. package/dist/collection/components/store/hello/localization.js +1 -0
  44. package/dist/collection/components/stripe/zonos-address/zonos-address.css +2 -1
  45. package/dist/collection/components/stripe/zonos-address/zonos-address.js +24 -3
  46. package/dist/collection/components/stripe/zonos-custom-address/zonos-custom-address.css +2 -1
  47. package/dist/collection/components/stripe/zonos-custom-address/zonos-custom-address.js +7 -5
  48. package/dist/collection/components/utils/api/cartCalculateLandedCost.js +3 -2
  49. package/dist/collection/components/utils/api/prepCalculateLandedCost.js +2 -2
  50. package/dist/collection/components/utils/api/updateCheckoutSessionAttributes.js +46 -0
  51. package/dist/collection/components/utils/checkout/getAbandonedCartRenewTokenValue.js +17 -0
  52. package/dist/collection/components/utils/handleFetch.js +2 -1
  53. package/dist/collection/components/utils/logging/log.js +0 -5
  54. package/dist/collection/scripts/_getCartInfoById.js +3 -0
  55. package/dist/collection/types/checkout/api/CheckoutSession.js +14 -1
  56. package/dist/collection/types/checkout/api/CreateParty.js +1 -0
  57. package/dist/collection/types/generated/graphql.frontend.types.js +2 -0
  58. package/dist/collection/types/generated/graphql.internal.types.js +15 -0
  59. package/dist/collection/types/index.js +1 -0
  60. package/dist/esm/{CheckoutConfig-eb7d6954.js → CheckoutConfig-724d7bae.js} +19 -1
  61. package/dist/esm/{cart-5835676d.js → cart-2f84f632.js} +284 -65
  62. package/dist/esm/{debounce-eaee3a94.js → debounce-0e42da22.js} +1 -1
  63. package/dist/esm/{getBorderRadius-b18c924f.js → getBorderRadius-71b3b8ab.js} +1 -1
  64. package/dist/esm/{handleFetch-621e45bc.js → handleFetch-7dd4622b.js} +2 -6
  65. package/dist/esm/index.js +28 -11
  66. package/dist/esm/{isDarkColor-d8bb8659.js → isDarkColor-3a9d6108.js} +1 -1
  67. package/dist/esm/loader.js +1 -1
  68. package/dist/esm/{localization-4c7f64e8.js → localization-e17c211b.js} +3 -2
  69. package/dist/esm/{paypal-b4f106be.js → paypal-1cf701aa.js} +6 -6
  70. package/dist/esm/updateCheckoutSessionAttributes-5097e715.js +48 -0
  71. package/dist/esm/zonos-address_11.entry.js +104 -84
  72. package/dist/esm/zonos-badge.entry.js +1 -1
  73. package/dist/esm/zonos-banner.entry.js +1 -1
  74. package/dist/esm/zonos-button_3.entry.js +3 -3
  75. package/dist/esm/zonos-card.entry.js +2 -2
  76. package/dist/esm/zonos-cart-items_14.entry.js +98 -49
  77. package/dist/esm/zonos-checkout.entry.js +87 -31
  78. package/dist/esm/zonos-collapse.entry.js +1 -1
  79. package/dist/esm/zonos-controller.entry.js +6 -6
  80. package/dist/esm/zonos-country-flag.entry.js +3 -3
  81. package/dist/esm/zonos-country-select_4.entry.js +13 -9
  82. package/dist/esm/zonos-elements.js +1 -1
  83. package/dist/esm/zonos-empty-state-payment_4.entry.js +7 -7
  84. package/dist/esm/zonos-hello-dialog.entry.js +3 -3
  85. package/dist/esm/zonos-hello.entry.js +4 -4
  86. package/dist/esm/zonos-input.entry.js +2 -2
  87. package/dist/esm/zonos-language-select_2.entry.js +3 -3
  88. package/dist/esm/zonos-logo.entry.js +1 -1
  89. package/dist/esm/zonos-shipping-rich-radio.entry.js +2 -2
  90. package/dist/esm/zonos-stripe-input.entry.js +3 -3
  91. package/dist/esm/zonos-text.entry.js +1 -1
  92. package/dist/esm/zonos-toggle.entry.js +1 -1
  93. package/dist/esm/zonos-v-stack.entry.js +1 -1
  94. package/dist/esm/{zonosStore-1e015fa5.js → zonosStore-00975763.js} +1 -1
  95. package/dist/esm-es5/CheckoutConfig-724d7bae.js +1 -0
  96. package/dist/esm-es5/cart-2f84f632.js +1 -0
  97. package/dist/esm-es5/{debounce-eaee3a94.js → debounce-0e42da22.js} +1 -1
  98. package/dist/esm-es5/{getBorderRadius-b18c924f.js → getBorderRadius-71b3b8ab.js} +1 -1
  99. package/dist/esm-es5/handleFetch-7dd4622b.js +1 -0
  100. package/dist/esm-es5/index.js +1 -1
  101. package/dist/esm-es5/{isDarkColor-d8bb8659.js → isDarkColor-3a9d6108.js} +1 -1
  102. package/dist/esm-es5/loader.js +1 -1
  103. package/dist/esm-es5/{localization-4c7f64e8.js → localization-e17c211b.js} +1 -1
  104. package/dist/esm-es5/{paypal-b4f106be.js → paypal-1cf701aa.js} +2 -2
  105. package/dist/esm-es5/updateCheckoutSessionAttributes-5097e715.js +1 -0
  106. package/dist/esm-es5/zonos-address_11.entry.js +1 -1
  107. package/dist/esm-es5/zonos-badge.entry.js +1 -1
  108. package/dist/esm-es5/zonos-banner.entry.js +1 -1
  109. package/dist/esm-es5/zonos-button_3.entry.js +1 -1
  110. package/dist/esm-es5/zonos-card.entry.js +1 -1
  111. package/dist/esm-es5/zonos-cart-items_14.entry.js +1 -1
  112. package/dist/esm-es5/zonos-checkout.entry.js +1 -1
  113. package/dist/esm-es5/zonos-collapse.entry.js +1 -1
  114. package/dist/esm-es5/zonos-controller.entry.js +1 -1
  115. package/dist/esm-es5/zonos-country-flag.entry.js +1 -1
  116. package/dist/esm-es5/zonos-country-select_4.entry.js +1 -1
  117. package/dist/esm-es5/zonos-elements.js +1 -1
  118. package/dist/esm-es5/zonos-empty-state-payment_4.entry.js +1 -1
  119. package/dist/esm-es5/zonos-hello-dialog.entry.js +1 -1
  120. package/dist/esm-es5/zonos-hello.entry.js +1 -1
  121. package/dist/esm-es5/zonos-input.entry.js +1 -1
  122. package/dist/esm-es5/zonos-language-select_2.entry.js +1 -1
  123. package/dist/esm-es5/zonos-logo.entry.js +1 -1
  124. package/dist/esm-es5/zonos-shipping-rich-radio.entry.js +1 -1
  125. package/dist/esm-es5/zonos-stripe-input.entry.js +1 -1
  126. package/dist/esm-es5/zonos-text.entry.js +1 -1
  127. package/dist/esm-es5/zonos-toggle.entry.js +1 -1
  128. package/dist/esm-es5/zonos-v-stack.entry.js +1 -1
  129. package/dist/esm-es5/{zonosStore-1e015fa5.js → zonosStore-00975763.js} +1 -1
  130. package/dist/scripts/index.d.ts +10 -0
  131. package/dist/scripts/index.js +1 -1
  132. package/dist/scripts/loadZonos.js +1 -1
  133. package/dist/scripts/zonos.js +1 -1
  134. package/dist/types/components/checkout/zonos-checkout/zonos-checkout.d.ts +2 -0
  135. package/dist/types/components/checkout/zonos-checkout/zonos-customer-info/zonos-customer-info.d.ts +8 -4
  136. package/dist/types/components/checkout/zonos-checkout/zonos-shipping/zonos-shipping.d.ts +3 -0
  137. package/dist/types/components/common/zonos-country-select/zonos-country-select.d.ts +1 -0
  138. package/dist/types/components/store/checkout/cart.d.ts +6 -2
  139. package/dist/types/components/store/checkout/stripe.d.ts +33 -6
  140. package/dist/types/components/stripe/zonos-address/zonos-address.d.ts +6 -0
  141. package/dist/types/components/utils/api/updateCheckoutSessionAttributes.d.ts +7 -0
  142. package/dist/types/components/utils/checkout/getAbandonedCartRenewTokenValue.d.ts +1 -0
  143. package/dist/types/scripts/cart/_setupCartDataWithSettings.d.ts +1 -0
  144. package/dist/types/types/checkout/api/CheckoutSession.d.ts +16 -0
  145. package/dist/types/types/checkout/api/CreateParty.d.ts +34 -0
  146. package/dist/types/types/checkout/api/NormalizedTempCart.d.ts +2 -0
  147. package/dist/types/types/generated/graphql.frontend.types.d.ts +2 -0
  148. package/dist/types/types/generated/graphql.frontend.types.ts +2 -0
  149. package/dist/types/types/generated/graphql.internal.types.d.ts +61 -5
  150. package/dist/types/types/generated/graphql.internal.types.ts +105 -3
  151. package/dist/types/types/index.d.ts +1 -0
  152. package/dist/types/types/utils/ZonosSettings.d.ts +6 -0
  153. package/dist/zonos-elements/index.esm.js +1 -1
  154. package/dist/zonos-elements/{p-4e9c8f9e.system.js → p-0751b878.system.js} +1 -1
  155. package/dist/zonos-elements/{p-abe218ab.system.entry.js → p-08b29f73.system.entry.js} +1 -1
  156. package/dist/zonos-elements/{p-74bcb5cc.entry.js → p-0ca1d6dd.entry.js} +1 -1
  157. package/dist/zonos-elements/{p-12cd9d3a.entry.js → p-144b5006.entry.js} +1 -1
  158. package/dist/zonos-elements/{p-9e9ac7a2.system.js → p-19182dc7.system.js} +1 -1
  159. package/dist/zonos-elements/{p-eca09508.system.entry.js → p-1dc78af3.system.entry.js} +1 -1
  160. package/dist/zonos-elements/{p-e337fa88.js → p-207bd04a.js} +1 -1
  161. package/dist/zonos-elements/p-20839c46.js +1 -0
  162. package/dist/zonos-elements/{p-1aa24297.system.entry.js → p-2122d2cc.system.entry.js} +1 -1
  163. package/dist/zonos-elements/{p-4fb88ebc.system.entry.js → p-239695e8.system.entry.js} +1 -1
  164. package/dist/zonos-elements/{p-3196bf98.entry.js → p-23fe7661.entry.js} +1 -1
  165. package/dist/zonos-elements/p-2652198d.js +1 -0
  166. package/dist/zonos-elements/p-30a9f802.system.entry.js +1 -0
  167. package/dist/zonos-elements/{p-c666d557.system.js → p-3633a952.system.js} +1 -1
  168. package/dist/zonos-elements/{p-9b8a5372.entry.js → p-36b686b6.entry.js} +1 -1
  169. package/dist/zonos-elements/{p-658936c9.js → p-371d91d1.js} +2 -2
  170. package/dist/zonos-elements/{p-019f8637.entry.js → p-3934b38a.entry.js} +1 -1
  171. package/dist/zonos-elements/p-3c752420.system.js +1 -0
  172. package/dist/zonos-elements/p-3ee44728.system.js +1 -1
  173. package/dist/zonos-elements/p-40a4c8a2.system.js +1 -0
  174. package/dist/zonos-elements/{p-91c996d3.system.js → p-44c0a584.system.js} +2 -2
  175. package/dist/zonos-elements/{p-eb2560b6.system.entry.js → p-45a2f9b1.system.entry.js} +1 -1
  176. package/dist/zonos-elements/{p-1327b935.system.js → p-4a1b4a2d.system.js} +1 -1
  177. package/dist/zonos-elements/p-4c70fd75.entry.js +1 -0
  178. package/dist/zonos-elements/{p-bab19e2a.entry.js → p-4d62f3de.entry.js} +1 -1
  179. package/dist/zonos-elements/{p-848e08e8.entry.js → p-4dbaa2c2.entry.js} +1 -1
  180. package/dist/zonos-elements/p-4ed73ff8.entry.js +1 -0
  181. package/dist/zonos-elements/{p-47e2cd31.entry.js → p-4f5513dc.entry.js} +1 -1
  182. package/dist/zonos-elements/p-542acc2c.js +1 -0
  183. package/dist/zonos-elements/p-5711e187.system.js +1 -0
  184. package/dist/zonos-elements/{p-41c1d7c4.entry.js → p-5956a9e0.entry.js} +1 -1
  185. package/dist/zonos-elements/{p-5616b304.entry.js → p-5b7686f8.entry.js} +1 -1
  186. package/dist/zonos-elements/{p-0c4c8d63.entry.js → p-63a4dac5.entry.js} +1 -1
  187. package/dist/zonos-elements/{p-f4d741de.system.entry.js → p-695bf400.system.entry.js} +1 -1
  188. package/dist/zonos-elements/{p-9fa17353.js → p-6aa728f2.js} +1 -1
  189. package/dist/zonos-elements/{p-ed20f2f7.js → p-71c6bdc3.js} +1 -1
  190. package/dist/zonos-elements/p-738a49c0.system.js +1 -0
  191. package/dist/zonos-elements/{p-469ccc66.system.entry.js → p-74276b82.system.entry.js} +1 -1
  192. package/dist/zonos-elements/{p-e0587eeb.entry.js → p-77e22be4.entry.js} +1 -1
  193. package/dist/zonos-elements/{p-3afc27ef.entry.js → p-78dd1c53.entry.js} +1 -1
  194. package/dist/zonos-elements/{p-620deb03.system.entry.js → p-7f9bbbb3.system.entry.js} +1 -1
  195. package/dist/zonos-elements/p-896f2358.system.entry.js +1 -0
  196. package/dist/zonos-elements/{p-719e14a8.system.entry.js → p-8f41d864.system.entry.js} +1 -1
  197. package/dist/zonos-elements/{p-4cb8b87f.system.entry.js → p-964e2587.system.entry.js} +1 -1
  198. package/dist/zonos-elements/{p-93aeba62.system.entry.js → p-97831744.system.entry.js} +1 -1
  199. package/dist/zonos-elements/{p-2866fd29.system.entry.js → p-9d95c896.system.entry.js} +1 -1
  200. package/dist/zonos-elements/{p-abc83d01.entry.js → p-a24870af.entry.js} +1 -1
  201. package/dist/zonos-elements/p-a411ce2a.system.js +1 -0
  202. package/dist/zonos-elements/{p-1bc09abe.system.entry.js → p-a4686344.system.entry.js} +1 -1
  203. package/dist/zonos-elements/{p-edcfb3a3.js → p-a6f77d44.js} +1 -1
  204. package/dist/zonos-elements/{p-b21b0330.entry.js → p-a8f421ac.entry.js} +1 -1
  205. package/dist/zonos-elements/{p-18149db1.entry.js → p-aa40d402.entry.js} +1 -1
  206. package/dist/zonos-elements/{p-536f69eb.entry.js → p-ad1e1dbc.entry.js} +1 -1
  207. package/dist/zonos-elements/p-b1bfeec9.system.entry.js +1 -0
  208. package/dist/zonos-elements/p-b2d81c98.js +1 -0
  209. package/dist/zonos-elements/{p-7777d85f.system.entry.js → p-baa88176.system.entry.js} +1 -1
  210. package/dist/zonos-elements/{p-1ad099ec.system.entry.js → p-bf9cb85f.system.entry.js} +1 -1
  211. package/dist/zonos-elements/p-bfdb4e7a.entry.js +1 -0
  212. package/dist/zonos-elements/{p-858b7908.system.entry.js → p-c345b306.system.entry.js} +1 -1
  213. package/dist/zonos-elements/{p-22cb6880.system.entry.js → p-d1697144.system.entry.js} +1 -1
  214. package/dist/zonos-elements/p-d1c0bf92.entry.js +1 -0
  215. package/dist/zonos-elements/{p-16678764.js → p-d6a53ea6.js} +1 -1
  216. package/dist/zonos-elements/{p-265af369.system.entry.js → p-db424e02.system.entry.js} +1 -1
  217. package/dist/zonos-elements/p-eb77c0bf.system.js +1 -0
  218. package/dist/zonos-elements/{p-30778fde.system.entry.js → p-ef1ccec6.system.entry.js} +1 -1
  219. package/dist/zonos-elements/{p-42a9557f.entry.js → p-fdf5b8f4.entry.js} +1 -1
  220. package/dist/zonos-elements/zonos-elements.esm.js +1 -1
  221. package/package.json +1 -1
  222. package/dist/esm-es5/CheckoutConfig-eb7d6954.js +0 -1
  223. package/dist/esm-es5/cart-5835676d.js +0 -1
  224. package/dist/esm-es5/handleFetch-621e45bc.js +0 -1
  225. package/dist/zonos-elements/p-0de2c731.system.js +0 -1
  226. package/dist/zonos-elements/p-0fc02cde.js +0 -1
  227. package/dist/zonos-elements/p-1b75aa35.system.js +0 -1
  228. package/dist/zonos-elements/p-3a50124e.entry.js +0 -1
  229. package/dist/zonos-elements/p-3f1a2d31.js +0 -1
  230. package/dist/zonos-elements/p-5e1b2654.system.js +0 -1
  231. package/dist/zonos-elements/p-666164d9.system.js +0 -1
  232. package/dist/zonos-elements/p-9f78b79e.entry.js +0 -1
  233. package/dist/zonos-elements/p-a2b55d11.entry.js +0 -1
  234. package/dist/zonos-elements/p-aafcd40f.system.entry.js +0 -1
  235. package/dist/zonos-elements/p-b922c441.system.js +0 -1
  236. package/dist/zonos-elements/p-ba027b70.system.entry.js +0 -1
  237. package/dist/zonos-elements/p-c4e0f49a.system.entry.js +0 -1
  238. package/dist/zonos-elements/p-dbd23bea.entry.js +0 -1
  239. package/dist/zonos-elements/p-f9664811.js +0 -1
@@ -0,0 +1,46 @@
1
+ import debounce from "lodash/debounce";
2
+ import { handleFetch } from "../handleFetch";
3
+ import { logError } from "../logging/logError";
4
+ const attributesToUpdate = {};
5
+ // Store debounced functions per session to ensure proper debouncing
6
+ const debouncedFunctions = {};
7
+ const createDebouncedFetch = (sessionId) => {
8
+ return debounce(async () => {
9
+ var _a, _b;
10
+ // Get latest attributes from the map
11
+ const latestAttributes = Array.from(((_a = attributesToUpdate[sessionId]) === null || _a === void 0 ? void 0 : _a.entries()) || []).map(([key, value]) => ({ key, value }));
12
+ const { errors, json } = await handleFetch('/api/zonos-elements/update-checkout-session-attributes', {
13
+ body: {
14
+ attributes: latestAttributes,
15
+ id: sessionId,
16
+ },
17
+ method: 'POST',
18
+ });
19
+ if (errors.length) {
20
+ logError('Error updating checkout session attributes', errors);
21
+ return { success: false };
22
+ }
23
+ (_b = attributesToUpdate[sessionId]) === null || _b === void 0 ? void 0 : _b.clear();
24
+ return { success: !!(json === null || json === void 0 ? void 0 : json.success) };
25
+ }, 1000, { maxWait: 5000 });
26
+ };
27
+ export const updateCheckoutSessionAttributes = async ({ attributes, checkoutSessionId, }) => {
28
+ // Merge the new attributes with the attributes in the list, if key exist, override it
29
+ // init the map if not exist
30
+ attributesToUpdate[checkoutSessionId] || (attributesToUpdate[checkoutSessionId] = new Map());
31
+ attributes.forEach(attribute => {
32
+ var _a;
33
+ if (attribute.value) {
34
+ (_a = attributesToUpdate[checkoutSessionId]) === null || _a === void 0 ? void 0 : _a.set(attribute.key, attribute.value);
35
+ }
36
+ });
37
+ if (!attributes.length) {
38
+ return;
39
+ }
40
+ // Get or create the debounced function for this session
41
+ if (!debouncedFunctions[checkoutSessionId]) {
42
+ debouncedFunctions[checkoutSessionId] =
43
+ createDebouncedFetch(checkoutSessionId);
44
+ }
45
+ return debouncedFunctions[checkoutSessionId]();
46
+ };
@@ -0,0 +1,17 @@
1
+ export const getAbandonedCartRenewTokenValue = () => {
2
+ const validityToken = new URLSearchParams(window.location.search).get('validityToken');
3
+ // check if validityToken length is base64 encoded
4
+ if (!validityToken ||
5
+ !/^[A-Za-z0-9+/]+={0,2}$/.test(validityToken) ||
6
+ validityToken.length % 4 !== 0) {
7
+ return null;
8
+ }
9
+ try {
10
+ // check if it can be decoded
11
+ atob(validityToken);
12
+ return validityToken;
13
+ }
14
+ catch (_a) {
15
+ return null;
16
+ }
17
+ };
@@ -176,12 +176,13 @@ const handleRequestWithFallback = async ({ basePathType: _basePathType, options,
176
176
  }
177
177
  const nextFallbackApiType = getNextFallbackApiType(basePathType);
178
178
  const unknownError = errors.find(({ type }) => type === 'unknown');
179
+ const isAbortError = errors.find(({ message }) => message.includes('signal is aborted'));
179
180
  const isUnknownError = !!unknownError || (response === null || response === void 0 ? void 0 : response.status) === 404;
180
181
  const shouldCallFallback =
181
182
  // If next fallback is available, and the error is unknown (Failed to fetch) or 404
182
183
  nextFallbackApiType && isUnknownError;
183
184
  // Should log the error if it's unknown error
184
- if (isUnknownError) {
185
+ if (isUnknownError || isAbortError) {
185
186
  void sendErrorLog({
186
187
  endpoint: fallbackApiList[basePathType] + path,
187
188
  errors: errors.map(({ message }) => `API: ${message}`),
@@ -35,11 +35,6 @@ export const log = (message, type, ..._additionalInfo) => {
35
35
  !!window.location.search.match(/\?.*(&*)zonosDebug=1/);
36
36
  // if debug is false, do not log
37
37
  if (!isDebug) {
38
- // log errors to the console if the type is error
39
- if (type === 'error') {
40
- // eslint-disable-next-line no-console
41
- console.error(message, ...additionalInfo);
42
- }
43
38
  return;
44
39
  }
45
40
  let loggingIframe = document.querySelector('iframe#zonos---debug-logging-iframe');
@@ -1,10 +1,12 @@
1
1
  import { getGenericSettingsOverride } from "../components/utils/api/getGenericSettingsOverride";
2
+ import { getAbandonedCartRenewTokenValue } from "../components/utils/checkout/getAbandonedCartRenewTokenValue";
2
3
  import { getIsTestMode } from "../components/utils/checkout/getIsTestMode";
3
4
  import { handleFetch } from "../components/utils/handleFetch";
4
5
  import { log } from "../components/utils/logging/log";
5
6
  export const getCartInfoById = async ({ cartId, retries, }) => {
6
7
  const isTestMode = getIsTestMode();
7
8
  const overrideSettings = getGenericSettingsOverride();
9
+ const renewCartExpirationToken = getAbandonedCartRenewTokenValue() || undefined;
8
10
  const params = new URLSearchParams();
9
11
  if (overrideSettings.overrideShouldEnabledCustomAddress) {
10
12
  params.set('overrideShouldEnabledCustomAddress', overrideSettings.overrideShouldEnabledCustomAddress);
@@ -12,6 +14,7 @@ export const getCartInfoById = async ({ cartId, retries, }) => {
12
14
  const { errors, json, zonosMode } = await handleFetch(`/api/zonos-elements/get-cart?${params.toString()}`, {
13
15
  body: {
14
16
  isTestMode,
17
+ renewCartExpirationToken,
15
18
  tempCartUUID: cartId,
16
19
  },
17
20
  headers: {
@@ -1 +1,14 @@
1
- export {};
1
+ export const checkoutSessionMutableAttributeKeys = [
2
+ 'ZONOS_FORM_TYPE_USING',
3
+ 'APP_VERSION',
4
+ 'APP_VERSION_NPM_INTEGRATION',
5
+ 'LEGACY_CHECKOUT_FACADE',
6
+ ];
7
+ export const checkoutSessionImmutableAttributeKeys = [
8
+ 'ORDER_DUPLICATION_CONSENT',
9
+ 'WITH_ABANDONED_CART_TOKEN',
10
+ ];
11
+ export const checkoutSessionAttributeKeys = [
12
+ ...checkoutSessionMutableAttributeKeys,
13
+ ...checkoutSessionImmutableAttributeKeys,
14
+ ];
@@ -0,0 +1 @@
1
+ export {};
@@ -3,7 +3,9 @@ export const cursorOrdering = {
3
3
  Desc: 'DESC',
4
4
  };
5
5
  export const errorProjectNameEnum = {
6
+ Conductor: 'conductor',
6
7
  Dashboard: 'dashboard',
8
+ DashboardExpo: 'dashboard_expo',
7
9
  Elements: 'elements',
8
10
  ZonosCom: 'zonos_com',
9
11
  };
@@ -2883,6 +2883,9 @@ export function getSdk(client, withWrapper = defaultWrapper) {
2883
2883
  checkoutSessionUpdate(variables, requestHeaders) {
2884
2884
  return withWrapper(wrappedRequestHeaders => client.request('', variables, Object.assign(Object.assign({}, requestHeaders), wrappedRequestHeaders)), 'checkoutSessionUpdate', 'mutation');
2885
2885
  },
2886
+ checkoutSessionUpdateAttributes(variables, requestHeaders) {
2887
+ return withWrapper(wrappedRequestHeaders => client.request('', variables, Object.assign(Object.assign({}, requestHeaders), wrappedRequestHeaders)), 'checkoutSessionUpdateAttributes', 'mutation');
2888
+ },
2886
2889
  checkoutSessionUpdateMetadata(variables, requestHeaders) {
2887
2890
  return withWrapper(wrappedRequestHeaders => client.request('', variables, Object.assign(Object.assign({}, requestHeaders), wrappedRequestHeaders)), 'checkoutSessionUpdateMetadata', 'mutation');
2888
2891
  },
@@ -2910,6 +2913,9 @@ export function getSdk(client, withWrapper = defaultWrapper) {
2910
2913
  getCheckoutSession(variables, requestHeaders) {
2911
2914
  return withWrapper(wrappedRequestHeaders => client.request('', variables, Object.assign(Object.assign({}, requestHeaders), wrappedRequestHeaders)), 'getCheckoutSession', 'query');
2912
2915
  },
2916
+ getCheckoutSessionAttributes(variables, requestHeaders) {
2917
+ return withWrapper(wrappedRequestHeaders => client.request('', variables, Object.assign(Object.assign({}, requestHeaders), wrappedRequestHeaders)), 'getCheckoutSessionAttributes', 'query');
2918
+ },
2913
2919
  getInclusivePriceSettingByCountry(variables, requestHeaders) {
2914
2920
  return withWrapper(wrappedRequestHeaders => client.request('', variables, Object.assign(Object.assign({}, requestHeaders), wrappedRequestHeaders)), 'getInclusivePriceSettingByCountry', 'query');
2915
2921
  },
@@ -2928,6 +2934,9 @@ export function getSdk(client, withWrapper = defaultWrapper) {
2928
2934
  helloSettings(variables, requestHeaders) {
2929
2935
  return withWrapper(wrappedRequestHeaders => client.request('', variables, Object.assign(Object.assign({}, requestHeaders), wrappedRequestHeaders)), 'helloSettings', 'query');
2930
2936
  },
2937
+ landedCostSettings(variables, requestHeaders) {
2938
+ return withWrapper(wrappedRequestHeaders => client.request('', variables, Object.assign(Object.assign({}, requestHeaders), wrappedRequestHeaders)), 'landedCostSettings', 'query');
2939
+ },
2931
2940
  onlineStoreSettings(variables, requestHeaders) {
2932
2941
  return withWrapper(wrappedRequestHeaders => client.request('', variables, Object.assign(Object.assign({}, requestHeaders), wrappedRequestHeaders)), 'onlineStoreSettings', 'query');
2933
2942
  },
@@ -2943,6 +2952,9 @@ export function getSdk(client, withWrapper = defaultWrapper) {
2943
2952
  organizations(variables, requestHeaders) {
2944
2953
  return withWrapper(wrappedRequestHeaders => client.request('', variables, Object.assign(Object.assign({}, requestHeaders), wrappedRequestHeaders)), 'organizations', 'query');
2945
2954
  },
2955
+ partyCreate(variables, requestHeaders) {
2956
+ return withWrapper(wrappedRequestHeaders => client.request('', variables, Object.assign(Object.assign({}, requestHeaders), wrappedRequestHeaders)), 'partyCreate', 'mutation');
2957
+ },
2946
2958
  partyInfo(variables, requestHeaders) {
2947
2959
  return withWrapper(wrappedRequestHeaders => client.request('', variables, Object.assign(Object.assign({}, requestHeaders), wrappedRequestHeaders)), 'partyInfo', 'query');
2948
2960
  },
@@ -2958,6 +2970,9 @@ export function getSdk(client, withWrapper = defaultWrapper) {
2958
2970
  removeTrackingNumber(variables, requestHeaders) {
2959
2971
  return withWrapper(wrappedRequestHeaders => client.request('', variables, Object.assign(Object.assign({}, requestHeaders), wrappedRequestHeaders)), 'removeTrackingNumber', 'mutation');
2960
2972
  },
2973
+ renewCartExpirationToken(variables, requestHeaders) {
2974
+ return withWrapper(wrappedRequestHeaders => client.request('', variables, Object.assign(Object.assign({}, requestHeaders), wrappedRequestHeaders)), 'renewCartExpirationToken', 'mutation');
2975
+ },
2961
2976
  selectCheckoutVarianceTest(variables, requestHeaders) {
2962
2977
  return withWrapper(wrappedRequestHeaders => client.request('', variables, Object.assign(Object.assign({}, requestHeaders), wrappedRequestHeaders)), 'selectCheckoutVarianceTest', 'mutation');
2963
2978
  },
@@ -3,6 +3,7 @@ import "./global.d";
3
3
  export * from '../components.d';
4
4
  export * from './checkout/api/CalculateLandedCost';
5
5
  export * from './checkout/api/CheckoutSession';
6
+ export * from './checkout/api/CreateParty';
6
7
  export * from './checkout/api/legacy/InventoryCheck';
7
8
  export * from './checkout/api/NormalizedTempCart';
8
9
  export * from './checkout/api/Paypal';
@@ -1,3 +1,21 @@
1
+ const getAbandonedCartRenewTokenValue = () => {
2
+ const validityToken = new URLSearchParams(window.location.search).get('validityToken');
3
+ // check if validityToken length is base64 encoded
4
+ if (!validityToken ||
5
+ !/^[A-Za-z0-9+/]+={0,2}$/.test(validityToken) ||
6
+ validityToken.length % 4 !== 0) {
7
+ return null;
8
+ }
9
+ try {
10
+ // check if it can be decoded
11
+ atob(validityToken);
12
+ return validityToken;
13
+ }
14
+ catch (_a) {
15
+ return null;
16
+ }
17
+ };
18
+
1
19
  const baseRe = /[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/;
2
20
  const uuidRe = new RegExp(`^${baseRe.source}$`);
3
21
  const cartUuidRe = new RegExp(`^cart_${baseRe.source}$`);
@@ -29,4 +47,4 @@ const checkoutHiddenBtnSelector = 'zonos--checkout-hidden-button';
29
47
  const checkoutHiddenInternationalBtnSelector = 'zonos--checkout-hidden-international-button';
30
48
  const domesticRedirectedBtnSelector = 'zonos--domestic-redirected-checkout-button';
31
49
 
32
- export { _getIsValidCartId as _, checkoutHiddenInternationalBtnSelector as a, checkoutHiddenBtnSelector as c, domesticRedirectedBtnSelector as d };
50
+ export { _getIsValidCartId as _, checkoutHiddenInternationalBtnSelector as a, checkoutHiddenBtnSelector as c, domesticRedirectedBtnSelector as d, getAbandonedCartRenewTokenValue as g };