@commercelayer/react-components 4.8.0-beta.2 → 4.8.0-beta.3

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 (297) hide show
  1. package/lib/cjs/components/MetadataInput.d.ts +1 -0
  2. package/lib/cjs/components/addresses/Address.d.ts +18 -0
  3. package/lib/cjs/components/addresses/AddressCountrySelector.d.ts +24 -0
  4. package/lib/cjs/components/addresses/AddressCountrySelector.js +1 -1
  5. package/lib/cjs/components/addresses/AddressField.d.ts +22 -0
  6. package/lib/cjs/components/addresses/AddressInput.d.ts +19 -0
  7. package/lib/cjs/components/addresses/AddressInput.js +1 -1
  8. package/lib/cjs/components/addresses/AddressStateSelector.d.ts +26 -0
  9. package/lib/cjs/components/addresses/AddressStateSelector.js +1 -1
  10. package/lib/cjs/components/addresses/AddressesContainer.d.ts +22 -0
  11. package/lib/cjs/components/addresses/AddressesEmpty.d.ts +13 -0
  12. package/lib/cjs/components/addresses/BillingAddressForm.d.ts +20 -0
  13. package/lib/cjs/components/addresses/SaveAddressesButton.js +1 -1
  14. package/lib/cjs/components/addresses/ShippingAddressContainer.d.ts +1 -0
  15. package/lib/cjs/components/addresses/ShippingAddressForm.d.ts +17 -0
  16. package/lib/cjs/components/auth/CommerceLayer.d.ts +1 -0
  17. package/lib/cjs/components/customers/CustomerAddressForm.d.ts +5 -0
  18. package/lib/cjs/components/customers/CustomerAddressForm.js +1 -1
  19. package/lib/cjs/components/customers/CustomerContainer.d.ts +20 -1
  20. package/lib/cjs/components/customers/CustomerField.d.ts +16 -0
  21. package/lib/cjs/components/customers/CustomerInput.d.ts +1 -0
  22. package/lib/cjs/components/customers/CustomerInput.js +1 -1
  23. package/lib/cjs/components/customers/CustomerPaymentSource.d.ts +1 -0
  24. package/lib/cjs/components/customers/CustomerPaymentSourceEmpty.d.ts +1 -0
  25. package/lib/cjs/components/customers/MyAccountLink.d.ts +11 -0
  26. package/lib/cjs/components/customers/MyIdentityLink.d.ts +16 -0
  27. package/lib/cjs/components/customers/MyIdentityLink.js +1 -1
  28. package/lib/cjs/components/errors/Errors.d.ts +1 -0
  29. package/lib/cjs/components/errors/Errors.js +1 -1
  30. package/lib/cjs/components/gift_cards/GiftCard.d.ts +1 -0
  31. package/lib/cjs/components/gift_cards/GiftCardCurrencySelector.d.ts +1 -0
  32. package/lib/cjs/components/gift_cards/GiftCardInput.d.ts +1 -0
  33. package/lib/cjs/components/gift_cards/GiftCardOrCouponCode.d.ts +1 -0
  34. package/lib/cjs/components/gift_cards/GiftCardOrCouponForm.d.ts +1 -0
  35. package/lib/cjs/components/gift_cards/GiftCardOrCouponInput.d.ts +1 -0
  36. package/lib/cjs/components/in_stock_subscriptions/InStockSubscriptionButton.d.ts +1 -0
  37. package/lib/cjs/components/in_stock_subscriptions/InStockSubscriptionsContainer.d.ts +1 -0
  38. package/lib/cjs/components/line_items/LineItem.d.ts +1 -0
  39. package/lib/cjs/components/line_items/LineItemAmount.d.ts +1 -0
  40. package/lib/cjs/components/line_items/LineItemCode.d.ts +1 -0
  41. package/lib/cjs/components/line_items/LineItemField.d.ts +1 -0
  42. package/lib/cjs/components/line_items/LineItemImage.d.ts +1 -0
  43. package/lib/cjs/components/line_items/LineItemName.d.ts +1 -0
  44. package/lib/cjs/components/line_items/LineItemQuantity.d.ts +5 -0
  45. package/lib/cjs/components/line_items/LineItemQuantity.js +1 -1
  46. package/lib/cjs/components/line_items/LineItemsContainer.d.ts +1 -0
  47. package/lib/cjs/components/line_items/LineItemsContainer.js +1 -1
  48. package/lib/cjs/components/line_items/LineItemsCount.d.ts +1 -0
  49. package/lib/cjs/components/line_items/LineItemsCount.js +1 -1
  50. package/lib/cjs/components/line_items/LineItemsEmpty.d.ts +1 -0
  51. package/lib/cjs/components/orders/AddToCartButton.d.ts +32 -0
  52. package/lib/cjs/components/orders/AdjustmentAmount.d.ts +1 -0
  53. package/lib/cjs/components/orders/CartLink.d.ts +8 -0
  54. package/lib/cjs/components/orders/CartLink.js +1 -1
  55. package/lib/cjs/components/orders/CheckoutLink.d.ts +16 -0
  56. package/lib/cjs/components/orders/DiscountAmount.d.ts +1 -0
  57. package/lib/cjs/components/orders/GiftCardAmount.d.ts +1 -0
  58. package/lib/cjs/components/orders/HostedCart.d.ts +30 -8
  59. package/lib/cjs/components/orders/HostedCart.js +1 -1
  60. package/lib/cjs/components/orders/OrderContainer.d.ts +34 -0
  61. package/lib/cjs/components/orders/OrderContainer.js +1 -1
  62. package/lib/cjs/components/orders/OrderList.d.ts +1 -0
  63. package/lib/cjs/components/orders/OrderList.js +1 -1
  64. package/lib/cjs/components/orders/OrderListEmpty.d.ts +1 -0
  65. package/lib/cjs/components/orders/OrderListPaginationButtons.d.ts +1 -0
  66. package/lib/cjs/components/orders/OrderListPaginationInfo.d.ts +1 -0
  67. package/lib/cjs/components/orders/OrderListRow.d.ts +1 -0
  68. package/lib/cjs/components/orders/OrderNumber.d.ts +1 -0
  69. package/lib/cjs/components/orders/OrderStorage.d.ts +23 -0
  70. package/lib/cjs/components/orders/PaymentMethodAmount.d.ts +1 -0
  71. package/lib/cjs/components/orders/PrivacyAndTermsCheckbox.d.ts +1 -0
  72. package/lib/cjs/components/orders/ShippingAmount.d.ts +1 -0
  73. package/lib/cjs/components/orders/SubTotalAmount.d.ts +1 -0
  74. package/lib/cjs/components/orders/TaxesAmount.d.ts +1 -0
  75. package/lib/cjs/components/orders/TotalAmount.d.ts +1 -0
  76. package/lib/cjs/components/parcels/ParcelField.d.ts +1 -0
  77. package/lib/cjs/components/parcels/ParcelLineItem.d.ts +1 -0
  78. package/lib/cjs/components/parcels/ParcelLineItemField.d.ts +1 -0
  79. package/lib/cjs/components/parcels/ParcelLineItemsCount.d.ts +1 -0
  80. package/lib/cjs/components/parcels/Parcels.d.ts +1 -0
  81. package/lib/cjs/components/parcels/ParcelsCount.d.ts +1 -0
  82. package/lib/cjs/components/payment_gateways/AdyenGateway.d.ts +1 -0
  83. package/lib/cjs/components/payment_gateways/BraintreeGateway.d.ts +1 -0
  84. package/lib/cjs/components/payment_gateways/CheckoutComGateway.d.ts +1 -0
  85. package/lib/cjs/components/payment_gateways/ExternalGateway.d.ts +1 -0
  86. package/lib/cjs/components/payment_gateways/KlarnaGateway.d.ts +1 -0
  87. package/lib/cjs/components/payment_gateways/PaymentGateway.d.ts +1 -0
  88. package/lib/cjs/components/payment_gateways/PaymentGateway.js +1 -1
  89. package/lib/cjs/components/payment_gateways/PaypalGateway.d.ts +1 -0
  90. package/lib/cjs/components/payment_gateways/StripeGateway.d.ts +1 -0
  91. package/lib/cjs/components/payment_gateways/WireTransferGateway.d.ts +1 -0
  92. package/lib/cjs/components/payment_methods/PaymentMethod.d.ts +1 -0
  93. package/lib/cjs/components/payment_methods/PaymentMethodName.d.ts +1 -0
  94. package/lib/cjs/components/payment_methods/PaymentMethodPrice.d.ts +1 -0
  95. package/lib/cjs/components/payment_source/BraintreePayment.d.ts +1 -0
  96. package/lib/cjs/components/payment_source/CheckoutComPayment.d.ts +1 -0
  97. package/lib/cjs/components/payment_source/ExternalPayment.d.ts +1 -0
  98. package/lib/cjs/components/payment_source/ExternalPayment.js +1 -1
  99. package/lib/cjs/components/payment_source/KlarnaPayment.d.ts +1 -0
  100. package/lib/cjs/components/payment_source/PaymentSource.d.ts +1 -0
  101. package/lib/cjs/components/payment_source/PaymentSource.js +1 -1
  102. package/lib/cjs/components/payment_source/PaymentSourceBrandIcon.d.ts +1 -0
  103. package/lib/cjs/components/payment_source/PaymentSourceBrandName.d.ts +1 -0
  104. package/lib/cjs/components/payment_source/PaymentSourceDetail.d.ts +1 -0
  105. package/lib/cjs/components/payment_source/StripeExpressPayment.d.ts +1 -0
  106. package/lib/cjs/components/payment_source/StripePayment.d.ts +1 -0
  107. package/lib/cjs/components/payment_source/WireTransferPayment.d.ts +1 -0
  108. package/lib/cjs/components/prices/Price.d.ts +1 -0
  109. package/lib/cjs/components/prices/PricesContainer.d.ts +1 -0
  110. package/lib/cjs/components/shipments/ShipmentField.d.ts +1 -0
  111. package/lib/cjs/components/shipments/ShipmentsCount.d.ts +1 -0
  112. package/lib/cjs/components/shipping_methods/ShippingMethodName.d.ts +1 -0
  113. package/lib/cjs/components/shipping_methods/ShippingMethodPrice.d.ts +1 -0
  114. package/lib/cjs/components/shipping_methods/ShippingMethodRadioButton.d.ts +1 -0
  115. package/lib/cjs/components/skus/AvailabilityContainer.d.ts +27 -1
  116. package/lib/cjs/components/skus/AvailabilityContainer.js +1 -1
  117. package/lib/cjs/components/skus/AvailabilityTemplate.d.ts +17 -3
  118. package/lib/cjs/components/skus/DeliveryLeadTime.d.ts +1 -0
  119. package/lib/cjs/components/skus/SkuField.d.ts +14 -2
  120. package/lib/cjs/components/skus/Skus.d.ts +12 -0
  121. package/lib/cjs/components/skus/SkusContainer.d.ts +14 -1
  122. package/lib/cjs/components/stock_transfers/StockTransfer.d.ts +1 -0
  123. package/lib/cjs/components/stock_transfers/StockTransferField.d.ts +1 -0
  124. package/lib/cjs/components/utils/AddressCardsTemplate.d.ts +1 -0
  125. package/lib/cjs/components/utils/BaseOrderPrice.d.ts +1 -0
  126. package/lib/cjs/components/utils/GenericFieldComponent.d.ts +6 -0
  127. package/lib/cjs/components/utils/PaymentCardsTemplate.d.ts +1 -0
  128. package/lib/cjs/components/utils/PriceTemplate.d.ts +1 -0
  129. package/lib/cjs/components/utils/getAllErrors.d.ts +1 -0
  130. package/lib/cjs/reducers/AddressReducer.js +1 -1
  131. package/lib/cjs/reducers/AvailabilityReducer.d.ts +3 -2
  132. package/lib/cjs/reducers/AvailabilityReducer.js +1 -1
  133. package/lib/cjs/reducers/CustomerReducer.d.ts +1 -1
  134. package/lib/cjs/reducers/CustomerReducer.js +1 -1
  135. package/lib/cjs/reducers/LineItemReducer.d.ts +2 -1
  136. package/lib/cjs/reducers/LineItemReducer.js +1 -1
  137. package/lib/cjs/typings/globals.d.ts +1 -0
  138. package/lib/cjs/utils/addressesManager.d.ts +5 -4
  139. package/lib/cjs/utils/addressesManager.js +1 -1
  140. package/lib/cjs/utils/countryStateCity.d.ts +798 -5
  141. package/lib/cjs/utils/countryStateCity.js +1 -1
  142. package/lib/cjs/utils/filterChildren.d.ts +1 -0
  143. package/lib/cjs/utils/getLoaderComponent.d.ts +1 -0
  144. package/lib/cjs/utils/getPrices.d.ts +1 -0
  145. package/lib/cjs/utils/validateFormFields.d.ts +1 -1
  146. package/lib/cjs/utils/validateFormFields.js +1 -1
  147. package/lib/esm/components/MetadataInput.d.ts +1 -0
  148. package/lib/esm/components/addresses/Address.d.ts +18 -0
  149. package/lib/esm/components/addresses/AddressCountrySelector.d.ts +24 -0
  150. package/lib/esm/components/addresses/AddressCountrySelector.js +1 -1
  151. package/lib/esm/components/addresses/AddressField.d.ts +22 -0
  152. package/lib/esm/components/addresses/AddressInput.d.ts +19 -0
  153. package/lib/esm/components/addresses/AddressInput.js +1 -1
  154. package/lib/esm/components/addresses/AddressStateSelector.d.ts +26 -0
  155. package/lib/esm/components/addresses/AddressStateSelector.js +1 -1
  156. package/lib/esm/components/addresses/AddressesContainer.d.ts +22 -0
  157. package/lib/esm/components/addresses/AddressesEmpty.d.ts +13 -0
  158. package/lib/esm/components/addresses/BillingAddressForm.d.ts +20 -0
  159. package/lib/esm/components/addresses/SaveAddressesButton.js +1 -1
  160. package/lib/esm/components/addresses/ShippingAddressContainer.d.ts +1 -0
  161. package/lib/esm/components/addresses/ShippingAddressForm.d.ts +17 -0
  162. package/lib/esm/components/auth/CommerceLayer.d.ts +1 -0
  163. package/lib/esm/components/customers/CustomerAddressForm.d.ts +5 -0
  164. package/lib/esm/components/customers/CustomerAddressForm.js +1 -1
  165. package/lib/esm/components/customers/CustomerContainer.d.ts +20 -1
  166. package/lib/esm/components/customers/CustomerField.d.ts +16 -0
  167. package/lib/esm/components/customers/CustomerInput.d.ts +1 -0
  168. package/lib/esm/components/customers/CustomerInput.js +1 -1
  169. package/lib/esm/components/customers/CustomerPaymentSource.d.ts +1 -0
  170. package/lib/esm/components/customers/CustomerPaymentSourceEmpty.d.ts +1 -0
  171. package/lib/esm/components/customers/MyAccountLink.d.ts +11 -0
  172. package/lib/esm/components/customers/MyIdentityLink.d.ts +16 -0
  173. package/lib/esm/components/customers/MyIdentityLink.js +1 -1
  174. package/lib/esm/components/errors/Errors.d.ts +1 -0
  175. package/lib/esm/components/errors/Errors.js +1 -1
  176. package/lib/esm/components/gift_cards/GiftCard.d.ts +1 -0
  177. package/lib/esm/components/gift_cards/GiftCardCurrencySelector.d.ts +1 -0
  178. package/lib/esm/components/gift_cards/GiftCardInput.d.ts +1 -0
  179. package/lib/esm/components/gift_cards/GiftCardOrCouponCode.d.ts +1 -0
  180. package/lib/esm/components/gift_cards/GiftCardOrCouponForm.d.ts +1 -0
  181. package/lib/esm/components/gift_cards/GiftCardOrCouponInput.d.ts +1 -0
  182. package/lib/esm/components/in_stock_subscriptions/InStockSubscriptionButton.d.ts +1 -0
  183. package/lib/esm/components/in_stock_subscriptions/InStockSubscriptionsContainer.d.ts +1 -0
  184. package/lib/esm/components/line_items/LineItem.d.ts +1 -0
  185. package/lib/esm/components/line_items/LineItemAmount.d.ts +1 -0
  186. package/lib/esm/components/line_items/LineItemCode.d.ts +1 -0
  187. package/lib/esm/components/line_items/LineItemField.d.ts +1 -0
  188. package/lib/esm/components/line_items/LineItemImage.d.ts +1 -0
  189. package/lib/esm/components/line_items/LineItemName.d.ts +1 -0
  190. package/lib/esm/components/line_items/LineItemQuantity.d.ts +5 -0
  191. package/lib/esm/components/line_items/LineItemQuantity.js +1 -1
  192. package/lib/esm/components/line_items/LineItemsContainer.d.ts +1 -0
  193. package/lib/esm/components/line_items/LineItemsContainer.js +1 -1
  194. package/lib/esm/components/line_items/LineItemsCount.d.ts +1 -0
  195. package/lib/esm/components/line_items/LineItemsCount.js +1 -1
  196. package/lib/esm/components/line_items/LineItemsEmpty.d.ts +1 -0
  197. package/lib/esm/components/orders/AddToCartButton.d.ts +32 -0
  198. package/lib/esm/components/orders/AdjustmentAmount.d.ts +1 -0
  199. package/lib/esm/components/orders/CartLink.d.ts +8 -0
  200. package/lib/esm/components/orders/CartLink.js +1 -1
  201. package/lib/esm/components/orders/CheckoutLink.d.ts +16 -0
  202. package/lib/esm/components/orders/DiscountAmount.d.ts +1 -0
  203. package/lib/esm/components/orders/GiftCardAmount.d.ts +1 -0
  204. package/lib/esm/components/orders/HostedCart.d.ts +30 -8
  205. package/lib/esm/components/orders/HostedCart.js +1 -1
  206. package/lib/esm/components/orders/OrderContainer.d.ts +34 -0
  207. package/lib/esm/components/orders/OrderContainer.js +1 -1
  208. package/lib/esm/components/orders/OrderList.d.ts +1 -0
  209. package/lib/esm/components/orders/OrderList.js +1 -1
  210. package/lib/esm/components/orders/OrderListEmpty.d.ts +1 -0
  211. package/lib/esm/components/orders/OrderListPaginationButtons.d.ts +1 -0
  212. package/lib/esm/components/orders/OrderListPaginationInfo.d.ts +1 -0
  213. package/lib/esm/components/orders/OrderListRow.d.ts +1 -0
  214. package/lib/esm/components/orders/OrderNumber.d.ts +1 -0
  215. package/lib/esm/components/orders/OrderStorage.d.ts +23 -0
  216. package/lib/esm/components/orders/PaymentMethodAmount.d.ts +1 -0
  217. package/lib/esm/components/orders/PrivacyAndTermsCheckbox.d.ts +1 -0
  218. package/lib/esm/components/orders/ShippingAmount.d.ts +1 -0
  219. package/lib/esm/components/orders/SubTotalAmount.d.ts +1 -0
  220. package/lib/esm/components/orders/TaxesAmount.d.ts +1 -0
  221. package/lib/esm/components/orders/TotalAmount.d.ts +1 -0
  222. package/lib/esm/components/parcels/ParcelField.d.ts +1 -0
  223. package/lib/esm/components/parcels/ParcelLineItem.d.ts +1 -0
  224. package/lib/esm/components/parcels/ParcelLineItemField.d.ts +1 -0
  225. package/lib/esm/components/parcels/ParcelLineItemsCount.d.ts +1 -0
  226. package/lib/esm/components/parcels/Parcels.d.ts +1 -0
  227. package/lib/esm/components/parcels/ParcelsCount.d.ts +1 -0
  228. package/lib/esm/components/payment_gateways/AdyenGateway.d.ts +1 -0
  229. package/lib/esm/components/payment_gateways/BraintreeGateway.d.ts +1 -0
  230. package/lib/esm/components/payment_gateways/CheckoutComGateway.d.ts +1 -0
  231. package/lib/esm/components/payment_gateways/ExternalGateway.d.ts +1 -0
  232. package/lib/esm/components/payment_gateways/KlarnaGateway.d.ts +1 -0
  233. package/lib/esm/components/payment_gateways/PaymentGateway.d.ts +1 -0
  234. package/lib/esm/components/payment_gateways/PaymentGateway.js +1 -1
  235. package/lib/esm/components/payment_gateways/PaypalGateway.d.ts +1 -0
  236. package/lib/esm/components/payment_gateways/StripeGateway.d.ts +1 -0
  237. package/lib/esm/components/payment_gateways/WireTransferGateway.d.ts +1 -0
  238. package/lib/esm/components/payment_methods/PaymentMethod.d.ts +1 -0
  239. package/lib/esm/components/payment_methods/PaymentMethodName.d.ts +1 -0
  240. package/lib/esm/components/payment_methods/PaymentMethodPrice.d.ts +1 -0
  241. package/lib/esm/components/payment_source/BraintreePayment.d.ts +1 -0
  242. package/lib/esm/components/payment_source/CheckoutComPayment.d.ts +1 -0
  243. package/lib/esm/components/payment_source/ExternalPayment.d.ts +1 -0
  244. package/lib/esm/components/payment_source/ExternalPayment.js +1 -1
  245. package/lib/esm/components/payment_source/KlarnaPayment.d.ts +1 -0
  246. package/lib/esm/components/payment_source/PaymentSource.d.ts +1 -0
  247. package/lib/esm/components/payment_source/PaymentSource.js +1 -1
  248. package/lib/esm/components/payment_source/PaymentSourceBrandIcon.d.ts +1 -0
  249. package/lib/esm/components/payment_source/PaymentSourceBrandName.d.ts +1 -0
  250. package/lib/esm/components/payment_source/PaymentSourceDetail.d.ts +1 -0
  251. package/lib/esm/components/payment_source/StripeExpressPayment.d.ts +1 -0
  252. package/lib/esm/components/payment_source/StripePayment.d.ts +1 -0
  253. package/lib/esm/components/payment_source/WireTransferPayment.d.ts +1 -0
  254. package/lib/esm/components/prices/Price.d.ts +1 -0
  255. package/lib/esm/components/prices/PricesContainer.d.ts +1 -0
  256. package/lib/esm/components/shipments/ShipmentField.d.ts +1 -0
  257. package/lib/esm/components/shipments/ShipmentsCount.d.ts +1 -0
  258. package/lib/esm/components/shipping_methods/ShippingMethodName.d.ts +1 -0
  259. package/lib/esm/components/shipping_methods/ShippingMethodPrice.d.ts +1 -0
  260. package/lib/esm/components/shipping_methods/ShippingMethodRadioButton.d.ts +1 -0
  261. package/lib/esm/components/skus/AvailabilityContainer.d.ts +27 -1
  262. package/lib/esm/components/skus/AvailabilityContainer.js +1 -1
  263. package/lib/esm/components/skus/AvailabilityTemplate.d.ts +17 -3
  264. package/lib/esm/components/skus/DeliveryLeadTime.d.ts +1 -0
  265. package/lib/esm/components/skus/SkuField.d.ts +14 -2
  266. package/lib/esm/components/skus/Skus.d.ts +12 -0
  267. package/lib/esm/components/skus/SkusContainer.d.ts +14 -1
  268. package/lib/esm/components/stock_transfers/StockTransfer.d.ts +1 -0
  269. package/lib/esm/components/stock_transfers/StockTransferField.d.ts +1 -0
  270. package/lib/esm/components/utils/AddressCardsTemplate.d.ts +1 -0
  271. package/lib/esm/components/utils/BaseOrderPrice.d.ts +1 -0
  272. package/lib/esm/components/utils/GenericFieldComponent.d.ts +6 -0
  273. package/lib/esm/components/utils/PaymentCardsTemplate.d.ts +1 -0
  274. package/lib/esm/components/utils/PriceTemplate.d.ts +1 -0
  275. package/lib/esm/components/utils/getAllErrors.d.ts +1 -0
  276. package/lib/esm/reducers/AddressReducer.js +1 -1
  277. package/lib/esm/reducers/AvailabilityReducer.d.ts +3 -2
  278. package/lib/esm/reducers/AvailabilityReducer.js +1 -1
  279. package/lib/esm/reducers/CustomerReducer.d.ts +1 -1
  280. package/lib/esm/reducers/CustomerReducer.js +1 -1
  281. package/lib/esm/reducers/LineItemReducer.d.ts +2 -1
  282. package/lib/esm/reducers/LineItemReducer.js +1 -1
  283. package/lib/esm/typings/globals.d.ts +1 -0
  284. package/lib/esm/utils/addressesManager.d.ts +5 -4
  285. package/lib/esm/utils/addressesManager.js +1 -1
  286. package/lib/esm/utils/countryStateCity.d.ts +798 -5
  287. package/lib/esm/utils/countryStateCity.js +1 -1
  288. package/lib/esm/utils/filterChildren.d.ts +1 -0
  289. package/lib/esm/utils/getLoaderComponent.d.ts +1 -0
  290. package/lib/esm/utils/getPrices.d.ts +1 -0
  291. package/lib/esm/utils/validateFormFields.d.ts +1 -1
  292. package/lib/esm/utils/validateFormFields.js +1 -1
  293. package/package.json +2 -4
  294. package/lib/cjs/utils/isEmptyStates.d.ts +0 -1
  295. package/lib/cjs/utils/isEmptyStates.js +0 -2
  296. package/lib/esm/utils/isEmptyStates.d.ts +0 -1
  297. package/lib/esm/utils/isEmptyStates.js +0 -2
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type BaseAmountComponent } from '../../typings/index';
2
3
  export declare function ShippingAmount(props: BaseAmountComponent): JSX.Element;
