addio-admin-sdk 1.7.170 → 1.7.171

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 (584) hide show
  1. package/.babelrc +17 -17
  2. package/.env.dev +14 -14
  3. package/.github/workflows/run_unit_test.yaml +48 -48
  4. package/addio-sdk-doc.md +1473 -1473
  5. package/changelog.md +573 -573
  6. package/dist/Interfaces/Address/index.d.ts +21 -21
  7. package/dist/Interfaces/Address/index.js +16 -16
  8. package/dist/Interfaces/Algolia/index.d.ts +182 -182
  9. package/dist/Interfaces/Algolia/index.js +2 -2
  10. package/dist/Interfaces/Attachement/index.d.ts +5 -5
  11. package/dist/Interfaces/Attachement/index.js +2 -2
  12. package/dist/Interfaces/Attribute/index.d.ts +53 -53
  13. package/dist/Interfaces/Attribute/index.js +10 -10
  14. package/dist/Interfaces/BGJob/index.d.ts +56 -56
  15. package/dist/Interfaces/BGJob/index.js +25 -25
  16. package/dist/Interfaces/BaseClass/index.d.ts +8 -8
  17. package/dist/Interfaces/BaseClass/index.js +2 -2
  18. package/dist/Interfaces/Blog/IBlogArticle.d.ts +18 -18
  19. package/dist/Interfaces/Blog/IBlogArticle.js +2 -2
  20. package/dist/Interfaces/Blog/IBlogAuthor.d.ts +7 -7
  21. package/dist/Interfaces/Blog/IBlogAuthor.js +2 -2
  22. package/dist/Interfaces/Blog/IBlogCategory.d.ts +9 -9
  23. package/dist/Interfaces/Blog/IBlogCategory.js +2 -2
  24. package/dist/Interfaces/Blog/IBlogComment.d.ts +13 -13
  25. package/dist/Interfaces/Blog/IBlogComment.js +2 -2
  26. package/dist/Interfaces/Blog/IBlogKeywords.d.ts +9 -9
  27. package/dist/Interfaces/Blog/IBlogKeywords.js +2 -2
  28. package/dist/Interfaces/Booking/index.d.ts +74 -74
  29. package/dist/Interfaces/Booking/index.js +17 -17
  30. package/dist/Interfaces/Brand/index.d.ts +15 -15
  31. package/dist/Interfaces/Brand/index.js +2 -2
  32. package/dist/Interfaces/Buylist/index.d.ts +17 -0
  33. package/dist/Interfaces/Buylist/index.js +3 -0
  34. package/dist/Interfaces/Buylist/index.js.map +1 -0
  35. package/dist/Interfaces/CMS/index.d.ts +28 -28
  36. package/dist/Interfaces/CMS/index.js +5 -5
  37. package/dist/Interfaces/Cart/IElavonPayload.d.ts +93 -93
  38. package/dist/Interfaces/Cart/IElavonPayload.js +17 -17
  39. package/dist/Interfaces/Cart/IMarketPayload.d.ts +12 -12
  40. package/dist/Interfaces/Cart/IMarketPayload.js +2 -2
  41. package/dist/Interfaces/Cart/IPandaPayload.d.ts +64 -64
  42. package/dist/Interfaces/Cart/IPandaPayload.js +18 -18
  43. package/dist/Interfaces/Cart/IPaymentCard.d.ts +22 -22
  44. package/dist/Interfaces/Cart/IPaymentCard.js +44 -44
  45. package/dist/Interfaces/Cart/IPaypalPayload.d.ts +9 -9
  46. package/dist/Interfaces/Cart/IPaypalPayload.js +2 -2
  47. package/dist/Interfaces/Cart/IPaysafePayload.d.ts +72 -72
  48. package/dist/Interfaces/Cart/IPaysafePayload.js +2 -2
  49. package/dist/Interfaces/Cart/IStripePayload.d.ts +66 -66
  50. package/dist/Interfaces/Cart/IStripePayload.js +2 -2
  51. package/dist/Interfaces/Cart/index.d.ts +451 -451
  52. package/dist/Interfaces/Cart/index.js +216 -216
  53. package/dist/Interfaces/CartReservedQuantities/index.d.ts +10 -10
  54. package/dist/Interfaces/CartReservedQuantities/index.js +2 -2
  55. package/dist/Interfaces/CashDrawers/index.d.ts +38 -38
  56. package/dist/Interfaces/CashDrawers/index.js +19 -19
  57. package/dist/Interfaces/Catalogue/index.d.ts +68 -68
  58. package/dist/Interfaces/Catalogue/index.js +37 -37
  59. package/dist/Interfaces/Category/index.d.ts +33 -33
  60. package/dist/Interfaces/Category/index.js +2 -2
  61. package/dist/Interfaces/Chart/index.d.ts +11 -11
  62. package/dist/Interfaces/Chart/index.js +2 -2
  63. package/dist/Interfaces/Class/index.d.ts +8 -8
  64. package/dist/Interfaces/Class/index.js +2 -2
  65. package/dist/Interfaces/Consent/index.d.ts +6 -6
  66. package/dist/Interfaces/Consent/index.js +2 -2
  67. package/dist/Interfaces/Context/IContextProps.d.ts +4 -4
  68. package/dist/Interfaces/Context/IContextProps.js +2 -2
  69. package/dist/Interfaces/Context/IContextState.d.ts +15 -15
  70. package/dist/Interfaces/Context/IContextState.js +2 -2
  71. package/dist/Interfaces/Customer/ICustomerBadge.d.ts +2 -2
  72. package/dist/Interfaces/Customer/ICustomerBadge.js +2 -2
  73. package/dist/Interfaces/Customer/ICustomerRating.d.ts +10 -10
  74. package/dist/Interfaces/Customer/ICustomerRating.js +2 -2
  75. package/dist/Interfaces/Customer/IStoreCredit.d.ts +13 -13
  76. package/dist/Interfaces/Customer/IStoreCredit.js +2 -2
  77. package/dist/Interfaces/Customer/index.d.ts +104 -104
  78. package/dist/Interfaces/Customer/index.js +148 -148
  79. package/dist/Interfaces/Declination/index.d.ts +117 -117
  80. package/dist/Interfaces/Declination/index.js +66 -66
  81. package/dist/Interfaces/Document/index.d.ts +8 -8
  82. package/dist/Interfaces/Document/index.js +2 -2
  83. package/dist/Interfaces/Elastic/index.d.ts +89 -89
  84. package/dist/Interfaces/Elastic/index.js +2 -2
  85. package/dist/Interfaces/Email/CustomGR/I3DPrintEmail.d.ts +11 -11
  86. package/dist/Interfaces/Email/CustomGR/I3DPrintEmail.js +2 -2
  87. package/dist/Interfaces/Email/CustomGR/IBorrowToolsEmail.d.ts +15 -15
  88. package/dist/Interfaces/Email/CustomGR/IBorrowToolsEmail.js +2 -2
  89. package/dist/Interfaces/Email/CustomGR/IPickupMaterialsEmail.d.ts +12 -12
  90. package/dist/Interfaces/Email/CustomGR/IPickupMaterialsEmail.js +2 -2
  91. package/dist/Interfaces/Email/CustomGR/IPreMeetingFormEmail.d.ts +36 -36
  92. package/dist/Interfaces/Email/CustomGR/IPreMeetingFormEmail.js +2 -2
  93. package/dist/Interfaces/Email/CustomGR/ISponsorRequestEmail.d.ts +12 -12
  94. package/dist/Interfaces/Email/CustomGR/ISponsorRequestEmail.js +2 -2
  95. package/dist/Interfaces/Email/CustomGR/ITransportEmail.d.ts +12 -12
  96. package/dist/Interfaces/Email/CustomGR/ITransportEmail.js +2 -2
  97. package/dist/Interfaces/Email/CustomGR/ITransportQuoteEmail.d.ts +12 -12
  98. package/dist/Interfaces/Email/CustomGR/ITransportQuoteEmail.js +2 -2
  99. package/dist/Interfaces/Email/CustomGR/IVegetalsEmail.d.ts +16 -16
  100. package/dist/Interfaces/Email/CustomGR/IVegetalsEmail.js +2 -2
  101. package/dist/Interfaces/Email/CustomGR/IWishlistEmail.d.ts +15 -15
  102. package/dist/Interfaces/Email/CustomGR/IWishlistEmail.js +2 -2
  103. package/dist/Interfaces/Email/IAbandonnedCartEmail.d.ts +29 -29
  104. package/dist/Interfaces/Email/IAbandonnedCartEmail.js +2 -2
  105. package/dist/Interfaces/Email/IAccountConfirmationEmail.d.ts +22 -22
  106. package/dist/Interfaces/Email/IAccountConfirmationEmail.js +2 -2
  107. package/dist/Interfaces/Email/IApplicationEmail.d.ts +19 -19
  108. package/dist/Interfaces/Email/IApplicationEmail.js +2 -2
  109. package/dist/Interfaces/Email/IBackInStockEmail.d.ts +21 -21
  110. package/dist/Interfaces/Email/IBackInStockEmail.js +2 -2
  111. package/dist/Interfaces/Email/IContactEmail.d.ts +20 -20
  112. package/dist/Interfaces/Email/IContactEmail.js +2 -2
  113. package/dist/Interfaces/Email/ICustomerBookingAdminEmail.d.ts +15 -15
  114. package/dist/Interfaces/Email/ICustomerBookingAdminEmail.js +2 -2
  115. package/dist/Interfaces/Email/ICustomerBookingEmail.d.ts +14 -14
  116. package/dist/Interfaces/Email/ICustomerBookingEmail.js +2 -2
  117. package/dist/Interfaces/Email/IEmail.d.ts +20 -20
  118. package/dist/Interfaces/Email/IEmail.js +60 -60
  119. package/dist/Interfaces/Email/IOrderConfirmationEmail.d.ts +47 -47
  120. package/dist/Interfaces/Email/IOrderConfirmationEmail.js +2 -2
  121. package/dist/Interfaces/Email/IPasswordResetEmail.d.ts +17 -17
  122. package/dist/Interfaces/Email/IPasswordResetEmail.js +2 -2
  123. package/dist/Interfaces/Email/IPhotoShootEmail.d.ts +14 -14
  124. package/dist/Interfaces/Email/IPhotoShootEmail.js +2 -2
  125. package/dist/Interfaces/Email/IPickupConfirmation.d.ts +23 -23
  126. package/dist/Interfaces/Email/IPickupConfirmation.js +2 -2
  127. package/dist/Interfaces/Email/IShippingConfirmation.d.ts +23 -23
  128. package/dist/Interfaces/Email/IShippingConfirmation.js +2 -2
  129. package/dist/Interfaces/Email/IWelcomeEmail.d.ts +19 -19
  130. package/dist/Interfaces/Email/IWelcomeEmail.js +2 -2
  131. package/dist/Interfaces/ExportSchema/index.d.ts +7 -7
  132. package/dist/Interfaces/ExportSchema/index.js +2 -2
  133. package/dist/Interfaces/ExternalService/BaseExternalService.d.ts +12 -12
  134. package/dist/Interfaces/ExternalService/BaseExternalService.js +2 -2
  135. package/dist/Interfaces/ExternalService/ExternalProductsService.d.ts +4 -4
  136. package/dist/Interfaces/ExternalService/ExternalProductsService.js +2 -2
  137. package/dist/Interfaces/ExternalService/index.d.ts +9 -9
  138. package/dist/Interfaces/ExternalService/index.js +2 -2
  139. package/dist/Interfaces/FirstOrderTracking/index.d.ts +5 -5
  140. package/dist/Interfaces/FirstOrderTracking/index.js +2 -2
  141. package/dist/Interfaces/G2/index.d.ts +556 -556
  142. package/dist/Interfaces/G2/index.js +38 -38
  143. package/dist/Interfaces/Indexed/Product/IIndexedLastSavedProduct.d.ts +20 -20
  144. package/dist/Interfaces/Indexed/Product/IIndexedLastSavedProduct.js +2 -2
  145. package/dist/Interfaces/Indexed/Product/index.d.ts +105 -105
  146. package/dist/Interfaces/Indexed/Product/index.js +253 -253
  147. package/dist/Interfaces/Inventory/index.d.ts +19 -19
  148. package/dist/Interfaces/Inventory/index.js +8 -8
  149. package/dist/Interfaces/Invoice/index.d.ts +4 -4
  150. package/dist/Interfaces/Invoice/index.js +2 -2
  151. package/dist/Interfaces/MarketplacePublication/MarketplaceOrderData.d.ts +3 -3
  152. package/dist/Interfaces/MarketplacePublication/MarketplaceOrderData.js +2 -2
  153. package/dist/Interfaces/MarketplacePublication/index.d.ts +23 -23
  154. package/dist/Interfaces/MarketplacePublication/index.js +22 -22
  155. package/dist/Interfaces/Menu/index.d.ts +40 -40
  156. package/dist/Interfaces/Menu/index.js +16 -16
  157. package/dist/Interfaces/Note/index.d.ts +10 -10
  158. package/dist/Interfaces/Note/index.js +7 -7
  159. package/dist/Interfaces/Operations/ICreatedBy.d.ts +6 -6
  160. package/dist/Interfaces/Operations/ICreatedBy.js +2 -2
  161. package/dist/Interfaces/Operations/IUpdate.d.ts +5 -5
  162. package/dist/Interfaces/Operations/IUpdate.js +2 -2
  163. package/dist/Interfaces/Order/index.d.ts +4 -4
  164. package/dist/Interfaces/Order/index.js +2 -2
  165. package/dist/Interfaces/Org/IRelUser.d.ts +9 -9
  166. package/dist/Interfaces/Org/IRelUser.js +2 -2
  167. package/dist/Interfaces/Org/index.d.ts +29 -29
  168. package/dist/Interfaces/Org/index.js +12 -12
  169. package/dist/Interfaces/Payment/index.d.ts +26 -26
  170. package/dist/Interfaces/Payment/index.js +14 -14
  171. package/dist/Interfaces/Product/IAttributeFamily.d.ts +6 -6
  172. package/dist/Interfaces/Product/IAttributeFamily.js +2 -2
  173. package/dist/Interfaces/Product/IImportProduct.d.ts +42 -42
  174. package/dist/Interfaces/Product/IImportProduct.js +882 -882
  175. package/dist/Interfaces/Product/IInventoryItem.d.ts +74 -74
  176. package/dist/Interfaces/Product/IInventoryItem.js +38 -38
  177. package/dist/Interfaces/Product/IPricing.d.ts +177 -177
  178. package/dist/Interfaces/Product/IPricing.js +180 -180
  179. package/dist/Interfaces/Product/index.d.ts +137 -137
  180. package/dist/Interfaces/Product/index.js +64 -64
  181. package/dist/Interfaces/ProductAttribute/index.d.ts +11 -11
  182. package/dist/Interfaces/ProductAttribute/index.js +2 -2
  183. package/dist/Interfaces/PromiseToPurchase/BankType.d.ts +41 -41
  184. package/dist/Interfaces/PromiseToPurchase/BankType.js +41 -41
  185. package/dist/Interfaces/PromiseToPurchase/IIndexedBankUsed.d.ts +33 -33
  186. package/dist/Interfaces/PromiseToPurchase/IIndexedBankUsed.js +15 -15
  187. package/dist/Interfaces/PromiseToPurchase/IIndexedCustomerPromiseToPurchase.d.ts +19 -19
  188. package/dist/Interfaces/PromiseToPurchase/IIndexedCustomerPromiseToPurchase.js +2 -2
  189. package/dist/Interfaces/PromiseToPurchase/index.d.ts +50 -50
  190. package/dist/Interfaces/PromiseToPurchase/index.js +13 -13
  191. package/dist/Interfaces/PurchaseOrder/index.d.ts +17 -17
  192. package/dist/Interfaces/PurchaseOrder/index.js +2 -2
  193. package/dist/Interfaces/Query/IBrandQueryOptions.d.ts +11 -11
  194. package/dist/Interfaces/Query/IBrandQueryOptions.js +2 -2
  195. package/dist/Interfaces/Query/ICategoryQueryOptions.d.ts +11 -11
  196. package/dist/Interfaces/Query/ICategoryQueryOptions.js +2 -2
  197. package/dist/Interfaces/Query/IProductQueryOptions.d.ts +16 -16
  198. package/dist/Interfaces/Query/IProductQueryOptions.js +2 -2
  199. package/dist/Interfaces/Quote/index.d.ts +5 -5
  200. package/dist/Interfaces/Quote/index.js +2 -2
  201. package/dist/Interfaces/Refunds/index.d.ts +106 -106
  202. package/dist/Interfaces/Refunds/index.js +2 -2
  203. package/dist/Interfaces/Rules/IDiscountRule.d.ts +155 -155
  204. package/dist/Interfaces/Rules/IDiscountRule.js +114 -114
  205. package/dist/Interfaces/Schedule/index.d.ts +48 -48
  206. package/dist/Interfaces/Schedule/index.js +2 -2
  207. package/dist/Interfaces/Services/IAddServiceResponse.d.ts +4 -4
  208. package/dist/Interfaces/Services/IAddServiceResponse.js +2 -2
  209. package/dist/Interfaces/Services/IService.d.ts +16 -16
  210. package/dist/Interfaces/Services/IService.js +2 -2
  211. package/dist/Interfaces/Services/IServiceSecret.d.ts +8 -8
  212. package/dist/Interfaces/Services/IServiceSecret.js +2 -2
  213. package/dist/Interfaces/Shipping/Shipstation/carriers.d.ts +10 -10
  214. package/dist/Interfaces/Shipping/Shipstation/carriers.js +2 -2
  215. package/dist/Interfaces/Shipping/Shipstation/order.d.ts +227 -227
  216. package/dist/Interfaces/Shipping/Shipstation/order.js +2 -2
  217. package/dist/Interfaces/Shipping/Shipstation/quote.d.ts +31 -31
  218. package/dist/Interfaces/Shipping/Shipstation/quote.js +2 -2
  219. package/dist/Interfaces/Shipping/Shiptime/order.d.ts +54 -54
  220. package/dist/Interfaces/Shipping/Shiptime/order.js +71 -71
  221. package/dist/Interfaces/Shipping/Shiptime/quote.d.ts +111 -111
  222. package/dist/Interfaces/Shipping/Shiptime/quote.js +2 -2
  223. package/dist/Interfaces/Slider/GR.d.ts +114 -114
  224. package/dist/Interfaces/Slider/GR.js +271 -271
  225. package/dist/Interfaces/Slider/index.d.ts +30 -30
  226. package/dist/Interfaces/Slider/index.js +2 -2
  227. package/dist/Interfaces/Space/IExternalService.d.ts +54 -54
  228. package/dist/Interfaces/Space/IExternalService.js +45 -45
  229. package/dist/Interfaces/Space/IMember.d.ts +16 -16
  230. package/dist/Interfaces/Space/IMember.js +9 -9
  231. package/dist/Interfaces/Space/index.d.ts +414 -414
  232. package/dist/Interfaces/Space/index.js +176 -176
  233. package/dist/Interfaces/Specials/gr.d.ts +61 -61
  234. package/dist/Interfaces/Specials/gr.js +2 -2
  235. package/dist/Interfaces/StockNotification/index.d.ts +7 -7
  236. package/dist/Interfaces/StockNotification/index.js +2 -2
  237. package/dist/Interfaces/Store/index.d.ts +63 -63
  238. package/dist/Interfaces/Store/index.js +27 -27
  239. package/dist/Interfaces/Supplier/ICommand.d.ts +11 -11
  240. package/dist/Interfaces/Supplier/ICommand.js +2 -2
  241. package/dist/Interfaces/Supplier/index.d.ts +36 -36
  242. package/dist/Interfaces/Supplier/index.js +24 -24
  243. package/dist/Interfaces/TCG/index.d.ts +194 -194
  244. package/dist/Interfaces/TCG/index.js +60 -60
  245. package/dist/Interfaces/Tag/index.d.ts +18 -18
  246. package/dist/Interfaces/Tag/index.js +2 -2
  247. package/dist/Interfaces/Tax/index.d.ts +13 -13
  248. package/dist/Interfaces/Tax/index.js +2 -2
  249. package/dist/Interfaces/TransferRequest/index.d.ts +103 -103
  250. package/dist/Interfaces/TransferRequest/index.js +46 -46
  251. package/dist/Interfaces/Translation/index.d.ts +8 -8
  252. package/dist/Interfaces/Translation/index.js +5 -5
  253. package/dist/Interfaces/Update/index.d.ts +10 -10
  254. package/dist/Interfaces/Update/index.js +2 -2
  255. package/dist/Interfaces/User/IUser.d.ts +65 -65
  256. package/dist/Interfaces/User/IUser.js +8 -8
  257. package/dist/Interfaces/Version/index.d.ts +11 -11
  258. package/dist/Interfaces/Version/index.js +2 -2
  259. package/dist/Interfaces/Wishlist/index.d.ts +7 -7
  260. package/dist/Interfaces/Wishlist/index.js +2 -2
  261. package/dist/constants/Interfaces/IBaseApi.d.ts +15 -15
  262. package/dist/constants/Interfaces/IBaseApi.js +2 -2
  263. package/dist/constants/Interfaces/IEndpointResult.d.ts +9 -9
  264. package/dist/constants/Interfaces/IEndpointResult.js +2 -2
  265. package/dist/constants/enums.d.ts +6 -6
  266. package/dist/constants/enums.js +10 -10
  267. package/dist/constants/services.d.ts +2 -2
  268. package/dist/constants/services.js +122 -122
  269. package/dist/constants/version.d.ts +2 -2
  270. package/dist/constants/version.js +5 -5
  271. package/dist/index.d.ts +50 -50
  272. package/dist/index.js +266 -266
  273. package/dist/lib/Attribute/index.d.ts +14 -14
  274. package/dist/lib/Attribute/index.js +186 -186
  275. package/dist/lib/BGJob/index.d.ts +9 -9
  276. package/dist/lib/BGJob/index.js +216 -216
  277. package/dist/lib/BackgroundWorker/index.d.ts +34 -34
  278. package/dist/lib/BackgroundWorker/index.js +59 -59
  279. package/dist/lib/Blog/BlogArticle.d.ts +5 -5
  280. package/dist/lib/Blog/BlogArticle.js +10 -10
  281. package/dist/lib/Blog/BlogAuthor.d.ts +5 -5
  282. package/dist/lib/Blog/BlogAuthor.js +10 -10
  283. package/dist/lib/Blog/BlogCategory.d.ts +5 -5
  284. package/dist/lib/Blog/BlogCategory.js +10 -10
  285. package/dist/lib/Blog/BlogKeyword.d.ts +5 -5
  286. package/dist/lib/Blog/BlogKeyword.js +10 -10
  287. package/dist/lib/Booking/index.d.ts +85 -85
  288. package/dist/lib/Booking/index.js +596 -596
  289. package/dist/lib/Brand/index.d.ts +26 -26
  290. package/dist/lib/Brand/index.js +131 -131
  291. package/dist/lib/Cart/index.d.ts +354 -354
  292. package/dist/lib/Cart/index.js +4055 -4055
  293. package/dist/lib/CartReservedQuantities/index.d.ts +49 -49
  294. package/dist/lib/CartReservedQuantities/index.js +159 -159
  295. package/dist/lib/CashDrawerShift/index.d.ts +84 -84
  296. package/dist/lib/CashDrawerShift/index.js +206 -206
  297. package/dist/lib/Catalogue/index.d.ts +15 -15
  298. package/dist/lib/Catalogue/index.js +78 -78
  299. package/dist/lib/Category/index.d.ts +34 -34
  300. package/dist/lib/Category/index.js +230 -230
  301. package/dist/lib/Class/index.d.ts +16 -16
  302. package/dist/lib/Class/index.js +66 -66
  303. package/dist/lib/Consent/index.d.ts +4 -4
  304. package/dist/lib/Consent/index.js +29 -29
  305. package/dist/lib/Customer/index.d.ts +30 -30
  306. package/dist/lib/Customer/index.js +92 -92
  307. package/dist/lib/Declination/index.d.ts +9 -9
  308. package/dist/lib/Declination/index.js +26 -26
  309. package/dist/lib/Discount/index.d.ts +27 -27
  310. package/dist/lib/Discount/index.js +493 -493
  311. package/dist/lib/ElasticSearch/index.d.ts +13 -13
  312. package/dist/lib/ElasticSearch/index.js +50 -50
  313. package/dist/lib/Elavon/index.d.ts +18 -18
  314. package/dist/lib/Elavon/index.js +135 -135
  315. package/dist/lib/Email/AbandonedCartEmail.d.ts +16 -16
  316. package/dist/lib/Email/AbandonedCartEmail.js +24 -24
  317. package/dist/lib/Email/AccountConfirmationEmail.d.ts +19 -19
  318. package/dist/lib/Email/AccountConfirmationEmail.js +30 -30
  319. package/dist/lib/Email/AdminOrderConfirmationEmail.d.ts +16 -16
  320. package/dist/lib/Email/AdminOrderConfirmationEmail.js +24 -24
  321. package/dist/lib/Email/ApplicationEmail.d.ts +16 -16
  322. package/dist/lib/Email/ApplicationEmail.js +24 -24
  323. package/dist/lib/Email/BackInStockEmail.d.ts +16 -16
  324. package/dist/lib/Email/BackInStockEmail.js +24 -24
  325. package/dist/lib/Email/ContactEmail.d.ts +16 -16
  326. package/dist/lib/Email/ContactEmail.js +24 -24
  327. package/dist/lib/Email/CustomerBookingAdminEmail.d.ts +16 -16
  328. package/dist/lib/Email/CustomerBookingAdminEmail.js +24 -24
  329. package/dist/lib/Email/CustomerBookingEmail.d.ts +16 -16
  330. package/dist/lib/Email/CustomerBookingEmail.js +24 -24
  331. package/dist/lib/Email/OrderConfirmationEmail.d.ts +16 -16
  332. package/dist/lib/Email/OrderConfirmationEmail.js +24 -24
  333. package/dist/lib/Email/OrderDenounciationEmail.d.ts +16 -16
  334. package/dist/lib/Email/OrderDenounciationEmail.js +24 -24
  335. package/dist/lib/Email/OrderSampleEmail.d.ts +16 -16
  336. package/dist/lib/Email/OrderSampleEmail.js +24 -24
  337. package/dist/lib/Email/OtherTypeEmails.d.ts +16 -16
  338. package/dist/lib/Email/OtherTypeEmails.js +27 -27
  339. package/dist/lib/Email/PasswordResetEmail.d.ts +16 -16
  340. package/dist/lib/Email/PasswordResetEmail.js +24 -24
  341. package/dist/lib/Email/PhotoShootEmail.d.ts +16 -16
  342. package/dist/lib/Email/PhotoShootEmail.js +24 -24
  343. package/dist/lib/Email/PickUpConfirmation.d.ts +16 -16
  344. package/dist/lib/Email/PickUpConfirmation.js +24 -24
  345. package/dist/lib/Email/ShippingConfirmation.d.ts +16 -16
  346. package/dist/lib/Email/ShippingConfirmation.js +24 -24
  347. package/dist/lib/Email/WelcomeEmail.d.ts +16 -16
  348. package/dist/lib/Email/WelcomeEmail.js +24 -24
  349. package/dist/lib/Email/index.d.ts +16 -16
  350. package/dist/lib/Email/index.js +31 -31
  351. package/dist/lib/ExternalService/Ebay.d.ts +74 -74
  352. package/dist/lib/ExternalService/Ebay.js +124 -124
  353. package/dist/lib/ExternalService/index.d.ts +5 -5
  354. package/dist/lib/ExternalService/index.js +10 -10
  355. package/dist/lib/FirstOrderTracking/index.d.ts +5 -5
  356. package/dist/lib/FirstOrderTracking/index.js +10 -10
  357. package/dist/lib/Indexed/IndexedCart.d.ts +13 -13
  358. package/dist/lib/Indexed/IndexedCart.js +91 -91
  359. package/dist/lib/Indexed/Product.d.ts +17 -17
  360. package/dist/lib/Indexed/Product.js +98 -98
  361. package/dist/lib/Inventory/index.d.ts +112 -112
  362. package/dist/lib/Inventory/index.js +492 -492
  363. package/dist/lib/Invoice/index.d.ts +16 -16
  364. package/dist/lib/Invoice/index.js +21 -21
  365. package/dist/lib/MarketplacePublication/index.d.ts +9 -9
  366. package/dist/lib/MarketplacePublication/index.js +426 -426
  367. package/dist/lib/Menu/index.d.ts +11 -11
  368. package/dist/lib/Menu/index.js +107 -107
  369. package/dist/lib/MongoDB/BaseAPI.d.ts +18 -18
  370. package/dist/lib/MongoDB/BaseAPI.js +200 -200
  371. package/dist/lib/Note/index.d.ts +4 -4
  372. package/dist/lib/Note/index.js +6 -6
  373. package/dist/lib/Order/index.d.ts +27 -27
  374. package/dist/lib/Order/index.js +56 -56
  375. package/dist/lib/Org/index.d.ts +68 -68
  376. package/dist/lib/Org/index.js +216 -216
  377. package/dist/lib/PandaPay/index.d.ts +16 -16
  378. package/dist/lib/PandaPay/index.js +176 -176
  379. package/dist/lib/Paysafe/index.d.ts +11 -11
  380. package/dist/lib/Paysafe/index.js +41 -41
  381. package/dist/lib/Product/index.d.ts +182 -182
  382. package/dist/lib/Product/index.js +847 -847
  383. package/dist/lib/ProductAttribute/index.d.ts +15 -15
  384. package/dist/lib/ProductAttribute/index.js +45 -45
  385. package/dist/lib/PromiseToPurchase/index.d.ts +109 -109
  386. package/dist/lib/PromiseToPurchase/index.js +343 -343
  387. package/dist/lib/PurchaseOrder/index.d.ts +20 -20
  388. package/dist/lib/PurchaseOrder/index.js +28 -28
  389. package/dist/lib/Queue/index.d.ts +40 -0
  390. package/dist/lib/Queue/index.js +255 -0
  391. package/dist/lib/Queue/index.js.map +1 -0
  392. package/dist/lib/Schedule/index.d.ts +5 -5
  393. package/dist/lib/Schedule/index.js +12 -12
  394. package/dist/lib/Service/Enum/ServiceEnum.d.ts +3 -3
  395. package/dist/lib/Service/Enum/ServiceEnum.js +7 -7
  396. package/dist/lib/Service/index.d.ts +13 -13
  397. package/dist/lib/Service/index.js +21 -21
  398. package/dist/lib/Shipment/index.d.ts +28 -28
  399. package/dist/lib/Shipment/index.js +370 -370
  400. package/dist/lib/Slider/index.d.ts +22 -22
  401. package/dist/lib/Slider/index.js +119 -119
  402. package/dist/lib/Space/index.d.ts +1181 -1181
  403. package/dist/lib/Space/index.js +5841 -5841
  404. package/dist/lib/StockNotification/index.d.ts +4 -4
  405. package/dist/lib/StockNotification/index.js +6 -6
  406. package/dist/lib/Store/index.d.ts +5 -5
  407. package/dist/lib/Store/index.js +12 -12
  408. package/dist/lib/Supplier/Command.d.ts +5 -5
  409. package/dist/lib/Supplier/Command.js +10 -10
  410. package/dist/lib/Supplier/index.d.ts +25 -25
  411. package/dist/lib/Supplier/index.js +27 -27
  412. package/dist/lib/Tags/index.d.ts +6 -6
  413. package/dist/lib/Tags/index.js +26 -26
  414. package/dist/lib/Tax/index.d.ts +8 -8
  415. package/dist/lib/Tax/index.js +54 -54
  416. package/dist/lib/TransferRequest/index.d.ts +290 -290
  417. package/dist/lib/TransferRequest/index.js +1026 -1026
  418. package/dist/lib/Update/index.d.ts +10 -10
  419. package/dist/lib/Update/index.js +22 -22
  420. package/dist/lib/User/index.d.ts +89 -89
  421. package/dist/lib/User/index.js +328 -328
  422. package/dist/lib/Wishlist/index.d.ts +5 -5
  423. package/dist/lib/Wishlist/index.js +10 -10
  424. package/dist/lib/base.d.ts +14 -14
  425. package/dist/lib/base.js +62 -62
  426. package/dist/lib/baseService.d.ts +17 -17
  427. package/dist/lib/baseService.js +69 -69
  428. package/dist/rules/ADD/utils/buyback.d.ts +4 -4
  429. package/dist/rules/ADD/utils/buyback.js +135 -135
  430. package/dist/rules/GR/constants/data.d.ts +26 -26
  431. package/dist/rules/GR/constants/data.js +81 -81
  432. package/dist/rules/GR/constants/expedition.d.ts +4 -4
  433. package/dist/rules/GR/constants/expedition.js +9 -9
  434. package/dist/rules/GR/constants/products.d.ts +22 -22
  435. package/dist/rules/GR/constants/products.js +263 -263
  436. package/dist/rules/GR/interfaces/cart.d.ts +84 -84
  437. package/dist/rules/GR/interfaces/cart.js +41 -41
  438. package/dist/rules/GR/interfaces/data.d.ts +101 -101
  439. package/dist/rules/GR/interfaces/data.js +114 -114
  440. package/dist/rules/GR/interfaces/products.d.ts +61 -61
  441. package/dist/rules/GR/interfaces/products.js +10 -10
  442. package/dist/rules/GR/utils/cart.d.ts +95 -95
  443. package/dist/rules/GR/utils/cart.js +839 -839
  444. package/dist/rules/GR/utils/data.d.ts +3 -3
  445. package/dist/rules/GR/utils/data.js +28 -28
  446. package/dist/rules/GR/utils/expedition.d.ts +140 -140
  447. package/dist/rules/GR/utils/expedition.js +2016 -2016
  448. package/dist/rules/GR/utils/g2.d.ts +209 -209
  449. package/dist/rules/GR/utils/g2.js +1002 -1002
  450. package/dist/rules/GR/utils/invoices.d.ts +51 -51
  451. package/dist/rules/GR/utils/invoices.js +215 -215
  452. package/dist/rules/GR/utils/products.d.ts +277 -277
  453. package/dist/rules/GR/utils/products.js +1350 -1350
  454. package/dist/rules/GR/utils/upsells.d.ts +111 -111
  455. package/dist/rules/GR/utils/upsells.js +215 -215
  456. package/dist/services/database/BaseProvider.d.ts +29 -29
  457. package/dist/services/database/BaseProvider.js +28 -28
  458. package/dist/services/database/BatchUtils.d.ts +14 -14
  459. package/dist/services/database/BatchUtils.js +43 -43
  460. package/dist/services/database/Config.d.ts +2 -2
  461. package/dist/services/database/Config.js +5 -5
  462. package/dist/services/database/DatabaseService.d.ts +125 -125
  463. package/dist/services/database/DatabaseService.js +237 -237
  464. package/dist/services/database/FirebaseProvider.d.ts +17 -17
  465. package/dist/services/database/FirebaseProvider.js +235 -235
  466. package/dist/services/database/NotFirebaseProvider.d.ts +49 -49
  467. package/dist/services/database/NotFirebaseProvider.js +262 -262
  468. package/dist/services/g2/G2OrderSlip.d.ts +49 -49
  469. package/dist/services/g2/G2OrderSlip.js +228 -228
  470. package/dist/services/g2/utils.d.ts +19 -19
  471. package/dist/services/g2/utils.js +967 -967
  472. package/dist/services/logs/index.d.ts +23 -23
  473. package/dist/services/logs/index.js +66 -66
  474. package/dist/services/marketplace/BaseMarketServiceClass.d.ts +74 -69
  475. package/dist/services/marketplace/BaseMarketServiceClass.js +140 -133
  476. package/dist/services/marketplace/BaseMarketServiceClass.js.map +1 -1
  477. package/dist/services/marketplace/CardtraderServiceClass.d.ts +38 -33
  478. package/dist/services/marketplace/CardtraderServiceClass.js +223 -215
  479. package/dist/services/marketplace/CardtraderServiceClass.js.map +1 -1
  480. package/dist/services/marketplace/utils.d.ts +17 -17
  481. package/dist/services/marketplace/utils.js +32 -32
  482. package/dist/services/products/BaseClass.d.ts +79 -50
  483. package/dist/services/products/BaseClass.js +144 -66
  484. package/dist/services/products/BaseClass.js.map +1 -1
  485. package/dist/services/products/TCGService.d.ts +29 -32
  486. package/dist/services/products/TCGService.js +503 -554
  487. package/dist/services/products/TCGService.js.map +1 -1
  488. package/dist/services/products/utils.d.ts +31 -31
  489. package/dist/services/products/utils.js +144 -144
  490. package/dist/utils/algolia.d.ts +46 -46
  491. package/dist/utils/algolia.js +21 -21
  492. package/dist/utils/anonymisation.d.ts +54 -54
  493. package/dist/utils/anonymisation.js +280 -280
  494. package/dist/utils/array.d.ts +5 -5
  495. package/dist/utils/array.js +14 -14
  496. package/dist/utils/aws.d.ts +36 -36
  497. package/dist/utils/aws.js +154 -154
  498. package/dist/utils/booking.d.ts +30 -30
  499. package/dist/utils/booking.js +127 -127
  500. package/dist/utils/cart.d.ts +272 -272
  501. package/dist/utils/cart.js +1169 -1169
  502. package/dist/utils/categories.d.ts +2 -2
  503. package/dist/utils/categories.js +54 -54
  504. package/dist/utils/cmv.d.ts +10 -10
  505. package/dist/utils/cmv.js +107 -107
  506. package/dist/utils/console.d.ts +6 -6
  507. package/dist/utils/console.js +59 -59
  508. package/dist/utils/context.d.ts +20 -20
  509. package/dist/utils/context.js +61 -61
  510. package/dist/utils/currency.d.ts +6 -6
  511. package/dist/utils/currency.js +91 -91
  512. package/dist/utils/data.d.ts +31 -31
  513. package/dist/utils/data.js +296 -296
  514. package/dist/utils/date.d.ts +1 -1
  515. package/dist/utils/date.js +16 -16
  516. package/dist/utils/dimensions.d.ts +3 -3
  517. package/dist/utils/dimensions.js +16 -16
  518. package/dist/utils/discount.d.ts +174 -174
  519. package/dist/utils/discount.js +1118 -1118
  520. package/dist/utils/errors.d.ts +118 -118
  521. package/dist/utils/errors.js +123 -123
  522. package/dist/utils/file-admin.d.ts +8 -8
  523. package/dist/utils/file-admin.js +39 -39
  524. package/dist/utils/file.d.ts +39 -39
  525. package/dist/utils/file.js +208 -208
  526. package/dist/utils/firebase-admin.d.ts +11 -11
  527. package/dist/utils/firebase-admin.js +73 -73
  528. package/dist/utils/firebase.d.ts +58 -58
  529. package/dist/utils/firebase.js +148 -148
  530. package/dist/utils/import.d.ts +1 -1
  531. package/dist/utils/import.js +21 -21
  532. package/dist/utils/inventories.d.ts +101 -101
  533. package/dist/utils/inventories.js +467 -467
  534. package/dist/utils/locale.d.ts +24 -24
  535. package/dist/utils/locale.js +91 -91
  536. package/dist/utils/mailchimp.d.ts +58 -58
  537. package/dist/utils/mailchimp.js +531 -531
  538. package/dist/utils/mathUtils.d.ts +17 -17
  539. package/dist/utils/mathUtils.js +324 -324
  540. package/dist/utils/mongodb.d.ts +1 -1
  541. package/dist/utils/mongodb.js +22 -22
  542. package/dist/utils/object.d.ts +32 -32
  543. package/dist/utils/object.js +133 -133
  544. package/dist/utils/payment.d.ts +10 -10
  545. package/dist/utils/payment.js +23 -23
  546. package/dist/utils/products.d.ts +39 -39
  547. package/dist/utils/products.js +195 -195
  548. package/dist/utils/promiseToPurchase.d.ts +88 -88
  549. package/dist/utils/promiseToPurchase.js +229 -229
  550. package/dist/utils/prosprsearch.d.ts +42 -42
  551. package/dist/utils/prosprsearch.js +216 -216
  552. package/dist/utils/refunds.d.ts +2 -2
  553. package/dist/utils/refunds.js +21 -21
  554. package/dist/utils/sdc.d.ts +10 -10
  555. package/dist/utils/sdc.js +1309 -1309
  556. package/dist/utils/searchIndexes.d.ts +58 -58
  557. package/dist/utils/searchIndexes.js +247 -247
  558. package/dist/utils/services.d.ts +42 -42
  559. package/dist/utils/services.js +409 -409
  560. package/dist/utils/shipment.d.ts +110 -110
  561. package/dist/utils/shipment.js +345 -345
  562. package/dist/utils/simpletexting.d.ts +2 -2
  563. package/dist/utils/simpletexting.js +45 -45
  564. package/dist/utils/sliders.d.ts +4 -4
  565. package/dist/utils/sliders.js +24 -24
  566. package/dist/utils/string.d.ts +16 -16
  567. package/dist/utils/string.js +192 -192
  568. package/dist/utils/tcgService.d.ts +88 -88
  569. package/dist/utils/tcgService.js +408 -408
  570. package/dist/utils/tools.d.ts +5 -5
  571. package/dist/utils/tools.js +13 -13
  572. package/dist/utils/transferRequests.d.ts +43 -43
  573. package/dist/utils/transferRequests.js +67 -67
  574. package/dist/utils/update.d.ts +7 -7
  575. package/dist/utils/update.js +137 -137
  576. package/dist/utils/weight.d.ts +3 -3
  577. package/dist/utils/weight.js +16 -16
  578. package/dist/utils/zones.d.ts +11 -11
  579. package/dist/utils/zones.js +218 -218
  580. package/package.json +107 -107
  581. package/publish.sh +143 -143
  582. package/readme.md +182 -182
  583. package/.claude/settings.local.json +0 -7
  584. package/.env +0 -14
