@zonos/elements 1.3.142 → 1.3.144

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 (348) hide show
  1. package/dist/cjs/{CheckoutConfig-eaaf62a1.js → CheckoutConfig-d25d548d.js} +13 -3
  2. package/dist/cjs/TaxId-4632639d.js +29 -0
  3. package/dist/cjs/{cart-199b0751.js → cart-2398abd4.js} +547 -42
  4. package/dist/cjs/{createCustomEvent-3e982e57.js → createCustomEvent-7b6fad95.js} +0 -3
  5. package/dist/cjs/{getBorderRadius-f97c99ad.js → getBorderRadius-7d0772bf.js} +1 -1
  6. package/dist/cjs/{handleFetch-864d3c53.js → handleFetch-3673a0c2.js} +30 -1
  7. package/dist/cjs/{index-b678ce0c.js → index-2f90486e.js} +209 -157
  8. package/dist/cjs/index.cjs.js +15 -11
  9. package/dist/cjs/{isDarkColor-434d71dd.js → isDarkColor-2acf30d1.js} +1 -1
  10. package/dist/cjs/loader.cjs.js +2 -2
  11. package/dist/cjs/{paypal-4f1ee604.js → paypal-7ed9dfb7.js} +4 -4
  12. package/dist/cjs/{zonos-address_7.cjs.entry.js → zonos-address_8.cjs.entry.js} +143 -10
  13. package/dist/cjs/zonos-badge.cjs.entry.js +2 -2
  14. package/dist/cjs/zonos-banner.cjs.entry.js +2 -2
  15. package/dist/cjs/zonos-button_3.cjs.entry.js +4 -4
  16. package/dist/cjs/zonos-card.cjs.entry.js +3 -3
  17. package/dist/cjs/zonos-cart-items_13.cjs.entry.js +151 -32
  18. package/dist/cjs/zonos-checkout.cjs.entry.js +36 -16
  19. package/dist/cjs/zonos-collapse.cjs.entry.js +2 -2
  20. package/dist/cjs/zonos-component.cjs.entry.js +2 -2
  21. package/dist/cjs/zonos-controller.cjs.entry.js +8 -8
  22. package/dist/cjs/zonos-country-flag.cjs.entry.js +6 -6
  23. package/dist/cjs/zonos-country-select_4.cjs.entry.js +10 -10
  24. package/dist/cjs/zonos-elements.cjs.js +3 -3
  25. package/dist/cjs/{zonos-notification_3.cjs.entry.js → zonos-empty-state-payment_4.cjs.entry.js} +87 -9
  26. package/dist/cjs/zonos-hello-dialog.cjs.entry.js +10 -10
  27. package/dist/cjs/zonos-hello.cjs.entry.js +6 -6
  28. package/dist/cjs/zonos-input.cjs.entry.js +3 -3
  29. package/dist/cjs/zonos-language-select_2.cjs.entry.js +6 -6
  30. package/dist/cjs/zonos-link.cjs.entry.js +1 -1
  31. package/dist/cjs/zonos-logo.cjs.entry.js +2 -2
  32. package/dist/cjs/zonos-shipping-rich-radio.cjs.entry.js +3 -3
  33. package/dist/cjs/zonos-text.cjs.entry.js +2 -2
  34. package/dist/cjs/zonos-toggle.cjs.entry.js +4 -4
  35. package/dist/cjs/zonos-tooltip.cjs.entry.js +3 -3
  36. package/dist/cjs/zonos-v-stack.cjs.entry.js +4 -4
  37. package/dist/cjs/{zonosStore-8971eb65.js → zonosStore-46809186.js} +1 -1
  38. package/dist/collection/collection-manifest.json +3 -1
  39. package/dist/collection/components/checkout/zonos-checkout/zonos-address-update-dialog/zonos-address-display/zonos-address-display.js +5 -1
  40. package/dist/collection/components/checkout/zonos-checkout/zonos-address-update-dialog/zonos-address-form/zonos-address-form.js +8 -2
  41. package/dist/collection/components/checkout/zonos-checkout/zonos-address-update-dialog/zonos-address-update-dialog.js +24 -4
  42. package/dist/collection/components/checkout/zonos-checkout/zonos-cart-restricted-items/zonos-cart-restricted-items.js +2 -0
  43. package/dist/collection/components/checkout/zonos-checkout/zonos-cart-subtotal/zonos-cart-subtotal.js +4 -0
  44. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-finish/zonos-checkout-finish.js +34 -6
  45. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-footer/zonos-checkout-footer.js +4 -0
  46. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-payment/zonos-checkout-payment.js +109 -18
  47. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-payment/zonos-empty-state-payment/assets/PaymentEmptyStateDarkIcon.svg +22 -0
  48. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-payment/zonos-empty-state-payment/assets/PaymentEmptyStateLightIcon.svg +22 -0
  49. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-payment/zonos-empty-state-payment/zonos-empty-state-payment.css +51 -0
  50. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout-payment/zonos-empty-state-payment/zonos-empty-state-payment.js +90 -0
  51. package/dist/collection/components/checkout/zonos-checkout/zonos-checkout.js +62 -7
  52. package/dist/collection/components/checkout/zonos-checkout/zonos-customer-info/zonos-customer-info.css +3 -0
  53. package/dist/collection/components/checkout/zonos-checkout/zonos-customer-info/zonos-customer-info.js +32 -1
  54. package/dist/collection/components/checkout/zonos-checkout/zonos-review/zonos-review.js +4 -0
  55. package/dist/collection/components/checkout/zonos-checkout/zonos-shipping/zonos-shipping.js +6 -0
  56. package/dist/collection/components/common/zonos-badge/zonos-badge.js +18 -2
  57. package/dist/collection/components/common/zonos-banner/zonos-banner.js +4 -0
  58. package/dist/collection/components/common/zonos-button/zonos-button.js +30 -0
  59. package/dist/collection/components/common/zonos-card/zonos-card.js +20 -4
  60. package/dist/collection/components/common/zonos-checkbox/zonos-checkbox.js +14 -0
  61. package/dist/collection/components/common/zonos-checkout-progress-tabs/zonos-checkout-progress-tabs.js +4 -0
  62. package/dist/collection/components/common/zonos-collapse/zonos-collapse.js +4 -0
  63. package/dist/collection/components/common/zonos-confirm-dialog/zonos-confirm-dialog.js +22 -0
  64. package/dist/collection/components/common/zonos-country-flag/zonos-country-flag.js +4 -0
  65. package/dist/collection/components/common/zonos-country-select/zonos-country-select.js +2 -0
  66. package/dist/collection/components/common/zonos-custom-message/zonos-custom-message.js +4 -0
  67. package/dist/collection/components/common/zonos-dialog/zonos-dialog.js +26 -0
  68. package/dist/collection/components/common/zonos-icon/zonos-icon.js +8 -0
  69. package/dist/collection/components/common/zonos-input/zonos-input.js +12 -0
  70. package/dist/collection/components/common/zonos-language-select/zonos-language-select.js +2 -0
  71. package/dist/collection/components/common/zonos-link/zonos-link.js +8 -0
  72. package/dist/collection/components/common/zonos-logo/zonos-logo.js +4 -0
  73. package/dist/collection/components/common/zonos-rest-state/zonos-rest-state.js +6 -0
  74. package/dist/collection/components/common/zonos-select-dialog-header/zonos-select-dialog-header.js +4 -0
  75. package/dist/collection/components/common/zonos-shipping-rich-radio/zonos-shipping-rich-radio.js +11 -1
  76. package/dist/collection/components/common/zonos-spinner/zonos-spinner.js +4 -0
  77. package/dist/collection/components/common/zonos-stripe-input/zonos-stripe-input.css +162 -0
  78. package/dist/collection/components/common/zonos-stripe-input/zonos-stripe-input.js +264 -0
  79. package/dist/collection/components/common/zonos-text/zonos-text.js +8 -0
  80. package/dist/collection/components/common/zonos-toggle/zonos-toggle.js +6 -2
  81. package/dist/collection/components/common/zonos-tooltip/zonos-tooltip.js +6 -2
  82. package/dist/collection/components/common/zonos-v-stack/zonos-v-stack.js +4 -2
  83. package/dist/collection/components/common/zonos-virtual-scroll/zonos-virtual-scroll.js +12 -4
  84. package/dist/collection/components/component-template/zonos-component/zonos-component.js +7 -1
  85. package/dist/collection/components/hello/zonos-hello/zonos-hello.js +7 -1
  86. package/dist/collection/components/hello/zonos-hello-dialog/zonos-hello-dialog-footer/zonos-hello-dialog-footer.js +9 -3
  87. package/dist/collection/components/hello/zonos-hello-dialog/zonos-hello-dialog.js +17 -5
  88. package/dist/collection/components/main/zonos-controller.js +7 -3
  89. package/dist/collection/components/paypal/zonos-paypal-payment.js +1 -1
  90. package/dist/collection/components/store/checkout/cart.js +3 -0
  91. package/dist/collection/components/store/checkout/stripe.js +121 -40
  92. package/dist/collection/components/store/translationStore/strings.arabic.js +21 -0
  93. package/dist/collection/components/store/translationStore/strings.base.js +21 -0
  94. package/dist/collection/components/store/translationStore/strings.chinese.js +21 -0
  95. package/dist/collection/components/store/translationStore/strings.danish.js +21 -0
  96. package/dist/collection/components/store/translationStore/strings.dutch.js +21 -0
  97. package/dist/collection/components/store/translationStore/strings.french.js +21 -0
  98. package/dist/collection/components/store/translationStore/strings.german.js +21 -0
  99. package/dist/collection/components/store/translationStore/strings.hebrew.js +21 -0
  100. package/dist/collection/components/store/translationStore/strings.indonesian.js +21 -0
  101. package/dist/collection/components/store/translationStore/strings.italian.js +21 -0
  102. package/dist/collection/components/store/translationStore/strings.japanese.js +21 -0
  103. package/dist/collection/components/store/translationStore/strings.korean.js +21 -0
  104. package/dist/collection/components/store/translationStore/strings.norwegian.js +21 -0
  105. package/dist/collection/components/store/translationStore/strings.polish.js +21 -0
  106. package/dist/collection/components/store/translationStore/strings.portuguese.js +21 -0
  107. package/dist/collection/components/store/translationStore/strings.russian.js +21 -0
  108. package/dist/collection/components/store/translationStore/strings.spanish.js +21 -0
  109. package/dist/collection/components/store/translationStore/strings.swedish.js +21 -0
  110. package/dist/collection/components/store/translationStore/strings.turkish.js +21 -0
  111. package/dist/collection/components/store/translationStore/strings.vietnamese.js +21 -0
  112. package/dist/collection/components/stripe/zonos-address/zonos-address.js +7 -1
  113. package/dist/collection/components/stripe/zonos-link-authentication/zonos-link-authentication.js +84 -3
  114. package/dist/collection/components/stripe/zonos-payment/zonos-payment.js +3 -1
  115. package/dist/collection/components/utils/api/getCheckoutSession.js +1 -1
  116. package/dist/collection/components/utils/api/placeTestOrder.js +40 -0
  117. package/dist/collection/components/utils/api/prepCalculateLandedCost.js +2 -0
  118. package/dist/collection/components/utils/checkout/getIsStagingMode.js +1 -0
  119. package/dist/collection/components/utils/checkout/getIsTestMode.js +5 -1
  120. package/dist/collection/components/utils/handleFetch.js +22 -1
  121. package/dist/collection/components/utils/validateEmailValue.js +4 -0
  122. package/dist/collection/scripts/_getTempCartById.js +2 -2
  123. package/dist/collection/scripts/_getWithTestPublicCredential.js +5 -2
  124. package/dist/collection/scripts/cart/_getIsValidCartId.js +11 -0
  125. package/dist/collection/types/checkout/TaxId.js +24 -0
  126. package/dist/collection/types/checkout/api/PlaceTestOrder.js +1 -0
  127. package/dist/collection/types/generated/graphql.internal.types.js +64 -0
  128. package/dist/collection/types/index.js +2 -0
  129. package/dist/esm/{CheckoutConfig-262008fe.js → CheckoutConfig-573bd959.js} +13 -3
  130. package/dist/esm/TaxId-915ef042.js +26 -0
  131. package/dist/esm/{cart-cf87ec6f.js → cart-3427ee25.js} +547 -42
  132. package/dist/esm/{createCustomEvent-31a792d3.js → createCustomEvent-58159025.js} +1 -3
  133. package/dist/esm/{getBorderRadius-4aca63d4.js → getBorderRadius-b32d4218.js} +1 -1
  134. package/dist/esm/{handleFetch-badf4543.js → handleFetch-b4633675.js} +29 -2
  135. package/dist/esm/{index-986b5ff2.js → index-d82f06f2.js} +209 -157
  136. package/dist/esm/index.js +14 -12
  137. package/dist/esm/{isDarkColor-4915739f.js → isDarkColor-10f38df6.js} +1 -1
  138. package/dist/esm/loader.js +3 -3
  139. package/dist/esm/{paypal-b7124cc4.js → paypal-4e2f9753.js} +4 -4
  140. package/dist/esm/{zonos-address_7.entry.js → zonos-address_8.entry.js} +143 -11
  141. package/dist/esm/zonos-badge.entry.js +2 -2
  142. package/dist/esm/zonos-banner.entry.js +2 -2
  143. package/dist/esm/zonos-button_3.entry.js +4 -4
  144. package/dist/esm/zonos-card.entry.js +3 -3
  145. package/dist/esm/zonos-cart-items_13.entry.js +149 -30
  146. package/dist/esm/zonos-checkout.entry.js +34 -14
  147. package/dist/esm/zonos-collapse.entry.js +2 -2
  148. package/dist/esm/zonos-component.entry.js +2 -2
  149. package/dist/esm/zonos-controller.entry.js +8 -8
  150. package/dist/esm/zonos-country-flag.entry.js +6 -6
  151. package/dist/esm/zonos-country-select_4.entry.js +10 -10
  152. package/dist/esm/zonos-elements.js +4 -4
  153. package/dist/esm/{zonos-notification_3.entry.js → zonos-empty-state-payment_4.entry.js} +87 -10
  154. package/dist/esm/zonos-hello-dialog.entry.js +10 -10
  155. package/dist/esm/zonos-hello.entry.js +6 -6
  156. package/dist/esm/zonos-input.entry.js +3 -3
  157. package/dist/esm/zonos-language-select_2.entry.js +6 -6
  158. package/dist/esm/zonos-link.entry.js +1 -1
  159. package/dist/esm/zonos-logo.entry.js +2 -2
  160. package/dist/esm/zonos-shipping-rich-radio.entry.js +3 -3
  161. package/dist/esm/zonos-text.entry.js +2 -2
  162. package/dist/esm/zonos-toggle.entry.js +4 -4
  163. package/dist/esm/zonos-tooltip.entry.js +3 -3
  164. package/dist/esm/zonos-v-stack.entry.js +4 -4
  165. package/dist/esm/{zonosStore-708637e7.js → zonosStore-44efd080.js} +1 -1
  166. package/dist/esm-es5/CheckoutConfig-573bd959.js +1 -0
  167. package/dist/esm-es5/TaxId-915ef042.js +1 -0
  168. package/dist/esm-es5/cart-3427ee25.js +1 -0
  169. package/dist/esm-es5/createCustomEvent-58159025.js +1 -0
  170. package/dist/esm-es5/{getBorderRadius-4aca63d4.js → getBorderRadius-b32d4218.js} +1 -1
  171. package/dist/esm-es5/handleFetch-b4633675.js +1 -0
  172. package/dist/esm-es5/index-d82f06f2.js +2 -0
  173. package/dist/esm-es5/index.js +1 -1
  174. package/dist/esm-es5/{isDarkColor-4915739f.js → isDarkColor-10f38df6.js} +1 -1
  175. package/dist/esm-es5/loader.js +1 -1
  176. package/dist/esm-es5/{paypal-b7124cc4.js → paypal-4e2f9753.js} +1 -1
  177. package/dist/esm-es5/zonos-address_8.entry.js +1 -0
  178. package/dist/esm-es5/zonos-badge.entry.js +1 -1
  179. package/dist/esm-es5/zonos-banner.entry.js +1 -1
  180. package/dist/esm-es5/zonos-button_3.entry.js +1 -1
  181. package/dist/esm-es5/zonos-card.entry.js +1 -1
  182. package/dist/esm-es5/zonos-cart-items_13.entry.js +1 -1
  183. package/dist/esm-es5/zonos-checkout.entry.js +1 -1
  184. package/dist/esm-es5/zonos-collapse.entry.js +1 -1
  185. package/dist/esm-es5/zonos-component.entry.js +1 -1
  186. package/dist/esm-es5/zonos-controller.entry.js +1 -1
  187. package/dist/esm-es5/zonos-country-flag.entry.js +1 -1
  188. package/dist/esm-es5/zonos-country-select_4.entry.js +1 -1
  189. package/dist/esm-es5/zonos-elements.js +1 -1
  190. package/dist/esm-es5/zonos-empty-state-payment_4.entry.js +1 -0
  191. package/dist/esm-es5/zonos-hello-dialog.entry.js +1 -1
  192. package/dist/esm-es5/zonos-hello.entry.js +1 -1
  193. package/dist/esm-es5/zonos-input.entry.js +1 -1
  194. package/dist/esm-es5/zonos-language-select_2.entry.js +1 -1
  195. package/dist/esm-es5/zonos-link.entry.js +1 -1
  196. package/dist/esm-es5/zonos-logo.entry.js +1 -1
  197. package/dist/esm-es5/zonos-shipping-rich-radio.entry.js +1 -1
  198. package/dist/esm-es5/zonos-text.entry.js +1 -1
  199. package/dist/esm-es5/zonos-toggle.entry.js +1 -1
  200. package/dist/esm-es5/zonos-tooltip.entry.js +1 -1
  201. package/dist/esm-es5/zonos-v-stack.entry.js +1 -1
  202. package/dist/esm-es5/{zonosStore-708637e7.js → zonosStore-44efd080.js} +1 -1
  203. package/dist/scripts/index.d.ts +170 -0
  204. package/dist/scripts/index.js +1 -1
  205. package/dist/scripts/loadZonos.js +1 -1
  206. package/dist/scripts/zonos.js +1 -1
  207. package/dist/types/components/checkout/zonos-checkout/zonos-checkout-finish/zonos-checkout-finish.d.ts +1 -0
  208. package/dist/types/components/checkout/zonos-checkout/zonos-checkout-payment/zonos-checkout-payment.d.ts +18 -0
  209. package/dist/types/components/checkout/zonos-checkout/zonos-checkout-payment/zonos-empty-state-payment/zonos-empty-state-payment.d.ts +13 -0
  210. package/dist/types/components/checkout/zonos-checkout/zonos-checkout.d.ts +10 -0
  211. package/dist/types/components/checkout/zonos-checkout/zonos-customer-info/zonos-customer-info.d.ts +5 -0
  212. package/dist/types/components/common/zonos-stripe-input/zonos-stripe-input.d.ts +46 -0
  213. package/dist/types/components/store/checkout/cart.d.ts +5 -0
  214. package/dist/types/components/store/checkout/stripe.d.ts +16 -2
  215. package/dist/types/components/store/translationStore/strings.arabic.d.ts +21 -0
  216. package/dist/types/components/store/translationStore/strings.base.d.ts +21 -0
  217. package/dist/types/components/store/translationStore/strings.chinese.d.ts +21 -0
  218. package/dist/types/components/store/translationStore/strings.danish.d.ts +21 -0
  219. package/dist/types/components/store/translationStore/strings.dutch.d.ts +21 -0
  220. package/dist/types/components/store/translationStore/strings.french.d.ts +21 -0
  221. package/dist/types/components/store/translationStore/strings.german.d.ts +21 -0
  222. package/dist/types/components/store/translationStore/strings.hebrew.d.ts +21 -0
  223. package/dist/types/components/store/translationStore/strings.indonesian.d.ts +21 -0
  224. package/dist/types/components/store/translationStore/strings.italian.d.ts +21 -0
  225. package/dist/types/components/store/translationStore/strings.japanese.d.ts +21 -0
  226. package/dist/types/components/store/translationStore/strings.korean.d.ts +21 -0
  227. package/dist/types/components/store/translationStore/strings.norwegian.d.ts +21 -0
  228. package/dist/types/components/store/translationStore/strings.polish.d.ts +21 -0
  229. package/dist/types/components/store/translationStore/strings.portuguese.d.ts +21 -0
  230. package/dist/types/components/store/translationStore/strings.russian.d.ts +21 -0
  231. package/dist/types/components/store/translationStore/strings.spanish.d.ts +21 -0
  232. package/dist/types/components/store/translationStore/strings.swedish.d.ts +21 -0
  233. package/dist/types/components/store/translationStore/strings.turkish.d.ts +21 -0
  234. package/dist/types/components/store/translationStore/strings.vietnamese.d.ts +21 -0
  235. package/dist/types/components/stripe/zonos-link-authentication/zonos-link-authentication.d.ts +6 -0
  236. package/dist/types/components/utils/api/placeTestOrder.d.ts +7 -0
  237. package/dist/types/components/utils/checkout/getIsStagingMode.d.ts +1 -0
  238. package/dist/types/components/utils/checkout/getIsTestMode.d.ts +1 -1
  239. package/dist/types/components/utils/validateEmailValue.d.ts +1 -0
  240. package/dist/types/components.d.ts +161 -0
  241. package/dist/types/types/checkout/TaxId.d.ts +20 -0
  242. package/dist/types/types/checkout/api/CalculateLandedCost.d.ts +8 -0
  243. package/dist/types/types/checkout/api/CheckoutSession.d.ts +8 -2
  244. package/dist/types/types/checkout/api/PlaceTestOrder.d.ts +7 -0
  245. package/dist/types/types/generated/graphql.internal.types.d.ts +144 -109
  246. package/dist/types/types/generated/graphql.internal.types.ts +180 -99
  247. package/dist/types/types/index.d.ts +2 -0
  248. package/dist/zonos-elements/index.esm.js +1 -1
  249. package/dist/zonos-elements/{p-68d79b58.entry.js → p-00136c20.entry.js} +1 -1
  250. package/dist/zonos-elements/{p-d381288e.entry.js → p-0028d158.entry.js} +1 -1
  251. package/dist/zonos-elements/{p-72256333.entry.js → p-05013308.entry.js} +1 -1
  252. package/dist/zonos-elements/{p-c1b098de.system.js → p-0e6a3cd2.system.js} +1 -1
  253. package/dist/zonos-elements/{p-c0164a3c.system.js → p-12546668.system.js} +1 -1
  254. package/dist/zonos-elements/p-12a6b7bd.system.js +1 -0
  255. package/dist/zonos-elements/p-1423ebbe.js +1 -0
  256. package/dist/zonos-elements/p-18e5b741.system.js +1 -0
  257. package/dist/zonos-elements/p-2deae669.entry.js +1 -0
  258. package/dist/zonos-elements/{p-36dfc7ac.system.js → p-32912caf.system.js} +1 -1
  259. package/dist/zonos-elements/{p-fc4658a6.entry.js → p-36f97fd9.entry.js} +1 -1
  260. package/dist/zonos-elements/{p-983f23a1.system.entry.js → p-3a213429.system.entry.js} +1 -1
  261. package/dist/zonos-elements/{p-e6554a6f.system.entry.js → p-3aa4841a.system.entry.js} +1 -1
  262. package/dist/zonos-elements/{p-a13d5957.system.entry.js → p-3d221556.system.entry.js} +1 -1
  263. package/dist/zonos-elements/{p-381874b0.system.entry.js → p-41e26cc4.system.entry.js} +1 -1
  264. package/dist/zonos-elements/{p-2d514c1d.system.entry.js → p-463e44b6.system.entry.js} +1 -1
  265. package/dist/zonos-elements/p-46f6e5e9.system.js +1 -0
  266. package/dist/zonos-elements/{p-6271e108.js → p-485d89a4.js} +1 -1
  267. package/dist/zonos-elements/p-48bca3d4.system.entry.js +1 -0
  268. package/dist/zonos-elements/p-4caffd96.system.js +2 -0
  269. package/dist/zonos-elements/{p-0920500d.entry.js → p-50896f89.entry.js} +1 -1
  270. package/dist/zonos-elements/{p-2e152517.system.entry.js → p-515e3606.system.entry.js} +1 -1
  271. package/dist/zonos-elements/p-5834c218.system.js +1 -0
  272. package/dist/zonos-elements/p-595f5dd2.js +1 -0
  273. package/dist/zonos-elements/p-5bd927f2.js +1 -0
  274. package/dist/zonos-elements/{p-2761ad55.system.entry.js → p-619c07c6.system.entry.js} +1 -1
  275. package/dist/zonos-elements/{p-2b8cddb7.entry.js → p-69f84611.entry.js} +1 -1
  276. package/dist/zonos-elements/{p-766dd01f.js → p-6c578d26.js} +1 -1
  277. package/dist/zonos-elements/{p-28295342.entry.js → p-709c7e9e.entry.js} +1 -1
  278. package/dist/zonos-elements/{p-0197a9bf.system.entry.js → p-7140439f.system.entry.js} +1 -1
  279. package/dist/zonos-elements/p-7302a081.system.entry.js +1 -0
  280. package/dist/zonos-elements/p-7e47f6cf.entry.js +1 -0
  281. package/dist/zonos-elements/{p-44dd4269.entry.js → p-7f288336.entry.js} +1 -1
  282. package/dist/zonos-elements/{p-0e54432c.system.entry.js → p-81084be5.system.entry.js} +1 -1
  283. package/dist/zonos-elements/p-81a5dd5c.js +1 -0
  284. package/dist/zonos-elements/p-84e5fc0b.entry.js +1 -0
  285. package/dist/zonos-elements/{p-33e1d25e.system.entry.js → p-86e825f0.system.entry.js} +1 -1
  286. package/dist/zonos-elements/{p-0b5f4ca7.system.entry.js → p-91fc6c24.system.entry.js} +1 -1
  287. package/dist/zonos-elements/p-9951462e.entry.js +1 -0
  288. package/dist/zonos-elements/{p-a2bce31d.system.entry.js → p-9cf018c8.system.entry.js} +1 -1
  289. package/dist/zonos-elements/{p-232963d3.system.entry.js → p-9e05e259.system.entry.js} +1 -1
  290. package/dist/zonos-elements/{p-6b490b0a.system.entry.js → p-a8cf3542.system.entry.js} +1 -1
  291. package/dist/zonos-elements/p-ab68ad11.js +2 -0
  292. package/dist/zonos-elements/{p-4b685549.js → p-b0616716.js} +1 -1
  293. package/dist/zonos-elements/{p-1e3ea4ae.entry.js → p-b12fbc07.entry.js} +1 -1
  294. package/dist/zonos-elements/{p-d198421b.system.entry.js → p-b2292b70.system.entry.js} +1 -1
  295. package/dist/zonos-elements/{p-58a09715.entry.js → p-b262b93e.entry.js} +1 -1
  296. package/dist/zonos-elements/{p-545c05ce.entry.js → p-b288c2ed.entry.js} +1 -1
  297. package/dist/zonos-elements/p-b3882a73.system.js +1 -0
  298. package/dist/zonos-elements/{p-9306a835.entry.js → p-b5c360af.entry.js} +1 -1
  299. package/dist/zonos-elements/{p-2cfc00b8.system.entry.js → p-b6bbdb59.system.entry.js} +1 -1
  300. package/dist/zonos-elements/{p-f295030e.system.entry.js → p-bb92882d.system.entry.js} +1 -1
  301. package/dist/zonos-elements/p-bf37ccc7.system.js +1 -0
  302. package/dist/zonos-elements/{p-21b538ea.system.js → p-c015be06.system.js} +1 -1
  303. package/dist/zonos-elements/p-c8b0bc02.system.entry.js +1 -0
  304. package/dist/zonos-elements/{p-39cac2c1.entry.js → p-cbd5d932.entry.js} +1 -1
  305. package/dist/zonos-elements/{p-7c5c0a85.entry.js → p-cdfca133.entry.js} +1 -1
  306. package/dist/zonos-elements/{p-675f60b4.entry.js → p-d2f2c685.entry.js} +1 -1
  307. package/dist/zonos-elements/{p-2c19f5e2.entry.js → p-d6061c79.entry.js} +1 -1
  308. package/dist/zonos-elements/p-da6a29e4.system.entry.js +1 -0
  309. package/dist/zonos-elements/{p-65069140.entry.js → p-db3f381d.entry.js} +1 -1
  310. package/dist/zonos-elements/{p-9dec2b74.entry.js → p-de221545.entry.js} +1 -1
  311. package/dist/zonos-elements/{p-2949faf3.entry.js → p-e01ccb27.entry.js} +1 -1
  312. package/dist/zonos-elements/{p-b0174a8f.js → p-e02fd9ae.js} +1 -1
  313. package/dist/zonos-elements/{p-3cf30d83.entry.js → p-e2f1fa53.entry.js} +1 -1
  314. package/dist/zonos-elements/{p-ebdd9b64.system.entry.js → p-e8c70c7d.system.entry.js} +1 -1
  315. package/dist/zonos-elements/{p-a8bd492d.system.entry.js → p-ea35b237.system.entry.js} +1 -1
  316. package/dist/zonos-elements/p-f0c8150e.js +1 -0
  317. package/dist/zonos-elements/p-f3b0a097.system.js +1 -0
  318. package/dist/zonos-elements/{p-d5a3851d.system.entry.js → p-fc4ebe6b.system.entry.js} +1 -1
  319. package/dist/zonos-elements/zonos-elements.esm.js +1 -1
  320. package/dist/zonos-elements/zonos-elements.js +1 -1
  321. package/package.json +9 -8
  322. package/dist/esm-es5/CheckoutConfig-262008fe.js +0 -1
  323. package/dist/esm-es5/cart-cf87ec6f.js +0 -1
  324. package/dist/esm-es5/createCustomEvent-31a792d3.js +0 -1
  325. package/dist/esm-es5/handleFetch-badf4543.js +0 -1
  326. package/dist/esm-es5/index-986b5ff2.js +0 -2
  327. package/dist/esm-es5/zonos-address_7.entry.js +0 -1
  328. package/dist/esm-es5/zonos-notification_3.entry.js +0 -1
  329. package/dist/zonos-elements/p-076388d3.entry.js +0 -1
  330. package/dist/zonos-elements/p-0cda2818.system.js +0 -1
  331. package/dist/zonos-elements/p-0d2cf216.entry.js +0 -1
  332. package/dist/zonos-elements/p-1460f917.js +0 -1
  333. package/dist/zonos-elements/p-272052bd.system.entry.js +0 -1
  334. package/dist/zonos-elements/p-3cb4468f.system.entry.js +0 -1
  335. package/dist/zonos-elements/p-3d82e70e.js +0 -1
  336. package/dist/zonos-elements/p-64372f93.system.js +0 -1
  337. package/dist/zonos-elements/p-673b4402.system.entry.js +0 -1
  338. package/dist/zonos-elements/p-680d3694.js +0 -2
  339. package/dist/zonos-elements/p-7b999a40.js +0 -1
  340. package/dist/zonos-elements/p-7c643376.system.js +0 -1
  341. package/dist/zonos-elements/p-866bb93e.system.js +0 -1
  342. package/dist/zonos-elements/p-8c487480.entry.js +0 -1
  343. package/dist/zonos-elements/p-9b720cf4.entry.js +0 -1
  344. package/dist/zonos-elements/p-a5b294d7.js +0 -1
  345. package/dist/zonos-elements/p-b50667b6.system.js +0 -2
  346. package/dist/zonos-elements/p-bfcfd29b.system.js +0 -1
  347. package/dist/zonos-elements/p-ded984d9.system.entry.js +0 -1
  348. package/dist/zonos-elements/p-e9964a5a.system.js +0 -1
