@dropins/storefront-checkout 0.1.0-alpha32 → 0.1.0-alpha34

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 (608) hide show
  1. package/__generated__/types.d.ts +28959 -0
  2. package/__generated__/types.d.ts.map +1 -0
  3. package/api/errors/errors.d.ts +27 -0
  4. package/api/errors/errors.d.ts.map +1 -0
  5. package/api/errors/index.d.ts +2 -0
  6. package/api/errors/index.d.ts.map +1 -0
  7. package/api/estimateShippingMethods/estimateShippingMethods.d.ts +14 -0
  8. package/api/estimateShippingMethods/estimateShippingMethods.d.ts.map +1 -0
  9. package/api/estimateShippingMethods/fixtures.d.ts +8 -0
  10. package/api/estimateShippingMethods/fixtures.d.ts.map +1 -0
  11. package/api/estimateShippingMethods/graphql/estimateShippingMethods.graphql.d.ts +2 -0
  12. package/api/estimateShippingMethods/graphql/estimateShippingMethods.graphql.d.ts.map +1 -0
  13. package/api/estimateShippingMethods/graphql/index.d.ts +2 -0
  14. package/api/estimateShippingMethods/graphql/index.d.ts.map +1 -0
  15. package/api/estimateShippingMethods/index.d.ts +2 -0
  16. package/api/estimateShippingMethods/index.d.ts.map +1 -0
  17. package/api/fetch-graphql/fetch-graphql.d.ts +8 -0
  18. package/api/fetch-graphql/fetch-graphql.d.ts.map +1 -0
  19. package/api/fetch-graphql/index.d.ts +2 -0
  20. package/api/fetch-graphql/index.d.ts.map +1 -0
  21. package/api/fetchAddressFormFields/fetchAddressFormFields.d.ts +4 -0
  22. package/api/fetchAddressFormFields/fetchAddressFormFields.d.ts.map +1 -0
  23. package/api/fetchAddressFormFields/fixtures.d.ts +5 -0
  24. package/api/fetchAddressFormFields/fixtures.d.ts.map +1 -0
  25. package/api/fetchAddressFormFields/graphql/fetchAddressFormFields.graphql.d.ts +2 -0
  26. package/api/fetchAddressFormFields/graphql/fetchAddressFormFields.graphql.d.ts.map +1 -0
  27. package/api/fetchAddressFormFields/index.d.ts +3 -0
  28. package/api/fetchAddressFormFields/index.d.ts.map +1 -0
  29. package/api/getCart/fixtures.d.ts +12 -0
  30. package/api/getCart/fixtures.d.ts.map +1 -0
  31. package/api/getCart/getCart.d.ts +2 -0
  32. package/api/getCart/getCart.d.ts.map +1 -0
  33. package/api/getCart/graphql/getCart.graphql.d.ts +5 -0
  34. package/api/getCart/graphql/getCart.graphql.d.ts.map +1 -0
  35. package/api/getCart/graphql/index.d.ts +2 -0
  36. package/api/getCart/graphql/index.d.ts.map +1 -0
  37. package/api/getCart/index.d.ts +2 -0
  38. package/api/getCart/index.d.ts.map +1 -0
  39. package/api/getCountries/fixtures.d.ts +6 -0
  40. package/api/getCountries/fixtures.d.ts.map +1 -0
  41. package/api/getCountries/getCountries.d.ts +4 -0
  42. package/api/getCountries/getCountries.d.ts.map +1 -0
  43. package/api/getCountries/graphql/getCountries.graphql.d.ts +2 -0
  44. package/api/getCountries/graphql/getCountries.graphql.d.ts.map +1 -0
  45. package/api/getCountries/index.d.ts +2 -0
  46. package/api/getCountries/index.d.ts.map +1 -0
  47. package/api/getCustomer/getCustomer.d.ts +4 -0
  48. package/api/getCustomer/getCustomer.d.ts.map +1 -0
  49. package/api/getCustomer/graphql/getCustomer.graphql.d.ts +2 -0
  50. package/api/getCustomer/graphql/getCustomer.graphql.d.ts.map +1 -0
  51. package/api/getCustomer/graphql/index.d.ts +2 -0
  52. package/api/getCustomer/graphql/index.d.ts.map +1 -0
  53. package/api/getCustomer/index.d.ts +2 -0
  54. package/api/getCustomer/index.d.ts.map +1 -0
  55. package/api/getRegions/fixtures.d.ts +5 -0
  56. package/api/getRegions/fixtures.d.ts.map +1 -0
  57. package/api/getRegions/getRegions.d.ts +5 -0
  58. package/api/getRegions/getRegions.d.ts.map +1 -0
  59. package/api/getRegions/graphql/getRegions.graphql.d.ts +2 -0
  60. package/api/getRegions/graphql/getRegions.graphql.d.ts.map +1 -0
  61. package/api/getRegions/index.d.ts +2 -0
  62. package/api/getRegions/index.d.ts.map +1 -0
  63. package/api/getStockStatus/getStockStatus.d.ts +4 -0
  64. package/api/getStockStatus/getStockStatus.d.ts.map +1 -0
  65. package/api/getStockStatus/graphql/getStockStatus.graphql.d.ts +4 -0
  66. package/api/getStockStatus/graphql/getStockStatus.graphql.d.ts.map +1 -0
  67. package/api/getStockStatus/index.d.ts +2 -0
  68. package/api/getStockStatus/index.d.ts.map +1 -0
  69. package/api/getStoreConfig/getStoreConfig.d.ts +4 -0
  70. package/api/getStoreConfig/getStoreConfig.d.ts.map +1 -0
  71. package/api/getStoreConfig/graphql/getStoreConfig.graphql.d.ts +2 -0
  72. package/api/getStoreConfig/graphql/getStoreConfig.graphql.d.ts.map +1 -0
  73. package/api/getStoreConfig/index.d.ts +2 -0
  74. package/api/getStoreConfig/index.d.ts.map +1 -0
  75. package/api/index.d.ts +20 -0
  76. package/api/index.d.ts.map +1 -0
  77. package/api/initialize/index.d.ts +2 -0
  78. package/api/initialize/index.d.ts.map +1 -0
  79. package/api/initialize/initialize.d.ts +10 -0
  80. package/api/initialize/initialize.d.ts.map +1 -0
  81. package/api/isEmailAvailable/graphql/isEmailAvailable.graphql.d.ts +2 -0
  82. package/api/isEmailAvailable/graphql/isEmailAvailable.graphql.d.ts.map +1 -0
  83. package/api/isEmailAvailable/index.d.ts +2 -0
  84. package/api/isEmailAvailable/index.d.ts.map +1 -0
  85. package/api/isEmailAvailable/isEmailAvailable.d.ts +4 -0
  86. package/api/isEmailAvailable/isEmailAvailable.d.ts.map +1 -0
  87. package/api/placeOrder/graphql/index.d.ts +2 -0
  88. package/api/placeOrder/graphql/index.d.ts.map +1 -0
  89. package/api/placeOrder/graphql/placeOrder.graphql.d.ts +2 -0
  90. package/api/placeOrder/graphql/placeOrder.graphql.d.ts.map +1 -0
  91. package/api/placeOrder/index.d.ts +2 -0
  92. package/api/placeOrder/index.d.ts.map +1 -0
  93. package/api/placeOrder/placeOrder.d.ts +2 -0
  94. package/api/placeOrder/placeOrder.d.ts.map +1 -0
  95. package/api/redirect/index.d.ts +2 -0
  96. package/api/redirect/index.d.ts.map +1 -0
  97. package/api/redirect/redirect.d.ts +2 -0
  98. package/api/redirect/redirect.d.ts.map +1 -0
  99. package/api/setBillingAddress/graphql/setBillingAddress.graphql.d.ts +2 -0
  100. package/api/setBillingAddress/graphql/setBillingAddress.graphql.d.ts.map +1 -0
  101. package/api/setBillingAddress/index.d.ts +2 -0
  102. package/api/setBillingAddress/index.d.ts.map +1 -0
  103. package/api/setBillingAddress/setBillingAddress.d.ts +14 -0
  104. package/api/setBillingAddress/setBillingAddress.d.ts.map +1 -0
  105. package/api/setGuestEmailOnCart/graphql/setGuestEmailOnCart.graphql.d.ts +2 -0
  106. package/api/setGuestEmailOnCart/graphql/setGuestEmailOnCart.graphql.d.ts.map +1 -0
  107. package/api/setGuestEmailOnCart/index.d.ts +2 -0
  108. package/api/setGuestEmailOnCart/index.d.ts.map +1 -0
  109. package/api/setGuestEmailOnCart/setGuestEmailOnCart.d.ts +6 -0
  110. package/api/setGuestEmailOnCart/setGuestEmailOnCart.d.ts.map +1 -0
  111. package/api/setPaymentMethod/graphql/setPaymentMethod.graphql.d.ts +2 -0
  112. package/api/setPaymentMethod/graphql/setPaymentMethod.graphql.d.ts.map +1 -0
  113. package/api/setPaymentMethod/index.d.ts +2 -0
  114. package/api/setPaymentMethod/index.d.ts.map +1 -0
  115. package/api/setPaymentMethod/setPaymentMethod.d.ts +5 -0
  116. package/api/setPaymentMethod/setPaymentMethod.d.ts.map +1 -0
  117. package/api/setShippingAddress/graphql/setShippingAddress.graphql.d.ts +2 -0
  118. package/api/setShippingAddress/graphql/setShippingAddress.graphql.d.ts.map +1 -0
  119. package/api/setShippingAddress/index.d.ts +2 -0
  120. package/api/setShippingAddress/index.d.ts.map +1 -0
  121. package/api/setShippingAddress/setShippingAddress.d.ts +31 -0
  122. package/api/setShippingAddress/setShippingAddress.d.ts.map +1 -0
  123. package/api/setShippingMethods/graphql/setShippingMethodsOnCart.graphql.d.ts +2 -0
  124. package/api/setShippingMethods/graphql/setShippingMethodsOnCart.graphql.d.ts.map +1 -0
  125. package/api/setShippingMethods/index.d.ts +2 -0
  126. package/api/setShippingMethods/index.d.ts.map +1 -0
  127. package/api/setShippingMethods/setShippingMethods.d.ts +8 -0
  128. package/api/setShippingMethods/setShippingMethods.d.ts.map +1 -0
  129. package/api/utils/dispatchApiCall.d.ts +41 -0
  130. package/api/utils/dispatchApiCall.d.ts.map +1 -0
  131. package/api/utils/enqueueRequest.d.ts +2 -0
  132. package/api/utils/enqueueRequest.d.ts.map +1 -0
  133. package/api/utils/filterControlledErrors.d.ts +18 -0
  134. package/api/utils/filterControlledErrors.d.ts.map +1 -0
  135. package/api.d.ts +1 -0
  136. package/chunks/BillToShippingAddress2.js +1 -1
  137. package/chunks/BillToShippingAddress2.js.map +1 -1
  138. package/chunks/ErrorBanner.js +1 -1
  139. package/chunks/ErrorBanner.js.map +1 -1
  140. package/chunks/LoginForm.js +1 -1
  141. package/chunks/LoginForm.js.map +1 -1
  142. package/chunks/MergedCartBanner.js +2 -0
  143. package/chunks/MergedCartBanner.js.map +1 -0
  144. package/chunks/{OrderSummary.js → OrderSummarySkeleton.js} +2 -2
  145. package/chunks/OrderSummarySkeleton.js.map +1 -0
  146. package/chunks/ShippingMethods.js +1 -1
  147. package/chunks/ShippingMethods.js.map +1 -1
  148. package/chunks/ToggleButton.js +1 -1
  149. package/chunks/ToggleButton.js.map +1 -1
  150. package/chunks/ToggleButton2.js +2 -0
  151. package/chunks/ToggleButton2.js.map +1 -0
  152. package/chunks/getStoreConfig.js.map +1 -1
  153. package/components/AddressForm/AddressForm.d.ts +21 -0
  154. package/components/AddressForm/AddressForm.d.ts.map +1 -0
  155. package/components/AddressForm/constants.d.ts +4 -0
  156. package/components/AddressForm/constants.d.ts.map +1 -0
  157. package/components/AddressForm/index.d.ts +7 -0
  158. package/components/AddressForm/index.d.ts.map +1 -0
  159. package/components/AddressForm/useAddressBackup.d.ts +8 -0
  160. package/components/AddressForm/useAddressBackup.d.ts.map +1 -0
  161. package/components/AddressForm/useAddressForm.d.ts +38 -0
  162. package/components/AddressForm/useAddressForm.d.ts.map +1 -0
  163. package/components/AddressForm/usePreselectedFields.d.ts +9 -0
  164. package/components/AddressForm/usePreselectedFields.d.ts.map +1 -0
  165. package/components/AddressForm/utils.d.ts +13 -0
  166. package/components/AddressForm/utils.d.ts.map +1 -0
  167. package/components/BillToShippingAddress/BillToShippingAddress.d.ts +8 -0
  168. package/components/BillToShippingAddress/BillToShippingAddress.d.ts.map +1 -0
  169. package/components/BillToShippingAddress/BillToShippingAddressSkeleton.d.ts +4 -0
  170. package/components/BillToShippingAddress/BillToShippingAddressSkeleton.d.ts.map +1 -0
  171. package/components/BillToShippingAddress/index.d.ts +4 -0
  172. package/components/BillToShippingAddress/index.d.ts.map +1 -0
  173. package/components/CartSummary/CartSummary.d.ts +19 -0
  174. package/components/CartSummary/CartSummary.d.ts.map +1 -0
  175. package/components/CartSummary/CartSummarySkeleton.d.ts +4 -0
  176. package/components/CartSummary/CartSummarySkeleton.d.ts.map +1 -0
  177. package/components/CartSummary/MobileCartSummarySkeleton.d.ts +4 -0
  178. package/components/CartSummary/MobileCartSummarySkeleton.d.ts.map +1 -0
  179. package/components/CartSummary/fixtures/CartSummary.fixture.d.ts +213 -0
  180. package/components/CartSummary/fixtures/CartSummary.fixture.d.ts.map +1 -0
  181. package/components/CartSummary/index.d.ts +5 -0
  182. package/components/CartSummary/index.d.ts.map +1 -0
  183. package/components/CartSummaryItem/CartSummaryItem.d.ts +10 -0
  184. package/components/CartSummaryItem/CartSummaryItem.d.ts.map +1 -0
  185. package/components/CartSummaryItem/index.d.ts +3 -0
  186. package/components/CartSummaryItem/index.d.ts.map +1 -0
  187. package/components/Checkout/Checkout.d.ts +33 -0
  188. package/components/Checkout/Checkout.d.ts.map +1 -0
  189. package/components/Checkout/index.d.ts +3 -0
  190. package/components/Checkout/index.d.ts.map +1 -0
  191. package/components/EmptyCart/EmptyCart.d.ts +9 -0
  192. package/components/EmptyCart/EmptyCart.d.ts.map +1 -0
  193. package/components/EmptyCart/index.d.ts +3 -0
  194. package/components/EmptyCart/index.d.ts.map +1 -0
  195. package/components/FieldsForm/FieldsForm.d.ts +13 -0
  196. package/components/FieldsForm/FieldsForm.d.ts.map +1 -0
  197. package/components/FieldsForm/FieldsFormSkeleton.d.ts +4 -0
  198. package/components/FieldsForm/FieldsFormSkeleton.d.ts.map +1 -0
  199. package/components/FieldsForm/fieldFactory.d.ts +9 -0
  200. package/components/FieldsForm/fieldFactory.d.ts.map +1 -0
  201. package/components/FieldsForm/fixtures.d.ts +5 -0
  202. package/components/FieldsForm/fixtures.d.ts.map +1 -0
  203. package/components/FieldsForm/index.d.ts +6 -0
  204. package/components/FieldsForm/index.d.ts.map +1 -0
  205. package/components/FieldsForm/validation.d.ts +18 -0
  206. package/components/FieldsForm/validation.d.ts.map +1 -0
  207. package/components/Heading/Heading.d.ts +8 -0
  208. package/components/Heading/Heading.d.ts.map +1 -0
  209. package/components/Heading/index.d.ts +3 -0
  210. package/components/Heading/index.d.ts.map +1 -0
  211. package/components/LoginForm/Email.d.ts +13 -0
  212. package/components/LoginForm/Email.d.ts.map +1 -0
  213. package/components/LoginForm/LoginForm.d.ts +17 -0
  214. package/components/LoginForm/LoginForm.d.ts.map +1 -0
  215. package/components/LoginForm/LoginFormSkeleton.d.ts +4 -0
  216. package/components/LoginForm/LoginFormSkeleton.d.ts.map +1 -0
  217. package/components/LoginForm/SignIn.d.ts +9 -0
  218. package/components/LoginForm/SignIn.d.ts.map +1 -0
  219. package/components/LoginForm/SignOut.d.ts +8 -0
  220. package/components/LoginForm/SignOut.d.ts.map +1 -0
  221. package/components/LoginForm/index.d.ts +6 -0
  222. package/components/LoginForm/index.d.ts.map +1 -0
  223. package/components/OrderSummary/OrderSummary.d.ts +37 -0
  224. package/components/OrderSummary/OrderSummary.d.ts.map +1 -0
  225. package/components/OrderSummary/OrderSummarySkeleton.d.ts +4 -0
  226. package/components/OrderSummary/OrderSummarySkeleton.d.ts.map +1 -0
  227. package/components/OrderSummary/index.d.ts +4 -0
  228. package/components/OrderSummary/index.d.ts.map +1 -0
  229. package/components/OutOfStock/OutOfStock.d.ts +9 -0
  230. package/components/OutOfStock/OutOfStock.d.ts.map +1 -0
  231. package/components/OutOfStock/index.d.ts +3 -0
  232. package/components/OutOfStock/index.d.ts.map +1 -0
  233. package/components/OverlayLoader/OverlayLoader.d.ts +6 -0
  234. package/components/OverlayLoader/OverlayLoader.d.ts.map +1 -0
  235. package/components/OverlayLoader/index.d.ts +2 -0
  236. package/components/OverlayLoader/index.d.ts.map +1 -0
  237. package/components/PaymentMethods/PaymentMethods.d.ts +13 -0
  238. package/components/PaymentMethods/PaymentMethods.d.ts.map +1 -0
  239. package/components/PaymentMethods/PaymentMethodsSkeleton.d.ts +4 -0
  240. package/components/PaymentMethods/PaymentMethodsSkeleton.d.ts.map +1 -0
  241. package/components/PaymentMethods/index.d.ts +4 -0
  242. package/components/PaymentMethods/index.d.ts.map +1 -0
  243. package/components/PlaceOrder/PlaceOrder.d.ts +9 -0
  244. package/components/PlaceOrder/PlaceOrder.d.ts.map +1 -0
  245. package/components/PlaceOrder/PlaceOrderSkeleton.d.ts +4 -0
  246. package/components/PlaceOrder/PlaceOrderSkeleton.d.ts.map +1 -0
  247. package/components/PlaceOrder/index.d.ts +3 -0
  248. package/components/PlaceOrder/index.d.ts.map +1 -0
  249. package/components/ServerError/ServerError.d.ts +10 -0
  250. package/components/ServerError/ServerError.d.ts.map +1 -0
  251. package/components/ServerError/index.d.ts +3 -0
  252. package/components/ServerError/index.d.ts.map +1 -0
  253. package/components/ShippingMethods/ShippingMethods.d.ts +12 -0
  254. package/components/ShippingMethods/ShippingMethods.d.ts.map +1 -0
  255. package/components/ShippingMethods/ShippingMethodsSkeleton.d.ts +4 -0
  256. package/components/ShippingMethods/ShippingMethodsSkeleton.d.ts.map +1 -0
  257. package/components/ShippingMethods/index.d.ts +4 -0
  258. package/components/ShippingMethods/index.d.ts.map +1 -0
  259. package/components/ToggleButton/ToggleButton.d.ts +14 -0
  260. package/components/ToggleButton/ToggleButton.d.ts.map +1 -0
  261. package/components/ToggleButton/assets/icons/index.d.ts +2 -0
  262. package/components/ToggleButton/assets/icons/index.d.ts.map +1 -0
  263. package/components/ToggleButton/assets/images/index.d.ts +2 -0
  264. package/components/ToggleButton/assets/images/index.d.ts.map +1 -0
  265. package/components/ToggleButton/index.d.ts +3 -0
  266. package/components/ToggleButton/index.d.ts.map +1 -0
  267. package/components/index.d.ts +18 -0
  268. package/components/index.d.ts.map +1 -0
  269. package/containers/BillToShippingAddress/BillToShippingAddress.d.ts +10 -0
  270. package/containers/BillToShippingAddress/BillToShippingAddress.d.ts.map +1 -0
  271. package/containers/BillToShippingAddress/constants.d.ts +2 -0
  272. package/containers/BillToShippingAddress/constants.d.ts.map +1 -0
  273. package/containers/BillToShippingAddress/index.d.ts +4 -0
  274. package/containers/BillToShippingAddress/index.d.ts.map +1 -0
  275. package/containers/BillToShippingAddress.d.ts +3 -0
  276. package/containers/BillingForm/BillingForm.d.ts +7 -0
  277. package/containers/BillingForm/BillingForm.d.ts.map +1 -0
  278. package/containers/BillingForm/constants.d.ts +2 -0
  279. package/containers/BillingForm/constants.d.ts.map +1 -0
  280. package/containers/BillingForm/index.d.ts +4 -0
  281. package/containers/BillingForm/index.d.ts.map +1 -0
  282. package/containers/BillingForm.d.ts +3 -0
  283. package/containers/BillingForm.js +1 -1
  284. package/containers/CartSummary/CartSummary.d.ts +19 -0
  285. package/containers/CartSummary/CartSummary.d.ts.map +1 -0
  286. package/containers/CartSummary/constants.d.ts +2 -0
  287. package/containers/CartSummary/constants.d.ts.map +1 -0
  288. package/containers/CartSummary/index.d.ts +3 -0
  289. package/containers/CartSummary/index.d.ts.map +1 -0
  290. package/containers/CartSummary.d.ts +3 -0
  291. package/containers/CartSummary.js +1 -1
  292. package/containers/Checkout/Checkout.d.ts +37 -0
  293. package/containers/Checkout/Checkout.d.ts.map +1 -0
  294. package/containers/Checkout/constants.d.ts +2 -0
  295. package/containers/Checkout/constants.d.ts.map +1 -0
  296. package/containers/Checkout/index.d.ts +4 -0
  297. package/containers/Checkout/index.d.ts.map +1 -0
  298. package/containers/Checkout.d.ts +3 -0
  299. package/containers/Checkout.js +1 -1
  300. package/containers/Checkout.js.map +1 -1
  301. package/containers/ErrorBanner/ErrorBanner.d.ts +5 -0
  302. package/containers/ErrorBanner/ErrorBanner.d.ts.map +1 -0
  303. package/containers/ErrorBanner/index.d.ts +3 -0
  304. package/containers/ErrorBanner/index.d.ts.map +1 -0
  305. package/containers/ErrorBanner.d.ts +3 -0
  306. package/containers/LoginForm/LoginForm.d.ts +10 -0
  307. package/containers/LoginForm/LoginForm.d.ts.map +1 -0
  308. package/containers/LoginForm/constants.d.ts +2 -0
  309. package/containers/LoginForm/constants.d.ts.map +1 -0
  310. package/containers/LoginForm/index.d.ts +4 -0
  311. package/containers/LoginForm/index.d.ts.map +1 -0
  312. package/containers/LoginForm.d.ts +3 -0
  313. package/containers/LoginForm.js +1 -1
  314. package/containers/MergedCartBanner/MergedCartBanner.d.ts +5 -0
  315. package/containers/MergedCartBanner/MergedCartBanner.d.ts.map +1 -0
  316. package/containers/MergedCartBanner/index.d.ts +3 -0
  317. package/containers/MergedCartBanner/index.d.ts.map +1 -0
  318. package/containers/MergedCartBanner.d.ts +3 -0
  319. package/containers/MergedCartBanner.js +2 -0
  320. package/containers/MergedCartBanner.js.map +1 -0
  321. package/containers/OrderSummary/OrderSummary.d.ts +13 -0
  322. package/containers/OrderSummary/OrderSummary.d.ts.map +1 -0
  323. package/containers/OrderSummary/constants.d.ts +2 -0
  324. package/containers/OrderSummary/constants.d.ts.map +1 -0
  325. package/containers/OrderSummary/index.d.ts +3 -0
  326. package/containers/OrderSummary/index.d.ts.map +1 -0
  327. package/containers/OrderSummary.d.ts +3 -0
  328. package/containers/OrderSummary.js +1 -1
  329. package/containers/PaymentMethods/PaymentMethods.d.ts +23 -0
  330. package/containers/PaymentMethods/PaymentMethods.d.ts.map +1 -0
  331. package/containers/PaymentMethods/defaultHandlers.d.ts +11 -0
  332. package/containers/PaymentMethods/defaultHandlers.d.ts.map +1 -0
  333. package/containers/PaymentMethods/index.d.ts +3 -0
  334. package/containers/PaymentMethods/index.d.ts.map +1 -0
  335. package/containers/PaymentMethods.d.ts +3 -0
  336. package/containers/PaymentMethods.js +1 -1
  337. package/containers/PlaceOrder/PlaceOrder.d.ts +9 -0
  338. package/containers/PlaceOrder/PlaceOrder.d.ts.map +1 -0
  339. package/containers/PlaceOrder/index.d.ts +3 -0
  340. package/containers/PlaceOrder/index.d.ts.map +1 -0
  341. package/containers/PlaceOrder.d.ts +3 -0
  342. package/containers/PlaceOrder.js +1 -1
  343. package/containers/ShippingForm/ShippingForm.d.ts +9 -0
  344. package/containers/ShippingForm/ShippingForm.d.ts.map +1 -0
  345. package/containers/ShippingForm/constants.d.ts +2 -0
  346. package/containers/ShippingForm/constants.d.ts.map +1 -0
  347. package/containers/ShippingForm/index.d.ts +4 -0
  348. package/containers/ShippingForm/index.d.ts.map +1 -0
  349. package/containers/ShippingForm.d.ts +3 -0
  350. package/containers/ShippingForm.js +1 -1
  351. package/containers/ShippingMethods/ShippingMethods.d.ts +9 -0
  352. package/containers/ShippingMethods/ShippingMethods.d.ts.map +1 -0
  353. package/containers/ShippingMethods/index.d.ts +3 -0
  354. package/containers/ShippingMethods/index.d.ts.map +1 -0
  355. package/containers/ShippingMethods.d.ts +3 -0
  356. package/containers/ShippingMethods.js +1 -1
  357. package/containers/index.d.ts +13 -0
  358. package/containers/index.d.ts.map +1 -0
  359. package/context/address-form-fields.d.ts +13 -0
  360. package/context/address-form-fields.d.ts.map +1 -0
  361. package/context/checkout.d.ts +44 -0
  362. package/context/checkout.d.ts.map +1 -0
  363. package/context/countries.d.ts +13 -0
  364. package/context/countries.d.ts.map +1 -0
  365. package/context/index.d.ts +6 -0
  366. package/context/index.d.ts.map +1 -0
  367. package/context/services.d.ts +13 -0
  368. package/context/services.d.ts.map +1 -0
  369. package/context/store.d.ts +13 -0
  370. package/context/store.d.ts.map +1 -0
  371. package/data/models/address-form-fields.d.ts +52 -0
  372. package/data/models/address-form-fields.d.ts.map +1 -0
  373. package/data/models/address.d.ts +21 -0
  374. package/data/models/address.d.ts.map +1 -0
  375. package/data/models/cart-item.d.ts +59 -0
  376. package/data/models/cart-item.d.ts.map +1 -0
  377. package/data/models/cart.d.ts +23 -0
  378. package/data/models/cart.d.ts.map +1 -0
  379. package/data/models/country.d.ts +5 -0
  380. package/data/models/country.d.ts.map +1 -0
  381. package/data/models/custom-attribute.d.ts +5 -0
  382. package/data/models/custom-attribute.d.ts.map +1 -0
  383. package/data/models/customer.d.ts +25 -0
  384. package/data/models/customer.d.ts.map +1 -0
  385. package/data/models/email-availability.d.ts +2 -0
  386. package/data/models/email-availability.d.ts.map +1 -0
  387. package/data/models/index.d.ts +13 -0
  388. package/data/models/index.d.ts.map +1 -0
  389. package/data/models/money.d.ts +5 -0
  390. package/data/models/money.d.ts.map +1 -0
  391. package/data/models/payment-method.d.ts +5 -0
  392. package/data/models/payment-method.d.ts.map +1 -0
  393. package/data/models/region.d.ts +6 -0
  394. package/data/models/region.d.ts.map +1 -0
  395. package/data/models/shipping-method.d.ts +17 -0
  396. package/data/models/shipping-method.d.ts.map +1 -0
  397. package/data/models/store-config.d.ts +29 -0
  398. package/data/models/store-config.d.ts.map +1 -0
  399. package/data/transforms/index.d.ts +10 -0
  400. package/data/transforms/index.d.ts.map +1 -0
  401. package/data/transforms/transform-address-form-fields.d.ts +66 -0
  402. package/data/transforms/transform-address-form-fields.d.ts.map +1 -0
  403. package/data/transforms/transform-address.d.ts +79 -0
  404. package/data/transforms/transform-address.d.ts.map +1 -0
  405. package/data/transforms/transform-cart-item.d.ts +10 -0
  406. package/data/transforms/transform-cart-item.d.ts.map +1 -0
  407. package/data/transforms/transform-cart.d.ts +10 -0
  408. package/data/transforms/transform-cart.d.ts.map +1 -0
  409. package/data/transforms/transform-countries.d.ts +5 -0
  410. package/data/transforms/transform-countries.d.ts.map +1 -0
  411. package/data/transforms/transform-customer.d.ts +14 -0
  412. package/data/transforms/transform-customer.d.ts.map +1 -0
  413. package/data/transforms/transform-email-availability.d.ts +6 -0
  414. package/data/transforms/transform-email-availability.d.ts.map +1 -0
  415. package/data/transforms/transform-payment-methods.d.ts +9 -0
  416. package/data/transforms/transform-payment-methods.d.ts.map +1 -0
  417. package/data/transforms/transform-regions.d.ts +8 -0
  418. package/data/transforms/transform-regions.d.ts.map +1 -0
  419. package/data/transforms/transform-shipping-methods.d.ts +14 -0
  420. package/data/transforms/transform-shipping-methods.d.ts.map +1 -0
  421. package/data/transforms/transform-store-config.d.ts +5 -0
  422. package/data/transforms/transform-store-config.d.ts.map +1 -0
  423. package/hooks/useAuthentication/index.d.ts +2 -0
  424. package/hooks/useAuthentication/index.d.ts.map +1 -0
  425. package/hooks/useAuthentication/useAuthentication.d.ts +2 -0
  426. package/hooks/useAuthentication/useAuthentication.d.ts.map +1 -0
  427. package/hooks/useBreakpoint/index.d.ts +2 -0
  428. package/hooks/useBreakpoint/index.d.ts.map +1 -0
  429. package/hooks/useBreakpoint/useBreakpoint.d.ts +2 -0
  430. package/hooks/useBreakpoint/useBreakpoint.d.ts.map +1 -0
  431. package/hooks/useLockScroll/index.d.ts +2 -0
  432. package/hooks/useLockScroll/index.d.ts.map +1 -0
  433. package/hooks/useLockScroll/useLockScroll.d.ts +5 -0
  434. package/hooks/useLockScroll/useLockScroll.d.ts.map +1 -0
  435. package/hooks/useValidity/index.d.ts +2 -0
  436. package/hooks/useValidity/index.d.ts.map +1 -0
  437. package/hooks/useValidity/useValidity.d.ts +19 -0
  438. package/hooks/useValidity/useValidity.d.ts.map +1 -0
  439. package/i18n/en_US.json.d.ts +119 -0
  440. package/lib/fetch-error.d.ts +7 -0
  441. package/lib/fetch-error.d.ts.map +1 -0
  442. package/lib/index.d.ts +4 -0
  443. package/lib/index.d.ts.map +1 -0
  444. package/lib/localStorage.d.ts +10 -0
  445. package/lib/localStorage.d.ts.map +1 -0
  446. package/lib/network-error.d.ts +6 -0
  447. package/lib/network-error.d.ts.map +1 -0
  448. package/lib/redirect.d.ts +2 -0
  449. package/lib/redirect.d.ts.map +1 -0
  450. package/msw/browser.d.ts +2 -0
  451. package/msw/browser.d.ts.map +1 -0
  452. package/msw/fixtures/fragments/american-regions.d.ts +4 -0
  453. package/msw/fixtures/fragments/american-regions.d.ts.map +1 -0
  454. package/msw/fixtures/fragments/available-shipping-methods.d.ts +23 -0
  455. package/msw/fixtures/fragments/available-shipping-methods.d.ts.map +1 -0
  456. package/msw/fixtures/fragments/billing-address.d.ts +36 -0
  457. package/msw/fixtures/fragments/billing-address.d.ts.map +1 -0
  458. package/msw/fixtures/fragments/cart.d.ts +1718 -0
  459. package/msw/fixtures/fragments/cart.d.ts.map +1 -0
  460. package/msw/fixtures/fragments/countries.d.ts +4 -0
  461. package/msw/fixtures/fragments/countries.d.ts.map +1 -0
  462. package/msw/fixtures/fragments/form-fields.d.ts +4 -0
  463. package/msw/fixtures/fragments/form-fields.d.ts.map +1 -0
  464. package/msw/fixtures/fragments/index.d.ts +9 -0
  465. package/msw/fixtures/fragments/index.d.ts.map +1 -0
  466. package/msw/fixtures/fragments/items.d.ts +4 -0
  467. package/msw/fixtures/fragments/items.d.ts.map +1 -0
  468. package/msw/fixtures/fragments/shipping-address.d.ts +42 -0
  469. package/msw/fixtures/fragments/shipping-address.d.ts.map +1 -0
  470. package/msw/fixtures/index.d.ts +4 -0
  471. package/msw/fixtures/index.d.ts.map +1 -0
  472. package/msw/fixtures/mutations/estimate-shipping-methods.d.ts +4 -0
  473. package/msw/fixtures/mutations/estimate-shipping-methods.d.ts.map +1 -0
  474. package/msw/fixtures/mutations/index.d.ts +8 -0
  475. package/msw/fixtures/mutations/index.d.ts.map +1 -0
  476. package/msw/fixtures/mutations/place-order.d.ts +4 -0
  477. package/msw/fixtures/mutations/place-order.d.ts.map +1 -0
  478. package/msw/fixtures/mutations/set-billing-address.d.ts +5 -0
  479. package/msw/fixtures/mutations/set-billing-address.d.ts.map +1 -0
  480. package/msw/fixtures/mutations/set-guest-email.d.ts +4 -0
  481. package/msw/fixtures/mutations/set-guest-email.d.ts.map +1 -0
  482. package/msw/fixtures/mutations/set-payment-method.d.ts +4 -0
  483. package/msw/fixtures/mutations/set-payment-method.d.ts.map +1 -0
  484. package/msw/fixtures/mutations/set-shipping-address.d.ts +4 -0
  485. package/msw/fixtures/mutations/set-shipping-address.d.ts.map +1 -0
  486. package/msw/fixtures/mutations/set-shipping-methods.d.ts +4 -0
  487. package/msw/fixtures/mutations/set-shipping-methods.d.ts.map +1 -0
  488. package/msw/fixtures/queries/fetch-address-form-fields.d.ts +4 -0
  489. package/msw/fixtures/queries/fetch-address-form-fields.d.ts.map +1 -0
  490. package/msw/fixtures/queries/get-cart.d.ts +4 -0
  491. package/msw/fixtures/queries/get-cart.d.ts.map +1 -0
  492. package/msw/fixtures/queries/get-countries.d.ts +4 -0
  493. package/msw/fixtures/queries/get-countries.d.ts.map +1 -0
  494. package/msw/fixtures/queries/get-customer-cart-stock-status.d.ts +4 -0
  495. package/msw/fixtures/queries/get-customer-cart-stock-status.d.ts.map +1 -0
  496. package/msw/fixtures/queries/get-customer.d.ts +5 -0
  497. package/msw/fixtures/queries/get-customer.d.ts.map +1 -0
  498. package/msw/fixtures/queries/get-regions.d.ts +4 -0
  499. package/msw/fixtures/queries/get-regions.d.ts.map +1 -0
  500. package/msw/fixtures/queries/get-stock-status.d.ts +4 -0
  501. package/msw/fixtures/queries/get-stock-status.d.ts.map +1 -0
  502. package/msw/fixtures/queries/get-store-config.d.ts +4 -0
  503. package/msw/fixtures/queries/get-store-config.d.ts.map +1 -0
  504. package/msw/fixtures/queries/index.d.ts +10 -0
  505. package/msw/fixtures/queries/index.d.ts.map +1 -0
  506. package/msw/fixtures/queries/is-email-available.d.ts +4 -0
  507. package/msw/fixtures/queries/is-email-available.d.ts.map +1 -0
  508. package/msw/handlers.d.ts +4 -0
  509. package/msw/handlers.d.ts.map +1 -0
  510. package/msw/server.d.ts +2 -0
  511. package/msw/server.d.ts.map +1 -0
  512. package/package.json +1 -1
  513. package/render/Provider.d.ts +10 -0
  514. package/render/Provider.d.ts.map +1 -0
  515. package/render/index.d.ts +2 -0
  516. package/render/index.d.ts.map +1 -0
  517. package/render/render.d.ts +6 -0
  518. package/render/render.d.ts.map +1 -0
  519. package/render.d.ts +1 -0
  520. package/render.js +2 -2
  521. package/render.js.map +1 -1
  522. package/services/backup.d.ts +17 -0
  523. package/services/backup.d.ts.map +1 -0
  524. package/services/index.d.ts +2 -0
  525. package/services/index.d.ts.map +1 -0
  526. package/signals/AuthenticationSignal.d.ts +2 -0
  527. package/signals/AuthenticationSignal.d.ts.map +1 -0
  528. package/signals/CartSignal.d.ts +7 -0
  529. package/signals/CartSignal.d.ts.map +1 -0
  530. package/signals/CustomerSignal.d.ts +7 -0
  531. package/signals/CustomerSignal.d.ts.map +1 -0
  532. package/signals/EstimateShippingMethodsSignal.d.ts +7 -0
  533. package/signals/EstimateShippingMethodsSignal.d.ts.map +1 -0
  534. package/signals/IsBillToShippingSignal.d.ts +6 -0
  535. package/signals/IsBillToShippingSignal.d.ts.map +1 -0
  536. package/signals/RegionsSignal.d.ts +12 -0
  537. package/signals/RegionsSignal.d.ts.map +1 -0
  538. package/signals/SelectedShippingMethodSignal.d.ts +4 -0
  539. package/signals/SelectedShippingMethodSignal.d.ts.map +1 -0
  540. package/signals/index.d.ts +8 -0
  541. package/signals/index.d.ts.map +1 -0
  542. package/tests/constants.d.ts +3 -0
  543. package/tests/constants.d.ts.map +1 -0
  544. package/tests/index.d.ts +2 -0
  545. package/tests/index.d.ts.map +1 -0
  546. package/tests/integration/utils/index.d.ts +3 -0
  547. package/tests/integration/utils/index.d.ts.map +1 -0
  548. package/tests/integration/utils/setup.d.ts +5 -0
  549. package/tests/integration/utils/setup.d.ts.map +1 -0
  550. package/tests/integration/utils/user-actions.d.ts +2 -0
  551. package/tests/integration/utils/user-actions.d.ts.map +1 -0
  552. package/tests/mocks/svg.d.ts +4 -0
  553. package/tests/mocks/svg.d.ts.map +1 -0
  554. package/tests/render.d.ts +4 -0
  555. package/tests/render.d.ts.map +1 -0
  556. package/tests/utils/expectError.d.ts +9 -0
  557. package/tests/utils/expectError.d.ts.map +1 -0
  558. package/tests/utils/index.d.ts +3 -0
  559. package/tests/utils/index.d.ts.map +1 -0
  560. package/tests/utils/mockEvents.d.ts +5 -0
  561. package/tests/utils/mockEvents.d.ts.map +1 -0
  562. package/types/CompleteCheckoutContextSchemas.d.ts +103 -0
  563. package/types/CompleteCheckoutContextSchemas.d.ts.map +1 -0
  564. package/types/EventPayloads.d.ts +18 -0
  565. package/types/EventPayloads.d.ts.map +1 -0
  566. package/utils/autocompleteFieldCodes/autocompleteFieldCodes.d.ts +18 -0
  567. package/utils/autocompleteFieldCodes/autocompleteFieldCodes.d.ts.map +1 -0
  568. package/utils/autocompleteFieldCodes/index.d.ts +2 -0
  569. package/utils/autocompleteFieldCodes/index.d.ts.map +1 -0
  570. package/utils/getMultilineValues/getMultilineValues.d.ts +3 -0
  571. package/utils/getMultilineValues/getMultilineValues.d.ts.map +1 -0
  572. package/utils/getMultilineValues/index.d.ts +2 -0
  573. package/utils/getMultilineValues/index.d.ts.map +1 -0
  574. package/utils/index.d.ts +8 -0
  575. package/utils/index.d.ts.map +1 -0
  576. package/utils/isEmpty/index.d.ts +2 -0
  577. package/utils/isEmpty/index.d.ts.map +1 -0
  578. package/utils/isEmpty/isEmpty.d.ts +2 -0
  579. package/utils/isEmpty/isEmpty.d.ts.map +1 -0
  580. package/utils/isNullish/index.d.ts +2 -0
  581. package/utils/isNullish/index.d.ts.map +1 -0
  582. package/utils/isNullish/isNullish.d.ts +2 -0
  583. package/utils/isNullish/isNullish.d.ts.map +1 -0
  584. package/utils/parseRegionId/index.d.ts +2 -0
  585. package/utils/parseRegionId/index.d.ts.map +1 -0
  586. package/utils/parseRegionId/parseRegionId.d.ts +2 -0
  587. package/utils/parseRegionId/parseRegionId.d.ts.map +1 -0
  588. package/utils/processFormFields/index.d.ts +2 -0
  589. package/utils/processFormFields/index.d.ts.map +1 -0
  590. package/utils/processFormFields/processFormFields.d.ts +21 -0
  591. package/utils/processFormFields/processFormFields.d.ts.map +1 -0
  592. package/utils/refetchEstimatedShippingMethods/index.d.ts +2 -0
  593. package/utils/refetchEstimatedShippingMethods/index.d.ts.map +1 -0
  594. package/utils/refetchEstimatedShippingMethods/refetchEstimatedShippingMethods.d.ts +4 -0
  595. package/utils/refetchEstimatedShippingMethods/refetchEstimatedShippingMethods.d.ts.map +1 -0
  596. package/utils/shippingMethods/index.d.ts +2 -0
  597. package/utils/shippingMethods/index.d.ts.map +1 -0
  598. package/utils/shippingMethods/isEqual.d.ts +4 -0
  599. package/utils/shippingMethods/isEqual.d.ts.map +1 -0
  600. package/utils/storefrontEvents/completeCheckout.d.ts +31 -0
  601. package/utils/storefrontEvents/completeCheckout.d.ts.map +1 -0
  602. package/utils/storefrontEvents/fixtures.d.ts +44 -0
  603. package/utils/storefrontEvents/fixtures.d.ts.map +1 -0
  604. package/utils/storefrontEvents/index.d.ts +2 -0
  605. package/utils/storefrontEvents/index.d.ts.map +1 -0
  606. package/chunks/OrderSummary.js.map +0 -1
  607. package/chunks/PaymentMethods.js +0 -2
  608. package/chunks/PaymentMethods.js.map +0 -1