3
4
  export default ShippingAmount;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type BaseAmountComponent } from '../../typings/index';
2
3
  export declare function SubTotalAmount(props: BaseAmountComponent): JSX.Element;
3
4
  export default SubTotalAmount;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type BaseAmountComponent } from '../../typings/index';
2
3
  export declare function TaxesAmount(props: BaseAmountComponent): JSX.Element;
3
4
  export default TaxesAmount;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type BaseAmountComponent } from '../../typings/index';
2
3
  export declare function TotalAmount(props: BaseAmountComponent): JSX.Element;
3
4
  export default TotalAmount;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type ConditionalElement } from '../../typings/index';
2
3
  import { type TGenericChildrenProps, type TResources } from '../utils/GenericFieldComponent';
3
4
  type ParcelFieldChildrenProps = TGenericChildrenProps<TResources['Parcel']>;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import type { DefaultChildrenType } from '../../typings/globals';
2
3
  interface Props {
3
4
  children: DefaultChildrenType;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type ConditionalElement } from '../../typings/index';
2
3
  import { type TGenericChildrenProps, type TResources } from '../utils/GenericFieldComponent';
3
4
  type ParcelLineItemFieldChildrenProps = TGenericChildrenProps<TResources['ParcelLineItem']>;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type ChildrenFunction } from '../../typings/index';
