addio-admin-sdk 1.7.21 → 1.7.22

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 (541) hide show
  1. package/.babelrc +17 -17
  2. package/.env +14 -14
  3. package/.env.dev +14 -14
  4. package/.github/workflows/publish_coverage.yaml +69 -69
  5. package/addio-sdk-doc.md +1473 -1380
  6. package/changelog.md +469 -469
  7. package/dist/Interfaces/Address/index.d.ts +21 -21
  8. package/dist/Interfaces/Address/index.js +16 -16
  9. package/dist/Interfaces/Algolia/index.d.ts +149 -148
  10. package/dist/Interfaces/Algolia/index.js +2 -2
  11. package/dist/Interfaces/Attachement/index.d.ts +5 -5
  12. package/dist/Interfaces/Attachement/index.js +2 -2
  13. package/dist/Interfaces/Attribute/index.d.ts +47 -47
  14. package/dist/Interfaces/Attribute/index.js +10 -10
  15. package/dist/Interfaces/BGJob/index.d.ts +56 -56
  16. package/dist/Interfaces/BGJob/index.js +36 -36
  17. package/dist/Interfaces/BaseClass/index.d.ts +8 -8
  18. package/dist/Interfaces/BaseClass/index.js +2 -2
  19. package/dist/Interfaces/Blog/IBlogArticle.d.ts +18 -18
  20. package/dist/Interfaces/Blog/IBlogArticle.js +2 -2
  21. package/dist/Interfaces/Blog/IBlogAuthor.d.ts +7 -7
  22. package/dist/Interfaces/Blog/IBlogAuthor.js +2 -2
  23. package/dist/Interfaces/Blog/IBlogCategory.d.ts +9 -9
  24. package/dist/Interfaces/Blog/IBlogCategory.js +2 -2
  25. package/dist/Interfaces/Blog/IBlogComment.d.ts +13 -13
  26. package/dist/Interfaces/Blog/IBlogComment.js +2 -2
  27. package/dist/Interfaces/Blog/IBlogKeywords.d.ts +9 -9
  28. package/dist/Interfaces/Blog/IBlogKeywords.js +2 -2
  29. package/dist/Interfaces/Booking/index.d.ts +68 -68
  30. package/dist/Interfaces/Booking/index.js +17 -17
  31. package/dist/Interfaces/Brand/index.d.ts +13 -13
  32. package/dist/Interfaces/Brand/index.js +2 -2
  33. package/dist/Interfaces/CMS/index.d.ts +25 -25
  34. package/dist/Interfaces/CMS/index.js +2 -2
  35. package/dist/Interfaces/Cart/IPandaPayload.d.ts +64 -64
  36. package/dist/Interfaces/Cart/IPandaPayload.js +18 -18
  37. package/dist/Interfaces/Cart/IPaymentCard.d.ts +22 -22
  38. package/dist/Interfaces/Cart/IPaymentCard.js +44 -44
  39. package/dist/Interfaces/Cart/IPaypalPayload.d.ts +9 -9
  40. package/dist/Interfaces/Cart/IPaypalPayload.js +2 -2
  41. package/dist/Interfaces/Cart/IPaysafePayload.d.ts +72 -72
  42. package/dist/Interfaces/Cart/IPaysafePayload.js +2 -2
  43. package/dist/Interfaces/Cart/IStripePayload.d.ts +66 -66
  44. package/dist/Interfaces/Cart/IStripePayload.js +2 -2
  45. package/dist/Interfaces/Cart/index.d.ts +412 -410
  46. package/dist/Interfaces/Cart/index.js +191 -191
  47. package/dist/Interfaces/Cart/index.js.map +1 -1
  48. package/dist/Interfaces/Catalogue/index.d.ts +68 -68
  49. package/dist/Interfaces/Catalogue/index.js +37 -37
  50. package/dist/Interfaces/Category/index.d.ts +26 -26
  51. package/dist/Interfaces/Category/index.js +2 -2
  52. package/dist/Interfaces/Chart/index.d.ts +11 -11
  53. package/dist/Interfaces/Chart/index.js +2 -2
  54. package/dist/Interfaces/Class/index.d.ts +8 -8
  55. package/dist/Interfaces/Class/index.js +2 -2
  56. package/dist/Interfaces/Consent/index.d.ts +6 -6
  57. package/dist/Interfaces/Consent/index.js +2 -2
  58. package/dist/Interfaces/Context/IContextProps.d.ts +4 -4
  59. package/dist/Interfaces/Context/IContextProps.js +2 -2
  60. package/dist/Interfaces/Context/IContextState.d.ts +15 -15
  61. package/dist/Interfaces/Context/IContextState.js +2 -2
  62. package/dist/Interfaces/Customer/ICustomerBadge.d.ts +2 -2
  63. package/dist/Interfaces/Customer/ICustomerBadge.js +2 -2
  64. package/dist/Interfaces/Customer/ICustomerRating.d.ts +10 -10
  65. package/dist/Interfaces/Customer/ICustomerRating.js +2 -2
  66. package/dist/Interfaces/Customer/index.d.ts +95 -95
  67. package/dist/Interfaces/Customer/index.js +158 -158
  68. package/dist/Interfaces/Declination/index.d.ts +111 -111
  69. package/dist/Interfaces/Declination/index.js +77 -77
  70. package/dist/Interfaces/Document/index.d.ts +8 -8
  71. package/dist/Interfaces/Document/index.js +2 -2
  72. package/dist/Interfaces/Elastic/index.d.ts +89 -89
  73. package/dist/Interfaces/Elastic/index.js +2 -2
  74. package/dist/Interfaces/Email/CustomGR/I3DPrintEmail.d.ts +11 -11
  75. package/dist/Interfaces/Email/CustomGR/I3DPrintEmail.js +2 -2
  76. package/dist/Interfaces/Email/CustomGR/IBorrowToolsEmail.d.ts +15 -15
  77. package/dist/Interfaces/Email/CustomGR/IBorrowToolsEmail.js +2 -2
  78. package/dist/Interfaces/Email/CustomGR/IPickupMaterialsEmail.d.ts +12 -12
  79. package/dist/Interfaces/Email/CustomGR/IPickupMaterialsEmail.js +2 -2
  80. package/dist/Interfaces/Email/CustomGR/IPreMeetingFormEmail.d.ts +36 -36
  81. package/dist/Interfaces/Email/CustomGR/IPreMeetingFormEmail.js +2 -2
  82. package/dist/Interfaces/Email/CustomGR/ISponsorRequestEmail.d.ts +12 -12
  83. package/dist/Interfaces/Email/CustomGR/ISponsorRequestEmail.js +2 -2
  84. package/dist/Interfaces/Email/CustomGR/ITransportEmail.d.ts +12 -12
  85. package/dist/Interfaces/Email/CustomGR/ITransportEmail.js +2 -2
  86. package/dist/Interfaces/Email/CustomGR/ITransportQuoteEmail.d.ts +12 -12
  87. package/dist/Interfaces/Email/CustomGR/ITransportQuoteEmail.js +2 -2
  88. package/dist/Interfaces/Email/CustomGR/IVegetalsEmail.d.ts +16 -16
  89. package/dist/Interfaces/Email/CustomGR/IVegetalsEmail.js +2 -2
  90. package/dist/Interfaces/Email/CustomGR/IWishlistEmail.d.ts +15 -15
  91. package/dist/Interfaces/Email/CustomGR/IWishlistEmail.js +2 -2
  92. package/dist/Interfaces/Email/IAbandonnedCartEmail.d.ts +29 -29
  93. package/dist/Interfaces/Email/IAbandonnedCartEmail.js +2 -2
  94. package/dist/Interfaces/Email/IAccountConfirmationEmail.d.ts +22 -22
  95. package/dist/Interfaces/Email/IAccountConfirmationEmail.js +2 -2
  96. package/dist/Interfaces/Email/IApplicationEmail.d.ts +19 -19
  97. package/dist/Interfaces/Email/IApplicationEmail.js +2 -2
  98. package/dist/Interfaces/Email/IBackInStockEmail.d.ts +21 -21
  99. package/dist/Interfaces/Email/IBackInStockEmail.js +2 -2
  100. package/dist/Interfaces/Email/IContactEmail.d.ts +20 -20
  101. package/dist/Interfaces/Email/IContactEmail.js +2 -2
  102. package/dist/Interfaces/Email/ICustomerBookingAdminEmail.d.ts +15 -15
  103. package/dist/Interfaces/Email/ICustomerBookingAdminEmail.js +2 -2
  104. package/dist/Interfaces/Email/ICustomerBookingEmail.d.ts +14 -14
  105. package/dist/Interfaces/Email/ICustomerBookingEmail.js +2 -2
  106. package/dist/Interfaces/Email/IEmail.d.ts +20 -20
  107. package/dist/Interfaces/Email/IEmail.js +69 -69
  108. package/dist/Interfaces/Email/IOrderConfirmationEmail.d.ts +47 -47
  109. package/dist/Interfaces/Email/IOrderConfirmationEmail.js +2 -2
  110. package/dist/Interfaces/Email/IPasswordResetEmail.d.ts +17 -17
  111. package/dist/Interfaces/Email/IPasswordResetEmail.js +2 -2
  112. package/dist/Interfaces/Email/IPhotoShootEmail.d.ts +14 -14
  113. package/dist/Interfaces/Email/IPhotoShootEmail.js +2 -2
  114. package/dist/Interfaces/Email/IPickupConfirmation.d.ts +23 -23
  115. package/dist/Interfaces/Email/IPickupConfirmation.js +2 -2
  116. package/dist/Interfaces/Email/IShippingConfirmation.d.ts +23 -23
  117. package/dist/Interfaces/Email/IShippingConfirmation.js +2 -2
  118. package/dist/Interfaces/Email/IWelcomeEmail.d.ts +19 -19
  119. package/dist/Interfaces/Email/IWelcomeEmail.js +2 -2
  120. package/dist/Interfaces/ExportSchema/index.d.ts +7 -7
  121. package/dist/Interfaces/ExportSchema/index.js +2 -2
  122. package/dist/Interfaces/ExternalService/BaseExternalService.d.ts +12 -12
  123. package/dist/Interfaces/ExternalService/BaseExternalService.js +2 -2
  124. package/dist/Interfaces/ExternalService/index.d.ts +9 -9
  125. package/dist/Interfaces/ExternalService/index.js +2 -2
  126. package/dist/Interfaces/FirstOrderTracking/index.d.ts +5 -5
  127. package/dist/Interfaces/FirstOrderTracking/index.js +2 -2
  128. package/dist/Interfaces/G2/index.d.ts +556 -556
  129. package/dist/Interfaces/G2/index.js +36 -36
  130. package/dist/Interfaces/Indexed/Product/IIndexedLastSavedProduct.d.ts +20 -20
  131. package/dist/Interfaces/Indexed/Product/IIndexedLastSavedProduct.js +2 -2
  132. package/dist/Interfaces/Indexed/Product/index.d.ts +94 -94
  133. package/dist/Interfaces/Indexed/Product/index.js +287 -287
  134. package/dist/Interfaces/Inventory/index.d.ts +19 -19
  135. package/dist/Interfaces/Inventory/index.js +8 -8
  136. package/dist/Interfaces/Invoice/index.d.ts +4 -4
  137. package/dist/Interfaces/Invoice/index.js +2 -2
  138. package/dist/Interfaces/MarketplacePublication/MarketplaceOrderData.d.ts +3 -3
  139. package/dist/Interfaces/MarketplacePublication/MarketplaceOrderData.js +2 -2
  140. package/dist/Interfaces/MarketplacePublication/index.d.ts +23 -23
  141. package/dist/Interfaces/MarketplacePublication/index.js +33 -33
  142. package/dist/Interfaces/Operations/ICreatedBy.d.ts +6 -6
  143. package/dist/Interfaces/Operations/ICreatedBy.js +2 -2
  144. package/dist/Interfaces/Operations/IUpdate.d.ts +5 -5
  145. package/dist/Interfaces/Operations/IUpdate.js +2 -2
  146. package/dist/Interfaces/Order/index.d.ts +4 -4
  147. package/dist/Interfaces/Order/index.js +2 -2
  148. package/dist/Interfaces/Org/IRelUser.d.ts +9 -9
  149. package/dist/Interfaces/Org/IRelUser.js +2 -2
  150. package/dist/Interfaces/Org/index.d.ts +29 -29
  151. package/dist/Interfaces/Org/index.js +12 -12
  152. package/dist/Interfaces/Payment/index.d.ts +13 -13
  153. package/dist/Interfaces/Payment/index.js +2 -2
  154. package/dist/Interfaces/Product/IAttributeFamily.d.ts +6 -6
  155. package/dist/Interfaces/Product/IAttributeFamily.js +2 -2
  156. package/dist/Interfaces/Product/IImportProduct.d.ts +42 -42
  157. package/dist/Interfaces/Product/IImportProduct.js +971 -971
  158. package/dist/Interfaces/Product/IInventoryItem.d.ts +84 -84
  159. package/dist/Interfaces/Product/IInventoryItem.js +36 -36
  160. package/dist/Interfaces/Product/IPricing.d.ts +177 -177
  161. package/dist/Interfaces/Product/IPricing.js +174 -174
  162. package/dist/Interfaces/Product/index.d.ts +121 -121
  163. package/dist/Interfaces/Product/index.js +56 -56
  164. package/dist/Interfaces/ProductAttribute/index.d.ts +11 -11
  165. package/dist/Interfaces/ProductAttribute/index.js +2 -2
  166. package/dist/Interfaces/PromiseToPurchase/BankType.d.ts +41 -41
  167. package/dist/Interfaces/PromiseToPurchase/BankType.js +42 -42
  168. package/dist/Interfaces/PromiseToPurchase/IIndexedBankUsed.d.ts +33 -33
  169. package/dist/Interfaces/PromiseToPurchase/IIndexedBankUsed.js +15 -15
  170. package/dist/Interfaces/PromiseToPurchase/IIndexedCustomerPromiseToPurchase.d.ts +19 -19
  171. package/dist/Interfaces/PromiseToPurchase/IIndexedCustomerPromiseToPurchase.js +2 -2
  172. package/dist/Interfaces/PromiseToPurchase/index.d.ts +50 -50
  173. package/dist/Interfaces/PromiseToPurchase/index.js +13 -13
  174. package/dist/Interfaces/PurchaseOrder/index.d.ts +17 -17
  175. package/dist/Interfaces/PurchaseOrder/index.js +2 -2
  176. package/dist/Interfaces/Query/IBrandQueryOptions.d.ts +11 -11
  177. package/dist/Interfaces/Query/IBrandQueryOptions.js +2 -2
  178. package/dist/Interfaces/Query/ICategoryQueryOptions.d.ts +11 -11
  179. package/dist/Interfaces/Query/ICategoryQueryOptions.js +2 -2
  180. package/dist/Interfaces/Query/IProductQueryOptions.d.ts +16 -16
  181. package/dist/Interfaces/Query/IProductQueryOptions.js +2 -2
  182. package/dist/Interfaces/Quote/index.d.ts +5 -5
  183. package/dist/Interfaces/Quote/index.js +2 -2
  184. package/dist/Interfaces/Refunds/index.d.ts +106 -106
  185. package/dist/Interfaces/Refunds/index.js +2 -2
  186. package/dist/Interfaces/Rules/IDiscountRule.d.ts +137 -137
  187. package/dist/Interfaces/Rules/IDiscountRule.js +107 -107
  188. package/dist/Interfaces/Schedule/index.d.ts +47 -46
  189. package/dist/Interfaces/Schedule/index.js +2 -2
  190. package/dist/Interfaces/Services/IAddServiceResponse.d.ts +4 -4
  191. package/dist/Interfaces/Services/IAddServiceResponse.js +2 -2
  192. package/dist/Interfaces/Services/IService.d.ts +12 -12
  193. package/dist/Interfaces/Services/IService.js +2 -2
  194. package/dist/Interfaces/Services/IServiceSecret.d.ts +8 -8
  195. package/dist/Interfaces/Services/IServiceSecret.js +2 -2
  196. package/dist/Interfaces/Shipping/Shipstation/carriers.d.ts +10 -10
  197. package/dist/Interfaces/Shipping/Shipstation/carriers.js +2 -2
  198. package/dist/Interfaces/Shipping/Shipstation/order.d.ts +227 -227
  199. package/dist/Interfaces/Shipping/Shipstation/order.js +2 -2
  200. package/dist/Interfaces/Shipping/Shipstation/quote.d.ts +31 -31
  201. package/dist/Interfaces/Shipping/Shipstation/quote.js +2 -2
  202. package/dist/Interfaces/Shipping/Shiptime/order.d.ts +54 -54
  203. package/dist/Interfaces/Shipping/Shiptime/order.js +48 -48
  204. package/dist/Interfaces/Shipping/Shiptime/quote.d.ts +111 -111
  205. package/dist/Interfaces/Shipping/Shiptime/quote.js +2 -2
  206. package/dist/Interfaces/Slider/GR.d.ts +130 -130
  207. package/dist/Interfaces/Slider/GR.js +271 -271
  208. package/dist/Interfaces/Slider/index.d.ts +14 -14
  209. package/dist/Interfaces/Slider/index.js +2 -2
  210. package/dist/Interfaces/Space/IMember.d.ts +16 -16
  211. package/dist/Interfaces/Space/IMember.js +9 -9
  212. package/dist/Interfaces/Space/index.d.ts +403 -387
  213. package/dist/Interfaces/Space/index.js +139 -123
  214. package/dist/Interfaces/Space/index.js.map +1 -1
  215. package/dist/Interfaces/Specials/gr.d.ts +61 -61
  216. package/dist/Interfaces/Specials/gr.js +2 -2
  217. package/dist/Interfaces/StockNotification/index.d.ts +7 -7
  218. package/dist/Interfaces/StockNotification/index.js +2 -2
  219. package/dist/Interfaces/Store/index.d.ts +62 -62
  220. package/dist/Interfaces/Store/index.js +27 -27
  221. package/dist/Interfaces/Supplier/ICommand.d.ts +11 -11
  222. package/dist/Interfaces/Supplier/ICommand.js +2 -2
  223. package/dist/Interfaces/Supplier/index.d.ts +36 -36
  224. package/dist/Interfaces/Supplier/index.js +24 -24
  225. package/dist/Interfaces/Tag/index.d.ts +18 -18
  226. package/dist/Interfaces/Tag/index.js +2 -2
  227. package/dist/Interfaces/Tax/index.d.ts +12 -12
  228. package/dist/Interfaces/Tax/index.js +2 -2
  229. package/dist/Interfaces/TransferRequest/index.d.ts +91 -59
  230. package/dist/Interfaces/TransferRequest/index.js +38 -31
  231. package/dist/Interfaces/TransferRequest/index.js.map +1 -1
  232. package/dist/Interfaces/Translation/index.d.ts +8 -4
  233. package/dist/Interfaces/Translation/index.js +5 -2
  234. package/dist/Interfaces/Translation/index.js.map +1 -1
  235. package/dist/Interfaces/Update/index.d.ts +10 -10
  236. package/dist/Interfaces/Update/index.js +2 -2
  237. package/dist/Interfaces/User/IUser.d.ts +65 -65
  238. package/dist/Interfaces/User/IUser.js +8 -8
  239. package/dist/Interfaces/Version/index.d.ts +11 -11
  240. package/dist/Interfaces/Version/index.js +2 -2
  241. package/dist/Interfaces/Wishlist/index.d.ts +7 -7
  242. package/dist/Interfaces/Wishlist/index.js +2 -2
  243. package/dist/constants/Interfaces/IBaseApi.d.ts +15 -15
  244. package/dist/constants/Interfaces/IBaseApi.js +2 -2
  245. package/dist/constants/Interfaces/IEndpointResult.d.ts +9 -9
  246. package/dist/constants/Interfaces/IEndpointResult.js +2 -2
  247. package/dist/constants/enums.d.ts +6 -6
  248. package/dist/constants/enums.js +10 -10
  249. package/dist/constants/version.d.ts +2 -2
  250. package/dist/constants/version.js +5 -5
  251. package/dist/index.d.ts +32 -32
  252. package/dist/index.js +416 -416
  253. package/dist/lib/Attribute/index.d.ts +14 -14
  254. package/dist/lib/Attribute/index.js +248 -248
  255. package/dist/lib/BGJob/index.d.ts +9 -9
  256. package/dist/lib/BGJob/index.js +376 -376
  257. package/dist/lib/BackgroundWorker/index.d.ts +34 -34
  258. package/dist/lib/BackgroundWorker/index.js +72 -72
  259. package/dist/lib/Blog/BlogArticle.d.ts +5 -5
  260. package/dist/lib/Blog/BlogArticle.js +28 -28
  261. package/dist/lib/Blog/BlogAuthor.d.ts +5 -5
  262. package/dist/lib/Blog/BlogAuthor.js +28 -28
  263. package/dist/lib/Blog/BlogCategory.d.ts +5 -5
  264. package/dist/lib/Blog/BlogCategory.js +28 -28
  265. package/dist/lib/Blog/BlogKeyword.d.ts +5 -5
  266. package/dist/lib/Blog/BlogKeyword.js +28 -28
  267. package/dist/lib/Booking/index.d.ts +65 -65
  268. package/dist/lib/Booking/index.js +839 -839
  269. package/dist/lib/Brand/index.d.ts +17 -17
  270. package/dist/lib/Brand/index.js +275 -275
  271. package/dist/lib/Cart/index.d.ts +195 -186
  272. package/dist/lib/Cart/index.js +4120 -3982
  273. package/dist/lib/Cart/index.js.map +1 -1
  274. package/dist/lib/Catalogue/index.d.ts +9 -9
  275. package/dist/lib/Catalogue/index.js +207 -207
  276. package/dist/lib/Category/index.d.ts +26 -26
  277. package/dist/lib/Category/index.js +361 -361
  278. package/dist/lib/Class/index.d.ts +12 -12
  279. package/dist/lib/Class/index.js +159 -159
  280. package/dist/lib/Consent/index.d.ts +4 -4
  281. package/dist/lib/Consent/index.js +79 -79
  282. package/dist/lib/Customer/index.d.ts +10 -10
  283. package/dist/lib/Customer/index.js +147 -147
  284. package/dist/lib/Declination/index.d.ts +9 -9
  285. package/dist/lib/Declination/index.js +84 -84
  286. package/dist/lib/Discount/index.d.ts +18 -18
  287. package/dist/lib/Discount/index.js +759 -759
  288. package/dist/lib/ElasticSearch/index.d.ts +8 -8
  289. package/dist/lib/ElasticSearch/index.js +101 -101
  290. package/dist/lib/Email/AbandonedCartEmail.d.ts +8 -8
  291. package/dist/lib/Email/AbandonedCartEmail.js +78 -78
  292. package/dist/lib/Email/AccountConfirmationEmail.d.ts +11 -11
  293. package/dist/lib/Email/AccountConfirmationEmail.js +95 -95
  294. package/dist/lib/Email/AdminOrderConfirmationEmail.d.ts +8 -8
  295. package/dist/lib/Email/AdminOrderConfirmationEmail.js +78 -78
  296. package/dist/lib/Email/ApplicationEmail.d.ts +8 -8
  297. package/dist/lib/Email/ApplicationEmail.js +78 -78
  298. package/dist/lib/Email/BackInStockEmail.d.ts +8 -8
  299. package/dist/lib/Email/BackInStockEmail.js +78 -78
  300. package/dist/lib/Email/ContactEmail.d.ts +8 -8
  301. package/dist/lib/Email/ContactEmail.js +78 -78
  302. package/dist/lib/Email/CustomerBookingAdminEmail.d.ts +8 -8
  303. package/dist/lib/Email/CustomerBookingAdminEmail.js +78 -78
  304. package/dist/lib/Email/CustomerBookingEmail.d.ts +8 -8
  305. package/dist/lib/Email/CustomerBookingEmail.js +78 -78
  306. package/dist/lib/Email/OrderConfirmationEmail.d.ts +8 -8
  307. package/dist/lib/Email/OrderConfirmationEmail.js +79 -78
  308. package/dist/lib/Email/OrderConfirmationEmail.js.map +1 -1
  309. package/dist/lib/Email/OrderDenounciationEmail.d.ts +8 -8
  310. package/dist/lib/Email/OrderDenounciationEmail.js +78 -78
  311. package/dist/lib/Email/OrderSampleEmail.d.ts +8 -8
  312. package/dist/lib/Email/OrderSampleEmail.js +78 -78
  313. package/dist/lib/Email/OtherTypeEmails.d.ts +8 -8
  314. package/dist/lib/Email/OtherTypeEmails.js +90 -90
  315. package/dist/lib/Email/PasswordResetEmail.d.ts +8 -8
  316. package/dist/lib/Email/PasswordResetEmail.js +78 -78
  317. package/dist/lib/Email/PhotoShootEmail.d.ts +8 -8
  318. package/dist/lib/Email/PhotoShootEmail.js +78 -78
  319. package/dist/lib/Email/PickUpConfirmation.d.ts +8 -8
  320. package/dist/lib/Email/PickUpConfirmation.js +78 -78
  321. package/dist/lib/Email/ShippingConfirmation.d.ts +8 -8
  322. package/dist/lib/Email/ShippingConfirmation.js +78 -78
  323. package/dist/lib/Email/WelcomeEmail.d.ts +8 -8
  324. package/dist/lib/Email/WelcomeEmail.js +78 -78
  325. package/dist/lib/Email/index.d.ts +8 -8
  326. package/dist/lib/Email/index.js +82 -82
  327. package/dist/lib/ExternalService/Ebay.d.ts +62 -62
  328. package/dist/lib/ExternalService/Ebay.js +184 -184
  329. package/dist/lib/ExternalService/index.d.ts +5 -5
  330. package/dist/lib/ExternalService/index.js +28 -28
  331. package/dist/lib/FirstOrderTracking/index.d.ts +5 -5
  332. package/dist/lib/FirstOrderTracking/index.js +28 -28
  333. package/dist/lib/Indexed/IndexedCart.d.ts +13 -13
  334. package/dist/lib/Indexed/IndexedCart.js +194 -194
  335. package/dist/lib/Indexed/Product.d.ts +17 -17
  336. package/dist/lib/Indexed/Product.js +116 -116
  337. package/dist/lib/Inventory/index.d.ts +48 -32
  338. package/dist/lib/Inventory/index.js +629 -579
  339. package/dist/lib/Inventory/index.js.map +1 -1
  340. package/dist/lib/Invoice/index.d.ts +5 -5
  341. package/dist/lib/Invoice/index.js +28 -28
  342. package/dist/lib/MarketplacePublication/index.d.ts +9 -9
  343. package/dist/lib/MarketplacePublication/index.js +220 -220
  344. package/dist/lib/MarketplacePublication/index.js.map +1 -1
  345. package/dist/lib/MongoDB/BaseAPI.d.ts +18 -18
  346. package/dist/lib/MongoDB/BaseAPI.js +308 -308
  347. package/dist/lib/Order/index.d.ts +7 -7
  348. package/dist/lib/Order/index.js +62 -62
  349. package/dist/lib/Org/index.d.ts +26 -26
  350. package/dist/lib/Org/index.js +283 -283
  351. package/dist/lib/PandaPay/index.d.ts +16 -16
  352. package/dist/lib/PandaPay/index.js +218 -218
  353. package/dist/lib/Paysafe/index.d.ts +11 -11
  354. package/dist/lib/Paysafe/index.js +100 -100
  355. package/dist/lib/Product/index.d.ts +143 -143
  356. package/dist/lib/Product/index.js +1326 -1326
  357. package/dist/lib/ProductAttribute/index.d.ts +15 -15
  358. package/dist/lib/ProductAttribute/index.js +114 -114
  359. package/dist/lib/PromiseToPurchase/index.d.ts +37 -37
  360. package/dist/lib/PromiseToPurchase/index.js +475 -475
  361. package/dist/lib/PurchaseOrder/index.d.ts +9 -9
  362. package/dist/lib/PurchaseOrder/index.js +72 -72
  363. package/dist/lib/Schedule/index.d.ts +5 -5
  364. package/dist/lib/Schedule/index.js +30 -30
  365. package/dist/lib/Service/Enum/ServiceEnum.d.ts +3 -3
  366. package/dist/lib/Service/Enum/ServiceEnum.js +7 -7
  367. package/dist/lib/Service/index.d.ts +5 -5
  368. package/dist/lib/Service/index.js +57 -57
  369. package/dist/lib/Shipment/index.d.ts +28 -28
  370. package/dist/lib/Shipment/index.js +562 -562
  371. package/dist/lib/Slider/index.d.ts +16 -16
  372. package/dist/lib/Slider/index.js +235 -235
  373. package/dist/lib/Space/index.d.ts +817 -801
  374. package/dist/lib/Space/index.js +6981 -6862
  375. package/dist/lib/Space/index.js.map +1 -1
  376. package/dist/lib/StockNotification/index.d.ts +4 -4
  377. package/dist/lib/StockNotification/index.js +26 -26
  378. package/dist/lib/Store/index.d.ts +5 -5
  379. package/dist/lib/Store/index.js +30 -30
  380. package/dist/lib/Supplier/Command.d.ts +5 -5
  381. package/dist/lib/Supplier/Command.js +28 -28
  382. package/dist/lib/Supplier/index.d.ts +25 -25
  383. package/dist/lib/Supplier/index.js +86 -86
  384. package/dist/lib/Tags/index.d.ts +6 -6
  385. package/dist/lib/Tags/index.js +84 -84
  386. package/dist/lib/Tax/index.d.ts +8 -8
  387. package/dist/lib/Tax/index.js +136 -136
  388. package/dist/lib/TransferRequest/index.d.ts +98 -21
  389. package/dist/lib/TransferRequest/index.js +1149 -302
  390. package/dist/lib/TransferRequest/index.js.map +1 -1
  391. package/dist/lib/Update/index.d.ts +10 -10
  392. package/dist/lib/Update/index.js +71 -71
  393. package/dist/lib/User/index.d.ts +33 -33
  394. package/dist/lib/User/index.js +360 -360
  395. package/dist/lib/Wishlist/index.d.ts +5 -5
  396. package/dist/lib/Wishlist/index.js +28 -28
  397. package/dist/lib/base.d.ts +14 -14
  398. package/dist/lib/base.js +135 -135
  399. package/dist/lib/baseService.d.ts +17 -17
  400. package/dist/lib/baseService.js +113 -113
  401. package/dist/rules/GR/constants/data.d.ts +25 -25
  402. package/dist/rules/GR/constants/data.js +54 -54
  403. package/dist/rules/GR/constants/products.d.ts +8 -8
  404. package/dist/rules/GR/constants/products.js +234 -234
  405. package/dist/rules/GR/interfaces/cart.d.ts +83 -83
  406. package/dist/rules/GR/interfaces/cart.js +51 -51
  407. package/dist/rules/GR/interfaces/data.d.ts +97 -97
  408. package/dist/rules/GR/interfaces/data.js +104 -104
  409. package/dist/rules/GR/interfaces/products.d.ts +61 -61
  410. package/dist/rules/GR/interfaces/products.js +10 -10
  411. package/dist/rules/GR/utils/cart.d.ts +53 -53
  412. package/dist/rules/GR/utils/cart.js +767 -767
  413. package/dist/rules/GR/utils/data.d.ts +3 -3
  414. package/dist/rules/GR/utils/data.js +25 -25
  415. package/dist/rules/GR/utils/expedition.d.ts +65 -65
  416. package/dist/rules/GR/utils/expedition.js +1676 -1676
  417. package/dist/rules/GR/utils/expedition.js.map +1 -1
  418. package/dist/rules/GR/utils/g2.d.ts +174 -174
  419. package/dist/rules/GR/utils/g2.js +1025 -1025
  420. package/dist/rules/GR/utils/invoices.d.ts +16 -16
  421. package/dist/rules/GR/utils/invoices.js +181 -181
  422. package/dist/rules/GR/utils/products.d.ts +103 -96
  423. package/dist/rules/GR/utils/products.js +1101 -1085
  424. package/dist/rules/GR/utils/products.js.map +1 -1
  425. package/dist/rules/GR/utils/upsells.d.ts +75 -75
  426. package/dist/rules/GR/utils/upsells.js +278 -278
  427. package/dist/rules/GR/utils/upsells.js.map +1 -1
  428. package/dist/services/database/BaseProvider.d.ts +29 -29
  429. package/dist/services/database/BaseProvider.js +77 -77
  430. package/dist/services/database/BatchUtils.d.ts +14 -14
  431. package/dist/services/database/BatchUtils.js +88 -88
  432. package/dist/services/database/Config.d.ts +2 -2
  433. package/dist/services/database/Config.js +5 -5
  434. package/dist/services/database/DatabaseService.d.ts +41 -41
  435. package/dist/services/database/DatabaseService.js +297 -297
  436. package/dist/services/database/DatabaseService.js.map +1 -1
  437. package/dist/services/database/FirebaseProvider.d.ts +17 -17
  438. package/dist/services/database/FirebaseProvider.js +312 -312
  439. package/dist/services/database/NotFirebaseProvider.d.ts +35 -35
  440. package/dist/services/database/NotFirebaseProvider.js +380 -380
  441. package/dist/services/g2/G2OrderSlip.d.ts +42 -42
  442. package/dist/services/g2/G2OrderSlip.js +264 -264
  443. package/dist/services/g2/utils.d.ts +9 -9
  444. package/dist/services/g2/utils.js +919 -919
  445. package/dist/services/logs/index.d.ts +20 -20
  446. package/dist/services/logs/index.js +126 -126
  447. package/dist/utils/algolia.d.ts +6 -6
  448. package/dist/utils/algolia.js +22 -22
  449. package/dist/utils/anonymisation.d.ts +30 -30
  450. package/dist/utils/anonymisation.js +264 -264
  451. package/dist/utils/array.d.ts +5 -5
  452. package/dist/utils/array.js +36 -36
  453. package/dist/utils/aws.d.ts +14 -14
  454. package/dist/utils/aws.js +220 -220
  455. package/dist/utils/booking.d.ts +22 -22
  456. package/dist/utils/booking.js +175 -175
  457. package/dist/utils/cart.d.ts +88 -69
  458. package/dist/utils/cart.js +767 -656
  459. package/dist/utils/cart.js.map +1 -1
  460. package/dist/utils/cmv.d.ts +10 -10
  461. package/dist/utils/cmv.js +107 -107
  462. package/dist/utils/console.d.ts +6 -6
  463. package/dist/utils/console.js +121 -121
  464. package/dist/utils/context.d.ts +20 -19
  465. package/dist/utils/context.js +59 -41
  466. package/dist/utils/context.js.map +1 -1
  467. package/dist/utils/currency.d.ts +6 -6
  468. package/dist/utils/currency.js +62 -62
  469. package/dist/utils/data.d.ts +31 -31
  470. package/dist/utils/data.js +300 -300
  471. package/dist/utils/date.d.ts +1 -1
  472. package/dist/utils/date.js +16 -16
  473. package/dist/utils/dimensions.d.ts +3 -3
  474. package/dist/utils/dimensions.js +18 -18
  475. package/dist/utils/discount.d.ts +46 -46
  476. package/dist/utils/discount.js +981 -981
  477. package/dist/utils/errors.d.ts +113 -113
  478. package/dist/utils/errors.js +113 -113
  479. package/dist/utils/file-admin.d.ts +8 -8
  480. package/dist/utils/file-admin.js +94 -94
  481. package/dist/utils/file.d.ts +38 -38
  482. package/dist/utils/file.js +318 -318
  483. package/dist/utils/firebase-admin.d.ts +2 -2
  484. package/dist/utils/firebase-admin.js +118 -118
  485. package/dist/utils/firebase.d.ts +41 -41
  486. package/dist/utils/firebase.js +220 -220
  487. package/dist/utils/import.d.ts +1 -1
  488. package/dist/utils/import.js +81 -81
  489. package/dist/utils/inventories.d.ts +35 -34
  490. package/dist/utils/inventories.js +445 -432
  491. package/dist/utils/inventories.js.map +1 -1
  492. package/dist/utils/locale.d.ts +13 -13
  493. package/dist/utils/locale.js +67 -67
  494. package/dist/utils/mailchimp.d.ts +58 -58
  495. package/dist/utils/mailchimp.js +735 -735
  496. package/dist/utils/mongodb.d.ts +1 -1
  497. package/dist/utils/mongodb.js +68 -68
  498. package/dist/utils/object.d.ts +12 -12
  499. package/dist/utils/object.js +129 -129
  500. package/dist/utils/payment.d.ts +10 -10
  501. package/dist/utils/payment.js +25 -25
  502. package/dist/utils/products.d.ts +32 -26
  503. package/dist/utils/products.js +307 -301
  504. package/dist/utils/products.js.map +1 -1
  505. package/dist/utils/promiseToPurchase.d.ts +56 -56
  506. package/dist/utils/promiseToPurchase.js +228 -228
  507. package/dist/utils/prosprsearch.d.ts +21 -21
  508. package/dist/utils/prosprsearch.js +276 -276
  509. package/dist/utils/refunds.d.ts +2 -2
  510. package/dist/utils/refunds.js +21 -21
  511. package/dist/utils/sdc.d.ts +10 -10
  512. package/dist/utils/sdc.js +1308 -1308
  513. package/dist/utils/searchIndexes.d.ts +21 -21
  514. package/dist/utils/searchIndexes.js +318 -318
  515. package/dist/utils/services.d.ts +40 -40
  516. package/dist/utils/services.js +407 -407
  517. package/dist/utils/shipment.d.ts +110 -110
  518. package/dist/utils/shipment.js +410 -410
  519. package/dist/utils/simpletexting.d.ts +2 -2
  520. package/dist/utils/simpletexting.js +91 -91
  521. package/dist/utils/sliders.d.ts +4 -4
  522. package/dist/utils/sliders.js +70 -70
  523. package/dist/utils/string.d.ts +16 -16
  524. package/dist/utils/string.js +194 -194
  525. package/dist/utils/tools.d.ts +1 -1
  526. package/dist/utils/tools.js +49 -49
  527. package/dist/utils/transferRequests.d.ts +19 -16
  528. package/dist/utils/transferRequests.js +44 -33
  529. package/dist/utils/transferRequests.js.map +1 -1
  530. package/dist/utils/update.d.ts +7 -7
  531. package/dist/utils/update.js +245 -245
  532. package/dist/utils/weight.d.ts +3 -3
  533. package/dist/utils/weight.js +18 -18
  534. package/dist/utils/zones.d.ts +11 -11
  535. package/dist/utils/zones.js +313 -313
  536. package/package.json +110 -110
  537. package/publish.sh +143 -143
  538. package/readme.md +182 -182
  539. package/dist/lib/Queue/index.d.ts +0 -40
  540. package/dist/lib/Queue/index.js +0 -255
  541. package/dist/lib/Queue/index.js.map +0 -1
