addio-admin-sdk 1.7.196 → 1.7.198

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (590) hide show
  1. package/.babelrc +17 -17
  2. package/.env +14 -0
  3. package/.env.dev +14 -14
  4. package/.github/workflows/run_unit_test.yaml +48 -48
  5. package/.github/workflows/update_docs.yaml +32 -32
  6. package/addio-sdk-doc.md +1473 -1473
  7. package/changelog.md +582 -582
  8. package/dist/Interfaces/Address/index.d.ts +21 -21
  9. package/dist/Interfaces/Address/index.js +16 -16
  10. package/dist/Interfaces/Algolia/index.d.ts +183 -182
  11. package/dist/Interfaces/Algolia/index.js +2 -2
  12. package/dist/Interfaces/Attachement/index.d.ts +5 -5
  13. package/dist/Interfaces/Attachement/index.js +2 -2
  14. package/dist/Interfaces/Attribute/index.d.ts +53 -53
  15. package/dist/Interfaces/Attribute/index.js +10 -10
  16. package/dist/Interfaces/BGJob/index.d.ts +56 -56
  17. package/dist/Interfaces/BGJob/index.js +25 -25
  18. package/dist/Interfaces/BaseClass/index.d.ts +8 -8
  19. package/dist/Interfaces/BaseClass/index.js +2 -2
  20. package/dist/Interfaces/Blog/IBlogArticle.d.ts +18 -18
  21. package/dist/Interfaces/Blog/IBlogArticle.js +2 -2
  22. package/dist/Interfaces/Blog/IBlogAuthor.d.ts +7 -7
  23. package/dist/Interfaces/Blog/IBlogAuthor.js +2 -2
  24. package/dist/Interfaces/Blog/IBlogCategory.d.ts +9 -9
  25. package/dist/Interfaces/Blog/IBlogCategory.js +2 -2
  26. package/dist/Interfaces/Blog/IBlogComment.d.ts +13 -13
  27. package/dist/Interfaces/Blog/IBlogComment.js +2 -2
  28. package/dist/Interfaces/Blog/IBlogKeywords.d.ts +9 -9
  29. package/dist/Interfaces/Blog/IBlogKeywords.js +2 -2
  30. package/dist/Interfaces/Booking/index.d.ts +74 -74
  31. package/dist/Interfaces/Booking/index.js +17 -17
  32. package/dist/Interfaces/Brand/index.d.ts +15 -15
  33. package/dist/Interfaces/Brand/index.js +2 -2
  34. package/dist/Interfaces/Buylist/index.d.ts +19 -19
  35. package/dist/Interfaces/Buylist/index.js +2 -2
  36. package/dist/Interfaces/CMS/index.d.ts +28 -28
  37. package/dist/Interfaces/CMS/index.js +5 -5
  38. package/dist/Interfaces/Cart/IElavonPayload.d.ts +93 -93
  39. package/dist/Interfaces/Cart/IElavonPayload.js +17 -17
  40. package/dist/Interfaces/Cart/IMarketPayload.d.ts +12 -12
  41. package/dist/Interfaces/Cart/IMarketPayload.js +2 -2
  42. package/dist/Interfaces/Cart/IPandaPayload.d.ts +64 -64
  43. package/dist/Interfaces/Cart/IPandaPayload.js +18 -18
  44. package/dist/Interfaces/Cart/IPaymentCard.d.ts +22 -22
  45. package/dist/Interfaces/Cart/IPaymentCard.js +44 -44
  46. package/dist/Interfaces/Cart/IPaypalPayload.d.ts +9 -9
  47. package/dist/Interfaces/Cart/IPaypalPayload.js +2 -2
  48. package/dist/Interfaces/Cart/IPaysafePayload.d.ts +72 -72
  49. package/dist/Interfaces/Cart/IPaysafePayload.js +2 -2
  50. package/dist/Interfaces/Cart/IStripePayload.d.ts +66 -66
  51. package/dist/Interfaces/Cart/IStripePayload.js +2 -2
  52. package/dist/Interfaces/Cart/index.d.ts +478 -476
  53. package/dist/Interfaces/Cart/index.js +283 -283
  54. package/dist/Interfaces/Cart/index.js.map +1 -1
  55. package/dist/Interfaces/CartReservedQuantities/index.d.ts +10 -10
  56. package/dist/Interfaces/CartReservedQuantities/index.js +2 -2
  57. package/dist/Interfaces/CashDrawers/index.d.ts +38 -38
  58. package/dist/Interfaces/CashDrawers/index.js +19 -19
  59. package/dist/Interfaces/Catalogue/index.d.ts +68 -68
  60. package/dist/Interfaces/Catalogue/index.js +37 -37
  61. package/dist/Interfaces/Category/index.d.ts +33 -33
  62. package/dist/Interfaces/Category/index.js +2 -2
  63. package/dist/Interfaces/Chart/index.d.ts +11 -11
  64. package/dist/Interfaces/Chart/index.js +2 -2
  65. package/dist/Interfaces/Class/index.d.ts +8 -8
  66. package/dist/Interfaces/Class/index.js +2 -2
  67. package/dist/Interfaces/Consent/index.d.ts +6 -6
  68. package/dist/Interfaces/Consent/index.js +2 -2
  69. package/dist/Interfaces/Context/IContextProps.d.ts +4 -4
  70. package/dist/Interfaces/Context/IContextProps.js +2 -2
  71. package/dist/Interfaces/Context/IContextState.d.ts +15 -15
  72. package/dist/Interfaces/Context/IContextState.js +2 -2
  73. package/dist/Interfaces/Customer/ICustomerBadge.d.ts +2 -2
  74. package/dist/Interfaces/Customer/ICustomerBadge.js +2 -2
  75. package/dist/Interfaces/Customer/ICustomerRating.d.ts +10 -10
  76. package/dist/Interfaces/Customer/ICustomerRating.js +2 -2
  77. package/dist/Interfaces/Customer/IStoreCredit.d.ts +13 -13
  78. package/dist/Interfaces/Customer/IStoreCredit.js +2 -2
  79. package/dist/Interfaces/Customer/index.d.ts +104 -104
  80. package/dist/Interfaces/Customer/index.js +148 -148
  81. package/dist/Interfaces/Declination/index.d.ts +133 -117
  82. package/dist/Interfaces/Declination/index.js +83 -66
  83. package/dist/Interfaces/Declination/index.js.map +1 -1
  84. package/dist/Interfaces/Document/index.d.ts +8 -8
  85. package/dist/Interfaces/Document/index.js +2 -2
  86. package/dist/Interfaces/Elastic/index.d.ts +89 -89
  87. package/dist/Interfaces/Elastic/index.js +2 -2
  88. package/dist/Interfaces/Email/CustomGR/I3DPrintEmail.d.ts +11 -11
  89. package/dist/Interfaces/Email/CustomGR/I3DPrintEmail.js +2 -2
  90. package/dist/Interfaces/Email/CustomGR/IBorrowToolsEmail.d.ts +15 -15
  91. package/dist/Interfaces/Email/CustomGR/IBorrowToolsEmail.js +2 -2
  92. package/dist/Interfaces/Email/CustomGR/IPickupMaterialsEmail.d.ts +12 -12
  93. package/dist/Interfaces/Email/CustomGR/IPickupMaterialsEmail.js +2 -2
  94. package/dist/Interfaces/Email/CustomGR/IPreMeetingFormEmail.d.ts +36 -36
  95. package/dist/Interfaces/Email/CustomGR/IPreMeetingFormEmail.js +2 -2
  96. package/dist/Interfaces/Email/CustomGR/ISponsorRequestEmail.d.ts +12 -12
  97. package/dist/Interfaces/Email/CustomGR/ISponsorRequestEmail.js +2 -2
  98. package/dist/Interfaces/Email/CustomGR/ITransportEmail.d.ts +12 -12
  99. package/dist/Interfaces/Email/CustomGR/ITransportEmail.js +2 -2
  100. package/dist/Interfaces/Email/CustomGR/ITransportQuoteEmail.d.ts +12 -12
  101. package/dist/Interfaces/Email/CustomGR/ITransportQuoteEmail.js +2 -2
  102. package/dist/Interfaces/Email/CustomGR/IVegetalsEmail.d.ts +16 -16
  103. package/dist/Interfaces/Email/CustomGR/IVegetalsEmail.js +2 -2
  104. package/dist/Interfaces/Email/CustomGR/IWishlistEmail.d.ts +15 -15
  105. package/dist/Interfaces/Email/CustomGR/IWishlistEmail.js +2 -2
  106. package/dist/Interfaces/Email/IAbandonnedCartEmail.d.ts +29 -29
  107. package/dist/Interfaces/Email/IAbandonnedCartEmail.js +2 -2
  108. package/dist/Interfaces/Email/IAccountConfirmationEmail.d.ts +22 -22
  109. package/dist/Interfaces/Email/IAccountConfirmationEmail.js +2 -2
  110. package/dist/Interfaces/Email/IApplicationEmail.d.ts +19 -19
  111. package/dist/Interfaces/Email/IApplicationEmail.js +2 -2
  112. package/dist/Interfaces/Email/IBackInStockEmail.d.ts +21 -21
  113. package/dist/Interfaces/Email/IBackInStockEmail.js +2 -2
  114. package/dist/Interfaces/Email/IContactEmail.d.ts +20 -20
  115. package/dist/Interfaces/Email/IContactEmail.js +2 -2
  116. package/dist/Interfaces/Email/ICustomerBookingAdminEmail.d.ts +15 -15
  117. package/dist/Interfaces/Email/ICustomerBookingAdminEmail.js +2 -2
  118. package/dist/Interfaces/Email/ICustomerBookingEmail.d.ts +14 -14
  119. package/dist/Interfaces/Email/ICustomerBookingEmail.js +2 -2
  120. package/dist/Interfaces/Email/IEmail.d.ts +20 -20
  121. package/dist/Interfaces/Email/IEmail.js +46 -46
  122. package/dist/Interfaces/Email/IOrderConfirmationEmail.d.ts +47 -47
  123. package/dist/Interfaces/Email/IOrderConfirmationEmail.js +2 -2
  124. package/dist/Interfaces/Email/IPasswordResetEmail.d.ts +17 -17
  125. package/dist/Interfaces/Email/IPasswordResetEmail.js +2 -2
  126. package/dist/Interfaces/Email/IPhotoShootEmail.d.ts +14 -14
  127. package/dist/Interfaces/Email/IPhotoShootEmail.js +2 -2
  128. package/dist/Interfaces/Email/IPickupConfirmation.d.ts +23 -23
  129. package/dist/Interfaces/Email/IPickupConfirmation.js +2 -2
  130. package/dist/Interfaces/Email/IShippingConfirmation.d.ts +23 -23
  131. package/dist/Interfaces/Email/IShippingConfirmation.js +2 -2
  132. package/dist/Interfaces/Email/IWelcomeEmail.d.ts +19 -19
  133. package/dist/Interfaces/Email/IWelcomeEmail.js +2 -2
  134. package/dist/Interfaces/ExportSchema/index.d.ts +7 -7
  135. package/dist/Interfaces/ExportSchema/index.js +2 -2
  136. package/dist/Interfaces/ExternalService/BaseExternalService.d.ts +12 -12
  137. package/dist/Interfaces/ExternalService/BaseExternalService.js +2 -2
  138. package/dist/Interfaces/ExternalService/ExternalProductsService.d.ts +4 -4
  139. package/dist/Interfaces/ExternalService/ExternalProductsService.js +2 -2
  140. package/dist/Interfaces/ExternalService/index.d.ts +9 -9
  141. package/dist/Interfaces/ExternalService/index.js +2 -2
  142. package/dist/Interfaces/FirstOrderTracking/index.d.ts +5 -5
  143. package/dist/Interfaces/FirstOrderTracking/index.js +2 -2
  144. package/dist/Interfaces/G2/index.d.ts +557 -557
  145. package/dist/Interfaces/G2/index.js +39 -39
  146. package/dist/Interfaces/Indexed/Product/IIndexedLastSavedProduct.d.ts +20 -20
  147. package/dist/Interfaces/Indexed/Product/IIndexedLastSavedProduct.js +2 -2
  148. package/dist/Interfaces/Indexed/Product/index.d.ts +126 -111
  149. package/dist/Interfaces/Indexed/Product/index.js +372 -302
  150. package/dist/Interfaces/Indexed/Product/index.js.map +1 -1
  151. package/dist/Interfaces/Inventory/index.d.ts +19 -19
  152. package/dist/Interfaces/Inventory/index.js +8 -8
  153. package/dist/Interfaces/Invoice/index.d.ts +4 -4
  154. package/dist/Interfaces/Invoice/index.js +2 -2
  155. package/dist/Interfaces/MarketplacePublication/MarketplaceOrderData.d.ts +3 -3
  156. package/dist/Interfaces/MarketplacePublication/MarketplaceOrderData.js +2 -2
  157. package/dist/Interfaces/MarketplacePublication/index.d.ts +23 -23
  158. package/dist/Interfaces/MarketplacePublication/index.js +22 -22
  159. package/dist/Interfaces/Menu/index.d.ts +40 -40
  160. package/dist/Interfaces/Menu/index.js +16 -16
  161. package/dist/Interfaces/Note/index.d.ts +10 -10
  162. package/dist/Interfaces/Note/index.js +7 -7
  163. package/dist/Interfaces/Operations/ICreatedBy.d.ts +6 -6
  164. package/dist/Interfaces/Operations/ICreatedBy.js +2 -2
  165. package/dist/Interfaces/Operations/IUpdate.d.ts +5 -5
  166. package/dist/Interfaces/Operations/IUpdate.js +2 -2
  167. package/dist/Interfaces/Order/index.d.ts +4 -4
  168. package/dist/Interfaces/Order/index.js +2 -2
  169. package/dist/Interfaces/Org/IRelUser.d.ts +9 -9
  170. package/dist/Interfaces/Org/IRelUser.js +2 -2
  171. package/dist/Interfaces/Org/index.d.ts +29 -29
  172. package/dist/Interfaces/Org/index.js +12 -12
  173. package/dist/Interfaces/Payment/index.d.ts +26 -26
  174. package/dist/Interfaces/Payment/index.js +14 -14
  175. package/dist/Interfaces/Product/IAttributeFamily.d.ts +6 -6
  176. package/dist/Interfaces/Product/IAttributeFamily.js +2 -2
  177. package/dist/Interfaces/Product/IImportProduct.d.ts +42 -42
  178. package/dist/Interfaces/Product/IImportProduct.js +882 -882
  179. package/dist/Interfaces/Product/IInventoryItem.d.ts +74 -74
  180. package/dist/Interfaces/Product/IInventoryItem.js +38 -38
  181. package/dist/Interfaces/Product/IPricing.d.ts +177 -177
  182. package/dist/Interfaces/Product/IPricing.js +180 -180
  183. package/dist/Interfaces/Product/index.d.ts +137 -137
  184. package/dist/Interfaces/Product/index.js +64 -64
  185. package/dist/Interfaces/ProductAttribute/index.d.ts +11 -11
  186. package/dist/Interfaces/ProductAttribute/index.js +2 -2
  187. package/dist/Interfaces/PromiseToPurchase/BankType.d.ts +41 -41
  188. package/dist/Interfaces/PromiseToPurchase/BankType.js +41 -41
  189. package/dist/Interfaces/PromiseToPurchase/IIndexedBankUsed.d.ts +33 -33
  190. package/dist/Interfaces/PromiseToPurchase/IIndexedBankUsed.js +15 -15
  191. package/dist/Interfaces/PromiseToPurchase/IIndexedCustomerPromiseToPurchase.d.ts +19 -19
  192. package/dist/Interfaces/PromiseToPurchase/IIndexedCustomerPromiseToPurchase.js +2 -2
  193. package/dist/Interfaces/PromiseToPurchase/index.d.ts +50 -50
  194. package/dist/Interfaces/PromiseToPurchase/index.js +13 -13
  195. package/dist/Interfaces/PurchaseOrder/index.d.ts +17 -17
  196. package/dist/Interfaces/PurchaseOrder/index.js +2 -2
  197. package/dist/Interfaces/Query/IBrandQueryOptions.d.ts +11 -11
  198. package/dist/Interfaces/Query/IBrandQueryOptions.js +2 -2
  199. package/dist/Interfaces/Query/ICategoryQueryOptions.d.ts +11 -11
  200. package/dist/Interfaces/Query/ICategoryQueryOptions.js +2 -2
  201. package/dist/Interfaces/Query/IProductQueryOptions.d.ts +16 -16
  202. package/dist/Interfaces/Query/IProductQueryOptions.js +2 -2
  203. package/dist/Interfaces/Quote/index.d.ts +5 -5
  204. package/dist/Interfaces/Quote/index.js +2 -2
  205. package/dist/Interfaces/Refunds/index.d.ts +106 -106
  206. package/dist/Interfaces/Refunds/index.js +2 -2
  207. package/dist/Interfaces/Rules/IDiscountRule.d.ts +156 -156
  208. package/dist/Interfaces/Rules/IDiscountRule.js +114 -114
  209. package/dist/Interfaces/Schedule/index.d.ts +48 -48
  210. package/dist/Interfaces/Schedule/index.js +2 -2
  211. package/dist/Interfaces/Services/IAddServiceResponse.d.ts +4 -4
  212. package/dist/Interfaces/Services/IAddServiceResponse.js +2 -2
  213. package/dist/Interfaces/Services/IService.d.ts +16 -16
  214. package/dist/Interfaces/Services/IService.js +2 -2
  215. package/dist/Interfaces/Services/IServiceSecret.d.ts +8 -8
  216. package/dist/Interfaces/Services/IServiceSecret.js +2 -2
  217. package/dist/Interfaces/Shipping/Shipstation/carriers.d.ts +10 -10
  218. package/dist/Interfaces/Shipping/Shipstation/carriers.js +2 -2
  219. package/dist/Interfaces/Shipping/Shipstation/order.d.ts +227 -227
  220. package/dist/Interfaces/Shipping/Shipstation/order.js +2 -2
  221. package/dist/Interfaces/Shipping/Shipstation/quote.d.ts +31 -31
  222. package/dist/Interfaces/Shipping/Shipstation/quote.js +2 -2
  223. package/dist/Interfaces/Shipping/Shiptime/order.d.ts +54 -54
  224. package/dist/Interfaces/Shipping/Shiptime/order.js +71 -71
  225. package/dist/Interfaces/Shipping/Shiptime/quote.d.ts +111 -111
  226. package/dist/Interfaces/Shipping/Shiptime/quote.js +2 -2
  227. package/dist/Interfaces/Slider/GR.d.ts +114 -114
  228. package/dist/Interfaces/Slider/GR.js +271 -271
  229. package/dist/Interfaces/Slider/index.d.ts +30 -30
  230. package/dist/Interfaces/Slider/index.js +2 -2
  231. package/dist/Interfaces/Space/IExternalService.d.ts +54 -54
  232. package/dist/Interfaces/Space/IExternalService.js +45 -45
  233. package/dist/Interfaces/Space/IMember.d.ts +16 -16
  234. package/dist/Interfaces/Space/IMember.js +9 -9
  235. package/dist/Interfaces/Space/index.d.ts +414 -414
  236. package/dist/Interfaces/Space/index.js +176 -176
  237. package/dist/Interfaces/Specials/gr.d.ts +61 -61
  238. package/dist/Interfaces/Specials/gr.js +2 -2
  239. package/dist/Interfaces/StockNotification/index.d.ts +7 -7
  240. package/dist/Interfaces/StockNotification/index.js +2 -2
  241. package/dist/Interfaces/Store/index.d.ts +63 -63
  242. package/dist/Interfaces/Store/index.js +27 -27
  243. package/dist/Interfaces/Supplier/ICommand.d.ts +11 -11
  244. package/dist/Interfaces/Supplier/ICommand.js +2 -2
  245. package/dist/Interfaces/Supplier/index.d.ts +36 -36
  246. package/dist/Interfaces/Supplier/index.js +24 -24
  247. package/dist/Interfaces/TCG/index.d.ts +200 -200
  248. package/dist/Interfaces/TCG/index.js +59 -59
  249. package/dist/Interfaces/Tag/index.d.ts +18 -18
  250. package/dist/Interfaces/Tag/index.js +2 -2
  251. package/dist/Interfaces/Tax/index.d.ts +13 -13
  252. package/dist/Interfaces/Tax/index.js +2 -2
  253. package/dist/Interfaces/TransferRequest/index.d.ts +103 -103
  254. package/dist/Interfaces/TransferRequest/index.js +46 -46
  255. package/dist/Interfaces/Translation/index.d.ts +8 -8
  256. package/dist/Interfaces/Translation/index.js +5 -5
  257. package/dist/Interfaces/Update/index.d.ts +10 -10
  258. package/dist/Interfaces/Update/index.js +2 -2
  259. package/dist/Interfaces/User/IUser.d.ts +65 -65
  260. package/dist/Interfaces/User/IUser.js +8 -8
  261. package/dist/Interfaces/Version/index.d.ts +11 -11
  262. package/dist/Interfaces/Version/index.js +2 -2
  263. package/dist/Interfaces/Wishlist/index.d.ts +7 -7
  264. package/dist/Interfaces/Wishlist/index.js +2 -2
  265. package/dist/constants/Interfaces/IBaseApi.d.ts +15 -15
  266. package/dist/constants/Interfaces/IBaseApi.js +2 -2
  267. package/dist/constants/Interfaces/IEndpointResult.d.ts +9 -9
  268. package/dist/constants/Interfaces/IEndpointResult.js +2 -2
  269. package/dist/constants/enums.d.ts +6 -6
  270. package/dist/constants/enums.js +10 -10
  271. package/dist/constants/services.d.ts +2 -2
  272. package/dist/constants/services.js +122 -122
  273. package/dist/constants/version.d.ts +2 -2
  274. package/dist/constants/version.js +5 -5
  275. package/dist/index.d.ts +50 -50
  276. package/dist/index.js +266 -266
  277. package/dist/lib/Attribute/index.d.ts +14 -14
  278. package/dist/lib/Attribute/index.js +186 -186
  279. package/dist/lib/BGJob/index.d.ts +9 -9
  280. package/dist/lib/BGJob/index.js +216 -216
  281. package/dist/lib/BackgroundWorker/index.d.ts +34 -34
  282. package/dist/lib/BackgroundWorker/index.js +59 -59
  283. package/dist/lib/Blog/BlogArticle.d.ts +5 -5
  284. package/dist/lib/Blog/BlogArticle.js +10 -10
  285. package/dist/lib/Blog/BlogAuthor.d.ts +5 -5
  286. package/dist/lib/Blog/BlogAuthor.js +10 -10
  287. package/dist/lib/Blog/BlogCategory.d.ts +5 -5
  288. package/dist/lib/Blog/BlogCategory.js +10 -10
  289. package/dist/lib/Blog/BlogKeyword.d.ts +5 -5
  290. package/dist/lib/Blog/BlogKeyword.js +10 -10
  291. package/dist/lib/Booking/index.d.ts +85 -85
  292. package/dist/lib/Booking/index.js +596 -596
  293. package/dist/lib/Brand/index.d.ts +26 -26
  294. package/dist/lib/Brand/index.js +131 -131
  295. package/dist/lib/Cart/index.d.ts +357 -357
  296. package/dist/lib/Cart/index.js +4052 -4052
  297. package/dist/lib/CartReservedQuantities/index.d.ts +49 -49
  298. package/dist/lib/CartReservedQuantities/index.js +159 -159
  299. package/dist/lib/CashDrawerShift/index.d.ts +84 -84
  300. package/dist/lib/CashDrawerShift/index.js +206 -206
  301. package/dist/lib/Catalogue/index.d.ts +15 -15
  302. package/dist/lib/Catalogue/index.js +78 -78
  303. package/dist/lib/Category/index.d.ts +34 -34
  304. package/dist/lib/Category/index.js +230 -230
  305. package/dist/lib/Class/index.d.ts +16 -16
  306. package/dist/lib/Class/index.js +66 -66
  307. package/dist/lib/Consent/index.d.ts +4 -4
  308. package/dist/lib/Consent/index.js +29 -29
  309. package/dist/lib/Customer/index.d.ts +30 -30
  310. package/dist/lib/Customer/index.js +92 -92
  311. package/dist/lib/Declination/index.d.ts +9 -9
  312. package/dist/lib/Declination/index.js +26 -26
  313. package/dist/lib/Discount/index.d.ts +27 -27
  314. package/dist/lib/Discount/index.js +493 -493
  315. package/dist/lib/ElasticSearch/index.d.ts +13 -13
  316. package/dist/lib/ElasticSearch/index.js +50 -50
  317. package/dist/lib/Elavon/index.d.ts +18 -18
  318. package/dist/lib/Elavon/index.js +135 -135
  319. package/dist/lib/Email/AbandonedCartEmail.d.ts +16 -16
  320. package/dist/lib/Email/AbandonedCartEmail.js +24 -24
  321. package/dist/lib/Email/AccountConfirmationEmail.d.ts +19 -19
  322. package/dist/lib/Email/AccountConfirmationEmail.js +30 -30
  323. package/dist/lib/Email/AdminOrderConfirmationEmail.d.ts +16 -16
  324. package/dist/lib/Email/AdminOrderConfirmationEmail.js +24 -24
  325. package/dist/lib/Email/ApplicationEmail.d.ts +16 -16
  326. package/dist/lib/Email/ApplicationEmail.js +24 -24
  327. package/dist/lib/Email/BackInStockEmail.d.ts +16 -16
  328. package/dist/lib/Email/BackInStockEmail.js +24 -24
  329. package/dist/lib/Email/ContactEmail.d.ts +16 -16
  330. package/dist/lib/Email/ContactEmail.js +24 -24
  331. package/dist/lib/Email/CustomerBookingAdminEmail.d.ts +16 -16
  332. package/dist/lib/Email/CustomerBookingAdminEmail.js +24 -24
  333. package/dist/lib/Email/CustomerBookingEmail.d.ts +16 -16
  334. package/dist/lib/Email/CustomerBookingEmail.js +24 -24
  335. package/dist/lib/Email/OrderConfirmationEmail.d.ts +16 -16
  336. package/dist/lib/Email/OrderConfirmationEmail.js +24 -24
  337. package/dist/lib/Email/OrderDenounciationEmail.d.ts +16 -16
  338. package/dist/lib/Email/OrderDenounciationEmail.js +24 -24
  339. package/dist/lib/Email/OrderSampleEmail.d.ts +16 -16
  340. package/dist/lib/Email/OrderSampleEmail.js +24 -24
  341. package/dist/lib/Email/OtherTypeEmails.d.ts +16 -16
  342. package/dist/lib/Email/OtherTypeEmails.js +27 -27
  343. package/dist/lib/Email/PasswordResetEmail.d.ts +16 -16
  344. package/dist/lib/Email/PasswordResetEmail.js +24 -24
  345. package/dist/lib/Email/PhotoShootEmail.d.ts +16 -16
  346. package/dist/lib/Email/PhotoShootEmail.js +24 -24
  347. package/dist/lib/Email/PickUpConfirmation.d.ts +16 -16
  348. package/dist/lib/Email/PickUpConfirmation.js +24 -24
  349. package/dist/lib/Email/ShippingConfirmation.d.ts +16 -16
  350. package/dist/lib/Email/ShippingConfirmation.js +24 -24
  351. package/dist/lib/Email/WelcomeEmail.d.ts +16 -16
  352. package/dist/lib/Email/WelcomeEmail.js +24 -24
  353. package/dist/lib/Email/index.d.ts +16 -16
  354. package/dist/lib/Email/index.js +31 -31
  355. package/dist/lib/ExternalService/Ebay.d.ts +74 -74
  356. package/dist/lib/ExternalService/Ebay.js +124 -124
  357. package/dist/lib/ExternalService/index.d.ts +5 -5
  358. package/dist/lib/ExternalService/index.js +10 -10
  359. package/dist/lib/FirstOrderTracking/index.d.ts +5 -5
  360. package/dist/lib/FirstOrderTracking/index.js +10 -10
  361. package/dist/lib/Indexed/IndexedCart.d.ts +13 -13
  362. package/dist/lib/Indexed/IndexedCart.js +91 -91
  363. package/dist/lib/Indexed/Product.d.ts +17 -17
  364. package/dist/lib/Indexed/Product.js +98 -98
  365. package/dist/lib/Inventory/index.d.ts +131 -131
  366. package/dist/lib/Inventory/index.js +545 -545
  367. package/dist/lib/Invoice/index.d.ts +16 -16
  368. package/dist/lib/Invoice/index.js +21 -21
  369. package/dist/lib/MarketplacePublication/index.d.ts +9 -9
  370. package/dist/lib/MarketplacePublication/index.js +426 -426
  371. package/dist/lib/Menu/index.d.ts +11 -11
  372. package/dist/lib/Menu/index.js +107 -107
  373. package/dist/lib/MongoDB/BaseAPI.d.ts +18 -18
  374. package/dist/lib/MongoDB/BaseAPI.js +200 -200
  375. package/dist/lib/Note/index.d.ts +4 -4
  376. package/dist/lib/Note/index.js +6 -6
  377. package/dist/lib/Order/index.d.ts +27 -27
  378. package/dist/lib/Order/index.js +56 -56
  379. package/dist/lib/Org/index.d.ts +68 -68
  380. package/dist/lib/Org/index.js +216 -216
  381. package/dist/lib/PandaPay/index.d.ts +16 -16
  382. package/dist/lib/PandaPay/index.js +176 -176
  383. package/dist/lib/Paysafe/index.d.ts +11 -11
  384. package/dist/lib/Paysafe/index.js +41 -41
  385. package/dist/lib/Product/index.d.ts +182 -182
  386. package/dist/lib/Product/index.js +847 -847
  387. package/dist/lib/ProductAttribute/index.d.ts +15 -15
  388. package/dist/lib/ProductAttribute/index.js +45 -45
  389. package/dist/lib/PromiseToPurchase/index.d.ts +109 -109
  390. package/dist/lib/PromiseToPurchase/index.js +343 -343
  391. package/dist/lib/PurchaseOrder/index.d.ts +20 -20
  392. package/dist/lib/PurchaseOrder/index.js +28 -28
  393. package/dist/lib/Schedule/index.d.ts +5 -5
  394. package/dist/lib/Schedule/index.js +12 -12
  395. package/dist/lib/Service/Enum/ServiceEnum.d.ts +3 -3
  396. package/dist/lib/Service/Enum/ServiceEnum.js +7 -7
  397. package/dist/lib/Service/index.d.ts +13 -13
  398. package/dist/lib/Service/index.js +21 -21
  399. package/dist/lib/Shipment/index.d.ts +28 -28
  400. package/dist/lib/Shipment/index.js +370 -370
  401. package/dist/lib/Slider/index.d.ts +22 -22
  402. package/dist/lib/Slider/index.js +119 -119
  403. package/dist/lib/Space/index.d.ts +1181 -1181
  404. package/dist/lib/Space/index.js +5860 -5856
  405. package/dist/lib/Space/index.js.map +1 -1
  406. package/dist/lib/StockNotification/index.d.ts +4 -4
  407. package/dist/lib/StockNotification/index.js +6 -6
  408. package/dist/lib/Store/index.d.ts +5 -5
  409. package/dist/lib/Store/index.js +12 -12
  410. package/dist/lib/Supplier/Command.d.ts +5 -5
  411. package/dist/lib/Supplier/Command.js +10 -10
  412. package/dist/lib/Supplier/index.d.ts +25 -25
  413. package/dist/lib/Supplier/index.js +27 -27
  414. package/dist/lib/Tags/index.d.ts +6 -6
  415. package/dist/lib/Tags/index.js +26 -26
  416. package/dist/lib/Tax/index.d.ts +8 -8
  417. package/dist/lib/Tax/index.js +54 -54
  418. package/dist/lib/TransferRequest/index.d.ts +298 -298
  419. package/dist/lib/TransferRequest/index.js +1106 -1106
  420. package/dist/lib/Update/index.d.ts +10 -10
  421. package/dist/lib/Update/index.js +22 -22
  422. package/dist/lib/User/index.d.ts +89 -89
  423. package/dist/lib/User/index.js +328 -328
  424. package/dist/lib/Wishlist/index.d.ts +5 -5
  425. package/dist/lib/Wishlist/index.js +10 -10
  426. package/dist/lib/base.d.ts +14 -14
  427. package/dist/lib/base.js +62 -62
  428. package/dist/lib/baseService.d.ts +17 -17
  429. package/dist/lib/baseService.js +69 -69
  430. package/dist/rules/ADD/utils/buyback.d.ts +4 -4
  431. package/dist/rules/ADD/utils/buyback.js +135 -135
  432. package/dist/rules/GR/constants/data.d.ts +26 -26
  433. package/dist/rules/GR/constants/data.js +81 -81
  434. package/dist/rules/GR/constants/expedition.d.ts +4 -4
  435. package/dist/rules/GR/constants/expedition.js +9 -9
  436. package/dist/rules/GR/constants/products.d.ts +27 -22
  437. package/dist/rules/GR/constants/products.js +272 -263
  438. package/dist/rules/GR/constants/products.js.map +1 -1
  439. package/dist/rules/GR/interfaces/cart.d.ts +85 -84
  440. package/dist/rules/GR/interfaces/cart.js +42 -41
  441. package/dist/rules/GR/interfaces/cart.js.map +1 -1
  442. package/dist/rules/GR/interfaces/data.d.ts +101 -101
  443. package/dist/rules/GR/interfaces/data.js +114 -114
  444. package/dist/rules/GR/interfaces/products.d.ts +61 -61
  445. package/dist/rules/GR/interfaces/products.js +10 -10
  446. package/dist/rules/GR/utils/cart.d.ts +95 -95
  447. package/dist/rules/GR/utils/cart.js +879 -839
  448. package/dist/rules/GR/utils/cart.js.map +1 -1
  449. package/dist/rules/GR/utils/data.d.ts +3 -3
  450. package/dist/rules/GR/utils/data.js +28 -28
  451. package/dist/rules/GR/utils/expedition.d.ts +140 -140
  452. package/dist/rules/GR/utils/expedition.js +2098 -2017
  453. package/dist/rules/GR/utils/expedition.js.map +1 -1
  454. package/dist/rules/GR/utils/g2.d.ts +209 -209
  455. package/dist/rules/GR/utils/g2.js +1002 -1002
  456. package/dist/rules/GR/utils/g2.js.map +1 -1
  457. package/dist/rules/GR/utils/invoices.d.ts +51 -51
  458. package/dist/rules/GR/utils/invoices.js +218 -215
  459. package/dist/rules/GR/utils/invoices.js.map +1 -1
  460. package/dist/rules/GR/utils/products.d.ts +277 -277
  461. package/dist/rules/GR/utils/products.js +1358 -1350
  462. package/dist/rules/GR/utils/products.js.map +1 -1
  463. package/dist/rules/GR/utils/upsells.d.ts +113 -111
  464. package/dist/rules/GR/utils/upsells.js +215 -215
  465. package/dist/services/database/BaseProvider.d.ts +29 -29
  466. package/dist/services/database/BaseProvider.js +28 -28
  467. package/dist/services/database/BatchUtils.d.ts +14 -14
  468. package/dist/services/database/BatchUtils.js +43 -43
  469. package/dist/services/database/Config.d.ts +2 -2
  470. package/dist/services/database/Config.js +5 -5
  471. package/dist/services/database/DatabaseService.d.ts +125 -125
  472. package/dist/services/database/DatabaseService.js +237 -237
  473. package/dist/services/database/FirebaseProvider.d.ts +17 -17
  474. package/dist/services/database/FirebaseProvider.js +235 -235
  475. package/dist/services/database/NotFirebaseProvider.d.ts +49 -49
  476. package/dist/services/database/NotFirebaseProvider.js +262 -262
  477. package/dist/services/g2/G2OrderSlip.d.ts +49 -49
  478. package/dist/services/g2/G2OrderSlip.js +228 -228
  479. package/dist/services/g2/utils.d.ts +19 -19
  480. package/dist/services/g2/utils.js +969 -968
  481. package/dist/services/g2/utils.js.map +1 -1
  482. package/dist/services/logs/index.d.ts +23 -23
  483. package/dist/services/logs/index.js +66 -66
  484. package/dist/services/marketplace/BaseMarketServiceClass.d.ts +78 -78
  485. package/dist/services/marketplace/BaseMarketServiceClass.js +141 -141
  486. package/dist/services/marketplace/CardtraderServiceClass.d.ts +38 -38
  487. package/dist/services/marketplace/CardtraderServiceClass.js +226 -226
  488. package/dist/services/marketplace/utils.d.ts +17 -17
  489. package/dist/services/marketplace/utils.js +32 -32
  490. package/dist/services/products/BaseClass.d.ts +79 -79
  491. package/dist/services/products/BaseClass.js +144 -144
  492. package/dist/services/products/TCGService.d.ts +29 -29
  493. package/dist/services/products/TCGService.js +503 -503
  494. package/dist/services/products/utils.d.ts +31 -31
  495. package/dist/services/products/utils.js +144 -144
  496. package/dist/utils/algolia.d.ts +46 -46
  497. package/dist/utils/algolia.js +21 -21
  498. package/dist/utils/anonymisation.d.ts +54 -54
  499. package/dist/utils/anonymisation.js +280 -280
  500. package/dist/utils/array.d.ts +5 -5
  501. package/dist/utils/array.js +14 -14
  502. package/dist/utils/aws.d.ts +36 -36
  503. package/dist/utils/aws.js +154 -154
  504. package/dist/utils/booking.d.ts +30 -30
  505. package/dist/utils/booking.js +127 -127
  506. package/dist/utils/cart.d.ts +279 -274
  507. package/dist/utils/cart.js +1152 -1143
  508. package/dist/utils/cart.js.map +1 -1
  509. package/dist/utils/categories.d.ts +2 -2
  510. package/dist/utils/categories.js +54 -54
  511. package/dist/utils/cmv.d.ts +12 -12
  512. package/dist/utils/cmv.js +108 -108
  513. package/dist/utils/console.d.ts +6 -6
  514. package/dist/utils/console.js +59 -59
  515. package/dist/utils/context.d.ts +20 -20
  516. package/dist/utils/context.js +61 -61
  517. package/dist/utils/currency.d.ts +6 -6
  518. package/dist/utils/currency.js +91 -91
  519. package/dist/utils/data.d.ts +31 -31
  520. package/dist/utils/data.js +302 -302
  521. package/dist/utils/date.d.ts +1 -1
  522. package/dist/utils/date.js +16 -16
  523. package/dist/utils/dimensions.d.ts +3 -3
  524. package/dist/utils/dimensions.js +16 -16
  525. package/dist/utils/discount.d.ts +192 -192
  526. package/dist/utils/discount.js +1180 -1180
  527. package/dist/utils/errors.d.ts +133 -133
  528. package/dist/utils/errors.js +171 -171
  529. package/dist/utils/file-admin.d.ts +8 -8
  530. package/dist/utils/file-admin.js +39 -39
  531. package/dist/utils/file.d.ts +39 -39
  532. package/dist/utils/file.js +208 -208
  533. package/dist/utils/firebase-admin.d.ts +11 -11
  534. package/dist/utils/firebase-admin.js +73 -73
  535. package/dist/utils/firebase.d.ts +58 -58
  536. package/dist/utils/firebase.js +148 -148
  537. package/dist/utils/import.d.ts +1 -1
  538. package/dist/utils/import.js +21 -21
  539. package/dist/utils/inventories.d.ts +101 -101
  540. package/dist/utils/inventories.js +467 -467
  541. package/dist/utils/locale.d.ts +24 -24
  542. package/dist/utils/locale.js +91 -91
  543. package/dist/utils/mailchimp.d.ts +58 -58
  544. package/dist/utils/mailchimp.js +531 -531
  545. package/dist/utils/mathUtils.d.ts +17 -17
  546. package/dist/utils/mathUtils.js +324 -324
  547. package/dist/utils/mongodb.d.ts +1 -1
  548. package/dist/utils/mongodb.js +22 -22
  549. package/dist/utils/object.d.ts +32 -32
  550. package/dist/utils/object.js +133 -133
  551. package/dist/utils/payment.d.ts +10 -10
  552. package/dist/utils/payment.js +23 -23
  553. package/dist/utils/products.d.ts +47 -47
  554. package/dist/utils/products.js +214 -214
  555. package/dist/utils/promiseToPurchase.d.ts +121 -121
  556. package/dist/utils/promiseToPurchase.js +329 -329
  557. package/dist/utils/prosprsearch.d.ts +42 -42
  558. package/dist/utils/prosprsearch.js +216 -216
  559. package/dist/utils/refunds.d.ts +2 -2
  560. package/dist/utils/refunds.js +21 -21
  561. package/dist/utils/sdc.d.ts +10 -10
  562. package/dist/utils/sdc.js +1309 -1309
  563. package/dist/utils/searchIndexes.d.ts +58 -58
  564. package/dist/utils/searchIndexes.js +247 -247
  565. package/dist/utils/services.d.ts +44 -44
  566. package/dist/utils/services.js +415 -415
  567. package/dist/utils/shipment.d.ts +110 -110
  568. package/dist/utils/shipment.js +341 -345
  569. package/dist/utils/shipment.js.map +1 -1
  570. package/dist/utils/simpletexting.d.ts +2 -2
  571. package/dist/utils/simpletexting.js +45 -45
  572. package/dist/utils/sliders.d.ts +4 -4
  573. package/dist/utils/sliders.js +24 -24
  574. package/dist/utils/string.d.ts +16 -16
  575. package/dist/utils/string.js +192 -192
  576. package/dist/utils/tcgService.d.ts +129 -129
  577. package/dist/utils/tcgService.js +494 -494
  578. package/dist/utils/tools.d.ts +5 -5
  579. package/dist/utils/tools.js +13 -13
  580. package/dist/utils/transferRequests.d.ts +43 -43
  581. package/dist/utils/transferRequests.js +67 -67
  582. package/dist/utils/update.d.ts +7 -7
  583. package/dist/utils/update.js +137 -137
  584. package/dist/utils/weight.d.ts +3 -3
  585. package/dist/utils/weight.js +16 -16
  586. package/dist/utils/zones.d.ts +11 -11
  587. package/dist/utils/zones.js +218 -218
  588. package/package.json +107 -107
  589. package/publish.sh +143 -143
  590. package/readme.md +182 -182
