addio-admin-sdk 1.7.162 → 1.7.163

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 (576) hide show
  1. package/.babelrc +17 -17
  2. package/.claude/settings.local.json +7 -0
  3. package/.env +14 -0
  4. package/.env.dev +14 -14
  5. package/.github/workflows/run_unit_test.yaml +48 -48
  6. package/addio-sdk-doc.md +1473 -1473
  7. package/changelog.md +564 -564
  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 +180 -180
  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/CMS/index.d.ts +28 -28
  35. package/dist/Interfaces/CMS/index.js +5 -5
  36. package/dist/Interfaces/Cart/IElavonPayload.d.ts +93 -93
  37. package/dist/Interfaces/Cart/IElavonPayload.js +17 -17
  38. package/dist/Interfaces/Cart/IMarketPayload.d.ts +12 -12
  39. package/dist/Interfaces/Cart/IMarketPayload.js +2 -2
  40. package/dist/Interfaces/Cart/IPandaPayload.d.ts +64 -64
  41. package/dist/Interfaces/Cart/IPandaPayload.js +18 -18
  42. package/dist/Interfaces/Cart/IPaymentCard.d.ts +22 -22
  43. package/dist/Interfaces/Cart/IPaymentCard.js +44 -44
  44. package/dist/Interfaces/Cart/IPaypalPayload.d.ts +9 -9
  45. package/dist/Interfaces/Cart/IPaypalPayload.js +2 -2
  46. package/dist/Interfaces/Cart/IPaysafePayload.d.ts +72 -72
  47. package/dist/Interfaces/Cart/IPaysafePayload.js +2 -2
  48. package/dist/Interfaces/Cart/IStripePayload.d.ts +66 -66
  49. package/dist/Interfaces/Cart/IStripePayload.js +2 -2
  50. package/dist/Interfaces/Cart/index.d.ts +451 -451
  51. package/dist/Interfaces/Cart/index.js +216 -216
  52. package/dist/Interfaces/CartReservedQuantities/index.d.ts +10 -10
  53. package/dist/Interfaces/CartReservedQuantities/index.js +2 -2
  54. package/dist/Interfaces/CashDrawers/index.d.ts +38 -38
  55. package/dist/Interfaces/CashDrawers/index.js +19 -19
  56. package/dist/Interfaces/Catalogue/index.d.ts +68 -68
  57. package/dist/Interfaces/Catalogue/index.js +37 -37
  58. package/dist/Interfaces/Category/index.d.ts +33 -33
  59. package/dist/Interfaces/Category/index.js +2 -2
  60. package/dist/Interfaces/Chart/index.d.ts +11 -11
  61. package/dist/Interfaces/Chart/index.js +2 -2
  62. package/dist/Interfaces/Class/index.d.ts +8 -8
  63. package/dist/Interfaces/Class/index.js +2 -2
  64. package/dist/Interfaces/Consent/index.d.ts +6 -6
  65. package/dist/Interfaces/Consent/index.js +2 -2
  66. package/dist/Interfaces/Context/IContextProps.d.ts +4 -4
  67. package/dist/Interfaces/Context/IContextProps.js +2 -2
  68. package/dist/Interfaces/Context/IContextState.d.ts +15 -15
  69. package/dist/Interfaces/Context/IContextState.js +2 -2
  70. package/dist/Interfaces/Customer/ICustomerBadge.d.ts +2 -2
  71. package/dist/Interfaces/Customer/ICustomerBadge.js +2 -2
  72. package/dist/Interfaces/Customer/ICustomerRating.d.ts +10 -10
  73. package/dist/Interfaces/Customer/ICustomerRating.js +2 -2
  74. package/dist/Interfaces/Customer/IStoreCredit.d.ts +13 -13
  75. package/dist/Interfaces/Customer/IStoreCredit.js +2 -2
  76. package/dist/Interfaces/Customer/index.d.ts +104 -104
  77. package/dist/Interfaces/Customer/index.js +148 -148
  78. package/dist/Interfaces/Declination/index.d.ts +117 -117
  79. package/dist/Interfaces/Declination/index.js +66 -66
  80. package/dist/Interfaces/Document/index.d.ts +8 -8
  81. package/dist/Interfaces/Document/index.js +2 -2
  82. package/dist/Interfaces/Elastic/index.d.ts +89 -89
  83. package/dist/Interfaces/Elastic/index.js +2 -2
  84. package/dist/Interfaces/Email/CustomGR/I3DPrintEmail.d.ts +11 -11
  85. package/dist/Interfaces/Email/CustomGR/I3DPrintEmail.js +2 -2
  86. package/dist/Interfaces/Email/CustomGR/IBorrowToolsEmail.d.ts +15 -15
  87. package/dist/Interfaces/Email/CustomGR/IBorrowToolsEmail.js +2 -2
  88. package/dist/Interfaces/Email/CustomGR/IPickupMaterialsEmail.d.ts +12 -12
  89. package/dist/Interfaces/Email/CustomGR/IPickupMaterialsEmail.js +2 -2
  90. package/dist/Interfaces/Email/CustomGR/IPreMeetingFormEmail.d.ts +36 -36
  91. package/dist/Interfaces/Email/CustomGR/IPreMeetingFormEmail.js +2 -2
  92. package/dist/Interfaces/Email/CustomGR/ISponsorRequestEmail.d.ts +12 -12
  93. package/dist/Interfaces/Email/CustomGR/ISponsorRequestEmail.js +2 -2
  94. package/dist/Interfaces/Email/CustomGR/ITransportEmail.d.ts +12 -12
  95. package/dist/Interfaces/Email/CustomGR/ITransportEmail.js +2 -2
  96. package/dist/Interfaces/Email/CustomGR/ITransportQuoteEmail.d.ts +12 -12
  97. package/dist/Interfaces/Email/CustomGR/ITransportQuoteEmail.js +2 -2
  98. package/dist/Interfaces/Email/CustomGR/IVegetalsEmail.d.ts +16 -16
  99. package/dist/Interfaces/Email/CustomGR/IVegetalsEmail.js +2 -2
  100. package/dist/Interfaces/Email/CustomGR/IWishlistEmail.d.ts +15 -15
  101. package/dist/Interfaces/Email/CustomGR/IWishlistEmail.js +2 -2
  102. package/dist/Interfaces/Email/IAbandonnedCartEmail.d.ts +29 -29
  103. package/dist/Interfaces/Email/IAbandonnedCartEmail.js +2 -2
  104. package/dist/Interfaces/Email/IAccountConfirmationEmail.d.ts +22 -22
  105. package/dist/Interfaces/Email/IAccountConfirmationEmail.js +2 -2
  106. package/dist/Interfaces/Email/IApplicationEmail.d.ts +19 -19
  107. package/dist/Interfaces/Email/IApplicationEmail.js +2 -2
  108. package/dist/Interfaces/Email/IBackInStockEmail.d.ts +21 -21
  109. package/dist/Interfaces/Email/IBackInStockEmail.js +2 -2
  110. package/dist/Interfaces/Email/IContactEmail.d.ts +20 -20
  111. package/dist/Interfaces/Email/IContactEmail.js +2 -2
  112. package/dist/Interfaces/Email/ICustomerBookingAdminEmail.d.ts +15 -15
  113. package/dist/Interfaces/Email/ICustomerBookingAdminEmail.js +2 -2
  114. package/dist/Interfaces/Email/ICustomerBookingEmail.d.ts +14 -14
  115. package/dist/Interfaces/Email/ICustomerBookingEmail.js +2 -2
  116. package/dist/Interfaces/Email/IEmail.d.ts +20 -20
  117. package/dist/Interfaces/Email/IEmail.js +60 -60
  118. package/dist/Interfaces/Email/IOrderConfirmationEmail.d.ts +47 -47
  119. package/dist/Interfaces/Email/IOrderConfirmationEmail.js +2 -2
  120. package/dist/Interfaces/Email/IPasswordResetEmail.d.ts +17 -17
  121. package/dist/Interfaces/Email/IPasswordResetEmail.js +2 -2
  122. package/dist/Interfaces/Email/IPhotoShootEmail.d.ts +14 -14
  123. package/dist/Interfaces/Email/IPhotoShootEmail.js +2 -2
  124. package/dist/Interfaces/Email/IPickupConfirmation.d.ts +23 -23
  125. package/dist/Interfaces/Email/IPickupConfirmation.js +2 -2
  126. package/dist/Interfaces/Email/IShippingConfirmation.d.ts +23 -23
  127. package/dist/Interfaces/Email/IShippingConfirmation.js +2 -2
  128. package/dist/Interfaces/Email/IWelcomeEmail.d.ts +19 -19
  129. package/dist/Interfaces/Email/IWelcomeEmail.js +2 -2
  130. package/dist/Interfaces/ExportSchema/index.d.ts +7 -7
  131. package/dist/Interfaces/ExportSchema/index.js +2 -2
  132. package/dist/Interfaces/ExternalService/BaseExternalService.d.ts +12 -12
  133. package/dist/Interfaces/ExternalService/BaseExternalService.js +2 -2
  134. package/dist/Interfaces/ExternalService/ExternalProductsService.d.ts +4 -4
  135. package/dist/Interfaces/ExternalService/ExternalProductsService.js +2 -2
  136. package/dist/Interfaces/ExternalService/index.d.ts +9 -9
  137. package/dist/Interfaces/ExternalService/index.js +2 -2
  138. package/dist/Interfaces/FirstOrderTracking/index.d.ts +5 -5
  139. package/dist/Interfaces/FirstOrderTracking/index.js +2 -2
  140. package/dist/Interfaces/G2/index.d.ts +556 -556
  141. package/dist/Interfaces/G2/index.js +38 -38
  142. package/dist/Interfaces/Indexed/Product/IIndexedLastSavedProduct.d.ts +20 -20
  143. package/dist/Interfaces/Indexed/Product/IIndexedLastSavedProduct.js +2 -2
  144. package/dist/Interfaces/Indexed/Product/index.d.ts +105 -105
  145. package/dist/Interfaces/Indexed/Product/index.js +253 -253
  146. package/dist/Interfaces/Inventory/index.d.ts +19 -19
  147. package/dist/Interfaces/Inventory/index.js +8 -8
  148. package/dist/Interfaces/Invoice/index.d.ts +4 -4
  149. package/dist/Interfaces/Invoice/index.js +2 -2
  150. package/dist/Interfaces/MarketplacePublication/MarketplaceOrderData.d.ts +3 -3
  151. package/dist/Interfaces/MarketplacePublication/MarketplaceOrderData.js +2 -2
  152. package/dist/Interfaces/MarketplacePublication/index.d.ts +23 -23
  153. package/dist/Interfaces/MarketplacePublication/index.js +22 -22
  154. package/dist/Interfaces/Menu/index.d.ts +40 -40
  155. package/dist/Interfaces/Menu/index.js +16 -16
  156. package/dist/Interfaces/Note/index.d.ts +10 -10
  157. package/dist/Interfaces/Note/index.js +7 -7
  158. package/dist/Interfaces/Operations/ICreatedBy.d.ts +6 -6
  159. package/dist/Interfaces/Operations/ICreatedBy.js +2 -2
  160. package/dist/Interfaces/Operations/IUpdate.d.ts +5 -5
  161. package/dist/Interfaces/Operations/IUpdate.js +2 -2
  162. package/dist/Interfaces/Order/index.d.ts +4 -4
  163. package/dist/Interfaces/Order/index.js +2 -2
  164. package/dist/Interfaces/Org/IRelUser.d.ts +9 -9
  165. package/dist/Interfaces/Org/IRelUser.js +2 -2
  166. package/dist/Interfaces/Org/index.d.ts +29 -29
  167. package/dist/Interfaces/Org/index.js +12 -12
  168. package/dist/Interfaces/Payment/index.d.ts +26 -26
  169. package/dist/Interfaces/Payment/index.js +14 -14
  170. package/dist/Interfaces/Product/IAttributeFamily.d.ts +6 -6
  171. package/dist/Interfaces/Product/IAttributeFamily.js +2 -2
  172. package/dist/Interfaces/Product/IImportProduct.d.ts +42 -42
  173. package/dist/Interfaces/Product/IImportProduct.js +882 -882
  174. package/dist/Interfaces/Product/IInventoryItem.d.ts +74 -74
  175. package/dist/Interfaces/Product/IInventoryItem.js +38 -38
  176. package/dist/Interfaces/Product/IPricing.d.ts +177 -177
  177. package/dist/Interfaces/Product/IPricing.js +180 -180
  178. package/dist/Interfaces/Product/index.d.ts +137 -137
  179. package/dist/Interfaces/Product/index.js +64 -64
  180. package/dist/Interfaces/ProductAttribute/index.d.ts +11 -11
  181. package/dist/Interfaces/ProductAttribute/index.js +2 -2
  182. package/dist/Interfaces/PromiseToPurchase/BankType.d.ts +41 -41
  183. package/dist/Interfaces/PromiseToPurchase/BankType.js +41 -41
  184. package/dist/Interfaces/PromiseToPurchase/IIndexedBankUsed.d.ts +33 -33
  185. package/dist/Interfaces/PromiseToPurchase/IIndexedBankUsed.js +15 -15
  186. package/dist/Interfaces/PromiseToPurchase/IIndexedCustomerPromiseToPurchase.d.ts +19 -19
  187. package/dist/Interfaces/PromiseToPurchase/IIndexedCustomerPromiseToPurchase.js +2 -2
  188. package/dist/Interfaces/PromiseToPurchase/index.d.ts +50 -50
  189. package/dist/Interfaces/PromiseToPurchase/index.js +13 -13
  190. package/dist/Interfaces/PurchaseOrder/index.d.ts +17 -17
  191. package/dist/Interfaces/PurchaseOrder/index.js +2 -2
  192. package/dist/Interfaces/Query/IBrandQueryOptions.d.ts +11 -11
  193. package/dist/Interfaces/Query/IBrandQueryOptions.js +2 -2
  194. package/dist/Interfaces/Query/ICategoryQueryOptions.d.ts +11 -11
  195. package/dist/Interfaces/Query/ICategoryQueryOptions.js +2 -2
  196. package/dist/Interfaces/Query/IProductQueryOptions.d.ts +16 -16
  197. package/dist/Interfaces/Query/IProductQueryOptions.js +2 -2
  198. package/dist/Interfaces/Quote/index.d.ts +5 -5
  199. package/dist/Interfaces/Quote/index.js +2 -2
  200. package/dist/Interfaces/Refunds/index.d.ts +106 -106
  201. package/dist/Interfaces/Refunds/index.js +2 -2
  202. package/dist/Interfaces/Rules/IDiscountRule.d.ts +155 -155
  203. package/dist/Interfaces/Rules/IDiscountRule.js +114 -114
  204. package/dist/Interfaces/Schedule/index.d.ts +48 -48
  205. package/dist/Interfaces/Schedule/index.js +2 -2
  206. package/dist/Interfaces/Services/IAddServiceResponse.d.ts +4 -4
  207. package/dist/Interfaces/Services/IAddServiceResponse.js +2 -2
  208. package/dist/Interfaces/Services/IService.d.ts +16 -16
  209. package/dist/Interfaces/Services/IService.js +2 -2
  210. package/dist/Interfaces/Services/IServiceSecret.d.ts +8 -8
  211. package/dist/Interfaces/Services/IServiceSecret.js +2 -2
  212. package/dist/Interfaces/Shipping/Shipstation/carriers.d.ts +10 -10
  213. package/dist/Interfaces/Shipping/Shipstation/carriers.js +2 -2
  214. package/dist/Interfaces/Shipping/Shipstation/order.d.ts +227 -227
  215. package/dist/Interfaces/Shipping/Shipstation/order.js +2 -2
  216. package/dist/Interfaces/Shipping/Shipstation/quote.d.ts +31 -31
  217. package/dist/Interfaces/Shipping/Shipstation/quote.js +2 -2
  218. package/dist/Interfaces/Shipping/Shiptime/order.d.ts +54 -54
  219. package/dist/Interfaces/Shipping/Shiptime/order.js +71 -71
  220. package/dist/Interfaces/Shipping/Shiptime/quote.d.ts +111 -111
  221. package/dist/Interfaces/Shipping/Shiptime/quote.js +2 -2
  222. package/dist/Interfaces/Slider/GR.d.ts +114 -114
  223. package/dist/Interfaces/Slider/GR.js +271 -271
  224. package/dist/Interfaces/Slider/index.d.ts +30 -30
  225. package/dist/Interfaces/Slider/index.js +2 -2
  226. package/dist/Interfaces/Space/IExternalService.d.ts +53 -53
  227. package/dist/Interfaces/Space/IExternalService.js +44 -44
  228. package/dist/Interfaces/Space/IMember.d.ts +16 -16
  229. package/dist/Interfaces/Space/IMember.js +9 -9
  230. package/dist/Interfaces/Space/index.d.ts +411 -411
  231. package/dist/Interfaces/Space/index.js +174 -174
  232. package/dist/Interfaces/Specials/gr.d.ts +61 -61
  233. package/dist/Interfaces/Specials/gr.js +2 -2
  234. package/dist/Interfaces/StockNotification/index.d.ts +7 -7
  235. package/dist/Interfaces/StockNotification/index.js +2 -2
  236. package/dist/Interfaces/Store/index.d.ts +63 -63
  237. package/dist/Interfaces/Store/index.js +27 -27
  238. package/dist/Interfaces/Supplier/ICommand.d.ts +11 -11
  239. package/dist/Interfaces/Supplier/ICommand.js +2 -2
  240. package/dist/Interfaces/Supplier/index.d.ts +36 -36
  241. package/dist/Interfaces/Supplier/index.js +24 -24
  242. package/dist/Interfaces/TCG/index.d.ts +169 -169
  243. package/dist/Interfaces/TCG/index.js +60 -60
  244. package/dist/Interfaces/Tag/index.d.ts +18 -18
  245. package/dist/Interfaces/Tag/index.js +2 -2
  246. package/dist/Interfaces/Tax/index.d.ts +13 -13
  247. package/dist/Interfaces/Tax/index.js +2 -2
  248. package/dist/Interfaces/TransferRequest/index.d.ts +103 -103
  249. package/dist/Interfaces/TransferRequest/index.js +46 -46
  250. package/dist/Interfaces/Translation/index.d.ts +8 -8
  251. package/dist/Interfaces/Translation/index.js +5 -5
  252. package/dist/Interfaces/Update/index.d.ts +10 -10
  253. package/dist/Interfaces/Update/index.js +2 -2
  254. package/dist/Interfaces/User/IUser.d.ts +65 -65
  255. package/dist/Interfaces/User/IUser.js +8 -8
  256. package/dist/Interfaces/Version/index.d.ts +11 -11
  257. package/dist/Interfaces/Version/index.js +2 -2
  258. package/dist/Interfaces/Wishlist/index.d.ts +7 -7
  259. package/dist/Interfaces/Wishlist/index.js +2 -2
  260. package/dist/constants/Interfaces/IBaseApi.d.ts +15 -15
  261. package/dist/constants/Interfaces/IBaseApi.js +2 -2
  262. package/dist/constants/Interfaces/IEndpointResult.d.ts +9 -9
  263. package/dist/constants/Interfaces/IEndpointResult.js +2 -2
  264. package/dist/constants/enums.d.ts +6 -6
  265. package/dist/constants/enums.js +10 -10
  266. package/dist/constants/services.d.ts +2 -2
  267. package/dist/constants/services.js +117 -117
  268. package/dist/constants/version.d.ts +2 -2
  269. package/dist/constants/version.js +5 -5
  270. package/dist/index.d.ts +50 -50
  271. package/dist/index.js +266 -266
  272. package/dist/lib/Attribute/index.d.ts +14 -14
  273. package/dist/lib/Attribute/index.js +186 -186
  274. package/dist/lib/BGJob/index.d.ts +9 -9
  275. package/dist/lib/BGJob/index.js +216 -216
  276. package/dist/lib/BackgroundWorker/index.d.ts +34 -34
  277. package/dist/lib/BackgroundWorker/index.js +59 -59
  278. package/dist/lib/Blog/BlogArticle.d.ts +5 -5
  279. package/dist/lib/Blog/BlogArticle.js +10 -10
  280. package/dist/lib/Blog/BlogAuthor.d.ts +5 -5
  281. package/dist/lib/Blog/BlogAuthor.js +10 -10
  282. package/dist/lib/Blog/BlogCategory.d.ts +5 -5
  283. package/dist/lib/Blog/BlogCategory.js +10 -10
  284. package/dist/lib/Blog/BlogKeyword.d.ts +5 -5
  285. package/dist/lib/Blog/BlogKeyword.js +10 -10
  286. package/dist/lib/Booking/index.d.ts +85 -85
  287. package/dist/lib/Booking/index.js +596 -596
  288. package/dist/lib/Brand/index.d.ts +26 -26
  289. package/dist/lib/Brand/index.js +131 -131
  290. package/dist/lib/Cart/index.d.ts +335 -335
  291. package/dist/lib/Cart/index.js +3981 -3981
  292. package/dist/lib/CartReservedQuantities/index.d.ts +49 -49
  293. package/dist/lib/CartReservedQuantities/index.js +159 -159
  294. package/dist/lib/CashDrawerShift/index.d.ts +84 -84
  295. package/dist/lib/CashDrawerShift/index.js +206 -206
  296. package/dist/lib/Catalogue/index.d.ts +15 -15
  297. package/dist/lib/Catalogue/index.js +78 -78
  298. package/dist/lib/Category/index.d.ts +34 -34
  299. package/dist/lib/Category/index.js +230 -230
  300. package/dist/lib/Class/index.d.ts +16 -16
  301. package/dist/lib/Class/index.js +66 -66
  302. package/dist/lib/Consent/index.d.ts +4 -4
  303. package/dist/lib/Consent/index.js +29 -29
  304. package/dist/lib/Customer/index.d.ts +30 -30
  305. package/dist/lib/Customer/index.js +92 -92
  306. package/dist/lib/Declination/index.d.ts +9 -9
  307. package/dist/lib/Declination/index.js +26 -26
  308. package/dist/lib/Discount/index.d.ts +27 -27
  309. package/dist/lib/Discount/index.js +493 -493
  310. package/dist/lib/ElasticSearch/index.d.ts +13 -13
  311. package/dist/lib/ElasticSearch/index.js +50 -50
  312. package/dist/lib/Elavon/index.d.ts +18 -18
  313. package/dist/lib/Elavon/index.js +135 -135
  314. package/dist/lib/Email/AbandonedCartEmail.d.ts +16 -16
  315. package/dist/lib/Email/AbandonedCartEmail.js +24 -24
  316. package/dist/lib/Email/AccountConfirmationEmail.d.ts +19 -19
  317. package/dist/lib/Email/AccountConfirmationEmail.js +30 -30
  318. package/dist/lib/Email/AdminOrderConfirmationEmail.d.ts +16 -16
  319. package/dist/lib/Email/AdminOrderConfirmationEmail.js +24 -24
  320. package/dist/lib/Email/ApplicationEmail.d.ts +16 -16
  321. package/dist/lib/Email/ApplicationEmail.js +24 -24
  322. package/dist/lib/Email/BackInStockEmail.d.ts +16 -16
  323. package/dist/lib/Email/BackInStockEmail.js +24 -24
  324. package/dist/lib/Email/ContactEmail.d.ts +16 -16
  325. package/dist/lib/Email/ContactEmail.js +24 -24
  326. package/dist/lib/Email/CustomerBookingAdminEmail.d.ts +16 -16
  327. package/dist/lib/Email/CustomerBookingAdminEmail.js +24 -24
  328. package/dist/lib/Email/CustomerBookingEmail.d.ts +16 -16
  329. package/dist/lib/Email/CustomerBookingEmail.js +24 -24
  330. package/dist/lib/Email/OrderConfirmationEmail.d.ts +16 -16
  331. package/dist/lib/Email/OrderConfirmationEmail.js +24 -24
  332. package/dist/lib/Email/OrderDenounciationEmail.d.ts +16 -16
  333. package/dist/lib/Email/OrderDenounciationEmail.js +24 -24
  334. package/dist/lib/Email/OrderSampleEmail.d.ts +16 -16
  335. package/dist/lib/Email/OrderSampleEmail.js +24 -24
  336. package/dist/lib/Email/OtherTypeEmails.d.ts +16 -16
  337. package/dist/lib/Email/OtherTypeEmails.js +27 -27
  338. package/dist/lib/Email/PasswordResetEmail.d.ts +16 -16
  339. package/dist/lib/Email/PasswordResetEmail.js +24 -24
  340. package/dist/lib/Email/PhotoShootEmail.d.ts +16 -16
  341. package/dist/lib/Email/PhotoShootEmail.js +24 -24
  342. package/dist/lib/Email/PickUpConfirmation.d.ts +16 -16
  343. package/dist/lib/Email/PickUpConfirmation.js +24 -24
  344. package/dist/lib/Email/ShippingConfirmation.d.ts +16 -16
  345. package/dist/lib/Email/ShippingConfirmation.js +24 -24
  346. package/dist/lib/Email/WelcomeEmail.d.ts +16 -16
  347. package/dist/lib/Email/WelcomeEmail.js +24 -24
  348. package/dist/lib/Email/index.d.ts +16 -16
  349. package/dist/lib/Email/index.js +31 -31
  350. package/dist/lib/ExternalService/Ebay.d.ts +74 -74
  351. package/dist/lib/ExternalService/Ebay.js +124 -124
  352. package/dist/lib/ExternalService/index.d.ts +5 -5
  353. package/dist/lib/ExternalService/index.js +10 -10
  354. package/dist/lib/FirstOrderTracking/index.d.ts +5 -5
  355. package/dist/lib/FirstOrderTracking/index.js +10 -10
  356. package/dist/lib/Indexed/IndexedCart.d.ts +13 -13
  357. package/dist/lib/Indexed/IndexedCart.js +91 -91
  358. package/dist/lib/Indexed/Product.d.ts +17 -17
  359. package/dist/lib/Indexed/Product.js +98 -98
  360. package/dist/lib/Inventory/index.d.ts +112 -112
  361. package/dist/lib/Inventory/index.js +492 -492
  362. package/dist/lib/Invoice/index.d.ts +16 -16
  363. package/dist/lib/Invoice/index.js +21 -21
  364. package/dist/lib/MarketplacePublication/index.d.ts +9 -9
  365. package/dist/lib/MarketplacePublication/index.js +426 -426
  366. package/dist/lib/Menu/index.d.ts +11 -11
  367. package/dist/lib/Menu/index.js +107 -107
  368. package/dist/lib/MongoDB/BaseAPI.d.ts +18 -18
  369. package/dist/lib/MongoDB/BaseAPI.js +200 -200
  370. package/dist/lib/Note/index.d.ts +4 -4
  371. package/dist/lib/Note/index.js +6 -6
  372. package/dist/lib/Order/index.d.ts +27 -27
  373. package/dist/lib/Order/index.js +56 -56
  374. package/dist/lib/Org/index.d.ts +68 -68
  375. package/dist/lib/Org/index.js +216 -216
  376. package/dist/lib/PandaPay/index.d.ts +16 -16
  377. package/dist/lib/PandaPay/index.js +176 -176
  378. package/dist/lib/Paysafe/index.d.ts +11 -11
  379. package/dist/lib/Paysafe/index.js +41 -41
  380. package/dist/lib/Product/index.d.ts +182 -182
  381. package/dist/lib/Product/index.js +847 -847
  382. package/dist/lib/ProductAttribute/index.d.ts +15 -15
  383. package/dist/lib/ProductAttribute/index.js +45 -45
  384. package/dist/lib/PromiseToPurchase/index.d.ts +109 -109
  385. package/dist/lib/PromiseToPurchase/index.js +343 -343
  386. package/dist/lib/PurchaseOrder/index.d.ts +20 -20
  387. package/dist/lib/PurchaseOrder/index.js +28 -28
  388. package/dist/lib/Schedule/index.d.ts +5 -5
  389. package/dist/lib/Schedule/index.js +12 -12
  390. package/dist/lib/Service/Enum/ServiceEnum.d.ts +3 -3
  391. package/dist/lib/Service/Enum/ServiceEnum.js +7 -7
  392. package/dist/lib/Service/index.d.ts +13 -13
  393. package/dist/lib/Service/index.js +21 -21
  394. package/dist/lib/Shipment/index.d.ts +28 -28
  395. package/dist/lib/Shipment/index.js +370 -370
  396. package/dist/lib/Slider/index.d.ts +22 -22
  397. package/dist/lib/Slider/index.js +119 -119
  398. package/dist/lib/Space/index.d.ts +1181 -1181
  399. package/dist/lib/Space/index.js +5841 -5841
  400. package/dist/lib/StockNotification/index.d.ts +4 -4
  401. package/dist/lib/StockNotification/index.js +6 -6
  402. package/dist/lib/Store/index.d.ts +5 -5
  403. package/dist/lib/Store/index.js +12 -12
  404. package/dist/lib/Supplier/Command.d.ts +5 -5
  405. package/dist/lib/Supplier/Command.js +10 -10
  406. package/dist/lib/Supplier/index.d.ts +25 -25
  407. package/dist/lib/Supplier/index.js +27 -27
  408. package/dist/lib/Tags/index.d.ts +6 -6
  409. package/dist/lib/Tags/index.js +26 -26
  410. package/dist/lib/Tax/index.d.ts +8 -8
  411. package/dist/lib/Tax/index.js +54 -54
  412. package/dist/lib/TransferRequest/index.d.ts +290 -290
  413. package/dist/lib/TransferRequest/index.js +1026 -1026
  414. package/dist/lib/Update/index.d.ts +10 -10
  415. package/dist/lib/Update/index.js +22 -22
  416. package/dist/lib/User/index.d.ts +89 -89
  417. package/dist/lib/User/index.js +328 -328
  418. package/dist/lib/Wishlist/index.d.ts +5 -5
  419. package/dist/lib/Wishlist/index.js +10 -10
  420. package/dist/lib/base.d.ts +14 -14
  421. package/dist/lib/base.js +62 -62
  422. package/dist/lib/baseService.d.ts +17 -17
  423. package/dist/lib/baseService.js +69 -69
  424. package/dist/rules/GR/constants/data.d.ts +26 -26
  425. package/dist/rules/GR/constants/data.js +81 -81
  426. package/dist/rules/GR/constants/expedition.d.ts +4 -4
  427. package/dist/rules/GR/constants/expedition.js +9 -9
  428. package/dist/rules/GR/constants/products.d.ts +22 -22
  429. package/dist/rules/GR/constants/products.js +263 -263
  430. package/dist/rules/GR/interfaces/cart.d.ts +84 -84
  431. package/dist/rules/GR/interfaces/cart.js +41 -41
  432. package/dist/rules/GR/interfaces/data.d.ts +101 -101
  433. package/dist/rules/GR/interfaces/data.js +114 -114
  434. package/dist/rules/GR/interfaces/products.d.ts +61 -61
  435. package/dist/rules/GR/interfaces/products.js +10 -10
  436. package/dist/rules/GR/utils/cart.d.ts +95 -95
  437. package/dist/rules/GR/utils/cart.js +839 -839
  438. package/dist/rules/GR/utils/data.d.ts +3 -3
  439. package/dist/rules/GR/utils/data.js +28 -28
  440. package/dist/rules/GR/utils/expedition.d.ts +140 -140
  441. package/dist/rules/GR/utils/expedition.js +2016 -2016
  442. package/dist/rules/GR/utils/g2.d.ts +209 -209
  443. package/dist/rules/GR/utils/g2.js +1002 -1002
  444. package/dist/rules/GR/utils/invoices.d.ts +51 -51
  445. package/dist/rules/GR/utils/invoices.js +215 -215
  446. package/dist/rules/GR/utils/products.d.ts +277 -277
  447. package/dist/rules/GR/utils/products.js +1350 -1350
  448. package/dist/rules/GR/utils/upsells.d.ts +111 -111
  449. package/dist/rules/GR/utils/upsells.js +215 -215
  450. package/dist/services/database/BaseProvider.d.ts +29 -29
  451. package/dist/services/database/BaseProvider.js +28 -28
  452. package/dist/services/database/BatchUtils.d.ts +14 -14
  453. package/dist/services/database/BatchUtils.js +43 -43
  454. package/dist/services/database/Config.d.ts +2 -2
  455. package/dist/services/database/Config.js +5 -5
  456. package/dist/services/database/DatabaseService.d.ts +125 -125
  457. package/dist/services/database/DatabaseService.js +237 -237
  458. package/dist/services/database/FirebaseProvider.d.ts +17 -17
  459. package/dist/services/database/FirebaseProvider.js +235 -235
  460. package/dist/services/database/NotFirebaseProvider.d.ts +49 -49
  461. package/dist/services/database/NotFirebaseProvider.js +262 -262
  462. package/dist/services/g2/G2OrderSlip.d.ts +49 -49
  463. package/dist/services/g2/G2OrderSlip.js +228 -228
  464. package/dist/services/g2/utils.d.ts +19 -19
  465. package/dist/services/g2/utils.js +962 -954
  466. package/dist/services/g2/utils.js.map +1 -1
  467. package/dist/services/logs/index.d.ts +23 -23
  468. package/dist/services/logs/index.js +66 -66
  469. package/dist/services/marketplace/BaseMarketServiceClass.d.ts +69 -69
  470. package/dist/services/marketplace/BaseMarketServiceClass.js +133 -133
  471. package/dist/services/marketplace/CardtraderServiceClass.d.ts +33 -33
  472. package/dist/services/marketplace/CardtraderServiceClass.js +215 -215
  473. package/dist/services/marketplace/utils.d.ts +17 -17
  474. package/dist/services/marketplace/utils.js +32 -32
  475. package/dist/services/products/BaseClass.d.ts +50 -50
  476. package/dist/services/products/BaseClass.js +66 -66
  477. package/dist/services/products/TCGService.d.ts +32 -32
  478. package/dist/services/products/TCGService.js +555 -555
  479. package/dist/services/products/utils.d.ts +31 -31
  480. package/dist/services/products/utils.js +144 -144
  481. package/dist/utils/algolia.d.ts +46 -46
  482. package/dist/utils/algolia.js +21 -21
  483. package/dist/utils/anonymisation.d.ts +54 -54
  484. package/dist/utils/anonymisation.js +280 -280
  485. package/dist/utils/array.d.ts +5 -5
  486. package/dist/utils/array.js +14 -14
  487. package/dist/utils/aws.d.ts +36 -36
  488. package/dist/utils/aws.js +154 -154
  489. package/dist/utils/booking.d.ts +30 -30
  490. package/dist/utils/booking.js +127 -127
  491. package/dist/utils/cart.d.ts +272 -272
  492. package/dist/utils/cart.js +1169 -1169
  493. package/dist/utils/categories.d.ts +2 -2
  494. package/dist/utils/categories.js +54 -54
  495. package/dist/utils/cmv.d.ts +10 -10
  496. package/dist/utils/cmv.js +107 -107
  497. package/dist/utils/console.d.ts +6 -6
  498. package/dist/utils/console.js +59 -59
  499. package/dist/utils/context.d.ts +20 -20
  500. package/dist/utils/context.js +61 -61
  501. package/dist/utils/currency.d.ts +6 -6
  502. package/dist/utils/currency.js +91 -91
  503. package/dist/utils/data.d.ts +31 -31
  504. package/dist/utils/data.js +296 -296
  505. package/dist/utils/date.d.ts +1 -1
  506. package/dist/utils/date.js +16 -16
  507. package/dist/utils/dimensions.d.ts +3 -3
  508. package/dist/utils/dimensions.js +16 -16
  509. package/dist/utils/discount.d.ts +174 -174
  510. package/dist/utils/discount.js +1118 -1118
  511. package/dist/utils/errors.d.ts +118 -118
  512. package/dist/utils/errors.js +123 -123
  513. package/dist/utils/file-admin.d.ts +8 -8
  514. package/dist/utils/file-admin.js +39 -39
  515. package/dist/utils/file.d.ts +39 -39
  516. package/dist/utils/file.js +208 -208
  517. package/dist/utils/firebase-admin.d.ts +11 -11
  518. package/dist/utils/firebase-admin.js +73 -73
  519. package/dist/utils/firebase.d.ts +58 -58
  520. package/dist/utils/firebase.js +148 -148
  521. package/dist/utils/import.d.ts +1 -1
  522. package/dist/utils/import.js +21 -21
  523. package/dist/utils/inventories.d.ts +101 -101
  524. package/dist/utils/inventories.js +467 -467
  525. package/dist/utils/locale.d.ts +24 -24
  526. package/dist/utils/locale.js +91 -91
  527. package/dist/utils/mailchimp.d.ts +58 -58
  528. package/dist/utils/mailchimp.js +531 -531
  529. package/dist/utils/mathUtils.d.ts +17 -17
  530. package/dist/utils/mathUtils.js +324 -324
  531. package/dist/utils/mongodb.d.ts +1 -1
  532. package/dist/utils/mongodb.js +22 -22
  533. package/dist/utils/object.d.ts +32 -32
  534. package/dist/utils/object.js +133 -133
  535. package/dist/utils/payment.d.ts +10 -10
  536. package/dist/utils/payment.js +23 -23
  537. package/dist/utils/products.d.ts +39 -39
  538. package/dist/utils/products.js +195 -195
  539. package/dist/utils/promiseToPurchase.d.ts +88 -88
  540. package/dist/utils/promiseToPurchase.js +229 -229
  541. package/dist/utils/prosprsearch.d.ts +42 -42
  542. package/dist/utils/prosprsearch.js +216 -216
  543. package/dist/utils/refunds.d.ts +2 -2
  544. package/dist/utils/refunds.js +21 -21
  545. package/dist/utils/sdc.d.ts +10 -10
  546. package/dist/utils/sdc.js +1309 -1309
  547. package/dist/utils/searchIndexes.d.ts +58 -58
  548. package/dist/utils/searchIndexes.js +247 -247
  549. package/dist/utils/services.d.ts +42 -42
  550. package/dist/utils/services.js +409 -409
  551. package/dist/utils/shipment.d.ts +110 -110
  552. package/dist/utils/shipment.js +345 -345
  553. package/dist/utils/simpletexting.d.ts +2 -2
  554. package/dist/utils/simpletexting.js +45 -45
  555. package/dist/utils/sliders.d.ts +4 -4
  556. package/dist/utils/sliders.js +24 -24
  557. package/dist/utils/string.d.ts +16 -16
  558. package/dist/utils/string.js +192 -192
  559. package/dist/utils/tcgService.d.ts +81 -81
  560. package/dist/utils/tcgService.js +353 -353
  561. package/dist/utils/tools.d.ts +5 -5
  562. package/dist/utils/tools.js +13 -13
  563. package/dist/utils/transferRequests.d.ts +43 -43
  564. package/dist/utils/transferRequests.js +67 -67
  565. package/dist/utils/update.d.ts +7 -7
  566. package/dist/utils/update.js +137 -137
  567. package/dist/utils/weight.d.ts +3 -3
  568. package/dist/utils/weight.js +16 -16
  569. package/dist/utils/zones.d.ts +11 -11
  570. package/dist/utils/zones.js +218 -218
  571. package/package.json +107 -107
  572. package/publish.sh +143 -143
  573. package/readme.md +182 -182
  574. package/dist/lib/Queue/index.d.ts +0 -40
  575. package/dist/lib/Queue/index.js +0 -255
  576. package/dist/lib/Queue/index.js.map +0 -1
@@ -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
+ }