@@ -188,6 +188,8 @@ export class ZonosAddressUpdateDialog {
188
188
  "tags": [],
189
189
  "text": "Whether or not the continue button is loading"
190
190
  },
191
+ "getter": false,
192
+ "setter": false,
191
193
  "attribute": "continue-loading",
192
194
  "reflect": false,
193
195
  "defaultValue": "false"
@@ -206,6 +208,8 @@ export class ZonosAddressUpdateDialog {
206
208
  "tags": [],
207
209
  "text": "Whether or not the dialog is loading"
208
210
  },
211
+ "getter": false,
212
+ "setter": false,
209
213
  "attribute": "dialog-loading",
210
214
  "reflect": false
211
215
  },
@@ -223,6 +227,8 @@ export class ZonosAddressUpdateDialog {
223
227
  "tags": [],
224
228
  "text": "Whether or not the dialog is open"
225
229
  },
230
+ "getter": false,
231
+ "setter": false,
226
232
  "attribute": "dialog-open",
227
233
  "reflect": false,
228
234
  "defaultValue": "false"
@@ -246,6 +252,8 @@ export class ZonosAddressUpdateDialog {
246
252
  "tags": [],
247
253
  "text": "Button type of the submit button"
248
254
  },
255
+ "getter": false,
256
+ "setter": false,
249
257
  "attribute": "submit-btn-type",