@@ -1,217 +1,217 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const BGJob_1 = require("../../Interfaces/BGJob");
7
- const console_1 = require("../../utils/console");
8
- const csvtojson_1 = __importDefault(require("csvtojson"));
9
- const Space_1 = __importDefault(require("../Space"));
10
- const file_1 = require("../../utils/file");
11
- const toNumber_1 = __importDefault(require("lodash/toNumber"));
12
- const IInventoryItem_1 = require("../../Interfaces/Product/IInventoryItem");
13
- const baseService_1 = require("../baseService");
14
- const DatabaseService_1 = __importDefault(require("../../services/database/DatabaseService"));
15
- const BatchUtils_1 = __importDefault(require("../../services/database/BatchUtils"));
16
- class BGJob extends baseService_1.BaseServiceClass {
17
- constructor() {
18
- super(...arguments);
19
- this.cancel = async () => {
20
- try {
21
- return await this.save({
22
- canceled_at: new Date(),
23
- canceled_by: this._user,
24
- status: BGJob_1.BGJobStatusEnum.CANCELED
25
- }, undefined, true);
26
- }
27
- catch (error) {
28
- (0, console_1.errorMessage)(error.toString());
29
- }
30
- };
31
- this._validateData = () => {
32
- switch (this._data.action) {
33
- case BGJob_1.BGJobActionEnum.UPDATE_INVENTORY:
34
- if (!!!this._data.file_data)
35
- return false;
36
- break;
37
- default:
38
- break;
39
- }
40
- return true;
41
- };
42
- this.start = async () => {
43
- if (this.data().status !== BGJob_1.BGJobStatusEnum.QUEUED) {
44
- throw new Error('Job is not in QUEUED status, you may need to cancel it');
45
- }
46
- if (!!!this._validateData()) {
47
- throw new Error('Job is not valid. Please cancel it and try again');
48
- }
49
- return await this.save({
50
- status: BGJob_1.BGJobStatusEnum.IN_PROGRESS,
51
- batch_index: 0,
52
- batch_size: this._data.action === BGJob_1.BGJobActionEnum.UPDATE_INVENTORY ? 250 : 300
53
- }, undefined, true);
54
- };
55
- this.run = async (path, admin, os) => {
56
- if (this.data().status !== BGJob_1.BGJobStatusEnum.IN_PROGRESS) {
57
- throw new Error('Job is not in IN_PROGRESS status, please wait or cancel it');
58
- }
59
- const space = await Space_1.default.getCurrentSpaceWithRef(this._collection.path, this._user);
60
- if (!!!space)
61
- throw new Error('No space found');
62
- try {
63
- switch (this._data.action) {
64
- case BGJob_1.BGJobActionEnum.UPDATE_INVENTORY:
65
- if (this.data().batch_index !== 0)
66
- return; //already running let it go
67
- await this._updateInventory(path, admin, os, space);
68
- break;
69
- default:
70
- return false;
71
- }
72
- }
73
- catch (error) {
74
- await this.save({
75
- error: error.toString(),
76
- status: BGJob_1.BGJobStatusEnum.ERROR
77
- }, undefined, true);
78
- (0, console_1.errorMessage)(error.toString());
79
- return false;
80
- }
81
- try {
82
- return await this.save({ batch_index: (this._data.batch_index || 0) + 1 }, undefined, true);
83
- }
84
- catch (error) {
85
- await this.save({
86
- error: error.toString(),
87
- status: BGJob_1.BGJobStatusEnum.ERROR
88
- }, undefined, true);
89
- (0, console_1.errorMessage)(error.toString());
90
- return false;
91
- }
92
- };
93
- this._updateInventory = async (path, admin, os, space) => {
94
- if (!!!this._data.file_data)
95
- throw new Error('No file data');
96
- await this.save({
97
- status: BGJob_1.BGJobStatusEnum.IN_PROGRESS,
98
- batch_index: 1,
99
- batch_size: this._data.action === BGJob_1.BGJobActionEnum.UPDATE_INVENTORY ? 250 : 300
100
- }, undefined, true);
101
- const file = await (0, file_1.downloadFile)(this._data.file_data.path, path, admin, os);
102
- const data = await (0, csvtojson_1.default)({
103
- delimiter: [';', ',']
104
- }).fromFile(file);
105
- let batch = [];
106
- console.log('merging all stores : ', data.length);
107
- //regrouper en 1 tout les magasin
108
- for (const line of data) {
109
- const index = batch.findIndex((object) => {
110
- return object.PRDNUM === line.PRDNUM;
111
- });
112
- if (index > -1) {
113
- //add inventory to it
114
- batch[index].inventory.push({
115
- store_id: line.SITNAM,
116
- qty: {
117
- available: (0, toNumber_1.default)(line.SITQTY || 0) - (0, toNumber_1.default)(line.RSVQTY || 0)
118
- }
119
- });
120
- batch[index].webQty += (0, toNumber_1.default)(line.SITQTY || 0) - (0, toNumber_1.default)(line.RSVQTY || 0);
121
- }
122
- else {
123
- //build new entry
124
- batch.push({
125
- PRDNUM: line.PRDNUM,
126
- inventory: [
127
- {
128
- store_id: line.SITNAM,
129
- qty: {
130
- available: (0, toNumber_1.default)(line.SITQTY || 0) - (0, toNumber_1.default)(line.RSVQTY || 0)
131
- }
132
- }
133
- ],
134
- webQty: (0, toNumber_1.default)(line.SITQTY || 0) - (0, toNumber_1.default)(line.RSVQTY || 0)
135
- });
136
- }
137
- }
138
- console.log('All lines merged into X items : ', batch.length);
139
- if (batch.length === 0) {
140
- return await this.save({
141
- status: BGJob_1.BGJobStatusEnum.FINISHED,
142
- finished_at: new Date()
143
- }, undefined, true);
144
- }
145
- const inventorys = await space.inventoryItems.get();
146
- let saveList = [];
147
- const saveBatch = async () => {
148
- const thisBatch = new BatchUtils_1.default();
149
- for (let item of saveList) {
150
- thisBatch.set(DatabaseService_1.default.addToPath(space.getRef().path, space.getRef().id + '/inventories'), item.id, item, { merge: true });
151
- // le { merge: true } est super important, sinon ça écrase la valeur dans la BD par ton nouvel objet partiel
152
- }
153
- await thisBatch.commit();
154
- saveList = [];
155
- };
156
- console.log('Processing entries');
157
- let count = 0;
158
- for (const inventoryLine of batch) {
159
- if (++count % (this._data.batch_size || 250) === 0) {
160
- try {
161
- await this.save({
162
- batch_index: (this._data.batch_index || 0) + 1
163
- }, undefined, true);
164
- }
165
- catch (error) {
166
- console.log(error.toString());
167
- }
168
- }
169
- try {
170
- const inventoryData = inventorys.find((i) => i.sku == inventoryLine.PRDNUM);
171
- if (!!!inventoryData)
172
- continue;
173
- if (DatabaseService_1.default.getPathParent(this._collection.path) == '/')
174
- continue;
175
- console.log('Updating : ', inventoryLine.PRDNUM);
176
- let isDiff = false;
177
- if (!!!inventoryData.web_inventory ||
178
- (0, toNumber_1.default)(inventoryData.web_inventory.available || 0) !== inventoryLine.webQty)
179
- isDiff = true;
180
- for (const inv of inventoryData.inventories) {
181
- if (!!inventoryLine.inventory.find((i) => (i.store_id || '').toLowerCase() === inv.store_id.toLowerCase() &&
182
- (!!!i.qty || (0, toNumber_1.default)(i.qty.available || 0) !== (0, toNumber_1.default)(inv.qty.available || 0))))
183
- isDiff = true;
184
- }
185
- if (!isDiff) {
186
- console.log('Inventory didnt change, not saving : ', inventoryData.sku);
187
- continue;
188
- }
189
- saveList.push(Object.assign(Object.assign({}, inventoryData), { inventories: inventoryData.inventories.map((_inventory) => {
190
- const newInv = inventoryLine.inventory.find((i) => _inventory.store_id.toLowerCase() === (i.store_id || '').toLowerCase());
191
- if (!!!newInv)
192
- return _inventory;
193
- return Object.assign(Object.assign({}, _inventory), { qty: Object.assign(Object.assign({}, _inventory.qty), newInv.qty) });
194
- }), web_inventory: Object.assign(Object.assign(Object.assign({}, (0, IInventoryItem_1.getDefaultInventoryQuantities)()), (inventoryData.web_inventory || {})), { available: inventoryLine.webQty }) }));
195
- if (saveList.length >= 100) {
196
- await saveBatch();
197
- }
198
- }
199
- catch (error) {
200
- console.log('error', error);
201
- continue;
202
- }
203
- }
204
- console.log('update done');
205
- if (saveList.length > 0) {
206
- await saveBatch();
207
- }
208
- return await this.save({
209
- status: BGJob_1.BGJobStatusEnum.FINISHED,
210
- finished_at: new Date()
211
- }, undefined, true);
212
- return;
213
- };
214
- }
215
- }
216
- exports.default = BGJob;
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const BGJob_1 = require("../../Interfaces/BGJob");
7
+ const console_1 = require("../../utils/console");
8
+ const csvtojson_1 = __importDefault(require("csvtojson"));
9
+ const Space_1 = __importDefault(require("../Space"));
10
+ const file_1 = require("../../utils/file");
11
+ const toNumber_1 = __importDefault(require("lodash/toNumber"));
12
+ const IInventoryItem_1 = require("../../Interfaces/Product/IInventoryItem");
13
+ const baseService_1 = require("../baseService");
14
+ const DatabaseService_1 = __importDefault(require("../../services/database/DatabaseService"));
15
+ const BatchUtils_1 = __importDefault(require("../../services/database/BatchUtils"));
16
+ class BGJob extends baseService_1.BaseServiceClass {
17
+ constructor() {
18
+ super(...arguments);
19
+ this.cancel = async () => {
20
+ try {
21
+ return await this.save({
22
+ canceled_at: new Date(),
23
+ canceled_by: this._user,
24
+ status: BGJob_1.BGJobStatusEnum.CANCELED
25
+ }, undefined, true);
26
+ }
27
+ catch (error) {
28
+ (0, console_1.errorMessage)(error.toString());
29
+ }
30
+ };
31
+ this._validateData = () => {
32
+ switch (this._data.action) {
33
+ case BGJob_1.BGJobActionEnum.UPDATE_INVENTORY:
34
+ if (!!!this._data.file_data)
35
+ return false;
36
+ break;
37
+ default:
38
+ break;
39
+ }
40
+ return true;
41
+ };
42
+ this.start = async () => {
43
+ if (this.data().status !== BGJob_1.BGJobStatusEnum.QUEUED) {
44
+ throw new Error('Job is not in QUEUED status, you may need to cancel it');
45
+ }
46
+ if (!!!this._validateData()) {
47
+ throw new Error('Job is not valid. Please cancel it and try again');
48
+ }
49
+ return await this.save({
50
+ status: BGJob_1.BGJobStatusEnum.IN_PROGRESS,
51
+ batch_index: 0,
52
+ batch_size: this._data.action === BGJob_1.BGJobActionEnum.UPDATE_INVENTORY ? 250 : 300
53
+ }, undefined, true);
54
+ };
55
+ this.run = async (path, admin, os) => {
56
+ if (this.data().status !== BGJob_1.BGJobStatusEnum.IN_PROGRESS) {
57
+ throw new Error('Job is not in IN_PROGRESS status, please wait or cancel it');
58
+ }
59
+ const space = await Space_1.default.getCurrentSpaceWithRef(this._collection.path, this._user);
60
+ if (!!!space)
61
+ throw new Error('No space found');
62
+ try {
63
+ switch (this._data.action) {
64
+ case BGJob_1.BGJobActionEnum.UPDATE_INVENTORY:
65
+ if (this.data().batch_index !== 0)
66
+ return; //already running let it go
67
+ await this._updateInventory(path, admin, os, space);
68
+ break;
69
+ default:
70
+ return false;
71
+ }
72
+ }
73
+ catch (error) {
74
+ await this.save({
75
+ error: error.toString(),
76
+ status: BGJob_1.BGJobStatusEnum.ERROR
77
+ }, undefined, true);
78
+ (0, console_1.errorMessage)(error.toString());
79
+ return false;
80
+ }
81
+ try {
82
+ return await this.save({ batch_index: (this._data.batch_index || 0) + 1 }, undefined, true);
83
+ }
84
+ catch (error) {
85
+ await this.save({
86
+ error: error.toString(),
87
+ status: BGJob_1.BGJobStatusEnum.ERROR
88
+ }, undefined, true);
89
+ (0, console_1.errorMessage)(error.toString());
90
+ return false;
91
+ }
92
+ };
93
+ this._updateInventory = async (path, admin, os, space) => {
94
+ if (!!!this._data.file_data)
95
+ throw new Error('No file data');
96
+ await this.save({
97
+ status: BGJob_1.BGJobStatusEnum.IN_PROGRESS,
98
+ batch_index: 1,
99
+ batch_size: this._data.action === BGJob_1.BGJobActionEnum.UPDATE_INVENTORY ? 250 : 300
100
+ }, undefined, true);
101
+ const file = await (0, file_1.downloadFile)(this._data.file_data.path, path, admin, os);
102
+ const data = await (0, csvtojson_1.default)({
103
+ delimiter: [';', ',']
104
+ }).fromFile(file);
105
+ let batch = [];
106
+ console.log('merging all stores : ', data.length);
107
+ //regrouper en 1 tout les magasin
108
+ for (const line of data) {
109
+ const index = batch.findIndex((object) => {
110
+ return object.PRDNUM === line.PRDNUM;
111
+ });
112
+ if (index > -1) {
113
+ //add inventory to it
114
+ batch[index].inventory.push({
115
+ store_id: line.SITNAM,
116
+ qty: {
117
+ available: (0, toNumber_1.default)(line.SITQTY || 0) - (0, toNumber_1.default)(line.RSVQTY || 0)
118
+ }
119
+ });
120
+ batch[index].webQty += (0, toNumber_1.default)(line.SITQTY || 0) - (0, toNumber_1.default)(line.RSVQTY || 0);
121
+ }
122
+ else {
123
+ //build new entry
124
+ batch.push({
125
+ PRDNUM: line.PRDNUM,
126
+ inventory: [
127
+ {
128
+ store_id: line.SITNAM,
129
+ qty: {
130
+ available: (0, toNumber_1.default)(line.SITQTY || 0) - (0, toNumber_1.default)(line.RSVQTY || 0)
131
+ }
132
+ }
133
+ ],
134
+ webQty: (0, toNumber_1.default)(line.SITQTY || 0) - (0, toNumber_1.default)(line.RSVQTY || 0)
135
+ });
136
+ }
137
+ }
138
+ console.log('All lines merged into X items : ', batch.length);
139
+ if (batch.length === 0) {
140
+ return await this.save({
141
+ status: BGJob_1.BGJobStatusEnum.FINISHED,
142
+ finished_at: new Date()
143
+ }, undefined, true);
144
+ }
145
+ const inventorys = await space.inventoryItems.get();
146
+ let saveList = [];
147
+ const saveBatch = async () => {
148
+ const thisBatch = new BatchUtils_1.default();
149
+ for (let item of saveList) {
150
+ thisBatch.set(DatabaseService_1.default.addToPath(space.getRef().path, space.getRef().id + '/inventories'), item.id, item, { merge: true });
151
+ // le { merge: true } est super important, sinon ça écrase la valeur dans la BD par ton nouvel objet partiel
152
+ }
153
+ await thisBatch.commit();
154
+ saveList = [];
155
+ };
156
+ console.log('Processing entries');
157
+ let count = 0;
158
+ for (const inventoryLine of batch) {
159
+ if (++count % (this._data.batch_size || 250) === 0) {
160
+ try {
161
+ await this.save({
162
+ batch_index: (this._data.batch_index || 0) + 1
163
+ }, undefined, true);
164
+ }
165
+ catch (error) {
166
+ console.log(error.toString());
167
+ }
168
+ }
169
+ try {
170
+ const inventoryData = inventorys.find((i) => i.sku == inventoryLine.PRDNUM);
171
+ if (!!!inventoryData)
172
+ continue;
173
+ if (DatabaseService_1.default.getPathParent(this._collection.path) == '/')
174
+ continue;
175
+ console.log('Updating : ', inventoryLine.PRDNUM);
176
+ let isDiff = false;
177
+ if (!!!inventoryData.web_inventory ||
178
+ (0, toNumber_1.default)(inventoryData.web_inventory.available || 0) !== inventoryLine.webQty)
179
+ isDiff = true;
180
+ for (const inv of inventoryData.inventories) {
181
+ if (!!inventoryLine.inventory.find((i) => (i.store_id || '').toLowerCase() === inv.store_id.toLowerCase() &&
182
+ (!!!i.qty || (0, toNumber_1.default)(i.qty.available || 0) !== (0, toNumber_1.default)(inv.qty.available || 0))))
183
+ isDiff = true;
184
+ }
185
+ if (!isDiff) {
186
+ console.log('Inventory didnt change, not saving : ', inventoryData.sku);
187
+ continue;
188
+ }
189
+ saveList.push(Object.assign(Object.assign({}, inventoryData), { inventories: inventoryData.inventories.map((_inventory) => {
190
+ const newInv = inventoryLine.inventory.find((i) => _inventory.store_id.toLowerCase() === (i.store_id || '').toLowerCase());
191
+ if (!!!newInv)
192
+ return _inventory;
193
+ return Object.assign(Object.assign({}, _inventory), { qty: Object.assign(Object.assign({}, _inventory.qty), newInv.qty) });
194
+ }), web_inventory: Object.assign(Object.assign(Object.assign({}, (0, IInventoryItem_1.getDefaultInventoryQuantities)()), (inventoryData.web_inventory || {})), { available: inventoryLine.webQty }) }));
195
+ if (saveList.length >= 100) {
196
+ await saveBatch();
197
+ }
198
+ }
199
+ catch (error) {
200
+ console.log('error', error);
201
+ continue;
202
+ }
203
+ }
204
+ console.log('update done');
205
+ if (saveList.length > 0) {
206
+ await saveBatch();
207
+ }
208
+ return await this.save({
209
+ status: BGJob_1.BGJobStatusEnum.FINISHED,
210
+ finished_at: new Date()
211
+ }, undefined, true);
212
+ return;
213
+ };
214
+ }
215
+ }
216
+ exports.default = BGJob;
217
217
  //# sourceMappingURL=index.js.map