2
3
  import type { Parcel } from '@commercelayer/sdk';
3
4
  interface ChildrenProps extends Omit<Props, 'children'> {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  interface Props {
2
3
  children: JSX.Element | JSX.Element[];
3
4
  filterBy?: string[];
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type ChildrenFunction } from '../../typings/index';
2
3
  import type { Parcel } from '@commercelayer/sdk';
3
4
  interface ChildrenProps extends Omit<Props, 'children'> {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type GatewayBaseType } from '../payment_gateways/PaymentGateway';
2
3
  type Props = GatewayBaseType;
3
4
  export declare function AdyenGateway(props: Props): JSX.Element | null;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type GatewayBaseType } from '../payment_gateways/PaymentGateway';
2
3
  type Props = GatewayBaseType;
3
4
  export declare function BraintreeGateway(props: Props): JSX.Element | null;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type GatewayBaseType } from '../payment_gateways/PaymentGateway';
2
3
  type Props = GatewayBaseType;
3
4
  export declare function CheckoutComGateway(props: Props): JSX.Element | null;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type GatewayBaseType } from '../payment_gateways/PaymentGateway';
2
3
  type Props = GatewayBaseType;
3
4
  export declare function ExternalGateway(props: Props): JSX.Element | null;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type GatewayBaseType } from '../payment_gateways/PaymentGateway';