250
258
  "reflect": false
251
259
  },
@@ -263,6 +271,8 @@ export class ZonosAddressUpdateDialog {
263
271
  "tags": [],
264
272
  "text": "Button color of the submit button"
265
273
  },
274
+ "getter": false,
275
+ "setter": false,
266
276
  "attribute": "submit-btn-color",
267
277
  "reflect": false
268
278
  },
@@ -280,6 +290,8 @@ export class ZonosAddressUpdateDialog {
280
290
  "tags": [],
281
291
  "text": "Whether or not the dialog is open"
282
292
  },
293
+ "getter": false,
294
+ "setter": false,
283
295
  "attribute": "is-mobile",
284
296
  "reflect": false,
285
297
  "defaultValue": "false"
@@ -303,7 +315,9 @@ export class ZonosAddressUpdateDialog {
303
315
  "docs": {
304
316
  "tags": [],
305
317
  "text": "Shipping address that user has entered"
306
- }
318
+ },
319
+ "getter": false,
320
+ "setter": false
307
321
  },
308
322
  "billingAddress": {
309
323
  "type": "unknown",
@@ -324,7 +338,9 @@ export class ZonosAddressUpdateDialog {
324
338
  "docs": {
325
339
  "tags": [],
326
340
  "text": "Billing address that user has entered (optional if billing is the same as shipping)"
327
- }
341
+ },
342
+ "getter": false,
343
+ "setter": false
328
344
  },