@@ -0,0 +1,2 @@
1
+ export declare const setPaymentMethodMutation: string;
2
+ //# sourceMappingURL=setPaymentMethod.graphql.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setPaymentMethod.graphql.d.ts","sourceRoot":"","sources":["../../../../src/api/setPaymentMethod/graphql/setPaymentMethod.graphql.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,wBAAwB,QAcpC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './setPaymentMethod';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/setPaymentMethod/index.ts"],"names":[],"mappings":"AAAA,cAAc,kDAAkD,CAAC"}
@@ -0,0 +1,5 @@
1
+ export declare const setPaymentMethod: ({ cartId, paymentMethod, }: {
2
+ cartId: string;
3
+ paymentMethod: string;
4
+ }) => Promise<import('../../data/models/cart').Cart | null | undefined>;
5
+ //# sourceMappingURL=setPaymentMethod.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setPaymentMethod.d.ts","sourceRoot":"","sources":["../../../src/api/setPaymentMethod/setPaymentMethod.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,gBAAgB;YAInB,MAAM;mBACC,MAAM;uEAatB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const setShippingAddressMutation: string;
2
+ //# sourceMappingURL=setShippingAddress.graphql.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setShippingAddress.graphql.d.ts","sourceRoot":"","sources":["../../../../src/api/setShippingAddress/graphql/setShippingAddress.graphql.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,0BAA0B,QActC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './setShippingAddress';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/setShippingAddress/index.ts"],"names":[],"mappings":"AAAA,cAAc,sDAAsD,CAAC"}
@@ -0,0 +1,31 @@
1
+ export declare const STANDARD_ATTRIBUTES: string[];
2
+ export interface AddressInput {
3
+ city: string;
4
+ company?: string;
5
+ country_code: string;
6
+ custom_attributes?: {
7
+ attribute_code: string;
8
+ value?: string;
9
+ selected_options?: {
10
+ uid: string;
11
+ value: string;
12
+ }[];
13
+ }[];
14
+ firstname: string;
15
+ lastname: string;
16
+ postcode?: string;
17
+ region?: string;
18
+ region_id?: number;
19
+ save_in_address_book?: boolean;
20
+ street: string[];
21
+ telephone?: string;
22
+ vat_id?: string;
23
+ }
24
+ export interface setShippingAddressParams {
25
+ cartId: string;
26
+ address: AddressInput;
27
+ signal?: AbortSignal;
28
+ }
29
+ export declare const prepareAddress: (formFields: Record<string, any>) => AddressInput;
30
+ export declare const setShippingAddress: ({ signal, cartId, address, }: setShippingAddressParams) => Promise<import('../../data/models').Cart | null | undefined>;
31
+ //# sourceMappingURL=setShippingAddress.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setShippingAddress.d.ts","sourceRoot":"","sources":["../../../src/api/setShippingAddress/setShippingAddress.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,mBAAmB,UAa/B,CAAC;AAEF,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE;QAClB,cAAc,EAAE,MAAM,CAAC;QACvB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,gBAAgB,CAAC,EAAE;YAAE,GAAG,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,EAAE,CAAC;KACrD,EAAE,CAAC;IACJ,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,YAAY,CAAC;IACtB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAcD,eAAO,MAAM,cAAc,eAAgB,OAAO,MAAM,EAAE,GAAG,CAAC,iBA+C7D,CAAC;AAEF,eAAO,MAAM,kBAAkB,iCAI5B,wBAAwB,sEAS1B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const setShippingMethodsMutation: string;
2
+ //# sourceMappingURL=setShippingMethodsOnCart.graphql.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setShippingMethodsOnCart.graphql.d.ts","sourceRoot":"","sources":["../../../../src/api/setShippingMethods/graphql/setShippingMethodsOnCart.graphql.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,0BAA0B,QAiBtC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './setShippingMethods';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/setShippingMethods/index.ts"],"names":[],"mappings":"AAAA,cAAc,sDAAsD,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { SetShippingMethodsOnCartInput } from '../../__generated__/types';
2
+
3
+ export type SetShippingMethodsOnCartInputs = {
4
+ cartId: string;
5
+ shippingMethods: SetShippingMethodsOnCartInput['shipping_methods'];
6
+ };
7
+ export declare const setShippingMethodsOnCart: ({ cartId, shippingMethods, }: SetShippingMethodsOnCartInputs) => Promise<import('../../data/models/cart').Cart | null | undefined>;
8
+ //# sourceMappingURL=setShippingMethods.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setShippingMethods.d.ts","sourceRoot":"","sources":["../../../src/api/setShippingMethods/setShippingMethods.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAAE,MAAM,gCAAgC,CAAC;AAM/E,MAAM,MAAM,8BAA8B,GAAG;IAC3C,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,6BAA6B,CAAC,kBAAkB,CAAC,CAAC;CACpE,CAAC;AAEF,eAAO,MAAM,wBAAwB,iCAGlC,8BAA8B,sEAWhC,CAAC"}
@@ -0,0 +1,41 @@
1
+ import { FetchOptions } from '@adobe/fetch-graphql';
2
+
3
+ declare const signalTypes: {
4
+ cart: import('@preact/signals-core').Signal<{
5
+ pending: boolean;
6
+ data?: import('../../data/models/cart').Cart | null | undefined;
7
+ }>;
8
+ regions: import('@preact/signals-core').Signal<{
9
+ addressType?: import('../../data/models/address-form-fields').AddressFormType | undefined;
10
+ country?: string | undefined;
11
+ selectedRegion?: string | undefined;
12
+ selectedRegionId?: string | undefined;
13
+ pending: boolean;
14
+ data?: import('../../data/models/region').Region[] | undefined;
15
+ }>;
16
+ estimateShippingMethods: import('@preact/signals-core').Signal<{
17
+ pending: boolean;
18
+ data?: import('../../data/models/shipping-method').ShippingMethod[] | undefined;
19
+ }>;
20
+ customer: import('@preact/signals-core').Signal<{
21
+ pending: boolean;
22
+ data?: import('../../data/models/customer').Customer | null | undefined;
23
+ }>;
24
+ };
25
+ type SignalTypesType = typeof signalTypes;
26
+ type SignalTypesKeys = keyof SignalTypesType;
27
+ type SignalDataMap = {
28
+ [K in SignalTypesKeys]: SignalTypesType[K]['value']['data'];
29
+ };
30
+ type DispatchApiCallParams<T extends SignalTypesKeys> = {
31
+ type: 'query' | 'mutation';
32
+ query: string;
33
+ options?: FetchOptions;
34
+ path: string;
35
+ signalType: T;
36
+ transformer?: (data: any) => SignalDataMap[T];
37
+ };
38
+ export declare function getValueAtPath(obj: any, path: string): any;
39
+ declare function dispatchApiCall<T extends SignalTypesKeys>(params: DispatchApiCallParams<T>): Promise<SignalDataMap[T]>;
40
+ export { dispatchApiCall };
41
+ //# sourceMappingURL=dispatchApiCall.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dispatchApiCall.d.ts","sourceRoot":"","sources":["../../../src/api/utils/dispatchApiCall.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,YAAY,EAAmB,MAAM,sBAAsB,CAAC;AAIrE,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;CAKhB,CAAC;AAEF,KAAK,eAAe,GAAG,OAAO,WAAW,CAAC;AAC1C,KAAK,eAAe,GAAG,MAAM,eAAe,CAAC;AAC7C,KAAK,aAAa,GAAG;KAClB,CAAC,IAAI,eAAe,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;CAC5D,CAAC;AACF,KAAK,qBAAqB,CAAC,CAAC,SAAS,eAAe,IAAI;IACtD,IAAI,EAAE,OAAO,GAAG,UAAU,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,CAAC,CAAC;IACd,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,aAAa,CAAC,CAAC,CAAC,CAAC;CAC/C,CAAC;AAEF,wBAAgB,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,OAOpD;AASD,iBAAe,eAAe,CAAC,CAAC,SAAS,eAAe,EACtD,MAAM,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAC/B,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAiD3B;AAED,OAAO,EAAE,eAAe,EAAE,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function enqueueRequest<T>(requestFn: () => Promise<T>): Promise<T>;
2
+ //# sourceMappingURL=enqueueRequest.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enqueueRequest.d.ts","sourceRoot":"","sources":["../../../src/api/utils/enqueueRequest.ts"],"names":[],"mappings":"AAEA,wBAAgB,cAAc,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAiBzE"}
@@ -0,0 +1,18 @@
1
+ import { FetchQueryError } from '@adobe/fetch-graphql';
2
+
3
+ type ErrorPath = (string | number)[];
4
+ export type ErrorWithPath = FetchQueryError[number] & {
5
+ path?: ErrorPath;
6
+ };
7
+ /**
8
+ * Filters out errors with known paths from a list of errors generated by a GraphQL query.
9
+ *
10
+ * Known issue: The query does not differentiate between physical and virtual gift cards, leading
11
+ * to errors for physical ones as they don't have 'sender_email' and 'recipient_email' properties.
12
+ *
13
+ * @param {ErrorWithPath[]} errors - Array of errors to be filtered.
14
+ * @return {ErrorWithPath[]} Uncontrolled (unexpected) errors not matching predefined paths.
15
+ */
16
+ export declare function filterControlledErrors(errors: ErrorWithPath[]): ErrorWithPath[];
17
+ export {};
18
+ //# sourceMappingURL=filterControlledErrors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterControlledErrors.d.ts","sourceRoot":"","sources":["../../../src/api/utils/filterControlledErrors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,KAAK,SAAS,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;AAErC,MAAM,MAAM,aAAa,GAAG,eAAe,CAAC,MAAM,CAAC,GAAG;IACpD,IAAI,CAAC,EAAE,SAAS,CAAC;CAClB,CAAC;AAIF;;;;;;;;GAQG;AAEH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,aAAa,EAAE,mBAQ7D"}
package/api.d.ts ADDED
@@ -0,0 +1 @@
1
+ export * from './api/index'
@@ -1,2 +1,2 @@
1
- import"@dropins/tools/event-bus.js";import{j as m,i as _,u as B,l as I}from"./getStoreConfig.js";import{s as C}from"./setBillingAddress.js";import{classes as x}from"@dropins/tools/lib.js";import{Checkbox as y,Skeleton as N,SkeletonRow as j}from"@dropins/tools/components.js";/* empty css */import{jsx as a}from"@dropins/tools/preact-jsx-runtime.js";import{useText as z}from"@dropins/tools/i18n.js";import{useState as T,useEffect as k}from"@dropins/tools/preact-compat.js";const U=({className:r,isInitialized:t=!0,checked:n=!0,...s})=>{const e=z({title:"Checkout.BillToShippingAddress.title"});return t?a("div",{className:x(["checkout-bill-to-shipping-address",r]),children:a(y,{"data-testid":"bill-to-shipping-checkbox",className:"checkout-bill-to-shipping-address__checkbox",checked:n,name:"checkout-bill-to-shipping-address__checkbox",label:e.title,...s})}):a(w,{})},w=()=>a(N,{className:"bill-to-shipping-address__skeleton",children:a(j,{variant:"row",size:"small"})}),v="is_bill_to_shipping_address";function F(r,t,n){const s=r[n],e=t[n];return s===void 0&&e===void 0||s===null&&e===null?!0:typeof s=="object"&&typeof e=="object"?JSON.stringify(s)===JSON.stringify(e):s===e}function S(r,t,n){return!t&&!n?!0:!t||!n?!1:r.every(s=>{const e=s.code;return F(t,n,e)})}const H=({isBillToShipping:r})=>{var A;const[t,n]=T(!1),{fields:s}=B(),e=_.value.data,p=(e==null?void 0:e.id)||"",c=!!e,o=e==null?void 0:e.billingAddress,d=(A=e==null?void 0:e.shippingAddresses)==null?void 0:A[0],u=!!d,h=!!(o&&d),i=I.value.data,g=i==null?void 0:i.defaultShippingAddress,f=i==null?void 0:i.defaultBillingAddress,b=!!(g&&f);return k(()=>{if(t)return;const l=localStorage.getItem(v);l&&(n(!0),r.value={checked:l==="true",setByUser:!1})},[t,r]),k(()=>{if(!s||!c||h||!b)return;n(!0);const l=S(s,f,g);r.value={checked:l,setByUser:!1}},[f,g,s,c,h,b,r,t]),k(()=>{if(t||!s||!c)return;n(!0);const l=S(s,o,d);r.value={checked:o?l:r.value.checked,setByUser:!1}},[o,s,c,r,t,d]),{cartId:p,isInitialized:t,hasShippingAddress:u}},Y=({children:r,...t})=>{const n=m.value.checked,{cartId:s,hasShippingAddress:e,isInitialized:p}=H({isBillToShipping:m});return a(U,{...t,checked:n,isInitialized:p,onChange:o=>{const u=o.target.checked;if(m.value={checked:u,setByUser:!0},localStorage.setItem(v,u.toString()),!p||!u||!e)return;const h=new AbortController;return C({signal:h.signal,cartId:s,input:{same_as_shipping:!0}}).catch(i=>{console.error(i)}),()=>{h.abort()}},disabled:_.value.pending})};export{Y as B,v as a,S as c};
1
+ import"@dropins/tools/event-bus.js";import{j as h,i as f,u as k}from"./getStoreConfig.js";import{s as b}from"./setBillingAddress.js";import{classes as S}from"@dropins/tools/lib.js";import{Checkbox as _,Skeleton as A,SkeletonRow as v}from"@dropins/tools/components.js";/* empty css */import{jsx as o}from"@dropins/tools/preact-jsx-runtime.js";import{useText as I}from"@dropins/tools/i18n.js";import{useState as B,useEffect as g}from"@dropins/tools/preact-compat.js";const x=({className:r,isInitialized:s=!0,checked:i=!0,...t})=>{const e=I({title:"Checkout.BillToShippingAddress.title"});return s?o("div",{className:S(["checkout-bill-to-shipping-address",r]),children:o(_,{"data-testid":"bill-to-shipping-checkbox",className:"checkout-bill-to-shipping-address__checkbox",checked:i,name:"checkout-bill-to-shipping-address__checkbox",label:e.title,...t})}):o(C,{})},C=()=>o(A,{className:"bill-to-shipping-address__skeleton",children:o(v,{variant:"row",size:"small"})}),m="is_bill_to_shipping_address";function y(r,s,i){const t=r[i],e=s[i];return t===void 0&&e===void 0||t===null&&e===null?!0:typeof t=="object"&&typeof e=="object"?JSON.stringify(t)===JSON.stringify(e):t===e}function N(r,s,i){return!s&&!i?!0:!s||!i?!1:r.every(t=>{const e=t.code;return y(s,i,e)})}const T=({isBillToShipping:r})=>{var a;const[s,i]=B(!1),{fields:t}=k(),e=f.value.data,d=(e==null?void 0:e.id)||"",p=!!e,l=e==null?void 0:e.billingAddress,u=(a=e==null?void 0:e.shippingAddresses)==null?void 0:a[0],c=!!u;return g(()=>{if(s)return;const n=localStorage.getItem(m);n&&(i(!0),r.value={checked:n==="true",setByUser:!1})},[s,r]),g(()=>{if(s||!t||!p)return;i(!0);const n=N(t,l,u);r.value={checked:l?n:r.value.checked,setByUser:!1}},[l,t,p,r,s,u]),{cartId:d,isInitialized:s,hasShippingAddress:c}},L=({children:r,...s})=>{const i=h.value.checked,{cartId:t,hasShippingAddress:e,isInitialized:d}=T({isBillToShipping:h});return o(x,{...s,checked:i,isInitialized:d,onChange:l=>{const c=l.target.checked;if(h.value={checked:c,setByUser:!0},localStorage.setItem(m,c.toString()),!d||!c||!e)return;const a=new AbortController;return b({signal:a.signal,cartId:t,input:{same_as_shipping:!0}}).catch(n=>{console.error(n)}),()=>{a.abort()}},disabled:f.value.pending})};export{L as B,m as a,N as c};
2
2
  //# sourceMappingURL=BillToShippingAddress2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BillToShippingAddress2.js","sources":["../../src/components/BillToShippingAddress/BillToShippingAddress.tsx","../../src/components/BillToShippingAddress/BillToShippingAddressSkeleton.tsx","../../src/containers/BillToShippingAddress/constants.ts","../../src/containers/BillToShippingAddress/BillToShippingAddress.tsx"],"sourcesContent":["import { FunctionComponent } from 'preact';\nimport { classes } from '@adobe/elsie/lib';\nimport { Checkbox, CheckboxProps } from '@adobe/elsie/components';\nimport { BillToShippingAddressSkeleton } from '@/checkout/components/BillToShippingAddress';\nimport '@/checkout/components/BillToShippingAddress/BillToShippingAddress.css';\nimport { useText } from '@adobe/elsie/i18n';\n\nexport interface BillToShippingAddressProps\n extends Omit<CheckboxProps, 'name' | 'label'> {\n isInitialized?: boolean;\n}\n\nexport const BillToShippingAddress: FunctionComponent<\n BillToShippingAddressProps\n> = ({ className, isInitialized = true, checked = true, ...props }) => {\n const translations = useText({\n title: 'Checkout.BillToShippingAddress.title',\n });\n\n if (!isInitialized) return <BillToShippingAddressSkeleton />;\n\n return (\n <div className={classes(['checkout-bill-to-shipping-address', className])}>\n <Checkbox\n data-testid=\"bill-to-shipping-checkbox\"\n className=\"checkout-bill-to-shipping-address__checkbox\"\n checked={checked}\n name=\"checkout-bill-to-shipping-address__checkbox\"\n label={translations.title}\n {...props}\n />\n </div>\n );\n};\n","import { FunctionComponent } from 'preact';\nimport { Skeleton, SkeletonRow } from '@adobe/elsie/components';\n\nexport const BillToShippingAddressSkeleton: FunctionComponent = () => {\n return (\n <Skeleton className=\"bill-to-shipping-address__skeleton\">\n <SkeletonRow variant=\"row\" size=\"small\" />\n </Skeleton>\n );\n};\n","export const BILL_TO_SHIPPING_KEY = 'is_bill_to_shipping_address';\n","import { setBillingAddress } from '@/checkout/api';\nimport { BillToShippingAddress as BillToShippingAddressComponent } from '@/checkout/components/BillToShippingAddress';\nimport {\n IsBillToShipping,\n cartSignal,\n customerSignal,\n isBillToShippingSignal,\n} from '@/checkout/signals';\nimport { Container } from '@adobe/elsie/lib';\nimport { Signal } from '@preact/signals-core';\nimport { useEffect, useState } from 'preact/compat';\nimport { BILL_TO_SHIPPING_KEY } from './constants';\nimport { useAddressFormFields } from '@/checkout/context/address-form-fields';\nimport { CheckboxProps } from '@adobe/elsie/components';\nimport {\n ShippingAddress,\n BillingAddress,\n} from '@/checkout/data/models/address';\nimport { AddressFormField } from '@/checkout/data/models/address-form-fields';\n\ntype Address = BillingAddress | ShippingAddress[];\n\nfunction compareFields(first: Address, second: Address, field: keyof Address) {\n const firstValue = first[field];\n const secondValue = second[field];\n\n if (firstValue === undefined && secondValue === undefined) return true;\n if (firstValue === null && secondValue === null) return true;\n\n if (typeof firstValue === 'object' && typeof secondValue === 'object') {\n return JSON.stringify(firstValue) === JSON.stringify(secondValue);\n }\n\n return firstValue === secondValue;\n}\n\nexport function compareAddresses(\n addressFormFields: AddressFormField[],\n first: BillingAddress | undefined,\n second: ShippingAddress | undefined\n) {\n if (!first && !second) return true;\n if (!first || !second) return false;\n\n return addressFormFields.every((field) => {\n const fieldCode = field.code as keyof Address;\n return compareFields(first, second, fieldCode);\n });\n}\n\nconst useInitialState = ({\n isBillToShipping,\n}: {\n isBillToShipping: Signal<IsBillToShipping>;\n}) => {\n const [isInitialized, setIsInitialized] = useState(false);\n\n const { fields } = useAddressFormFields();\n\n const cart = cartSignal.value.data;\n const cartId = cart?.id || '';\n const hasCart = !!cart;\n const billingAddress = cart?.billingAddress;\n const shippingAddress = cart?.shippingAddresses?.[0];\n const hasShippingAddress = Boolean(shippingAddress);\n const hasCartAddresses = Boolean(billingAddress && shippingAddress);\n\n const customer = customerSignal.value.data;\n const customerShippingAddress = customer?.defaultShippingAddress;\n const customerBillingAddress = customer?.defaultBillingAddress;\n const hasCustomerAddresses = Boolean(\n customerShippingAddress && customerBillingAddress\n );\n\n // Sync state with local storage\n useEffect(() => {\n if (isInitialized) return;\n\n const localBillToShipping = localStorage.getItem(BILL_TO_SHIPPING_KEY);\n if (!localBillToShipping) return;\n\n setIsInitialized(true);\n\n isBillToShipping.value = {\n checked: localBillToShipping === 'true',\n setByUser: false,\n };\n }, [isInitialized, isBillToShipping]);\n\n // Sync state with the customer\n useEffect(() => {\n if (!fields || !hasCart) return;\n if (hasCartAddresses || !hasCustomerAddresses) return;\n\n setIsInitialized(true);\n\n const checked = compareAddresses(\n fields,\n customerBillingAddress,\n customerShippingAddress\n );\n\n isBillToShipping.value = { checked, setByUser: false };\n }, [\n customerBillingAddress,\n customerShippingAddress,\n fields,\n hasCart,\n hasCartAddresses,\n hasCustomerAddresses,\n isBillToShipping,\n isInitialized,\n ]);\n\n // Sync state with the cart\n useEffect(() => {\n if (isInitialized || !fields || !hasCart) return;\n\n setIsInitialized(true);\n\n const checked = compareAddresses(fields, billingAddress, shippingAddress);\n\n isBillToShipping.value = {\n checked: billingAddress ? checked : isBillToShipping.value.checked,\n setByUser: false,\n };\n }, [\n billingAddress,\n fields,\n hasCart,\n isBillToShipping,\n isInitialized,\n shippingAddress,\n ]);\n\n return { cartId, isInitialized, hasShippingAddress };\n};\n\nexport interface BillToShippingAddressProps\n extends Omit<CheckboxProps, 'name' | 'label'> {}\n\nexport const BillToShippingAddress: Container<BillToShippingAddressProps> = ({\n children,\n ...props\n}) => {\n const isBillToShipping = isBillToShippingSignal.value.checked;\n\n const { cartId, hasShippingAddress, isInitialized } = useInitialState({\n isBillToShipping: isBillToShippingSignal,\n });\n\n const onChangeHandler = (event: Event) => {\n const checkbox = event.target as HTMLInputElement;\n const isChecked = checkbox.checked;\n\n isBillToShippingSignal.value = { checked: isChecked, setByUser: true };\n localStorage.setItem(BILL_TO_SHIPPING_KEY, isChecked.toString());\n\n if (!isInitialized || !isChecked || !hasShippingAddress) return;\n\n const controller = new AbortController();\n\n setBillingAddress({\n signal: controller.signal,\n cartId,\n input: { same_as_shipping: true },\n }).catch((error) => {\n console.error(error);\n });\n\n return () => {\n controller.abort();\n };\n };\n\n return (\n <BillToShippingAddressComponent\n {...props}\n checked={isBillToShipping}\n isInitialized={isInitialized}\n onChange={onChangeHandler}\n disabled={cartSignal.value.pending}\n />\n );\n};\n"],"names":["BillToShippingAddress","className","isInitialized","checked","props","translations","useText","title","_jsx","classes","children","Checkbox","name","label","BillToShippingAddressSkeleton","Skeleton","SkeletonRow","variant","size","BILL_TO_SHIPPING_KEY","compareFields","first","second","field","firstValue","secondValue","undefined","JSON","stringify","compareAddresses","addressFormFields","every","fieldCode","code","useInitialState","isBillToShipping","setIsInitialized","useState","fields","useAddressFormFields","cart","cartSignal","value","data","cartId","id","hasCart","billingAddress","shippingAddress","shippingAddresses","hasShippingAddress","Boolean","hasCartAddresses","customer","customerSignal","customerShippingAddress","defaultShippingAddress","customerBillingAddress","defaultBillingAddress","hasCustomerAddresses","useEffect","localBillToShipping","localStorage","getItem","setByUser","isBillToShippingSignal","BillToShippingAddressComponent","onChange","event","isChecked","target","setItem","toString","controller","AbortController","setBillingAddress","signal","input","same_as_shipping","catch","error","console","abort","disabled","pending"],"mappings":"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"}