@@ -1,34 +1,34 @@
1
- import 'firebase/firestore';
2
- export default class BackgroundWorker {
3
- private _space_id;
4
- private _org_id;
5
- constructor(spaceID: string, orgID: string);
6
- exec: (options: IBGWork) => void;
7
- listen: (callback: (bgs: IBGWork[]) => void | {}) => string;
8
- }
9
- export interface IBGWork {
10
- readonly job: BGWorkerWorkTypeEnum;
11
- readonly params?: any;
12
- readonly status?: BGWorkerWorkStatusEnum;
13
- readonly info?: string;
14
- readonly error?: string;
15
- readonly success?: string;
16
- readonly warning?: string;
17
- readonly postpone?: boolean;
18
- readonly exec_at?: Date;
19
- }
20
- export declare enum BGWorkerWorkTypeEnum {
21
- SAVEALLPRODUCTS = 0,
22
- SAVESOMEPRODUCTS = 1,
23
- INDEXALLPRODUCTS = 2,
24
- REMOVEALLPRODUCTSINDEX = 3,
25
- TOGGLEDISCOUNTRULE = 4,
26
- CHECKMARKETINGEMAILS = 5
27
- }
28
- export declare enum BGWorkerWorkStatusEnum {
29
- CANCELED = 0,
30
- WARMING_UP = 1,
31
- IN_PROGRESS = 2,
32
- ERROR = 3,
33
- DONE = 4
34
- }
1
+ import 'firebase/firestore';
2
+ export default class BackgroundWorker {
3
+ private _space_id;
4
+ private _org_id;
5
+ constructor(spaceID: string, orgID: string);
6
+ exec: (options: IBGWork) => void;
7
+ listen: (callback: (bgs: IBGWork[]) => void | {}) => string;
8
+ }
9
+ export interface IBGWork {
10
+ readonly job: BGWorkerWorkTypeEnum;
11
+ readonly params?: any;
12
+ readonly status?: BGWorkerWorkStatusEnum;
13
+ readonly info?: string;
14
+ readonly error?: string;
15
+ readonly success?: string;
16
+ readonly warning?: string;
17
+ readonly postpone?: boolean;
18
+ readonly exec_at?: Date;
19
+ }
20
+ export declare enum BGWorkerWorkTypeEnum {
21
+ SAVEALLPRODUCTS = 0,
22
+ SAVESOMEPRODUCTS = 1,
23
+ INDEXALLPRODUCTS = 2,
24
+ REMOVEALLPRODUCTSINDEX = 3,
25
+ TOGGLEDISCOUNTRULE = 4,
26
+ CHECKMARKETINGEMAILS = 5
27
+ }
28
+ export declare enum BGWorkerWorkStatusEnum {
29
+ CANCELED = 0,
30
+ WARMING_UP = 1,
31
+ IN_PROGRESS = 2,
32
+ ERROR = 3,
33
+ DONE = 4
34
+ }
@@ -1,60 +1,60 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.BGWorkerWorkStatusEnum = exports.BGWorkerWorkTypeEnum = void 0;
7
- require("firebase/firestore");
8
- const uniqBy_1 = __importDefault(require("lodash/uniqBy"));
9
- const console_1 = require("../../utils/console");
10
- const DatabaseService_1 = __importDefault(require("../../services/database/DatabaseService"));
11
- const moment_1 = __importDefault(require("moment"));
12
- class BackgroundWorker {
13
- constructor(spaceID, orgID) {
14
- this.exec = (options) => {
15
- DatabaseService_1.default.saveDocument(`/the_beast/1.0.0/orgs/${this._org_id}/spaces/${this._space_id}/background_processes`, options.job.toString(), (0, moment_1.default)().unix(), Object.assign(Object.assign({}, options), { status: BGWorkerWorkStatusEnum.WARMING_UP, info: '', error: '', success: '', warning: '' }), { merge: true });
16
- };
17
- this.listen = (callback) => {
18
- try {
19
- return DatabaseService_1.default.registerListener((e) => {
20
- if (!!!e.length)
21
- callback([]);
22
- callback((0, uniqBy_1.default)(e
23
- .filter((bg) => bg.exists && !!bg.data)
24
- .map((bg) => {
25
- const bgData = bg.data;
26
- if ([BGWorkerWorkStatusEnum.CANCELED].includes(bgData.status || BGWorkerWorkStatusEnum.WARMING_UP))
27
- return undefined;
28
- return bgData;
29
- })
30
- .filter((bg) => !!bg), (bg) => bg.job.toString()));
31
- }, `/the_beast/1.0.0/orgs/${this._org_id}/spaces/${this._space_id}/background_processes`);
32
- }
33
- catch (error) {
34
- (0, console_1.workingMessage)(`Error on listening to background processes`);
35
- throw error;
36
- }
37
- };
38
- this._space_id = spaceID;
39
- this._org_id = orgID;
40
- }
41
- }
42
- exports.default = BackgroundWorker;
43
- var BGWorkerWorkTypeEnum;
44
- (function (BGWorkerWorkTypeEnum) {
45
- BGWorkerWorkTypeEnum[BGWorkerWorkTypeEnum["SAVEALLPRODUCTS"] = 0] = "SAVEALLPRODUCTS";
46
- BGWorkerWorkTypeEnum[BGWorkerWorkTypeEnum["SAVESOMEPRODUCTS"] = 1] = "SAVESOMEPRODUCTS";
47
- BGWorkerWorkTypeEnum[BGWorkerWorkTypeEnum["INDEXALLPRODUCTS"] = 2] = "INDEXALLPRODUCTS";
48
- BGWorkerWorkTypeEnum[BGWorkerWorkTypeEnum["REMOVEALLPRODUCTSINDEX"] = 3] = "REMOVEALLPRODUCTSINDEX";
49
- BGWorkerWorkTypeEnum[BGWorkerWorkTypeEnum["TOGGLEDISCOUNTRULE"] = 4] = "TOGGLEDISCOUNTRULE";
50
- BGWorkerWorkTypeEnum[BGWorkerWorkTypeEnum["CHECKMARKETINGEMAILS"] = 5] = "CHECKMARKETINGEMAILS";
51
- })(BGWorkerWorkTypeEnum = exports.BGWorkerWorkTypeEnum || (exports.BGWorkerWorkTypeEnum = {}));
52
- var BGWorkerWorkStatusEnum;
53
- (function (BGWorkerWorkStatusEnum) {
54
- BGWorkerWorkStatusEnum[BGWorkerWorkStatusEnum["CANCELED"] = 0] = "CANCELED";
55
- BGWorkerWorkStatusEnum[BGWorkerWorkStatusEnum["WARMING_UP"] = 1] = "WARMING_UP";
56
- BGWorkerWorkStatusEnum[BGWorkerWorkStatusEnum["IN_PROGRESS"] = 2] = "IN_PROGRESS";
57
- BGWorkerWorkStatusEnum[BGWorkerWorkStatusEnum["ERROR"] = 3] = "ERROR";
58
- BGWorkerWorkStatusEnum[BGWorkerWorkStatusEnum["DONE"] = 4] = "DONE";
59
- })(BGWorkerWorkStatusEnum = exports.BGWorkerWorkStatusEnum || (exports.BGWorkerWorkStatusEnum = {}));
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.BGWorkerWorkStatusEnum = exports.BGWorkerWorkTypeEnum = void 0;
7
+ require("firebase/firestore");
8
+ const uniqBy_1 = __importDefault(require("lodash/uniqBy"));
9
+ const console_1 = require("../../utils/console");
10
+ const DatabaseService_1 = __importDefault(require("../../services/database/DatabaseService"));
11
+ const moment_1 = __importDefault(require("moment"));
12
+ class BackgroundWorker {
13
+ constructor(spaceID, orgID) {
14
+ this.exec = (options) => {
15
+ DatabaseService_1.default.saveDocument(`/the_beast/1.0.0/orgs/${this._org_id}/spaces/${this._space_id}/background_processes`, options.job.toString(), (0, moment_1.default)().unix(), Object.assign(Object.assign({}, options), { status: BGWorkerWorkStatusEnum.WARMING_UP, info: '', error: '', success: '', warning: '' }), { merge: true });
16
+ };
17
+ this.listen = (callback) => {
18
+ try {
19
+ return DatabaseService_1.default.registerListener((e) => {
20
+ if (!!!e.length)
21
+ callback([]);
22
+ callback((0, uniqBy_1.default)(e
23
+ .filter((bg) => bg.exists && !!bg.data)
24
+ .map((bg) => {
25
+ const bgData = bg.data;
26
+ if ([BGWorkerWorkStatusEnum.CANCELED].includes(bgData.status || BGWorkerWorkStatusEnum.WARMING_UP))
27
+ return undefined;
28
+ return bgData;
29
+ })
30
+ .filter((bg) => !!bg), (bg) => bg.job.toString()));
31
+ }, `/the_beast/1.0.0/orgs/${this._org_id}/spaces/${this._space_id}/background_processes`);
32
+ }
33
+ catch (error) {
34
+ (0, console_1.workingMessage)(`Error on listening to background processes`);
35
+ throw error;
36
+ }
37
+ };
38
+ this._space_id = spaceID;
39
+ this._org_id = orgID;
40
+ }
41
+ }
42
+ exports.default = BackgroundWorker;
43
+ var BGWorkerWorkTypeEnum;
44
+ (function (BGWorkerWorkTypeEnum) {
45
+ BGWorkerWorkTypeEnum[BGWorkerWorkTypeEnum["SAVEALLPRODUCTS"] = 0] = "SAVEALLPRODUCTS";
46
+ BGWorkerWorkTypeEnum[BGWorkerWorkTypeEnum["SAVESOMEPRODUCTS"] = 1] = "SAVESOMEPRODUCTS";
47
+ BGWorkerWorkTypeEnum[BGWorkerWorkTypeEnum["INDEXALLPRODUCTS"] = 2] = "INDEXALLPRODUCTS";
48
+ BGWorkerWorkTypeEnum[BGWorkerWorkTypeEnum["REMOVEALLPRODUCTSINDEX"] = 3] = "REMOVEALLPRODUCTSINDEX";
49
+ BGWorkerWorkTypeEnum[BGWorkerWorkTypeEnum["TOGGLEDISCOUNTRULE"] = 4] = "TOGGLEDISCOUNTRULE";
50
+ BGWorkerWorkTypeEnum[BGWorkerWorkTypeEnum["CHECKMARKETINGEMAILS"] = 5] = "CHECKMARKETINGEMAILS";
51
+ })(BGWorkerWorkTypeEnum = exports.BGWorkerWorkTypeEnum || (exports.BGWorkerWorkTypeEnum = {}));
52
+ var BGWorkerWorkStatusEnum;
53
+ (function (BGWorkerWorkStatusEnum) {
54
+ BGWorkerWorkStatusEnum[BGWorkerWorkStatusEnum["CANCELED"] = 0] = "CANCELED";
55
+ BGWorkerWorkStatusEnum[BGWorkerWorkStatusEnum["WARMING_UP"] = 1] = "WARMING_UP";
56
+ BGWorkerWorkStatusEnum[BGWorkerWorkStatusEnum["IN_PROGRESS"] = 2] = "IN_PROGRESS";
57
+ BGWorkerWorkStatusEnum[BGWorkerWorkStatusEnum["ERROR"] = 3] = "ERROR";
58
+ BGWorkerWorkStatusEnum[BGWorkerWorkStatusEnum["DONE"] = 4] = "DONE";
59
+ })(BGWorkerWorkStatusEnum = exports.BGWorkerWorkStatusEnum || (exports.BGWorkerWorkStatusEnum = {}));
60
60
  //# sourceMappingURL=index.js.map
@@ -1,5 +1,5 @@
1
- import IBlogArticle from '../../Interfaces/Blog/IBlogArticle';
2
- import { BaseServiceClass } from '../baseService';
3
- export default class BlogArticle extends BaseServiceClass<IBlogArticle> {
4
- data: () => IBlogArticle;
5
- }
1
+ import IBlogArticle from '../../Interfaces/Blog/IBlogArticle';
2
+ import { BaseServiceClass } from '../baseService';
3
+ export default class BlogArticle extends BaseServiceClass<IBlogArticle> {
4
+ data: () => IBlogArticle;
5
+ }