329
345
  "translatedShippingAddress": {
330
346
  "type": "unknown",
@@ -345,7 +361,9 @@ export class ZonosAddressUpdateDialog {
345
361
  "docs": {
346
362
  "tags": [],
347
363
  "text": "Translated address fields that GPT has translated"
348
- }
364
+ },
365
+ "getter": false,
366
+ "setter": false
349
367
  },
350
368
  "translatedBillingAddress": {
351
369
  "type": "unknown",
@@ -366,7 +384,9 @@ export class ZonosAddressUpdateDialog {
366
384
  "docs": {
367
385
  "tags": [],
368
386
  "text": "Translated address fields that GPT has translated"
369
- }
387
+ },
388
+ "getter": false,
389
+ "setter": false
370
390
  }
371
391
  };
372
392
  }
@@ -85,6 +85,8 @@ export class ZonosCartRestrictedItems {
85
85
  "tags": [],
86
86
  "text": "This is to hide the section when the parent collapse on mobile"
87
87
  },
88
+ "getter": false,
89
+ "setter": false,
88
90
  "attribute": "hide",
89
91
  "reflect": false,
90
92
  "defaultValue": "false"
@@ -129,6 +129,8 @@ export class ZonosCartSubtotal {
129
129
  "tags": [],
130
130
  "text": "Button type of the submit button"
131
131
  },