1
+ {"version":3,"file":"BillToShippingAddress2.js","sources":["../../src/components/BillToShippingAddress/BillToShippingAddress.tsx","../../src/components/BillToShippingAddress/BillToShippingAddressSkeleton.tsx","../../src/containers/BillToShippingAddress/constants.ts","../../src/containers/BillToShippingAddress/BillToShippingAddress.tsx"],"sourcesContent":["import { FunctionComponent } from 'preact';\nimport { classes } from '@adobe/elsie/lib';\nimport { Checkbox, CheckboxProps } from '@adobe/elsie/components';\nimport { BillToShippingAddressSkeleton } from '@/checkout/components/BillToShippingAddress';\nimport '@/checkout/components/BillToShippingAddress/BillToShippingAddress.css';\nimport { useText } from '@adobe/elsie/i18n';\n\nexport interface BillToShippingAddressProps\n extends Omit<CheckboxProps, 'name' | 'label'> {\n isInitialized?: boolean;\n}\n\nexport const BillToShippingAddress: FunctionComponent<\n BillToShippingAddressProps\n> = ({ className, isInitialized = true, checked = true, ...props }) => {\n const translations = useText({\n title: 'Checkout.BillToShippingAddress.title',\n });\n\n if (!isInitialized) return <BillToShippingAddressSkeleton />;\n\n return (\n <div className={classes(['checkout-bill-to-shipping-address', className])}>\n <Checkbox\n data-testid=\"bill-to-shipping-checkbox\"\n className=\"checkout-bill-to-shipping-address__checkbox\"\n checked={checked}\n name=\"checkout-bill-to-shipping-address__checkbox\"\n label={translations.title}\n {...props}\n />\n </div>\n );\n};\n","import { FunctionComponent } from 'preact';\nimport { Skeleton, SkeletonRow } from '@adobe/elsie/components';\n\nexport const BillToShippingAddressSkeleton: FunctionComponent = () => {\n return (\n <Skeleton className=\"bill-to-shipping-address__skeleton\">\n <SkeletonRow variant=\"row\" size=\"small\" />\n </Skeleton>\n );\n};\n","export const BILL_TO_SHIPPING_KEY = 'is_bill_to_shipping_address';\n","import { setBillingAddress } from '@/checkout/api';\nimport { BillToShippingAddress as BillToShippingAddressComponent } from '@/checkout/components/BillToShippingAddress';\nimport {\n IsBillToShipping,\n cartSignal,\n isBillToShippingSignal,\n} from '@/checkout/signals';\nimport { Container } from '@adobe/elsie/lib';\nimport { Signal } from '@preact/signals-core';\nimport { useEffect, useState } from 'preact/compat';\nimport { BILL_TO_SHIPPING_KEY } from './constants';\nimport { useAddressFormFields } from '@/checkout/context/address-form-fields';\nimport { CheckboxProps } from '@adobe/elsie/components';\nimport {\n ShippingAddress,\n BillingAddress,\n} from '@/checkout/data/models/address';\nimport { AddressFormField } from '@/checkout/data/models/address-form-fields';\n\ntype Address = BillingAddress | ShippingAddress[];\n\nfunction compareFields(first: Address, second: Address, field: keyof Address) {\n const firstValue = first[field];\n const secondValue = second[field];\n\n if (firstValue === undefined && secondValue === undefined) return true;\n if (firstValue === null && secondValue === null) return true;\n\n if (typeof firstValue === 'object' && typeof secondValue === 'object') {\n return JSON.stringify(firstValue) === JSON.stringify(secondValue);\n }\n\n return firstValue === secondValue;\n}\n\nexport function compareAddresses(\n addressFormFields: AddressFormField[],\n first: BillingAddress | undefined,\n second: ShippingAddress | undefined\n) {\n if (!first && !second) return true;\n if (!first || !second) return false;\n\n return addressFormFields.every((field) => {\n const fieldCode = field.code as keyof Address;\n return compareFields(first, second, fieldCode);\n });\n}\n\nconst useInitialState = ({\n isBillToShipping,\n}: {\n isBillToShipping: Signal<IsBillToShipping>;\n}) => {\n const [isInitialized, setIsInitialized] = useState(false);\n\n const { fields } = useAddressFormFields();\n\n const cart = cartSignal.value.data;\n const cartId = cart?.id || '';\n const hasCart = !!cart;\n const billingAddress = cart?.billingAddress;\n const shippingAddress = cart?.shippingAddresses?.[0];\n const hasShippingAddress = Boolean(shippingAddress);\n\n // Sync state with local storage\n useEffect(() => {\n if (isInitialized) return;\n\n const localBillToShipping = localStorage.getItem(BILL_TO_SHIPPING_KEY);\n if (!localBillToShipping) return;\n\n setIsInitialized(true);\n\n isBillToShipping.value = {\n checked: localBillToShipping === 'true',\n setByUser: false,\n };\n }, [isInitialized, isBillToShipping]);\n\n // Sync state with the cart\n useEffect(() => {\n if (isInitialized || !fields || !hasCart) return;\n\n setIsInitialized(true);\n\n const checked = compareAddresses(fields, billingAddress, shippingAddress);\n\n isBillToShipping.value = {\n checked: billingAddress ? checked : isBillToShipping.value.checked,\n setByUser: false,\n };\n }, [\n billingAddress,\n fields,\n hasCart,\n isBillToShipping,\n isInitialized,\n shippingAddress,\n ]);\n\n return { cartId, isInitialized, hasShippingAddress };\n};\n\nexport interface BillToShippingAddressProps\n extends Omit<CheckboxProps, 'name' | 'label'> {}\n\nexport const BillToShippingAddress: Container<BillToShippingAddressProps> = ({\n children,\n ...props\n}) => {\n const isBillToShipping = isBillToShippingSignal.value.checked;\n\n const { cartId, hasShippingAddress, isInitialized } = useInitialState({\n isBillToShipping: isBillToShippingSignal,\n });\n\n const onChangeHandler = (event: Event) => {\n const checkbox = event.target as HTMLInputElement;\n const isChecked = checkbox.checked;\n\n isBillToShippingSignal.value = { checked: isChecked, setByUser: true };\n localStorage.setItem(BILL_TO_SHIPPING_KEY, isChecked.toString());\n\n if (!isInitialized || !isChecked || !hasShippingAddress) return;\n\n const controller = new AbortController();\n\n setBillingAddress({\n signal: controller.signal,\n cartId,\n input: { same_as_shipping: true },\n }).catch((error) => {\n console.error(error);\n });\n\n return () => {\n controller.abort();\n };\n };\n\n return (\n <BillToShippingAddressComponent\n {...props}\n checked={isBillToShipping}\n isInitialized={isInitialized}\n onChange={onChangeHandler}\n disabled={cartSignal.value.pending}\n />\n );\n};\n"],"names":["BillToShippingAddress","className","isInitialized","checked","props","translations","useText","title","_jsx","classes","children","Checkbox","name","label","BillToShippingAddressSkeleton","Skeleton","SkeletonRow","variant","size","BILL_TO_SHIPPING_KEY","compareFields","first","second","field","firstValue","secondValue","undefined","JSON","stringify","compareAddresses","addressFormFields","every","fieldCode","code","useInitialState","isBillToShipping","setIsInitialized","useState","fields","useAddressFormFields","cart","cartSignal","value","data","cartId","id","hasCart","billingAddress","shippingAddress","shippingAddresses","hasShippingAddress","Boolean","useEffect","localBillToShipping","localStorage","getItem","setByUser","isBillToShippingSignal","BillToShippingAddressComponent","onChange","event","isChecked","target","setItem","toString","controller","AbortController","setBillingAddress","signal","input","same_as_shipping","catch","error","console","abort","disabled","pending"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import*as t from"@dropins/tools/preact-compat.js";import{useState as m,useEffect as f}from"@dropins/tools/preact-compat.js";import{events as u}from"@dropins/tools/event-bus.js";import{AlertBanner as a,Icon as g}from"@dropins/tools/components.js";import{jsx as n}from"@dropins/tools/preact-jsx-runtime.js";import{useText as p}from"@dropins/tools/i18n.js";const h=r=>t.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...r},t.createElement("path",{vectorEffect:"non-scaling-stroke",fillRule:"evenodd",clipRule:"evenodd",d:"M1 20.8953L12.1922 1.5L23.395 20.8953H1ZM13.0278 13.9638L13.25 10.0377V9H11.25V10.0377L11.4722 13.9638H13.0278ZM11.2994 16V17.7509H13.2253V16H11.2994Z",fill:"currentColor"})),x=r=>{const[i,s]=m(!1);f(()=>{const o=u.on("error",e=>{(e==null?void 0:e.source)==="checkout"&&(e==null?void 0:e.type)==="network"&&s(!0)});return()=>{o==null||o.off()}},[]);const l=()=>{s(!1)},c=p({message:"Checkout.ErrorBanner.genericMessage",label:"Checkout.ErrorBanner.dismissLabel"});return i?n(a,{...r,"data-testid":"error-banner",icon:n(g,{source:h}),message:n("span",{children:c.message}),onDismiss:l,variant:"warning"}):null};export{x as E};
1
+ import*as t from"@dropins/tools/preact-compat.js";import{useState as m,useEffect as f}from"@dropins/tools/preact-compat.js";import{events as u}from"@dropins/tools/event-bus.js";import{AlertBanner as a,Icon as g}from"@dropins/tools/components.js";import{jsx as o}from"@dropins/tools/preact-jsx-runtime.js";import{useText as p}from"@dropins/tools/i18n.js";const h=r=>t.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...r},t.createElement("path",{vectorEffect:"non-scaling-stroke",fillRule:"evenodd",clipRule:"evenodd",d:"M1 20.8953L12.1922 1.5L23.395 20.8953H1ZM13.0278 13.9638L13.25 10.0377V9H11.25V10.0377L11.4722 13.9638H13.0278ZM11.2994 16V17.7509H13.2253V16H11.2994Z",fill:"currentColor"})),x=r=>{const[c,s]=m(!1);f(()=>{const n=u.on("error",e=>{(e==null?void 0:e.source)==="checkout"&&(e==null?void 0:e.type)==="network"&&s(!0)});return()=>{n==null||n.off()}},[]);const i=()=>{s(!1)},l=p({message:"Checkout.ErrorBanner.genericMessage"});return c?o(a,{...r,className:"checkout__banner","data-testid":"error-banner",icon:o(g,{source:h}),message:o("span",{children:l.message}),onDismiss:i,variant:"warning"}):null};export{x as E};
2
2
  //# sourceMappingURL=ErrorBanner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ErrorBanner.js","sources":["../../node_modules/@adobe/elsie/src/icons/WarningFilled.svg","../../src/containers/ErrorBanner/ErrorBanner.tsx"],"sourcesContent":["import * as React from \"react\";\nconst SvgWarningFilled = (props) => /* @__PURE__ */ React.createElement(\"svg\", { width: 24, height: 24, viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M1 20.8953L12.1922 1.5L23.395 20.8953H1ZM13.0278 13.9638L13.25 10.0377V9H11.25V10.0377L11.4722 13.9638H13.0278ZM11.2994 16V17.7509H13.2253V16H11.2994Z\", fill: \"currentColor\" }));\nexport default SvgWarningFilled;\n","import { FunctionComponent, useEffect, useState } from 'preact/compat';\nimport { useText } from '@adobe/elsie/i18n';\nimport { events } from '@adobe/event-bus';\nimport { AlertBanner, AlertBannerProps, Icon } from '@adobe/elsie/components';\nimport { WarningFilled } from '@adobe/elsie/icons';\n\nexport const ErrorBanner: FunctionComponent<Partial<AlertBannerProps>> = (\n props\n) => {\n const [hasError, setHasError] = useState<boolean>(false);\n\n useEffect(() => {\n const subscription = events.on('error', (data) => {\n if (data?.source === 'checkout' && data?.type === 'network') {\n setHasError(true);\n }\n });\n return () => {\n subscription?.off();\n };\n }, []);\n\n const onDismiss = () => {\n setHasError(false);\n };\n\n const translations = useText({\n message: 'Checkout.ErrorBanner.genericMessage',\n label: 'Checkout.ErrorBanner.dismissLabel',\n });\n\n if (!hasError) return null;\n\n return (\n <AlertBanner\n {...props}\n data-testid=\"error-banner\"\n icon={<Icon source={WarningFilled} />}\n message={<span>{translations.message}</span>}\n onDismiss={onDismiss}\n variant=\"warning\"\n />\n );\n};\n"],"names":["SvgWarningFilled","props","React","ErrorBanner","hasError","setHasError","useState","useEffect","subscription","events","on","data","source","type","off","onDismiss","translations","useText","message","label","_jsx","AlertBanner","icon","Icon","WarningFilled","children","variant"],"mappings":"kWACA,MAAMA,EAAoBC,GAA0BC,EAAM,cAAc,MAAO,CAAE,MAAO,GAAI,OAAQ,GAAI,QAAS,YAAa,KAAM,OAAQ,MAAO,6BAA8B,GAAGD,CAAO,EAAkBC,EAAM,cAAc,OAAQ,CAAE,aAAc,qBAAsB,SAAU,UAAW,SAAU,UAAW,EAAG,yJAA0J,KAAM,cAAc,CAAE,CAAC,ECKheC,EAERF,GAAA,CACH,KAAM,CAACG,EAAUC,CAAW,EAAIC,EAAkB,EAAK,EAEvDC,EAAU,IAAM,CACd,MAAMC,EAAeC,EAAOC,GAAG,QAAmBC,GAAA,EAC5CA,GAAAA,YAAAA,EAAMC,UAAW,aAAcD,GAAAA,YAAAA,EAAME,QAAS,WAChDR,EAAY,EAAI,CAClB,CACD,EACD,MAAO,IAAM,CACXG,GAAAA,MAAAA,EAAcM,KAAI,CAEtB,EAAG,CAAE,CAAA,EAEL,MAAMC,EAAYA,IAAM,CACtBV,EAAY,EAAK,CAAA,EAGbW,EAAeC,EAAQ,CAC3BC,QAAS,sCACTC,MAAO,mCAAA,CACR,EAED,OAAKf,EAGHgB,EAACC,EAAW,CAAA,GACNpB,EACJ,cAAY,eACZqB,KAAMF,EAACG,EAAI,CAACX,OAAQY,CAAAA,CAAgB,EACpCN,QAASE,EAAA,OAAA,CAAAK,SAAOT,EAAaE,OAAAA,CAAc,EAC3CH,UAAAA,EACAW,QAAQ,SAAA,CACT,EAVmB,IAYxB","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"ErrorBanner.js","sources":["../../node_modules/@adobe/elsie/src/icons/WarningFilled.svg","../../src/containers/ErrorBanner/ErrorBanner.tsx"],"sourcesContent":["import * as React from \"react\";\nconst SvgWarningFilled = (props) => /* @__PURE__ */ React.createElement(\"svg\", { width: 24, height: 24, viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M1 20.8953L12.1922 1.5L23.395 20.8953H1ZM13.0278 13.9638L13.25 10.0377V9H11.25V10.0377L11.4722 13.9638H13.0278ZM11.2994 16V17.7509H13.2253V16H11.2994Z\", fill: \"currentColor\" }));\nexport default SvgWarningFilled;\n","import { FunctionComponent, useEffect, useState } from 'preact/compat';\nimport { useText } from '@adobe/elsie/i18n';\nimport { events } from '@adobe/event-bus';\nimport { AlertBanner, AlertBannerProps, Icon } from '@adobe/elsie/components';\nimport { WarningFilled } from '@adobe/elsie/icons';\n\nexport const ErrorBanner: FunctionComponent<Partial<AlertBannerProps>> = (\n props\n) => {\n const [hasError, setHasError] = useState<boolean>(false);\n\n useEffect(() => {\n const subscription = events.on('error', (data) => {\n if (data?.source === 'checkout' && data?.type === 'network') {\n setHasError(true);\n }\n });\n return () => {\n subscription?.off();\n };\n }, []);\n\n const onDismiss = () => {\n setHasError(false);\n };\n\n const translations = useText({\n message: 'Checkout.ErrorBanner.genericMessage',\n });\n\n if (!hasError) return null;\n\n return (\n <AlertBanner\n {...props}\n className=\"checkout__banner\"\n data-testid=\"error-banner\"\n icon={<Icon source={WarningFilled} />}\n message={<span>{translations.message}</span>}\n onDismiss={onDismiss}\n variant=\"warning\"\n />\n );\n};\n"],"names":["SvgWarningFilled","props","React","ErrorBanner","hasError","setHasError","useState","useEffect","subscription","events","on","data","source","type","off","onDismiss","translations","useText","message","_jsx","AlertBanner","className","icon","Icon","WarningFilled","children","variant"],"mappings":"kWACA,MAAMA,EAAoBC,GAA0BC,EAAM,cAAc,MAAO,CAAE,MAAO,GAAI,OAAQ,GAAI,QAAS,YAAa,KAAM,OAAQ,MAAO,6BAA8B,GAAGD,CAAO,EAAkBC,EAAM,cAAc,OAAQ,CAAE,aAAc,qBAAsB,SAAU,UAAW,SAAU,UAAW,EAAG,yJAA0J,KAAM,cAAc,CAAE,CAAC,ECKheC,EAERF,GAAA,CACH,KAAM,CAACG,EAAUC,CAAW,EAAIC,EAAkB,EAAK,EAEvDC,EAAU,IAAM,CACd,MAAMC,EAAeC,EAAOC,GAAG,QAAmBC,GAAA,EAC5CA,GAAAA,YAAAA,EAAMC,UAAW,aAAcD,GAAAA,YAAAA,EAAME,QAAS,WAChDR,EAAY,EAAI,CAClB,CACD,EACD,MAAO,IAAM,CACXG,GAAAA,MAAAA,EAAcM,KAAI,CAEtB,EAAG,CAAE,CAAA,EAEL,MAAMC,EAAYA,IAAM,CACtBV,EAAY,EAAK,CAAA,EAGbW,EAAeC,EAAQ,CAC3BC,QAAS,qCAAA,CACV,EAED,OAAKd,EAGHe,EAACC,EAAW,CAAA,GACNnB,EACJoB,UAAU,mBACV,cAAY,eACZC,KAAMH,EAACI,EAAI,CAACX,OAAQY,CAAAA,CAAgB,EACpCN,QAASC,EAAA,OAAA,CAAAM,SAAOT,EAAaE,OAAAA,CAAc,EAC3CH,UAAAA,EACAW,QAAQ,SAAA,CACT,EAXmB,IAaxB","x_google_ignoreList":[0]}