@@ -1,277 +1,277 @@
1
- import { IFilledDimensionUnits } from '../../../Interfaces/Declination';
2
- import IIndexedProduct from '../../../Interfaces/Indexed/Product';
3
- import ITranslation from '../../../Interfaces/Translation';
4
- import IAttribute, { IAttributeValue } from '../../../Interfaces/Attribute';
5
- import ICart, { ICartItem, ICartItemWithSubItem, IIndexedDeclination } from '../../../Interfaces/Cart';
6
- import IAddress from '../../../Interfaces/Address';
7
- import IStore from '../../../Interfaces/Store';
8
- import { ICustomPriceItem } from '../../../Interfaces/G2';
9
- import { IProductRecommendation } from '../../../Interfaces/Product';
10
- import IInventoryItem from '../../../Interfaces/Product/IInventoryItem';
11
- import ICustomer from '../../../Interfaces/Customer';
12
- import IDiscountRule from '../../../Interfaces/Rules/IDiscountRule';
13
- import ILang from '../../../utils/string';
14
- import { IConcreteOrder, IGrassProduct, IVracType } from '../interfaces/products';
15
- import { TExpeditionMethod, TFeesAppliedResponse } from '../interfaces/cart';
16
- /**
17
- * @description Returns sell unit label in correct language for a specific product's other_units
18
- * @param {IFilledDimensionUnits[] | undefined} otherUnits The unit array we have to check to get the sell unit
19
- * @param {string | undefined} locale The language in which we want to return the label
20
- * @param {string[]} returnUnitForSlugs An array of the slugs we want to return the unit label for
21
- * @param {boolean} options.returnPlural If plural version should be returned
22
- * @param {boolean} options.returnShortByDefault If short version should be prioritized
23
- */
24
- export declare const getProductSellUnitLabel: (otherUnits: IFilledDimensionUnits[] | undefined, locale?: string | undefined, returnUnitForSlugs?: string[], options?: {
25
- returnPlural?: boolean;
26
- returnShortByDefault?: boolean;
27
- }) => string;
28
- /**
29
- * @description Returns unit label in correct language for a specific product's other_units
30
- * @param {IFilledDimensionUnits[] | undefined} otherUnits The unit array we have to check to get the sell unit
31
- * @param {string} type The unit type to check
32
- * @param {string | undefined} locale The language in which we want to return the label
33
- * @param {string[]} returnUnitForSlugs An array of the slugs we want to return the unit label for
34
- * @param {boolean} options.returnPlural If plural version should be returned
35
- * @param {boolean} options.returnShortByDefault If short version should be prioritized
36
- */
37
- export declare const getProductUnitLabel: (otherUnits: IFilledDimensionUnits[] | undefined, type: 'sale_unit' | 'inventory_unit', locale?: string | undefined, returnUnitForSlugs?: string[], options?: {
38
- returnPlural?: boolean;
39
- returnShortByDefault?: boolean;
40
- }) => string;
41
- /**
42
- * Returns the unit label for a specific slug
43
- * @param {string} unitSlug The slug of the unit for which we want to get the label
44
- * @param {string | undefined} locale The language in which we want to get the label
45
- * @param {boolean} getPluralVersion Optionnal - If the plural version should be returned instead.
46
- * @param {string[]} returnUnitForSlugs The slugs for which we want to return a default value, in this case the unit slug for unit
47
- * @param {boolean} returnShortByDefault Optionnal - If the short version should be prioritized
48
- */
49
- export declare const getUnitLabelWithSlug: (unitSlug: string, locale?: string | undefined, getPluralVersion?: boolean, returnUnitForSlugs?: string[], returnShortByDefault?: boolean) => string;
50
- /**
51
- * Returns the plural unit label for a specific slug
52
- * @deprecated Should use getUnitLabelWithSlug instead (with props getPluralVersion=true)
53
- * @param {string} unitSlug The slug of the unit for which we want to get the label
54
- * @param {string | undefined} locale The language in which we want to get the label
55
- * @param {string[]} returnUnitForSlugs The slugs for which we want to return a default value, in this case the unit slug for unit
56
- */
57
- export declare const getPluralUnitLabelWithSlug: (unitSlug: string, locale?: string | undefined, returnUnitForSlugs?: string[], useShortIfDifferent?: boolean) => string;
58
- export declare const getCorrectPluralSellUnit: (sellUnit: {
59
- unit?: ILang;
60
- value: number;
61
- }, locale?: string) => string;
62
- export declare const productUnitSupportsDecimals: (unitSlug: string, isService?: boolean) => boolean;
63
- export declare const getProductAttributes: (product: IIndexedProduct) => {
64
- colors: string[];
65
- dimensions: string[];
66
- formats: string[];
67
- };
68
- export declare const getDescriptionLength: (description: ITranslation[], locale?: string) => number;
69
- export declare const getDescriptionString: (showFullDesc: boolean, maxLength: number, description: ITranslation[], locale?: string) => string;
70
- /**
71
- * Returns rounded product sell_unit quantities depending on current value, value of secondary input if existant and sale unit per command step ratio found in product.
72
- * @param value {number} - Current quantity as entered by user in first input
73
- * @param otherUnits {IFilledDimensionUnits[] | undefined} - FilledDimensionUnits found in product (possibly undefined)
74
- * @param value2 {number | undefined} - Current quantity as entered by user in second input (possibly undefined)
75
- * @param targetIsSecondaryInput {boolean} - If action was triggered from secondary input (defaults to false)
76
- */
77
- export declare const getRoundedSellUnitProductQuantities: (value: number, otherUnits: IFilledDimensionUnits[] | undefined, value2: number | undefined, targetIsSecondaryInput?: boolean) => {
78
- qte1: number;
79
- qte2?: number | undefined;
80
- };
81
- /**
82
- * Returns rounded product quantities depending on current value per command step ratio found in product.
83
- * @param value {number} - Current quantity as entered by user in first input
84
- * @param otherUnits {IFilledDimensionUnits[] | undefined} - FilledDimensionUnits found in product (possibly undefined)
85
- * @param type {'sale_unit' | 'inventory_unit'} - Quantity type for computing
86
- */
87
- export declare const getRoundedUnitProductQuantities: (value: number, otherUnits: IFilledDimensionUnits[] | undefined, type: 'sale_unit' | 'inventory_unit') => number;
88
- /**
89
- *
90
- * @param {string} stringToSplit
91
- * @param {string} dummyStringToReplace.currentValue, optionnal, default : '%%-%%'. Used to provide general replace values for a specific string. Is applied to both sections of the splitted string.
92
- * @param {string} dummyStringToReplace.newValue, optionnal, default : ' - '. Used to provide general replace values for a specific string. Is applied to both sections of the splitted string.
93
- * @returns {string[]}
94
- */
95
- export declare const splitOnDashes: (stringToSplit: string, dummyStringToReplace?: {
96
- currentValue: string;
97
- newValue: string;
98
- }) => string[];
99
- /**
100
- * Get product name as array. Array created mostly by splitting name on dash symbol (and variations).
101
- * @param {IIndexedVariationAlgolia | IIndexedProduct} product
102
- * @param {string | undefined} locale
103
- * @returns {string[]} - Position 0 is the "commum section" of the name, and position 1 should contain all specifics (ex. color, size, etc...)
104
- */
105
- export declare const getProdName: (product: any, locale: string | undefined, platform?: 'web' | 'pos', attributes?: IAttribute[]) => string[];
106
- /**
107
- * Function getParentProductCategoryGroup
108
- * @param prod - Product to check
109
- */
110
- export declare const getParentProductCategoryGroup: (prod: IIndexedProduct) => 'gazon' | 'beton' | 'vrac' | 'other';
111
- /**
112
- * Function getProductFormOptions - Returns all AttributeValues for product to construct options in add to cart form
113
- * @param product - Product to check
114
- * @param attributes - Array of IAttributes to fetch info from
115
- */
116
- export declare const getProductFormOptions: (product: IIndexedProduct, attributes: IAttribute[]) => {
117
- allColors: IAttributeValue[];
118
- allDimensions: IAttributeValue[];
119
- allFormats: IAttributeValue[];
120
- };
121
- /**
122
- * @description Checks if product is of type by checking TYPE attribute value. Works with indexed product or cart item.
123
- * @param product
124
- * @param type
125
- * @param excludeUndefined If excludeUndefined is true, products without the "type" attribute will return true
126
- * @returns boolean
127
- */
128
- export declare const checkIfProductIsOfType: (product: Partial<IIndexedProduct | ICartItem>, type: string, excludeUndefined?: boolean) => boolean;
129
- /**
130
- * Check if provided sku/slug corresponds to a non-speciality grass item
131
- * @param sku Grass item's sku
132
- * @param slug Grass item's parent product slug
133
- * @param onlyBaseGrass Optionnal. If provided data should only be compared to base grass (aka Kentucky)
134
- */
135
- export declare const checkIfIsNonSpecialityGrass: (sku: string, slug: string, onlyBaseGrass?: boolean) => boolean;
136
- export declare const checkIfProductIsInstallation: (item: IIndexedDeclination) => boolean;
137
- /**
138
- * Returns array of installation items found in provided array
139
- * @param items - Array of cart items or IIndexedDeclinations to check
140
- */
141
- export declare const getAllInstallFromItems: (items: (ICartItem | IIndexedDeclination)[]) => (ICartItem | IIndexedDeclination)[];
142
- /**
143
- * Function fuseGrassProducts
144
- * @description - Returns items with only one apparent grass product (used for detail customers).
145
- * ** FOR DISPLAY PURPOSES ONLY - Always save grass products separatly in ICart **
146
- * @param recursiveItems - ICartItems with subitems (object created for display purposes)
147
- */
148
- export declare const fuseGrassProducts: (recursiveItems: ICartItemWithSubItem[], isPro?: boolean) => ICartItemWithSubItem[];
149
- export declare const isMinQtyFee: (slug: string) => boolean;
150
- export declare const getAllMinGrassQuantities: (grassProduct: IGrassProduct, isPro: boolean) => {
151
- pickup: number;
152
- shipping: number;
153
- install: number;
154
- };
155
- export declare const getMinQtyFeeText: (parent_slug: string | undefined, grassProduct: IGrassProduct, isPro: boolean, locale?: string, expeditionMethod?: string, shortVersion?: boolean) => string;
156
- export declare const getMinQtyFeeAmountText: (parent_slug: string | undefined, locale: string | undefined, servicesFees: ICartItem[], showMinFeeAmount?: boolean) => string;
157
- export declare const getGrassQteText: (chosenDeclination: IIndexedDeclination | undefined, locale?: string) => string;
158
- export declare const getGrassServicesFees: (grassProduct: IGrassProduct, isPro: boolean, useFees: boolean, expeditionMethod: TExpeditionMethod, fetchProduct: (slug: string, locale: string | undefined, useFeeArray?: boolean, noDrafts?: boolean) => Promise<IIndexedProduct | undefined>, getIfAddressIsInsideZones: (address: IAddress | string) => Promise<string[]>, getDistanceFromAddress: (start: IAddress | string, finish: IAddress | string) => Promise<number>, locale: string, allStores: IStore[], chosenGrass: ICartItem, baseGrass?: ICartItem, customPriceList?: ICustomPriceItem[]) => Promise<ICartItem[]>;
159
- export declare const getGrassSubQuestionsByType: (type: 'install' | 'pro') => import("../interfaces/products").IGrassSubQuestion[];
160
- /**
161
- * @description For grass products. Over 1480pi2, if installation, quantities are rounded to rolls (10pi2) if pickup, and to half pal. if shipping
162
- * @param grassProduct
163
- * @param cartData
164
- * @returns quantity rounded to rolls with items to change or undefined
165
- */
166
- export declare const handleGrassProductQtyRoundForShipping: (cartData: ICart, grassProduct: IGrassProduct | undefined) => {
167
- rounded: number;
168
- itemsToChange: {
169
- sku: string;
170
- qte: number;
171
- }[];
172
- } | undefined;
173
- /**
174
- * Function roundGrassQte
175
- * @description Returns rounded grass quantity depending on current qty, if customer selected installation and pallet unit (if defined)
176
- * @param currentQte {number} - Current quantity as entered by user in input
177
- * @param isShipping {boolean} - Whether customer has selected installation option
178
- * @param palUnit {IFilledDimensionUnits | undefined} - Pallet FilledDimensionUnit (possibly undefined)
179
- */
180
- export declare const roundGrassQte: (currentQte: number, isShipping: boolean, palUnit: IFilledDimensionUnits | undefined) => number;
181
- /**
182
- * Detects if customer has "Installation tout inclus".
183
- * @param customPriceList - Customer custom price list
184
- * @return All inclusive installation if exists, undefined otherwise
185
- */
186
- export declare const getInstallationAllInclusiveFromPriceList: (customPriceList: ICustomPriceItem[] | undefined) => ICustomPriceItem | undefined;
187
- /**
188
- * Checks if all-inclusive installation is active.
189
- * @param hasInstallation - Whether the cart/form contains an installation
190
- * @param isPro - Whether the customer is a pro
191
- * @param customPriceList - Customer custom price list
192
- * @returns true if all-inclusive installation is active
193
- */
194
- export declare const isInstallAllInclusiveActive: (hasInstallation: boolean, isPro: boolean, customPriceList: ICustomPriceItem[] | undefined) => boolean;
195
- /**
196
- * Force )$ to kentucky base grass and sod delivery fee if install all-inclusive.
197
- * @param item - The cart item to potentially override
198
- * @returns The item with zeroed price if applicable, or the original item
199
- */
200
- export declare const applyAllInclusiveOverrides: (item: ICartItem) => ICartItem;
201
- export declare const shouldHideItemInCheckout: (item: ICartItem, allItems: ICartItem[]) => boolean;
202
- export declare const matchesFuelSurchargeParent: (surchargeSku: string, item: ICartItem) => boolean;
203
- export declare const getInstallationArray: (qte: number, baseGrassUpsells: IProductRecommendation[] | undefined, fetchProduct: (slug: string, locale: string | undefined, useFeeArray?: boolean, noDrafts?: boolean) => Promise<IIndexedProduct | undefined>, locale: string | undefined, isPro: boolean, chosenSku: string, customPriceList?: ICustomPriceItem[], returnOtherFees?: {
204
- engrais?: boolean;
205
- roulage?: boolean;
206
- }) => Promise<ICartItem[]>;
207
- export declare const getInstallItemPrice: (parentSlug: string, servicesFees: ICartItem[]) => number | undefined;
208
- export declare const getConcreteQteText: (declination: IIndexedDeclination, locale?: string) => string;
209
- /**
210
- * @description returns all items in cart where attribute AVAILABILITY contains wanted type.
211
- * @param cartData
212
- * @param availabilityType
213
- */
214
- export declare const getConcreteItemsByAvailability: (cartData: ICart, availabilityType: 'en-stock' | 'epuisement-stocks' | 'delais-a-prevoir' | 'aucune-production-prevue', returnTrueIfUndefined?: boolean) => ICartItem[];
215
- /**
216
- * Function getVracType - constructs vrac helper object is cart contains vrac or vrac associated items.
217
- * @param stores
218
- * @param cartData
219
- * @param getInventoryItemCallback
220
- * @param inventoryItemArray
221
- * @returns IVracType object containing vrac_type enum value and vrac_store_ids where vrac items are available
222
- */
223
- export declare const getVracType: (stores: IStore[], cartData: ICart, getInventoryItemCallback: (sku: string) => Promise<IInventoryItem | undefined>, inventoyItemArray?: IInventoryItem[]) => Promise<IVracType | undefined>;
224
- /**
225
- * Get all possible fees for a cart with basic info, to show approx. fee total before all data is saved in cart
226
- *
227
- * @param useFees If local fee array should be used, to save database calls
228
- * @param newCart Current cart data
229
- * @param deliveryType If fees should be checked for a pick-up or shipping order
230
- * @param fetchProduct Callback function for product fetch
231
- * @param getIfAddressIsInsideZones Callback function for zone check
232
- * @param getDistanceFromAddress Callback function to check distance with provided address
233
- * @param locale User's locale (fr or en)
234
- * @param allStores Full store array for space
235
- * @param isPro If customer associated with cart is a pro customer
236
- * @param grassProduct Constructed grass product from cart (with extra data for checks)
237
- * @param concreteOrder Constructed concrete products from cart (with extra data for checks)
238
- * @param settings.addOnePalletToPickup Optionnal - If additionnal pal. should be added for order
239
- * @param settings.saveToShippingPayload Optional - If data collected should be saved to cart's shipping_payload
240
- * @param settings.useStoreAddress Optionnal - Provided store ID for which the address should be used for check
241
- * @param settings.useDeliveryAddress Optionnal - If current carts shipping address should be used for check
242
- * @param settings.useAvailableVracStores Optionnal - Provided array of store IDs available for vrac order
243
- * @param customPriceList Optionnal - If pro customer with G2 custom price list and custom prices should be checked
244
- */
245
- export declare const fetchFeesBeforeCart: (useFees: boolean, newCart: ICart, deliveryType: TExpeditionMethod, fetchProduct: (slug: string, locale: string | undefined, useFeeArray?: boolean, noDrafts?: boolean) => Promise<IIndexedProduct | undefined>, getIfAddressIsInsideZones: (address: IAddress | string) => Promise<string[]>, getDistanceFromAddress: (start: IAddress | string, finish: IAddress | string) => Promise<number>, locale: string | undefined, allStores: IStore[], isPro: boolean, grassProduct?: IGrassProduct, concreteOrder?: IConcreteOrder, settings?: {
246
- addOnePalletToPickup?: boolean;
247
- saveToShippingPayload?: boolean;
248
- useStoreAddress?: string;
249
- useDeliveryAddress?: boolean;
250
- useAvailableVracStores?: string[];
251
- }, customPriceList?: ICustomPriceItem[]) => Promise<TFeesAppliedResponse>;
252
- /**
253
- * Check if pro custom promo info should be shown for customer for a specific product.
254
- * @param userData
255
- * @param isPro
256
- * @param product
257
- * @param customMinPrice
258
- */
259
- export declare const shouldShowProCustomPromo: (userData: ICustomer | null, isPro: boolean, product: any, customMinPrice?: ICustomPriceItem) => boolean;
260
- export declare const applyProCustomPromo: (decli: IIndexedDeclination, userData: ICustomer) => {
261
- discount_rules?: undefined;
262
- promo_price?: undefined;
263
- } | {
264
- discount_rules: IDiscountRule[];
265
- promo_price: {
266
- currency: string;
267
- amount: number;
268
- };
269
- };
270
- export declare const getFormattedProdGR: (decli: IIndexedDeclination, productSlug: string, isPro?: boolean) => IIndexedDeclination;
271
- /**
272
- * Checks if a 0.00$ reg_price item should be considered "hidden" or not.
273
- * @param item - The indexedDecli or cartItem to check
274
- * @param productSlug - The parent product's slug (in case it is not found in item)
275
- * @param isUpsellOfInstallProd - Optionnal. If item is upsell of install product (additionnal fee for installation)
276
- */
277
- export declare const shouldHideItemIfRegPriceIs0: (item: IIndexedDeclination | ICartItem, productSlug: string, isUpsellOfInstallProd?: boolean) => boolean;
1
+ import { IFilledDimensionUnits } from '../../../Interfaces/Declination';
2
+ import IIndexedProduct from '../../../Interfaces/Indexed/Product';
3
+ import ITranslation from '../../../Interfaces/Translation';
4
+ import IAttribute, { IAttributeValue } from '../../../Interfaces/Attribute';
5
+ import ICart, { ICartItem, ICartItemWithSubItem, IIndexedDeclination } from '../../../Interfaces/Cart';
6
+ import IAddress from '../../../Interfaces/Address';
7
+ import IStore from '../../../Interfaces/Store';
8
+ import { ICustomPriceItem } from '../../../Interfaces/G2';
9
+ import { IProductRecommendation } from '../../../Interfaces/Product';
10
+ import IInventoryItem from '../../../Interfaces/Product/IInventoryItem';
11
+ import ICustomer from '../../../Interfaces/Customer';
12
+ import IDiscountRule from '../../../Interfaces/Rules/IDiscountRule';
13
+ import ILang from '../../../utils/string';
14
+ import { IConcreteOrder, IGrassProduct, IVracType } from '../interfaces/products';
15
+ import { TExpeditionMethod, TFeesAppliedResponse } from '../interfaces/cart';
16
+ /**
17
+ * @description Returns sell unit label in correct language for a specific product's other_units
18
+ * @param {IFilledDimensionUnits[] | undefined} otherUnits The unit array we have to check to get the sell unit
19
+ * @param {string | undefined} locale The language in which we want to return the label
20
+ * @param {string[]} returnUnitForSlugs An array of the slugs we want to return the unit label for
21
+ * @param {boolean} options.returnPlural If plural version should be returned
22
+ * @param {boolean} options.returnShortByDefault If short version should be prioritized
23
+ */
24
+ export declare const getProductSellUnitLabel: (otherUnits: IFilledDimensionUnits[] | undefined, locale?: string | undefined, returnUnitForSlugs?: string[], options?: {
25
+ returnPlural?: boolean;
26
+ returnShortByDefault?: boolean;
27
+ }) => string;
28
+ /**
29
+ * @description Returns unit label in correct language for a specific product's other_units
30
+ * @param {IFilledDimensionUnits[] | undefined} otherUnits The unit array we have to check to get the sell unit
31
+ * @param {string} type The unit type to check
32
+ * @param {string | undefined} locale The language in which we want to return the label
33
+ * @param {string[]} returnUnitForSlugs An array of the slugs we want to return the unit label for
34
+ * @param {boolean} options.returnPlural If plural version should be returned
35
+ * @param {boolean} options.returnShortByDefault If short version should be prioritized
36
+ */
37
+ export declare const getProductUnitLabel: (otherUnits: IFilledDimensionUnits[] | undefined, type: 'sale_unit' | 'inventory_unit', locale?: string | undefined, returnUnitForSlugs?: string[], options?: {
38
+ returnPlural?: boolean;
39
+ returnShortByDefault?: boolean;
40
+ }) => string;
41
+ /**
42
+ * Returns the unit label for a specific slug
43
+ * @param {string} unitSlug The slug of the unit for which we want to get the label
44
+ * @param {string | undefined} locale The language in which we want to get the label
45
+ * @param {boolean} getPluralVersion Optionnal - If the plural version should be returned instead.
46
+ * @param {string[]} returnUnitForSlugs The slugs for which we want to return a default value, in this case the unit slug for unit
47
+ * @param {boolean} returnShortByDefault Optionnal - If the short version should be prioritized
48
+ */
49
+ export declare const getUnitLabelWithSlug: (unitSlug: string, locale?: string | undefined, getPluralVersion?: boolean, returnUnitForSlugs?: string[], returnShortByDefault?: boolean) => string;
50
+ /**
51
+ * Returns the plural unit label for a specific slug
52
+ * @deprecated Should use getUnitLabelWithSlug instead (with props getPluralVersion=true)
53
+ * @param {string} unitSlug The slug of the unit for which we want to get the label
54
+ * @param {string | undefined} locale The language in which we want to get the label
55
+ * @param {string[]} returnUnitForSlugs The slugs for which we want to return a default value, in this case the unit slug for unit
56
+ */
57
+ export declare const getPluralUnitLabelWithSlug: (unitSlug: string, locale?: string | undefined, returnUnitForSlugs?: string[], useShortIfDifferent?: boolean) => string;
58
+ export declare const getCorrectPluralSellUnit: (sellUnit: {
59
+ unit?: ILang;
60
+ value: number;
61
+ }, locale?: string) => string;
62
+ export declare const productUnitSupportsDecimals: (unitSlug: string, isService?: boolean) => boolean;
63
+ export declare const getProductAttributes: (product: IIndexedProduct) => {
64
+ colors: string[];
65
+ dimensions: string[];
66
+ formats: string[];
67
+ };
68
+ export declare const getDescriptionLength: (description: ITranslation[], locale?: string) => number;
69
+ export declare const getDescriptionString: (showFullDesc: boolean, maxLength: number, description: ITranslation[], locale?: string) => string;
70
+ /**
71
+ * Returns rounded product sell_unit quantities depending on current value, value of secondary input if existant and sale unit per command step ratio found in product.
72
+ * @param value {number} - Current quantity as entered by user in first input
73
+ * @param otherUnits {IFilledDimensionUnits[] | undefined} - FilledDimensionUnits found in product (possibly undefined)
74
+ * @param value2 {number | undefined} - Current quantity as entered by user in second input (possibly undefined)
75
+ * @param targetIsSecondaryInput {boolean} - If action was triggered from secondary input (defaults to false)
76
+ */
77
+ export declare const getRoundedSellUnitProductQuantities: (value: number, otherUnits: IFilledDimensionUnits[] | undefined, value2: number | undefined, targetIsSecondaryInput?: boolean) => {
78
+ qte1: number;
79
+ qte2?: number | undefined;
80
+ };
81
+ /**
82
+ * Returns rounded product quantities depending on current value per command step ratio found in product.
83
+ * @param value {number} - Current quantity as entered by user in first input
84
+ * @param otherUnits {IFilledDimensionUnits[] | undefined} - FilledDimensionUnits found in product (possibly undefined)
85
+ * @param type {'sale_unit' | 'inventory_unit'} - Quantity type for computing
86
+ */
87
+ export declare const getRoundedUnitProductQuantities: (value: number, otherUnits: IFilledDimensionUnits[] | undefined, type: 'sale_unit' | 'inventory_unit') => number;
88
+ /**
89
+ *
90
+ * @param {string} stringToSplit
91
+ * @param {string} dummyStringToReplace.currentValue, optionnal, default : '%%-%%'. Used to provide general replace values for a specific string. Is applied to both sections of the splitted string.
92
+ * @param {string} dummyStringToReplace.newValue, optionnal, default : ' - '. Used to provide general replace values for a specific string. Is applied to both sections of the splitted string.
93
+ * @returns {string[]}
94
+ */
95
+ export declare const splitOnDashes: (stringToSplit: string, dummyStringToReplace?: {
96
+ currentValue: string;
97
+ newValue: string;
98
+ }) => string[];
99
+ /**
100
+ * Get product name as array. Array created mostly by splitting name on dash symbol (and variations).
101
+ * @param {IIndexedVariationAlgolia | IIndexedProduct} product
102
+ * @param {string | undefined} locale
103
+ * @returns {string[]} - Position 0 is the "commum section" of the name, and position 1 should contain all specifics (ex. color, size, etc...)
104
+ */
105
+ export declare const getProdName: (product: any, locale: string | undefined, platform?: 'web' | 'pos', attributes?: IAttribute[]) => string[];
106
+ /**
107
+ * Function getParentProductCategoryGroup
108
+ * @param prod - Product to check
109
+ */
110
+ export declare const getParentProductCategoryGroup: (prod: IIndexedProduct) => 'gazon' | 'beton' | 'vrac' | 'other';
111
+ /**
112
+ * Function getProductFormOptions - Returns all AttributeValues for product to construct options in add to cart form
113
+ * @param product - Product to check
114
+ * @param attributes - Array of IAttributes to fetch info from
115
+ */
116
+ export declare const getProductFormOptions: (product: IIndexedProduct, attributes: IAttribute[]) => {
117
+ allColors: IAttributeValue[];
118
+ allDimensions: IAttributeValue[];
119
+ allFormats: IAttributeValue[];
120
+ };
121
+ /**
122
+ * @description Checks if product is of type by checking TYPE attribute value. Works with indexed product or cart item.
123
+ * @param product
124
+ * @param type
125
+ * @param excludeUndefined If excludeUndefined is true, products without the "type" attribute will return true
126
+ * @returns boolean
127
+ */
128
+ export declare const checkIfProductIsOfType: (product: Partial<IIndexedProduct | ICartItem>, type: string, excludeUndefined?: boolean) => boolean;
129
+ /**
130
+ * Check if provided sku/slug corresponds to a non-speciality grass item
131
+ * @param sku Grass item's sku
132
+ * @param slug Grass item's parent product slug
133
+ * @param onlyBaseGrass Optionnal. If provided data should only be compared to base grass (aka Kentucky)
134
+ */
135
+ export declare const checkIfIsNonSpecialityGrass: (sku: string, slug: string, onlyBaseGrass?: boolean) => boolean;
136
+ export declare const checkIfProductIsInstallation: (item: IIndexedDeclination) => boolean;
137
+ /**
138
+ * Returns array of installation items found in provided array
139
+ * @param items - Array of cart items or IIndexedDeclinations to check
140
+ */
141
+ export declare const getAllInstallFromItems: (items: (ICartItem | IIndexedDeclination)[]) => (ICartItem | IIndexedDeclination)[];
142
+ /**
143
+ * Function fuseGrassProducts
144
+ * @description - Returns items with only one apparent grass product (used for detail customers).
145
+ * ** FOR DISPLAY PURPOSES ONLY - Always save grass products separatly in ICart **
146
+ * @param recursiveItems - ICartItems with subitems (object created for display purposes)
147
+ */
148
+ export declare const fuseGrassProducts: (recursiveItems: ICartItemWithSubItem[], isPro?: boolean) => ICartItemWithSubItem[];
149
+ export declare const isMinQtyFee: (slug: string) => boolean;
150
+ export declare const getAllMinGrassQuantities: (grassProduct: IGrassProduct, isPro: boolean) => {
151
+ pickup: number;
152
+ shipping: number;
153
+ install: number;
154
+ };
155
+ export declare const getMinQtyFeeText: (parent_slug: string | undefined, grassProduct: IGrassProduct, isPro: boolean, locale?: string, expeditionMethod?: string, shortVersion?: boolean) => string;
156
+ export declare const getMinQtyFeeAmountText: (parent_slug: string | undefined, locale: string | undefined, servicesFees: ICartItem[], showMinFeeAmount?: boolean) => string;
157
+ export declare const getGrassQteText: (chosenDeclination: IIndexedDeclination | undefined, locale?: string) => string;
158
+ export declare const getGrassServicesFees: (grassProduct: IGrassProduct, isPro: boolean, useFees: boolean, expeditionMethod: TExpeditionMethod, fetchProduct: (slug: string, locale: string | undefined, useFeeArray?: boolean, noDrafts?: boolean) => Promise<IIndexedProduct | undefined>, getIfAddressIsInsideZones: (address: IAddress | string) => Promise<string[]>, getDistanceFromAddress: (start: IAddress | string, finish: IAddress | string) => Promise<number>, locale: string, allStores: IStore[], chosenGrass: ICartItem, baseGrass?: ICartItem, customPriceList?: ICustomPriceItem[]) => Promise<ICartItem[]>;
159
+ export declare const getGrassSubQuestionsByType: (type: 'install' | 'pro') => import("../interfaces/products").IGrassSubQuestion[];
160
+ /**
161
+ * @description For grass products. Over 1480pi2, if installation, quantities are rounded to rolls (10pi2) if pickup, and to half pal. if shipping
162
+ * @param grassProduct
163
+ * @param cartData
164
+ * @returns quantity rounded to rolls with items to change or undefined
165
+ */
166
+ export declare const handleGrassProductQtyRoundForShipping: (cartData: ICart, grassProduct: IGrassProduct | undefined) => {
167
+ rounded: number;
168
+ itemsToChange: {
169
+ sku: string;
170
+ qte: number;
171
+ }[];
172
+ } | undefined;
173
+ /**
174
+ * Function roundGrassQte
175
+ * @description Returns rounded grass quantity depending on current qty, if customer selected installation and pallet unit (if defined)
176
+ * @param currentQte {number} - Current quantity as entered by user in input
177
+ * @param isShipping {boolean} - Whether customer has selected installation option
178
+ * @param palUnit {IFilledDimensionUnits | undefined} - Pallet FilledDimensionUnit (possibly undefined)
179
+ */
180
+ export declare const roundGrassQte: (currentQte: number, isShipping: boolean, palUnit: IFilledDimensionUnits | undefined) => number;
181
+ /**
182
+ * Detects if customer has "Installation tout inclus".
183
+ * @param customPriceList - Customer custom price list
184
+ * @return All inclusive installation if exists, undefined otherwise
185
+ */
186
+ export declare const getInstallationAllInclusiveFromPriceList: (customPriceList: ICustomPriceItem[] | undefined) => ICustomPriceItem | undefined;
187
+ /**
188
+ * Checks if all-inclusive installation is active.
189
+ * @param hasInstallation - Whether the cart/form contains an installation
190
+ * @param isPro - Whether the customer is a pro
191
+ * @param customPriceList - Customer custom price list
192
+ * @returns true if all-inclusive installation is active
193
+ */
194
+ export declare const isInstallAllInclusiveActive: (hasInstallation: boolean, isPro: boolean, customPriceList: ICustomPriceItem[] | undefined) => boolean;
195
+ /**
196
+ * Force )$ to kentucky base grass and sod delivery fee if install all-inclusive.
197
+ * @param item - The cart item to potentially override
198
+ * @returns The item with zeroed price if applicable, or the original item
199
+ */
200
+ export declare const applyAllInclusiveOverrides: (item: ICartItem) => ICartItem;
201
+ export declare const shouldHideItemInCheckout: (item: ICartItem, allItems: ICartItem[]) => boolean;
202
+ export declare const matchesFuelSurchargeParent: (surchargeSku: string, item: ICartItem) => boolean;
203
+ export declare const getInstallationArray: (qte: number, baseGrassUpsells: IProductRecommendation[] | undefined, fetchProduct: (slug: string, locale: string | undefined, useFeeArray?: boolean, noDrafts?: boolean) => Promise<IIndexedProduct | undefined>, locale: string | undefined, isPro: boolean, chosenSku: string, customPriceList?: ICustomPriceItem[], returnOtherFees?: {
204
+ engrais?: boolean;
205
+ roulage?: boolean;
206
+ }) => Promise<ICartItem[]>;
207
+ export declare const getInstallItemPrice: (parentSlug: string, servicesFees: ICartItem[]) => number | undefined;
208
+ export declare const getConcreteQteText: (declination: IIndexedDeclination, locale?: string) => string;
209
+ /**
210
+ * @description returns all items in cart where attribute AVAILABILITY contains wanted type.
211
+ * @param cartData
212
+ * @param availabilityType
213
+ */
214
+ export declare const getConcreteItemsByAvailability: (cartData: ICart, availabilityType: 'en-stock' | 'epuisement-stocks' | 'delais-a-prevoir' | 'aucune-production-prevue', returnTrueIfUndefined?: boolean) => ICartItem[];
215
+ /**
216
+ * Function getVracType - constructs vrac helper object is cart contains vrac or vrac associated items.
217
+ * @param stores
218
+ * @param cartData
219
+ * @param getInventoryItemCallback
220
+ * @param inventoryItemArray
221
+ * @returns IVracType object containing vrac_type enum value and vrac_store_ids where vrac items are available
222
+ */
223
+ export declare const getVracType: (stores: IStore[], cartData: ICart, getInventoryItemCallback: (sku: string) => Promise<IInventoryItem | undefined>, inventoyItemArray?: IInventoryItem[]) => Promise<IVracType | undefined>;
224
+ /**
225
+ * Get all possible fees for a cart with basic info, to show approx. fee total before all data is saved in cart
226
+ *
227
+ * @param useFees If local fee array should be used, to save database calls
228
+ * @param newCart Current cart data
229
+ * @param deliveryType If fees should be checked for a pick-up or shipping order
230
+ * @param fetchProduct Callback function for product fetch
231
+ * @param getIfAddressIsInsideZones Callback function for zone check
232
+ * @param getDistanceFromAddress Callback function to check distance with provided address
233
+ * @param locale User's locale (fr or en)
234
+ * @param allStores Full store array for space
235
+ * @param isPro If customer associated with cart is a pro customer
236
+ * @param grassProduct Constructed grass product from cart (with extra data for checks)
237
+ * @param concreteOrder Constructed concrete products from cart (with extra data for checks)
238
+ * @param settings.addOnePalletToPickup Optionnal - If additionnal pal. should be added for order
239
+ * @param settings.saveToShippingPayload Optional - If data collected should be saved to cart's shipping_payload
240
+ * @param settings.useStoreAddress Optionnal - Provided store ID for which the address should be used for check
241
+ * @param settings.useDeliveryAddress Optionnal - If current carts shipping address should be used for check
242
+ * @param settings.useAvailableVracStores Optionnal - Provided array of store IDs available for vrac order
243
+ * @param customPriceList Optionnal - If pro customer with G2 custom price list and custom prices should be checked
244
+ */
245
+ export declare const fetchFeesBeforeCart: (useFees: boolean, newCart: ICart, deliveryType: TExpeditionMethod, fetchProduct: (slug: string, locale: string | undefined, useFeeArray?: boolean, noDrafts?: boolean) => Promise<IIndexedProduct | undefined>, getIfAddressIsInsideZones: (address: IAddress | string) => Promise<string[]>, getDistanceFromAddress: (start: IAddress | string, finish: IAddress | string) => Promise<number>, locale: string | undefined, allStores: IStore[], isPro: boolean, grassProduct?: IGrassProduct, concreteOrder?: IConcreteOrder, settings?: {
246
+ addOnePalletToPickup?: boolean;
247
+ saveToShippingPayload?: boolean;
248
+ useStoreAddress?: string;
249
+ useDeliveryAddress?: boolean;
250
+ useAvailableVracStores?: string[];
251
+ }, customPriceList?: ICustomPriceItem[]) => Promise<TFeesAppliedResponse>;
252
+ /**
253
+ * Check if pro custom promo info should be shown for customer for a specific product.
254
+ * @param userData
255
+ * @param isPro
256
+ * @param product
257
+ * @param customMinPrice
258
+ */
259
+ export declare const shouldShowProCustomPromo: (userData: ICustomer | null, isPro: boolean, product: any, customMinPrice?: ICustomPriceItem) => boolean;
260
+ export declare const applyProCustomPromo: (decli: IIndexedDeclination, userData: ICustomer) => {
261
+ discount_rules?: undefined;
262
+ promo_price?: undefined;
263
+ } | {
264
+ discount_rules: IDiscountRule[];
265
+ promo_price: {
266
+ currency: string;
267
+ amount: number;
268
+ };
269
+ };
270
+ export declare const getFormattedProdGR: (decli: IIndexedDeclination, productSlug: string, isPro?: boolean) => IIndexedDeclination;
271
+ /**
272
+ * Checks if a 0.00$ reg_price item should be considered "hidden" or not.
273
+ * @param item - The indexedDecli or cartItem to check
274
+ * @param productSlug - The parent product's slug (in case it is not found in item)
275
+ * @param isUpsellOfInstallProd - Optionnal. If item is upsell of install product (additionnal fee for installation)
276
+ */
277
+ export declare const shouldHideItemIfRegPriceIs0: (item: IIndexedDeclination | ICartItem, productSlug: string, isUpsellOfInstallProd?: boolean) => boolean;