132
+ "getter": false,
133
+ "setter": false,
132
134
  "attribute": "submit-btn-type",
133
135
  "reflect": false
134
136
  },
@@ -146,6 +148,8 @@ export class ZonosCartSubtotal {
146
148
  "tags": [],
147
149
  "text": "Button color of the submit button"
148
150
  },
151
+ "getter": false,
152
+ "setter": false,
149
153
  "attribute": "submit-btn-color",
150
154
  "reflect": false
151
155
  }
@@ -274,6 +274,20 @@ export class ZonosCheckoutFinish {
274
274
  stripeStoreReset();
275
275
  cartStore.checkoutSessionId = null;
276
276
  };
277
+ this.checkStagingOrderStatus = async () => {
278
+ this.notificationType = 'success';
279
+ this.notificationTitle = translate("You're all set!");
280
+ this.notificationMessages =
281
+ stripeStoreMessageBasedOnStatus('succeeded').messages;
282
+ // override title if notification type is success
283
+ this.useOverrideSuccessNotification();
284
+ await this.handleSuccessBehavior();
285
+ // reset promo when checkout is finished
286
+ stripeStoreResetPromoCode();
287
+ stripeStoreReset();
288
+ paypalStoreReset();
289
+ cartStore.checkoutSessionId = null;
290
+ };
277
291
  this.checkPaypalPaymentStatus = async () => {
278
292
  // render error message if there's an error
279
293
  if (paypalStore.paypalErrorMessage) {
@@ -340,7 +354,10 @@ export class ZonosCheckoutFinish {
340
354
  this.isLoading = false;
341
355
  return;
342
356
  }
343
- if (paypalStore.orderIdCreated) {
357
+ if (cartStore.isStagingMode) {
358
+ void this.checkStagingOrderStatus();
359
+ }
360
+ else if (paypalStore.orderIdCreated) {
344
361
  void this.checkPaypalPaymentStatus();
345
362
  }
346
363
  else {
@@ -349,17 +366,22 @@ export class ZonosCheckoutFinish {
349
366
  }
350
367
  render() {
351
368
  const isTestMode = getIsTestMode();
352
- return (h(Host, { key: '7e1b8c53a085ae60d8189aef087a9c458c3dccd0', class: "zonos--checkout-finish zonos--elements", style: {
369
+ return (h(Host, { key: '6ad050e91df2b56c55e142cc69d0b582c0c8469a', class: "zonos--checkout-finish zonos--elements", style: {
353
370
  '--zonos--border-radius': getBorderRadius({
354
371
  overrideBorderStyle: this.borderRadius,
355
372
  }),
356
- } }, !this.isLoading && (h("div", { key: 'b31bed34ca67255cdc6ef6b546f5d6a880e4b309', class: "zonos--finish-details" }, h("div", { key: 'e3cb21607b8f1256b3096fe4f21a806a74174f66', class: "zonos--group" }, this.notificationType === 'success' ? (h("zonos-icon", { "aria-label": "Order success", content: SuccessIcon, iconColor: 'blue-800', size: 50 })) : (h("zonos-icon", { "aria-label": "Order failed", content: RemoveIcon, iconColor: 'red-800', size: 50 })), h("zonos-text", { key: 'fac1d2134f1c032cefeb9d36c5c4677767ed0972', class: "zonos--title", type: "semiBoldSubheader" }, this.notificationTitle), h("zonos-text", { key: '94b8da1ca6a391295c22d285e65530f5dfe97a41', class: "zonos--subtitle", textColor: "gray-600" }, this.notificationMessages.map(message => (h(Fragment, null, message, h("br", null))))), this.shouldRenderCloseButtonForRedirectBehavior() && (h("zonos-button", { key: '4ebf2bb81ceb0d27b4fd582400606b238a3dfbae',
373
+ } }, !this.isLoading && (h("div", { key: '8e47016dc83cbe1af79f384285c606fcb737e475', class: "zonos--finish-details" }, h("div", { key: 'd1c14e8db7aa70d04b77b10bb0d8b1e3de5529e3', class: "zonos--group" }, this.notificationType === 'success' ? (h("zonos-icon", { "aria-label": "Order success", content: SuccessIcon, iconColor: 'blue-800', size: 50 })) : (h("zonos-icon", { "aria-label": "Order failed", content: RemoveIcon, iconColor: 'red-800', size: 50 })), h("zonos-text", { key: 'd26717fe5d844f2fe6a87b05a566ef0da2d740f7', class: "zonos--title", type: "semiBoldSubheader" }, this.notificationTitle), h("zonos-text", { key: '7845c4ff7872884d8e5b8b275eb8a76efa855e52', class: "zonos--subtitle", textColor: "gray-600" }, this.notificationMessages.map(message => (h(Fragment, null, message, h("br", null))))), this.shouldRenderCloseButtonForRedirectBehavior() && (h("zonos-button", { key: '891901ad2c4fb7c2025ad47417425cd239e36cf1',
357
374
  // Only show loading spinner if it's not an error notification
358
375
  loading: this.isWaitingToRedirect &&
359
376
  this.notificationType !== 'error', onClick: () => this.closeClickHandler(), size: "md", variant: "primary" }, translate('Close'))), !window.Zonos.isLegacyCheckout &&
360
- this.shouldRenderKeepShoppingButton() && (h("zonos-button", { key: '6548724f163ad59fc3cb502c24d82ae7585c6b7f', onClick: () => this.closeClickHandler(), size: "md", variant: "primary" }, this.notificationActionText))), isTestMode &&
377
+ this.shouldRenderKeepShoppingButton() && (h("zonos-button", { key: '550bd94f93b842d71c23bd158362b711797dd4a1', onClick: () => this.closeClickHandler(), size: "md", variant: "primary" }, this.notificationActionText))), isTestMode &&
361
378
  cartStore.step === 'finish' &&
362
- this.notificationType === 'success' && (h("div", { key: 'f9aeb5d59dc4b0f163868e5a2358a69a0884bb56', class: "zonos--finish-button-wrapper" }, h("zonos-button", { key: '98ae907d33624e54f84f88519abacd1ea178554c', backgroundColor: "gray-0", buttonColor: "gray-1000", onClick: () => this.closeClickHandler(), size: "lg", variant: "outline" }, "New test cart"), h("zonos-button", { key: '506eeb9eabe16fed59b98b9eef49552542272233', onClick: () => this.redirectToUrl(`/orders/all`), size: "lg", variant: "primary" }, "View order in Dashboard")))))));
379
+ this.notificationType === 'success' && (h("div", { key: '8fdaa205f4517e0a9a6c5482e80d6dbccba6a585', class: "zonos--finish-button-wrapper" }, h("zonos-button", { key: '41b524fc8dea752a6f4745191970ac665e7b9fa8', backgroundColor: "gray-0", buttonColor: "gray-1000", onClick: () => this.closeClickHandler(), size: "lg", variant: "outline" }, "New test cart"), h("zonos-button", { key: '70297a07cc8d3c11545776d600d8a1a2a3c2a744', onClick: () => {
380
+ const isZonosDashboard = window.location.hostname.includes('dashboard.zonos.com');
381
+ this.redirectToUrl(isZonosDashboard
382
+ ? '/orders/all'
383
+ : 'https://dashboard.zonos.com/orders/all');
384
+ }, size: "lg", variant: "primary" }, "View order in Dashboard")))))));
363
385
  }
364
386
  static get is() { return "zonos-checkout-finish"; }
365
387
  static get encapsulation() { return "shadow"; }
@@ -396,6 +418,8 @@ export class ZonosCheckoutFinish {
396
418
  "tags": [],
397
419
  "text": "The border radius style of the dialog"
398
420
  },
421
+ "getter": false,
422
+ "setter": false,
399
423
  "attribute": "border-radius",
400
424
  "reflect": false,
401
425
  "defaultValue": "'ROUNDED'"
@@ -420,6 +444,8 @@ export class ZonosCheckoutFinish {
420
444
  "tags": [],
421
445
  "text": "Force status to test the UI for storybook"
422
446
  },
447
+ "getter": false,
448
+ "setter": false,
423
449
  "attribute": "storybook-force-status",
424
450
  "reflect": false
425
451
  },
@@ -436,7 +462,9 @@ export class ZonosCheckoutFinish {
436
462
  "docs": {
437
463
  "tags": [],
438
464
  "text": "Override the notification message and title, bypass checking stripe payment status"
439
- }
465
+ },
466
+ "getter": false,
467
+ "setter": false
440
468
  }
441
469
  };
442
470
  }
@@ -66,6 +66,8 @@ export class ZonosCheckoutFooter {
66
66
  "tags": [],
67
67
  "text": "Override mobile mode"
68
68
  },
69
+ "getter": false,
70
+ "setter": false,
69
71
  "attribute": "mobile",
70
72
  "reflect": false,
71
73
  "defaultValue": "false"
@@ -90,6 +92,8 @@ export class ZonosCheckoutFooter {
90
92
  "tags": [],
91
93
  "text": "Theme to change the color of the logo"
92
94
  },
95
+ "getter": false,
96
+ "setter": false,
93
97
  "attribute": "data-theme",
94
98
  "reflect": false
95
99
  }
@@ -1,10 +1,14 @@
1
- import { h, Host, } from "@stencil/core";
2
- import { cartStore } from "../../../store/checkout/cart";
1
+ import { Fragment, h, Host, } from "@stencil/core";
2
+ import { cartStore, cartStoreNextStep, } from "../../../store/checkout/cart";
3
3
  import { paypalStore } from "../../../store/checkout/paypal";
4
4
  import { stripeStore } from "../../../store/checkout/stripe";
5
5
  import { translate } from "../../../store/translationStore";
6
+ import { zonosStore } from "../../../store/zonosStore";
7
+ import { placeTestOrder } from "../../../utils/api/placeTestOrder";
8
+ import { getIsStagingMode } from "../../../utils/checkout/getIsStagingMode";
6
9
  import { getIsTestMode } from "../../../utils/checkout/getIsTestMode";
7
10
  import { renderCheckoutCurrency } from "../../../utils/checkout/renderCheckoutCurrency";
11
+ import { isDarkColor } from "../../../utils/isDarkColor";
8
12
  import { submitGtag } from "../../../utils/submitGtag";
9
13
  // eslint-disable-next-line no-relative-import-paths/no-relative-import-paths
10
14
  import CheckmarkLineIcon from "./assets/CheckmarkLineIcon.svg";
@@ -36,11 +40,31 @@ export class ZonosCheckoutPayment {
36
40
  type: 'success',
37
41
  });
38
42
  };