2
3
  type Props = GatewayBaseType;
3
4
  export declare function KlarnaGateway(props: Props): JSX.Element | null;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type LoaderType } from '../../typings/index';
2
3
  import { type PaymentSourceProps } from '../payment_source/PaymentSource';
3
4
  export type GatewayBaseType = Props & {
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- import{jsx as _jsx}from"react/jsx-runtime";import OrderContext from"../../context/OrderContext";import PaymentMethodChildrenContext from"../../context/PaymentMethodChildrenContext";import PaymentMethodContext from"../../context/PaymentMethodContext";import{useContext,useEffect,useState}from"react";import getLoaderComponent from"../../utils/getLoaderComponent";import AdyenGateway from"./AdyenGateway";import StripeGateway from"./StripeGateway";import BraintreeGateway from"./BraintreeGateway";import PaypalGateway from"./PaypalGateway";import WireTransferGateway from"./WireTransferGateway";import CustomerContext from"../../context/CustomerContext";import CheckoutComGateway from"./CheckoutComGateway";import KlarnaGateway from"./KlarnaGateway";import{getExternalPaymentAttributes,getPaypalAttributes,getStripeAttributes}from"../../utils/getPaymentAttributes";import ExternalGateway from"./ExternalGateway";export function PaymentGateway({readonly,showCard,handleEditClick,children,templateCustomerCards,templateCustomerSaveToWallet,onClickCustomerCards,show,loader="Loading...",...p}){const loaderComponent=getLoaderComponent(loader),[loading,setLoading]=useState(!0),{payment,expressPayments}=useContext(PaymentMethodChildrenContext),{order}=useContext(OrderContext),{getCustomerPaymentSources}=useContext(CustomerContext),{currentPaymentMethodId,config,currentPaymentMethodType,setPaymentSource,paymentSource}=useContext(PaymentMethodContext),paymentResource=readonly?currentPaymentMethodType:payment?.payment_source_type;useEffect(()=>{if(payment?.id===currentPaymentMethodId&&paymentResource&&order?.payment_method?.payment_source_type===paymentResource&&!expressPayments){let attributes={};config!=null&&paymentResource==="paypal_payments"&&(attributes=getPaypalAttributes(paymentResource,config)),config!=null&&paymentResource==="external_payments"&&(attributes=getExternalPaymentAttributes(paymentResource,config)),config!=null&&paymentResource==="stripe_payments"&&(attributes=getStripeAttributes(paymentResource,config),attributes!=null&&attributes.return_url==null&&(attributes.return_url=window.location.href));const setPaymentSources=async()=>{await setPaymentSource({paymentResource,order,attributes}),getCustomerPaymentSources&&getCustomerPaymentSources()};(!paymentSource&&order?.payment_method.id&&show&&!expressPayments||(!paymentSource&&!expressPayments||paymentSource?.type!==paymentResource)&&show)&&setPaymentSources(),paymentSource?.mismatched_amounts&&show&&setPaymentSources(),setLoading(!1)}return expressPayments&&setLoading(!1),()=>{setLoading(!0)}},[order?.payment_method?.id,show,paymentSource]);const gatewayConfig={readonly,showCard,handleEditClick,children,templateCustomerCards,show,loading,onClickCustomerCards,loaderComponent,templateCustomerSaveToWallet,...p};switch(paymentResource){case"adyen_payments":return _jsx(AdyenGateway,{...gatewayConfig,children});case"braintree_payments":return _jsx(BraintreeGateway,{...gatewayConfig,children});case"checkout_com_payments":return _jsx(CheckoutComGateway,{...gatewayConfig,children});case"external_payments":return _jsx(ExternalGateway,{...gatewayConfig,children});case"klarna_payments":return _jsx(KlarnaGateway,{...gatewayConfig,children});case"stripe_payments":return _jsx(StripeGateway,{...gatewayConfig,children});case"wire_transfers":return _jsx(WireTransferGateway,{...gatewayConfig,children});case"paypal_payments":return _jsx(PaypalGateway,{...gatewayConfig,children});default:return null}}export default PaymentGateway;
2
+ import{jsx as _jsx}from"react/jsx-runtime";import OrderContext from"../../context/OrderContext";import PaymentMethodChildrenContext from"../../context/PaymentMethodChildrenContext";import PaymentMethodContext from"../../context/PaymentMethodContext";import{useContext,useEffect,useState}from"react";import getLoaderComponent from"../../utils/getLoaderComponent";import AdyenGateway from"./AdyenGateway";import StripeGateway from"./StripeGateway";import BraintreeGateway from"./BraintreeGateway";import PaypalGateway from"./PaypalGateway";import WireTransferGateway from"./WireTransferGateway";import CustomerContext from"../../context/CustomerContext";import CheckoutComGateway from"./CheckoutComGateway";import KlarnaGateway from"./KlarnaGateway";import{getExternalPaymentAttributes,getPaypalAttributes,getStripeAttributes}from"../../utils/getPaymentAttributes";import ExternalGateway from"./ExternalGateway";export function PaymentGateway({readonly,showCard,handleEditClick,children,templateCustomerCards,templateCustomerSaveToWallet,onClickCustomerCards,show,loader="Loading...",...p}){const loaderComponent=getLoaderComponent(loader),[loading,setLoading]=useState(!0),{payment,expressPayments}=useContext(PaymentMethodChildrenContext),{order}=useContext(OrderContext),{getCustomerPaymentSources}=useContext(CustomerContext),{currentPaymentMethodId,config,currentPaymentMethodType,setPaymentSource,paymentSource}=useContext(PaymentMethodContext),paymentResource=readonly?currentPaymentMethodType:payment?.payment_source_type;useEffect(()=>{if(payment?.id===currentPaymentMethodId&&paymentResource&&order?.payment_method?.payment_source_type===paymentResource&&!expressPayments){let attributes={};config!=null&&paymentResource==="paypal_payments"&&(attributes=getPaypalAttributes(paymentResource,config)),config!=null&&paymentResource==="external_payments"&&(attributes=getExternalPaymentAttributes(paymentResource,config)),config!=null&&paymentResource==="stripe_payments"&&(attributes=getStripeAttributes(paymentResource,config),attributes!=null&&attributes.return_url==null&&(attributes.return_url=window.location.href));const setPaymentSources=async()=>{await setPaymentSource({paymentResource,order,attributes}),getCustomerPaymentSources&&getCustomerPaymentSources()};(!paymentSource&&order?.payment_method.id&&show&&!expressPayments||(!paymentSource&&!expressPayments||paymentSource?.type!==paymentResource)&&show)&&setPaymentSources(),paymentSource?.mismatched_amounts&&show&&setPaymentSources(),setLoading(!1)}return expressPayments&&show&&setLoading(!1),()=>{setLoading(!0)}},[order?.payment_method?.id,show,paymentSource]);const gatewayConfig={readonly,showCard,handleEditClick,children,templateCustomerCards,show,loading,onClickCustomerCards,loaderComponent,templateCustomerSaveToWallet,...p};switch(paymentResource){case"adyen_payments":return _jsx(AdyenGateway,{...gatewayConfig,children});case"braintree_payments":return _jsx(BraintreeGateway,{...gatewayConfig,children});case"checkout_com_payments":return _jsx(CheckoutComGateway,{...gatewayConfig,children});case"external_payments":return _jsx(ExternalGateway,{...gatewayConfig,children});case"klarna_payments":return _jsx(KlarnaGateway,{...gatewayConfig,children});case"stripe_payments":return _jsx(StripeGateway,{...gatewayConfig,children});case"wire_transfers":return _jsx(WireTransferGateway,{...gatewayConfig,children});case"paypal_payments":return _jsx(PaypalGateway,{...gatewayConfig,children});default:return null}}export default PaymentGateway;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type GatewayBaseType } from '../payment_gateways/PaymentGateway';
2
3
  type Props = Partial<GatewayBaseType>;