@@ -1,433 +1,446 @@
1
- "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- var __importDefault = (this && this.__importDefault) || function (mod) {
14
- return (mod && mod.__esModule) ? mod : { "default": mod };
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.checkIfStoreHasInventory = exports.checkIfItemIsUnavailableForStore = exports.getAvailableSellUnitQuantity = exports.convertQtyFromSellUnit = exports.getQty = exports.getInventoryUnitQuantity = exports.getGroupedByBetonProducts = exports.getAttrStringForItem = exports.getAttributesToShow = exports.getUnitShortDict = exports.unitShortDict = exports.unitDict = exports.orderByAccessoires = exports.orderByBeton = exports.checkWebInventoryForType = void 0;
18
- var flatten_1 = __importDefault(require("lodash/flatten"));
19
- var groupBy_1 = __importDefault(require("lodash/groupBy"));
20
- var orderBy_1 = __importDefault(require("lodash/orderBy"));
21
- var sumBy_1 = __importDefault(require("lodash/sumBy"));
22
- var toNumber_1 = __importDefault(require("lodash/toNumber"));
23
- var uniq_1 = __importDefault(require("lodash/uniq"));
24
- var IInventoryItem_1 = require("../Interfaces/Product/IInventoryItem");
25
- var data_1 = require("../rules/GR/interfaces/data");
26
- var locale_1 = require("./locale");
27
- var products_1 = require("../rules/GR/utils/products");
28
- var round_1 = __importDefault(require("lodash/round"));
29
- var checkWebInventoryForType = function (inventories, currentWebInventory, type) {
30
- var _a;
31
- var canSellOnline = inventories.filter(function (i) { return i.can_sell_online; });
32
- if (!!!canSellOnline.length)
33
- return;
34
- return __assign(__assign({}, (!!currentWebInventory ? currentWebInventory : (0, IInventoryItem_1.getDefaultInventoryQuantities)())), (_a = {}, _a[type] = (0, sumBy_1.default)(canSellOnline, function (i) { return (0, toNumber_1.default)(i.qty[type] || 0); }), _a));
35
- };
36
- exports.checkWebInventoryForType = checkWebInventoryForType;
37
- exports.orderByBeton = [
38
- 'NkLD1rmnGiFZpJA1w6js.moderne',
39
- 'NkLD1rmnGiFZpJA1w6js.traditionnel',
40
- 'NkLD1rmnGiFZpJA1w6js.permeable',
41
- 'oWzANqTldrV1McGzBAU2.moderne',
42
- 'oWzANqTldrV1McGzBAU2.traditionnel',
43
- '9jgHOxtMVSC1QTs1d9NX',
44
- 'IbCDQBYaPmC125hBlr2j',
45
- 'ptd8lA1kUTsWdyufNGjh',
46
- 'mVjg7x05H1hizbet2xsv',
47
- 'xOQPwedYjSYavS0FJlaE',
48
- 'axEbPjUTnk64S5kRlfh6',
49
- 'WS0n2jiEtoYMSId78GCZ',
50
- '87HSMsPuUBm5XEUfreu1',
51
- 'j0aJi1eyJwLabcpaPn6a',
52
- 'Q1rCiYAOvadUXAITj47i'
53
- ];
54
- exports.orderByAccessoires = [
55
- 'KrjSKiXHXa4MrRJIopJO',
56
- '3uA7YFYwBVRYS8382JKB',
57
- 'shmXowMw563z07Gr1k3d',
58
- 'YZa62rG0LOnC9WKG8BRE',
59
- 'OkeEqkF6QLNoFbzCgpdJ',
60
- 'k2XN5GeN4PRxtbpj4BFk',
61
- 'uDyyPN1IZGhivbV2hXiy',
62
- 'G0xkLTH1XbFBgGGRm6Of',
63
- 'GPFBURGlRFtAzaj5v6vr',
64
- 'QXbBm82HL3vRc7GBjPYQ',
65
- 'XijBekSz3MPAzACFSKUk',
66
- 'meLuoK1SVeqUoo0bWvdz'
67
- ];
68
- exports.unitDict = {
69
- p2: { fr: 'Pieds Carrés', en: 'Square Feet' },
70
- pal: { fr: 'Palette', en: 'Pallet' },
71
- rg: { fr: 'Rangs', en: 'Row' },
72
- ensemble: { fr: 'Ensemble', en: 'Kit' },
73
- pl: { fr: 'Pieds linéaires', en: 'Linear feet' },
74
- mcx: { fr: 'Morceaux', en: 'Pieces' },
75
- unite: { fr: 'Unités', en: 'Units' },
76
- sac: { fr: 'Sac', en: 'Bag' },
77
- vg3: { fr: 'Verge cube', en: 'Cubic yard' },
78
- demipalsm: { fr: 'Demi-palette (petite)', en: 'Half-pallet (small)' },
79
- demipallg: { fr: 'Demi-palette (lg)', en: 'Half-pallet (lg)' },
80
- tonne: { fr: 'Tonne', en: 'Ton' },
81
- roul: { fr: 'Rouleau', en: 'Roll' },
82
- bte: { fr: 'Boîte', en: 'Box' },
83
- pqt: { fr: 'Paquet', en: 'Bundle' },
84
- '': { fr: 'Unités', en: 'Units' }
85
- };
86
- exports.unitShortDict = {
87
- p2: { fr: 'pi²', en: 'pi²' },
88
- pal: { fr: 'pal.', en: 'pal.' },
89
- rg: { fr: 'rg', en: 'row' },
90
- ensemble: { fr: 'ens.', en: 'kit' },
91
- pl: { fr: 'pL', en: 'linear feet' },
92
- mcx: { fr: 'mcx', en: 'piece' },
93
- unite: { fr: 'unité', en: 'unit' },
94
- sac: { fr: 'sac', en: 'bag' },
95
- vg3: { fr: 'vg³', en: 'yd³' },
96
- demipalsm: { fr: 'Demi-pal. (petite)', en: 'Half-pal. (sm)' },
97
- demipallg: { fr: 'Demi-pal. (lg)', en: 'Half-pal. (lg)' },
98
- tonne: { fr: 'tonne', en: 'ton' },
99
- roul: { fr: 'roul.', en: 'roll' },
100
- bte: { fr: 'bte', en: 'box' },
101
- pqt: { fr: 'pqt', en: 'bundle' },
102
- '': { fr: 'unité', en: 'unit' }
103
- };
104
- var getUnitShortDict = function (slug, returnUnitForSlugs) {
105
- try {
106
- if (!!returnUnitForSlugs && !!returnUnitForSlugs.includes(slug)) {
107
- return exports.unitShortDict['unite'];
108
- }
109
- var res = exports.unitShortDict[slug];
110
- if (!!!res)
111
- return { fr: slug, en: slug };
112
- return res;
113
- }
114
- catch (err) {
115
- console.log(err);
116
- return { fr: slug, en: slug };
117
- }
118
- };
119
- exports.getUnitShortDict = getUnitShortDict;
120
- var getOrganizedIndexedDecliAttributes = function (decli) {
121
- return (0, flatten_1.default)(Object.entries(decli.attributes).map(function (attrArr) {
122
- var newArray = !!!attrArr[1] ? [] : attrArr[1].map(function (aValue) { return "".concat(attrArr[0], ".").concat(aValue); });
123
- return (0, flatten_1.default)(newArray);
124
- }));
125
- };
126
- var getAttributesToShow = function (currentItems) {
127
- var allAttributesPerItem = currentItems.map(function (item) {
128
- return !!Array.isArray(item.attributes) ? item.attributes : getOrganizedIndexedDecliAttributes(item);
129
- });
130
- var allAttributes = (0, uniq_1.default)((0, flatten_1.default)(allAttributesPerItem));
131
- var group = (0, groupBy_1.default)(allAttributes, function (a) { return a.split('.')[0]; });
132
- var parentAttributesToShow = Object.entries(group)
133
- .map(function (g) {
134
- var attrToShow = undefined;
135
- if ([
136
- data_1.AttributesIdEnumGR.AVAILABILITY,
137
- data_1.AttributesIdEnumGR.TYPE,
138
- data_1.AttributesIdEnumGR.MARKETING,
139
- data_1.AttributesIdEnumGR.COLOR_GROUP,
140
- data_1.AttributesIdEnumGR.VENTE_MIXTE,
141
- data_1.AttributesIdEnumGR.TYPE_UTILISATION_BETON
142
- ].includes(g[0])) {
143
- return attrToShow;
144
- }
145
- if (g[1].length > 1) {
146
- var allItemsContainAllAttr = allAttributesPerItem.every(function (itemAttributes) {
147
- var sameAttr = itemAttributes.filter(function (attr) { return attr.includes(g[0]); });
148
- if (!!!sameAttr)
149
- return false;
150
- return sameAttr.length === g[1].length && sameAttr.every(function (attr) { return g[1].includes(attr); });
151
- });
152
- if (!!!allItemsContainAllAttr) {
153
- attrToShow = g[0];
154
- }
155
- }
156
- return attrToShow;
157
- })
158
- .filter(function (v) { return !!v; });
159
- return parentAttributesToShow;
160
- };
161
- exports.getAttributesToShow = getAttributesToShow;
162
- var attrToShowInItem = function (item, attributesToShow) {
163
- var itemAttributes = Array.isArray(item.attributes)
164
- ? item.attributes
165
- : getOrganizedIndexedDecliAttributes(item);
166
- return itemAttributes
167
- .map(function (a) {
168
- if (attributesToShow.find(function (attr_id) { return attr_id === a.split('.')[0]; })) {
169
- return a;
170
- }
171
- return;
172
- })
173
- .filter(function (v) { return !!v; });
174
- };
175
- var attrString = function (attrToShow, attributes, locale) {
176
- var valuesArray = (0, orderBy_1.default)(attrToShow, function (a) {
177
- return a.split('.')[0] === 'Sy9GlMjUcqUkvKeqLuSz' ? 'AAA' : a.split('.')[0][0];
178
- }).map(function (attr) {
179
- var attribute = attributes.find(function (a) { return a.id === attr.split('.')[0]; });
180
- if (!!!attribute)
181
- return '';
182
- var attributeValue = attribute.values.find(function (a) { return a.slug === attr.split('.')[1]; });
183
- if (!!!attributeValue)
184
- return '';
185
- return (0, locale_1.getLocaleOfDictionnary)(attributeValue.value, locale);
186
- });
187
- return valuesArray.join(' - ');
188
- };
189
- var getAttrStringForItem = function (inventoryItem, attributesToShow, attributes, locale) {
190
- if (locale === void 0) { locale = 'fr'; }
191
- var attrToShow = attrToShowInItem(inventoryItem, attributesToShow);
192
- var attrStr = attrString(attrToShow, attributes, locale);
193
- return attrStr;
194
- };
195
- exports.getAttrStringForItem = getAttrStringForItem;
196
- var getGroupedByBetonProducts = function (arrBeton, categories) {
197
- return (0, groupBy_1.default)(arrBeton, function (item) {
198
- var categorySlugLvl0 = !!item.categories ? item.categories['lvl0'] : '';
199
- var categorySlugLvl1 = !!item.categories && !!item.categories['lvl1'] ? item.categories['lvl1'].split(' > ')[1] : '';
200
- var categorySlugLvl2 = !!item.categories && !!item.categories['lvl2'] ? item.categories['lvl2'].split(' > ')[2] : '';
201
- var lvl0CategoryId = !!categorySlugLvl0 && categories.some(function (c) { return c.slug === categorySlugLvl0; })
202
- ? categories.find(function (c) { return c.slug === categorySlugLvl0; }).id
203
- : '';
204
- var lvl1CategoryId = !!categorySlugLvl1 && categories.some(function (c) { return c.slug === categorySlugLvl1; })
205
- ? categories.find(function (c) { return c.slug === categorySlugLvl1; }).id
206
- : '';
207
- var lvl2CategoryId = !!categorySlugLvl2 && categories.some(function (c) { return c.slug === categorySlugLvl2; })
208
- ? categories.find(function (c) { return c.slug === categorySlugLvl2; }).id
209
- : '';
210
- var sameCategoryId = !!lvl2CategoryId && !!exports.orderByBeton.some(function (order) { return order.includes(lvl2CategoryId); })
211
- ? lvl2CategoryId
212
- : !!lvl1CategoryId && !!exports.orderByBeton.some(function (order) { return order.includes(lvl1CategoryId); })
213
- ? lvl1CategoryId
214
- : !!lvl0CategoryId && !!exports.orderByBeton.some(function (order) { return order.includes(lvl0CategoryId); })
215
- ? lvl0CategoryId
216
- : '';
217
- var attrDict = Object.entries(item.attributes);
218
- var foundAttr = attrDict.find(function (attr) { return attr[0] === data_1.AttributesIdEnumGR.STYLE; });
219
- var foundSameCat = !!exports.orderByBeton.some(function (order) { return order.includes("".concat(sameCategoryId, ".")); });
220
- var styleAttribute = foundSameCat && foundAttr ? foundAttr[1][0] : '';
221
- return !!!sameCategoryId && !!!styleAttribute
222
- ? 'zzzzzzz'
223
- : "".concat(sameCategoryId).concat(!!styleAttribute ? '.' + styleAttribute : '');
224
- });
225
- };
226
- exports.getGroupedByBetonProducts = getGroupedByBetonProducts;
227
- var getInventoryUnitQuantity = function (other_units, qte, convertTo, roundResult) {
228
- if (convertTo === void 0) { convertTo = 'inventory_unit'; }
229
- if (!!!other_units)
230
- return qte;
231
- var sellUnit = other_units.find(function (unit) { return unit.is_sale_unit; });
232
- if (!!!sellUnit)
233
- return qte;
234
- var fittingUnit = other_units.find(function (unit) { return unit.fitting_unit === 1; });
235
- if (!!!fittingUnit)
236
- return qte;
237
- if (fittingUnit.unit_slug === sellUnit.unit_slug)
238
- return qte;
239
- if (convertTo === 'sale_unit') {
240
- var calculated_1 = qte * (1 / (sellUnit.fitting_unit || 1));
241
- if (!roundResult)
242
- return calculated_1;
243
- return (0, round_1.default)(calculated_1, (0, products_1.productUnitSupportsDecimals)(sellUnit.unit_slug) ? 2 : 0);
244
- }
245
- var calculated = qte * (sellUnit.fitting_unit || 1);
246
- if (!roundResult)
247
- return calculated;
248
- return (0, round_1.default)(calculated, (0, products_1.productUnitSupportsDecimals)(fittingUnit.unit_slug) ? 2 : 0);
249
- };
250
- exports.getInventoryUnitQuantity = getInventoryUnitQuantity;
251
- var getQty = function (other_units, inventoryQuantity, isGrass, showNegativeInventory, returnTrueUnitSlug, log) {
252
- var qtyUnits = {
253
- pal: undefined,
254
- unite: undefined
255
- };
256
- var calculatedUnits = [];
257
- if (!!log)
258
- console.log('qtyUnits at beggining: ', __assign({}, qtyUnits));
259
- var isNegativeQty = inventoryQuantity < 0 && !!showNegativeInventory;
260
- if (!!isNegativeQty)
261
- inventoryQuantity = inventoryQuantity * -1;
262
- if (!!!other_units ||
263
- !!!other_units.length ||
264
- !!other_units
265
- .filter(function (other_unit) { return other_unit.unit_slug !== 'booking'; })
266
- .every(function (other_unit) { return !!!other_unit.fitting_unit; })) {
267
- qtyUnits['unite'] = {
268
- value: inventoryQuantity * (!!isNegativeQty ? -1 : 1),
269
- fitting_unit: 1
270
- };
271
- return qtyUnits;
272
- }
273
- var rest = 0;
274
- var palUnit = other_units.find(function (u) { return u.unit_slug === 'pal'; });
275
- if (palUnit && typeof palUnit.fitting_unit === 'number' && palUnit.fitting_unit !== 0) {
276
- if (!!palUnit.fitting_unit) {
277
- var value = inventoryQuantity / (palUnit.fitting_unit || 1);
278
- qtyUnits['pal'] = {
279
- value: _getQtyValue(value, palUnit.fitting_unit === 1, isNegativeQty),
280
- fitting_unit: palUnit.fitting_unit || 1
281
- };
282
- rest = value < 1 ? inventoryQuantity : Math.ceil(inventoryQuantity % (palUnit.fitting_unit || 1));
283
- if (value > 1 && rest == palUnit.fitting_unit) {
284
- qtyUnits['pal']['value'] = qtyUnits['pal'].value + 1;
285
- rest = 0;
286
- }
287
- calculatedUnits.push('pal');
288
- }
289
- }
290
- else {
291
- rest = inventoryQuantity;
292
- }
293
- var rgUnitToUse = isGrass ? 'roul' : 'rg';
294
- var rgUnit = other_units.find(function (u) { return u.unit_slug === rgUnitToUse; });
295
- if (!!rgUnit && typeof rgUnit.fitting_unit === 'number' && rgUnit.fitting_unit !== 0) {
296
- if (!!rgUnit.fitting_unit) {
297
- var value = rest / (rgUnit.fitting_unit || 1);
298
- qtyUnits[rgUnitToUse] = {
299
- value: _getQtyValue(value, rgUnit.fitting_unit === 1, isNegativeQty),
300
- fitting_unit: rgUnit.fitting_unit || 1
301
- };
302
- rest = value < 1 ? rest : Math.ceil(rest % (rgUnit.fitting_unit || 1)) * (rest > 0 ? 1 : -1);
303
- if (rest == rgUnit.fitting_unit || rest == rgUnit.fitting_unit * -1) {
304
- qtyUnits[rgUnitToUse].value = qtyUnits[rgUnitToUse].value + (isNegativeQty ? -1 : 1);
305
- rest = 0;
306
- }
307
- calculatedUnits.push(rgUnitToUse);
308
- }
309
- }
310
- else if (!!!calculatedUnits.length) {
311
- rest = inventoryQuantity;
312
- }
313
- if (!!log)
314
- console.log('qtyUnits before boxes: ', __assign({}, qtyUnits));
315
- var bteUnit = other_units.find(function (u) { return u.unit_slug === 'bte'; });
316
- if (!!bteUnit && typeof bteUnit.fitting_unit === 'number' && bteUnit.fitting_unit !== 0) {
317
- if (!!bteUnit.fitting_unit) {
318
- var value = rest / (bteUnit.fitting_unit || 1);
319
- qtyUnits['bte'] = {
320
- value: _getQtyValue(value, bteUnit.fitting_unit === 1, isNegativeQty),
321
- fitting_unit: bteUnit.fitting_unit || 1
322
- };
323
- if (!!log)
324
- console.log('qtyUnits after boxes: ', __assign({}, qtyUnits));
325
- rest = value < 1 ? rest : Math.ceil(rest % (bteUnit.fitting_unit || 1)) * (rest > 0 ? 1 : -1);
326
- calculatedUnits.push('bte');
327
- if (!!log)
328
- console.log('rest after boxes: ', rest);
329
- }
330
- }
331
- else if (!!!calculatedUnits.length) {
332
- rest = inventoryQuantity;
333
- }
334
- var pqtUnit = other_units.find(function (u) { return u.unit_slug === 'pqt'; });
335
- if (!!pqtUnit && typeof pqtUnit.fitting_unit === 'number' && pqtUnit.fitting_unit !== 0) {
336
- if (!!pqtUnit.fitting_unit) {
337
- var value = rest / (pqtUnit.fitting_unit || 1);
338
- qtyUnits['pqt'] = {
339
- value: _getQtyValue(value, pqtUnit.fitting_unit === 1, isNegativeQty),
340
- fitting_unit: pqtUnit.fitting_unit || 1
341
- };
342
- rest = value < 1 ? rest : Math.ceil(rest % (pqtUnit.fitting_unit || 1)) * (rest > 0 ? 1 : -1);
343
- calculatedUnits.push('pqt');
344
- }
345
- }
346
- else if (!!!calculatedUnits.length) {
347
- rest = inventoryQuantity;
348
- }
349
- var uniteUnit = other_units.find(function (u) {
350
- return !!isGrass
351
- ? u.fitting_unit === 1 && u.unit_slug === 'sac'
352
- : u.fitting_unit === 1 && !!!['booking', 'bte', 'pal', 'rg', 'pqt'].includes(u.unit_slug);
353
- });
354
- if (!!uniteUnit &&
355
- !!uniteUnit.fitting_unit &&
356
- (!!palUnit ? uniteUnit.fitting_unit !== palUnit.fitting_unit : true) &&
357
- (!!rgUnit ? uniteUnit.fitting_unit !== rgUnit.fitting_unit : true)) {
358
- var unitValue = Math.ceil(rest / (uniteUnit.fitting_unit || 1)) * (!!isNegativeQty ? -1 : 1);
359
- qtyUnits[returnTrueUnitSlug ? uniteUnit.unit_slug : 'unite'] = {
360
- value: unitValue,
361
- fitting_unit: uniteUnit.fitting_unit
362
- };
363
- }
364
- return qtyUnits;
365
- };
366
- exports.getQty = getQty;
367
- var _getQtyValue = function (value, isUnitFittingUnit, isNegativeQty) {
368
- if (value < 1)
369
- return 0;
370
- var roundedValue = !!isUnitFittingUnit ? Math.ceil(value) : Math.floor(value);
371
- return roundedValue * (!!isNegativeQty ? -1 : 1);
372
- };
373
- var convertQtyFromSellUnit = function (allUnits, sellUnitQty, convertToUnitSlug) {
374
- if (!!!allUnits)
375
- return sellUnitQty;
376
- var sellUnit = allUnits.find(function (u) { return !!u.is_sale_unit; });
377
- var convertToUnit = allUnits.find(function (u) { return u.unit_slug === convertToUnitSlug; });
378
- if (!!!sellUnit)
379
- return sellUnitQty;
380
- if (!!!convertToUnit)
381
- return sellUnitQty;
382
- if (sellUnit.unit_slug === convertToUnit.unit_slug)
383
- return sellUnitQty;
384
- return (sellUnitQty * (sellUnit.fitting_unit || 1)) / (convertToUnit.fitting_unit || 1);
385
- };
386
- exports.convertQtyFromSellUnit = convertQtyFromSellUnit;
387
- var getAvailableSellUnitQuantity = function (inventory, currentSucc, other_units, product, roundQty) {
388
- if (roundQty === void 0) { roundQty = true; }
389
- if (!!!currentSucc || !!!other_units)
390
- return { value: '', unit: '' };
391
- var saleUnit = other_units.find(function (u) { return !!u.is_sale_unit; });
392
- var storeInv = inventory.inventories.find(function (i) { return i.store_id === currentSucc; });
393
- if (!!(0, products_1.checkIfProductIsOfType)(product, 'vrac') && !!storeInv) {
394
- var available = !!!storeInv.unavailable_in_store;
395
- return { value: !!available ? 'Disponible' : 'Non-disponible', unit: '' };
396
- }
397
- else {
398
- if (!!inventory.is_infinite_stock || !!product.is_service || !!!storeInv)
399
- return { value: 'Disponible', unit: '' };
400
- var invValue = storeInv.qty.available;
401
- if (invValue < 0)
402
- invValue = 0;
403
- var sellUnitValue = (0, exports.getInventoryUnitQuantity)(other_units, invValue, 'sale_unit');
404
- var convertedValue = void 0;
405
- if (!!roundQty) {
406
- convertedValue = sellUnitValue.toFixed(!!saleUnit && !!(0, products_1.productUnitSupportsDecimals)(saleUnit.unit_slug) ? 2 : 0);
407
- }
408
- else {
409
- convertedValue = sellUnitValue.toString();
410
- }
411
- var unit = (0, products_1.getUnitLabelWithSlug)(!!saleUnit ? saleUnit.unit_slug : 'unite', 'fr', true, ['booking']);
412
- return { value: convertedValue, unit: unit };
413
- }
414
- };
415
- exports.getAvailableSellUnitQuantity = getAvailableSellUnitQuantity;
416
- var checkIfItemIsUnavailableForStore = function (qte, product, other_units, inventoryItem, storeID) {
417
- if (!!!inventoryItem ||
418
- !!inventoryItem.is_infinite_stock ||
419
- !!product.is_service ||
420
- !!product.is_sample ||
421
- !!(0, products_1.checkIfProductIsOfType)(product, 'vrac'))
422
- return false;
423
- var availableSellUnitQty = (0, exports.getAvailableSellUnitQuantity)(inventoryItem, storeID, other_units, product, false).value;
424
- if (!!isNaN(parseFloat(availableSellUnitQty)))
425
- return false;
426
- return qte > parseFloat(availableSellUnitQty);
427
- };
428
- exports.checkIfItemIsUnavailableForStore = checkIfItemIsUnavailableForStore;
429
- var checkIfStoreHasInventory = function (store) {
430
- return !store.no_inventory_for_store;
431
- };
432
- exports.checkIfStoreHasInventory = checkIfStoreHasInventory;
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.checkIfStoreHasInventory = exports.checkIfItemIsUnavailableForStore = exports.getAvailableSellUnitQuantity = exports.convertQtyFromSellUnit = exports.getQty = exports.getConvertedUnitQuantity = exports.getGroupedByBetonProducts = exports.getAttrStringForItem = exports.getAttributesToShow = exports.getUnitShortDict = exports.unitShortDict = exports.unitDict = exports.orderByAccessoires = exports.orderByBeton = exports.checkWebInventoryForType = void 0;
18
+ var flatten_1 = __importDefault(require("lodash/flatten"));
19
+ var groupBy_1 = __importDefault(require("lodash/groupBy"));
20
+ var orderBy_1 = __importDefault(require("lodash/orderBy"));
21
+ var sumBy_1 = __importDefault(require("lodash/sumBy"));
22
+ var toNumber_1 = __importDefault(require("lodash/toNumber"));
23
+ var uniq_1 = __importDefault(require("lodash/uniq"));
24
+ var IInventoryItem_1 = require("../Interfaces/Product/IInventoryItem");
25
+ var data_1 = require("../rules/GR/interfaces/data");
26
+ var locale_1 = require("./locale");
27
+ var products_1 = require("../rules/GR/utils/products");
28
+ var round_1 = __importDefault(require("lodash/round"));
29
+ var checkWebInventoryForType = function (inventories, currentWebInventory, type) {
30
+ var _a;
31
+ var canSellOnline = inventories.filter(function (i) { return i.can_sell_online; });
32
+ if (!!!canSellOnline.length)
33
+ return;
34
+ return __assign(__assign({}, (!!currentWebInventory ? currentWebInventory : (0, IInventoryItem_1.getDefaultInventoryQuantities)())), (_a = {}, _a[type] = (0, sumBy_1.default)(canSellOnline, function (i) { return (0, toNumber_1.default)(i.qty[type] || 0); }), _a));
35
+ };
36
+ exports.checkWebInventoryForType = checkWebInventoryForType;
37
+ exports.orderByBeton = [
38
+ 'NkLD1rmnGiFZpJA1w6js.moderne',
39
+ 'NkLD1rmnGiFZpJA1w6js.traditionnel',
40
+ 'NkLD1rmnGiFZpJA1w6js.permeable',
41
+ 'oWzANqTldrV1McGzBAU2.moderne',
42
+ 'oWzANqTldrV1McGzBAU2.traditionnel',
43
+ '9jgHOxtMVSC1QTs1d9NX',
44
+ 'IbCDQBYaPmC125hBlr2j',
45
+ 'ptd8lA1kUTsWdyufNGjh',
46
+ 'mVjg7x05H1hizbet2xsv',
47
+ 'xOQPwedYjSYavS0FJlaE',
48
+ 'axEbPjUTnk64S5kRlfh6',
49
+ 'WS0n2jiEtoYMSId78GCZ',
50
+ '87HSMsPuUBm5XEUfreu1',
51
+ 'j0aJi1eyJwLabcpaPn6a',
52
+ 'Q1rCiYAOvadUXAITj47i'
53
+ ];
54
+ exports.orderByAccessoires = [
55
+ 'KrjSKiXHXa4MrRJIopJO',
56
+ '3uA7YFYwBVRYS8382JKB',
57
+ 'shmXowMw563z07Gr1k3d',
58
+ 'YZa62rG0LOnC9WKG8BRE',
59
+ 'OkeEqkF6QLNoFbzCgpdJ',
60
+ 'k2XN5GeN4PRxtbpj4BFk',
61
+ 'uDyyPN1IZGhivbV2hXiy',
62
+ 'G0xkLTH1XbFBgGGRm6Of',
63
+ 'GPFBURGlRFtAzaj5v6vr',
64
+ 'QXbBm82HL3vRc7GBjPYQ',
65
+ 'XijBekSz3MPAzACFSKUk',
66
+ 'meLuoK1SVeqUoo0bWvdz'
67
+ ];
68
+ exports.unitDict = {
69
+ p2: { fr: 'Pieds Carrés', en: 'Square Feet' },
70
+ pal: { fr: 'Palette', en: 'Pallet' },
71
+ rg: { fr: 'Rangs', en: 'Row' },
72
+ ensemble: { fr: 'Ensemble', en: 'Kit' },
73
+ pl: { fr: 'Pieds linéaires', en: 'Linear feet' },
74
+ mcx: { fr: 'Morceaux', en: 'Pieces' },
75
+ unite: { fr: 'Unités', en: 'Units' },
76
+ sac: { fr: 'Sac', en: 'Bag' },
77
+ vg3: { fr: 'Verge cube', en: 'Cubic yard' },
78
+ demipalsm: { fr: 'Demi-palette (petite)', en: 'Half-pallet (small)' },
79
+ demipallg: { fr: 'Demi-palette (lg)', en: 'Half-pallet (lg)' },
80
+ tonne: { fr: 'Tonne', en: 'Ton' },
81
+ roul: { fr: 'Rouleau', en: 'Roll' },
82
+ bte: { fr: 'Boîte', en: 'Box' },
83
+ pqt: { fr: 'Paquet', en: 'Bundle' },
84
+ '': { fr: 'Unités', en: 'Units' }
85
+ };
86
+ exports.unitShortDict = {
87
+ p2: { fr: 'pi²', en: 'pi²' },
88
+ pal: { fr: 'pal.', en: 'pal.' },
89
+ rg: { fr: 'rg', en: 'row' },
90
+ ensemble: { fr: 'ens.', en: 'kit' },
91
+ pl: { fr: 'pL', en: 'linear feet' },
92
+ mcx: { fr: 'mcx', en: 'piece' },
93
+ unite: { fr: 'unité', en: 'unit' },
94
+ sac: { fr: 'sac', en: 'bag' },
95
+ vg3: { fr: 'vg³', en: 'yd³' },
96
+ demipalsm: { fr: 'Demi-pal. (petite)', en: 'Half-pal. (sm)' },
97
+ demipallg: { fr: 'Demi-pal. (lg)', en: 'Half-pal. (lg)' },
98
+ tonne: { fr: 'tonne', en: 'ton' },
99
+ roul: { fr: 'roul.', en: 'roll' },
100
+ bte: { fr: 'bte', en: 'box' },
101
+ pqt: { fr: 'pqt', en: 'bundle' },
102
+ '': { fr: 'unité', en: 'unit' }
103
+ };
104
+ var getUnitShortDict = function (slug, returnUnitForSlugs) {
105
+ try {
106
+ if (!!returnUnitForSlugs && !!returnUnitForSlugs.includes(slug)) {
107
+ return exports.unitShortDict['unite'];
108
+ }
109
+ var res = exports.unitShortDict[slug];
110
+ if (!!!res)
111
+ return { fr: slug, en: slug };
112
+ return res;
113
+ }
114
+ catch (err) {
115
+ console.log(err);
116
+ return { fr: slug, en: slug };
117
+ }
118
+ };
119
+ exports.getUnitShortDict = getUnitShortDict;
120
+ var getOrganizedIndexedDecliAttributes = function (decli) {
121
+ return (0, flatten_1.default)(Object.entries(decli.attributes).map(function (attrArr) {
122
+ var newArray = !!!attrArr[1] ? [] : attrArr[1].map(function (aValue) { return "".concat(attrArr[0], ".").concat(aValue); });
123
+ return (0, flatten_1.default)(newArray);
124
+ }));
125
+ };
126
+ var getAttributesToShow = function (currentItems) {
127
+ var allAttributesPerItem = currentItems.map(function (item) {
128
+ return !!Array.isArray(item.attributes) ? item.attributes : getOrganizedIndexedDecliAttributes(item);
129
+ });
130
+ var allAttributes = (0, uniq_1.default)((0, flatten_1.default)(allAttributesPerItem));
131
+ var group = (0, groupBy_1.default)(allAttributes, function (a) { return a.split('.')[0]; });
132
+ var parentAttributesToShow = Object.entries(group)
133
+ .map(function (g) {
134
+ var attrToShow = undefined;
135
+ if ([
136
+ data_1.AttributesIdEnumGR.AVAILABILITY,
137
+ data_1.AttributesIdEnumGR.TYPE,
138
+ data_1.AttributesIdEnumGR.MARKETING,
139
+ data_1.AttributesIdEnumGR.COLOR_GROUP,
140
+ data_1.AttributesIdEnumGR.VENTE_MIXTE,
141
+ data_1.AttributesIdEnumGR.TYPE_UTILISATION_BETON
142
+ ].includes(g[0])) {
143
+ return attrToShow;
144
+ }
145
+ if (g[1].length > 1) {
146
+ var allItemsContainAllAttr = allAttributesPerItem.every(function (itemAttributes) {
147
+ var sameAttr = itemAttributes.filter(function (attr) { return attr.includes(g[0]); });
148
+ if (!!!sameAttr)
149
+ return false;
150
+ return sameAttr.length === g[1].length && sameAttr.every(function (attr) { return g[1].includes(attr); });
151
+ });
152
+ if (!!!allItemsContainAllAttr) {
153
+ attrToShow = g[0];
154
+ }
155
+ }
156
+ return attrToShow;
157
+ })
158
+ .filter(function (v) { return !!v; });
159
+ return parentAttributesToShow;
160
+ };
161
+ exports.getAttributesToShow = getAttributesToShow;
162
+ var attrToShowInItem = function (item, attributesToShow) {
163
+ var itemAttributes = Array.isArray(item.attributes)
164
+ ? item.attributes
165
+ : getOrganizedIndexedDecliAttributes(item);
166
+ return itemAttributes
167
+ .map(function (a) {
168
+ if (attributesToShow.find(function (attr_id) { return attr_id === a.split('.')[0]; })) {
169
+ return a;
170
+ }
171
+ return;
172
+ })
173
+ .filter(function (v) { return !!v; });
174
+ };
175
+ var attrString = function (attrToShow, attributes, locale) {
176
+ var valuesArray = (0, orderBy_1.default)(attrToShow, function (a) {
177
+ return a.split('.')[0] === 'Sy9GlMjUcqUkvKeqLuSz' ? 'AAA' : a.split('.')[0][0];
178
+ }).map(function (attr) {
179
+ var attribute = attributes.find(function (a) { return a.id === attr.split('.')[0]; });
180
+ if (!!!attribute)
181
+ return '';
182
+ var attributeValue = attribute.values.find(function (a) { return a.slug === attr.split('.')[1]; });
183
+ if (!!!attributeValue)
184
+ return '';
185
+ return (0, locale_1.getLocaleOfDictionnary)(attributeValue.value, locale);
186
+ });
187
+ return valuesArray.join(' - ');
188
+ };
189
+ var getAttrStringForItem = function (inventoryItem, attributesToShow, attributes, locale) {
190
+ if (locale === void 0) { locale = 'fr'; }
191
+ var attrToShow = attrToShowInItem(inventoryItem, attributesToShow);
192
+ var attrStr = attrString(attrToShow, attributes, locale);
193
+ return attrStr;
194
+ };
195
+ exports.getAttrStringForItem = getAttrStringForItem;
196
+ var getGroupedByBetonProducts = function (arrBeton, categories) {
197
+ return (0, groupBy_1.default)(arrBeton, function (item) {
198
+ var categorySlugLvl0 = !!item.categories ? item.categories['lvl0'] : '';
199
+ var categorySlugLvl1 = !!item.categories && !!item.categories['lvl1'] ? item.categories['lvl1'].split(' > ')[1] : '';
200
+ var categorySlugLvl2 = !!item.categories && !!item.categories['lvl2'] ? item.categories['lvl2'].split(' > ')[2] : '';
201
+ var lvl0CategoryId = !!categorySlugLvl0 && categories.some(function (c) { return c.slug === categorySlugLvl0; })
202
+ ? categories.find(function (c) { return c.slug === categorySlugLvl0; }).id
203
+ : '';
204
+ var lvl1CategoryId = !!categorySlugLvl1 && categories.some(function (c) { return c.slug === categorySlugLvl1; })
205
+ ? categories.find(function (c) { return c.slug === categorySlugLvl1; }).id
206
+ : '';
207
+ var lvl2CategoryId = !!categorySlugLvl2 && categories.some(function (c) { return c.slug === categorySlugLvl2; })
208
+ ? categories.find(function (c) { return c.slug === categorySlugLvl2; }).id
209
+ : '';
210
+ var sameCategoryId = !!lvl2CategoryId && !!exports.orderByBeton.some(function (order) { return order.includes(lvl2CategoryId); })
211
+ ? lvl2CategoryId
212
+ : !!lvl1CategoryId && !!exports.orderByBeton.some(function (order) { return order.includes(lvl1CategoryId); })
213
+ ? lvl1CategoryId
214
+ : !!lvl0CategoryId && !!exports.orderByBeton.some(function (order) { return order.includes(lvl0CategoryId); })
215
+ ? lvl0CategoryId
216
+ : '';
217
+ var attrDict = Object.entries(item.attributes);
218
+ var foundAttr = attrDict.find(function (attr) { return attr[0] === data_1.AttributesIdEnumGR.STYLE; });
219
+ var foundSameCat = !!exports.orderByBeton.some(function (order) { return order.includes("".concat(sameCategoryId, ".")); });
220
+ var styleAttribute = foundSameCat && foundAttr ? foundAttr[1][0] : '';
221
+ return !!!sameCategoryId && !!!styleAttribute
222
+ ? 'zzzzzzz'
223
+ : "".concat(sameCategoryId).concat(!!styleAttribute ? '.' + styleAttribute : '');
224
+ });
225
+ };
226
+ exports.getGroupedByBetonProducts = getGroupedByBetonProducts;
227
+ var getConvertedUnitQuantity = function (other_units, qte, convertTo, roundResult) {
228
+ if (convertTo === void 0) { convertTo = 'inventory_unit'; }
229
+ if (!!!other_units)
230
+ return qte;
231
+ var sellUnit = other_units.find(function (unit) { return unit.is_sale_unit; });
232
+ if (!!!sellUnit)
233
+ return qte;
234
+ var inventoryUnit = other_units.find(function (unit) { return unit.is_inventory_unit; });
235
+ if (!!!inventoryUnit)
236
+ return qte;
237
+ if (inventoryUnit.unit_slug === sellUnit.unit_slug)
238
+ return qte;
239
+ if (convertTo === 'sale_unit') {
240
+ var calculated_1 = qte * (1 / (sellUnit.fitting_unit || 1));
241
+ if (!roundResult)
242
+ return calculated_1;
243
+ return (0, round_1.default)(calculated_1, (0, products_1.productUnitSupportsDecimals)(sellUnit.unit_slug) ? 2 : 0);
244
+ }
245
+ var calculated = qte * (sellUnit.fitting_unit || 1);
246
+ if (!roundResult)
247
+ return calculated;
248
+ return (0, round_1.default)(calculated, (0, products_1.productUnitSupportsDecimals)(inventoryUnit.unit_slug) ? 2 : 0);
249
+ };
250
+ exports.getConvertedUnitQuantity = getConvertedUnitQuantity;
251
+ var getQty = function (other_units, inventoryQuantity, isGrass, showNegativeInventory, returnTrueUnitSlug, log) {
252
+ var qtyUnits = {
253
+ pal: undefined,
254
+ unite: undefined
255
+ };
256
+ var calculatedUnits = [];
257
+ if (!!log)
258
+ console.log('qtyUnits at beggining: ', __assign({}, qtyUnits));
259
+ var isNegativeQty = inventoryQuantity < 0 && !!showNegativeInventory;
260
+ if (!!isNegativeQty)
261
+ inventoryQuantity = inventoryQuantity * -1;
262
+ if (!!!other_units ||
263
+ !!!other_units.length ||
264
+ !!other_units
265
+ .filter(function (other_unit) { return other_unit.unit_slug !== 'booking'; })
266
+ .every(function (other_unit) { return !!!other_unit.fitting_unit; })) {
267
+ qtyUnits['unite'] = {
268
+ value: inventoryQuantity * (!!isNegativeQty ? -1 : 1),
269
+ fitting_unit: 1
270
+ };
271
+ return qtyUnits;
272
+ }
273
+ var calculateRest = function (currentRest, currentValue, fittingUnit) {
274
+ var rest = 0;
275
+ if (currentValue < 1) {
276
+ rest = currentRest;
277
+ }
278
+ else {
279
+ var calculatedRest = (currentRest % (fittingUnit || 1)) * (currentRest > 0 ? 1 : -1);
280
+ rest = calculatedRest < 0.001 ? 0 : calculatedRest;
281
+ }
282
+ return rest;
283
+ };
284
+ var rest = 0;
285
+ var palUnit = other_units.find(function (u) { return u.unit_slug === 'pal'; });
286
+ if (palUnit && typeof palUnit.fitting_unit === 'number' && palUnit.fitting_unit !== 0) {
287
+ if (!!palUnit.fitting_unit) {
288
+ var value = inventoryQuantity / (palUnit.fitting_unit || 1);
289
+ qtyUnits['pal'] = {
290
+ value: _getQtyValue(value, palUnit.fitting_unit === 1, isNegativeQty),
291
+ fitting_unit: palUnit.fitting_unit || 1
292
+ };
293
+ rest = calculateRest(inventoryQuantity, value, palUnit.fitting_unit);
294
+ if (value > 1 && rest == palUnit.fitting_unit) {
295
+ qtyUnits['pal']['value'] = qtyUnits['pal'].value + 1;
296
+ rest = 0;
297
+ }
298
+ calculatedUnits.push('pal');
299
+ }
300
+ }
301
+ else {
302
+ rest = inventoryQuantity;
303
+ }
304
+ var rgUnitToUse = isGrass ? 'roul' : 'rg';
305
+ var rgUnit = other_units.find(function (u) { return u.unit_slug === rgUnitToUse; });
306
+ if (!!rgUnit && typeof rgUnit.fitting_unit === 'number' && rgUnit.fitting_unit !== 0) {
307
+ if (!!rgUnit.fitting_unit) {
308
+ var value = rest / (rgUnit.fitting_unit || 1);
309
+ qtyUnits[rgUnitToUse] = {
310
+ value: _getQtyValue(value, rgUnit.fitting_unit === 1, isNegativeQty),
311
+ fitting_unit: rgUnit.fitting_unit || 1
312
+ };
313
+ rest = calculateRest(rest, value, rgUnit.fitting_unit);
314
+ var restToCheck = !(0, products_1.productUnitSupportsDecimals)(rgUnit.unit_slug) ? (0, round_1.default)(rest) : rest;
315
+ if (restToCheck == rgUnit.fitting_unit || restToCheck == rgUnit.fitting_unit * -1) {
316
+ qtyUnits[rgUnitToUse].value = qtyUnits[rgUnitToUse].value + (isNegativeQty ? -1 : 1);
317
+ rest = 0;
318
+ }
319
+ calculatedUnits.push(rgUnitToUse);
320
+ }
321
+ }
322
+ else if (!!!calculatedUnits.length) {
323
+ rest = inventoryQuantity;
324
+ }
325
+ if (!!log)
326
+ console.log('qtyUnits before boxes: ', __assign({}, qtyUnits));
327
+ var bteUnit = other_units.find(function (u) { return u.unit_slug === 'bte'; });
328
+ if (!!bteUnit && typeof bteUnit.fitting_unit === 'number' && bteUnit.fitting_unit !== 0) {
329
+ if (!!bteUnit.fitting_unit) {
330
+ var value = rest / (bteUnit.fitting_unit || 1);
331
+ qtyUnits['bte'] = {
332
+ value: _getQtyValue(value, bteUnit.fitting_unit === 1, isNegativeQty),
333
+ fitting_unit: bteUnit.fitting_unit || 1
334
+ };
335
+ if (!!log)
336
+ console.log('qtyUnits after boxes: ', __assign({}, qtyUnits));
337
+ rest = calculateRest(rest, value, bteUnit.fitting_unit);
338
+ calculatedUnits.push('bte');
339
+ if (!!log)
340
+ console.log('rest after boxes: ', rest);
341
+ }
342
+ }
343
+ else if (!!!calculatedUnits.length) {
344
+ rest = inventoryQuantity;
345
+ }
346
+ var pqtUnit = other_units.find(function (u) { return u.unit_slug === 'pqt'; });
347
+ if (!!pqtUnit && typeof pqtUnit.fitting_unit === 'number' && pqtUnit.fitting_unit !== 0) {
348
+ if (!!pqtUnit.fitting_unit) {
349
+ var value = rest / (pqtUnit.fitting_unit || 1);
350
+ qtyUnits['pqt'] = {
351
+ value: _getQtyValue(value, pqtUnit.fitting_unit === 1, isNegativeQty),
352
+ fitting_unit: pqtUnit.fitting_unit || 1
353
+ };
354
+ rest = calculateRest(rest, value, pqtUnit.fitting_unit);
355
+ calculatedUnits.push('pqt');
356
+ }
357
+ }
358
+ else if (!!!calculatedUnits.length) {
359
+ rest = inventoryQuantity;
360
+ }
361
+ var uniteUnit = other_units.find(function (u) {
362
+ return !!isGrass
363
+ ? u.fitting_unit === 1 && u.unit_slug === 'sac'
364
+ : u.fitting_unit === 1 && !!!['booking', 'bte', 'pal', 'rg', 'pqt'].includes(u.unit_slug);
365
+ });
366
+ if (!!uniteUnit &&
367
+ !!uniteUnit.fitting_unit &&
368
+ (!!palUnit ? uniteUnit.fitting_unit !== palUnit.fitting_unit : true) &&
369
+ (!!rgUnit ? uniteUnit.fitting_unit !== rgUnit.fitting_unit : true)) {
370
+ var unitValue = Math.ceil(rest / (uniteUnit.fitting_unit || 1)) * (!!isNegativeQty ? -1 : 1);
371
+ qtyUnits[returnTrueUnitSlug ? uniteUnit.unit_slug : 'unite'] = {
372
+ value: unitValue,
373
+ fitting_unit: uniteUnit.fitting_unit,
374
+ true_unit: uniteUnit.unit_slug
375
+ };
376
+ }
377
+ return qtyUnits;
378
+ };
379
+ exports.getQty = getQty;
380
+ var _getQtyValue = function (value, isUnitFittingUnit, isNegativeQty) {
381
+ if (value < 1)
382
+ return 0;
383
+ var roundedValue = !!isUnitFittingUnit ? Math.ceil((0, round_1.default)(value, 5)) : Math.floor((0, round_1.default)(value, 5));
384
+ return roundedValue * (!!isNegativeQty ? -1 : 1);
385
+ };
386
+ var convertQtyFromSellUnit = function (allUnits, sellUnitQty, convertToUnitSlug) {
387
+ if (!!!allUnits)
388
+ return sellUnitQty;
389
+ var sellUnit = allUnits.find(function (u) { return !!u.is_sale_unit; });
390
+ var convertToUnit = allUnits.find(function (u) { return u.unit_slug === convertToUnitSlug; });
391
+ if (!!!sellUnit)
392
+ return sellUnitQty;
393
+ if (!!!convertToUnit)
394
+ return sellUnitQty;
395
+ if (sellUnit.unit_slug === convertToUnit.unit_slug)
396
+ return sellUnitQty;
397
+ return (sellUnitQty * (sellUnit.fitting_unit || 1)) / (convertToUnit.fitting_unit || 1);
398
+ };
399
+ exports.convertQtyFromSellUnit = convertQtyFromSellUnit;
400
+ var getAvailableSellUnitQuantity = function (inventory, currentSucc, other_units, product, roundQty) {
401
+ if (roundQty === void 0) { roundQty = true; }
402
+ if (!!!currentSucc || !!!other_units)
403
+ return { value: '', unit: '' };
404
+ var saleUnit = other_units.find(function (u) { return !!u.is_sale_unit; });
405
+ var storeInv = inventory.inventories.find(function (i) { return i.store_id === currentSucc; });
406
+ if (!!(0, products_1.checkIfProductIsOfType)(product, 'vrac') && !!storeInv) {
407
+ var available = !!!storeInv.unavailable_in_store;
408
+ return { value: !!available ? 'Disponible' : 'Non-disponible', unit: '' };
409
+ }
410
+ else {
411
+ if (!!inventory.is_infinite_stock || !!product.is_service || !!!storeInv)
412
+ return { value: 'Disponible', unit: '' };
413
+ var invValue = storeInv.qty.available;
414
+ if (invValue < 0)
415
+ invValue = 0;
416
+ var sellUnitValue = (0, exports.getConvertedUnitQuantity)(other_units, invValue, 'sale_unit');
417
+ var convertedValue = void 0;
418
+ if (!!roundQty) {
419
+ convertedValue = sellUnitValue.toFixed(!!saleUnit && !!(0, products_1.productUnitSupportsDecimals)(saleUnit.unit_slug) ? 2 : 0);
420
+ }
421
+ else {
422
+ convertedValue = sellUnitValue.toString();
423
+ }
424
+ var unit = (0, products_1.getUnitLabelWithSlug)(!!saleUnit ? saleUnit.unit_slug : 'unite', 'fr', true, ['booking']);
425
+ return { value: convertedValue, unit: unit };
426
+ }
427
+ };
428
+ exports.getAvailableSellUnitQuantity = getAvailableSellUnitQuantity;
429
+ var checkIfItemIsUnavailableForStore = function (qte, product, other_units, inventoryItem, storeID) {
430
+ if (!!!inventoryItem ||
431
+ !!inventoryItem.is_infinite_stock ||
432
+ !!product.is_service ||
433
+ !!product.is_sample ||
434
+ !!(0, products_1.checkIfProductIsOfType)(product, 'vrac'))
435
+ return false;
436
+ var availableSellUnitQty = (0, exports.getAvailableSellUnitQuantity)(inventoryItem, storeID, other_units, product, false).value;
437
+ if (!!isNaN(parseFloat(availableSellUnitQty)))
438
+ return false;
439
+ return qte > parseFloat(availableSellUnitQty);
440
+ };
441
+ exports.checkIfItemIsUnavailableForStore = checkIfItemIsUnavailableForStore;
442
+ var checkIfStoreHasInventory = function (store) {
443
+ return !store.no_inventory_for_store;
444
+ };
445
+ exports.checkIfStoreHasInventory = checkIfStoreHasInventory;
433
446
  //# sourceMappingURL=inventories.js.map