43
+ this.placeTestOrder = async () => {
44
+ this.internalContinueLoading = true;
45
+ const { errors } = await placeTestOrder();
46
+ if (errors.length) {
47
+ this.stagingOrderCreateErrorMessage =
48
+ errors[0] || 'Failed to create staging order. Please try again.';
49
+ this.internalContinueLoading = false;
50
+ return;
51
+ }
52
+ this.internalContinueLoading = false;
53
+ // continue to the next step
54
+ cartStoreNextStep();
55
+ };
39
56
  this.submitBtnType = undefined;
40
57
  this.continueLoading = false;
41
58
  this.submitBtnColor = undefined;
59
+ this.isMobile = false;
60
+ this.overridePrimaryColor = undefined;
42
61
  this.showErrorBanner = false;
43
62
  this.hasStripePaymentError = false;
63
+ this.stagingOrderCreateErrorMessage = '';
64
+ this.internalContinueLoading = this.continueLoading;
65
+ }
66
+ continueLoadingWatcher() {
67
+ this.internalContinueLoading = this.continueLoading;
44
68
  }
45
69
  stripePaymentErrorWatcher() {
46
70
  if (this.hasStripePaymentError) {
@@ -64,22 +88,39 @@ export class ZonosCheckoutPayment {
64
88
  this.showErrorBanner = !this.handleValidate();
65
89
  }
66
90
  const isTestMode = getIsTestMode();
91
+ const isStagingMode = cartStore.isStagingMode || getIsStagingMode();
67
92
  const isPaypalTabSelected = ((_a = stripeStore.stripePaymentEventData) === null || _a === void 0 ? void 0 : _a.value.type) === 'external_paypal';
68
- return (h(Host, { class: "zonos--checkout-payment zonos--elements" }, h("div", { class: "zonos--group" }, h("zonos-text", { class: "zonos--title", type: "semiBoldSubheader" }, translate('Payment method')), this.showErrorBanner && (h("zonos-banner", { class: "zonos--error-banner", intent: "error" }, translate('Missing required fields. Make sure all fields are completed.'))), this.hasStripePaymentError && (h("zonos-banner", { class: "zonos--payment-error-banner", intent: "error" }, stripeStore.customErrorMessage ||
69
- translate("We couldn't complete your payment. Please verify the payment details and try again."))), paypalStore.paypalErrorMessage && (h("zonos-banner", { class: "zonos--payment-error-banner", intent: "error" }, paypalStore.paypalErrorMessage)), h("zonos-payment", null), h("div", { class: "zonos--group-btn" }, !isPaypalTabSelected && (h("zonos-button", { backgroundColor: this.submitBtnColor, loading: this.continueLoading, onClick: () => {
70
- this.continueClickHandler();
71
- }, size: "lg",
72
- // use primary type when on mobile mode
73
- variant: this.submitBtnType }, translate('Pay [orderTotal]', {
74
- orderTotal: renderCheckoutCurrency({
75
- amount: cartStore.total,
76
- isForeign: true,
77
- }),
78
- }))), h("zonos-paypal-payment", { onPaypalSessionDone: ({ detail: { orderId } }) => {
79
- this.paypalSessionDone.emit(orderId);
80
- }, onPaypalSessionFail: () => this.paypalSessionFailed.emit(), style: {
81
- display: isPaypalTabSelected ? 'block' : 'none',
82
- } })), isTestMode && (h("zonos-card", { backgroundColor: "gray-100", borderRadius: 12, class: "zonos--test-cards" }, h("zonos-v-stack", { spacing: 16 }, h("div", null, h("zonos-text", { type: "semiBoldLabel" }, translate('Test cards')), h("zonos-text", { textColor: "gray-700" }, translate('Click to copy the card number. Use any future expiration date and three number CVC.'))), h("zonos-button", { icon: h("zonos-icon", { content: CheckmarkLineIcon }), justifyContent: "flex-start", onClick: () => this.copyCardToClipboard('4242424242424242') }, translate('Success'), " (****4242)"), h("zonos-button", { icon: h("zonos-icon", { content: RemoveLineIcon }), justifyContent: "flex-start", onClick: () => this.copyCardToClipboard('4000000000000002') }, translate('Failure'), " (****0002)")), h("zonos-notification", null))))));
93
+ const renderPayment = () => {
94
+ if (isStagingMode) {
95
+ const { colorPrimary } = zonosStore.appearance;
96
+ const themeBasedColor = colorPrimary && isDarkColor(colorPrimary) ? 'DARK' : 'LIGHT';
97
+ // If in mobile, use the theme from the store since the UI is solely by theme
98
+ const theme = this.isMobile
99
+ ? zonosStore.appearance.theme
100
+ : themeBasedColor;
101
+ return (h(Fragment, null, this.stagingOrderCreateErrorMessage && (h("zonos-banner", { class: "zonos--error-banner", intent: "error" }, this.stagingOrderCreateErrorMessage)), h("zonos-empty-state-payment", { emptyStateText: translate('No payment method needed for staging'), theme: theme }), h("div", { class: "zonos--group-btn" }, h("zonos-button", { backgroundColor: this.submitBtnColor, loading: this.internalContinueLoading, onClick: () => {
102
+ void this.placeTestOrder();
103
+ }, size: "lg",
104
+ // use primary type when on mobile mode
105
+ variant: this.submitBtnType }, translate('Place test order')))));
106
+ }
107
+ return (h(Fragment, null, this.showErrorBanner && (h("zonos-banner", { class: "zonos--error-banner", intent: "error" }, translate('Missing required fields. Make sure all fields are completed.'))), this.hasStripePaymentError && (h("zonos-banner", { class: "zonos--payment-error-banner", intent: "error" }, stripeStore.customErrorMessage ||
108
+ translate("We couldn't complete your payment. Please verify the payment details and try again."))), paypalStore.paypalErrorMessage && (h("zonos-banner", { class: "zonos--payment-error-banner", intent: "error" }, paypalStore.paypalErrorMessage)), h("zonos-payment", null), h("div", { class: "zonos--group-btn" }, !isPaypalTabSelected && (h("zonos-button", { backgroundColor: this.submitBtnColor, loading: this.continueLoading, onClick: () => {
109
+ this.continueClickHandler();
110
+ }, size: "lg",
111
+ // use primary type when on mobile mode
112
+ variant: this.submitBtnType }, translate('Pay [orderTotal]', {
113
+ orderTotal: renderCheckoutCurrency({
114
+ amount: cartStore.total,
115
+ isForeign: true,
116
+ }),
117
+ }))), h("zonos-paypal-payment", { onPaypalSessionDone: ({ detail: { orderId } }) => {
118
+ this.paypalSessionDone.emit(orderId);
119
+ }, onPaypalSessionFail: () => this.paypalSessionFailed.emit(), style: {
120
+ display: isPaypalTabSelected ? 'block' : 'none',
121
+ } })), isTestMode && (h("zonos-card", { backgroundColor: "gray-100", borderRadius: 12, class: "zonos--test-cards" }, h("zonos-v-stack", { spacing: 16 }, h("div", null, h("zonos-text", { type: "semiBoldLabel" }, translate('Test cards')), h("zonos-text", { textColor: "gray-700" }, translate('Click to copy the card number. Use any future expiration date and three number CVC.'))), h("zonos-button", { icon: h("zonos-icon", { content: CheckmarkLineIcon }), justifyContent: "flex-start", onClick: () => this.copyCardToClipboard('4242424242424242') }, translate('Success'), " (****4242)"), h("zonos-button", { icon: h("zonos-icon", { content: RemoveLineIcon }), justifyContent: "flex-start", onClick: () => this.copyCardToClipboard('4000000000000002') }, translate('Failure'), " (****0002)")), h("zonos-notification", null)))));
122
+ };
123
+ return (h(Host, { class: "zonos--checkout-payment zonos--elements" }, h("div", { class: "zonos--group" }, h("zonos-text", { class: "zonos--title", type: "semiBoldSubheader" }, translate('Payment method')), renderPayment())));
83
124
  }
84
125
  static get is() { return "zonos-checkout-payment"; }
85
126
  static get encapsulation() { return "scoped"; }
@@ -114,6 +155,8 @@ export class ZonosCheckoutPayment {
114
155
  "tags": [],
115
156
  "text": "Whether or not the checkout is in mobile mode"
116
157
  },
158
+ "getter": false,
159
+ "setter": false,
117
160
  "attribute": "submit-btn-type",
118
161
  "reflect": false
119
162
  },