3
4
  export declare function PaypalGateway(props: Props): JSX.Element | null;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type GatewayBaseType } from '../payment_gateways/PaymentGateway';
2
3
  type Props = GatewayBaseType;
3
4
  export declare function StripeGateway(props: Props): JSX.Element | null;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type GatewayBaseType } from '../payment_gateways/PaymentGateway';
2
3
  type Props = GatewayBaseType;
3
4
  export declare function WireTransferGateway(props: Props): JSX.Element | null;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import type { LoaderType } from '../../typings/index';
2
3
  import type { Order, PaymentMethod as PaymentMethodType } from '@commercelayer/sdk';
3
4
  import type { PaymentResource } from '../../reducers/PaymentMethodReducer';
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type ChildrenFunction } from '../../typings/index';
2
3
  interface ChildrenProps extends Omit<Props, 'children'> {
3
4
  labelName: string;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type BaseAmountComponent } from '../../typings/index';
2
3
  interface Props extends BaseAmountComponent {
3
4
  type?: 'amount';
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type PaymentSourceProps } from './PaymentSource';
2
3
  import { type HostedFieldFieldOptions } from 'braintree-web';
3
4
  type BraintreeHostedFields<Type> = {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type PaymentMethodConfig } from '../../reducers/PaymentMethodReducer';
2
3
  import { type PaymentSourceProps } from './PaymentSource';
3
4
  import { type FramesStyle } from 'frames-react';
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type ChildrenFunction } from '../../typings/index';
2
3
  import type { StripeElementLocale } from '@stripe/stripe-js';
3
4
  import { type PaymentSourceProps } from './PaymentSource';
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import Parent from"../utils/Parent";import PaymentMethodContext from"../../context/PaymentMethodContext";import{useContext,useEffect,useRef}from"react";export function ExternalPayment(props){const{setPaymentRef}=useContext(PaymentMethodContext),ref=useRef(null);return useEffect(()=>{ref!==null&&(ref.current.onsubmit=async()=>!0,setPaymentRef({ref}))},[ref]),props?.customComponent!=null&&props.show?_jsxs("form",{ref,children:[_jsx(Parent,{children:props.customComponent}),props?.templateCustomerSaveToWallet!=null&&_jsx(Parent,{name:"save_payment_source_to_customer_wallet",children:props.templateCustomerSaveToWallet})]}):null}export default ExternalPayment;
2
+ import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import Parent from"../utils/Parent";import PaymentMethodContext from"../../context/PaymentMethodContext";import{useContext,useEffect,useRef}from"react";import OrderContext from"../../context/OrderContext";export function ExternalPayment(props){const{setPaymentRef}=useContext(PaymentMethodContext),{order,updateOrder}=useContext(OrderContext),ref=useRef(null);useEffect(()=>{ref?.current!=null&&(ref.current.onsubmit=async()=>!0,setPaymentRef({ref}))},[ref]);const parentProps={...props,order,updateOrder};return props?.customComponent!=null&&props.show?_jsxs("form",{ref,children:[_jsx(Parent,{...parentProps,children:props.customComponent}),props?.templateCustomerSaveToWallet!=null&&_jsx(Parent,{name:"save_payment_source_to_customer_wallet",children:props.templateCustomerSaveToWallet})]}):null}export default ExternalPayment;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type PaymentMethodConfig } from '../../reducers/PaymentMethodReducer';
2
3
  import { type PaymentSourceProps } from './PaymentSource';
3
4
  type KlarnaPaymentProps = PaymentMethodConfig['klarnaPayment'] & JSX.IntrinsicElements['div'] & Partial<PaymentSourceProps['templateCustomerSaveToWallet']> & {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type LoaderType } from '../../typings/index';
2
3
  import { type CustomerCardsTemplateChildren } from '../utils/PaymentCardsTemplate';
3
4
  export interface CustomerCardsProps {
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- import{jsx as _jsx}from"react/jsx-runtime";import{useContext,useState,useEffect}from"react";import PaymentMethodChildrenContext from"../../context/PaymentMethodChildrenContext";import PaymentMethodContext from"../../context/PaymentMethodContext";import CustomerContext from"../../context/CustomerContext";import PaymentGateway from"../payment_gateways/PaymentGateway";import getCardDetails from"../../utils/getCardDetails";import OrderContext from"../../context/OrderContext";export function PaymentSource(props){const{readonly}=props,{payment,expressPayments}=useContext(PaymentMethodChildrenContext),{order}=useContext(OrderContext),{payments}=useContext(CustomerContext),{currentPaymentMethodId,paymentSource,destroyPaymentSource}=useContext(PaymentMethodContext),[show,setShow]=useState(!1),[showCard,setShowCard]=useState(!1);useEffect(()=>(readonly?(setShow(!0),setShowCard(!0)):payment?.id===currentPaymentMethodId?(setShow(!0),getCardDetails({paymentType:payment?.payment_source_type,customerPayment:{payment_source:paymentSource}}).brand&&setShowCard(!0)):setShow(!!expressPayments),()=>{setShow(!1),setShowCard(!1)}),[currentPaymentMethodId,paymentSource,payments,payment,readonly,order]);const gatewayProps={...props,show,showCard,handleEditClick:async e=>{if(e.stopPropagation(),paymentSource){const paymentSourceId=paymentSource?.id;await destroyPaymentSource({paymentSourceId,paymentResource:payment?.payment_source_type})}setShowCard(!showCard),setShow(!0)},readonly};return _jsx(PaymentGateway,{...gatewayProps})}export default PaymentSource;
2
+ import{jsx as _jsx}from"react/jsx-runtime";import{useContext,useState,useEffect}from"react";import PaymentMethodChildrenContext from"../../context/PaymentMethodChildrenContext";import PaymentMethodContext from"../../context/PaymentMethodContext";import CustomerContext from"../../context/CustomerContext";import PaymentGateway from"../payment_gateways/PaymentGateway";import getCardDetails from"../../utils/getCardDetails";import OrderContext from"../../context/OrderContext";export function PaymentSource(props){const{readonly}=props,{payment,expressPayments}=useContext(PaymentMethodChildrenContext),{order}=useContext(OrderContext),{payments}=useContext(CustomerContext),{currentPaymentMethodId,paymentSource,destroyPaymentSource,currentPaymentMethodType}=useContext(PaymentMethodContext),[show,setShow]=useState(!1),[showCard,setShowCard]=useState(!1);useEffect(()=>(readonly?(setShow(!0),setShowCard(!0)):payment?.id===currentPaymentMethodId&&!expressPayments?(setShow(!0),getCardDetails({paymentType:payment?.payment_source_type,customerPayment:{payment_source:paymentSource}}).brand&&setShowCard(!0)):setShow(!!(expressPayments&&currentPaymentMethodType==="stripe_payments")),()=>{setShow(!1),setShowCard(!1)}),[currentPaymentMethodId,paymentSource,payments,payment,readonly,order,expressPayments]);const gatewayProps={...props,show,showCard,handleEditClick:async e=>{if(e.stopPropagation(),paymentSource){const paymentSourceId=paymentSource?.id;await destroyPaymentSource({paymentSourceId,paymentResource:payment?.payment_source_type})}setShowCard(!showCard),setShow(!0)},readonly};return _jsx(PaymentGateway,{...gatewayProps})}export default PaymentSource;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type IconBrand } from '../../context/PaymentSourceContext';
2
3
  import { type ChildrenFunction } from '../../typings/index';
3
4
  interface ChildrenProps extends Omit<Props, 'children'> {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type IconBrand } from '../../context/PaymentSourceContext';
2
3
  import { type ChildrenFunction } from '../../typings/index';
