addio-admin-sdk 1.7.165 → 1.7.167

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