@@ -131,6 +174,8 @@ export class ZonosCheckoutPayment {
131
174
  "tags": [],
132
175
  "text": "Whether or not the continue button is loading"
133
176
  },
177
+ "getter": false,
178
+ "setter": false,
134
179
  "attribute": "continue-loading",
135
180
  "reflect": false,
136
181
  "defaultValue": "false"
@@ -149,15 +194,58 @@ export class ZonosCheckoutPayment {
149
194
  "tags": [],
150
195
  "text": "Submit button main color"
151
196
  },
197
+ "getter": false,
198
+ "setter": false,
152
199
  "attribute": "submit-btn-color",
153
200
  "reflect": false
201
+ },
202
+ "isMobile": {
203
+ "type": "boolean",
204
+ "mutable": false,
205
+ "complexType": {
206
+ "original": "boolean",
207
+ "resolved": "boolean",
208
+ "references": {}
209
+ },
210
+ "required": false,
211
+ "optional": false,
212
+ "docs": {
213
+ "tags": [],
214
+ "text": "Whether or not the checkout is in mobile mode"
215
+ },
216
+ "getter": false,
217
+ "setter": false,
218
+ "attribute": "is-mobile",
219
+ "reflect": false,
220
+ "defaultValue": "false"
221
+ },
222
+ "overridePrimaryColor": {
223
+ "type": "string",
224
+ "mutable": false,
225
+ "complexType": {
226
+ "original": "string",
227
+ "resolved": "string | undefined",
228
+ "references": {}
229
+ },
230
+ "required": false,
231
+ "optional": true,
232
+ "docs": {
233
+ "tags": [],
234
+ "text": "Primary color to override primary color from appearance primary color in setting."
235
+ },
236
+ "getter": false,
237
+ "setter": false,
238
+ "attribute": "override-primary-color",
239
+ "reflect": false
154
240
  }
155
241
  };
156
242
  }
157
243
  static get states() {
158
244
  return {
159
245
  "showErrorBanner": {},
160
- "hasStripePaymentError": {}
246
+ "hasStripePaymentError": {},
247
+ "stagingOrderCreateErrorMessage": {},
248
+ "internalContinueLoading": {}
161
249
  };
162
250
  }