3
4
  interface CustomComponent extends Omit<Props, 'children'> {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import type { ChildrenFunction } from '../../typings/index';
2
3
  export type PaymentSourceDetailType = 'last4' | 'exp_year' | 'exp_month';
3
4
  interface ChildrenProps extends Omit<Props, 'children'> {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  interface Props {
2
3
  clientSecret: string;
3
4
  }
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type StripeElementLocale, type StripeElementsOptions, type StripePaymentElementOptions } from '@stripe/stripe-js';
2
3
  import { type PaymentMethodConfig } from '../../reducers/PaymentMethodReducer';
3
4
  import { type PaymentSourceProps } from './PaymentSource';
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  export interface WireTransferConfig {
2
3
  infoMessage?: {
3
4
  text?: string | JSX.Element[];
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type Price as PriceType } from '@commercelayer/sdk';
2
3
  import { type ChildrenFunction, type LoaderType } from '../../typings/index';
3
4
  interface PriceChildrenProps extends Omit<PriceProps, 'children'> {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type LoaderType } from '../../typings/index';
2
3
  interface Props {
3
4
  /**
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type Shipment } from '@commercelayer/sdk';
2
3
  type ShipmentFieldChildrenProps = Omit<Props, 'children'> & {
3
4
  shipment: Shipment;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type ChildrenFunction } from '../../typings/index';
2
3
  import type { Shipment } from '@commercelayer/sdk';
3
4
  interface ChildrenProps extends Omit<Props, 'children'> {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type ShippingMethod } from '@commercelayer/sdk';
2
3
  type ChildrenProps = Omit<Props, 'children'> & {
3
4
  label: string;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type BaseAmountComponent } from '../../typings/index';
2
3
  type Props = BaseAmountComponent & {
3
4
  /**
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import type { Order, ShippingMethod } from '@commercelayer/sdk';
2
3
  interface ShippingMethodRadioButtonType extends Omit<Props, 'children'> {
3
4
  shippingMethod: ShippingMethod;
@@ -1,8 +1,34 @@
1
1
  import { type ReactNode } from 'react';
2
2
  interface Props {
3
+ /**
4
+ * The children component
5
+ */
3
6
  children: ReactNode;
7
+ /**
8
+ * The sku code
9
+ */
4
10
  skuCode?: string;
11
+ /**
12
+ * The sku id. If you use this prop, the skuCode will be ignored and the sku will be fetched by id improving the performance
13
+ */
14
+ skuId?: string;
15
+ /**
16
+ * Callback called when the quantity is updated
17
+ */
5
18
  getQuantity?: (quantity: number) => void;
6
19
  }
7
- export declare function AvailabilityContainer({ children, skuCode, getQuantity }: Props): JSX.Element;
20
+ /**
21
+ * Main container for the Availability components.
22
+ * It stores - in its context - the sku quantity returned from the `inventory_model` and the `delivery_lead_time` for the first shipping method found in the inventory model.
23
+ *
24
+ * It can be used to fetch the quantities for a specific `sku_code` passed as prop.
25
+ * <span title='Requirements' type='warning'>
26
+ * Must be a child of the `<CommerceLayer>` component. <br/>
27
+ * Can be a child of the `<SkusContainer>` component and receive the `sku_code` from its context.
28
+ * </span>
29
+ * <span title='Children' type='info'>
30
+ * `<AvailabilityTemplate>`
31
+ * </span>
32
+ */
33
+ export declare function AvailabilityContainer({ children, skuCode, skuId, getQuantity }: Props): JSX.Element;
8
34
  export default AvailabilityContainer;
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- import{jsx as _jsx}from"react/jsx-runtime";import{useContext,useReducer,useEffect,useMemo}from"react";import availabilityReducer,{availabilityInitialState,getAvailability}from"../../reducers/AvailabilityReducer";import AvailabilityContext from"../../context/AvailabilityContext";import CommerceLayerContext from"../../context/CommerceLayerContext";import LineItemChildrenContext from"../../context/LineItemChildrenContext";import SkuChildrenContext from"../../context/SkuChildrenContext";import useCustomContext from"../../utils/hooks/useCustomContext";export function AvailabilityContainer({children,skuCode,getQuantity}){const{lineItem}=useContext(LineItemChildrenContext),{sku}=useContext(SkuChildrenContext),{accessToken,endpoint}=useCustomContext({context:CommerceLayerContext,contextComponentName:"CommerceLayer",currentComponentName:"AvailabilityContainer",key:"accessToken"}),[state,dispatch]=useReducer(availabilityReducer,availabilityInitialState),sCode=skuCode||lineItem?.sku_code||sku?.code;useEffect(()=>(accessToken!=null&&accessToken!==""&&sCode&&getAvailability({skuCode:sCode,config:{accessToken,endpoint},dispatch}),()=>{dispatch({type:"setAvailability",payload:{}})}),[accessToken,sCode]),useEffect(()=>{getQuantity!=null&&state?.quantity!=null&&getQuantity(state?.quantity)},[state.quantity]);const memoized=useMemo(()=>({...state,parent:!0}),[state]);return _jsx(AvailabilityContext.Provider,{value:memoized,children})}export default AvailabilityContainer;
2
+ import{jsx as _jsx}from"react/jsx-runtime";import{useContext,useReducer,useEffect,useMemo}from"react";import availabilityReducer,{availabilityInitialState,getAvailability}from"../../reducers/AvailabilityReducer";import AvailabilityContext from"../../context/AvailabilityContext";import CommerceLayerContext from"../../context/CommerceLayerContext";import LineItemChildrenContext from"../../context/LineItemChildrenContext";import SkuChildrenContext from"../../context/SkuChildrenContext";import useCustomContext from"../../utils/hooks/useCustomContext";export function AvailabilityContainer({children,skuCode,skuId,getQuantity}){const{lineItem}=useContext(LineItemChildrenContext),{sku}=useContext(SkuChildrenContext),{accessToken,endpoint}=useCustomContext({context:CommerceLayerContext,contextComponentName:"CommerceLayer",currentComponentName:"AvailabilityContainer",key:"accessToken"}),[state,dispatch]=useReducer(availabilityReducer,availabilityInitialState),sCode=skuCode||lineItem?.sku_code||sku?.code;useEffect(()=>{if(accessToken!=null&&accessToken!==""){const config={accessToken,endpoint};(sCode!=null||skuId!=null)&&getAvailability({skuCode:sCode,skuId,config,dispatch})}return()=>{dispatch({type:"setAvailability",payload:{}})}},[accessToken,sCode,skuId]),useEffect(()=>{getQuantity!=null&&state?.quantity!=null&&getQuantity(state?.quantity)},[state.quantity]);const memoized=useMemo(()=>({...state,parent:!0}),[state]);return _jsx(AvailabilityContext.Provider,{value:memoized,children})}export default AvailabilityContainer;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type TimeFormat, type ChildrenFunction } from '../../typings/index';
2
3
  import { type DeliveryLeadTime } from '../../reducers/AvailabilityReducer';
3
4
  interface AvailabilityTemplateChildrenProps extends Omit<Props, 'children'>, DeliveryLeadTime {
@@ -6,15 +7,16 @@ interface AvailabilityTemplateChildrenProps extends Omit<Props, 'children'>, Del
6
7
  }
7
8
  type FormatRules = {
8
9
  /**
9
- * Set time format for shipping method
10
+ * Set time format for shipping method. When not set, ``delivery_lead_times`` will not be displayed.
11
+ * When set, `delivery_lead_times` for the first shipping method found in the inventory model, will be displayed in the format specified.
10
12
  */
11
13
  timeFormat?: TimeFormat;
12
14
  /**
13
- * Show shipping method name
15
+ * Show shipping method name. Requires `timeFormat` to be set.
14
16
  */
15
17
  showShippingMethodName?: false;
16
18
  /**
17
- * Show shipping method price
19
+ * Show shipping method price. Requires `timeFormat` to be set.
18
20
  */
19
21
  showShippingMethodPrice?: false;
20
22
  } | {
@@ -34,5 +36,17 @@ type Props = {
34
36
  negativeStock?: string;
35
37
  };
36
38
  } & Omit<JSX.IntrinsicElements['span'], 'children'> & FormatRules;
39
+ /**
40
+ * The AvailabilityTemplate component displays the availability of the SKU specified
41
+ * in the parent `<AvailabilityContainer>` component.
42
+ *
43
+ * It is possible to customize the text displayed in case of `available`, `outOfStock` or `negativeStock.
44
+ * It is also possible to show delivery lead time and either shipping method name and/or price.
45
+ * This information will be retrieve from the first shipping method found in the inventory model.
46
+ *
47
+ * <span type="Requirement" type="info">
48
+ * It must to be used inside the `<AvailabilityContainer>` component.
49
+ * </span>
50
+ */
37
51
  export declare function AvailabilityTemplate(props: Props): JSX.Element;
38
52
  export default AvailabilityTemplate;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  export type DeliveryLeadTimeField = 'min_hours' | 'max_hours' | 'min_days' | 'max_days';
2
3
  export type DeliveryLeadTimeComponentChildren = Omit<Props, 'children'>;
3
4
  type Props = Partial<JSX.IntrinsicElements['span']> & {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type ConditionalElement } from '../../typings/index';
2
3
  import { type TGenericChildrenProps, type TResources } from '../utils/GenericFieldComponent';
3
4
  type SkuFieldChildrenProps = TGenericChildrenProps<TResources['Sku']>;
@@ -6,8 +7,19 @@ type Props = {
6
7
  children?: (props: SkuFieldChildrenProps) => JSX.Element;
7
8
  } & TCondition;
8
9
  /**
9
- * @param props {@link Props}
10
- * @returns
10
+ * The SkuField component displays any attribute of the `sku` specified in the parent `<SkusContainer>` component.
11
+ *
12
+ * It also accepts a `tagElement` props to enable specific tag-related props.
13
+ * For examples, when `tagElement` is set to `img` it will also accept props related to `<img>` tag such as `height` and `width`.
14
+ *
15
+ * <span title="Requirement" type="warning">
16
+ * It must to be used inside the `<SkusContainer>` component.
17
+ * </span>
18
+ *
19
+ * <span title="Fields" type="info">
20
+ * Check the `skus` resource from our [Core API documentation](https://docs.commercelayer.io/core/v/api-reference/skus/object)
21
+ * for more details about the available attributes to render.
22
+ * </span>
11
23
  */
12
24
  export declare function SkuField<P extends Props>(props: P): JSX.Element;
13
25
  export default SkuField;
@@ -2,5 +2,17 @@ import { type ReactNode } from 'react';
2
2
  interface Props {
3
3
  children: ReactNode;
4
4
  }
5
+ /**
6
+ * The `Skus` components loop through the list of `skus` found in `SkusContainer` context and render the children filled with the proper sku value.
7
+ * This means that the children will be rendered as many times as the number of skus found in the `skus` prop array
8
+ * and there is no need to manually loop through them from your consumer app.
9
+ *
10
+ * <span title='Requirements' type='warning'>
11
+ * Must be a child of the `<SkusContainer>` component.
12
+ * </span>
13
+ * <span title='Children' type='info'>
14
+ * `<SkuField>`, `<AvailabilityContainer>`
15
+ * </span>
16
+ */
5
17
  export declare function Skus<P extends Props>({ children }: P): JSX.Element;
6
18
  export default Skus;
@@ -6,7 +6,7 @@ interface Props {
6
6
  */
7
7
  skus: string[];
8
8
  /**
9
- * Accept a React node, [Skus](./Skus.d.ts), and [ItemContainer](../ItemContainer.d.ts) as children to display above the skus.
9
+ * Accept a React node and [Skus](./Skus.d.ts) component as children to display above the skus.
10
10
  */
11
11
  children: ReactNode;
12
12
  /**
@@ -14,5 +14,18 @@ interface Props {
14
14
  */
15
15
  queryParams?: QueryParamsList;
16
16
  }
17
+ /**
18
+ * Main container for the SKUs components.
19
+ * It stores - in its context - the details for each `sku` defined in the `skus` prop array.
20
+ *
21
+ * It also accept a `queryParams` prop to refine pagination, sorting, filtering and includes for the fetch request.
22
+ *
23
+ * <span title='Requirements' type='warning'>
24
+ * Must be a child of the `<CommerceLayer>` component.
25
+ * </span>
26
+ * <span title='Children' type='info'>
27
+ * `<Skus>`
28
+ * </span>
29
+ */
17
30
  export declare function SkusContainer<P extends Props>(props: P): JSX.Element;
18
31
  export default SkusContainer;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import type { DefaultChildrenType } from '../../typings/globals';
2
3
  interface Props {
3
4
  children: DefaultChildrenType;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type ConditionalElement } from '../../typings/index';
2
3
  import { type TGenericChildrenProps, type TResources } from '../utils/GenericFieldComponent';
3
4
  type StockTransferFieldChildrenProps = TGenericChildrenProps<TResources['StockTransfer']>;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import type { Address } from '@commercelayer/sdk';
2
3
  import AddressChildrenContext from '../../context/AddressChildrenContext';
3
4
  import { type ChildrenFunction } from '../../typings/index';
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type PropsType } from '../../utils/PropsType';
2
3
  import { type baseOrderPricePropTypes } from '../../typings/index';