@@ -1,2 +1,2 @@
1
- import"@dropins/tools/event-bus.js";import{i as M,l as T,n as z}from"./getStoreConfig.js";import{i as V,s as $}from"./setGuestEmailOnCart.js";import{Field as j,Input as q}from"@dropins/tools/components.js";import{jsx as o,jsxs as m,Fragment as G}from"@dropins/tools/preact-jsx-runtime.js";import{H as O,p as P}from"./ToggleButton.js";import{useState as f,useEffect as w}from"@dropins/tools/preact-hooks.js";import{classes as N}from"@dropins/tools/lib.js";/* empty css */import{useText as k,Text as F}from"@dropins/tools/i18n.js";import{L as R}from"./constants2.js";const U=({value:r,error:l,hint:a,onChange:c,onBlur:u,onInvalid:n})=>{const i=k({LoginFormLabel:"Checkout.LoginForm.ariaLabel",LoginFormFloatingLabel:"Checkout.LoginForm.floatingLabel",LoginFormPlaceholder:"Checkout.LoginForm.placeholder"});return o(j,{size:"medium",error:l,hint:a,children:o(q,{id:"customer-email",name:"customer-email",type:"email",value:r,autocomplete:"email",placeholder:i.LoginFormPlaceholder,floatingLabel:i.LoginFormFloatingLabel,onChange:c,onBlur:u,onInvalid:n,required:!0,"aria-label":i.LoginFormLabel,"aria-required":!0})})},J=({onSignInClick:r,email:l})=>m("div",{className:"checkout-login-form__sign-in",children:[o(F,{id:"Checkout.LoginForm.account"}),o("a",{"data-testid":"sign-in-link",className:"checkout-login-form__link",href:"#",target:"_blank",rel:"noreferrer",onClick:a=>{a.preventDefault(),r==null||r(l)},children:o(F,{id:"Checkout.LoginForm.signIn"})})]}),K=({name:r,className:l,currentEmail:a,hint:c,error:u=null,onEmailChange:n,onEmailBlur:i,onEmailInvalid:g,onSignInClick:L,onSignOutClick:v,isAuthenticated:_,customer:e,...h})=>{const d=k({Title:"Checkout.LoginForm.title"});return m("div",{...h,className:N(["checkout-login-form",l]),"data-testid":"checkout-login-form",children:[m("div",{className:"checkout-login-form__heading",children:[o(O,{level:2,className:"checkout-login-form__title",children:d.Title}),_?o(Q,{onSignOutClick:v}):o(J,{onSignInClick:L,email:a})]}),e?m("div",{className:"checkout-login-form__customer-details",children:[o("div",{className:"checkout-login-form__customer-name",children:`${e==null?void 0:e.firstName} ${e==null?void 0:e.lastName}`}),o("div",{className:"checkout-login-form__customer-email",children:e==null?void 0:e.email})]}):o("div",{className:"checkout-login-form__content",children:m("form",{className:N(["dropin-login-form__form",l]),name:r,noValidate:!0,children:[o("button",{type:"submit",disabled:!0,style:"display: none","aria-hidden":"true"}),o(U,{value:a||void 0,error:u||"",hint:c,onChange:n,onBlur:i,onInvalid:g})]})})]})},Q=({onSignOutClick:r})=>m("p",{className:"checkout-login-form__sign-out",children:[o(F,{id:"Checkout.LoginForm.switch"}),o("a",{className:"checkout-login-form__link",href:"#",target:"_blank",rel:"noreferrer",onClick:l=>{l.preventDefault(),r==null||r()},children:o(F,{id:"Checkout.LoginForm.signOut"})})]}),W=r=>P.email.test(r),X=1e3,se=({className:r,email:l=null,onSignInClick:a,onSignOutClick:c,...u})=>{const n=k({LoginFormInvalidEmailError:"Checkout.LoginForm.invalidEmailError",LoginFormMissingEmailError:"Checkout.LoginForm.missingEmailError",LoginFormEmailExistsAlreadyHaveAccount:"Checkout.LoginForm.emailExists.alreadyHaveAccount",LoginFormEmailExistsSignInButton:"Checkout.LoginForm.emailExists.signInButton",LoginFormEmailExistsForFasterCheckout:"Checkout.LoginForm.emailExists.forFasterCheckout"}),{data:i}=M.value,g=(i==null?void 0:i.id)||"",L=!!i,[v,_]=f(!1),[e,h]=f(l),[d,E]=f(),[x,p]=f(!0),b=t=>t.valid?null:t.valueMissing?n.LoginFormMissingEmailError:n.LoginFormInvalidEmailError,C=T.value.data,A=t=>{const{value:s}=t.target;h(s),E(null),p(!0)},y=t=>{const{validity:s}=t.target;E(b(s))},I=t=>{const{validity:s}=t.target;E(b(s))};!v&&L&&(_(!0),h((i==null?void 0:i.email)||l)),w(()=>{if(!e||d)return;const t=setTimeout(()=>{V(e).then(s=>{p(s),(i==null?void 0:i.email)!==e&&$({cartId:g,email:e}).catch(H=>{console.log("set email failed",H)})}).catch(s=>{console.log(s),E(n.LoginFormInvalidEmailError),p(!0)})},X);return()=>{t&&clearTimeout(t)}},[e,d,n.LoginFormInvalidEmailError,i==null?void 0:i.email,g]);const B=x?"":m(G,{children:[n.LoginFormEmailExistsAlreadyHaveAccount," ",o("a",{href:"#",onClick:t=>{t.preventDefault(),a==null||a(e)},children:n.LoginFormEmailExistsSignInButton})," ",n.LoginFormEmailExistsForFasterCheckout]});return o(K,{className:r,currentEmail:e,error:d,hint:B,name:R,onEmailBlur:y,onEmailChange:A,onEmailInvalid:I,onSignInClick:t=>{const s=e?W(e):!1;a==null||a(s?t:null)},onSignOutClick:c,isAuthenticated:!!z.value,customer:C,...u})};export{se as L};
1
+ import"@dropins/tools/event-bus.js";import{i as M,l as T,n as z}from"./getStoreConfig.js";import{i as V,s as $}from"./setGuestEmailOnCart.js";import{Field as j,Input as q,Divider as G}from"@dropins/tools/components.js";import{jsx as o,jsxs as m,Fragment as O}from"@dropins/tools/preact-jsx-runtime.js";import{H as P,p as w}from"./ToggleButton.js";import{useState as f,useEffect as R}from"@dropins/tools/preact-hooks.js";import{classes as N}from"@dropins/tools/lib.js";/* empty css */import{useText as k,Text as F}from"@dropins/tools/i18n.js";import{L as U}from"./constants2.js";const J=({value:r,error:l,hint:a,onChange:c,onBlur:u,onInvalid:n})=>{const i=k({LoginFormLabel:"Checkout.LoginForm.ariaLabel",LoginFormFloatingLabel:"Checkout.LoginForm.floatingLabel",LoginFormPlaceholder:"Checkout.LoginForm.placeholder"});return o(j,{size:"medium",error:l,hint:a,children:o(q,{id:"customer-email",name:"customer-email",type:"email",value:r,autocomplete:"email",placeholder:i.LoginFormPlaceholder,floatingLabel:i.LoginFormFloatingLabel,onChange:c,onBlur:u,onInvalid:n,required:!0,"aria-label":i.LoginFormLabel,"aria-required":!0})})},K=({onSignInClick:r,email:l})=>m("div",{className:"checkout-login-form__sign-in",children:[o(F,{id:"Checkout.LoginForm.account"}),o("a",{"data-testid":"sign-in-link",className:"checkout-login-form__link",href:"#",target:"_blank",rel:"noreferrer",onClick:a=>{a.preventDefault(),r==null||r(l)},children:o(F,{id:"Checkout.LoginForm.signIn"})})]}),Q=({name:r,className:l,currentEmail:a,hint:c,error:u=null,onEmailChange:n,onEmailBlur:i,onEmailInvalid:g,onSignInClick:L,onSignOutClick:v,isAuthenticated:p,customer:e,...h})=>{const d=k({Title:"Checkout.LoginForm.title"});return m("div",{...h,className:N(["checkout-login-form",l]),"data-testid":"checkout-login-form",children:[m("div",{className:"checkout-login-form__heading",children:[o(P,{level:2,className:"checkout-login-form__title",children:d.Title}),p?o(W,{onSignOutClick:v}):o(K,{onSignInClick:L,email:a})]}),e?m("div",{className:"checkout-login-form__customer-details",children:[o("div",{className:"checkout-login-form__customer-name",children:`${e==null?void 0:e.firstName} ${e==null?void 0:e.lastName}`}),o("div",{className:"checkout-login-form__customer-email",children:e==null?void 0:e.email})]}):o("div",{className:"checkout-login-form__content",children:m("form",{className:N(["dropin-login-form__form",l]),name:r,noValidate:!0,children:[o("button",{type:"submit",disabled:!0,style:"display: none","aria-hidden":"true"}),o(J,{value:a||void 0,error:u||"",hint:c,onChange:n,onBlur:i,onInvalid:g})]})}),o(G,{variant:"primary"})]})},W=({onSignOutClick:r})=>m("p",{className:"checkout-login-form__sign-out",children:[o(F,{id:"Checkout.LoginForm.switch"}),o("a",{className:"checkout-login-form__link",href:"#",target:"_blank",rel:"noreferrer",onClick:l=>{l.preventDefault(),r==null||r()},children:o(F,{id:"Checkout.LoginForm.signOut"})})]}),X=r=>w.email.test(r),Y=1e3,me=({className:r,email:l=null,onSignInClick:a,onSignOutClick:c,...u})=>{const n=k({LoginFormInvalidEmailError:"Checkout.LoginForm.invalidEmailError",LoginFormMissingEmailError:"Checkout.LoginForm.missingEmailError",LoginFormEmailExistsAlreadyHaveAccount:"Checkout.LoginForm.emailExists.alreadyHaveAccount",LoginFormEmailExistsSignInButton:"Checkout.LoginForm.emailExists.signInButton",LoginFormEmailExistsForFasterCheckout:"Checkout.LoginForm.emailExists.forFasterCheckout"}),{data:i}=M.value,g=(i==null?void 0:i.id)||"",L=!!i,[v,p]=f(!1),[e,h]=f(l),[d,E]=f(),[x,_]=f(!0),b=t=>t.valid?null:t.valueMissing?n.LoginFormMissingEmailError:n.LoginFormInvalidEmailError,C=T.value.data,y=t=>{const{value:s}=t.target;h(s),E(null),_(!0)},A=t=>{const{validity:s}=t.target;E(b(s))},I=t=>{const{validity:s}=t.target;E(b(s))};!v&&L&&(p(!0),h((i==null?void 0:i.email)||l)),R(()=>{if(!e||d)return;const t=setTimeout(()=>{V(e).then(s=>{_(s),(i==null?void 0:i.email)!==e&&$({cartId:g,email:e}).catch(H=>{console.log("set email failed",H)})}).catch(s=>{console.log(s),E(n.LoginFormInvalidEmailError),_(!0)})},Y);return()=>{t&&clearTimeout(t)}},[e,d,n.LoginFormInvalidEmailError,i==null?void 0:i.email,g]);const B=x?"":m(O,{children:[n.LoginFormEmailExistsAlreadyHaveAccount," ",o("a",{href:"#",onClick:t=>{t.preventDefault(),a==null||a(e)},children:n.LoginFormEmailExistsSignInButton})," ",n.LoginFormEmailExistsForFasterCheckout]});return o(Q,{className:r,currentEmail:e,error:d,hint:B,name:U,onEmailBlur:A,onEmailChange:y,onEmailInvalid:I,onSignInClick:t=>{const s=e?X(e):!1;a==null||a(s?t:null)},onSignOutClick:c,isAuthenticated:!!z.value,customer:C,...u})};export{me as L};
2
2
  //# sourceMappingURL=LoginForm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LoginForm.js","sources":["../../src/components/LoginForm/Email.tsx","../../src/components/LoginForm/SignIn.tsx","../../src/components/LoginForm/LoginForm.tsx","../../src/components/LoginForm/SignOut.tsx","../../src/containers/LoginForm/LoginForm.tsx"],"sourcesContent":["import { Field, Input } from '@adobe/elsie/components';\nimport { useText } from '@adobe/elsie/i18n';\nimport { HTMLAttributes } from 'preact/compat';\nimport { FunctionComponent } from 'preact';\n\nexport interface LoginEmailProps extends HTMLAttributes<HTMLFormElement> {\n value?: string;\n error?: string;\n hint?: string;\n onChange: (e: any) => void;\n onBlur: (e: any) => void;\n onInvalid: (e: any) => void;\n}\n\nexport const Email: FunctionComponent<LoginEmailProps> = ({\n value,\n error,\n hint,\n onChange,\n onBlur,\n onInvalid,\n}) => {\n const translations = useText({\n LoginFormLabel: 'Checkout.LoginForm.ariaLabel',\n LoginFormFloatingLabel: 'Checkout.LoginForm.floatingLabel',\n LoginFormPlaceholder: 'Checkout.LoginForm.placeholder',\n });\n\n return (\n <Field size=\"medium\" error={error} hint={hint}>\n <Input\n id=\"customer-email\"\n name=\"customer-email\"\n type=\"email\"\n value={value}\n autocomplete=\"email\"\n placeholder={translations.LoginFormPlaceholder}\n floatingLabel={translations.LoginFormFloatingLabel}\n onChange={onChange}\n onBlur={onBlur}\n onInvalid={onInvalid}\n required={true}\n aria-label={translations.LoginFormLabel}\n aria-required={true}\n />\n </Field>\n );\n};\n","import { FunctionComponent } from 'preact';\nimport { Text } from '@adobe/elsie/i18n';\n\ntype SignInProps = {\n onSignInClick?: (email: string | null) => void;\n email: string | null;\n};\n\nexport const SignIn: FunctionComponent<SignInProps> = ({\n onSignInClick,\n email,\n}) => {\n return (\n <div className=\"checkout-login-form__sign-in\">\n <Text id=\"Checkout.LoginForm.account\" />\n\n <a\n data-testid=\"sign-in-link\"\n className=\"checkout-login-form__link\"\n href=\"#\"\n target=\"_blank\"\n rel=\"noreferrer\"\n onClick={(e) => {\n e.preventDefault();\n onSignInClick?.(email);\n }}\n >\n <Text id=\"Checkout.LoginForm.signIn\" />\n </a>\n </div>\n );\n};\n","import { Email, Heading } from '@/checkout/components';\nimport { SignOut, SignIn } from '@/checkout/components/LoginForm';\nimport '@/checkout/components/LoginForm/LoginForm.css';\nimport { Customer } from '@/checkout/data/models';\nimport { useText } from '@adobe/elsie/i18n';\nimport { classes } from '@adobe/elsie/lib';\nimport { FunctionComponent, HTMLAttributes } from 'preact/compat';\n\nexport interface LoginFormProps extends HTMLAttributes<HTMLDivElement> {\n currentEmail: string | null;\n hint?: string;\n error?: string | null;\n onEmailChange: (e: any) => void;\n onEmailBlur: (e: any) => void;\n onEmailInvalid: (e: any) => void;\n onSignInClick?: (email: string | null) => void;\n onSignOutClick?: () => void;\n isAuthenticated: boolean;\n customer?: Customer | null;\n}\n\nexport const LoginForm: FunctionComponent<LoginFormProps> = ({\n name,\n className,\n currentEmail,\n hint,\n error = null,\n onEmailChange,\n onEmailBlur,\n onEmailInvalid,\n onSignInClick,\n onSignOutClick,\n isAuthenticated,\n customer,\n ...props\n}) => {\n const translations = useText({\n Title: 'Checkout.LoginForm.title',\n });\n\n return (\n <div\n {...props}\n className={classes(['checkout-login-form', className])}\n data-testid=\"checkout-login-form\"\n >\n <div className=\"checkout-login-form__heading\">\n <Heading level={2} className=\"checkout-login-form__title\">\n {translations.Title}\n </Heading>\n {isAuthenticated ? (\n <SignOut onSignOutClick={onSignOutClick} />\n ) : (\n <SignIn onSignInClick={onSignInClick} email={currentEmail} />\n )}\n </div>\n {customer ? (\n <div className=\"checkout-login-form__customer-details\">\n <div className=\"checkout-login-form__customer-name\">{`${customer?.firstName} ${customer?.lastName}`}</div>\n <div className=\"checkout-login-form__customer-email\">\n {customer?.email}\n </div>\n </div>\n ) : (\n <div className=\"checkout-login-form__content\">\n <form\n className={classes(['dropin-login-form__form', className])}\n name={name}\n noValidate\n >\n {/* Prevent 'Enter' key press from submitting this form. */}\n <button\n type=\"submit\"\n disabled\n style=\"display: none\"\n aria-hidden=\"true\"\n />\n <Email\n value={currentEmail || undefined}\n error={error || ''}\n hint={hint}\n onChange={onEmailChange}\n onBlur={onEmailBlur}\n onInvalid={onEmailInvalid}\n />\n </form>\n </div>\n )}\n </div>\n );\n};\n","import { FunctionComponent } from 'preact';\nimport { Text } from '@adobe/elsie/i18n';\n\ntype SignOutProps = {\n onSignOutClick?: () => void;\n};\n\nexport const SignOut: FunctionComponent<SignOutProps> = ({\n onSignOutClick,\n}) => {\n return (\n <p className=\"checkout-login-form__sign-out\">\n <Text id=\"Checkout.LoginForm.switch\" />\n\n <a\n className=\"checkout-login-form__link\"\n href=\"#\"\n target=\"_blank\"\n rel=\"noreferrer\"\n onClick={(e) => {\n e.preventDefault();\n onSignOutClick?.();\n }}\n >\n <Text id=\"Checkout.LoginForm.signOut\" />\n </a>\n </p>\n );\n};\n","import { isEmailAvailable, setGuestEmailOnCart } from '@/checkout/api';\nimport { LoginForm as LoginFormComponent } from '@/checkout/components/LoginForm';\nimport { useText } from '@adobe/elsie/i18n';\nimport { HTMLAttributes } from 'preact/compat';\nimport { useEffect, useState } from 'preact/hooks';\nimport { LOGIN_FORM_NAME } from './constants';\nimport {\n cartSignal,\n customerSignal,\n isAuthenticatedSignal,\n} from '@/checkout/signals';\nimport { FunctionComponent } from 'preact';\nimport { patterns } from '@/checkout/components';\n\nconst isValidEmail = (email: string) => patterns.email.test(email);\n\nexport interface LoginFormProps extends HTMLAttributes<HTMLDivElement> {\n email?: string;\n onSignInClick?: (email: string | null) => void;\n onSignOutClick?: () => void;\n}\n\nconst DEBOUNCE_TIME = 1000;\n\nexport const LoginForm: FunctionComponent<LoginFormProps> = ({\n className,\n email = null,\n onSignInClick,\n onSignOutClick,\n ...props\n}) => {\n const translations = useText({\n LoginFormInvalidEmailError: 'Checkout.LoginForm.invalidEmailError',\n LoginFormMissingEmailError: 'Checkout.LoginForm.missingEmailError',\n LoginFormEmailExistsAlreadyHaveAccount:\n 'Checkout.LoginForm.emailExists.alreadyHaveAccount',\n LoginFormEmailExistsSignInButton:\n 'Checkout.LoginForm.emailExists.signInButton',\n LoginFormEmailExistsForFasterCheckout:\n 'Checkout.LoginForm.emailExists.forFasterCheckout',\n });\n\n const { data: cartData } = cartSignal.value;\n const cartId = cartData?.id || '';\n const hasCartData = !!cartData;\n\n const [isInitialized, setIsInitialized] = useState(false);\n const [currentEmail, setCurrentEmail] = useState<string | null>(email);\n const [error, setError] = useState<string | null>();\n const [emailAvailability, setEmailAvailability] = useState<boolean>(true);\n\n const errorMessage = (validity: ValidityState): string | null => {\n if (validity.valid) return null;\n if (validity.valueMissing) return translations.LoginFormMissingEmailError;\n return translations.LoginFormInvalidEmailError;\n };\n\n const customer = customerSignal.value.data;\n\n const onEmailChange = (e: any) => {\n const { value } = e.target as HTMLInputElement;\n setCurrentEmail(value);\n setError(null);\n setEmailAvailability(true);\n };\n\n const onEmailBlur = (e: any) => {\n const { validity } = e.target as HTMLInputElement;\n setError(errorMessage(validity));\n };\n\n const onEmailInvalid = (e: any) => {\n const { validity } = e.target as HTMLInputElement;\n setError(errorMessage(validity));\n };\n\n if (!isInitialized && hasCartData) {\n setIsInitialized(true);\n setCurrentEmail(cartData?.email || email);\n }\n\n useEffect(() => {\n if (!currentEmail || error) return;\n\n const timer = setTimeout(() => {\n isEmailAvailable(currentEmail)\n .then((result) => {\n setEmailAvailability(result);\n\n if (cartData?.email === currentEmail) return;\n\n setGuestEmailOnCart({\n cartId,\n email: currentEmail,\n }).catch((e: any) => {\n console.log('set email failed', e);\n });\n })\n .catch((e: any) => {\n // TODO: handle error state\n console.log(e);\n setError(translations.LoginFormInvalidEmailError);\n setEmailAvailability(true);\n });\n }, DEBOUNCE_TIME);\n\n return () => {\n timer && clearTimeout(timer);\n };\n }, [\n currentEmail,\n error,\n translations.LoginFormInvalidEmailError,\n cartData?.email,\n cartId,\n ]);\n\n const hint = emailAvailability ? (\n ''\n ) : (\n <>\n {translations.LoginFormEmailExistsAlreadyHaveAccount}{' '}\n <a\n href=\"#\"\n onClick={(e) => {\n e.preventDefault();\n onSignInClick?.(currentEmail);\n }}\n >\n {translations.LoginFormEmailExistsSignInButton}\n </a>{' '}\n {translations.LoginFormEmailExistsForFasterCheckout}\n </>\n );\n\n const onSignInClickHandler = (email: string | null) => {\n const isCurrentEmailValid = currentEmail\n ? isValidEmail(currentEmail)\n : false;\n onSignInClick?.(isCurrentEmailValid ? email : null);\n };\n\n return (\n <LoginFormComponent\n className={className}\n currentEmail={currentEmail}\n error={error}\n hint={hint as any}\n name={LOGIN_FORM_NAME}\n onEmailBlur={onEmailBlur}\n onEmailChange={onEmailChange}\n onEmailInvalid={onEmailInvalid}\n onSignInClick={onSignInClickHandler}\n onSignOutClick={onSignOutClick}\n isAuthenticated={Boolean(isAuthenticatedSignal.value)}\n customer={customer}\n {...props}\n />\n );\n};\n"],"names":["Email","value","error","hint","onChange","onBlur","onInvalid","translations","useText","LoginFormLabel","LoginFormFloatingLabel","LoginFormPlaceholder","_jsx","Field","size","children","Input","id","name","type","autocomplete","placeholder","floatingLabel","required","SignIn","onSignInClick","email","_jsxs","className","Text","href","target","rel","onClick","e","preventDefault","LoginForm","currentEmail","onEmailChange","onEmailBlur","onEmailInvalid","onSignOutClick","isAuthenticated","customer","props","Title","classes","Heading","level","SignOut","firstName","lastName","noValidate","disabled","style","undefined","isValidEmail","patterns","test","DEBOUNCE_TIME","LoginFormInvalidEmailError","LoginFormMissingEmailError","LoginFormEmailExistsAlreadyHaveAccount","LoginFormEmailExistsSignInButton","LoginFormEmailExistsForFasterCheckout","data","cartData","cartSignal","cartId","hasCartData","isInitialized","setIsInitialized","useState","setCurrentEmail","setError","emailAvailability","setEmailAvailability","errorMessage","validity","valid","valueMissing","customerSignal","useEffect","timer","setTimeout","then","result","setGuestEmailOnCart","catch","log","console","clearTimeout","_Fragment","LoginFormComponent","LOGIN_FORM_NAME","isCurrentEmailValid","Boolean","isAuthenticatedSignal"],"mappings":"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"}