163
251
  static get events() {
@@ -211,6 +299,9 @@ export class ZonosCheckoutPayment {
211
299
  static get elementRef() { return "ele"; }
212
300
  static get watchers() {
213
301
  return [{
302
+ "propName": "continueLoading",
303
+ "methodName": "continueLoadingWatcher"
304
+ }, {
214
305
  "propName": "hasStripePaymentError",
215
306
  "methodName": "stripePaymentErrorWatcher"
216
307
  }];
@@ -0,0 +1,22 @@
1
+ <svg width="536" height="200" viewBox="0 0 536 200" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <mask id="mask0_3739_19124" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="536" height="200">
3
+ <rect width="536" height="200" fill="url(#paint0_radial_3739_19124)"/>
4
+ </mask>
5
+ <g mask="url(#mask0_3739_19124)">
6
+ <rect x="0.5" y="0.5" width="117" height="63" rx="9.5" stroke="white" stroke-opacity="0.08"/>
7
+ <rect x="126.5" y="0.5" width="117" height="63" rx="9.5" stroke="white" stroke-opacity="0.08"/>
8
+ <rect x="252.5" y="0.5" width="117" height="63" rx="9.5" stroke="white" stroke-opacity="0.08"/>
9
+ <rect x="378.5" y="0.5" width="117" height="63" rx="9.5" stroke="white" stroke-opacity="0.08"/>
10
+ <rect x="504.5" y="0.5" width="31" height="63" rx="9.5" stroke="white" stroke-opacity="0.08"/>
11
+ <rect y="96" width="124" height="8" rx="4" fill="white" fill-opacity="0.08"/>
12
+ <rect x="0.5" y="112.5" width="535" height="39" rx="7.5" stroke="white" stroke-opacity="0.08"/>
13
+ <rect x="0.5" y="160.5" width="263" height="39" rx="7.5" stroke="white" stroke-opacity="0.08"/>
14
+ <rect x="272.5" y="160.5" width="263" height="39" rx="7.5" stroke="white" stroke-opacity="0.08"/>
15
+ </g>
16
+ <defs>
17
+ <radialGradient id="paint0_radial_3739_19124" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(268 100) rotate(90) scale(100 268)">
18
+ <stop offset="0.25" stop-color="white" stop-opacity="0"/>
19
+ <stop offset="0.75" stop-color="white"/>
20
+ </radialGradient>
21
+ </defs>
22
+ </svg>
@@ -0,0 +1,22 @@
1
+ <svg width="536" height="200" viewBox="0 0 536 200" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <mask id="mask0_3739_19125" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="536" height="200">
3
+ <rect width="536" height="200" fill="url(#paint0_radial_3739_19125)"/>
4
+ </mask>
5
+ <g mask="url(#mask0_3739_19125)">
6
+ <rect x="0.5" y="0.5" width="117" height="63" rx="9.5" stroke="black" stroke-opacity="0.08"/>
7
+ <rect x="126.5" y="0.5" width="117" height="63" rx="9.5" stroke="black" stroke-opacity="0.08"/>
8
+ <rect x="252.5" y="0.5" width="117" height="63" rx="9.5" stroke="black" stroke-opacity="0.08"/>
9
+ <rect x="378.5" y="0.5" width="117" height="63" rx="9.5" stroke="black" stroke-opacity="0.08"/>
10
+ <rect x="504.5" y="0.5" width="31" height="63" rx="9.5" stroke="black" stroke-opacity="0.08"/>
11
+ <rect y="96" width="124" height="8" rx="4" fill="black" fill-opacity="0.08"/>
12
+ <rect x="0.5" y="112.5" width="535" height="39" rx="7.5" stroke="black" stroke-opacity="0.08"/>
13
+ <rect x="0.5" y="160.5" width="263" height="39" rx="7.5" stroke="black" stroke-opacity="0.08"/>
14
+ <rect x="272.5" y="160.5" width="263" height="39" rx="7.5" stroke="black" stroke-opacity="0.08"/>
15
+ </g>
16
+ <defs>
17
+ <radialGradient id="paint0_radial_3739_19125" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(268 100) rotate(90) scale(100 268)">
18
+ <stop offset="0.25" stop-color="white" stop-opacity="0"/>
19
+ <stop offset="0.75" stop-color="white"/>
20
+ </radialGradient>
21
+ </defs>
22
+ </svg>
@@ -0,0 +1,51 @@
1
+ :host {
2
+ font-family: var(--zonos--font-family, Inter), Inter;
3
+ display: block;
4
+ white-space: normal;
5
+ }
6
+ :host * {
7
+ font-family: var(--zonos--font-family, Inter), Inter;
8
+ }
9
+ :host img {
10
+ max-width: 100%;
11
+ }
12
+ :host dl,
13
+ :host dd,
14
+ :host h1,
15
+ :host h2,
16
+ :host h3,
17
+ :host h4,
18
+ :host h5,
19
+ :host h6,
20
+ :host hr,
21
+ :host figure,
22
+ :host p,
23
+ :host pre {
24
+ margin: 0;
25
+ }
26
+
27
+ /* All sets of variable are here */
28
+ /* smooth font rendering */
29
+ :host {
30
+ -moz-osx-font-smoothing: grayscale;
31
+ -webkit-font-smoothing: antialiased;
32
+ }
33
+
34
+ :host {
35
+ display: inline-flex;
36
+ position: relative;
37
+ }
38
+ :host zonos-text {
39
+ position: absolute;
40
+ left: 0;
41
+ right: 0;
42
+ bottom: 0;
43
+ top: 0;
44
+ display: flex;
45
+ align-items: center;
46
+ justify-content: center;
47
+ }
48
+ :host svg {
49
+ width: var(--zonos--width);
50
+ height: var(--zonos--height);
51
+ }
@@ -0,0 +1,90 @@
1
+ import { h, Host } from "@stencil/core";
2
+ import { zonosStoreFontFamily } from "../../../../store/zonosStore";
3
+ // eslint-disable-next-line no-relative-import-paths/no-relative-import-paths
4
+ import PaymentEmptyStateDarkIcon from "./assets/PaymentEmptyStateDarkIcon.svg";
5
+ // eslint-disable-next-line no-relative-import-paths/no-relative-import-paths
6
+ import PaymentEmptyStateLightIcon from "./assets/PaymentEmptyStateLightIcon.svg";
7
+ export class ZonosEmptyStatePayment {
8
+ constructor() {
9
+ this.emptyStateText = undefined;
10
+ this.theme = 'LIGHT';
11
+ }
12
+ render() {
13
+ if (!this.el.shadowRoot) {
14
+ return null;
15
+ }
16
+ if (this.theme === 'DARK') {
17
+ this.el.shadowRoot.innerHTML = PaymentEmptyStateDarkIcon;
18
+ }
19
+ else {
20
+ this.el.shadowRoot.innerHTML = PaymentEmptyStateLightIcon;
21
+ }
22
+ return (h(Host, { class: "zonos--elements", style: {
23
+ '--zonos--font-family': zonosStoreFontFamily(),
24
+ '--zonos--height': `100%`,
25
+ '--zonos--width': `100%`,
26
+ } }, h("zonos-text", { type: "semiBoldLabel" }, this.emptyStateText)));
27
+ }
28
+ static get is() { return "zonos-empty-state-payment"; }
29
+ static get encapsulation() { return "shadow"; }
30
+ static get originalStyleUrls() {
31
+ return {
32
+ "$": ["zonos-empty-state-payment.scss"]
33
+ };
34
+ }
35
+ static get styleUrls() {
36
+ return {
37
+ "$": ["zonos-empty-state-payment.css"]
38
+ };
39
+ }
40
+ static get properties() {
41
+ return {
42
+ "emptyStateText": {
43
+ "type": "string",
44
+ "mutable": false,
45
+ "complexType": {
46
+ "original": "string",
47
+ "resolved": "string",
48
+ "references": {}
49
+ },
50
+ "required": true,
51
+ "optional": false,
52
+ "docs": {
53
+ "tags": [],
54
+ "text": "Text to display in the empty state"
55
+ },
56
+ "getter": false,
57
+ "setter": false,
58
+ "attribute": "empty-state-text",
59
+ "reflect": false
60
+ },
61
+ "theme": {
62
+ "type": "string",
63
+ "mutable": false,
64
+ "complexType": {
65
+ "original": "ElementsUiTheme",
66
+ "resolved": "\"DARK\" | \"LIGHT\" | \"SYSTEM\"",
67
+ "references": {
68
+ "ElementsUiTheme": {
69
+ "location": "import",
70
+ "path": "src/types/generated/graphql.internal.types",
71
+ "id": "src/types/generated/graphql.internal.types.ts::ElementsUiTheme"
72
+ }
73
+ }
74
+ },
75
+ "required": false,
76
+ "optional": false,
77
+ "docs": {
78
+ "tags": [],
79
+ "text": "Theme color of the icon"
80
+ },
81
+ "getter": false,
82
+ "setter": false,
83
+ "attribute": "theme",
84
+ "reflect": false,
85
+ "defaultValue": "'LIGHT'"
86
+ }
87
+ };
88
+ }
89
+ static get elementRef() { return "el"; }
90
+ }