addio-admin-sdk 1.7.171 → 1.7.173

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 (580) hide show
  1. package/.babelrc +17 -17
  2. package/.env +15 -0
  3. package/.env.dev +14 -14
  4. package/.github/workflows/run_unit_test.yaml +48 -48
  5. package/addio-sdk-doc.md +1473 -1473
  6. package/changelog.md +573 -573
  7. package/dist/Interfaces/Address/index.d.ts +21 -21
  8. package/dist/Interfaces/Address/index.js +16 -16
  9. package/dist/Interfaces/Algolia/index.d.ts +182 -182
  10. package/dist/Interfaces/Algolia/index.js +2 -2
  11. package/dist/Interfaces/Attachement/index.d.ts +5 -5
  12. package/dist/Interfaces/Attachement/index.js +2 -2
  13. package/dist/Interfaces/Attribute/index.d.ts +53 -53
  14. package/dist/Interfaces/Attribute/index.js +10 -10
  15. package/dist/Interfaces/BGJob/index.d.ts +56 -56
  16. package/dist/Interfaces/BGJob/index.js +25 -25
  17. package/dist/Interfaces/BaseClass/index.d.ts +8 -8
  18. package/dist/Interfaces/BaseClass/index.js +2 -2
  19. package/dist/Interfaces/Blog/IBlogArticle.d.ts +18 -18
  20. package/dist/Interfaces/Blog/IBlogArticle.js +2 -2
  21. package/dist/Interfaces/Blog/IBlogAuthor.d.ts +7 -7
  22. package/dist/Interfaces/Blog/IBlogAuthor.js +2 -2
  23. package/dist/Interfaces/Blog/IBlogCategory.d.ts +9 -9
  24. package/dist/Interfaces/Blog/IBlogCategory.js +2 -2
  25. package/dist/Interfaces/Blog/IBlogComment.d.ts +13 -13
  26. package/dist/Interfaces/Blog/IBlogComment.js +2 -2
  27. package/dist/Interfaces/Blog/IBlogKeywords.d.ts +9 -9
  28. package/dist/Interfaces/Blog/IBlogKeywords.js +2 -2
  29. package/dist/Interfaces/Booking/index.d.ts +74 -74
  30. package/dist/Interfaces/Booking/index.js +17 -17
  31. package/dist/Interfaces/Brand/index.d.ts +15 -15
  32. package/dist/Interfaces/Brand/index.js +2 -2
  33. package/dist/Interfaces/Buylist/index.d.ts +17 -17
  34. package/dist/Interfaces/Buylist/index.js +2 -2
  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 +200 -194
  244. package/dist/Interfaces/TCG/index.js +59 -60
  245. package/dist/Interfaces/TCG/index.js.map +1 -1
  246. package/dist/Interfaces/Tag/index.d.ts +18 -18
  247. package/dist/Interfaces/Tag/index.js +2 -2
  248. package/dist/Interfaces/Tax/index.d.ts +13 -13
  249. package/dist/Interfaces/Tax/index.js +2 -2
  250. package/dist/Interfaces/TransferRequest/index.d.ts +103 -103
  251. package/dist/Interfaces/TransferRequest/index.js +46 -46
  252. package/dist/Interfaces/Translation/index.d.ts +8 -8
  253. package/dist/Interfaces/Translation/index.js +5 -5
  254. package/dist/Interfaces/Update/index.d.ts +10 -10
  255. package/dist/Interfaces/Update/index.js +2 -2
  256. package/dist/Interfaces/User/IUser.d.ts +65 -65
  257. package/dist/Interfaces/User/IUser.js +8 -8
  258. package/dist/Interfaces/Version/index.d.ts +11 -11
  259. package/dist/Interfaces/Version/index.js +2 -2
  260. package/dist/Interfaces/Wishlist/index.d.ts +7 -7
  261. package/dist/Interfaces/Wishlist/index.js +2 -2
  262. package/dist/constants/Interfaces/IBaseApi.d.ts +15 -15
  263. package/dist/constants/Interfaces/IBaseApi.js +2 -2
  264. package/dist/constants/Interfaces/IEndpointResult.d.ts +9 -9
  265. package/dist/constants/Interfaces/IEndpointResult.js +2 -2
  266. package/dist/constants/enums.d.ts +6 -6
  267. package/dist/constants/enums.js +10 -10
  268. package/dist/constants/services.d.ts +2 -2
  269. package/dist/constants/services.js +122 -122
  270. package/dist/constants/version.d.ts +2 -2
  271. package/dist/constants/version.js +5 -5
  272. package/dist/index.d.ts +50 -50
  273. package/dist/index.js +266 -266
  274. package/dist/lib/Attribute/index.d.ts +14 -14
  275. package/dist/lib/Attribute/index.js +186 -186
  276. package/dist/lib/BGJob/index.d.ts +9 -9
  277. package/dist/lib/BGJob/index.js +216 -216
  278. package/dist/lib/BackgroundWorker/index.d.ts +34 -34
  279. package/dist/lib/BackgroundWorker/index.js +59 -59
  280. package/dist/lib/Blog/BlogArticle.d.ts +5 -5
  281. package/dist/lib/Blog/BlogArticle.js +10 -10
  282. package/dist/lib/Blog/BlogAuthor.d.ts +5 -5
  283. package/dist/lib/Blog/BlogAuthor.js +10 -10
  284. package/dist/lib/Blog/BlogCategory.d.ts +5 -5
  285. package/dist/lib/Blog/BlogCategory.js +10 -10
  286. package/dist/lib/Blog/BlogKeyword.d.ts +5 -5
  287. package/dist/lib/Blog/BlogKeyword.js +10 -10
  288. package/dist/lib/Booking/index.d.ts +85 -85
  289. package/dist/lib/Booking/index.js +596 -596
  290. package/dist/lib/Brand/index.d.ts +26 -26
  291. package/dist/lib/Brand/index.js +131 -131
  292. package/dist/lib/Cart/index.d.ts +354 -354
  293. package/dist/lib/Cart/index.js +4055 -4055
  294. package/dist/lib/CartReservedQuantities/index.d.ts +49 -49
  295. package/dist/lib/CartReservedQuantities/index.js +159 -159
  296. package/dist/lib/CashDrawerShift/index.d.ts +84 -84
  297. package/dist/lib/CashDrawerShift/index.js +206 -206
  298. package/dist/lib/Catalogue/index.d.ts +15 -15
  299. package/dist/lib/Catalogue/index.js +78 -78
  300. package/dist/lib/Category/index.d.ts +34 -34
  301. package/dist/lib/Category/index.js +230 -230
  302. package/dist/lib/Class/index.d.ts +16 -16
  303. package/dist/lib/Class/index.js +66 -66
  304. package/dist/lib/Consent/index.d.ts +4 -4
  305. package/dist/lib/Consent/index.js +29 -29
  306. package/dist/lib/Customer/index.d.ts +30 -30
  307. package/dist/lib/Customer/index.js +92 -92
  308. package/dist/lib/Declination/index.d.ts +9 -9
  309. package/dist/lib/Declination/index.js +26 -26
  310. package/dist/lib/Discount/index.d.ts +27 -27
  311. package/dist/lib/Discount/index.js +493 -493
  312. package/dist/lib/ElasticSearch/index.d.ts +13 -13
  313. package/dist/lib/ElasticSearch/index.js +50 -50
  314. package/dist/lib/Elavon/index.d.ts +18 -18
  315. package/dist/lib/Elavon/index.js +135 -135
  316. package/dist/lib/Email/AbandonedCartEmail.d.ts +16 -16
  317. package/dist/lib/Email/AbandonedCartEmail.js +24 -24
  318. package/dist/lib/Email/AccountConfirmationEmail.d.ts +19 -19
  319. package/dist/lib/Email/AccountConfirmationEmail.js +30 -30
  320. package/dist/lib/Email/AdminOrderConfirmationEmail.d.ts +16 -16
  321. package/dist/lib/Email/AdminOrderConfirmationEmail.js +24 -24
  322. package/dist/lib/Email/ApplicationEmail.d.ts +16 -16
  323. package/dist/lib/Email/ApplicationEmail.js +24 -24
  324. package/dist/lib/Email/BackInStockEmail.d.ts +16 -16
  325. package/dist/lib/Email/BackInStockEmail.js +24 -24
  326. package/dist/lib/Email/ContactEmail.d.ts +16 -16
  327. package/dist/lib/Email/ContactEmail.js +24 -24
  328. package/dist/lib/Email/CustomerBookingAdminEmail.d.ts +16 -16
  329. package/dist/lib/Email/CustomerBookingAdminEmail.js +24 -24
  330. package/dist/lib/Email/CustomerBookingEmail.d.ts +16 -16
  331. package/dist/lib/Email/CustomerBookingEmail.js +24 -24
  332. package/dist/lib/Email/OrderConfirmationEmail.d.ts +16 -16
  333. package/dist/lib/Email/OrderConfirmationEmail.js +24 -24
  334. package/dist/lib/Email/OrderDenounciationEmail.d.ts +16 -16
  335. package/dist/lib/Email/OrderDenounciationEmail.js +24 -24
  336. package/dist/lib/Email/OrderSampleEmail.d.ts +16 -16
  337. package/dist/lib/Email/OrderSampleEmail.js +24 -24
  338. package/dist/lib/Email/OtherTypeEmails.d.ts +16 -16
  339. package/dist/lib/Email/OtherTypeEmails.js +27 -27
  340. package/dist/lib/Email/PasswordResetEmail.d.ts +16 -16
  341. package/dist/lib/Email/PasswordResetEmail.js +24 -24
  342. package/dist/lib/Email/PhotoShootEmail.d.ts +16 -16
  343. package/dist/lib/Email/PhotoShootEmail.js +24 -24
  344. package/dist/lib/Email/PickUpConfirmation.d.ts +16 -16
  345. package/dist/lib/Email/PickUpConfirmation.js +24 -24
  346. package/dist/lib/Email/ShippingConfirmation.d.ts +16 -16
  347. package/dist/lib/Email/ShippingConfirmation.js +24 -24
  348. package/dist/lib/Email/WelcomeEmail.d.ts +16 -16
  349. package/dist/lib/Email/WelcomeEmail.js +24 -24
  350. package/dist/lib/Email/index.d.ts +16 -16
  351. package/dist/lib/Email/index.js +31 -31
  352. package/dist/lib/ExternalService/Ebay.d.ts +74 -74
  353. package/dist/lib/ExternalService/Ebay.js +124 -124
  354. package/dist/lib/ExternalService/index.d.ts +5 -5
  355. package/dist/lib/ExternalService/index.js +10 -10
  356. package/dist/lib/FirstOrderTracking/index.d.ts +5 -5
  357. package/dist/lib/FirstOrderTracking/index.js +10 -10
  358. package/dist/lib/Indexed/IndexedCart.d.ts +13 -13
  359. package/dist/lib/Indexed/IndexedCart.js +91 -91
  360. package/dist/lib/Indexed/Product.d.ts +17 -17
  361. package/dist/lib/Indexed/Product.js +98 -98
  362. package/dist/lib/Inventory/index.d.ts +112 -112
  363. package/dist/lib/Inventory/index.js +492 -492
  364. package/dist/lib/Invoice/index.d.ts +16 -16
  365. package/dist/lib/Invoice/index.js +21 -21
  366. package/dist/lib/MarketplacePublication/index.d.ts +9 -9
  367. package/dist/lib/MarketplacePublication/index.js +426 -426
  368. package/dist/lib/Menu/index.d.ts +11 -11
  369. package/dist/lib/Menu/index.js +107 -107
  370. package/dist/lib/MongoDB/BaseAPI.d.ts +18 -18
  371. package/dist/lib/MongoDB/BaseAPI.js +200 -200
  372. package/dist/lib/Note/index.d.ts +4 -4
  373. package/dist/lib/Note/index.js +6 -6
  374. package/dist/lib/Order/index.d.ts +27 -27
  375. package/dist/lib/Order/index.js +56 -56
  376. package/dist/lib/Org/index.d.ts +68 -68
  377. package/dist/lib/Org/index.js +216 -216
  378. package/dist/lib/PandaPay/index.d.ts +16 -16
  379. package/dist/lib/PandaPay/index.js +176 -176
  380. package/dist/lib/Paysafe/index.d.ts +11 -11
  381. package/dist/lib/Paysafe/index.js +41 -41
  382. package/dist/lib/Product/index.d.ts +182 -182
  383. package/dist/lib/Product/index.js +847 -847
  384. package/dist/lib/ProductAttribute/index.d.ts +15 -15
  385. package/dist/lib/ProductAttribute/index.js +45 -45
  386. package/dist/lib/PromiseToPurchase/index.d.ts +109 -109
  387. package/dist/lib/PromiseToPurchase/index.js +343 -343
  388. package/dist/lib/PurchaseOrder/index.d.ts +20 -20
  389. package/dist/lib/PurchaseOrder/index.js +28 -28
  390. package/dist/lib/Queue/index.d.ts +40 -40
  391. package/dist/lib/Queue/index.js +254 -254
  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 +78 -74
  475. package/dist/services/marketplace/BaseMarketServiceClass.js +141 -140
  476. package/dist/services/marketplace/BaseMarketServiceClass.js.map +1 -1
  477. package/dist/services/marketplace/CardtraderServiceClass.d.ts +38 -38
  478. package/dist/services/marketplace/CardtraderServiceClass.js +226 -223
  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 -79
  483. package/dist/services/products/BaseClass.js +144 -144
  484. package/dist/services/products/TCGService.d.ts +29 -29
  485. package/dist/services/products/TCGService.js +503 -503
  486. package/dist/services/products/utils.d.ts +31 -31
  487. package/dist/services/products/utils.js +144 -144
  488. package/dist/utils/algolia.d.ts +46 -46
  489. package/dist/utils/algolia.js +21 -21
  490. package/dist/utils/anonymisation.d.ts +54 -54
  491. package/dist/utils/anonymisation.js +280 -280
  492. package/dist/utils/array.d.ts +5 -5
  493. package/dist/utils/array.js +14 -14
  494. package/dist/utils/aws.d.ts +36 -36
  495. package/dist/utils/aws.js +154 -154
  496. package/dist/utils/booking.d.ts +30 -30
  497. package/dist/utils/booking.js +127 -127
  498. package/dist/utils/cart.d.ts +272 -272
  499. package/dist/utils/cart.js +1169 -1169
  500. package/dist/utils/categories.d.ts +2 -2
  501. package/dist/utils/categories.js +54 -54
  502. package/dist/utils/cmv.d.ts +10 -10
  503. package/dist/utils/cmv.js +107 -107
  504. package/dist/utils/console.d.ts +6 -6
  505. package/dist/utils/console.js +59 -59
  506. package/dist/utils/context.d.ts +20 -20
  507. package/dist/utils/context.js +61 -61
  508. package/dist/utils/currency.d.ts +6 -6
  509. package/dist/utils/currency.js +91 -91
  510. package/dist/utils/data.d.ts +31 -31
  511. package/dist/utils/data.js +296 -296
  512. package/dist/utils/date.d.ts +1 -1
  513. package/dist/utils/date.js +16 -16
  514. package/dist/utils/dimensions.d.ts +3 -3
  515. package/dist/utils/dimensions.js +16 -16
  516. package/dist/utils/discount.d.ts +174 -174
  517. package/dist/utils/discount.js +1118 -1118
  518. package/dist/utils/errors.d.ts +118 -118
  519. package/dist/utils/errors.js +123 -123
  520. package/dist/utils/file-admin.d.ts +8 -8
  521. package/dist/utils/file-admin.js +39 -39
  522. package/dist/utils/file.d.ts +39 -39
  523. package/dist/utils/file.js +208 -208
  524. package/dist/utils/firebase-admin.d.ts +11 -11
  525. package/dist/utils/firebase-admin.js +73 -73
  526. package/dist/utils/firebase.d.ts +58 -58
  527. package/dist/utils/firebase.js +148 -148
  528. package/dist/utils/import.d.ts +1 -1
  529. package/dist/utils/import.js +21 -21
  530. package/dist/utils/inventories.d.ts +101 -101
  531. package/dist/utils/inventories.js +467 -467
  532. package/dist/utils/locale.d.ts +24 -24
  533. package/dist/utils/locale.js +91 -91
  534. package/dist/utils/mailchimp.d.ts +58 -58
  535. package/dist/utils/mailchimp.js +531 -531
  536. package/dist/utils/mathUtils.d.ts +17 -17
  537. package/dist/utils/mathUtils.js +324 -324
  538. package/dist/utils/mongodb.d.ts +1 -1
  539. package/dist/utils/mongodb.js +22 -22
  540. package/dist/utils/object.d.ts +32 -32
  541. package/dist/utils/object.js +133 -133
  542. package/dist/utils/payment.d.ts +10 -10
  543. package/dist/utils/payment.js +23 -23
  544. package/dist/utils/products.d.ts +39 -39
  545. package/dist/utils/products.js +195 -195
  546. package/dist/utils/promiseToPurchase.d.ts +88 -88
  547. package/dist/utils/promiseToPurchase.js +229 -229
  548. package/dist/utils/prosprsearch.d.ts +42 -42
  549. package/dist/utils/prosprsearch.js +216 -216
  550. package/dist/utils/refunds.d.ts +2 -2
  551. package/dist/utils/refunds.js +21 -21
  552. package/dist/utils/sdc.d.ts +10 -10
  553. package/dist/utils/sdc.js +1309 -1309
  554. package/dist/utils/searchIndexes.d.ts +58 -58
  555. package/dist/utils/searchIndexes.js +247 -247
  556. package/dist/utils/services.d.ts +42 -42
  557. package/dist/utils/services.js +409 -409
  558. package/dist/utils/shipment.d.ts +110 -110
  559. package/dist/utils/shipment.js +345 -345
  560. package/dist/utils/simpletexting.d.ts +2 -2
  561. package/dist/utils/simpletexting.js +45 -45
  562. package/dist/utils/sliders.d.ts +4 -4
  563. package/dist/utils/sliders.js +24 -24
  564. package/dist/utils/string.d.ts +16 -16
  565. package/dist/utils/string.js +192 -192
  566. package/dist/utils/tcgService.d.ts +88 -88
  567. package/dist/utils/tcgService.js +408 -408
  568. package/dist/utils/tools.d.ts +5 -5
  569. package/dist/utils/tools.js +13 -13
  570. package/dist/utils/transferRequests.d.ts +43 -43
  571. package/dist/utils/transferRequests.js +67 -67
  572. package/dist/utils/update.d.ts +7 -7
  573. package/dist/utils/update.js +137 -137
  574. package/dist/utils/weight.d.ts +3 -3
  575. package/dist/utils/weight.js +16 -16
  576. package/dist/utils/zones.d.ts +11 -11
  577. package/dist/utils/zones.js +218 -218
  578. package/package.json +107 -107
  579. package/publish.sh +143 -143
  580. package/readme.md +182 -182
@@ -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;