1
+ {"version":3,"file":"LoginForm.js","sources":["../../src/components/LoginForm/Email.tsx","../../src/components/LoginForm/SignIn.tsx","../../src/components/LoginForm/LoginForm.tsx","../../src/components/LoginForm/SignOut.tsx","../../src/containers/LoginForm/LoginForm.tsx"],"sourcesContent":["import { Field, Input } from '@adobe/elsie/components';\nimport { useText } from '@adobe/elsie/i18n';\nimport { HTMLAttributes } from 'preact/compat';\nimport { FunctionComponent } from 'preact';\n\nexport interface LoginEmailProps extends HTMLAttributes<HTMLFormElement> {\n value?: string;\n error?: string;\n hint?: string;\n onChange: (e: any) => void;\n onBlur: (e: any) => void;\n onInvalid: (e: any) => void;\n}\n\nexport const Email: FunctionComponent<LoginEmailProps> = ({\n value,\n error,\n hint,\n onChange,\n onBlur,\n onInvalid,\n}) => {\n const translations = useText({\n LoginFormLabel: 'Checkout.LoginForm.ariaLabel',\n LoginFormFloatingLabel: 'Checkout.LoginForm.floatingLabel',\n LoginFormPlaceholder: 'Checkout.LoginForm.placeholder',\n });\n\n return (\n <Field size=\"medium\" error={error} hint={hint}>\n <Input\n id=\"customer-email\"\n name=\"customer-email\"\n type=\"email\"\n value={value}\n autocomplete=\"email\"\n placeholder={translations.LoginFormPlaceholder}\n floatingLabel={translations.LoginFormFloatingLabel}\n onChange={onChange}\n onBlur={onBlur}\n onInvalid={onInvalid}\n required={true}\n aria-label={translations.LoginFormLabel}\n aria-required={true}\n />\n </Field>\n );\n};\n","import { FunctionComponent } from 'preact';\nimport { Text } from '@adobe/elsie/i18n';\n\ntype SignInProps = {\n onSignInClick?: (email: string | null) => void;\n email: string | null;\n};\n\nexport const SignIn: FunctionComponent<SignInProps> = ({\n onSignInClick,\n email,\n}) => {\n return (\n <div className=\"checkout-login-form__sign-in\">\n <Text id=\"Checkout.LoginForm.account\" />\n\n <a\n data-testid=\"sign-in-link\"\n className=\"checkout-login-form__link\"\n href=\"#\"\n target=\"_blank\"\n rel=\"noreferrer\"\n onClick={(e) => {\n e.preventDefault();\n onSignInClick?.(email);\n }}\n >\n <Text id=\"Checkout.LoginForm.signIn\" />\n </a>\n </div>\n );\n};\n","import { Email, Heading } from '@/checkout/components';\nimport { SignOut, SignIn } from '@/checkout/components/LoginForm';\nimport '@/checkout/components/LoginForm/LoginForm.css';\nimport { Customer } from '@/checkout/data/models';\nimport { useText } from '@adobe/elsie/i18n';\nimport { classes } from '@adobe/elsie/lib';\nimport { FunctionComponent, HTMLAttributes } from 'preact/compat';\nimport { Divider } from '@adobe/elsie/components';\n\nexport interface LoginFormProps extends HTMLAttributes<HTMLDivElement> {\n currentEmail: string | null;\n hint?: string;\n error?: string | null;\n onEmailChange: (e: any) => void;\n onEmailBlur: (e: any) => void;\n onEmailInvalid: (e: any) => void;\n onSignInClick?: (email: string | null) => void;\n onSignOutClick?: () => void;\n isAuthenticated: boolean;\n customer?: Customer | null;\n}\n\nexport const LoginForm: FunctionComponent<LoginFormProps> = ({\n name,\n className,\n currentEmail,\n hint,\n error = null,\n onEmailChange,\n onEmailBlur,\n onEmailInvalid,\n onSignInClick,\n onSignOutClick,\n isAuthenticated,\n customer,\n ...props\n}) => {\n const translations = useText({\n Title: 'Checkout.LoginForm.title',\n });\n\n return (\n <div\n {...props}\n className={classes(['checkout-login-form', className])}\n data-testid=\"checkout-login-form\"\n >\n <div className=\"checkout-login-form__heading\">\n <Heading level={2} className=\"checkout-login-form__title\">\n {translations.Title}\n </Heading>\n {isAuthenticated ? (\n <SignOut onSignOutClick={onSignOutClick} />\n ) : (\n <SignIn onSignInClick={onSignInClick} email={currentEmail} />\n )}\n </div>\n {customer ? (\n <div className=\"checkout-login-form__customer-details\">\n <div className=\"checkout-login-form__customer-name\">{`${customer?.firstName} ${customer?.lastName}`}</div>\n <div className=\"checkout-login-form__customer-email\">\n {customer?.email}\n </div>\n </div>\n ) : (\n <div className=\"checkout-login-form__content\">\n <form\n className={classes(['dropin-login-form__form', className])}\n name={name}\n noValidate\n >\n {/* Prevent 'Enter' key press from submitting this form. */}\n <button\n type=\"submit\"\n disabled\n style=\"display: none\"\n aria-hidden=\"true\"\n />\n <Email\n value={currentEmail || undefined}\n error={error || ''}\n hint={hint}\n onChange={onEmailChange}\n onBlur={onEmailBlur}\n onInvalid={onEmailInvalid}\n />\n </form>\n </div>\n )}\n <Divider variant=\"primary\" />\n </div>\n );\n};\n","import { FunctionComponent } from 'preact';\nimport { Text } from '@adobe/elsie/i18n';\n\ntype SignOutProps = {\n onSignOutClick?: () => void;\n};\n\nexport const SignOut: FunctionComponent<SignOutProps> = ({\n onSignOutClick,\n}) => {\n return (\n <p className=\"checkout-login-form__sign-out\">\n <Text id=\"Checkout.LoginForm.switch\" />\n\n <a\n className=\"checkout-login-form__link\"\n href=\"#\"\n target=\"_blank\"\n rel=\"noreferrer\"\n onClick={(e) => {\n e.preventDefault();\n onSignOutClick?.();\n }}\n >\n <Text id=\"Checkout.LoginForm.signOut\" />\n </a>\n </p>\n );\n};\n","import { isEmailAvailable, setGuestEmailOnCart } from '@/checkout/api';\nimport { LoginForm as LoginFormComponent } from '@/checkout/components/LoginForm';\nimport { useText } from '@adobe/elsie/i18n';\nimport { HTMLAttributes } from 'preact/compat';\nimport { useEffect, useState } from 'preact/hooks';\nimport { LOGIN_FORM_NAME } from './constants';\nimport {\n cartSignal,\n customerSignal,\n isAuthenticatedSignal,\n} from '@/checkout/signals';\nimport { FunctionComponent } from 'preact';\nimport { patterns } from '@/checkout/components';\n\nconst isValidEmail = (email: string) => patterns.email.test(email);\n\nexport interface LoginFormProps extends HTMLAttributes<HTMLDivElement> {\n email?: string;\n onSignInClick?: (email: string | null) => void;\n onSignOutClick?: () => void;\n}\n\nconst DEBOUNCE_TIME = 1000;\n\nexport const LoginForm: FunctionComponent<LoginFormProps> = ({\n className,\n email = null,\n onSignInClick,\n onSignOutClick,\n ...props\n}) => {\n const translations = useText({\n LoginFormInvalidEmailError: 'Checkout.LoginForm.invalidEmailError',\n LoginFormMissingEmailError: 'Checkout.LoginForm.missingEmailError',\n LoginFormEmailExistsAlreadyHaveAccount:\n 'Checkout.LoginForm.emailExists.alreadyHaveAccount',\n LoginFormEmailExistsSignInButton:\n 'Checkout.LoginForm.emailExists.signInButton',\n LoginFormEmailExistsForFasterCheckout:\n 'Checkout.LoginForm.emailExists.forFasterCheckout',\n });\n\n const { data: cartData } = cartSignal.value;\n const cartId = cartData?.id || '';\n const hasCartData = !!cartData;\n\n const [isInitialized, setIsInitialized] = useState(false);\n const [currentEmail, setCurrentEmail] = useState<string | null>(email);\n const [error, setError] = useState<string | null>();\n const [emailAvailability, setEmailAvailability] = useState<boolean>(true);\n\n const errorMessage = (validity: ValidityState): string | null => {\n if (validity.valid) return null;\n if (validity.valueMissing) return translations.LoginFormMissingEmailError;\n return translations.LoginFormInvalidEmailError;\n };\n\n const customer = customerSignal.value.data;\n\n const onEmailChange = (e: any) => {\n const { value } = e.target as HTMLInputElement;\n setCurrentEmail(value);\n setError(null);\n setEmailAvailability(true);\n };\n\n const onEmailBlur = (e: any) => {\n const { validity } = e.target as HTMLInputElement;\n setError(errorMessage(validity));\n };\n\n const onEmailInvalid = (e: any) => {\n const { validity } = e.target as HTMLInputElement;\n setError(errorMessage(validity));\n };\n\n if (!isInitialized && hasCartData) {\n setIsInitialized(true);\n setCurrentEmail(cartData?.email || email);\n }\n\n useEffect(() => {\n if (!currentEmail || error) return;\n\n const timer = setTimeout(() => {\n isEmailAvailable(currentEmail)\n .then((result) => {\n setEmailAvailability(result);\n\n if (cartData?.email === currentEmail) return;\n\n setGuestEmailOnCart({\n cartId,\n email: currentEmail,\n }).catch((e: any) => {\n console.log('set email failed', e);\n });\n })\n .catch((e: any) => {\n // TODO: handle error state\n console.log(e);\n setError(translations.LoginFormInvalidEmailError);\n setEmailAvailability(true);\n });\n }, DEBOUNCE_TIME);\n\n return () => {\n timer && clearTimeout(timer);\n };\n }, [\n currentEmail,\n error,\n translations.LoginFormInvalidEmailError,\n cartData?.email,\n cartId,\n ]);\n\n const hint = emailAvailability ? (\n ''\n ) : (\n <>\n {translations.LoginFormEmailExistsAlreadyHaveAccount}{' '}\n <a\n href=\"#\"\n onClick={(e) => {\n e.preventDefault();\n onSignInClick?.(currentEmail);\n }}\n >\n {translations.LoginFormEmailExistsSignInButton}\n </a>{' '}\n {translations.LoginFormEmailExistsForFasterCheckout}\n </>\n );\n\n const onSignInClickHandler = (email: string | null) => {\n const isCurrentEmailValid = currentEmail\n ? isValidEmail(currentEmail)\n : false;\n onSignInClick?.(isCurrentEmailValid ? email : null);\n };\n\n return (\n <LoginFormComponent\n className={className}\n currentEmail={currentEmail}\n error={error}\n hint={hint as any}\n name={LOGIN_FORM_NAME}\n onEmailBlur={onEmailBlur}\n onEmailChange={onEmailChange}\n onEmailInvalid={onEmailInvalid}\n onSignInClick={onSignInClickHandler}\n onSignOutClick={onSignOutClick}\n isAuthenticated={Boolean(isAuthenticatedSignal.value)}\n customer={customer}\n {...props}\n />\n );\n};\n"],"names":["Email","value","error","hint","onChange","onBlur","onInvalid","translations","useText","LoginFormLabel","LoginFormFloatingLabel","LoginFormPlaceholder","_jsx","Field","size","children","Input","id","name","type","autocomplete","placeholder","floatingLabel","required","SignIn","onSignInClick","email","_jsxs","className","Text","href","target","rel","onClick","e","preventDefault","LoginForm","currentEmail","onEmailChange","onEmailBlur","onEmailInvalid","onSignOutClick","isAuthenticated","customer","props","Title","classes","Heading","level","SignOut","firstName","lastName","noValidate","disabled","style","undefined","Divider","variant","isValidEmail","patterns","test","DEBOUNCE_TIME","LoginFormInvalidEmailError","LoginFormMissingEmailError","LoginFormEmailExistsAlreadyHaveAccount","LoginFormEmailExistsSignInButton","LoginFormEmailExistsForFasterCheckout","data","cartData","cartSignal","cartId","hasCartData","isInitialized","setIsInitialized","useState","setCurrentEmail","setError","emailAvailability","setEmailAvailability","errorMessage","validity","valid","valueMissing","customerSignal","useEffect","timer","setTimeout","then","result","setGuestEmailOnCart","catch","log","console","clearTimeout","_Fragment","LoginFormComponent","LOGIN_FORM_NAME","isCurrentEmailValid","Boolean","isAuthenticatedSignal"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import*as i from"@dropins/tools/preact-compat.js";import{useState as f,useEffect as u}from"@dropins/tools/preact-compat.js";import{AlertBanner as g,Icon as p}from"@dropins/tools/components.js";import{events as M}from"@dropins/tools/event-bus.js";import{jsx as e,jsxs as h}from"@dropins/tools/preact-jsx-runtime.js";import{Text as c}from"@dropins/tools/i18n.js";const v=t=>i.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...t},i.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M0 12C0 5.37931 5.37931 0 12 0C18.6207 0 24 5.37931 24 12C24 18.6207 18.6207 24 12 24C5.37931 24 0 18.6207 0 12ZM11.8885 5.06101C11.1405 5.06101 10.5357 5.66579 10.5357 6.4138V6.57295C10.5835 7.27321 11.1882 7.81433 11.8885 7.76658H12.0795C12.7797 7.70292 13.289 7.09815 13.2413 6.4138C13.2413 5.66579 12.6365 5.06101 11.8885 5.06101ZM13.1935 16.8223H14.1007C14.2599 16.8223 14.4031 16.9655 14.4031 17.1247V17.7294C14.4031 17.9045 14.2599 18.0318 14.1007 18.0318H9.8832C9.70813 18.0318 9.58081 17.8886 9.58081 17.7294V17.1247C9.58081 16.9496 9.72405 16.8223 9.8832 16.8223H10.7904V10.7905H9.8832C9.70813 10.7905 9.58081 10.6472 9.58081 10.4881V9.88329C9.58081 9.70823 9.72405 9.58091 9.8832 9.58091H12.5888C12.923 9.58091 13.1935 9.85146 13.1935 10.1857V16.8223Z",fill:"currentColor"})),B=t=>{const[r,s]=f(0);u(()=>{const n=M.on("cart/merged",o=>{var a;const l=(a=o==null?void 0:o.oldCartItems)==null?void 0:a.reduce((C,d)=>C+d.quantity,0);l>0&&s(l)});return()=>{n==null||n.off()}},[]);const m=()=>{s(0)};return r?e(g,{...t,className:"checkout__banner","data-testid":"merged-cart-banner",icon:e(p,{source:v}),message:h("span",{children:[e(c,{id:"Checkout.MergedCartBanner.items",fields:{count:r},plural:r}),e(c,{id:"Checkout.MergedCartBanner.genericMessage"})]}),onDismiss:m,variant:"neutral"}):null};export{B as M};
2
+ //# sourceMappingURL=MergedCartBanner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MergedCartBanner.js","sources":["../../node_modules/@adobe/elsie/src/icons/InfoFilled.svg","../../src/containers/MergedCartBanner/MergedCartBanner.tsx"],"sourcesContent":["import * as React from \"react\";\nconst SvgInfoFilled = (props) => /* @__PURE__ */ React.createElement(\"svg\", { width: 24, height: 24, viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M0 12C0 5.37931 5.37931 0 12 0C18.6207 0 24 5.37931 24 12C24 18.6207 18.6207 24 12 24C5.37931 24 0 18.6207 0 12ZM11.8885 5.06101C11.1405 5.06101 10.5357 5.66579 10.5357 6.4138V6.57295C10.5835 7.27321 11.1882 7.81433 11.8885 7.76658H12.0795C12.7797 7.70292 13.289 7.09815 13.2413 6.4138C13.2413 5.66579 12.6365 5.06101 11.8885 5.06101ZM13.1935 16.8223H14.1007C14.2599 16.8223 14.4031 16.9655 14.4031 17.1247V17.7294C14.4031 17.9045 14.2599 18.0318 14.1007 18.0318H9.8832C9.70813 18.0318 9.58081 17.8886 9.58081 17.7294V17.1247C9.58081 16.9496 9.72405 16.8223 9.8832 16.8223H10.7904V10.7905H9.8832C9.70813 10.7905 9.58081 10.6472 9.58081 10.4881V9.88329C9.58081 9.70823 9.72405 9.58091 9.8832 9.58091H12.5888C12.923 9.58091 13.1935 9.85146 13.1935 10.1857V16.8223Z\", fill: \"currentColor\" }));\nexport default SvgInfoFilled;\n","import { FunctionComponent, useEffect, useState } from 'preact/compat';\nimport { Text } from '@adobe/elsie/i18n';\nimport { AlertBanner, AlertBannerProps, Icon } from '@adobe/elsie/components';\nimport { InfoFilled } from '@adobe/elsie/icons';\nimport { events } from '@adobe/event-bus';\n\nexport const MergedCartBanner: FunctionComponent<Partial<AlertBannerProps>> = (\n props\n) => {\n const [totalMergedItems, setTotalMergedItems] = useState(0);\n\n useEffect(() => {\n const subscription = events.on('cart/merged', (data) => {\n const oldCartItems = data?.oldCartItems?.reduce(\n (acc, item) => acc + item.quantity,\n 0\n );\n\n if (oldCartItems > 0) {\n setTotalMergedItems(oldCartItems);\n }\n });\n return () => {\n subscription?.off();\n };\n }, []);\n\n const onDismiss = () => {\n setTotalMergedItems(0);\n };\n\n if (!totalMergedItems) return null;\n\n return (\n <AlertBanner\n {...props}\n className=\"checkout__banner\"\n data-testid=\"merged-cart-banner\"\n icon={<Icon source={InfoFilled} />}\n message={\n <span>\n <Text\n id=\"Checkout.MergedCartBanner.items\"\n fields={{\n count: totalMergedItems,\n }}\n plural={totalMergedItems}\n />\n <Text id=\"Checkout.MergedCartBanner.genericMessage\" />\n </span>\n }\n onDismiss={onDismiss}\n variant=\"neutral\"\n />\n );\n};\n"],"names":["SvgInfoFilled","props","React","MergedCartBanner","totalMergedItems","setTotalMergedItems","useState","useEffect","subscription","events","on","data","oldCartItems","reduce","acc","item","quantity","off","onDismiss","_jsx","AlertBanner","className","icon","Icon","source","InfoFilled","message","_jsxs","children","Text","id","fields","count","plural","variant"],"mappings":"yWACA,MAAMA,EAAiBC,GAA0BC,EAAM,cAAc,MAAO,CAAE,MAAO,GAAI,OAAQ,GAAI,QAAS,YAAa,KAAM,OAAQ,MAAO,6BAA8B,GAAGD,CAAO,EAAkBC,EAAM,cAAc,OAAQ,CAAE,SAAU,UAAW,SAAU,UAAW,EAAG,6vBAA8vB,KAAM,cAAgB,CAAA,CAAC,ECK7hCC,EAERF,GAAA,CACH,KAAM,CAACG,EAAkBC,CAAmB,EAAIC,EAAS,CAAC,EAE1DC,EAAU,IAAM,CACd,MAAMC,EAAeC,EAAOC,GAAG,cAAyBC,GAAA,OAChDC,MAAAA,GAAeD,EAAAA,GAAAA,YAAAA,EAAMC,eAAND,YAAAA,EAAoBE,OACvC,CAACC,EAAKC,IAASD,EAAMC,EAAKC,SAC1B,GAGEJ,EAAe,GACjBP,EAAoBO,CAAY,CAClC,CACD,EACD,MAAO,IAAM,CACXJ,GAAAA,MAAAA,EAAcS,KAAI,CAEtB,EAAG,CAAE,CAAA,EAEL,MAAMC,EAAYA,IAAM,CACtBb,EAAoB,CAAC,CAAA,EAGvB,OAAKD,EAGHe,EAACC,EAAW,CAAA,GACNnB,EACJoB,UAAU,mBACV,cAAY,qBACZC,KAAMH,EAACI,EAAI,CAACC,OAAQC,CAAAA,CAAa,EACjCC,QACEC,EAAA,OAAA,CAAAC,SAAA,CACET,EAACU,EAAI,CACHC,GAAG,kCACHC,OAAQ,CACNC,MAAO5B,CACT,EACA6B,OAAQ7B,CAAAA,CACT,EACDe,EAACU,EAAI,CAACC,GAAG,0CAAA,CAA4C,CAAC,CAAA,CAClD,EAERZ,UAAAA,EACAgB,QAAQ,SAAA,CACT,EAtB2B,IAwBhC","x_google_ignoreList":[0]}
@@ -1,2 +1,2 @@
1
- import{H as N}from"./ToggleButton.js";import"@dropins/tools/preact-hooks.js";import{m as L,i as D}from"./getStoreConfig.js";import"@dropins/tools/event-bus.js";import{s as k}from"./SelectedShippingMethodSignal.js";import{classes as d}from"@dropins/tools/lib.js";import{Card as E,Divider as g,ProgressSpinner as z,Price as y,Skeleton as A,SkeletonRow as v}from"@dropins/tools/components.js";/* empty css */import{jsxs as u,jsx as r,Fragment as I}from"@dropins/tools/preact-jsx-runtime.js";import{Text as n}from"@dropins/tools/i18n.js";const j=({className:o,summary:p,isLoading:t=!1,...T})=>{const{total:m,subtotal:h,shipping:i,tax:c}=p;return u(E,{...T,className:d(["checkout-order-summary",["checkout-order-summary--loading",t],o]),children:[r(N,{level:2,className:"checkout-order-summary__title",children:r(n,{id:"Checkout.OrderSummary.title"})}),r(g,{variant:"primary"}),t&&r(z,{className:"checkout-order-summary__spinner"}),u("div",{"data-testid":"order-summary-subtotal",className:"checkout-order-summary__row",children:[r("p",{children:r(n,{id:"Checkout.OrderSummary.subtotal"})}),r(y,{amount:h.amount,currency:h.currency,className:d(["checkout-order-summary__price",o])})]}),h.isTaxIncl&&r("div",{"data-testid":"order-summary-subtotal-incl-tax",className:"checkout-order-summary__row checkout-order-summary__row--muted",children:r("p",{children:r(n,{id:"Checkout.OrderSummary.includingTaxes"})})}),i!=null&&u("div",{"data-testid":"order-summary-shipping",className:"checkout-order-summary__row",children:[r("p",{"data-testid":"order-summary-shipping-label",children:i.isEstimated?r(n,{id:"Checkout.OrderSummary.estimatedShipping"}):r(n,{id:"Checkout.OrderSummary.shipping"})}),i.amount===0?r("p",{"data-testid":"estimated-shipping",className:"checkout-order-summary__price",children:r(n,{id:"Checkout.OrderSummary.freeShipping"})}):r(y,{"data-testid":"estimated-shipping",amount:i.amount,currency:i.currency,className:d(["checkout-order-summary__price",o])})]}),c!=null&&!c.breakdown&&u("div",{"data-testid":"order-summary-tax",className:"checkout-order-summary__row",children:[r("p",{children:r(n,{id:"Checkout.OrderSummary.tax"})}),r(y,{amount:c.amount,currency:c.currency,className:d(["checkout-order-summary__price",o])})]}),c!=null&&c.breakdown&&u(I,{children:[r(g,{variant:"secondary"}),r("div",{className:"checkout-order-summary__row checkout-order-summary__row--margin-bottom",children:r("p",{children:r(n,{id:"Checkout.OrderSummary.taxBreakdown"})})}),c.breakdown.map(e=>u("div",{"data-testid":"order-summary-tax-breakdown",className:"checkout-order-summary__row checkout-order-summary__row--muted",children:[r("p",{children:e.label}),r(y,{amount:e.amount.value,currency:e.amount.currency,className:d(["checkout-order-summary__price",o])})]},e.label)),u("div",{"data-testid":"order-summary-tax-breakdown-total",className:"checkout-order-summary__row checkout-order-summary__row--strong checkout-order-summary__row--margin-top",children:[r("p",{children:r(n,{id:"Checkout.OrderSummary.taxTotal"})}),r(y,{amount:c.amount,currency:c.currency,className:d(["checkout-order-summary__price",o])})]}),r(g,{variant:"secondary"})]}),u("div",{"data-testid":"order-summary-total-incl-tax",className:"checkout-order-summary__row checkout-order-summary__row--emphasized",children:[r("p",{children:r(n,{id:"Checkout.OrderSummary.total"})}),r(y,{amount:m.inclTax.amount,currency:m.inclTax.currency,className:d(["checkout-order-summary__price",o])})]}),m.exclTax!=null&&u("div",{"data-testid":"order-summary-total-excl-tax",className:"checkout-order-summary__row checkout-order-summary__row--muted",children:[r("p",{children:r(n,{id:"Checkout.OrderSummary.totalExclTax"})}),r(y,{amount:m.exclTax.amount,currency:m.exclTax.currency,className:d(["checkout-order-summary__price",o])})]})]})},F=()=>u(A,{"data-testid":"order-summary-skeleton",className:"order-summary__skeleton",children:[r(v,{variant:"heading",size:"medium"}),r(v,{variant:"empty",size:"medium"}),r(v,{size:"large",fullWidth:!0,lines:3})]}),w=0,G=2,H={isLoading:!0};function P(){const{config:o}=L(),p=o===void 0,t=D.value.data;if(p||t===void 0)return H;const m=o.taxCartDisplay,h=m.shoppingCartDisplaySubtotal===G,i=t==null?void 0:t.shippingAddresses,c=!!(i!=null&&i.length),e=t==null?void 0:t.prices,x=e==null?void 0:e.grand_total,C=!!x,S=h?e==null?void 0:e.subtotal_including_tax:e==null?void 0:e.subtotal_excluding_tax,_=(e==null?void 0:e.applied_taxes)||[],f=!!_.length;if(!C)return{isLoading:!1};const a={total:{inclTax:{amount:x.value,currency:x.currency}},subtotal:{amount:S.value,currency:S.currency,isTaxIncl:h}};if(f){const l=_.reduce((b,O)=>b+O.amount.value,w),s=_[0];a.tax={amount:l,currency:s.amount.currency},m.shoppingCartDisplayFullSummary&&(a.tax.breakdown=_)}if(!f&&m.shoppingCartDisplayZeroTax&&(a.tax={amount:w,currency:a.total.inclTax.currency}),m.shoppingCartDisplayGrandTotal){const l=a.tax?a.total.inclTax.amount-a.tax.amount:a.total.inclTax.amount;a.total.exclTax={amount:l,currency:a.total.inclTax.currency}}if(c){const l=i[0],s=l==null?void 0:l.selectedShippingMethod;return s?(a.shipping={amount:s==null?void 0:s.amount.value,currency:s==null?void 0:s.amount.currency,isEstimated:!1},{isLoading:!1,summary:a}):{isLoading:!1,summary:a}}return k.value?(a.shipping={amount:k.value.amount.value,currency:k.value.amount.currency,isEstimated:!0},a.total.inclTax.amount+=a.shipping.amount,a.total.exclTax&&(a.total.exclTax.amount+=a.shipping.amount),{isLoading:!1,summary:a}):{isLoading:!1,summary:a}}const M=({...o})=>{const{isLoading:p,summary:t}=P();return u("div",{...o,children:[!t&&r(F,{}),t&&r(j,{isLoading:p,summary:t})]})};export{M as O,P as u};
2
- //# sourceMappingURL=OrderSummary.js.map
1
+ import{H as N}from"./ToggleButton.js";import"@dropins/tools/preact-hooks.js";import{m as L,i as D}from"./getStoreConfig.js";import"@dropins/tools/event-bus.js";import{s as k}from"./SelectedShippingMethodSignal.js";import{classes as d}from"@dropins/tools/lib.js";import{Card as E,Divider as g,ProgressSpinner as z,Price as y,Skeleton as A,SkeletonRow as v}from"@dropins/tools/components.js";/* empty css */import{jsxs as u,jsx as r,Fragment as I}from"@dropins/tools/preact-jsx-runtime.js";import{Text as n}from"@dropins/tools/i18n.js";const j=({className:o,summary:p,isLoading:t=!1,...T})=>{const{total:m,subtotal:h,shipping:i,tax:c}=p;return u(E,{...T,className:d(["checkout-order-summary",["checkout-order-summary--loading",t],o]),children:[r(N,{level:2,className:"checkout-order-summary__title",children:r(n,{id:"Checkout.OrderSummary.title"})}),r(g,{variant:"primary"}),t&&r(z,{className:"checkout-order-summary__spinner"}),u("div",{"data-testid":"order-summary-subtotal",className:"checkout-order-summary__row",children:[r("p",{children:r(n,{id:"Checkout.OrderSummary.subtotal"})}),r(y,{amount:h.amount,currency:h.currency,className:d(["checkout-order-summary__price",o])})]}),h.isTaxIncl&&r("div",{"data-testid":"order-summary-subtotal-incl-tax",className:"checkout-order-summary__row checkout-order-summary__row--muted",children:r("p",{children:r(n,{id:"Checkout.OrderSummary.includingTaxes"})})}),i!=null&&u("div",{"data-testid":"order-summary-shipping",className:"checkout-order-summary__row",children:[r("p",{"data-testid":"order-summary-shipping-label",children:i.isEstimated?r(n,{id:"Checkout.OrderSummary.estimatedShipping"}):r(n,{id:"Checkout.OrderSummary.shipping"})}),i.amount===0?r("p",{"data-testid":"estimated-shipping",className:"checkout-order-summary__price",children:r(n,{id:"Checkout.OrderSummary.freeShipping"})}):r(y,{"data-testid":"estimated-shipping",amount:i.amount,currency:i.currency,className:d(["checkout-order-summary__price",o])})]}),c!=null&&!c.breakdown&&u("div",{"data-testid":"order-summary-tax",className:"checkout-order-summary__row",children:[r("p",{children:r(n,{id:"Checkout.OrderSummary.tax"})}),r(y,{amount:c.amount,currency:c.currency,className:d(["checkout-order-summary__price",o])})]}),c!=null&&c.breakdown&&u(I,{children:[r(g,{variant:"secondary"}),r("div",{className:"checkout-order-summary__row checkout-order-summary__row--margin-bottom",children:r("p",{children:r(n,{id:"Checkout.OrderSummary.taxBreakdown"})})}),c.breakdown.map(e=>u("div",{"data-testid":"order-summary-tax-breakdown",className:"checkout-order-summary__row checkout-order-summary__row--muted",children:[r("p",{children:e.label}),r(y,{amount:e.amount.value,currency:e.amount.currency,className:d(["checkout-order-summary__price",o])})]},e.label)),u("div",{"data-testid":"order-summary-tax-breakdown-total",className:"checkout-order-summary__row checkout-order-summary__row--strong checkout-order-summary__row--margin-top",children:[r("p",{children:r(n,{id:"Checkout.OrderSummary.taxTotal"})}),r(y,{amount:c.amount,currency:c.currency,className:d(["checkout-order-summary__price",o])})]}),r(g,{variant:"secondary"})]}),u("div",{"data-testid":"order-summary-total-incl-tax",className:"checkout-order-summary__row checkout-order-summary__row--emphasized",children:[r("p",{children:r(n,{id:"Checkout.OrderSummary.total"})}),r(y,{amount:m.inclTax.amount,currency:m.inclTax.currency,className:d(["checkout-order-summary__price",o])})]}),m.exclTax!=null&&u("div",{"data-testid":"order-summary-total-excl-tax",className:"checkout-order-summary__row checkout-order-summary__row--muted",children:[r("p",{children:r(n,{id:"Checkout.OrderSummary.totalExclTax"})}),r(y,{amount:m.exclTax.amount,currency:m.exclTax.currency,className:d(["checkout-order-summary__price",o])})]})]})},w=0,F=2,G={isLoading:!0};function H(){const{config:o}=L(),p=o===void 0,t=D.value.data;if(p||t===void 0)return G;const m=o.taxCartDisplay,h=m.shoppingCartDisplaySubtotal===F,i=t==null?void 0:t.shippingAddresses,c=!!(i!=null&&i.length),e=t==null?void 0:t.prices,x=e==null?void 0:e.grand_total,C=!!x,S=h?e==null?void 0:e.subtotal_including_tax:e==null?void 0:e.subtotal_excluding_tax,_=(e==null?void 0:e.applied_taxes)||[],f=!!_.length;if(!C)return{isLoading:!1};const a={total:{inclTax:{amount:x.value,currency:x.currency}},subtotal:{amount:S.value,currency:S.currency,isTaxIncl:h}};if(f){const l=_.reduce((b,O)=>b+O.amount.value,w),s=_[0];a.tax={amount:l,currency:s.amount.currency},m.shoppingCartDisplayFullSummary&&(a.tax.breakdown=_)}if(!f&&m.shoppingCartDisplayZeroTax&&(a.tax={amount:w,currency:a.total.inclTax.currency}),m.shoppingCartDisplayGrandTotal){const l=a.tax?a.total.inclTax.amount-a.tax.amount:a.total.inclTax.amount;a.total.exclTax={amount:l,currency:a.total.inclTax.currency}}if(c){const l=i[0],s=l==null?void 0:l.selectedShippingMethod;return s?(a.shipping={amount:s==null?void 0:s.amount.value,currency:s==null?void 0:s.amount.currency,isEstimated:!1},{isLoading:!1,summary:a}):{isLoading:!1,summary:a}}return k.value?(a.shipping={amount:k.value.amount.value,currency:k.value.amount.currency,isEstimated:!0},a.total.inclTax.amount+=a.shipping.amount,a.total.exclTax&&(a.total.exclTax.amount+=a.shipping.amount),{isLoading:!1,summary:a}):{isLoading:!1,summary:a}}const M=({...o})=>{const{isLoading:p,summary:t}=H();return u("div",{...o,children:[!t&&r(P,{}),t&&r(j,{isLoading:p,summary:t})]})},P=()=>u(A,{"data-testid":"order-summary-skeleton",className:"order-summary__skeleton",children:[r(v,{variant:"heading",size:"medium"}),r(v,{variant:"empty",size:"medium"}),r(v,{size:"large",fullWidth:!0,lines:3})]});export{M as O,H as u};
2
+ //# sourceMappingURL=OrderSummarySkeleton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OrderSummarySkeleton.js","sources":["../../src/components/OrderSummary/OrderSummary.tsx","../../src/containers/OrderSummary/constants.ts","../../src/containers/OrderSummary/OrderSummary.tsx","../../src/components/OrderSummary/OrderSummarySkeleton.tsx"],"sourcesContent":["import { FunctionComponent } from 'preact';\nimport { HTMLAttributes } from 'preact/compat';\nimport { classes } from '@adobe/elsie/lib';\nimport '@/checkout/components/OrderSummary/OrderSummary.css';\nimport { Heading } from '@/checkout/components';\nimport { Text } from '@adobe/elsie/i18n';\nimport { Card, Divider, Price, ProgressSpinner } from '@adobe/elsie/components';\nimport { CartTaxItem } from '@/checkout/__generated__/types';\n\nexport type Summary = {\n total: {\n inclTax: {\n amount: number;\n currency: string;\n };\n exclTax?: {\n amount: number;\n currency: string;\n };\n };\n subtotal: {\n amount: number;\n currency: string;\n isTaxIncl: boolean;\n };\n shipping?: {\n amount: number;\n currency: string;\n isEstimated: boolean;\n };\n tax?: {\n amount: number;\n currency: string;\n breakdown?: CartTaxItem[];\n };\n};\n\nexport interface OrderSummaryProps\n extends Omit<HTMLAttributes<HTMLDivElement>, 'summary'> {\n isLoading?: boolean;\n summary: Summary;\n}\n\nexport const OrderSummary: FunctionComponent<OrderSummaryProps> = ({\n className,\n summary,\n isLoading = false,\n ...props\n}) => {\n const { total, subtotal, shipping, tax } = summary;\n\n return (\n <Card\n {...props}\n className={classes([\n 'checkout-order-summary',\n ['checkout-order-summary--loading', isLoading],\n className,\n ])}\n >\n <Heading\n level={2}\n className=\"checkout-order-summary__title\"\n children={<Text id=\"Checkout.OrderSummary.title\" />}\n />\n\n <Divider variant=\"primary\" />\n\n {isLoading && (\n <ProgressSpinner className=\"checkout-order-summary__spinner\" />\n )}\n\n <div\n data-testid=\"order-summary-subtotal\"\n className=\"checkout-order-summary__row\"\n >\n <p>\n <Text id=\"Checkout.OrderSummary.subtotal\" />\n </p>\n <Price\n amount={subtotal.amount}\n currency={subtotal.currency}\n className={classes(['checkout-order-summary__price', className])}\n />\n </div>\n\n {subtotal.isTaxIncl && (\n <div\n data-testid=\"order-summary-subtotal-incl-tax\"\n className=\"checkout-order-summary__row checkout-order-summary__row--muted\"\n >\n <p>\n <Text id=\"Checkout.OrderSummary.includingTaxes\" />\n </p>\n </div>\n )}\n\n {shipping != undefined && (\n <div\n data-testid=\"order-summary-shipping\"\n className=\"checkout-order-summary__row\"\n >\n <p data-testid=\"order-summary-shipping-label\">\n {shipping.isEstimated ? (\n <Text id=\"Checkout.OrderSummary.estimatedShipping\" />\n ) : (\n <Text id=\"Checkout.OrderSummary.shipping\" />\n )}\n </p>\n\n {shipping.amount === 0 ? (\n <p\n data-testid=\"estimated-shipping\"\n className=\"checkout-order-summary__price\"\n >\n <Text id=\"Checkout.OrderSummary.freeShipping\" />\n </p>\n ) : (\n <Price\n data-testid=\"estimated-shipping\"\n amount={shipping.amount}\n currency={shipping.currency}\n className={classes(['checkout-order-summary__price', className])}\n />\n )}\n </div>\n )}\n\n {tax != undefined && !tax.breakdown && (\n <div\n data-testid=\"order-summary-tax\"\n className=\"checkout-order-summary__row\"\n >\n <p>\n <Text id=\"Checkout.OrderSummary.tax\" />\n </p>\n <Price\n amount={tax.amount}\n currency={tax.currency}\n className={classes(['checkout-order-summary__price', className])}\n />\n </div>\n )}\n\n {tax != undefined && tax.breakdown && (\n <>\n <Divider variant=\"secondary\" />\n\n <div className=\"checkout-order-summary__row checkout-order-summary__row--margin-bottom\">\n <p>\n <Text id=\"Checkout.OrderSummary.taxBreakdown\" />\n </p>\n </div>\n\n {tax.breakdown.map((tax) => (\n <div\n data-testid=\"order-summary-tax-breakdown\"\n key={tax.label}\n className=\"checkout-order-summary__row checkout-order-summary__row--muted\"\n >\n <p>{tax.label}</p>\n\n <Price\n amount={tax.amount.value!}\n currency={tax.amount.currency!}\n className={classes([\n 'checkout-order-summary__price',\n className,\n ])}\n />\n </div>\n ))}\n\n <div\n data-testid=\"order-summary-tax-breakdown-total\"\n className=\"checkout-order-summary__row checkout-order-summary__row--strong checkout-order-summary__row--margin-top\"\n >\n <p>\n <Text id=\"Checkout.OrderSummary.taxTotal\" />\n </p>\n\n <Price\n amount={tax.amount}\n currency={tax.currency}\n className={classes(['checkout-order-summary__price', className])}\n />\n </div>\n\n <Divider variant=\"secondary\" />\n </>\n )}\n\n <div\n data-testid=\"order-summary-total-incl-tax\"\n className=\"checkout-order-summary__row checkout-order-summary__row--emphasized\"\n >\n <p>\n <Text id=\"Checkout.OrderSummary.total\" />\n </p>\n\n <Price\n amount={total.inclTax.amount}\n currency={total.inclTax.currency}\n className={classes(['checkout-order-summary__price', className])}\n />\n </div>\n\n {total.exclTax != undefined && (\n <div\n data-testid=\"order-summary-total-excl-tax\"\n className=\"checkout-order-summary__row checkout-order-summary__row--muted\"\n >\n <p>\n <Text id=\"Checkout.OrderSummary.totalExclTax\" />\n </p>\n\n <Price\n amount={total.exclTax.amount}\n currency={total.exclTax.currency}\n className={classes(['checkout-order-summary__price', className])}\n />\n </div>\n )}\n </Card>\n );\n};\n","export const ZERO_AMOUNT = 0;\n","import { CartTaxItem } from '@/checkout/__generated__/types';\nimport { OrderSummarySkeleton } from '@/checkout/components';\nimport {\n OrderSummary as OrderSummaryComponent,\n Summary,\n} from '@/checkout/components/OrderSummary/OrderSummary';\nimport { useStore } from '@/checkout/context/store';\nimport { cartSignal, selectedShippingMethodSignal } from '@/checkout/signals';\nimport { Container } from '@adobe/elsie/lib';\nimport { HTMLAttributes } from 'preact/compat';\nimport { ZERO_AMOUNT } from './constants';\n\nexport interface OrderSummaryProps extends HTMLAttributes<HTMLDivElement> {}\n\nexport type OrderSummaryState = {\n isLoading: boolean;\n summary?: Summary;\n};\n\nconst INCLUDE_TAX = 2;\n\nconst loadingState: OrderSummaryState = {\n isLoading: true,\n};\n\nexport function useOrderSummary(): OrderSummaryState {\n const { config } = useStore();\n const isLoadingStoreConfig = config === undefined;\n\n const cartData = cartSignal.value.data;\n const isLoadingCartData = cartData === undefined;\n\n if (isLoadingStoreConfig || isLoadingCartData) return loadingState;\n\n const taxCartDisplay = config.taxCartDisplay;\n const inclTaxInSubtotal =\n taxCartDisplay.shoppingCartDisplaySubtotal === INCLUDE_TAX;\n\n const shippingAddresses = cartData?.shippingAddresses;\n const hasAddresses = !!shippingAddresses?.length;\n\n const prices = cartData?.prices;\n\n const grandTotal = prices?.grand_total;\n const hasGrandTotal = !!grandTotal;\n\n const subtotal = inclTaxInSubtotal\n ? prices?.subtotal_including_tax\n : prices?.subtotal_excluding_tax;\n\n const appliedTaxes = prices?.applied_taxes || [];\n const hasTaxesApplied = !!appliedTaxes.length;\n\n if (!hasGrandTotal) return { isLoading: false };\n\n const summary: Summary = {\n total: {\n inclTax: {\n amount: grandTotal.value!,\n currency: grandTotal.currency!,\n },\n },\n subtotal: {\n amount: subtotal!.value!,\n currency: subtotal!.currency!,\n isTaxIncl: inclTaxInSubtotal,\n },\n };\n\n if (hasTaxesApplied) {\n const totalTaxAmount = appliedTaxes.reduce(\n (total, tax) => total + tax!.amount.value!,\n ZERO_AMOUNT\n );\n\n const firstTax = appliedTaxes[0];\n\n summary.tax = {\n amount: totalTaxAmount,\n currency: firstTax!.amount.currency!,\n };\n\n if (taxCartDisplay.shoppingCartDisplayFullSummary) {\n summary.tax.breakdown = appliedTaxes as CartTaxItem[];\n }\n }\n\n if (!hasTaxesApplied && taxCartDisplay.shoppingCartDisplayZeroTax) {\n summary.tax = {\n amount: ZERO_AMOUNT,\n currency: summary.total.inclTax.currency,\n };\n }\n\n if (taxCartDisplay.shoppingCartDisplayGrandTotal) {\n const totalExclTax = summary.tax\n ? summary.total.inclTax.amount - summary.tax.amount\n : summary.total.inclTax.amount;\n\n summary.total.exclTax = {\n amount: totalExclTax,\n currency: summary.total.inclTax.currency,\n };\n }\n\n if (hasAddresses) {\n const firstAddress = shippingAddresses[0];\n const shippingMethod = firstAddress?.selectedShippingMethod;\n\n if (!shippingMethod) return { isLoading: false, summary };\n\n summary.shipping = {\n amount: shippingMethod?.amount.value!,\n currency: shippingMethod?.amount.currency!,\n isEstimated: false,\n };\n\n return { isLoading: false, summary };\n }\n\n if (!selectedShippingMethodSignal.value) return { isLoading: false, summary };\n\n summary.shipping = {\n amount: selectedShippingMethodSignal.value.amount.value,\n currency: selectedShippingMethodSignal.value.amount.currency,\n isEstimated: true,\n };\n\n summary.total.inclTax.amount += summary.shipping.amount;\n if (summary.total.exclTax) {\n summary.total.exclTax.amount += summary.shipping.amount;\n }\n\n return { isLoading: false, summary };\n}\n\nexport const OrderSummary: Container<OrderSummaryProps> = ({ ...props }) => {\n const { isLoading, summary } = useOrderSummary();\n\n return (\n <div {...props}>\n {!summary && <OrderSummarySkeleton />}\n\n {summary && (\n <OrderSummaryComponent isLoading={isLoading} summary={summary} />\n )}\n </div>\n );\n};\n","import { FunctionComponent } from 'preact';\nimport { Skeleton, SkeletonRow } from '@adobe/elsie/components';\n\nexport const OrderSummarySkeleton: FunctionComponent = () => {\n return (\n <Skeleton\n data-testid=\"order-summary-skeleton\"\n className=\"order-summary__skeleton\"\n >\n <SkeletonRow variant=\"heading\" size=\"medium\" />\n <SkeletonRow variant=\"empty\" size=\"medium\" />\n <SkeletonRow size=\"large\" fullWidth={true} lines={3} />\n </Skeleton>\n );\n};\n"],"names":["OrderSummary","className","summary","isLoading","props","total","subtotal","shipping","tax","_jsxs","Card","classes","children","_jsx","Heading","level","Text","id","Divider","variant","ProgressSpinner","Price","amount","currency","isTaxIncl","undefined","isEstimated","breakdown","_Fragment","map","label","value","inclTax","exclTax","ZERO_AMOUNT","INCLUDE_TAX","loadingState","useOrderSummary","config","useStore","isLoadingStoreConfig","cartData","cartSignal","data","taxCartDisplay","inclTaxInSubtotal","shoppingCartDisplaySubtotal","shippingAddresses","hasAddresses","length","prices","grandTotal","grand_total","hasGrandTotal","subtotal_including_tax","subtotal_excluding_tax","appliedTaxes","applied_taxes","hasTaxesApplied","totalTaxAmount","reduce","firstTax","shoppingCartDisplayFullSummary","shoppingCartDisplayZeroTax","shoppingCartDisplayGrandTotal","totalExclTax","firstAddress","shippingMethod","selectedShippingMethod","selectedShippingMethodSignal","OrderSummarySkeleton","OrderSummaryComponent","Skeleton","SkeletonRow","size","fullWidth","lines"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{e as I}from"./getMultilineValues.js";import{m as T,i as N}from"./getStoreConfig.js";import"@dropins/tools/event-bus.js";import{f as j,r as O}from"./transform-shipping-methods.js";import{s as y}from"./SelectedShippingMethodSignal.js";import{s as B}from"./setShippingMethods.js";import{classes as H}from"@dropins/tools/lib.js";import{H as P}from"./ToggleButton.js";import{IllustratedMessage as V,Icon as Z,ProgressSpinner as q,RadioButton as D,Price as F,Skeleton as $,SkeletonRow as C}from"@dropins/tools/components.js";import"@dropins/tools/preact-hooks.js";/* empty css */import{jsx as t,jsxs as E,Fragment as A}from"@dropins/tools/preact-jsx-runtime.js";import*as r from"@dropins/tools/preact-compat.js";import{useCallback as G,useMemo as J,useEffect as x}from"@dropins/tools/preact-compat.js";import{useText as K}from"@dropins/tools/i18n.js";const Q=e=>r.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},r.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M2.47266 4.90002H15.1851V10.9645H21.2495L23 12.715V17.6124H20.073",stroke:"currentColor",strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round"}),r.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M15.1758 5.87573H19.0019L21.0394 10.7636",stroke:"currentColor",strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round"}),r.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M9.76151 16.7898C9.76151 18.0525 8.72845 19.076 7.46582 19.076C6.20318 19.076 5.17969 18.0429 5.17969 16.7803C5.17969 15.5176 6.20318 14.4941 7.46582 14.4941C8.72845 14.4941 9.75195 15.5176 9.76151 16.7803C9.76151 16.7803 9.76151 16.7803 9.76151 16.7898Z",stroke:"currentColor",strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round"}),r.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M19.8726 16.7898C19.8726 18.062 18.8491 19.0855 17.5769 19.0855C16.3047 19.0855 15.2812 18.062 15.2812 16.7898C15.2812 15.5176 16.3047 14.4941 17.5769 14.4941C18.8491 14.4941 19.8726 15.5176 19.8726 16.7898Z",stroke:"currentColor",strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round"}),r.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M8.08792 7.63574H1.69824",stroke:"currentColor",strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round"}),r.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M7.11229 10.3619H1",stroke:"currentColor",strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round"}),r.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M5.16084 13.0402H1.92773",stroke:"currentColor",strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round"}),r.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M9.76172 16.7611H15.2809",stroke:"currentColor",strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round"}),r.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M2.38672 16.7611H5.17025",stroke:"currentColor",strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round"})),U=({className:e,isLoading:i=!1,onSelectionChange:s=()=>{},options:l,selection:o,...g})=>{const v=K({Title:"Checkout.ShippingMethods.title",EmptyState:"Checkout.ShippingMethods.emptyState"});return l===void 0?t(X,{}):E("div",{...g,className:H(["checkout-shipping-methods",e]),children:[t(P,{level:3,className:"checkout-shipping-methods__title",children:v.Title}),!i&&l.length===0&&t(V,{icon:t(Z,{source:Q}),message:t("p",{children:v.EmptyState})}),E("div",{className:H(["checkout-shipping-methods__content"]),children:[i&&t(q,{className:"checkout-shipping-methods__spinner"}),t("div",{className:H(["checkout-shipping-methods__options",["checkout-shipping-methods__options--loading",i]]),children:l.map(n=>t(D,{"data-testid":"shipping-method-radiobutton","aria-busy":i,id:n.value,name:"shipping-method",className:"checkout-shipping-methods__method",label:E(A,{children:[t(F,{amount:n.amount.value,currency:n.amount.currency})," ",t("span",{children:n.carrier.title})]}),description:n.title,value:n.value,checked:(o==null?void 0:o.value)===n.value,onChange:()=>s(n)},n.value))})]})]})},X=()=>E($,{"data-testid":"shipping-methods-skeleton",children:[t(C,{variant:"heading",size:"small"}),t(C,{variant:"empty",size:"small"}),t(C,{size:"medium",fullWidth:!0}),t(C,{size:"medium",fullWidth:!0})]}),W=(e,i)=>e.code===i.code&&e.carrier.code===i.carrier.code;function Y(e){const s=T().config,l=!s,o=N.value.data,g=N.value.pending,v=j.value.data,n=j.value.pending,m=y.value,u=o==null?void 0:o.id,L=o==null?void 0:o.shippingAddresses,p=L==null?void 0:L[0],b=!!p,M=p==null?void 0:p.availableShippingMethods,k=p==null?void 0:p.selectedShippingMethod,a=M||v,w=G(c=>{if(!u||!b)return;const h={method_code:c.code,carrier_code:c.carrier.code};B({cartId:u,shippingMethods:[h]}).catch(S=>{console.error("setting shipping methods on cart failed:",S)})},[u,b]),R=c=>{y.value=c},d=J(()=>{if(!(a!=null&&a.length))return;const c=a[0],h=m||k;return h?a.some(f=>W(f,h))?h:c:a.find(_=>_.carrier.code===(e==null?void 0:e.carrierCode)&&_.code===(e==null?void 0:e.methodCode))||c},[m,k,a,e]);return x(()=>{d&&((!m||!W(d,m))&&(y.value=d),(!k||!W(d,k))&&w(d))},[d,m,k,w]),x(()=>{if(!u||M)return;const{country:c,selectedRegion:h,selectedRegionId:S}=O.value,f=c||(s==null?void 0:s.defaultCountry);f&&I({cartId:u,criteria:{country_code:f,region_name:h,region_id:S}}).catch(z=>{j.value={pending:!1,data:[]},console.error("shipping methods estimation failed:",z)})},[u,M,s]),{isLoading:g||l||n,options:a,selection:d,onSelectionChange:R}}const ge=({preSelectedMethod:e,...i})=>{const{isLoading:s,options:l,selection:o,onSelectionChange:g}=Y(e);return t(U,{...i,className:"checkout-shipping-methods",isLoading:s,onSelectionChange:g,options:l,selection:o})};export{ge as S};
1
+ import{e as I}from"./getMultilineValues.js";import{m as T,i as N}from"./getStoreConfig.js";import"@dropins/tools/event-bus.js";import{f as y,r as O}from"./transform-shipping-methods.js";import{s as j}from"./SelectedShippingMethodSignal.js";import{s as B}from"./setShippingMethods.js";import{classes as H}from"@dropins/tools/lib.js";import{H as D}from"./ToggleButton.js";import{IllustratedMessage as P,Icon as V,ProgressSpinner as Z,RadioButton as q,Price as F,Divider as $,Skeleton as A,SkeletonRow as C}from"@dropins/tools/components.js";import"@dropins/tools/preact-hooks.js";/* empty css */import{jsx as t,jsxs as E,Fragment as G}from"@dropins/tools/preact-jsx-runtime.js";import*as r from"@dropins/tools/preact-compat.js";import{useCallback as J,useMemo as K,useEffect as x}from"@dropins/tools/preact-compat.js";import{useText as Q}from"@dropins/tools/i18n.js";const U=e=>r.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},r.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M2.47266 4.90002H15.1851V10.9645H21.2495L23 12.715V17.6124H20.073",stroke:"currentColor",strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round"}),r.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M15.1758 5.87573H19.0019L21.0394 10.7636",stroke:"currentColor",strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round"}),r.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M9.76151 16.7898C9.76151 18.0525 8.72845 19.076 7.46582 19.076C6.20318 19.076 5.17969 18.0429 5.17969 16.7803C5.17969 15.5176 6.20318 14.4941 7.46582 14.4941C8.72845 14.4941 9.75195 15.5176 9.76151 16.7803C9.76151 16.7803 9.76151 16.7803 9.76151 16.7898Z",stroke:"currentColor",strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round"}),r.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M19.8726 16.7898C19.8726 18.062 18.8491 19.0855 17.5769 19.0855C16.3047 19.0855 15.2812 18.062 15.2812 16.7898C15.2812 15.5176 16.3047 14.4941 17.5769 14.4941C18.8491 14.4941 19.8726 15.5176 19.8726 16.7898Z",stroke:"currentColor",strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round"}),r.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M8.08792 7.63574H1.69824",stroke:"currentColor",strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round"}),r.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M7.11229 10.3619H1",stroke:"currentColor",strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round"}),r.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M5.16084 13.0402H1.92773",stroke:"currentColor",strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round"}),r.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M9.76172 16.7611H15.2809",stroke:"currentColor",strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round"}),r.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M2.38672 16.7611H5.17025",stroke:"currentColor",strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round"})),X=({className:e,isLoading:i=!1,onSelectionChange:s=()=>{},options:l,selection:o,...g})=>{const v=Q({Title:"Checkout.ShippingMethods.title",EmptyState:"Checkout.ShippingMethods.emptyState"});return l===void 0?t(Y,{}):E("div",{...g,className:H(["checkout-shipping-methods",e]),children:[t(D,{level:3,className:"checkout-shipping-methods__title",children:v.Title}),!i&&l.length===0&&t(P,{icon:t(V,{source:U}),message:t("p",{children:v.EmptyState})}),E("div",{className:H(["checkout-shipping-methods__content"]),children:[i&&t(Z,{className:"checkout-shipping-methods__spinner"}),t("div",{className:H(["checkout-shipping-methods__options",["checkout-shipping-methods__options--loading",i]]),children:l.map(n=>t(q,{"data-testid":"shipping-method-radiobutton","aria-busy":i,id:n.value,name:"shipping-method",className:"checkout-shipping-methods__method",label:E(G,{children:[t(F,{amount:n.amount.value,currency:n.amount.currency})," ",t("span",{children:n.carrier.title})]}),description:n.title,value:n.value,checked:(o==null?void 0:o.value)===n.value,onChange:()=>s(n)},n.value))})]}),t($,{variant:"primary"})]})},Y=()=>E(A,{"data-testid":"shipping-methods-skeleton",children:[t(C,{variant:"heading",size:"small"}),t(C,{variant:"empty",size:"small"}),t(C,{size:"medium",fullWidth:!0}),t(C,{size:"medium",fullWidth:!0})]}),W=(e,i)=>e.code===i.code&&e.carrier.code===i.carrier.code;function ee(e){const s=T().config,l=!s,o=N.value.data,g=N.value.pending,v=y.value.data,n=y.value.pending,m=j.value,u=o==null?void 0:o.id,L=o==null?void 0:o.shippingAddresses,p=L==null?void 0:L[0],b=!!p,M=p==null?void 0:p.availableShippingMethods,k=p==null?void 0:p.selectedShippingMethod,a=M||v,w=J(c=>{if(!u||!b)return;const h={method_code:c.code,carrier_code:c.carrier.code};B({cartId:u,shippingMethods:[h]}).catch(S=>{console.error("setting shipping methods on cart failed:",S)})},[u,b]),R=c=>{j.value=c},d=K(()=>{if(!(a!=null&&a.length))return;const c=a[0],h=m||k;return h?a.some(f=>W(f,h))?h:c:a.find(_=>_.carrier.code===(e==null?void 0:e.carrierCode)&&_.code===(e==null?void 0:e.methodCode))||c},[m,k,a,e]);return x(()=>{d&&((!m||!W(d,m))&&(j.value=d),(!k||!W(d,k))&&w(d))},[d,m,k,w]),x(()=>{if(!u||M)return;const{country:c,selectedRegion:h,selectedRegionId:S}=O.value,f=c||(s==null?void 0:s.defaultCountry);f&&I({cartId:u,criteria:{country_code:f,region_name:h,region_id:S}}).catch(z=>{y.value={pending:!1,data:[]},console.error("shipping methods estimation failed:",z)})},[u,M,s]),{isLoading:g||l||n,options:a,selection:d,onSelectionChange:R}}const me=({preSelectedMethod:e,...i})=>{const{isLoading:s,options:l,selection:o,onSelectionChange:g}=ee(e);return t(X,{...i,className:"checkout-shipping-methods",isLoading:s,onSelectionChange:g,options:l,selection:o})};export{me as S};
2
2
  //# sourceMappingURL=ShippingMethods.js.map