addio-admin-sdk 1.7.196 → 1.7.198

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 (590) hide show
  1. package/.babelrc +17 -17
  2. package/.env +14 -0
  3. package/.env.dev +14 -14
  4. package/.github/workflows/run_unit_test.yaml +48 -48
  5. package/.github/workflows/update_docs.yaml +32 -32
  6. package/addio-sdk-doc.md +1473 -1473
  7. package/changelog.md +582 -582
  8. package/dist/Interfaces/Address/index.d.ts +21 -21
  9. package/dist/Interfaces/Address/index.js +16 -16
  10. package/dist/Interfaces/Algolia/index.d.ts +183 -182
  11. package/dist/Interfaces/Algolia/index.js +2 -2
  12. package/dist/Interfaces/Attachement/index.d.ts +5 -5
  13. package/dist/Interfaces/Attachement/index.js +2 -2
  14. package/dist/Interfaces/Attribute/index.d.ts +53 -53
  15. package/dist/Interfaces/Attribute/index.js +10 -10
  16. package/dist/Interfaces/BGJob/index.d.ts +56 -56
  17. package/dist/Interfaces/BGJob/index.js +25 -25
  18. package/dist/Interfaces/BaseClass/index.d.ts +8 -8
  19. package/dist/Interfaces/BaseClass/index.js +2 -2
  20. package/dist/Interfaces/Blog/IBlogArticle.d.ts +18 -18
  21. package/dist/Interfaces/Blog/IBlogArticle.js +2 -2
  22. package/dist/Interfaces/Blog/IBlogAuthor.d.ts +7 -7
  23. package/dist/Interfaces/Blog/IBlogAuthor.js +2 -2
  24. package/dist/Interfaces/Blog/IBlogCategory.d.ts +9 -9
  25. package/dist/Interfaces/Blog/IBlogCategory.js +2 -2
  26. package/dist/Interfaces/Blog/IBlogComment.d.ts +13 -13
  27. package/dist/Interfaces/Blog/IBlogComment.js +2 -2
  28. package/dist/Interfaces/Blog/IBlogKeywords.d.ts +9 -9
  29. package/dist/Interfaces/Blog/IBlogKeywords.js +2 -2
  30. package/dist/Interfaces/Booking/index.d.ts +74 -74
  31. package/dist/Interfaces/Booking/index.js +17 -17
  32. package/dist/Interfaces/Brand/index.d.ts +15 -15
  33. package/dist/Interfaces/Brand/index.js +2 -2
  34. package/dist/Interfaces/Buylist/index.d.ts +19 -19
  35. package/dist/Interfaces/Buylist/index.js +2 -2
  36. package/dist/Interfaces/CMS/index.d.ts +28 -28
  37. package/dist/Interfaces/CMS/index.js +5 -5
  38. package/dist/Interfaces/Cart/IElavonPayload.d.ts +93 -93
  39. package/dist/Interfaces/Cart/IElavonPayload.js +17 -17
  40. package/dist/Interfaces/Cart/IMarketPayload.d.ts +12 -12
  41. package/dist/Interfaces/Cart/IMarketPayload.js +2 -2
  42. package/dist/Interfaces/Cart/IPandaPayload.d.ts +64 -64
  43. package/dist/Interfaces/Cart/IPandaPayload.js +18 -18
  44. package/dist/Interfaces/Cart/IPaymentCard.d.ts +22 -22
  45. package/dist/Interfaces/Cart/IPaymentCard.js +44 -44
  46. package/dist/Interfaces/Cart/IPaypalPayload.d.ts +9 -9
  47. package/dist/Interfaces/Cart/IPaypalPayload.js +2 -2
  48. package/dist/Interfaces/Cart/IPaysafePayload.d.ts +72 -72
  49. package/dist/Interfaces/Cart/IPaysafePayload.js +2 -2
  50. package/dist/Interfaces/Cart/IStripePayload.d.ts +66 -66
  51. package/dist/Interfaces/Cart/IStripePayload.js +2 -2
  52. package/dist/Interfaces/Cart/index.d.ts +478 -476
  53. package/dist/Interfaces/Cart/index.js +283 -283
  54. package/dist/Interfaces/Cart/index.js.map +1 -1
  55. package/dist/Interfaces/CartReservedQuantities/index.d.ts +10 -10
  56. package/dist/Interfaces/CartReservedQuantities/index.js +2 -2
  57. package/dist/Interfaces/CashDrawers/index.d.ts +38 -38
  58. package/dist/Interfaces/CashDrawers/index.js +19 -19
  59. package/dist/Interfaces/Catalogue/index.d.ts +68 -68
  60. package/dist/Interfaces/Catalogue/index.js +37 -37
  61. package/dist/Interfaces/Category/index.d.ts +33 -33
  62. package/dist/Interfaces/Category/index.js +2 -2
  63. package/dist/Interfaces/Chart/index.d.ts +11 -11
  64. package/dist/Interfaces/Chart/index.js +2 -2
  65. package/dist/Interfaces/Class/index.d.ts +8 -8
  66. package/dist/Interfaces/Class/index.js +2 -2
  67. package/dist/Interfaces/Consent/index.d.ts +6 -6
  68. package/dist/Interfaces/Consent/index.js +2 -2
  69. package/dist/Interfaces/Context/IContextProps.d.ts +4 -4
  70. package/dist/Interfaces/Context/IContextProps.js +2 -2
  71. package/dist/Interfaces/Context/IContextState.d.ts +15 -15
  72. package/dist/Interfaces/Context/IContextState.js +2 -2
  73. package/dist/Interfaces/Customer/ICustomerBadge.d.ts +2 -2
  74. package/dist/Interfaces/Customer/ICustomerBadge.js +2 -2
  75. package/dist/Interfaces/Customer/ICustomerRating.d.ts +10 -10
  76. package/dist/Interfaces/Customer/ICustomerRating.js +2 -2
  77. package/dist/Interfaces/Customer/IStoreCredit.d.ts +13 -13
  78. package/dist/Interfaces/Customer/IStoreCredit.js +2 -2
  79. package/dist/Interfaces/Customer/index.d.ts +104 -104
  80. package/dist/Interfaces/Customer/index.js +148 -148
  81. package/dist/Interfaces/Declination/index.d.ts +133 -117
  82. package/dist/Interfaces/Declination/index.js +83 -66
  83. package/dist/Interfaces/Declination/index.js.map +1 -1
  84. package/dist/Interfaces/Document/index.d.ts +8 -8
  85. package/dist/Interfaces/Document/index.js +2 -2
  86. package/dist/Interfaces/Elastic/index.d.ts +89 -89
  87. package/dist/Interfaces/Elastic/index.js +2 -2
  88. package/dist/Interfaces/Email/CustomGR/I3DPrintEmail.d.ts +11 -11
  89. package/dist/Interfaces/Email/CustomGR/I3DPrintEmail.js +2 -2
  90. package/dist/Interfaces/Email/CustomGR/IBorrowToolsEmail.d.ts +15 -15
  91. package/dist/Interfaces/Email/CustomGR/IBorrowToolsEmail.js +2 -2
  92. package/dist/Interfaces/Email/CustomGR/IPickupMaterialsEmail.d.ts +12 -12
  93. package/dist/Interfaces/Email/CustomGR/IPickupMaterialsEmail.js +2 -2
  94. package/dist/Interfaces/Email/CustomGR/IPreMeetingFormEmail.d.ts +36 -36
  95. package/dist/Interfaces/Email/CustomGR/IPreMeetingFormEmail.js +2 -2
  96. package/dist/Interfaces/Email/CustomGR/ISponsorRequestEmail.d.ts +12 -12
  97. package/dist/Interfaces/Email/CustomGR/ISponsorRequestEmail.js +2 -2
  98. package/dist/Interfaces/Email/CustomGR/ITransportEmail.d.ts +12 -12
  99. package/dist/Interfaces/Email/CustomGR/ITransportEmail.js +2 -2
  100. package/dist/Interfaces/Email/CustomGR/ITransportQuoteEmail.d.ts +12 -12
  101. package/dist/Interfaces/Email/CustomGR/ITransportQuoteEmail.js +2 -2
  102. package/dist/Interfaces/Email/CustomGR/IVegetalsEmail.d.ts +16 -16
  103. package/dist/Interfaces/Email/CustomGR/IVegetalsEmail.js +2 -2
  104. package/dist/Interfaces/Email/CustomGR/IWishlistEmail.d.ts +15 -15
  105. package/dist/Interfaces/Email/CustomGR/IWishlistEmail.js +2 -2
  106. package/dist/Interfaces/Email/IAbandonnedCartEmail.d.ts +29 -29
  107. package/dist/Interfaces/Email/IAbandonnedCartEmail.js +2 -2
  108. package/dist/Interfaces/Email/IAccountConfirmationEmail.d.ts +22 -22
  109. package/dist/Interfaces/Email/IAccountConfirmationEmail.js +2 -2
  110. package/dist/Interfaces/Email/IApplicationEmail.d.ts +19 -19
  111. package/dist/Interfaces/Email/IApplicationEmail.js +2 -2
  112. package/dist/Interfaces/Email/IBackInStockEmail.d.ts +21 -21
  113. package/dist/Interfaces/Email/IBackInStockEmail.js +2 -2
  114. package/dist/Interfaces/Email/IContactEmail.d.ts +20 -20
  115. package/dist/Interfaces/Email/IContactEmail.js +2 -2
  116. package/dist/Interfaces/Email/ICustomerBookingAdminEmail.d.ts +15 -15
  117. package/dist/Interfaces/Email/ICustomerBookingAdminEmail.js +2 -2
  118. package/dist/Interfaces/Email/ICustomerBookingEmail.d.ts +14 -14
  119. package/dist/Interfaces/Email/ICustomerBookingEmail.js +2 -2
  120. package/dist/Interfaces/Email/IEmail.d.ts +20 -20
  121. package/dist/Interfaces/Email/IEmail.js +46 -46
  122. package/dist/Interfaces/Email/IOrderConfirmationEmail.d.ts +47 -47
  123. package/dist/Interfaces/Email/IOrderConfirmationEmail.js +2 -2
  124. package/dist/Interfaces/Email/IPasswordResetEmail.d.ts +17 -17
  125. package/dist/Interfaces/Email/IPasswordResetEmail.js +2 -2
  126. package/dist/Interfaces/Email/IPhotoShootEmail.d.ts +14 -14
  127. package/dist/Interfaces/Email/IPhotoShootEmail.js +2 -2
  128. package/dist/Interfaces/Email/IPickupConfirmation.d.ts +23 -23
  129. package/dist/Interfaces/Email/IPickupConfirmation.js +2 -2
  130. package/dist/Interfaces/Email/IShippingConfirmation.d.ts +23 -23
  131. package/dist/Interfaces/Email/IShippingConfirmation.js +2 -2
  132. package/dist/Interfaces/Email/IWelcomeEmail.d.ts +19 -19
  133. package/dist/Interfaces/Email/IWelcomeEmail.js +2 -2
  134. package/dist/Interfaces/ExportSchema/index.d.ts +7 -7
  135. package/dist/Interfaces/ExportSchema/index.js +2 -2
  136. package/dist/Interfaces/ExternalService/BaseExternalService.d.ts +12 -12
  137. package/dist/Interfaces/ExternalService/BaseExternalService.js +2 -2
  138. package/dist/Interfaces/ExternalService/ExternalProductsService.d.ts +4 -4
  139. package/dist/Interfaces/ExternalService/ExternalProductsService.js +2 -2
  140. package/dist/Interfaces/ExternalService/index.d.ts +9 -9
  141. package/dist/Interfaces/ExternalService/index.js +2 -2
  142. package/dist/Interfaces/FirstOrderTracking/index.d.ts +5 -5
  143. package/dist/Interfaces/FirstOrderTracking/index.js +2 -2
  144. package/dist/Interfaces/G2/index.d.ts +557 -557
  145. package/dist/Interfaces/G2/index.js +39 -39
  146. package/dist/Interfaces/Indexed/Product/IIndexedLastSavedProduct.d.ts +20 -20
  147. package/dist/Interfaces/Indexed/Product/IIndexedLastSavedProduct.js +2 -2
  148. package/dist/Interfaces/Indexed/Product/index.d.ts +126 -111
  149. package/dist/Interfaces/Indexed/Product/index.js +372 -302
  150. package/dist/Interfaces/Indexed/Product/index.js.map +1 -1
  151. package/dist/Interfaces/Inventory/index.d.ts +19 -19
  152. package/dist/Interfaces/Inventory/index.js +8 -8
  153. package/dist/Interfaces/Invoice/index.d.ts +4 -4
  154. package/dist/Interfaces/Invoice/index.js +2 -2
  155. package/dist/Interfaces/MarketplacePublication/MarketplaceOrderData.d.ts +3 -3
  156. package/dist/Interfaces/MarketplacePublication/MarketplaceOrderData.js +2 -2
  157. package/dist/Interfaces/MarketplacePublication/index.d.ts +23 -23
  158. package/dist/Interfaces/MarketplacePublication/index.js +22 -22
  159. package/dist/Interfaces/Menu/index.d.ts +40 -40
  160. package/dist/Interfaces/Menu/index.js +16 -16
  161. package/dist/Interfaces/Note/index.d.ts +10 -10
  162. package/dist/Interfaces/Note/index.js +7 -7
  163. package/dist/Interfaces/Operations/ICreatedBy.d.ts +6 -6
  164. package/dist/Interfaces/Operations/ICreatedBy.js +2 -2
  165. package/dist/Interfaces/Operations/IUpdate.d.ts +5 -5
  166. package/dist/Interfaces/Operations/IUpdate.js +2 -2
  167. package/dist/Interfaces/Order/index.d.ts +4 -4
  168. package/dist/Interfaces/Order/index.js +2 -2
  169. package/dist/Interfaces/Org/IRelUser.d.ts +9 -9
  170. package/dist/Interfaces/Org/IRelUser.js +2 -2
  171. package/dist/Interfaces/Org/index.d.ts +29 -29
  172. package/dist/Interfaces/Org/index.js +12 -12
  173. package/dist/Interfaces/Payment/index.d.ts +26 -26
  174. package/dist/Interfaces/Payment/index.js +14 -14
  175. package/dist/Interfaces/Product/IAttributeFamily.d.ts +6 -6
  176. package/dist/Interfaces/Product/IAttributeFamily.js +2 -2
  177. package/dist/Interfaces/Product/IImportProduct.d.ts +42 -42
  178. package/dist/Interfaces/Product/IImportProduct.js +882 -882
  179. package/dist/Interfaces/Product/IInventoryItem.d.ts +74 -74
  180. package/dist/Interfaces/Product/IInventoryItem.js +38 -38
  181. package/dist/Interfaces/Product/IPricing.d.ts +177 -177
  182. package/dist/Interfaces/Product/IPricing.js +180 -180
  183. package/dist/Interfaces/Product/index.d.ts +137 -137
  184. package/dist/Interfaces/Product/index.js +64 -64
  185. package/dist/Interfaces/ProductAttribute/index.d.ts +11 -11
  186. package/dist/Interfaces/ProductAttribute/index.js +2 -2
  187. package/dist/Interfaces/PromiseToPurchase/BankType.d.ts +41 -41
  188. package/dist/Interfaces/PromiseToPurchase/BankType.js +41 -41
  189. package/dist/Interfaces/PromiseToPurchase/IIndexedBankUsed.d.ts +33 -33
  190. package/dist/Interfaces/PromiseToPurchase/IIndexedBankUsed.js +15 -15
  191. package/dist/Interfaces/PromiseToPurchase/IIndexedCustomerPromiseToPurchase.d.ts +19 -19
  192. package/dist/Interfaces/PromiseToPurchase/IIndexedCustomerPromiseToPurchase.js +2 -2
  193. package/dist/Interfaces/PromiseToPurchase/index.d.ts +50 -50
  194. package/dist/Interfaces/PromiseToPurchase/index.js +13 -13
  195. package/dist/Interfaces/PurchaseOrder/index.d.ts +17 -17
  196. package/dist/Interfaces/PurchaseOrder/index.js +2 -2
  197. package/dist/Interfaces/Query/IBrandQueryOptions.d.ts +11 -11
  198. package/dist/Interfaces/Query/IBrandQueryOptions.js +2 -2
  199. package/dist/Interfaces/Query/ICategoryQueryOptions.d.ts +11 -11
  200. package/dist/Interfaces/Query/ICategoryQueryOptions.js +2 -2
  201. package/dist/Interfaces/Query/IProductQueryOptions.d.ts +16 -16
  202. package/dist/Interfaces/Query/IProductQueryOptions.js +2 -2
  203. package/dist/Interfaces/Quote/index.d.ts +5 -5
  204. package/dist/Interfaces/Quote/index.js +2 -2
  205. package/dist/Interfaces/Refunds/index.d.ts +106 -106
  206. package/dist/Interfaces/Refunds/index.js +2 -2
  207. package/dist/Interfaces/Rules/IDiscountRule.d.ts +156 -156
  208. package/dist/Interfaces/Rules/IDiscountRule.js +114 -114
  209. package/dist/Interfaces/Schedule/index.d.ts +48 -48
  210. package/dist/Interfaces/Schedule/index.js +2 -2
  211. package/dist/Interfaces/Services/IAddServiceResponse.d.ts +4 -4
  212. package/dist/Interfaces/Services/IAddServiceResponse.js +2 -2
  213. package/dist/Interfaces/Services/IService.d.ts +16 -16
  214. package/dist/Interfaces/Services/IService.js +2 -2
  215. package/dist/Interfaces/Services/IServiceSecret.d.ts +8 -8
  216. package/dist/Interfaces/Services/IServiceSecret.js +2 -2
  217. package/dist/Interfaces/Shipping/Shipstation/carriers.d.ts +10 -10
  218. package/dist/Interfaces/Shipping/Shipstation/carriers.js +2 -2
  219. package/dist/Interfaces/Shipping/Shipstation/order.d.ts +227 -227
  220. package/dist/Interfaces/Shipping/Shipstation/order.js +2 -2
  221. package/dist/Interfaces/Shipping/Shipstation/quote.d.ts +31 -31
  222. package/dist/Interfaces/Shipping/Shipstation/quote.js +2 -2
  223. package/dist/Interfaces/Shipping/Shiptime/order.d.ts +54 -54
  224. package/dist/Interfaces/Shipping/Shiptime/order.js +71 -71
  225. package/dist/Interfaces/Shipping/Shiptime/quote.d.ts +111 -111
  226. package/dist/Interfaces/Shipping/Shiptime/quote.js +2 -2
  227. package/dist/Interfaces/Slider/GR.d.ts +114 -114
  228. package/dist/Interfaces/Slider/GR.js +271 -271
  229. package/dist/Interfaces/Slider/index.d.ts +30 -30
  230. package/dist/Interfaces/Slider/index.js +2 -2
  231. package/dist/Interfaces/Space/IExternalService.d.ts +54 -54
  232. package/dist/Interfaces/Space/IExternalService.js +45 -45
  233. package/dist/Interfaces/Space/IMember.d.ts +16 -16
  234. package/dist/Interfaces/Space/IMember.js +9 -9
  235. package/dist/Interfaces/Space/index.d.ts +414 -414
  236. package/dist/Interfaces/Space/index.js +176 -176
  237. package/dist/Interfaces/Specials/gr.d.ts +61 -61
  238. package/dist/Interfaces/Specials/gr.js +2 -2
  239. package/dist/Interfaces/StockNotification/index.d.ts +7 -7
  240. package/dist/Interfaces/StockNotification/index.js +2 -2
  241. package/dist/Interfaces/Store/index.d.ts +63 -63
  242. package/dist/Interfaces/Store/index.js +27 -27
  243. package/dist/Interfaces/Supplier/ICommand.d.ts +11 -11
  244. package/dist/Interfaces/Supplier/ICommand.js +2 -2
  245. package/dist/Interfaces/Supplier/index.d.ts +36 -36
  246. package/dist/Interfaces/Supplier/index.js +24 -24
  247. package/dist/Interfaces/TCG/index.d.ts +200 -200
  248. package/dist/Interfaces/TCG/index.js +59 -59
  249. package/dist/Interfaces/Tag/index.d.ts +18 -18
  250. package/dist/Interfaces/Tag/index.js +2 -2
  251. package/dist/Interfaces/Tax/index.d.ts +13 -13
  252. package/dist/Interfaces/Tax/index.js +2 -2
  253. package/dist/Interfaces/TransferRequest/index.d.ts +103 -103
  254. package/dist/Interfaces/TransferRequest/index.js +46 -46
  255. package/dist/Interfaces/Translation/index.d.ts +8 -8
  256. package/dist/Interfaces/Translation/index.js +5 -5
  257. package/dist/Interfaces/Update/index.d.ts +10 -10
  258. package/dist/Interfaces/Update/index.js +2 -2
  259. package/dist/Interfaces/User/IUser.d.ts +65 -65
  260. package/dist/Interfaces/User/IUser.js +8 -8
  261. package/dist/Interfaces/Version/index.d.ts +11 -11
  262. package/dist/Interfaces/Version/index.js +2 -2
  263. package/dist/Interfaces/Wishlist/index.d.ts +7 -7
  264. package/dist/Interfaces/Wishlist/index.js +2 -2
  265. package/dist/constants/Interfaces/IBaseApi.d.ts +15 -15
  266. package/dist/constants/Interfaces/IBaseApi.js +2 -2
  267. package/dist/constants/Interfaces/IEndpointResult.d.ts +9 -9
  268. package/dist/constants/Interfaces/IEndpointResult.js +2 -2
  269. package/dist/constants/enums.d.ts +6 -6
  270. package/dist/constants/enums.js +10 -10
  271. package/dist/constants/services.d.ts +2 -2
  272. package/dist/constants/services.js +122 -122
  273. package/dist/constants/version.d.ts +2 -2
  274. package/dist/constants/version.js +5 -5
  275. package/dist/index.d.ts +50 -50
  276. package/dist/index.js +266 -266
  277. package/dist/lib/Attribute/index.d.ts +14 -14
  278. package/dist/lib/Attribute/index.js +186 -186
  279. package/dist/lib/BGJob/index.d.ts +9 -9
  280. package/dist/lib/BGJob/index.js +216 -216
  281. package/dist/lib/BackgroundWorker/index.d.ts +34 -34
  282. package/dist/lib/BackgroundWorker/index.js +59 -59
  283. package/dist/lib/Blog/BlogArticle.d.ts +5 -5
  284. package/dist/lib/Blog/BlogArticle.js +10 -10
  285. package/dist/lib/Blog/BlogAuthor.d.ts +5 -5
  286. package/dist/lib/Blog/BlogAuthor.js +10 -10
  287. package/dist/lib/Blog/BlogCategory.d.ts +5 -5
  288. package/dist/lib/Blog/BlogCategory.js +10 -10
  289. package/dist/lib/Blog/BlogKeyword.d.ts +5 -5
  290. package/dist/lib/Blog/BlogKeyword.js +10 -10
  291. package/dist/lib/Booking/index.d.ts +85 -85
  292. package/dist/lib/Booking/index.js +596 -596
  293. package/dist/lib/Brand/index.d.ts +26 -26
  294. package/dist/lib/Brand/index.js +131 -131
  295. package/dist/lib/Cart/index.d.ts +357 -357
  296. package/dist/lib/Cart/index.js +4052 -4052
  297. package/dist/lib/CartReservedQuantities/index.d.ts +49 -49
  298. package/dist/lib/CartReservedQuantities/index.js +159 -159
  299. package/dist/lib/CashDrawerShift/index.d.ts +84 -84
  300. package/dist/lib/CashDrawerShift/index.js +206 -206
  301. package/dist/lib/Catalogue/index.d.ts +15 -15
  302. package/dist/lib/Catalogue/index.js +78 -78
  303. package/dist/lib/Category/index.d.ts +34 -34
  304. package/dist/lib/Category/index.js +230 -230
  305. package/dist/lib/Class/index.d.ts +16 -16
  306. package/dist/lib/Class/index.js +66 -66
  307. package/dist/lib/Consent/index.d.ts +4 -4
  308. package/dist/lib/Consent/index.js +29 -29
  309. package/dist/lib/Customer/index.d.ts +30 -30
  310. package/dist/lib/Customer/index.js +92 -92
  311. package/dist/lib/Declination/index.d.ts +9 -9
  312. package/dist/lib/Declination/index.js +26 -26
  313. package/dist/lib/Discount/index.d.ts +27 -27
  314. package/dist/lib/Discount/index.js +493 -493
  315. package/dist/lib/ElasticSearch/index.d.ts +13 -13
  316. package/dist/lib/ElasticSearch/index.js +50 -50
  317. package/dist/lib/Elavon/index.d.ts +18 -18
  318. package/dist/lib/Elavon/index.js +135 -135
  319. package/dist/lib/Email/AbandonedCartEmail.d.ts +16 -16
  320. package/dist/lib/Email/AbandonedCartEmail.js +24 -24
  321. package/dist/lib/Email/AccountConfirmationEmail.d.ts +19 -19
  322. package/dist/lib/Email/AccountConfirmationEmail.js +30 -30
  323. package/dist/lib/Email/AdminOrderConfirmationEmail.d.ts +16 -16
  324. package/dist/lib/Email/AdminOrderConfirmationEmail.js +24 -24
  325. package/dist/lib/Email/ApplicationEmail.d.ts +16 -16
  326. package/dist/lib/Email/ApplicationEmail.js +24 -24
  327. package/dist/lib/Email/BackInStockEmail.d.ts +16 -16
  328. package/dist/lib/Email/BackInStockEmail.js +24 -24
  329. package/dist/lib/Email/ContactEmail.d.ts +16 -16
  330. package/dist/lib/Email/ContactEmail.js +24 -24
  331. package/dist/lib/Email/CustomerBookingAdminEmail.d.ts +16 -16
  332. package/dist/lib/Email/CustomerBookingAdminEmail.js +24 -24
  333. package/dist/lib/Email/CustomerBookingEmail.d.ts +16 -16
  334. package/dist/lib/Email/CustomerBookingEmail.js +24 -24
  335. package/dist/lib/Email/OrderConfirmationEmail.d.ts +16 -16
  336. package/dist/lib/Email/OrderConfirmationEmail.js +24 -24
  337. package/dist/lib/Email/OrderDenounciationEmail.d.ts +16 -16
  338. package/dist/lib/Email/OrderDenounciationEmail.js +24 -24
  339. package/dist/lib/Email/OrderSampleEmail.d.ts +16 -16
  340. package/dist/lib/Email/OrderSampleEmail.js +24 -24
  341. package/dist/lib/Email/OtherTypeEmails.d.ts +16 -16
  342. package/dist/lib/Email/OtherTypeEmails.js +27 -27
  343. package/dist/lib/Email/PasswordResetEmail.d.ts +16 -16
  344. package/dist/lib/Email/PasswordResetEmail.js +24 -24
  345. package/dist/lib/Email/PhotoShootEmail.d.ts +16 -16
  346. package/dist/lib/Email/PhotoShootEmail.js +24 -24
  347. package/dist/lib/Email/PickUpConfirmation.d.ts +16 -16
  348. package/dist/lib/Email/PickUpConfirmation.js +24 -24
  349. package/dist/lib/Email/ShippingConfirmation.d.ts +16 -16
  350. package/dist/lib/Email/ShippingConfirmation.js +24 -24
  351. package/dist/lib/Email/WelcomeEmail.d.ts +16 -16
  352. package/dist/lib/Email/WelcomeEmail.js +24 -24
  353. package/dist/lib/Email/index.d.ts +16 -16
  354. package/dist/lib/Email/index.js +31 -31
  355. package/dist/lib/ExternalService/Ebay.d.ts +74 -74
  356. package/dist/lib/ExternalService/Ebay.js +124 -124
  357. package/dist/lib/ExternalService/index.d.ts +5 -5
  358. package/dist/lib/ExternalService/index.js +10 -10
  359. package/dist/lib/FirstOrderTracking/index.d.ts +5 -5
  360. package/dist/lib/FirstOrderTracking/index.js +10 -10
  361. package/dist/lib/Indexed/IndexedCart.d.ts +13 -13
  362. package/dist/lib/Indexed/IndexedCart.js +91 -91
  363. package/dist/lib/Indexed/Product.d.ts +17 -17
  364. package/dist/lib/Indexed/Product.js +98 -98
  365. package/dist/lib/Inventory/index.d.ts +131 -131
  366. package/dist/lib/Inventory/index.js +545 -545
  367. package/dist/lib/Invoice/index.d.ts +16 -16
  368. package/dist/lib/Invoice/index.js +21 -21
  369. package/dist/lib/MarketplacePublication/index.d.ts +9 -9
  370. package/dist/lib/MarketplacePublication/index.js +426 -426
  371. package/dist/lib/Menu/index.d.ts +11 -11
  372. package/dist/lib/Menu/index.js +107 -107
  373. package/dist/lib/MongoDB/BaseAPI.d.ts +18 -18
  374. package/dist/lib/MongoDB/BaseAPI.js +200 -200
  375. package/dist/lib/Note/index.d.ts +4 -4
  376. package/dist/lib/Note/index.js +6 -6
  377. package/dist/lib/Order/index.d.ts +27 -27
  378. package/dist/lib/Order/index.js +56 -56
  379. package/dist/lib/Org/index.d.ts +68 -68
  380. package/dist/lib/Org/index.js +216 -216
  381. package/dist/lib/PandaPay/index.d.ts +16 -16
  382. package/dist/lib/PandaPay/index.js +176 -176
  383. package/dist/lib/Paysafe/index.d.ts +11 -11
  384. package/dist/lib/Paysafe/index.js +41 -41
  385. package/dist/lib/Product/index.d.ts +182 -182
  386. package/dist/lib/Product/index.js +847 -847
  387. package/dist/lib/ProductAttribute/index.d.ts +15 -15
  388. package/dist/lib/ProductAttribute/index.js +45 -45
  389. package/dist/lib/PromiseToPurchase/index.d.ts +109 -109
  390. package/dist/lib/PromiseToPurchase/index.js +343 -343
  391. package/dist/lib/PurchaseOrder/index.d.ts +20 -20
  392. package/dist/lib/PurchaseOrder/index.js +28 -28
  393. package/dist/lib/Schedule/index.d.ts +5 -5
  394. package/dist/lib/Schedule/index.js +12 -12
  395. package/dist/lib/Service/Enum/ServiceEnum.d.ts +3 -3
  396. package/dist/lib/Service/Enum/ServiceEnum.js +7 -7
  397. package/dist/lib/Service/index.d.ts +13 -13
  398. package/dist/lib/Service/index.js +21 -21
  399. package/dist/lib/Shipment/index.d.ts +28 -28
  400. package/dist/lib/Shipment/index.js +370 -370
  401. package/dist/lib/Slider/index.d.ts +22 -22
  402. package/dist/lib/Slider/index.js +119 -119
  403. package/dist/lib/Space/index.d.ts +1181 -1181
  404. package/dist/lib/Space/index.js +5860 -5856
  405. package/dist/lib/Space/index.js.map +1 -1
  406. package/dist/lib/StockNotification/index.d.ts +4 -4
  407. package/dist/lib/StockNotification/index.js +6 -6
  408. package/dist/lib/Store/index.d.ts +5 -5
  409. package/dist/lib/Store/index.js +12 -12
  410. package/dist/lib/Supplier/Command.d.ts +5 -5
  411. package/dist/lib/Supplier/Command.js +10 -10
  412. package/dist/lib/Supplier/index.d.ts +25 -25
  413. package/dist/lib/Supplier/index.js +27 -27
  414. package/dist/lib/Tags/index.d.ts +6 -6
  415. package/dist/lib/Tags/index.js +26 -26
  416. package/dist/lib/Tax/index.d.ts +8 -8
  417. package/dist/lib/Tax/index.js +54 -54
  418. package/dist/lib/TransferRequest/index.d.ts +298 -298
  419. package/dist/lib/TransferRequest/index.js +1106 -1106
  420. package/dist/lib/Update/index.d.ts +10 -10
  421. package/dist/lib/Update/index.js +22 -22
  422. package/dist/lib/User/index.d.ts +89 -89
  423. package/dist/lib/User/index.js +328 -328
  424. package/dist/lib/Wishlist/index.d.ts +5 -5
  425. package/dist/lib/Wishlist/index.js +10 -10
  426. package/dist/lib/base.d.ts +14 -14
  427. package/dist/lib/base.js +62 -62
  428. package/dist/lib/baseService.d.ts +17 -17
  429. package/dist/lib/baseService.js +69 -69
  430. package/dist/rules/ADD/utils/buyback.d.ts +4 -4
  431. package/dist/rules/ADD/utils/buyback.js +135 -135
  432. package/dist/rules/GR/constants/data.d.ts +26 -26
  433. package/dist/rules/GR/constants/data.js +81 -81
  434. package/dist/rules/GR/constants/expedition.d.ts +4 -4
  435. package/dist/rules/GR/constants/expedition.js +9 -9
  436. package/dist/rules/GR/constants/products.d.ts +27 -22
  437. package/dist/rules/GR/constants/products.js +272 -263
  438. package/dist/rules/GR/constants/products.js.map +1 -1
  439. package/dist/rules/GR/interfaces/cart.d.ts +85 -84
  440. package/dist/rules/GR/interfaces/cart.js +42 -41
  441. package/dist/rules/GR/interfaces/cart.js.map +1 -1
  442. package/dist/rules/GR/interfaces/data.d.ts +101 -101
  443. package/dist/rules/GR/interfaces/data.js +114 -114
  444. package/dist/rules/GR/interfaces/products.d.ts +61 -61
  445. package/dist/rules/GR/interfaces/products.js +10 -10
  446. package/dist/rules/GR/utils/cart.d.ts +95 -95
  447. package/dist/rules/GR/utils/cart.js +879 -839
  448. package/dist/rules/GR/utils/cart.js.map +1 -1
  449. package/dist/rules/GR/utils/data.d.ts +3 -3
  450. package/dist/rules/GR/utils/data.js +28 -28
  451. package/dist/rules/GR/utils/expedition.d.ts +140 -140
  452. package/dist/rules/GR/utils/expedition.js +2098 -2017
  453. package/dist/rules/GR/utils/expedition.js.map +1 -1
  454. package/dist/rules/GR/utils/g2.d.ts +209 -209
  455. package/dist/rules/GR/utils/g2.js +1002 -1002
  456. package/dist/rules/GR/utils/g2.js.map +1 -1
  457. package/dist/rules/GR/utils/invoices.d.ts +51 -51
  458. package/dist/rules/GR/utils/invoices.js +218 -215
  459. package/dist/rules/GR/utils/invoices.js.map +1 -1
  460. package/dist/rules/GR/utils/products.d.ts +277 -277
  461. package/dist/rules/GR/utils/products.js +1358 -1350
  462. package/dist/rules/GR/utils/products.js.map +1 -1
  463. package/dist/rules/GR/utils/upsells.d.ts +113 -111
  464. package/dist/rules/GR/utils/upsells.js +215 -215
  465. package/dist/services/database/BaseProvider.d.ts +29 -29
  466. package/dist/services/database/BaseProvider.js +28 -28
  467. package/dist/services/database/BatchUtils.d.ts +14 -14
  468. package/dist/services/database/BatchUtils.js +43 -43
  469. package/dist/services/database/Config.d.ts +2 -2
  470. package/dist/services/database/Config.js +5 -5
  471. package/dist/services/database/DatabaseService.d.ts +125 -125
  472. package/dist/services/database/DatabaseService.js +237 -237
  473. package/dist/services/database/FirebaseProvider.d.ts +17 -17
  474. package/dist/services/database/FirebaseProvider.js +235 -235
  475. package/dist/services/database/NotFirebaseProvider.d.ts +49 -49
  476. package/dist/services/database/NotFirebaseProvider.js +262 -262
  477. package/dist/services/g2/G2OrderSlip.d.ts +49 -49
  478. package/dist/services/g2/G2OrderSlip.js +228 -228
  479. package/dist/services/g2/utils.d.ts +19 -19
  480. package/dist/services/g2/utils.js +969 -968
  481. package/dist/services/g2/utils.js.map +1 -1
  482. package/dist/services/logs/index.d.ts +23 -23
  483. package/dist/services/logs/index.js +66 -66
  484. package/dist/services/marketplace/BaseMarketServiceClass.d.ts +78 -78
  485. package/dist/services/marketplace/BaseMarketServiceClass.js +141 -141
  486. package/dist/services/marketplace/CardtraderServiceClass.d.ts +38 -38
  487. package/dist/services/marketplace/CardtraderServiceClass.js +226 -226
  488. package/dist/services/marketplace/utils.d.ts +17 -17
  489. package/dist/services/marketplace/utils.js +32 -32
  490. package/dist/services/products/BaseClass.d.ts +79 -79
  491. package/dist/services/products/BaseClass.js +144 -144
  492. package/dist/services/products/TCGService.d.ts +29 -29
  493. package/dist/services/products/TCGService.js +503 -503
  494. package/dist/services/products/utils.d.ts +31 -31
  495. package/dist/services/products/utils.js +144 -144
  496. package/dist/utils/algolia.d.ts +46 -46
  497. package/dist/utils/algolia.js +21 -21
  498. package/dist/utils/anonymisation.d.ts +54 -54
  499. package/dist/utils/anonymisation.js +280 -280
  500. package/dist/utils/array.d.ts +5 -5
  501. package/dist/utils/array.js +14 -14
  502. package/dist/utils/aws.d.ts +36 -36
  503. package/dist/utils/aws.js +154 -154
  504. package/dist/utils/booking.d.ts +30 -30
  505. package/dist/utils/booking.js +127 -127
  506. package/dist/utils/cart.d.ts +279 -274
  507. package/dist/utils/cart.js +1152 -1143
  508. package/dist/utils/cart.js.map +1 -1
  509. package/dist/utils/categories.d.ts +2 -2
  510. package/dist/utils/categories.js +54 -54
  511. package/dist/utils/cmv.d.ts +12 -12
  512. package/dist/utils/cmv.js +108 -108
  513. package/dist/utils/console.d.ts +6 -6
  514. package/dist/utils/console.js +59 -59
  515. package/dist/utils/context.d.ts +20 -20
  516. package/dist/utils/context.js +61 -61
  517. package/dist/utils/currency.d.ts +6 -6
  518. package/dist/utils/currency.js +91 -91
  519. package/dist/utils/data.d.ts +31 -31
  520. package/dist/utils/data.js +302 -302
  521. package/dist/utils/date.d.ts +1 -1
  522. package/dist/utils/date.js +16 -16
  523. package/dist/utils/dimensions.d.ts +3 -3
  524. package/dist/utils/dimensions.js +16 -16
  525. package/dist/utils/discount.d.ts +192 -192
  526. package/dist/utils/discount.js +1180 -1180
  527. package/dist/utils/errors.d.ts +133 -133
  528. package/dist/utils/errors.js +171 -171
  529. package/dist/utils/file-admin.d.ts +8 -8
  530. package/dist/utils/file-admin.js +39 -39
  531. package/dist/utils/file.d.ts +39 -39
  532. package/dist/utils/file.js +208 -208
  533. package/dist/utils/firebase-admin.d.ts +11 -11
  534. package/dist/utils/firebase-admin.js +73 -73
  535. package/dist/utils/firebase.d.ts +58 -58
  536. package/dist/utils/firebase.js +148 -148
  537. package/dist/utils/import.d.ts +1 -1
  538. package/dist/utils/import.js +21 -21
  539. package/dist/utils/inventories.d.ts +101 -101
  540. package/dist/utils/inventories.js +467 -467
  541. package/dist/utils/locale.d.ts +24 -24
  542. package/dist/utils/locale.js +91 -91
  543. package/dist/utils/mailchimp.d.ts +58 -58
  544. package/dist/utils/mailchimp.js +531 -531
  545. package/dist/utils/mathUtils.d.ts +17 -17
  546. package/dist/utils/mathUtils.js +324 -324
  547. package/dist/utils/mongodb.d.ts +1 -1
  548. package/dist/utils/mongodb.js +22 -22
  549. package/dist/utils/object.d.ts +32 -32
  550. package/dist/utils/object.js +133 -133
  551. package/dist/utils/payment.d.ts +10 -10
  552. package/dist/utils/payment.js +23 -23
  553. package/dist/utils/products.d.ts +47 -47
  554. package/dist/utils/products.js +214 -214
  555. package/dist/utils/promiseToPurchase.d.ts +121 -121
  556. package/dist/utils/promiseToPurchase.js +329 -329
  557. package/dist/utils/prosprsearch.d.ts +42 -42
  558. package/dist/utils/prosprsearch.js +216 -216
  559. package/dist/utils/refunds.d.ts +2 -2
  560. package/dist/utils/refunds.js +21 -21
  561. package/dist/utils/sdc.d.ts +10 -10
  562. package/dist/utils/sdc.js +1309 -1309
  563. package/dist/utils/searchIndexes.d.ts +58 -58
  564. package/dist/utils/searchIndexes.js +247 -247
  565. package/dist/utils/services.d.ts +44 -44
  566. package/dist/utils/services.js +415 -415
  567. package/dist/utils/shipment.d.ts +110 -110
  568. package/dist/utils/shipment.js +341 -345
  569. package/dist/utils/shipment.js.map +1 -1
  570. package/dist/utils/simpletexting.d.ts +2 -2
  571. package/dist/utils/simpletexting.js +45 -45
  572. package/dist/utils/sliders.d.ts +4 -4
  573. package/dist/utils/sliders.js +24 -24
  574. package/dist/utils/string.d.ts +16 -16
  575. package/dist/utils/string.js +192 -192
  576. package/dist/utils/tcgService.d.ts +129 -129
  577. package/dist/utils/tcgService.js +494 -494
  578. package/dist/utils/tools.d.ts +5 -5
  579. package/dist/utils/tools.js +13 -13
  580. package/dist/utils/transferRequests.d.ts +43 -43
  581. package/dist/utils/transferRequests.js +67 -67
  582. package/dist/utils/update.d.ts +7 -7
  583. package/dist/utils/update.js +137 -137
  584. package/dist/utils/weight.d.ts +3 -3
  585. package/dist/utils/weight.js +16 -16
  586. package/dist/utils/zones.d.ts +11 -11
  587. package/dist/utils/zones.js +218 -218
  588. package/package.json +107 -107
  589. package/publish.sh +143 -143
  590. package/readme.md +182 -182