3
4
  export type BaseOrderPriceProps = PropsType<typeof baseOrderPricePropTypes, unknown> & Omit<JSX.IntrinsicElements['span'], 'children'>;
@@ -44,7 +44,13 @@ type GenericContext<K extends keyof ResourceContext> = Context<ResourceContext[K
44
44
  interface Props<E extends TResources[keyof TResources]> {
45
45
  children?: (props: TGenericChildrenProps<E>) => JSX.Element;
46
46
  resource: E['resource'];
47
+ /**
48
+ * Resource attribute to display.
49
+ */
47
50
  attribute: keyof E;
51
+ /**
52
+ * Html tag to render. When tag is `img` the value will be used to fill the `src` attribute.
53
+ */
48
54
  tagElement: keyof JSX.IntrinsicElements;
49
55
  context: GenericContext<E['resource']>;
50
56
  }
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type PaymentResource } from '../../reducers/PaymentMethodReducer';
2
3
  import PaymentSourceContext, { type IconBrand } from '../../context/PaymentSourceContext';
3
4
  import { type ChildrenFunction } from '../../typings/index';
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type PriceProps } from '../prices/Price';
2
3
  export type PTemplateProps = {
3
4
  formattedAmount?: string;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type LineItem } from '@commercelayer/sdk';
2
3
  import { type BaseError } from '../../typings/errors';
3
4
  import { type TResourceError } from '../errors/Errors';
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- import baseReducer from"../utils/baseReducer";import getSdk from"../utils/getSdk";import camelCase from"lodash/camelCase";import{invertedAddressesHandler}from"../utils/addressesManager";export const addressFields=["city","company","country_code","first_name","last_name","line_1","line_2","phone","state_code","zip_code"],addressInitialState={errors:[]},setAddressErrors=({errors,dispatch,currentErrors=[],resource})=>{const billingErrors=resource==="billing_address"?errors.filter(e=>e.resource===resource):currentErrors.filter(e=>e.resource==="billing_address"),shippingErrors=resource==="shipping_address"?errors.filter(e=>e.resource===resource):currentErrors.filter(e=>e.resource==="shipping_address"),finalErrors=[...billingErrors,...shippingErrors];dispatch&&dispatch({type:"setErrors",payload:{errors:finalErrors}})},setAddress=({values,resource,dispatch})=>{dispatch&&dispatch({type:"setAddress",payload:{[`${resource}`]:values}})},setCloneAddress=(id,resource,dispatch)=>{dispatch({type:"setCloneAddress",payload:{[`${camelCase(resource)}Id`]:id}})};export async function saveAddresses({config,updateOrder,order,state,customerEmail}){const{shipToDifferentAddress,invertAddresses,billing_address:billingAddress,shipping_address:shippingAddress,billingAddressId,shippingAddressId}=state;try{const sdk=getSdk(config);if(order){let orderAttributes=null;if(invertAddresses)orderAttributes=await invertedAddressesHandler({billingAddress,billingAddressId,customerEmail,order,shipToDifferentAddress,shippingAddress,shippingAddressId,sdk});else{const currentBillingAddressRef=order?.billing_address?.reference;if(orderAttributes={id:order?.id,_billing_address_clone_id:billingAddressId,_shipping_address_clone_id:billingAddressId,customer_email:customerEmail},currentBillingAddressRef===billingAddressId&&(orderAttributes._billing_address_clone_id=order?.billing_address?.id,orderAttributes._shipping_address_clone_id=order?.shipping_address?.id),billingAddress!=null&&Object.keys(billingAddress).length>0){delete orderAttributes._billing_address_clone_id,delete orderAttributes._shipping_address_clone_id,orderAttributes._shipping_address_same_as_billing=!0;const hasMetadata=Object.keys(billingAddress).filter(key=>!!key.startsWith("metadata_"));hasMetadata?.length>0&&hasMetadata.forEach(key=>{const metadataKey=key.replace("metadata_","");billingAddress.metadata={...billingAddress.metadata||{},[metadataKey]:billingAddress[key]},delete billingAddress[key]});const address=await sdk.addresses.create(billingAddress);orderAttributes.billing_address=sdk.addresses.relationship(address.id)}if(shipToDifferentAddress&&(delete orderAttributes._shipping_address_same_as_billing,shippingAddressId&&(orderAttributes._shipping_address_clone_id=shippingAddressId),shippingAddress!=null&&Object.keys(shippingAddress).length>0)){delete orderAttributes._shipping_address_clone_id;const hasMetadata=Object.keys(shippingAddress).filter(key=>!!key.startsWith("metadata_"));hasMetadata?.length>0&&hasMetadata.forEach(key=>{const metadataKey=key.replace("metadata_","");shippingAddress.metadata={...shippingAddress.metadata||{},[metadataKey]:shippingAddress[key]},delete shippingAddress[key]});const address=await sdk.addresses.create(shippingAddress);orderAttributes.shipping_address=sdk.addresses.relationship(address.id)}}if(orderAttributes!=null&&updateOrder)return{success:!0,order:(await updateOrder({id:order.id,attributes:orderAttributes}))?.order}}return{success:!1}}catch(error){return console.error(error),{success:!1,error}}}const type=["setErrors","setAddress","setShipToDifferentAddress","setCloneAddress","cleanup"],addressReducer=(state,reducer)=>baseReducer(state,reducer,type);export default addressReducer;
2
+ import baseReducer from"../utils/baseReducer";import getSdk from"../utils/getSdk";import camelCase from"lodash/camelCase";import{invertedAddressesHandler}from"../utils/addressesManager";export const addressFields=["city","company","country_code","first_name","last_name","line_1","line_2","phone","state_code","zip_code"],addressInitialState={errors:[]},setAddressErrors=({errors,dispatch,currentErrors=[],resource})=>{const billingErrors=resource==="billing_address"?errors.filter(e=>e.resource===resource):currentErrors.filter(e=>e.resource==="billing_address"),shippingErrors=resource==="shipping_address"?errors.filter(e=>e.resource===resource):currentErrors.filter(e=>e.resource==="shipping_address"),finalErrors=[...billingErrors,...shippingErrors];dispatch&&dispatch({type:"setErrors",payload:{errors:finalErrors}})},setAddress=({values,resource,dispatch})=>{dispatch&&dispatch({type:"setAddress",payload:{[`${resource}`]:values}})},setCloneAddress=(id,resource,dispatch)=>{dispatch({type:"setCloneAddress",payload:{[`${camelCase(resource)}Id`]:id}})};export async function saveAddresses({config,updateOrder,order,state,customerEmail}){const{shipToDifferentAddress,invertAddresses,billing_address:billingAddress,shipping_address:shippingAddress,billingAddressId,shippingAddressId}=state;try{const sdk=getSdk(config);if(order){let orderAttributes=null;if(invertAddresses)orderAttributes=await invertedAddressesHandler({billingAddress,billingAddressId,customerEmail,order,shipToDifferentAddress,shippingAddress,shippingAddressId,sdk});else{const doNotShipItems=order?.line_items?.every(lineItem=>lineItem?.item?.do_not_ship===!0),currentBillingAddressRef=order?.billing_address?.reference;if(orderAttributes={id:order?.id,_billing_address_clone_id:billingAddressId,_shipping_address_clone_id:billingAddressId,customer_email:customerEmail},currentBillingAddressRef===billingAddressId&&(orderAttributes._billing_address_clone_id=order?.billing_address?.id,orderAttributes._shipping_address_clone_id=order?.shipping_address?.id),billingAddress!=null&&Object.keys(billingAddress).length>0)delete orderAttributes._billing_address_clone_id,delete orderAttributes._shipping_address_clone_id,doNotShipItems||(orderAttributes._shipping_address_same_as_billing=!0);else{const currentBillingAddressRef2=order?.billing_address?.reference;if(orderAttributes={id:order?.id,_billing_address_clone_id:billingAddressId,_shipping_address_clone_id:billingAddressId,customer_email:customerEmail},currentBillingAddressRef2===billingAddressId&&(orderAttributes._billing_address_clone_id=order?.billing_address?.id,orderAttributes._shipping_address_clone_id=order?.shipping_address?.id),billingAddress!=null&&Object.keys(billingAddress).length>0){delete orderAttributes._billing_address_clone_id,delete orderAttributes._shipping_address_clone_id,orderAttributes._shipping_address_same_as_billing=!0;const hasMetadata=Object.keys(billingAddress).filter(key=>!!key.startsWith("metadata_"));hasMetadata?.length>0&&hasMetadata.forEach(key=>{const metadataKey=key.replace("metadata_","");billingAddress.metadata={...billingAddress.metadata||{},[metadataKey]:billingAddress[key]},delete billingAddress[key]});const address=await sdk.addresses.create(billingAddress);orderAttributes.billing_address=sdk.addresses.relationship(address.id)}if(shipToDifferentAddress&&(delete orderAttributes._shipping_address_same_as_billing,shippingAddressId&&(orderAttributes._shipping_address_clone_id=shippingAddressId),shippingAddress!=null&&Object.keys(shippingAddress).length>0)){delete orderAttributes._shipping_address_clone_id;const hasMetadata=Object.keys(shippingAddress).filter(key=>!!key.startsWith("metadata_"));hasMetadata?.length>0&&hasMetadata.forEach(key=>{const metadataKey=key.replace("metadata_","");shippingAddress.metadata={...shippingAddress.metadata||{},[metadataKey]:shippingAddress[key]},delete shippingAddress[key]});const address=await sdk.addresses.create(shippingAddress);orderAttributes.shipping_address=sdk.addresses.relationship(address.id)}}}if(orderAttributes!=null&&updateOrder)return{success:!0,order:(await updateOrder({id:order.id,attributes:orderAttributes}))?.order}}return{success:!1}}catch(error){return console.error(error),{success:!1,error}}}const type=["setErrors","setAddress","setShipToDifferentAddress","setCloneAddress","cleanup"],addressReducer=(state,reducer)=>baseReducer(state,reducer,type);export default addressReducer;
@@ -42,8 +42,9 @@ export interface AvailabilityAction {
42
42
  payload: AvailabilityPayload;
43
43
  }
44
44
  export declare const availabilityInitialState: AvailabilityState;
45
- export declare function getAvailability({ skuCode, dispatch, config }: {
46
- skuCode: string;
45
+ export declare function getAvailability({ skuCode, skuId, dispatch, config }: {
46
+ skuCode?: string;
47
+ skuId?: string;
47
48
  dispatch: Dispatch<AvailabilityAction>;
48
49
  config: CommerceLayerConfig;
49
50
  }): Promise<void>;
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- import baseReducer from"../utils/baseReducer";import getSdk from"../utils/getSdk";export const availabilityInitialState={};export async function getAvailability({skuCode,dispatch,config}){const sdk=getSdk(config);try{const[sku]=await sdk.skus.list({fields:{skus:["id"]},filters:{code_in:skuCode}});if(sku){const skuInventory=await sdk.skus.retrieve(sku.id,{fields:{skus:["inventory"]}}),[level]=skuInventory.inventory?.levels||[],[delivery]=level?.delivery_lead_times||[];dispatch({type:"setAvailability",payload:{...delivery,quantity:skuInventory.inventory.quantity,skuCode}})}}catch(error){console.error("Get SKU availability",error)}}const typeAction=["setAvailability","setErrors"],availabilityReducer=(state,reducer)=>baseReducer(state,reducer,typeAction);export default availabilityReducer;
2
+ import baseReducer from"../utils/baseReducer";import getSdk from"../utils/getSdk";export const availabilityInitialState={};export async function getAvailability({skuCode,skuId,dispatch,config}){const sdk=getSdk(config);try{const[sku]=skuId!=null?[{id:skuId}]:skuCode!=null?await sdk.skus.list({fields:{skus:["id"]},filters:{code_in:skuCode}}):[];if(sku){const skuInventory=await sdk.skus.retrieve(sku.id,{fields:{skus:["inventory"]}}),[level]=skuInventory.inventory?.levels||[],[delivery]=level?.delivery_lead_times||[];dispatch({type:"setAvailability",payload:{...delivery,quantity:skuInventory.inventory.quantity,skuCode}})}}catch(error){console.error("Get SKU availability",error)}}const typeAction=["setAvailability","setErrors"],availabilityReducer=(state,reducer)=>baseReducer(state,reducer,typeAction);export default availabilityReducer;
@@ -141,7 +141,7 @@ interface TCreateCustomerAddress {
141
141
  export declare function createCustomerAddress({ address, config, dispatch, state }: TCreateCustomerAddress): Promise<void>;
142
142
  interface GetCustomerPaymentsParams extends GetCustomerOrdersProps {
143
143
  }
144
- export declare function getCustomerPayments({ config, dispatch }: GetCustomerPaymentsParams): Promise<void>;
144
+ export declare function getCustomerPayments({ config, dispatch, pageSize, pageNumber }: GetCustomerPaymentsParams): Promise<void>;
145
145
  export declare function getCustomerInfo({ config, dispatch }: GetCustomerPaymentsParams): Promise<void>;
146
146
  export declare const customerInitialState: CustomerState;
147
147
  declare const customerReducer: (state: CustomerState, reducer: CustomerAction) => CustomerState;