package/changelog.md CHANGED
@@ -1,582 +1,582 @@
1
- ## [14-08-2026]
2
-
3
- ### Ajustement à la logique pour les produits exclus par promos excluant les produits en rabais
4
-
5
- - **Added**
6
- - **Changed**
7
- - Maintenant, ne compte pas les produits réduits via tier-pricing dans les exclusions (ajustements dans la fonction `isDiscountedItemForPromoExclusion`) - Task [GR-373](https://studionumerique.atlassian.net/browse/GR-373)
8
- - **Fixed**
9
-
10
- ## [03-06-2026]
11
-
12
- ### Ajustement à la logique qui génère l'item de "type de panier" pour le bon de commande G2
13
-
14
- - **Added**
15
- - **Changed**
16
- - Maintenant, dans la fonction `_constructCartTypeItem`, on ajoute le label `catégorie1` de tous les accessoires, tant que la commande n'est pas Accessoires seulement. Aussi, on filtre les accessoires pour ne garder qu'une instance unique de `catégorie1` par valeur.
17
- - **Fixed**
18
-
19
- ## [05-05-2026]
20
-
21
- ### Ajout de marques pour les échantillons (Groupe Richer)
22
-
23
- - **Added**
24
- - New brands added : Unilock, Rinox, Béton Richer, Ducharme
25
- - **Changed**
26
- - **Fixed**
27
-
28
- ## [29-04-2026]
29
-
30
- ### Surcharge carburant temporaire (Groupe Richer)
31
-
32
- - **Added**
33
- - New constants in `rules/GR/constants/products.ts` : `fuelSurchargeLivraisonSku`, `fuelSurchargeMobilisationSku`, `fuelSurchargeGazonSku`, `fuelSurchargeSkus`, `fuelSurchargeLivraisonSlug`, `fuelSurchargeMobilisationSlug`, `fuelSurchargeGazonSlug`, `fuelSurchargeSlugs`
34
- - New helper `matchesFuelSurchargeParent` in `rules/GR/utils/products.ts`
35
- - Added 3 fuel surcharge fee logic blocks in `applyFeesToCart` (`rules/GR/utils/expedition.ts`) for CARBURANTG (gazon), CARBURANTL (livraison), CARBURANTI (mobilisation)
36
- - **Changed**
37
- - **Fixed**
38
-
39
- ## [22-04-2026]
40
-
41
- ### 155 - 2 sku gazon (pickup et livraison)
42
-
43
- - **Added**
44
- - New function utils `checkIfIsNonSpecialityGrass`
45
- - **Changed**
46
- - Updated all places where `kentucky` or `prestige` sku was compared to hardcoded variable. Now also checks product_slug
47
- - **Fixed**
48
-
49
- ## [10-04-2026]
50
-
51
- ### 155 - 2 sku gazon (pickup et livraison)
52
-
53
- - **Added**
54
- - **Changed**
55
- - Updated `InventoryStock` component, so that we can always mark a product as infinite stock even if it has multiple variants.
56
- - **Fixed**
57
-
58
- ## [08-12-2025]
59
-
60
- ### Expedition - Added winter period for sample carts delivery date
61
-
62
- - **Added**
63
- - Added function `getSamplesMinDateOffset` that returns the write delivery date offset if it's a sample cart based on the current date
64
- - **Changed**
65
- - Updated `getMinDateOffset` function, so that it uses `getSamplesMinDateOffset` to get the write number of days if it's a sample cart.
66
- - **Fixed**
67
-
68
- ## [12-11-2025]
69
-
70
- ### G2 Orders - Updated logic for additionnal order type message
71
-
72
- - **Added**
73
- - **Changed**
74
- - Updated `_constructCartTypeItem` subfunction in g2 order creation utils, so pallet quantities for concrete orders use the pallet fee quantity if found, instead of calculated quantity. For grass orders, still uses calculated quantity.
75
- - **Fixed**
76
-
77
- ## [18-09-2025]
78
-
79
- ### Transfers - Added logic for bypassed inventory quantities
80
-
81
- - **Added**
82
- - Added property in `ICartItem` (`qte_bypass_inventory_check`) and `IIndexedCartItem` (`bypass_inventory_check_qty`)
83
- - **Changed**
84
- - Updated `setCartAsProcessed` function to receive unavailableItemQuantities for given store. Adds them to cart item new property (and updates `reserved_qte` as well if set).
85
- - Made property `convertTo` required in `getConvertedUnitQuantity` function.
86
-
87
- ## [16-09-2025]
88
-
89
- ### Ajustments to Custom Price List logic - When applying to a specific cart item
90
-
91
- - **Added**
92
- - A bunch of comments to segment changes to item prices in `checkForCustomPriceEquivalent` function
93
- - **Changed**
94
- - Updated logic in `checkForCustomPriceEquivalent` to keep overridden values for prices by default, and recalculate overriden percentage additionnal escompte if initial price on which escompte was calculated changed
95
- - **Fixed**
96
-
97
- ## [10-09-2025]
98
-
99
- ### Fixes in rounding quantities for Groupe Richer products
100
-
101
- - **Added**
102
- - Added check in `_roundNbUnitPerCmdStep` to return rounded "low" value if value provided is a multiple of unit-in-order-step values (stops returning rounded up value for an insignificant difference between rounded and provided values)
103
- - **Changed**
104
- - **Fixed**
105
- - Added missing value for 'supportsDecimals' property on calling '\_roundNbUnitPerCmdStep' in `getRoundedProductQuantities`
106
- - Removed check in function `getRoundedProductQuantities`, on rounding "principal" input value, so equivalence is always calculated (even if fitting_unit for sell_unit is 1)
107
-
108
- ## [13-08-2025]
109
-
110
- ### Logique de calcul des dates de livraisons - Ajustements
111
-
112
- - **Added**
113
- - **Changed**
114
- - **Fixed**
115
- - Added missing condition for concrete delivery
116
-
117
- ## [18-07-2025]
118
-
119
- ### Logique de calcul des taxes d'une commande - Ajustements
120
-
121
- - **Added**
122
- - **Changed**
123
- - **Fixed**
124
- - Instead of multiplying tax value at each check, new variable `amountToApplyTaxTo` is updated and multiplied by tax value at the end of necessary checks. Gives a more constant value for taxes!
125
-
126
- ## [04-07-2025]
127
-
128
- ### Calcul promotions sur sous-total excluant les frais - Retrait des escomptes supp. PA des "services"
129
-
130
- - **Added**
131
- - **Changed**
132
- - Where services are excluded from subtotal when calculating promo amount, esc. supp. PA products (eg. ESCBOLDUC, ESCRINOX, etc...) are now considered "non-services" so they count towards subtotal on which to apply promo. Changed in functions : `_getSubtotalToCheck`, `getSubtotalToCheckForPromo` and `getOnlyServicesAndFeesSubtotal`.
133
- - **Fixed**
134
-
135
- ## [08-05-2025]
136
-
137
- ### Première dates de disponibilité - Ajustements pour gazon en cueillette
138
-
139
- - **Added**
140
- - **Changed**
141
- - New check for first time of day to check for grass orders in pickup. Now checks noon (12h) instead of 10h. All other cart types stay the same. Changed in functions `getMinDateOffset` & `getAvailableHours`.
142
- - **Fixed**
143
-
144
- ## [17-02-2025]
145
-
146
- ### Première dates de disponibilité - Ajustements 2025
147
-
148
- - **Added**
149
- - **Changed**
150
- - New checks for AM availability if saturday and grass or "green" concrete in cart - Now AM is available up untill 16h00 (function `getAvailableHours`)
151
- - **Fixed**
152
-
153
- ## [14-02-2025]
154
-
155
- ### Première dates de disponibilité - Ajustements 2025
156
-
157
- - **Added**
158
- - **Changed**
159
- - New checks for if between 10h and 16h for certain days and certain cart types (function `getMinDateOffset`)
160
- - **Fixed**
161
-
162
- ## [05-09-2024]
163
-
164
- ### Frais par palette - Ajustement
165
-
166
- - **Added**
167
- - **Changed**
168
- - **Fixed**
169
- - Updated function `getRoundedProductQuantities` for products where inventory unit is not also the sell unit
170
- - Updated function `_roundNbSaleUnitPerCmdStep` to return roundedUp value if normal rounded value is lower than value provided to function
171
-
172
- ## [05-09-2024]
173
-
174
- ### Frais par palette - Ajustement
175
-
176
- - **Added**
177
- - **Changed**
178
- - In function `getPalletQtyPalletFee`, now removes all accessories from items before calculating quantity
179
- - **Fixed**
180
-
181
- ## [26-08-2024]
182
-
183
- ### Booking - Ajustments
184
-
185
- - **Added**
186
- - **Changed**
187
- - Values for certain entries in constant `bookingFees`
188
- - Adjusted constant for paymentIncentivePercent for booking, to keep "beton" and "accessoires" seperatly in new constant `paidOnReceptionPromoPercent`
189
- - **Fixed**
190
-
191
- ## [03-07-2024]
192
-
193
- ### Vrac Shipping Fee and zone check - Ajustments
194
-
195
- - **Added**
196
- - New props in `applyFeesToCart` for vracStoreIDs (optionnal, can be undefined)
197
- - New values for props `settings` in `fetchFeesBeforeCart`:
198
- - `useDefaultAddress` is now `useStoreAddress`, and is a string instead of a boolean
199
- - `useAvailableVracStores`, string[]
200
- - **Changed**
201
- - Updated logic in function `applyFeesToCart` to check 'zone-vrac' AND 'zone-vrac-les-coteaux' before applying shipping fee. Also sets cart as outOfZone if address is in zone where some products are unavailable.
202
- - Removed const `defaultStoreAddress` from data utils, and added new function `getStoreAddressByID`
203
- - **Fixed**
204
-
205
- ## [28-05-2024]
206
-
207
- ### Create Pro custom price list - Adjustments for entente prices
208
-
209
- - **Added**
210
- - **Changed**
211
- - Adjusted logic in `getCustomPriceList` since the entente price for a product can be **higher** than the regular price, but should still be the applied price for customer.
212
- - **Fixed**
213
-
214
- ## [27-05-2024]
215
-
216
- ### GR rules - Calculate shipping fee quantities bug
217
-
218
- - **Added**
219
- - **Changed**
220
- - **Fixed**
221
- - Adjusted logic in `applyFeesToCart`, when calculating shipping fee quantites (with functions `addRestQty`). Now if calculated value for pallets is 0 after adding highest shipping tier, does not add another shipping fee.
222
-
223
- ## [24-05-2024]
224
-
225
- ### Updated logic to get fitting units (rounding units bug)
226
-
227
- - **Added**
228
- - **Changed**
229
- - Optimised logic in `getFittingUnits` to remove `do/while` statement in `for` loop
230
- - **Fixed**
231
- - Adjusted logic in `getFittingUnits` so amount calculated is based on rounded fitting_unit:1 unit values. Stops errors caused by rounding done before in input.
232
-
233
- ## [01-05-2024]
234
-
235
- ### Updated GR first date if install (again)
236
-
237
- - **Added**
238
- - **Changed**
239
- - Adjusted logic in `getMinDateOffset` if cart contains installation. New delay : 48hours.
240
- - **Fixed**
241
-
242
- ## [03-05-2024]
243
-
244
- ### Updated logic for NET prices custom price list for PROs
245
-
246
- - **Added**
247
- - **Changed**
248
- - Adjusted logic in `getCustomPriceList`, so some NET price products can have escompte applied in certain situations. Now if product has catégorie1 = 'DALLE', we check if a corresponding escompte is found in G2 for the customer's groupeClient. If so, escompte is applied.
249
- - **Fixed**
250
-
251
- ## [01-05-2024]
252
-
253
- ### Updated GR fee logic (0.00$ reg_price items & first date if install)
254
-
255
- - **Added**
256
- - Added new function `shouldHideItemIfRegPriceIs0` in `rules/GR/utils/products.ts`, that returns if a product with a reg price of 0.00$ should be hidden or not. Now item should be hidden (or not added to cart) if:
257
- - Reg. price is 0.00$
258
- - Is a service or fee (`.is_service`)
259
- - Is NOT an upsell product of an installation product
260
- - Is NOT included in shipping products
261
- - **Changed**
262
- - Adjusted logic in `applyFeesToCart` and `getInstallationArray` to call new function, instead of only checking if reg_price was different from 0 before adding to cart.
263
- - Adjusted loginc in `getMinDateOffset` if cart contains installation. New delays if low-staff : 96hours.
264
- - **Fixed**
265
-
266
- ## [16-04-2024]
267
-
268
- ### Updated GR fees
269
-
270
- - **Added**
271
- - **Changed**
272
- - Changed date for isDegel props for 2024 season (now over)
273
- - Updated when grass fees should be added to cart
274
- - Now always adds fees for detail customers if a pal. or more in cart
275
- - Always adds fees for pro customers (stayed the same)
276
- - **Fixed**
277
-
278
- ## [29-03-2024]
279
-
280
- ### Adjusted logic for cart fees
281
-
282
- - **Added**
283
- - **Changed**
284
- - **Fixed**
285
- - Bug where draft products were still added to cart. Corrections done :
286
- - Now uses props `noDrafts` on fetchProduct function, so only non-draft products are returned
287
- - Adjusted at which level we check if products are undefined, to make sure no alternatives are skiped prematurely
288
-
289
- ## [28-03-2024]
290
-
291
- ### Adjusted date for degel period!
292
-
293
- - **Added**
294
- - **Changed**
295
- - Date for 2024 values in `isDegel` constant
296
- - **Fixed**
297
-
298
- ## [05-02-2024]
299
-
300
- ### Adjusted logic for new 2024 GR fee logic!
301
-
302
- - **Added**
303
- - **Changed**
304
- - For vrac shipping in `applyFeesToCart`, used to check hardcoded value 60km for distance between St-Julie store and shipping address. If more than 60km, cart was automatically set as Out of Zone. Now logic will simply not check max : as long as address is inside the zone, shipping will be possible.
305
- - In `calculateShippingForVrac`, removed check for `<= 60`, since when distance is higher than 60km, it will always apply the highest shipping fee.
306
- - **Fixed**
307
-
308
- ## [18-01-2024]
309
-
310
- ### Adjusted logic for new 2024 GR fee logic!
311
-
312
- - **Added**
313
- - **Changed**
314
- - Adjusted logic in `checkForCustomPriceEquivalent` so REG and ENTENTE type prices from custom price list are returned with reg price of 0 if their custom price is 0.
315
- - Then, when function is called in other places to add fees to cart (`applyFeesToCart` and `getInstallationArray`), the fees where reg price is 0 are removed from items to add to cart
316
- - Adjusted logic in `applyFeesToCart` for :
317
- - Minimum facturable gazon - maintenant le même pour tous les types de gazon et tous les types de client, peu importe le mode d'expédition
318
- - Minimum facturable d'installation - maintnant le même pour tous les types de client
319
- - Frais par palette de béton (FP-1) - Juste si une pal. ou plus de béton au panier
320
- - Commande de gazon pour le jour même (000010990) - Juste si 4 pal ou plus de gazon au panier
321
- - Tranches de livraison béton (s'ajouttent par tranche de 24)
322
- - Tranches de livraison gazon (s'ajouttent par tranche de 24)
323
- - Tranches de frais extra selon la zone pour gazon (s'ajouttent par tranche de 24)
324
- - Tranches de frais extra selon la zone pour installation (s'ajouttent par tranche de 48)
325
- - Adjusted min. delays in `getMinDateOffset` for install and shipping green concrete orders
326
- - **Fixed**
327
-
328
- ## [31-08-2023]
329
-
330
- **NOTE : Logic for this reverted back to prev logic on 01-09-2023.**
331
-
332
- - **Added**
333
- - **Changed**
334
- - Adjusted logic in `applyFeesToCart` so address inside zones and distance from vrac store are props instead of functions. Let's us have better control on when to call external async functions (ex. if applyFeesToCart is called in an array, like we do with the expedition date calendar for GR). [rules/GR/utils/expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/352/files#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R841)
335
- - `checkIfShouldRemoveSampleShippingFee` is now no longer async. Checks brand name instead of brand id so we don't have to call the database each time. [rules/GR/utils/expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/352/files#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R1842)
336
- - **Fixed**
337
-
338
- ## [19-07-2023]
339
-
340
- - **Added**
341
- - **Changed**
342
- - **Fixed**
343
- - Fixed logic in `getCustomPriceList` [rules/GR/utils/expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/326/files#diff-4a75a7ff4e6b68e5c4343435f14f2770c45f9404bc8c6db8543c7ad1b605474aR575):
344
- - Ajusted logic so dashboard price list is always checked for regular price, as long as a groupeClient is defined in G2, ** even if product has catégorie NET ** (new part!)
345
-
346
- ## [21-07-2023]
347
-
348
- - **Added**
349
- - **Changed**
350
- - **Fixed**
351
- - Fixed itemsToDelete array in `applyFeesToCart` [rules/GR/utils/expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/306/commits/fe200b3a99f342d9c69b1b86011d24ada5266af1):
352
- - Added surcharge-commandes-gazons to itemsToDelete to purge surcharge de livraison selon emplacement
353
-
354
- ## [18-07-2023]
355
-
356
- - **Added**
357
- - **Changed**
358
- - Changed product type that surcharge-commandes-gazons gets applied on in `applyFeesToCart` [rules/GR/utils/expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/299/files):
359
- - Applied surcharge-commandes-gazons on all types of products not just gazon
360
- - **Fixed**
361
-
362
- ## [19-07-2023]
363
-
364
- - **Added**
365
- - **Changed**
366
- - **Fixed**
367
- - Fixed logic in `getCustomPriceList` [rules/GR/utils/expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/300/files#diff-4a75a7ff4e6b68e5c4343435f14f2770c45f9404bc8c6db8543c7ad1b605474aR576):
368
- - Ajusted logic so dashboard price list is always checked for regular price, as long as a groupeClient is defined in G2
369
-
370
- ## [13-07-2023]
371
-
372
- - **Added**
373
- - Added security subsection in space options
374
- - Added no_nip_from_pos option in security subsection
375
-
376
- ## [05-07-2023]
377
-
378
- - **Added**
379
- - **Changed**
380
- - **Fixed**
381
- - Fixed logic in `applyFeesToCart` [rules/GR/utils/expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/297/files#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748L983):
382
- - Ajusted qte check when deciding which shipping fee to apply for grass orders
383
-
384
- ## [16-06-2023]
385
-
386
- - **Added**
387
- - **Changed**
388
- - Ajusted logic for fee application in `applyFeesToCart`:
389
- - _Frais installation si dimanche ou jour férié_ - Now always applies to detail customers, POS or WEB
390
- - _All other installation fees_ - Now only apply if customer isPro, POS or WEB
391
- - _Frais gazon vacances de la construction_ - Now only applies to detail customers if POS, and order contains 1pal. or more
392
- - **Fixed**
393
-
394
- ## [09-06-2023]
395
-
396
- - **Added**
397
- - **Changed**
398
- - **Fixed**
399
- - Ajusted `getPOSCustomerTypeForCart()` so non-number store identifiers are taken into account [rules/GR/utils/cart.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/277/files#diff-c71c1e484bdbcf3207fd748c570df3897e6c76058444ab1070370f115676e502R744)
400
-
401
- ## [29-05-2023]
402
-
403
- - **Added**
404
- - cart_content_type prop in ICart
405
- - CartContentTypeEnum in Cart
406
- - **Changed**
407
- - Ajusted applyFeesToCart to take into account mixed carts and add fees accordingly
408
- - **Fixed**
409
-
410
- ## [ 25-05-2023 ]
411
-
412
- - **Added**
413
- - issued_by_name prop in IBankAdjustement
414
- - **Changed**
415
- - **Fixed**
416
-
417
- ## [ 16-05-2023 ]
418
-
419
- - **Added**
420
- - allow_immediate_pickup prop in store interface and default store
421
- - payment_ref_is_mandatory prop in store interface and default store
422
- - payment_shortcuts prop in store interface and default store
423
- - **Changed**
424
- - **Fixed**
425
- - Changed check for isPOS in applyFeesToCart to include pos_transactionnal
426
-
427
- ## [ 08-05-2023 ]
428
-
429
- - **Added**
430
- - **Changed**
431
- - #1: Updated check to set shouldApplyFees to always return true for cart types POS and POS_TRANSACTIONNAL
432
- - **Fixed**
433
-
434
- ## [ 03-05-2023 ]
435
-
436
- #### Cart class
437
-
438
- - **Added**
439
- - #1: Updated props useBetonBank to `useSpecificBankType` in function `calculatePotentialRemainingAmountsAndSetBanksUsedAmounts()` so 'grass' can also be sent as value
440
- - #2: Added missing logic to check if cart contains installation, and if so, to remove amount from installation bank for installation products.
441
- - #3: For all other products, their amount is deduced from grass bank (original logic continues to apply)
442
- - **Changed**
443
- - **Fixed**
444
-
445
- #### GR Utils
446
-
447
- - **Added**
448
- - **Changed**
449
- - **Fixed**
450
- - #1: Fixed different checks when adding products to cart to make sure the types match up like: - Mixed sell products that are compatible with grass can now be added to grass cart even if they aren't upsells - Vrac products can now be added with other vrac products of the same type (accessories or vrac) but they are no longer cross compatible - Carts that already contain mixed sale products are now checked to make sure you can add the right product types to them
451
-
452
- ## [ 02-05-2023 ]
453
-
454
- #### GR Utils
455
-
456
- - **Added**
457
- - **Changed**
458
- - #1 : Adjusted isDegel constant to check if date is before May 1st 2023 instead of may 19
459
-
460
- - **Fixed**
461
-
462
- ## [ 25-04-2023 ]
463
-
464
- #### GR business rules
465
-
466
- - **Addeed**
467
-
468
- - **Changed**
469
- - #1 : Ajusted logic in check for **FRSBETON** in `applyFeesToCart` so percentage is taken from regular_price of decli in product. [expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/247/files#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R1515)
470
- - #2 : Still for **FRSBETON**, when calculating fee price before adding to cart, percent of fee at time when applyFeesToCart is called is stored in props regular_price.price_type as a string. Will be used to show correct percent applied in OrderGR. [expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/247/files#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R1544)
471
-
472
- - **Fixed**
473
-
474
- ## [ 18-04-2023 ]
475
-
476
- #### GR business rules
477
-
478
- - **Addeed**
479
-
480
- - **Changed**
481
- - #1 : Ajusted logic in check for degel fee in `applyFeesToCart` to exclude when **cartContainsVrac** is true. [expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/238/files#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R1748)
482
-
483
- - **Fixed**
484
-
485
- ## [ 05-04-2023 ]
486
-
487
- #### GR business rules
488
-
489
- - **Addeed**
490
-
491
- - **Changed**
492
- - #1 : Ajusted logic in check for degel fee in `applyFeesToCart` to exclude when **cartContainsSample** is true. [expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/225/files#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R1746)
493
-
494
- - **Fixed**
495
-
496
- ## [ 30-03-2023 ]
497
-
498
- #### GR business rules
499
-
500
- - **Addeed**
501
-
502
- - **Changed**
503
- - #1 : Ajusted logic in `calculateUpsellQte` function so qte is returned if _!!matchingQty_. [upsells.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/214/files#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748)
504
- - #2 : Added date in `isDegel` for 2023 + ajusted logic so _expeditionDate_ is sent to `isDegel` function. [expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/214/files#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748)
505
-
506
- ## [ 13-03-2023 ]
507
-
508
- #### GR business rules
509
-
510
- - **Added**
511
- - #1 : Create new utils functions that check if _surcharge-jour-meme-gazon_ fee should be checked and applied : `checkForSameGrassDayFee` + `checkIfShouldApplySameDayGrassFee`. [expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/190/files#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R770)
512
- - #2 : Added unit tests to test new functions [expeditions.tests.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/190/files#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R770)
513
-
514
- - **Changed**
515
- - #1 : Ajusted logic in `applyFeesToCart` in section about _surcharge-jour-meme-gazon_ fee to follow logic [expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/190/files#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R1130-R1146) :
516
- - If cart is created via web (not POS), applies only to Pro customers
517
- - Applies if chosen date is before min date calculated for expedition type
518
- - Applies if current day time is after 4PM and date selected for expedition is today or tomorrow
519
- - Applies if current day is a holiday and date selected for expedition is today or tomorrow
520
-
521
- - **Fixed**
522
-
523
- ## [ 06-03-2023 ]
524
-
525
- #### GR business rules
526
-
527
- - **Added**
528
- - #1 : Added constant `includedFreeShippingBrands` in Sample section. [data.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/189/files#diff-0312e13e35307cdf18ba75199c0e90ae222c61c14ed3ee9479b9da985b491196R60)
529
- - #2 : Ajusted logic in `checkIfShouldRemoveSampleShippingFee` to check included brand array instead of only Oaks brand + Added Bolduc brand to included brands. [expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/189/files#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R1763)
530
-
531
- - **Changed**
532
-
533
- - **Fixed**
534
-
535
- ## [ 28-02-2023 ]
536
-
537
- #### GR business rules
538
-
539
- - **Added**
540
-
541
- - **Changed**
542
- - #1 : Changed sku for grass shipping (lowest tier) in `applyFeesToCart`. [expedition.ts]
543
-
544
- - **Fixed**
545
- - #1 : Ajusted logic in `handleAddGrassItemsCart`. If new install product is needed (because of a grass qty change), adds all associated items (min-facturable, frais mobilisation, etc.) so props is_upsell_of_sku is updated with correct sku + removes all subItems of previous installation item. [cart.ts]
546
-
547
- ## [ 23-02-2023 ]
548
-
549
- #### GR business rules
550
-
551
- - **Added**
552
- - #1 : Added new function `handleGrassProductQtyRoundForShipping` that finds all items found in cart that should use new rounded grass Qte and returns rounded value + array of items to update [products.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/commit/ea44ba2c22f035e9fddb81d2d1b883a1533f52c6#diff-c393ee846c0511ea4b925dca7545cbe475bdbcb91d44387fa2602b4c7a4dbd38R675)
553
-
554
- - **Changed**
555
- - #1 : Added logic for new grass delivery zone (`zone-ile-orleans`) in function `applyFeesToCart` [expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/commit/ea44ba2c22f035e9fddb81d2d1b883a1533f52c6#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R1620)
556
- - #2 : Ajusted logic in `checkIfShouldRemoveSampleShippingFee` function. Now Tena products are identified with the FAMILY attribute and are not included in free shipping [expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/commit/ea44ba2c22f035e9fddb81d2d1b883a1533f52c6#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R1726)
557
- - #3 : Prestige is now a non-speciality grass. Multiple checks in code were ajusted in consequence :
558
- - Min. delay for delivery of pickup date logic (in `getMinDateOffset`) [expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/commit/ea44ba2c22f035e9fddb81d2d1b883a1533f52c6#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R303)
559
- - Time of day for first available delivery/pickup date logic (in `getAvailableHours`) [expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/commit/ea44ba2c22f035e9fddb81d2d1b883a1533f52c6#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R40)
560
- - Min. facturable qty logic (in `getMinGrassQte`) \*\* [expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/commit/ea44ba2c22f035e9fddb81d2d1b883a1533f52c6#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R721)
561
- - \*\* Logic for min-facturable fee amount untouched (since kentucky price must still be added to prestige price for fee)
562
- - #4 : Ajusted logic for function `roundGrassQte` [products.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/commit/ea44ba2c22f035e9fddb81d2d1b883a1533f52c6#diff-c393ee846c0511ea4b925dca7545cbe475bdbcb91d44387fa2602b4c7a4dbd38R773)
563
-
564
- - **Fixed**
565
-
566
- ## [ 15-12-2022 ]
567
-
568
- - **Added**
569
- - #1 : New utils function `checkIfNoDeliveryDateIsNormal` [expedition.ts](https://github.com/ciaoqc/gr-business-rules/commit/638b48a2ad0555f59ff32133802e3912efdae7a8#diff-dc096a2d0f80e37b71a9d25d7640f5aac74ecb752889f8b9f990a2879e88890fR2008)
570
-
571
- - **Changed**
572
- - **Fixed**
573
-
574
- ## [ 14-12-2022 ]
575
-
576
- - **Added**
577
- - #1 : New POS only logic [expedition.ts](https://github.com/ciaoqc/gr-business-rules/commit/a57be8bc4c630971b2bfc2ea34a4f7d12a59a7d0#diff-dc096a2d0f80e37b71a9d25d7640f5aac74ecb752889f8b9f990a2879e88890f)
578
- - Added section COMMANDE GAZON - SURCHARGE JOUR MÊME + logic
579
- - **Changed**
580
- - #1 : New POS only logic [expedition.ts](https://github.com/ciaoqc/gr-business-rules/commit/a57be8bc4c630971b2bfc2ea34a4f7d12a59a7d0#diff-dc096a2d0f80e37b71a9d25d7640f5aac74ecb752889f8b9f990a2879e88890fR1218)
581
- - For grass fees that used to only apply to Pro customers, ajusted logic to also apply to POS customers if more than one pallet in cart (function shouldApplyFees replaces isPro check)
582
- - **Fixed**
1
+ ## [14-08-2026]
2
+
3
+ ### Ajustement à la logique pour les produits exclus par promos excluant les produits en rabais
4
+
5
+ - **Added**
6
+ - **Changed**
7
+ - Maintenant, ne compte pas les produits réduits via tier-pricing dans les exclusions (ajustements dans la fonction `isDiscountedItemForPromoExclusion`) - Task [GR-373](https://studionumerique.atlassian.net/browse/GR-373)
8
+ - **Fixed**
9
+
10
+ ## [03-06-2026]
11
+
12
+ ### Ajustement à la logique qui génère l'item de "type de panier" pour le bon de commande G2
13
+
14
+ - **Added**
15
+ - **Changed**
16
+ - Maintenant, dans la fonction `_constructCartTypeItem`, on ajoute le label `catégorie1` de tous les accessoires, tant que la commande n'est pas Accessoires seulement. Aussi, on filtre les accessoires pour ne garder qu'une instance unique de `catégorie1` par valeur.
17
+ - **Fixed**
18
+
19
+ ## [05-05-2026]
20
+
21
+ ### Ajout de marques pour les échantillons (Groupe Richer)
22
+
23
+ - **Added**
24
+ - New brands added : Unilock, Rinox, Béton Richer, Ducharme
25
+ - **Changed**
26
+ - **Fixed**
27
+
28
+ ## [29-04-2026]
29
+
30
+ ### Surcharge carburant temporaire (Groupe Richer)
31
+
32
+ - **Added**
33
+ - New constants in `rules/GR/constants/products.ts` : `fuelSurchargeLivraisonSku`, `fuelSurchargeMobilisationSku`, `fuelSurchargeGazonSku`, `fuelSurchargeSkus`, `fuelSurchargeLivraisonSlug`, `fuelSurchargeMobilisationSlug`, `fuelSurchargeGazonSlug`, `fuelSurchargeSlugs`
34
+ - New helper `matchesFuelSurchargeParent` in `rules/GR/utils/products.ts`
35
+ - Added 3 fuel surcharge fee logic blocks in `applyFeesToCart` (`rules/GR/utils/expedition.ts`) for CARBURANTG (gazon), CARBURANTL (livraison), CARBURANTI (mobilisation)
36
+ - **Changed**
37
+ - **Fixed**
38
+
39
+ ## [22-04-2026]
40
+
41
+ ### 155 - 2 sku gazon (pickup et livraison)
42
+
43
+ - **Added**
44
+ - New function utils `checkIfIsNonSpecialityGrass`
45
+ - **Changed**
46
+ - Updated all places where `kentucky` or `prestige` sku was compared to hardcoded variable. Now also checks product_slug
47
+ - **Fixed**
48
+
49
+ ## [10-04-2026]
50
+
51
+ ### 155 - 2 sku gazon (pickup et livraison)
52
+
53
+ - **Added**
54
+ - **Changed**
55
+ - Updated `InventoryStock` component, so that we can always mark a product as infinite stock even if it has multiple variants.
56
+ - **Fixed**
57
+
58
+ ## [08-12-2025]
59
+
60
+ ### Expedition - Added winter period for sample carts delivery date
61
+
62
+ - **Added**
63
+ - Added function `getSamplesMinDateOffset` that returns the write delivery date offset if it's a sample cart based on the current date
64
+ - **Changed**
65
+ - Updated `getMinDateOffset` function, so that it uses `getSamplesMinDateOffset` to get the write number of days if it's a sample cart.
66
+ - **Fixed**
67
+
68
+ ## [12-11-2025]
69
+
70
+ ### G2 Orders - Updated logic for additionnal order type message
71
+
72
+ - **Added**
73
+ - **Changed**
74
+ - Updated `_constructCartTypeItem` subfunction in g2 order creation utils, so pallet quantities for concrete orders use the pallet fee quantity if found, instead of calculated quantity. For grass orders, still uses calculated quantity.
75
+ - **Fixed**
76
+
77
+ ## [18-09-2025]
78
+
79
+ ### Transfers - Added logic for bypassed inventory quantities
80
+
81
+ - **Added**
82
+ - Added property in `ICartItem` (`qte_bypass_inventory_check`) and `IIndexedCartItem` (`bypass_inventory_check_qty`)
83
+ - **Changed**
84
+ - Updated `setCartAsProcessed` function to receive unavailableItemQuantities for given store. Adds them to cart item new property (and updates `reserved_qte` as well if set).
85
+ - Made property `convertTo` required in `getConvertedUnitQuantity` function.
86
+
87
+ ## [16-09-2025]
88
+
89
+ ### Ajustments to Custom Price List logic - When applying to a specific cart item
90
+
91
+ - **Added**
92
+ - A bunch of comments to segment changes to item prices in `checkForCustomPriceEquivalent` function
93
+ - **Changed**
94
+ - Updated logic in `checkForCustomPriceEquivalent` to keep overridden values for prices by default, and recalculate overriden percentage additionnal escompte if initial price on which escompte was calculated changed
95
+ - **Fixed**
96
+
97
+ ## [10-09-2025]
98
+
99
+ ### Fixes in rounding quantities for Groupe Richer products
100
+
101
+ - **Added**
102
+ - Added check in `_roundNbUnitPerCmdStep` to return rounded "low" value if value provided is a multiple of unit-in-order-step values (stops returning rounded up value for an insignificant difference between rounded and provided values)
103
+ - **Changed**
104
+ - **Fixed**
105
+ - Added missing value for 'supportsDecimals' property on calling '\_roundNbUnitPerCmdStep' in `getRoundedProductQuantities`
106
+ - Removed check in function `getRoundedProductQuantities`, on rounding "principal" input value, so equivalence is always calculated (even if fitting_unit for sell_unit is 1)
107
+
108
+ ## [13-08-2025]
109
+
110
+ ### Logique de calcul des dates de livraisons - Ajustements
111
+
112
+ - **Added**
113
+ - **Changed**
114
+ - **Fixed**
115
+ - Added missing condition for concrete delivery
116
+
117
+ ## [18-07-2025]
118
+
119
+ ### Logique de calcul des taxes d'une commande - Ajustements
120
+
121
+ - **Added**
122
+ - **Changed**
123
+ - **Fixed**
124
+ - Instead of multiplying tax value at each check, new variable `amountToApplyTaxTo` is updated and multiplied by tax value at the end of necessary checks. Gives a more constant value for taxes!
125
+
126
+ ## [04-07-2025]
127
+
128
+ ### Calcul promotions sur sous-total excluant les frais - Retrait des escomptes supp. PA des "services"
129
+
130
+ - **Added**
131
+ - **Changed**
132
+ - Where services are excluded from subtotal when calculating promo amount, esc. supp. PA products (eg. ESCBOLDUC, ESCRINOX, etc...) are now considered "non-services" so they count towards subtotal on which to apply promo. Changed in functions : `_getSubtotalToCheck`, `getSubtotalToCheckForPromo` and `getOnlyServicesAndFeesSubtotal`.
133
+ - **Fixed**
134
+
135
+ ## [08-05-2025]
136
+
137
+ ### Première dates de disponibilité - Ajustements pour gazon en cueillette
138
+
139
+ - **Added**
140
+ - **Changed**
141
+ - New check for first time of day to check for grass orders in pickup. Now checks noon (12h) instead of 10h. All other cart types stay the same. Changed in functions `getMinDateOffset` & `getAvailableHours`.
142
+ - **Fixed**
143
+
144
+ ## [17-02-2025]
145
+
146
+ ### Première dates de disponibilité - Ajustements 2025
147
+
148
+ - **Added**
149
+ - **Changed**
150
+ - New checks for AM availability if saturday and grass or "green" concrete in cart - Now AM is available up untill 16h00 (function `getAvailableHours`)
151
+ - **Fixed**
152
+
153
+ ## [14-02-2025]
154
+
155
+ ### Première dates de disponibilité - Ajustements 2025
156
+
157
+ - **Added**
158
+ - **Changed**
159
+ - New checks for if between 10h and 16h for certain days and certain cart types (function `getMinDateOffset`)
160
+ - **Fixed**
161
+
162
+ ## [05-09-2024]
163
+
164
+ ### Frais par palette - Ajustement
165
+
166
+ - **Added**
167
+ - **Changed**
168
+ - **Fixed**
169
+ - Updated function `getRoundedProductQuantities` for products where inventory unit is not also the sell unit
170
+ - Updated function `_roundNbSaleUnitPerCmdStep` to return roundedUp value if normal rounded value is lower than value provided to function
171
+
172
+ ## [05-09-2024]
173
+
174
+ ### Frais par palette - Ajustement
175
+
176
+ - **Added**
177
+ - **Changed**
178
+ - In function `getPalletQtyPalletFee`, now removes all accessories from items before calculating quantity
179
+ - **Fixed**
180
+
181
+ ## [26-08-2024]
182
+
183
+ ### Booking - Ajustments
184
+
185
+ - **Added**
186
+ - **Changed**
187
+ - Values for certain entries in constant `bookingFees`
188
+ - Adjusted constant for paymentIncentivePercent for booking, to keep "beton" and "accessoires" seperatly in new constant `paidOnReceptionPromoPercent`
189
+ - **Fixed**
190
+
191
+ ## [03-07-2024]
192
+
193
+ ### Vrac Shipping Fee and zone check - Ajustments
194
+
195
+ - **Added**
196
+ - New props in `applyFeesToCart` for vracStoreIDs (optionnal, can be undefined)
197
+ - New values for props `settings` in `fetchFeesBeforeCart`:
198
+ - `useDefaultAddress` is now `useStoreAddress`, and is a string instead of a boolean
199
+ - `useAvailableVracStores`, string[]
200
+ - **Changed**
201
+ - Updated logic in function `applyFeesToCart` to check 'zone-vrac' AND 'zone-vrac-les-coteaux' before applying shipping fee. Also sets cart as outOfZone if address is in zone where some products are unavailable.
202
+ - Removed const `defaultStoreAddress` from data utils, and added new function `getStoreAddressByID`
203
+ - **Fixed**
204
+
205
+ ## [28-05-2024]
206
+
207
+ ### Create Pro custom price list - Adjustments for entente prices
208
+
209
+ - **Added**
210
+ - **Changed**
211
+ - Adjusted logic in `getCustomPriceList` since the entente price for a product can be **higher** than the regular price, but should still be the applied price for customer.
212
+ - **Fixed**
213
+
214
+ ## [27-05-2024]
215
+
216
+ ### GR rules - Calculate shipping fee quantities bug
217
+
218
+ - **Added**
219
+ - **Changed**
220
+ - **Fixed**
221
+ - Adjusted logic in `applyFeesToCart`, when calculating shipping fee quantites (with functions `addRestQty`). Now if calculated value for pallets is 0 after adding highest shipping tier, does not add another shipping fee.
222
+
223
+ ## [24-05-2024]
224
+
225
+ ### Updated logic to get fitting units (rounding units bug)
226
+
227
+ - **Added**
228
+ - **Changed**
229
+ - Optimised logic in `getFittingUnits` to remove `do/while` statement in `for` loop
230
+ - **Fixed**
231
+ - Adjusted logic in `getFittingUnits` so amount calculated is based on rounded fitting_unit:1 unit values. Stops errors caused by rounding done before in input.
232
+
233
+ ## [01-05-2024]
234
+
235
+ ### Updated GR first date if install (again)
236
+
237
+ - **Added**
238
+ - **Changed**
239
+ - Adjusted logic in `getMinDateOffset` if cart contains installation. New delay : 48hours.
240
+ - **Fixed**
241
+
242
+ ## [03-05-2024]
243
+
244
+ ### Updated logic for NET prices custom price list for PROs
245
+
246
+ - **Added**
247
+ - **Changed**
248
+ - Adjusted logic in `getCustomPriceList`, so some NET price products can have escompte applied in certain situations. Now if product has catégorie1 = 'DALLE', we check if a corresponding escompte is found in G2 for the customer's groupeClient. If so, escompte is applied.
249
+ - **Fixed**
250
+
251
+ ## [01-05-2024]
252
+
253
+ ### Updated GR fee logic (0.00$ reg_price items & first date if install)
254
+
255
+ - **Added**
256
+ - Added new function `shouldHideItemIfRegPriceIs0` in `rules/GR/utils/products.ts`, that returns if a product with a reg price of 0.00$ should be hidden or not. Now item should be hidden (or not added to cart) if:
257
+ - Reg. price is 0.00$
258
+ - Is a service or fee (`.is_service`)
259
+ - Is NOT an upsell product of an installation product
260
+ - Is NOT included in shipping products
261
+ - **Changed**
262
+ - Adjusted logic in `applyFeesToCart` and `getInstallationArray` to call new function, instead of only checking if reg_price was different from 0 before adding to cart.
263
+ - Adjusted loginc in `getMinDateOffset` if cart contains installation. New delays if low-staff : 96hours.
264
+ - **Fixed**
265
+
266
+ ## [16-04-2024]
267
+
268
+ ### Updated GR fees
269
+
270
+ - **Added**
271
+ - **Changed**
272
+ - Changed date for isDegel props for 2024 season (now over)
273
+ - Updated when grass fees should be added to cart
274
+ - Now always adds fees for detail customers if a pal. or more in cart
275
+ - Always adds fees for pro customers (stayed the same)
276
+ - **Fixed**
277
+
278
+ ## [29-03-2024]
279
+
280
+ ### Adjusted logic for cart fees
281
+
282
+ - **Added**
283
+ - **Changed**
284
+ - **Fixed**
285
+ - Bug where draft products were still added to cart. Corrections done :
286
+ - Now uses props `noDrafts` on fetchProduct function, so only non-draft products are returned
287
+ - Adjusted at which level we check if products are undefined, to make sure no alternatives are skiped prematurely
288
+
289
+ ## [28-03-2024]
290
+
291
+ ### Adjusted date for degel period!
292
+
293
+ - **Added**
294
+ - **Changed**
295
+ - Date for 2024 values in `isDegel` constant
296
+ - **Fixed**
297
+
298
+ ## [05-02-2024]
299
+
300
+ ### Adjusted logic for new 2024 GR fee logic!
301
+
302
+ - **Added**
303
+ - **Changed**
304
+ - For vrac shipping in `applyFeesToCart`, used to check hardcoded value 60km for distance between St-Julie store and shipping address. If more than 60km, cart was automatically set as Out of Zone. Now logic will simply not check max : as long as address is inside the zone, shipping will be possible.
305
+ - In `calculateShippingForVrac`, removed check for `<= 60`, since when distance is higher than 60km, it will always apply the highest shipping fee.
306
+ - **Fixed**
307
+
308
+ ## [18-01-2024]
309
+
310
+ ### Adjusted logic for new 2024 GR fee logic!
311
+
312
+ - **Added**
313
+ - **Changed**
314
+ - Adjusted logic in `checkForCustomPriceEquivalent` so REG and ENTENTE type prices from custom price list are returned with reg price of 0 if their custom price is 0.
315
+ - Then, when function is called in other places to add fees to cart (`applyFeesToCart` and `getInstallationArray`), the fees where reg price is 0 are removed from items to add to cart
316
+ - Adjusted logic in `applyFeesToCart` for :
317
+ - Minimum facturable gazon - maintenant le même pour tous les types de gazon et tous les types de client, peu importe le mode d'expédition
318
+ - Minimum facturable d'installation - maintnant le même pour tous les types de client
319
+ - Frais par palette de béton (FP-1) - Juste si une pal. ou plus de béton au panier
320
+ - Commande de gazon pour le jour même (000010990) - Juste si 4 pal ou plus de gazon au panier
321
+ - Tranches de livraison béton (s'ajouttent par tranche de 24)
322
+ - Tranches de livraison gazon (s'ajouttent par tranche de 24)
323
+ - Tranches de frais extra selon la zone pour gazon (s'ajouttent par tranche de 24)
324
+ - Tranches de frais extra selon la zone pour installation (s'ajouttent par tranche de 48)
325
+ - Adjusted min. delays in `getMinDateOffset` for install and shipping green concrete orders
326
+ - **Fixed**
327
+
328
+ ## [31-08-2023]
329
+
330
+ **NOTE : Logic for this reverted back to prev logic on 01-09-2023.**
331
+
332
+ - **Added**
333
+ - **Changed**
334
+ - Adjusted logic in `applyFeesToCart` so address inside zones and distance from vrac store are props instead of functions. Let's us have better control on when to call external async functions (ex. if applyFeesToCart is called in an array, like we do with the expedition date calendar for GR). [rules/GR/utils/expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/352/files#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R841)
335
+ - `checkIfShouldRemoveSampleShippingFee` is now no longer async. Checks brand name instead of brand id so we don't have to call the database each time. [rules/GR/utils/expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/352/files#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R1842)
336
+ - **Fixed**
337
+
338
+ ## [19-07-2023]
339
+
340
+ - **Added**
341
+ - **Changed**
342
+ - **Fixed**
343
+ - Fixed logic in `getCustomPriceList` [rules/GR/utils/expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/326/files#diff-4a75a7ff4e6b68e5c4343435f14f2770c45f9404bc8c6db8543c7ad1b605474aR575):
344
+ - Ajusted logic so dashboard price list is always checked for regular price, as long as a groupeClient is defined in G2, ** even if product has catégorie NET ** (new part!)
345
+
346
+ ## [21-07-2023]
347
+
348
+ - **Added**
349
+ - **Changed**
350
+ - **Fixed**
351
+ - Fixed itemsToDelete array in `applyFeesToCart` [rules/GR/utils/expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/306/commits/fe200b3a99f342d9c69b1b86011d24ada5266af1):
352
+ - Added surcharge-commandes-gazons to itemsToDelete to purge surcharge de livraison selon emplacement
353
+
354
+ ## [18-07-2023]
355
+
356
+ - **Added**
357
+ - **Changed**
358
+ - Changed product type that surcharge-commandes-gazons gets applied on in `applyFeesToCart` [rules/GR/utils/expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/299/files):
359
+ - Applied surcharge-commandes-gazons on all types of products not just gazon
360
+ - **Fixed**
361
+
362
+ ## [19-07-2023]
363
+
364
+ - **Added**
365
+ - **Changed**
366
+ - **Fixed**
367
+ - Fixed logic in `getCustomPriceList` [rules/GR/utils/expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/300/files#diff-4a75a7ff4e6b68e5c4343435f14f2770c45f9404bc8c6db8543c7ad1b605474aR576):
368
+ - Ajusted logic so dashboard price list is always checked for regular price, as long as a groupeClient is defined in G2
369
+
370
+ ## [13-07-2023]
371
+
372
+ - **Added**
373
+ - Added security subsection in space options
374
+ - Added no_nip_from_pos option in security subsection
375
+
376
+ ## [05-07-2023]
377
+
378
+ - **Added**
379
+ - **Changed**
380
+ - **Fixed**
381
+ - Fixed logic in `applyFeesToCart` [rules/GR/utils/expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/297/files#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748L983):
382
+ - Ajusted qte check when deciding which shipping fee to apply for grass orders
383
+
384
+ ## [16-06-2023]
385
+
386
+ - **Added**
387
+ - **Changed**
388
+ - Ajusted logic for fee application in `applyFeesToCart`:
389
+ - _Frais installation si dimanche ou jour férié_ - Now always applies to detail customers, POS or WEB
390
+ - _All other installation fees_ - Now only apply if customer isPro, POS or WEB
391
+ - _Frais gazon vacances de la construction_ - Now only applies to detail customers if POS, and order contains 1pal. or more
392
+ - **Fixed**
393
+
394
+ ## [09-06-2023]
395
+
396
+ - **Added**
397
+ - **Changed**
398
+ - **Fixed**
399
+ - Ajusted `getPOSCustomerTypeForCart()` so non-number store identifiers are taken into account [rules/GR/utils/cart.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/277/files#diff-c71c1e484bdbcf3207fd748c570df3897e6c76058444ab1070370f115676e502R744)
400
+
401
+ ## [29-05-2023]
402
+
403
+ - **Added**
404
+ - cart_content_type prop in ICart
405
+ - CartContentTypeEnum in Cart
406
+ - **Changed**
407
+ - Ajusted applyFeesToCart to take into account mixed carts and add fees accordingly
408
+ - **Fixed**
409
+
410
+ ## [ 25-05-2023 ]
411
+
412
+ - **Added**
413
+ - issued_by_name prop in IBankAdjustement
414
+ - **Changed**
415
+ - **Fixed**
416
+
417
+ ## [ 16-05-2023 ]
418
+
419
+ - **Added**
420
+ - allow_immediate_pickup prop in store interface and default store
421
+ - payment_ref_is_mandatory prop in store interface and default store
422
+ - payment_shortcuts prop in store interface and default store
423
+ - **Changed**
424
+ - **Fixed**
425
+ - Changed check for isPOS in applyFeesToCart to include pos_transactionnal
426
+
427
+ ## [ 08-05-2023 ]
428
+
429
+ - **Added**
430
+ - **Changed**
431
+ - #1: Updated check to set shouldApplyFees to always return true for cart types POS and POS_TRANSACTIONNAL
432
+ - **Fixed**
433
+
434
+ ## [ 03-05-2023 ]
435
+
436
+ #### Cart class
437
+
438
+ - **Added**
439
+ - #1: Updated props useBetonBank to `useSpecificBankType` in function `calculatePotentialRemainingAmountsAndSetBanksUsedAmounts()` so 'grass' can also be sent as value
440
+ - #2: Added missing logic to check if cart contains installation, and if so, to remove amount from installation bank for installation products.
441
+ - #3: For all other products, their amount is deduced from grass bank (original logic continues to apply)
442
+ - **Changed**
443
+ - **Fixed**
444
+
445
+ #### GR Utils
446
+
447
+ - **Added**
448
+ - **Changed**
449
+ - **Fixed**
450
+ - #1: Fixed different checks when adding products to cart to make sure the types match up like: - Mixed sell products that are compatible with grass can now be added to grass cart even if they aren't upsells - Vrac products can now be added with other vrac products of the same type (accessories or vrac) but they are no longer cross compatible - Carts that already contain mixed sale products are now checked to make sure you can add the right product types to them
451
+
452
+ ## [ 02-05-2023 ]
453
+
454
+ #### GR Utils
455
+
456
+ - **Added**
457
+ - **Changed**
458
+ - #1 : Adjusted isDegel constant to check if date is before May 1st 2023 instead of may 19
459
+
460
+ - **Fixed**
461
+
462
+ ## [ 25-04-2023 ]
463
+
464
+ #### GR business rules
465
+
466
+ - **Addeed**
467
+
468
+ - **Changed**
469
+ - #1 : Ajusted logic in check for **FRSBETON** in `applyFeesToCart` so percentage is taken from regular_price of decli in product. [expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/247/files#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R1515)
470
+ - #2 : Still for **FRSBETON**, when calculating fee price before adding to cart, percent of fee at time when applyFeesToCart is called is stored in props regular_price.price_type as a string. Will be used to show correct percent applied in OrderGR. [expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/247/files#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R1544)
471
+
472
+ - **Fixed**
473
+
474
+ ## [ 18-04-2023 ]
475
+
476
+ #### GR business rules
477
+
478
+ - **Addeed**
479
+
480
+ - **Changed**
481
+ - #1 : Ajusted logic in check for degel fee in `applyFeesToCart` to exclude when **cartContainsVrac** is true. [expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/238/files#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R1748)
482
+
483
+ - **Fixed**
484
+
485
+ ## [ 05-04-2023 ]
486
+
487
+ #### GR business rules
488
+
489
+ - **Addeed**
490
+
491
+ - **Changed**
492
+ - #1 : Ajusted logic in check for degel fee in `applyFeesToCart` to exclude when **cartContainsSample** is true. [expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/225/files#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R1746)
493
+
494
+ - **Fixed**
495
+
496
+ ## [ 30-03-2023 ]
497
+
498
+ #### GR business rules
499
+
500
+ - **Addeed**
501
+
502
+ - **Changed**
503
+ - #1 : Ajusted logic in `calculateUpsellQte` function so qte is returned if _!!matchingQty_. [upsells.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/214/files#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748)
504
+ - #2 : Added date in `isDegel` for 2023 + ajusted logic so _expeditionDate_ is sent to `isDegel` function. [expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/214/files#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748)
505
+
506
+ ## [ 13-03-2023 ]
507
+
508
+ #### GR business rules
509
+
510
+ - **Added**
511
+ - #1 : Create new utils functions that check if _surcharge-jour-meme-gazon_ fee should be checked and applied : `checkForSameGrassDayFee` + `checkIfShouldApplySameDayGrassFee`. [expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/190/files#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R770)
512
+ - #2 : Added unit tests to test new functions [expeditions.tests.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/190/files#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R770)
513
+
514
+ - **Changed**
515
+ - #1 : Ajusted logic in `applyFeesToCart` in section about _surcharge-jour-meme-gazon_ fee to follow logic [expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/190/files#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R1130-R1146) :
516
+ - If cart is created via web (not POS), applies only to Pro customers
517
+ - Applies if chosen date is before min date calculated for expedition type
518
+ - Applies if current day time is after 4PM and date selected for expedition is today or tomorrow
519
+ - Applies if current day is a holiday and date selected for expedition is today or tomorrow
520
+
521
+ - **Fixed**
522
+
523
+ ## [ 06-03-2023 ]
524
+
525
+ #### GR business rules
526
+
527
+ - **Added**
528
+ - #1 : Added constant `includedFreeShippingBrands` in Sample section. [data.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/189/files#diff-0312e13e35307cdf18ba75199c0e90ae222c61c14ed3ee9479b9da985b491196R60)
529
+ - #2 : Ajusted logic in `checkIfShouldRemoveSampleShippingFee` to check included brand array instead of only Oaks brand + Added Bolduc brand to included brands. [expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/pull/189/files#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R1763)
530
+
531
+ - **Changed**
532
+
533
+ - **Fixed**
534
+
535
+ ## [ 28-02-2023 ]
536
+
537
+ #### GR business rules
538
+
539
+ - **Added**
540
+
541
+ - **Changed**
542
+ - #1 : Changed sku for grass shipping (lowest tier) in `applyFeesToCart`. [expedition.ts]
543
+
544
+ - **Fixed**
545
+ - #1 : Ajusted logic in `handleAddGrassItemsCart`. If new install product is needed (because of a grass qty change), adds all associated items (min-facturable, frais mobilisation, etc.) so props is_upsell_of_sku is updated with correct sku + removes all subItems of previous installation item. [cart.ts]
546
+
547
+ ## [ 23-02-2023 ]
548
+
549
+ #### GR business rules
550
+
551
+ - **Added**
552
+ - #1 : Added new function `handleGrassProductQtyRoundForShipping` that finds all items found in cart that should use new rounded grass Qte and returns rounded value + array of items to update [products.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/commit/ea44ba2c22f035e9fddb81d2d1b883a1533f52c6#diff-c393ee846c0511ea4b925dca7545cbe475bdbcb91d44387fa2602b4c7a4dbd38R675)
553
+
554
+ - **Changed**
555
+ - #1 : Added logic for new grass delivery zone (`zone-ile-orleans`) in function `applyFeesToCart` [expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/commit/ea44ba2c22f035e9fddb81d2d1b883a1533f52c6#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R1620)
556
+ - #2 : Ajusted logic in `checkIfShouldRemoveSampleShippingFee` function. Now Tena products are identified with the FAMILY attribute and are not included in free shipping [expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/commit/ea44ba2c22f035e9fddb81d2d1b883a1533f52c6#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R1726)
557
+ - #3 : Prestige is now a non-speciality grass. Multiple checks in code were ajusted in consequence :
558
+ - Min. delay for delivery of pickup date logic (in `getMinDateOffset`) [expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/commit/ea44ba2c22f035e9fddb81d2d1b883a1533f52c6#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R303)
559
+ - Time of day for first available delivery/pickup date logic (in `getAvailableHours`) [expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/commit/ea44ba2c22f035e9fddb81d2d1b883a1533f52c6#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R40)
560
+ - Min. facturable qty logic (in `getMinGrassQte`) \*\* [expedition.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/commit/ea44ba2c22f035e9fddb81d2d1b883a1533f52c6#diff-556ea399f45c634dee0f5906657743ead25fbdd3da46df6303f655e5c6f7b748R721)
561
+ - \*\* Logic for min-facturable fee amount untouched (since kentucky price must still be added to prestige price for fee)
562
+ - #4 : Ajusted logic for function `roundGrassQte` [products.ts](https://github.com/ciaoqc/gng-tb-admin-sdk/commit/ea44ba2c22f035e9fddb81d2d1b883a1533f52c6#diff-c393ee846c0511ea4b925dca7545cbe475bdbcb91d44387fa2602b4c7a4dbd38R773)
563
+
564
+ - **Fixed**
565
+
566
+ ## [ 15-12-2022 ]
567
+
568
+ - **Added**
569
+ - #1 : New utils function `checkIfNoDeliveryDateIsNormal` [expedition.ts](https://github.com/ciaoqc/gr-business-rules/commit/638b48a2ad0555f59ff32133802e3912efdae7a8#diff-dc096a2d0f80e37b71a9d25d7640f5aac74ecb752889f8b9f990a2879e88890fR2008)
570
+
571
+ - **Changed**
572
+ - **Fixed**
573
+
574
+ ## [ 14-12-2022 ]
575
+
576
+ - **Added**
577
+ - #1 : New POS only logic [expedition.ts](https://github.com/ciaoqc/gr-business-rules/commit/a57be8bc4c630971b2bfc2ea34a4f7d12a59a7d0#diff-dc096a2d0f80e37b71a9d25d7640f5aac74ecb752889f8b9f990a2879e88890f)
578
+ - Added section COMMANDE GAZON - SURCHARGE JOUR MÊME + logic
579
+ - **Changed**
580
+ - #1 : New POS only logic [expedition.ts](https://github.com/ciaoqc/gr-business-rules/commit/a57be8bc4c630971b2bfc2ea34a4f7d12a59a7d0#diff-dc096a2d0f80e37b71a9d25d7640f5aac74ecb752889f8b9f990a2879e88890fR1218)
581
+ - For grass fees that used to only apply to Pro customers, ajusted logic to also apply to POS customers if more than one pallet in cart (function shouldApplyFees replaces isPro check)
582
+ - **Fixed**