addio-admin-sdk 1.6.39 → 1.6.41

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 (502) hide show
  1. package/.babelrc +17 -17
  2. package/.env.dev +14 -14
  3. package/.github/workflows/publish_coverage.yaml +69 -69
  4. package/addio-sdk-doc.md +1380 -1380
  5. package/changelog.md +390 -390
  6. package/dist/Interfaces/Address/index.d.ts +21 -21
  7. package/dist/Interfaces/Address/index.js +16 -16
  8. package/dist/Interfaces/Algolia/index.d.ts +147 -147
  9. package/dist/Interfaces/Algolia/index.js +2 -2
  10. package/dist/Interfaces/Attachement/index.d.ts +5 -5
  11. package/dist/Interfaces/Attachement/index.js +2 -2
  12. package/dist/Interfaces/Attribute/index.d.ts +47 -47
  13. package/dist/Interfaces/Attribute/index.js +10 -10
  14. package/dist/Interfaces/BGJob/index.d.ts +56 -56
  15. package/dist/Interfaces/BGJob/index.js +36 -36
  16. package/dist/Interfaces/BaseClass/index.d.ts +8 -8
  17. package/dist/Interfaces/BaseClass/index.js +2 -2
  18. package/dist/Interfaces/Blog/IBlogArticle.d.ts +18 -18
  19. package/dist/Interfaces/Blog/IBlogArticle.js +2 -2
  20. package/dist/Interfaces/Blog/IBlogAuthor.d.ts +7 -7
  21. package/dist/Interfaces/Blog/IBlogAuthor.js +2 -2
  22. package/dist/Interfaces/Blog/IBlogCategory.d.ts +9 -9
  23. package/dist/Interfaces/Blog/IBlogCategory.js +2 -2
  24. package/dist/Interfaces/Blog/IBlogComment.d.ts +13 -13
  25. package/dist/Interfaces/Blog/IBlogComment.js +2 -2
  26. package/dist/Interfaces/Blog/IBlogKeywords.d.ts +9 -9
  27. package/dist/Interfaces/Blog/IBlogKeywords.js +2 -2
  28. package/dist/Interfaces/Booking/index.d.ts +68 -68
  29. package/dist/Interfaces/Booking/index.js +17 -17
  30. package/dist/Interfaces/Brand/index.d.ts +13 -13
  31. package/dist/Interfaces/Brand/index.js +2 -2
  32. package/dist/Interfaces/CMS/index.d.ts +25 -25
  33. package/dist/Interfaces/CMS/index.js +2 -2
  34. package/dist/Interfaces/Cart/IPandaPayload.d.ts +64 -64
  35. package/dist/Interfaces/Cart/IPandaPayload.js +18 -18
  36. package/dist/Interfaces/Cart/IPaymentCard.d.ts +22 -22
  37. package/dist/Interfaces/Cart/IPaymentCard.js +44 -44
  38. package/dist/Interfaces/Cart/IPaypalPayload.d.ts +9 -9
  39. package/dist/Interfaces/Cart/IPaypalPayload.js +2 -2
  40. package/dist/Interfaces/Cart/IPaysafePayload.d.ts +72 -72
  41. package/dist/Interfaces/Cart/IPaysafePayload.js +2 -2
  42. package/dist/Interfaces/Cart/IStripePayload.d.ts +66 -66
  43. package/dist/Interfaces/Cart/IStripePayload.js +2 -2
  44. package/dist/Interfaces/Cart/index.d.ts +397 -397
  45. package/dist/Interfaces/Cart/index.js +181 -181
  46. package/dist/Interfaces/Catalogue/index.d.ts +68 -68
  47. package/dist/Interfaces/Catalogue/index.js +37 -37
  48. package/dist/Interfaces/Category/index.d.ts +26 -26
  49. package/dist/Interfaces/Category/index.js +2 -2
  50. package/dist/Interfaces/Chart/index.d.ts +11 -11
  51. package/dist/Interfaces/Chart/index.js +2 -2
  52. package/dist/Interfaces/Class/index.d.ts +8 -8
  53. package/dist/Interfaces/Class/index.js +2 -2
  54. package/dist/Interfaces/Consent/index.d.ts +6 -6
  55. package/dist/Interfaces/Consent/index.js +2 -2
  56. package/dist/Interfaces/Context/IContextProps.d.ts +5 -5
  57. package/dist/Interfaces/Context/IContextProps.js +2 -2
  58. package/dist/Interfaces/Context/IContextState.d.ts +15 -15
  59. package/dist/Interfaces/Context/IContextState.js +2 -2
  60. package/dist/Interfaces/Customer/ICustomerBadge.d.ts +2 -2
  61. package/dist/Interfaces/Customer/ICustomerBadge.js +2 -2
  62. package/dist/Interfaces/Customer/ICustomerRating.d.ts +10 -10
  63. package/dist/Interfaces/Customer/ICustomerRating.js +2 -2
  64. package/dist/Interfaces/Customer/index.d.ts +92 -92
  65. package/dist/Interfaces/Customer/index.js +158 -158
  66. package/dist/Interfaces/Declination/index.d.ts +106 -106
  67. package/dist/Interfaces/Declination/index.js +64 -64
  68. package/dist/Interfaces/Document/index.d.ts +8 -8
  69. package/dist/Interfaces/Document/index.js +2 -2
  70. package/dist/Interfaces/Elastic/index.d.ts +89 -89
  71. package/dist/Interfaces/Elastic/index.js +2 -2
  72. package/dist/Interfaces/Email/CustomGR/I3DPrintEmail.d.ts +11 -11
  73. package/dist/Interfaces/Email/CustomGR/I3DPrintEmail.js +2 -2
  74. package/dist/Interfaces/Email/CustomGR/IBorrowToolsEmail.d.ts +15 -15
  75. package/dist/Interfaces/Email/CustomGR/IBorrowToolsEmail.js +2 -2
  76. package/dist/Interfaces/Email/CustomGR/IPickupMaterialsEmail.d.ts +12 -12
  77. package/dist/Interfaces/Email/CustomGR/IPickupMaterialsEmail.js +2 -2
  78. package/dist/Interfaces/Email/CustomGR/IPreMeetingFormEmail.d.ts +36 -36
  79. package/dist/Interfaces/Email/CustomGR/IPreMeetingFormEmail.js +2 -2
  80. package/dist/Interfaces/Email/CustomGR/ISponsorRequestEmail.d.ts +12 -12
  81. package/dist/Interfaces/Email/CustomGR/ISponsorRequestEmail.js +2 -2
  82. package/dist/Interfaces/Email/CustomGR/ITransportEmail.d.ts +12 -12
  83. package/dist/Interfaces/Email/CustomGR/ITransportEmail.js +2 -2
  84. package/dist/Interfaces/Email/CustomGR/ITransportQuoteEmail.d.ts +12 -12
  85. package/dist/Interfaces/Email/CustomGR/ITransportQuoteEmail.js +2 -2
  86. package/dist/Interfaces/Email/CustomGR/IVegetalsEmail.d.ts +16 -16
  87. package/dist/Interfaces/Email/CustomGR/IVegetalsEmail.js +2 -2
  88. package/dist/Interfaces/Email/CustomGR/IWishlistEmail.d.ts +15 -15
  89. package/dist/Interfaces/Email/CustomGR/IWishlistEmail.js +2 -2
  90. package/dist/Interfaces/Email/IAbandonnedCartEmail.d.ts +29 -29
  91. package/dist/Interfaces/Email/IAbandonnedCartEmail.js +2 -2
  92. package/dist/Interfaces/Email/IAccountConfirmationEmail.d.ts +22 -22
  93. package/dist/Interfaces/Email/IAccountConfirmationEmail.js +2 -2
  94. package/dist/Interfaces/Email/IApplicationEmail.d.ts +19 -19
  95. package/dist/Interfaces/Email/IApplicationEmail.js +2 -2
  96. package/dist/Interfaces/Email/IBackInStockEmail.d.ts +21 -21
  97. package/dist/Interfaces/Email/IBackInStockEmail.js +2 -2
  98. package/dist/Interfaces/Email/IContactEmail.d.ts +20 -20
  99. package/dist/Interfaces/Email/IContactEmail.js +2 -2
  100. package/dist/Interfaces/Email/ICustomerBookingAdminEmail.d.ts +15 -15
  101. package/dist/Interfaces/Email/ICustomerBookingAdminEmail.js +2 -2
  102. package/dist/Interfaces/Email/ICustomerBookingEmail.d.ts +14 -14
  103. package/dist/Interfaces/Email/ICustomerBookingEmail.js +2 -2
  104. package/dist/Interfaces/Email/IEmail.d.ts +20 -20
  105. package/dist/Interfaces/Email/IEmail.js +69 -69
  106. package/dist/Interfaces/Email/IOrderConfirmationEmail.d.ts +47 -47
  107. package/dist/Interfaces/Email/IOrderConfirmationEmail.js +2 -2
  108. package/dist/Interfaces/Email/IPasswordResetEmail.d.ts +17 -17
  109. package/dist/Interfaces/Email/IPasswordResetEmail.js +2 -2
  110. package/dist/Interfaces/Email/IPhotoShootEmail.d.ts +14 -14
  111. package/dist/Interfaces/Email/IPhotoShootEmail.js +2 -2
  112. package/dist/Interfaces/Email/IPickupConfirmation.d.ts +23 -23
  113. package/dist/Interfaces/Email/IPickupConfirmation.js +2 -2
  114. package/dist/Interfaces/Email/IShippingConfirmation.d.ts +23 -23
  115. package/dist/Interfaces/Email/IShippingConfirmation.js +2 -2
  116. package/dist/Interfaces/Email/IWelcomeEmail.d.ts +19 -19
  117. package/dist/Interfaces/Email/IWelcomeEmail.js +2 -2
  118. package/dist/Interfaces/ExportSchema/index.d.ts +7 -7
  119. package/dist/Interfaces/ExportSchema/index.js +2 -2
  120. package/dist/Interfaces/ExternalService/BaseExternalService.d.ts +12 -12
  121. package/dist/Interfaces/ExternalService/BaseExternalService.js +2 -2
  122. package/dist/Interfaces/ExternalService/index.d.ts +9 -9
  123. package/dist/Interfaces/ExternalService/index.js +2 -2
  124. package/dist/Interfaces/G2/index.d.ts +286 -286
  125. package/dist/Interfaces/G2/index.js +31 -31
  126. package/dist/Interfaces/Indexed/Product/IIndexedLastSavedProduct.d.ts +20 -20
  127. package/dist/Interfaces/Indexed/Product/IIndexedLastSavedProduct.js +2 -2
  128. package/dist/Interfaces/Indexed/Product/index.d.ts +91 -91
  129. package/dist/Interfaces/Indexed/Product/index.js +315 -315
  130. package/dist/Interfaces/Inventory/index.d.ts +19 -19
  131. package/dist/Interfaces/Inventory/index.js +8 -8
  132. package/dist/Interfaces/Invoice/index.d.ts +4 -4
  133. package/dist/Interfaces/Invoice/index.js +2 -2
  134. package/dist/Interfaces/MarketplacePublication/MarketplaceOrderData.d.ts +3 -3
  135. package/dist/Interfaces/MarketplacePublication/MarketplaceOrderData.js +2 -2
  136. package/dist/Interfaces/MarketplacePublication/index.d.ts +23 -23
  137. package/dist/Interfaces/MarketplacePublication/index.js +33 -33
  138. package/dist/Interfaces/Operations/ICreatedBy.d.ts +6 -6
  139. package/dist/Interfaces/Operations/ICreatedBy.js +2 -2
  140. package/dist/Interfaces/Operations/IUpdate.d.ts +5 -5
  141. package/dist/Interfaces/Operations/IUpdate.js +2 -2
  142. package/dist/Interfaces/Order/index.d.ts +4 -4
  143. package/dist/Interfaces/Order/index.js +2 -2
  144. package/dist/Interfaces/Org/IRelUser.d.ts +9 -9
  145. package/dist/Interfaces/Org/IRelUser.js +2 -2
  146. package/dist/Interfaces/Org/index.d.ts +29 -29
  147. package/dist/Interfaces/Org/index.js +12 -12
  148. package/dist/Interfaces/Payment/index.d.ts +11 -11
  149. package/dist/Interfaces/Payment/index.js +2 -2
  150. package/dist/Interfaces/Product/IAttributeFamily.d.ts +6 -6
  151. package/dist/Interfaces/Product/IAttributeFamily.js +2 -2
  152. package/dist/Interfaces/Product/IImportProduct.d.ts +42 -42
  153. package/dist/Interfaces/Product/IImportProduct.js +966 -966
  154. package/dist/Interfaces/Product/IInventoryItem.d.ts +81 -81
  155. package/dist/Interfaces/Product/IInventoryItem.js +36 -36
  156. package/dist/Interfaces/Product/IPricing.d.ts +177 -177
  157. package/dist/Interfaces/Product/IPricing.js +174 -174
  158. package/dist/Interfaces/Product/index.d.ts +121 -121
  159. package/dist/Interfaces/Product/index.js +56 -56
  160. package/dist/Interfaces/ProductAttribute/index.d.ts +11 -11
  161. package/dist/Interfaces/ProductAttribute/index.js +2 -2
  162. package/dist/Interfaces/PromiseToPurchase/BankType.d.ts +41 -41
  163. package/dist/Interfaces/PromiseToPurchase/BankType.js +42 -42
  164. package/dist/Interfaces/PromiseToPurchase/IIndexedBankUsed.d.ts +33 -33
  165. package/dist/Interfaces/PromiseToPurchase/IIndexedBankUsed.js +15 -15
  166. package/dist/Interfaces/PromiseToPurchase/IIndexedCustomerPromiseToPurchase.d.ts +19 -19
  167. package/dist/Interfaces/PromiseToPurchase/IIndexedCustomerPromiseToPurchase.js +2 -2
  168. package/dist/Interfaces/PromiseToPurchase/index.d.ts +50 -50
  169. package/dist/Interfaces/PromiseToPurchase/index.js +13 -13
  170. package/dist/Interfaces/PurchaseOrder/index.d.ts +17 -17
  171. package/dist/Interfaces/PurchaseOrder/index.js +2 -2
  172. package/dist/Interfaces/Query/IBrandQueryOptions.d.ts +11 -11
  173. package/dist/Interfaces/Query/IBrandQueryOptions.js +2 -2
  174. package/dist/Interfaces/Query/ICategoryQueryOptions.d.ts +11 -11
  175. package/dist/Interfaces/Query/ICategoryQueryOptions.js +2 -2
  176. package/dist/Interfaces/Query/IProductQueryOptions.d.ts +15 -15
  177. package/dist/Interfaces/Query/IProductQueryOptions.js +2 -2
  178. package/dist/Interfaces/Quote/index.d.ts +5 -5
  179. package/dist/Interfaces/Quote/index.js +2 -2
  180. package/dist/Interfaces/Rules/IDiscountRule.d.ts +131 -131
  181. package/dist/Interfaces/Rules/IDiscountRule.js +95 -95
  182. package/dist/Interfaces/Services/IAddServiceResponse.d.ts +4 -4
  183. package/dist/Interfaces/Services/IAddServiceResponse.js +2 -2
  184. package/dist/Interfaces/Services/IService.d.ts +12 -12
  185. package/dist/Interfaces/Services/IService.js +2 -2
  186. package/dist/Interfaces/Services/IServiceSecret.d.ts +8 -8
  187. package/dist/Interfaces/Services/IServiceSecret.js +2 -2
  188. package/dist/Interfaces/Shipping/Shipstation/carriers.d.ts +10 -10
  189. package/dist/Interfaces/Shipping/Shipstation/carriers.js +2 -2
  190. package/dist/Interfaces/Shipping/Shipstation/order.d.ts +227 -227
  191. package/dist/Interfaces/Shipping/Shipstation/order.js +2 -2
  192. package/dist/Interfaces/Shipping/Shipstation/quote.d.ts +31 -31
  193. package/dist/Interfaces/Shipping/Shipstation/quote.js +2 -2
  194. package/dist/Interfaces/Shipping/Shiptime/order.d.ts +54 -54
  195. package/dist/Interfaces/Shipping/Shiptime/order.js +48 -48
  196. package/dist/Interfaces/Shipping/Shiptime/quote.d.ts +111 -111
  197. package/dist/Interfaces/Shipping/Shiptime/quote.js +2 -2
  198. package/dist/Interfaces/Slider/GR.d.ts +130 -130
  199. package/dist/Interfaces/Slider/GR.js +271 -271
  200. package/dist/Interfaces/Slider/index.d.ts +14 -14
  201. package/dist/Interfaces/Slider/index.js +2 -2
  202. package/dist/Interfaces/Space/IMember.d.ts +16 -16
  203. package/dist/Interfaces/Space/IMember.js +9 -9
  204. package/dist/Interfaces/Space/index.d.ts +313 -313
  205. package/dist/Interfaces/Space/index.js +78 -78
  206. package/dist/Interfaces/Specials/gr.d.ts +61 -61
  207. package/dist/Interfaces/Specials/gr.js +2 -2
  208. package/dist/Interfaces/StockNotification/index.d.ts +7 -7
  209. package/dist/Interfaces/StockNotification/index.js +2 -2
  210. package/dist/Interfaces/Store/index.d.ts +60 -60
  211. package/dist/Interfaces/Store/index.js +27 -27
  212. package/dist/Interfaces/Supplier/ICommand.d.ts +11 -11
  213. package/dist/Interfaces/Supplier/ICommand.js +2 -2
  214. package/dist/Interfaces/Supplier/index.d.ts +36 -36
  215. package/dist/Interfaces/Supplier/index.js +24 -24
  216. package/dist/Interfaces/Tag/index.d.ts +18 -18
  217. package/dist/Interfaces/Tag/index.js +2 -2
  218. package/dist/Interfaces/Tax/index.d.ts +12 -12
  219. package/dist/Interfaces/Tax/index.js +2 -2
  220. package/dist/Interfaces/TransferRequest/index.d.ts +32 -32
  221. package/dist/Interfaces/TransferRequest/index.js +26 -26
  222. package/dist/Interfaces/Translation/index.d.ts +4 -4
  223. package/dist/Interfaces/Translation/index.js +2 -2
  224. package/dist/Interfaces/Update/index.d.ts +10 -10
  225. package/dist/Interfaces/Update/index.js +2 -2
  226. package/dist/Interfaces/User/IUser.d.ts +29 -29
  227. package/dist/Interfaces/User/IUser.js +8 -8
  228. package/dist/Interfaces/Version/index.d.ts +11 -11
  229. package/dist/Interfaces/Version/index.js +2 -2
  230. package/dist/Interfaces/Wishlist/index.d.ts +7 -7
  231. package/dist/Interfaces/Wishlist/index.js +2 -2
  232. package/dist/constants/Interfaces/IBaseApi.d.ts +15 -15
  233. package/dist/constants/Interfaces/IBaseApi.js +2 -2
  234. package/dist/constants/Interfaces/IEndpointResult.d.ts +9 -9
  235. package/dist/constants/Interfaces/IEndpointResult.js +2 -2
  236. package/dist/constants/enums.d.ts +6 -6
  237. package/dist/constants/enums.js +10 -10
  238. package/dist/constants/version.d.ts +2 -2
  239. package/dist/constants/version.js +5 -5
  240. package/dist/index.d.ts +32 -32
  241. package/dist/index.js +416 -416
  242. package/dist/lib/Attribute/index.d.ts +14 -14
  243. package/dist/lib/Attribute/index.js +249 -249
  244. package/dist/lib/BGJob/index.d.ts +9 -9
  245. package/dist/lib/BGJob/index.js +376 -376
  246. package/dist/lib/BackgroundWorker/index.d.ts +34 -34
  247. package/dist/lib/BackgroundWorker/index.js +72 -72
  248. package/dist/lib/Blog/BlogArticle.d.ts +5 -5
  249. package/dist/lib/Blog/BlogArticle.js +28 -28
  250. package/dist/lib/Blog/BlogAuthor.d.ts +5 -5
  251. package/dist/lib/Blog/BlogAuthor.js +28 -28
  252. package/dist/lib/Blog/BlogCategory.d.ts +5 -5
  253. package/dist/lib/Blog/BlogCategory.js +28 -28
  254. package/dist/lib/Blog/BlogKeyword.d.ts +5 -5
  255. package/dist/lib/Blog/BlogKeyword.js +28 -28
  256. package/dist/lib/Booking/index.d.ts +65 -65
  257. package/dist/lib/Booking/index.js +835 -835
  258. package/dist/lib/Brand/index.d.ts +17 -17
  259. package/dist/lib/Brand/index.js +276 -276
  260. package/dist/lib/Cart/index.d.ts +184 -184
  261. package/dist/lib/Cart/index.js +3766 -3722
  262. package/dist/lib/Cart/index.js.map +1 -1
  263. package/dist/lib/Catalogue/index.d.ts +9 -9
  264. package/dist/lib/Catalogue/index.js +208 -208
  265. package/dist/lib/Category/index.d.ts +26 -26
  266. package/dist/lib/Category/index.js +361 -361
  267. package/dist/lib/Class/index.d.ts +12 -12
  268. package/dist/lib/Class/index.js +159 -159
  269. package/dist/lib/Consent/index.d.ts +4 -4
  270. package/dist/lib/Consent/index.js +79 -79
  271. package/dist/lib/Customer/index.d.ts +10 -10
  272. package/dist/lib/Customer/index.js +147 -147
  273. package/dist/lib/Declination/index.d.ts +10 -10
  274. package/dist/lib/Declination/index.js +85 -85
  275. package/dist/lib/Discount/index.d.ts +18 -18
  276. package/dist/lib/Discount/index.js +759 -759
  277. package/dist/lib/ElasticSearch/index.d.ts +8 -8
  278. package/dist/lib/ElasticSearch/index.js +101 -101
  279. package/dist/lib/Email/AbandonedCartEmail.d.ts +8 -8
  280. package/dist/lib/Email/AbandonedCartEmail.js +78 -78
  281. package/dist/lib/Email/AccountConfirmationEmail.d.ts +11 -11
  282. package/dist/lib/Email/AccountConfirmationEmail.js +95 -95
  283. package/dist/lib/Email/AdminOrderConfirmationEmail.d.ts +8 -8
  284. package/dist/lib/Email/AdminOrderConfirmationEmail.js +78 -78
  285. package/dist/lib/Email/ApplicationEmail.d.ts +8 -8
  286. package/dist/lib/Email/ApplicationEmail.js +78 -78
  287. package/dist/lib/Email/BackInStockEmail.d.ts +8 -8
  288. package/dist/lib/Email/BackInStockEmail.js +78 -78
  289. package/dist/lib/Email/ContactEmail.d.ts +8 -8
  290. package/dist/lib/Email/ContactEmail.js +78 -78
  291. package/dist/lib/Email/CustomerBookingAdminEmail.d.ts +8 -8
  292. package/dist/lib/Email/CustomerBookingAdminEmail.js +78 -78
  293. package/dist/lib/Email/CustomerBookingEmail.d.ts +8 -8
  294. package/dist/lib/Email/CustomerBookingEmail.js +78 -78
  295. package/dist/lib/Email/OrderConfirmationEmail.d.ts +8 -8
  296. package/dist/lib/Email/OrderConfirmationEmail.js +78 -78
  297. package/dist/lib/Email/OrderDenounciationEmail.d.ts +8 -8
  298. package/dist/lib/Email/OrderDenounciationEmail.js +78 -78
  299. package/dist/lib/Email/OrderSampleEmail.d.ts +8 -8
  300. package/dist/lib/Email/OrderSampleEmail.js +78 -78
  301. package/dist/lib/Email/OtherTypeEmails.d.ts +8 -8
  302. package/dist/lib/Email/OtherTypeEmails.js +90 -90
  303. package/dist/lib/Email/PasswordResetEmail.d.ts +8 -8
  304. package/dist/lib/Email/PasswordResetEmail.js +78 -78
  305. package/dist/lib/Email/PhotoShootEmail.d.ts +8 -8
  306. package/dist/lib/Email/PhotoShootEmail.js +78 -78
  307. package/dist/lib/Email/PickUpConfirmation.d.ts +8 -8
  308. package/dist/lib/Email/PickUpConfirmation.js +78 -78
  309. package/dist/lib/Email/ShippingConfirmation.d.ts +8 -8
  310. package/dist/lib/Email/ShippingConfirmation.js +78 -78
  311. package/dist/lib/Email/WelcomeEmail.d.ts +8 -8
  312. package/dist/lib/Email/WelcomeEmail.js +78 -78
  313. package/dist/lib/Email/index.d.ts +8 -8
  314. package/dist/lib/Email/index.js +82 -82
  315. package/dist/lib/ExternalService/Ebay.d.ts +63 -63
  316. package/dist/lib/ExternalService/Ebay.js +185 -185
  317. package/dist/lib/ExternalService/index.d.ts +5 -5
  318. package/dist/lib/ExternalService/index.js +28 -28
  319. package/dist/lib/Indexed/IndexedCart.d.ts +13 -13
  320. package/dist/lib/Indexed/IndexedCart.js +194 -194
  321. package/dist/lib/Indexed/Product.d.ts +17 -17
  322. package/dist/lib/Indexed/Product.js +116 -116
  323. package/dist/lib/Inventory/index.d.ts +31 -31
  324. package/dist/lib/Inventory/index.js +560 -560
  325. package/dist/lib/Invoice/index.d.ts +5 -5
  326. package/dist/lib/Invoice/index.js +28 -28
  327. package/dist/lib/MarketplacePublication/index.d.ts +9 -9
  328. package/dist/lib/MarketplacePublication/index.js +221 -221
  329. package/dist/lib/MongoDB/BaseAPI.d.ts +18 -18
  330. package/dist/lib/MongoDB/BaseAPI.js +308 -308
  331. package/dist/lib/Order/index.d.ts +7 -7
  332. package/dist/lib/Order/index.js +62 -62
  333. package/dist/lib/Org/index.d.ts +26 -26
  334. package/dist/lib/Org/index.js +283 -283
  335. package/dist/lib/PandaPay/index.d.ts +16 -16
  336. package/dist/lib/PandaPay/index.js +219 -219
  337. package/dist/lib/Paysafe/index.d.ts +11 -11
  338. package/dist/lib/Paysafe/index.js +100 -100
  339. package/dist/lib/Product/index.d.ts +143 -143
  340. package/dist/lib/Product/index.js +1326 -1326
  341. package/dist/lib/ProductAttribute/index.d.ts +15 -15
  342. package/dist/lib/ProductAttribute/index.js +114 -114
  343. package/dist/lib/PromiseToPurchase/index.d.ts +35 -35
  344. package/dist/lib/PromiseToPurchase/index.js +474 -474
  345. package/dist/lib/PurchaseOrder/index.d.ts +9 -9
  346. package/dist/lib/PurchaseOrder/index.js +72 -72
  347. package/dist/lib/Queue/index.d.ts +40 -40
  348. package/dist/lib/Queue/index.js +254 -254
  349. package/dist/lib/Service/Enum/ServiceEnum.d.ts +3 -3
  350. package/dist/lib/Service/Enum/ServiceEnum.js +7 -7
  351. package/dist/lib/Service/index.d.ts +5 -5
  352. package/dist/lib/Service/index.js +57 -57
  353. package/dist/lib/Shipment/index.d.ts +28 -28
  354. package/dist/lib/Shipment/index.js +559 -559
  355. package/dist/lib/Slider/index.d.ts +16 -16
  356. package/dist/lib/Slider/index.js +235 -235
  357. package/dist/lib/Space/index.d.ts +769 -769
  358. package/dist/lib/Space/index.js +6689 -6689
  359. package/dist/lib/StockNotification/index.d.ts +4 -4
  360. package/dist/lib/StockNotification/index.js +26 -26
  361. package/dist/lib/Store/index.d.ts +5 -5
  362. package/dist/lib/Store/index.js +30 -30
  363. package/dist/lib/Supplier/Command.d.ts +5 -5
  364. package/dist/lib/Supplier/Command.js +28 -28
  365. package/dist/lib/Supplier/index.d.ts +25 -25
  366. package/dist/lib/Supplier/index.js +92 -92
  367. package/dist/lib/Tags/index.d.ts +6 -6
  368. package/dist/lib/Tags/index.js +84 -84
  369. package/dist/lib/Tax/index.d.ts +8 -8
  370. package/dist/lib/Tax/index.js +136 -136
  371. package/dist/lib/TransferRequest/index.d.ts +21 -21
  372. package/dist/lib/TransferRequest/index.js +302 -302
  373. package/dist/lib/Update/index.d.ts +10 -10
  374. package/dist/lib/Update/index.js +71 -71
  375. package/dist/lib/User/index.d.ts +33 -33
  376. package/dist/lib/User/index.js +360 -360
  377. package/dist/lib/Wishlist/index.d.ts +5 -5
  378. package/dist/lib/Wishlist/index.js +28 -28
  379. package/dist/lib/base.d.ts +14 -14
  380. package/dist/lib/base.js +135 -135
  381. package/dist/lib/baseService.d.ts +17 -17
  382. package/dist/lib/baseService.js +114 -114
  383. package/dist/rules/GR/constants/data.d.ts +28 -28
  384. package/dist/rules/GR/constants/data.js +57 -57
  385. package/dist/rules/GR/constants/products.d.ts +8 -8
  386. package/dist/rules/GR/constants/products.js +234 -234
  387. package/dist/rules/GR/interfaces/cart.d.ts +68 -68
  388. package/dist/rules/GR/interfaces/cart.js +49 -49
  389. package/dist/rules/GR/interfaces/data.d.ts +97 -97
  390. package/dist/rules/GR/interfaces/data.js +104 -104
  391. package/dist/rules/GR/interfaces/products.d.ts +61 -61
  392. package/dist/rules/GR/interfaces/products.js +10 -10
  393. package/dist/rules/GR/utils/cart.d.ts +39 -39
  394. package/dist/rules/GR/utils/cart.js +661 -661
  395. package/dist/rules/GR/utils/data.d.ts +3 -3
  396. package/dist/rules/GR/utils/data.js +25 -25
  397. package/dist/rules/GR/utils/expedition.d.ts +70 -70
  398. package/dist/rules/GR/utils/expedition.js +1584 -1584
  399. package/dist/rules/GR/utils/g2.d.ts +153 -153
  400. package/dist/rules/GR/utils/g2.js +920 -920
  401. package/dist/rules/GR/utils/invoices.d.ts +5 -5
  402. package/dist/rules/GR/utils/invoices.js +123 -123
  403. package/dist/rules/GR/utils/products.d.ts +105 -105
  404. package/dist/rules/GR/utils/products.js +1025 -1025
  405. package/dist/rules/GR/utils/upsells.d.ts +75 -75
  406. package/dist/rules/GR/utils/upsells.js +278 -278
  407. package/dist/services/database/BaseProvider.d.ts +28 -28
  408. package/dist/services/database/BaseProvider.js +77 -77
  409. package/dist/services/database/BatchUtils.d.ts +14 -14
  410. package/dist/services/database/BatchUtils.js +88 -88
  411. package/dist/services/database/Config.d.ts +2 -2
  412. package/dist/services/database/Config.js +5 -5
  413. package/dist/services/database/DatabaseService.d.ts +42 -42
  414. package/dist/services/database/DatabaseService.js +311 -311
  415. package/dist/services/database/FirebaseProvider.d.ts +17 -17
  416. package/dist/services/database/FirebaseProvider.js +312 -312
  417. package/dist/services/database/NotFirebaseProvider.d.ts +35 -35
  418. package/dist/services/database/NotFirebaseProvider.js +367 -367
  419. package/dist/services/logs/index.d.ts +11 -11
  420. package/dist/services/logs/index.js +85 -85
  421. package/dist/utils/algolia.d.ts +6 -6
  422. package/dist/utils/algolia.js +22 -22
  423. package/dist/utils/anonymisation.d.ts +30 -30
  424. package/dist/utils/anonymisation.js +269 -269
  425. package/dist/utils/array.d.ts +5 -5
  426. package/dist/utils/array.js +36 -36
  427. package/dist/utils/aws.d.ts +14 -14
  428. package/dist/utils/aws.js +220 -220
  429. package/dist/utils/booking.d.ts +22 -22
  430. package/dist/utils/booking.js +175 -175
  431. package/dist/utils/cart.d.ts +519 -519
  432. package/dist/utils/cart.js +508 -508
  433. package/dist/utils/cmv.d.ts +10 -10
  434. package/dist/utils/cmv.js +107 -107
  435. package/dist/utils/console.d.ts +6 -6
  436. package/dist/utils/console.js +121 -121
  437. package/dist/utils/context.d.ts +19 -19
  438. package/dist/utils/context.js +41 -41
  439. package/dist/utils/currency.d.ts +6 -6
  440. package/dist/utils/currency.js +62 -62
  441. package/dist/utils/data.d.ts +40 -40
  442. package/dist/utils/data.js +233 -233
  443. package/dist/utils/date.d.ts +1 -1
  444. package/dist/utils/date.js +16 -16
  445. package/dist/utils/dimensions.d.ts +3 -3
  446. package/dist/utils/dimensions.js +18 -18
  447. package/dist/utils/discount.d.ts +33 -33
  448. package/dist/utils/discount.js +919 -919
  449. package/dist/utils/errors.d.ts +113 -113
  450. package/dist/utils/errors.js +113 -113
  451. package/dist/utils/file-admin.d.ts +8 -8
  452. package/dist/utils/file-admin.js +94 -94
  453. package/dist/utils/file.d.ts +38 -38
  454. package/dist/utils/file.js +318 -318
  455. package/dist/utils/firebase-admin.d.ts +2 -2
  456. package/dist/utils/firebase-admin.js +118 -118
  457. package/dist/utils/firebase.d.ts +41 -41
  458. package/dist/utils/firebase.js +220 -220
  459. package/dist/utils/import.d.ts +1 -1
  460. package/dist/utils/import.js +81 -81
  461. package/dist/utils/inventories.d.ts +26 -26
  462. package/dist/utils/inventories.js +368 -368
  463. package/dist/utils/locale.d.ts +13 -13
  464. package/dist/utils/locale.js +67 -67
  465. package/dist/utils/mailchimp.d.ts +57 -57
  466. package/dist/utils/mailchimp.js +735 -735
  467. package/dist/utils/mongodb.d.ts +1 -1
  468. package/dist/utils/mongodb.js +68 -68
  469. package/dist/utils/object.d.ts +12 -12
  470. package/dist/utils/object.js +129 -129
  471. package/dist/utils/payment.d.ts +10 -10
  472. package/dist/utils/payment.js +25 -25
  473. package/dist/utils/products.d.ts +26 -26
  474. package/dist/utils/products.js +301 -301
  475. package/dist/utils/promiseToPurchase.d.ts +56 -56
  476. package/dist/utils/promiseToPurchase.js +228 -228
  477. package/dist/utils/prosprsearch.d.ts +21 -21
  478. package/dist/utils/prosprsearch.js +276 -276
  479. package/dist/utils/sdc.d.ts +10 -10
  480. package/dist/utils/sdc.js +1308 -1308
  481. package/dist/utils/searchIndexes.d.ts +20 -20
  482. package/dist/utils/searchIndexes.js +273 -273
  483. package/dist/utils/services.d.ts +40 -40
  484. package/dist/utils/services.js +407 -407
  485. package/dist/utils/shipment.d.ts +110 -110
  486. package/dist/utils/shipment.js +410 -410
  487. package/dist/utils/simpletexting.d.ts +2 -2
  488. package/dist/utils/simpletexting.js +88 -88
  489. package/dist/utils/sliders.d.ts +4 -4
  490. package/dist/utils/sliders.js +70 -70
  491. package/dist/utils/string.d.ts +16 -16
  492. package/dist/utils/string.js +194 -194
  493. package/dist/utils/update.d.ts +7 -7
  494. package/dist/utils/update.js +244 -244
  495. package/dist/utils/weight.d.ts +3 -3
  496. package/dist/utils/weight.js +18 -18
  497. package/dist/utils/zones.d.ts +10 -10
  498. package/dist/utils/zones.js +287 -287
  499. package/package.json +106 -106
  500. package/publish.sh +143 -143
  501. package/readme.md +182 -182
  502. package/.env +0 -17
@@ -1,475 +1,475 @@
1
- "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- if (typeof b !== "function" && b !== null)
11
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
- extendStatics(d, b);
13
- function __() { this.constructor = d; }
14
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
- };
16
- })();
17
- var __assign = (this && this.__assign) || function () {
18
- __assign = Object.assign || function(t) {
19
- for (var s, i = 1, n = arguments.length; i < n; i++) {
20
- s = arguments[i];
21
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
22
- t[p] = s[p];
23
- }
24
- return t;
25
- };
26
- return __assign.apply(this, arguments);
27
- };
28
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
29
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
30
- return new (P || (P = Promise))(function (resolve, reject) {
31
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
32
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
33
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
34
- step((generator = generator.apply(thisArg, _arguments || [])).next());
35
- });
36
- };
37
- var __generator = (this && this.__generator) || function (thisArg, body) {
38
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
39
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
40
- function verb(n) { return function (v) { return step([n, v]); }; }
41
- function step(op) {
42
- if (f) throw new TypeError("Generator is already executing.");
43
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
44
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
45
- if (y = 0, t) op = [op[0] & 2, t.value];
46
- switch (op[0]) {
47
- case 0: case 1: t = op; break;
48
- case 4: _.label++; return { value: op[1], done: false };
49
- case 5: _.label++; y = op[1]; op = [0]; continue;
50
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
51
- default:
52
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
53
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
54
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
55
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
56
- if (t[2]) _.ops.pop();
57
- _.trys.pop(); continue;
58
- }
59
- op = body.call(thisArg, _);
60
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
61
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
62
- }
63
- };
64
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
65
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
66
- if (ar || !(i in from)) {
67
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
68
- ar[i] = from[i];
69
- }
70
- }
71
- return to.concat(ar || Array.prototype.slice.call(from));
72
- };
73
- var __importDefault = (this && this.__importDefault) || function (mod) {
74
- return (mod && mod.__esModule) ? mod : { "default": mod };
75
- };
76
- Object.defineProperty(exports, "__esModule", { value: true });
77
- var moment_1 = __importDefault(require("moment"));
78
- var Space_1 = __importDefault(require("../Space"));
79
- var Cart_1 = require("../../Interfaces/Cart");
80
- var data_1 = require("../../utils/data");
81
- var algolia_1 = require("../../utils/algolia");
82
- var __1 = require("../..");
83
- var console_1 = require("../../utils/console");
84
- var promiseToPurchase_1 = require("../../utils/promiseToPurchase");
85
- var searchIndexes_1 = require("../../utils/searchIndexes");
86
- var baseService_1 = require("../baseService");
87
- var PromiseToPurchase = (function (_super) {
88
- __extends(PromiseToPurchase, _super);
89
- function PromiseToPurchase() {
90
- var _this = _super !== null && _super.apply(this, arguments) || this;
91
- _this.data = function () {
92
- return _this._data;
93
- };
94
- _this.delete = function () { return __awaiter(_this, void 0, void 0, function () {
95
- return __generator(this, function (_b) {
96
- console.log('cannot delete Promise to Purchase!');
97
- return [2, false];
98
- });
99
- }); };
100
- _this.save = function (partial, saveToDatabase) {
101
- if (saveToDatabase === void 0) { saveToDatabase = true; }
102
- return __awaiter(_this, void 0, void 0, function () {
103
- var currentData, newData, id, e_1;
104
- return __generator(this, function (_b) {
105
- switch (_b.label) {
106
- case 0:
107
- _b.trys.push([0, 2, , 3]);
108
- currentData = this._data;
109
- newData = __assign(__assign({}, currentData), (!!partial ? partial : {}));
110
- if (!!!newData.created_by) {
111
- newData = __assign(__assign({}, newData), { created_by: this._user, created_date: (0, moment_1.default)().toDate() });
112
- }
113
- return [4, _super.prototype.save.call(this, newData, undefined, saveToDatabase)];
114
- case 1:
115
- id = _b.sent();
116
- if (!!id && !!!this._data.id && typeof id === 'string') {
117
- this._data = __assign(__assign({}, this._data), { id: id });
118
- }
119
- return [2, !!id ? id : true];
120
- case 2:
121
- e_1 = _b.sent();
122
- console.log('error on saving PromiseToPurchase: ', e_1.toString());
123
- return [2, false];
124
- case 3: return [2];
125
- }
126
- });
127
- });
128
- };
129
- _this.adjustAmountLeftInPromise = function (adjustment, bankTypeId, bankNowEmpty) { return __awaiter(_this, void 0, void 0, function () {
130
- var balancedBank, adjustments, bank, newBanks, allBanksInactive, saved, e_2;
131
- var _b;
132
- return __generator(this, function (_c) {
133
- switch (_c.label) {
134
- case 0:
135
- balancedBank = this.getBank(bankTypeId);
136
- if (balancedBank === undefined)
137
- return [2, false];
138
- adjustments = __spreadArray(__spreadArray([], ((_b = balancedBank.adjustments) !== null && _b !== void 0 ? _b : []), true), [__assign(__assign({}, adjustment), { issued_by: this._user })], false);
139
- bank = __assign(__assign(__assign({}, balancedBank), { adjustments: adjustments }), (!!bankNowEmpty ? { active: false } : {}));
140
- newBanks = this._data.banks.map(function (b) { return (b.bank_type_id === bankTypeId ? bank : b); });
141
- allBanksInactive = newBanks.every(function (b) { return !!!b.active; });
142
- _c.label = 1;
143
- case 1:
144
- _c.trys.push([1, 3, , 4]);
145
- return [4, this.save(__assign({ banks: newBanks }, (!!allBanksInactive ? { ending_date: (0, moment_1.default)().toDate() } : {})))];
146
- case 2:
147
- saved = _c.sent();
148
- return [2, !!saved];
149
- case 3:
150
- e_2 = _c.sent();
151
- console.log('error on saving adjustment in bank: ', e_2.toString());
152
- return [2, false];
153
- case 4: return [2];
154
- }
155
- });
156
- }); };
157
- _this.getRulesForAllBanks = function () { return __awaiter(_this, void 0, void 0, function () {
158
- var allBanks, space_1, rules, e_3;
159
- return __generator(this, function (_b) {
160
- switch (_b.label) {
161
- case 0:
162
- allBanks = this._data.banks;
163
- _b.label = 1;
164
- case 1:
165
- _b.trys.push([1, 3, , 4]);
166
- return [4, Space_1.default.getCurrentSpaceWithRef(this._collection.path, this._user)];
167
- case 2:
168
- space_1 = _b.sent();
169
- rules = allBanks.map(function (bank) {
170
- var rulesForType = space_1.bankTypes.getRulesByType(bank.bank_type_id, bank.version);
171
- if (!!!rulesForType)
172
- return undefined;
173
- return __assign({ type_id: bank.bank_type_id }, rulesForType);
174
- });
175
- return [2, rules.filter(function (i) { return !!i; })];
176
- case 3:
177
- e_3 = _b.sent();
178
- console.log('error on getting Rules for banks: ', e_3.toString());
179
- return [2];
180
- case 4: return [2];
181
- }
182
- });
183
- }); };
184
- _this.constructDefaultPromiseToPurchase = function (space, customer_id) { return __awaiter(_this, void 0, void 0, function () {
185
- var newData, allCurrentBankTypes, isOnlyActivePromiseForCustomer_1, activePAs_1, currentCustomerPAs, e_4;
186
- return __generator(this, function (_b) {
187
- switch (_b.label) {
188
- case 0:
189
- newData = __assign({}, this._data);
190
- _b.label = 1;
191
- case 1:
192
- _b.trys.push([1, 4, , 5]);
193
- allCurrentBankTypes = space.bankTypes.get();
194
- isOnlyActivePromiseForCustomer_1 = true;
195
- if (!!!customer_id) return [3, 3];
196
- return [4, space.promisesToPurchase.get({
197
- query: [{ field: 'customer_id', operator: '==', value: customer_id !== null && customer_id !== void 0 ? customer_id : newData.customer_id }]
198
- })];
199
- case 2:
200
- currentCustomerPAs = _b.sent();
201
- if (!!currentCustomerPAs) {
202
- activePAs_1 = currentCustomerPAs.filter(function (p) { return !!!p.data().ending_date; });
203
- if (!!activePAs_1.length)
204
- isOnlyActivePromiseForCustomer_1 = false;
205
- }
206
- _b.label = 3;
207
- case 3:
208
- newData = __assign(__assign({}, newData), { banks: allCurrentBankTypes
209
- .map(function (bankType) {
210
- var rulesToApply = space.bankTypes.getRulesByType(bankType.id);
211
- if (!!!rulesToApply)
212
- return undefined;
213
- var bankReductions = rulesToApply.rules.map(function (bankRule) { return (__assign(__assign({}, bankRule), { default_promo: null, additionnal_promo: null })); });
214
- var otherBankOfSameTypeIsActive = (0, promiseToPurchase_1.checkIfOtherBankOfSameTypeIsActive)(bankType.id, activePAs_1);
215
- return {
216
- bank_type_id: bankType.id,
217
- version: rulesToApply.version,
218
- name: bankType.name,
219
- association_type: bankType.association_type,
220
- initial_amount: null,
221
- remaining_amount: null,
222
- reductions: bankReductions,
223
- adjustments: [],
224
- active: !!otherBankOfSameTypeIsActive ? false : isOnlyActivePromiseForCustomer_1
225
- };
226
- })
227
- .filter(function (b) { return !!b; }) });
228
- this._data = newData;
229
- return [3, 5];
230
- case 4:
231
- e_4 = _b.sent();
232
- console.log('error on creating default Promise to Purchase: ', e_4.toString());
233
- return [3, 5];
234
- case 5: return [2];
235
- }
236
- });
237
- }); };
238
- _this.getAssociatedCarts = function (options) { return __awaiter(_this, void 0, void 0, function () {
239
- var space, carts;
240
- return __generator(this, function (_b) {
241
- switch (_b.label) {
242
- case 0:
243
- if (!!!this.data().id)
244
- return [2, []];
245
- return [4, Space_1.default.getCurrentSpaceWithRef(this._collection.path, this._user)];
246
- case 1:
247
- space = _b.sent();
248
- return [4, space.carts.get(__assign({ query: [
249
- {
250
- field: 'promise_to_purchase.ids',
251
- operator: 'array-contains',
252
- value: this.data().id
253
- }
254
- ] }, (!!options ? options : {})))];
255
- case 2:
256
- carts = _b.sent();
257
- return [2, carts.filter(function (f) { return !!f.data().paid_at && f.data().status >= Cart_1.CartStatusEnum.CHECKOUT_PAYMENT_SUCCESS; })];
258
- }
259
- });
260
- }); };
261
- _this.isValid = function (customPriceList, checkDate) {
262
- if (checkDate === void 0) { checkDate = new Date(); }
263
- if (!!!customPriceList || customPriceList.length === 0 || typeof customPriceList === 'string')
264
- return false;
265
- var startDate = _this.data().starting_date;
266
- var endDate = _this.data().ending_date;
267
- if ((0, moment_1.default)(checkDate).isBefore((0, moment_1.default)((0, data_1.formatDate)(startDate), 'day')))
268
- return false;
269
- if (!!endDate && (0, moment_1.default)(checkDate).isSameOrAfter((0, moment_1.default)((0, data_1.formatDate)(endDate), 'day')))
270
- return false;
271
- return true;
272
- };
273
- _this.disableEmptyPABanks = function (bankTypeIDs) { return __awaiter(_this, void 0, void 0, function () {
274
- var newBankArray, _loop_1, _i, bankTypeIDs_1, bankID, newData, allBanksAreInactive;
275
- return __generator(this, function (_b) {
276
- switch (_b.label) {
277
- case 0:
278
- if (this._data.banks.every(function (b) { return !!!bankTypeIDs.includes(b.bank_type_id); }))
279
- throw new Error('None of the provided bank IDs were found in promise');
280
- newBankArray = __spreadArray([], this._data.banks, true);
281
- _loop_1 = function (bankID) {
282
- newBankArray = newBankArray.map(function (b) {
283
- if (b.bank_type_id !== bankID)
284
- return b;
285
- return __assign(__assign({}, b), { active: false });
286
- });
287
- };
288
- for (_i = 0, bankTypeIDs_1 = bankTypeIDs; _i < bankTypeIDs_1.length; _i++) {
289
- bankID = bankTypeIDs_1[_i];
290
- _loop_1(bankID);
291
- }
292
- newData = {
293
- banks: newBankArray
294
- };
295
- allBanksAreInactive = newBankArray.every(function (b) { return !!!b.active; });
296
- if (!!allBanksAreInactive) {
297
- newData = __assign(__assign({}, newData), { ending_date: new Date() });
298
- }
299
- return [4, this.save(newData)];
300
- case 1:
301
- _b.sent();
302
- return [2];
303
- }
304
- });
305
- }); };
306
- _this.deactivate = function (save) {
307
- if (save === void 0) { save = false; }
308
- return __awaiter(_this, void 0, void 0, function () {
309
- var _b;
310
- return __generator(this, function (_c) {
311
- switch (_c.label) {
312
- case 0:
313
- this._data = __assign(__assign({}, this._data), { ending_date: (_b = this._data.ending_date) !== null && _b !== void 0 ? _b : new Date() });
314
- if (!!!save) return [3, 2];
315
- return [4, this.save()];
316
- case 1:
317
- _c.sent();
318
- _c.label = 2;
319
- case 2: return [2];
320
- }
321
- });
322
- });
323
- };
324
- _this.activate = function (newDate, save) {
325
- if (newDate === void 0) { newDate = new Date(); }
326
- if (save === void 0) { save = false; }
327
- return __awaiter(_this, void 0, void 0, function () {
328
- return __generator(this, function (_b) {
329
- switch (_b.label) {
330
- case 0:
331
- this._data = __assign(__assign({}, this._data), { starting_date: newDate, ending_date: null });
332
- if (!!!save) return [3, 2];
333
- return [4, this.save()];
334
- case 1:
335
- _b.sent();
336
- _b.label = 2;
337
- case 2: return [2];
338
- }
339
- });
340
- });
341
- };
342
- _this.archive = function (save) {
343
- if (save === void 0) { save = false; }
344
- return __awaiter(_this, void 0, void 0, function () {
345
- return __generator(this, function (_b) {
346
- switch (_b.label) {
347
- case 0:
348
- this._data = __assign(__assign({}, this._data), { archived: true });
349
- if (!!!save) return [3, 2];
350
- return [4, this.save()];
351
- case 1:
352
- _b.sent();
353
- _b.label = 2;
354
- case 2: return [2];
355
- }
356
- });
357
- });
358
- };
359
- return _this;
360
- }
361
- PromiseToPurchase.prototype.getBank = function (bankTypeId) {
362
- return this._data.banks.find(function (b) { return b.bank_type_id === bankTypeId; });
363
- };
364
- var _a;
365
- _a = PromiseToPurchase;
366
- PromiseToPurchase.fetch = function (_b) {
367
- var app = _b.app, api = _b.api, _c = _b.hpp, hpp = _c === void 0 ? 10 : _c, _d = _b.page, page = _d === void 0 ? 0 : _d, _e = _b.query, query = _e === void 0 ? '' : _e, _f = _b.filters, filters = _f === void 0 ? '' : _f, _g = _b.indice, indice = _g === void 0 ? 'customer_pa_cust_id' : _g, _h = _b.f, f = _h === void 0 ? '' : _h, space = _b.space, _j = _b.useProspr, useProspr = _j === void 0 ? false : _j;
368
- return __awaiter(void 0, void 0, void 0, function () {
369
- var prosprSearch, prosprService, algolia, results, error_1;
370
- return __generator(_a, function (_k) {
371
- switch (_k.label) {
372
- case 0:
373
- _k.trys.push([0, 2, , 3]);
374
- prosprSearch = false;
375
- if (!!space) {
376
- prosprService = space
377
- .data()
378
- .external_services.find(function (es) { return es.external_service_name.toLowerCase().trim() === 'prosprsearch'; });
379
- prosprSearch = !!prosprService && prosprService.is_active;
380
- }
381
- algolia = (0, algolia_1.createClient)({
382
- app: app,
383
- indexId: "".concat(__1.isTestEnv ? 'test' : 'prod', "_").concat(indice),
384
- key: !!useProspr ? api : prosprSearch && !!space ? space.preferences.prosprsearch.app() : api,
385
- prospr: !!prosprSearch || !!useProspr
386
- });
387
- return [4, algolia.search(query, {
388
- hitsPerPage: hpp,
389
- facetFilters: filters,
390
- filters: f,
391
- page: page,
392
- facets: ['*']
393
- })];
394
- case 1:
395
- results = _k.sent();
396
- return [2, results];
397
- case 2:
398
- error_1 = _k.sent();
399
- (0, console_1.errorMessage)(error_1);
400
- throw error_1;
401
- case 3: return [2];
402
- }
403
- });
404
- });
405
- };
406
- PromiseToPurchase.fetchHistory = function (_b) {
407
- var app = _b.app, api = _b.api, _c = _b.hpp, hpp = _c === void 0 ? 50 : _c, _d = _b.page, page = _d === void 0 ? 0 : _d, _e = _b.query, query = _e === void 0 ? '' : _e, _f = _b.filters, filters = _f === void 0 ? '' : _f, _g = _b.indice, indice = _g === void 0 ? 'pa_bank_history' : _g, _h = _b.f, f = _h === void 0 ? '' : _h, _j = _b.useProspr, useProspr = _j === void 0 ? false : _j;
408
- return __awaiter(void 0, void 0, void 0, function () {
409
- var results, e_5;
410
- return __generator(_a, function (_k) {
411
- switch (_k.label) {
412
- case 0:
413
- _k.trys.push([0, 2, , 3]);
414
- return [4, (0, searchIndexes_1.searchAPIFetchAlgoliaAddioSearch)({
415
- app: app,
416
- api: api,
417
- indice: indice,
418
- hpp: hpp,
419
- page: page,
420
- query: query,
421
- filters: filters,
422
- f: f,
423
- useProspr: useProspr
424
- })];
425
- case 1:
426
- results = _k.sent();
427
- return [2, results];
428
- case 2:
429
- e_5 = _k.sent();
430
- console.log('error on fetching history for promises : ', e_5.toString());
431
- return [3, 3];
432
- case 3: return [2];
433
- }
434
- });
435
- });
436
- };
437
- PromiseToPurchase.calculateRemainingAmounts = function (actualCart, applicableBanks, applicableBanksHistory, space) { return __awaiter(void 0, void 0, void 0, function () {
438
- var remainingAmountsForApplicableBanks, cartDataPA, remainingBankAmounts;
439
- return __generator(_a, function (_b) {
440
- switch (_b.label) {
441
- case 0: return [4, space.promisesToPurchase.getAvailableAmountForApplicableBanks(applicableBanks, applicableBanksHistory)];
442
- case 1:
443
- remainingAmountsForApplicableBanks = _b.sent();
444
- if (!!!actualCart)
445
- throw new Error("ActualCart can't be undefined");
446
- cartDataPA = actualCart.data().promise_to_purchase;
447
- if (!!!cartDataPA || !!!cartDataPA.banks_used || cartDataPA.banks_used.length === 0)
448
- throw new Error("ActualCart must have an associated promise to purchase and at least one bank_used");
449
- remainingBankAmounts = applicableBanks.map(function (applicable) {
450
- var bank = applicable.bank, promise_id = applicable.promise_id, promise_unique_id = applicable.promise_unique_id;
451
- var remainingAmount = remainingAmountsForApplicableBanks[bank.bank_type_id];
452
- if (typeof remainingAmount === 'undefined')
453
- return;
454
- return {
455
- bank_type_id: bank.bank_type_id,
456
- amount: remainingAmount,
457
- promise_id: promise_id,
458
- promise_unique_id: promise_unique_id
459
- };
460
- });
461
- return [2, remainingBankAmounts.filter(function (bankApplied) { return !!bankApplied; })];
462
- }
463
- });
464
- }); };
465
- PromiseToPurchase.getDefaultPromiseToPurchase = function (customerId) { return ({
466
- archived: false,
467
- promise_unique_id: '',
468
- customer_id: customerId,
469
- banks: [],
470
- starting_date: (0, moment_1.default)().toDate()
471
- }); };
472
- return PromiseToPurchase;
473
- }(baseService_1.BaseServiceClass));
474
- exports.default = PromiseToPurchase;
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ var __assign = (this && this.__assign) || function () {
18
+ __assign = Object.assign || function(t) {
19
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
20
+ s = arguments[i];
21
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
22
+ t[p] = s[p];
23
+ }
24
+ return t;
25
+ };
26
+ return __assign.apply(this, arguments);
27
+ };
28
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
29
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
30
+ return new (P || (P = Promise))(function (resolve, reject) {
31
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
32
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
33
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
34
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
35
+ });
36
+ };
37
+ var __generator = (this && this.__generator) || function (thisArg, body) {
38
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
39
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
40
+ function verb(n) { return function (v) { return step([n, v]); }; }
41
+ function step(op) {
42
+ if (f) throw new TypeError("Generator is already executing.");
43
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
44
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
45
+ if (y = 0, t) op = [op[0] & 2, t.value];
46
+ switch (op[0]) {
47
+ case 0: case 1: t = op; break;
48
+ case 4: _.label++; return { value: op[1], done: false };
49
+ case 5: _.label++; y = op[1]; op = [0]; continue;
50
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
51
+ default:
52
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
53
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
54
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
55
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
56
+ if (t[2]) _.ops.pop();
57
+ _.trys.pop(); continue;
58
+ }
59
+ op = body.call(thisArg, _);
60
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
61
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
62
+ }
63
+ };
64
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
65
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
66
+ if (ar || !(i in from)) {
67
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
68
+ ar[i] = from[i];
69
+ }
70
+ }
71
+ return to.concat(ar || Array.prototype.slice.call(from));
72
+ };
73
+ var __importDefault = (this && this.__importDefault) || function (mod) {
74
+ return (mod && mod.__esModule) ? mod : { "default": mod };
75
+ };
76
+ Object.defineProperty(exports, "__esModule", { value: true });
77
+ var moment_1 = __importDefault(require("moment"));
78
+ var Space_1 = __importDefault(require("../Space"));
79
+ var Cart_1 = require("../../Interfaces/Cart");
80
+ var data_1 = require("../../utils/data");
81
+ var algolia_1 = require("../../utils/algolia");
82
+ var __1 = require("../..");
83
+ var console_1 = require("../../utils/console");
84
+ var promiseToPurchase_1 = require("../../utils/promiseToPurchase");
85
+ var searchIndexes_1 = require("../../utils/searchIndexes");
86
+ var baseService_1 = require("../baseService");
87
+ var PromiseToPurchase = (function (_super) {
88
+ __extends(PromiseToPurchase, _super);
89
+ function PromiseToPurchase() {
90
+ var _this = _super !== null && _super.apply(this, arguments) || this;
91
+ _this.data = function () {
92
+ return _this._data;
93
+ };
94
+ _this.delete = function () { return __awaiter(_this, void 0, void 0, function () {
95
+ return __generator(this, function (_b) {
96
+ console.log('cannot delete Promise to Purchase!');
97
+ return [2, false];
98
+ });
99
+ }); };
100
+ _this.save = function (partial, saveToDatabase) {
101
+ if (saveToDatabase === void 0) { saveToDatabase = true; }
102
+ return __awaiter(_this, void 0, void 0, function () {
103
+ var currentData, newData, id, e_1;
104
+ return __generator(this, function (_b) {
105
+ switch (_b.label) {
106
+ case 0:
107
+ _b.trys.push([0, 2, , 3]);
108
+ currentData = this._data;
109
+ newData = __assign(__assign({}, currentData), (!!partial ? partial : {}));
110
+ if (!!!newData.created_by) {
111
+ newData = __assign(__assign({}, newData), { created_by: this._user, created_date: (0, moment_1.default)().toDate() });
112
+ }
113
+ return [4, _super.prototype.save.call(this, newData, undefined, saveToDatabase)];
114
+ case 1:
115
+ id = _b.sent();
116
+ if (!!id && !!!this._data.id && typeof id === 'string') {
117
+ this._data = __assign(__assign({}, this._data), { id: id });
118
+ }
119
+ return [2, !!id ? id : true];
120
+ case 2:
121
+ e_1 = _b.sent();
122
+ console.log('error on saving PromiseToPurchase: ', e_1.toString());
123
+ return [2, false];
124
+ case 3: return [2];
125
+ }
126
+ });
127
+ });
128
+ };
129
+ _this.adjustAmountLeftInPromise = function (adjustment, bankTypeId, bankNowEmpty) { return __awaiter(_this, void 0, void 0, function () {
130
+ var balancedBank, adjustments, bank, newBanks, allBanksInactive, saved, e_2;
131
+ var _b;
132
+ return __generator(this, function (_c) {
133
+ switch (_c.label) {
134
+ case 0:
135
+ balancedBank = this.getBank(bankTypeId);
136
+ if (balancedBank === undefined)
137
+ return [2, false];
138
+ adjustments = __spreadArray(__spreadArray([], ((_b = balancedBank.adjustments) !== null && _b !== void 0 ? _b : []), true), [__assign(__assign({}, adjustment), { issued_by: this._user })], false);
139
+ bank = __assign(__assign(__assign({}, balancedBank), { adjustments: adjustments }), (!!bankNowEmpty ? { active: false } : {}));
140
+ newBanks = this._data.banks.map(function (b) { return (b.bank_type_id === bankTypeId ? bank : b); });
141
+ allBanksInactive = newBanks.every(function (b) { return !!!b.active; });
142
+ _c.label = 1;
143
+ case 1:
144
+ _c.trys.push([1, 3, , 4]);
145
+ return [4, this.save(__assign({ banks: newBanks }, (!!allBanksInactive ? { ending_date: (0, moment_1.default)().toDate() } : {})))];
146
+ case 2:
147
+ saved = _c.sent();
148
+ return [2, !!saved];
149
+ case 3:
150
+ e_2 = _c.sent();
151
+ console.log('error on saving adjustment in bank: ', e_2.toString());
152
+ return [2, false];
153
+ case 4: return [2];
154
+ }
155
+ });
156
+ }); };
157
+ _this.getRulesForAllBanks = function () { return __awaiter(_this, void 0, void 0, function () {
158
+ var allBanks, space_1, rules, e_3;
159
+ return __generator(this, function (_b) {
160
+ switch (_b.label) {
161
+ case 0:
162
+ allBanks = this._data.banks;
163
+ _b.label = 1;
164
+ case 1:
165
+ _b.trys.push([1, 3, , 4]);
166
+ return [4, Space_1.default.getCurrentSpaceWithRef(this._collection.path, this._user)];
167
+ case 2:
168
+ space_1 = _b.sent();
169
+ rules = allBanks.map(function (bank) {
170
+ var rulesForType = space_1.bankTypes.getRulesByType(bank.bank_type_id, bank.version);
171
+ if (!!!rulesForType)
172
+ return undefined;
173
+ return __assign({ type_id: bank.bank_type_id }, rulesForType);
174
+ });
175
+ return [2, rules.filter(function (i) { return !!i; })];
176
+ case 3:
177
+ e_3 = _b.sent();
178
+ console.log('error on getting Rules for banks: ', e_3.toString());
179
+ return [2];
180
+ case 4: return [2];
181
+ }
182
+ });
183
+ }); };
184
+ _this.constructDefaultPromiseToPurchase = function (space, customer_id) { return __awaiter(_this, void 0, void 0, function () {
185
+ var newData, allCurrentBankTypes, isOnlyActivePromiseForCustomer_1, activePAs_1, currentCustomerPAs, e_4;
186
+ return __generator(this, function (_b) {
187
+ switch (_b.label) {
188
+ case 0:
189
+ newData = __assign({}, this._data);
190
+ _b.label = 1;
191
+ case 1:
192
+ _b.trys.push([1, 4, , 5]);
193
+ allCurrentBankTypes = space.bankTypes.get();
194
+ isOnlyActivePromiseForCustomer_1 = true;
195
+ if (!!!customer_id) return [3, 3];
196
+ return [4, space.promisesToPurchase.get({
197
+ query: [{ field: 'customer_id', operator: '==', value: customer_id !== null && customer_id !== void 0 ? customer_id : newData.customer_id }]
198
+ })];
199
+ case 2:
200
+ currentCustomerPAs = _b.sent();
201
+ if (!!currentCustomerPAs) {
202
+ activePAs_1 = currentCustomerPAs.filter(function (p) { return !!!p.data().ending_date; });
203
+ if (!!activePAs_1.length)
204
+ isOnlyActivePromiseForCustomer_1 = false;
205
+ }
206
+ _b.label = 3;
207
+ case 3:
208
+ newData = __assign(__assign({}, newData), { banks: allCurrentBankTypes
209
+ .map(function (bankType) {
210
+ var rulesToApply = space.bankTypes.getRulesByType(bankType.id);
211
+ if (!!!rulesToApply)
212
+ return undefined;
213
+ var bankReductions = rulesToApply.rules.map(function (bankRule) { return (__assign(__assign({}, bankRule), { default_promo: null, additionnal_promo: null })); });
214
+ var otherBankOfSameTypeIsActive = (0, promiseToPurchase_1.checkIfOtherBankOfSameTypeIsActive)(bankType.id, activePAs_1);
215
+ return {
216
+ bank_type_id: bankType.id,
217
+ version: rulesToApply.version,
218
+ name: bankType.name,
219
+ association_type: bankType.association_type,
220
+ initial_amount: null,
221
+ remaining_amount: null,
222
+ reductions: bankReductions,
223
+ adjustments: [],
224
+ active: !!otherBankOfSameTypeIsActive ? false : isOnlyActivePromiseForCustomer_1
225
+ };
226
+ })
227
+ .filter(function (b) { return !!b; }) });
228
+ this._data = newData;
229
+ return [3, 5];
230
+ case 4:
231
+ e_4 = _b.sent();
232
+ console.log('error on creating default Promise to Purchase: ', e_4.toString());
233
+ return [3, 5];
234
+ case 5: return [2];
235
+ }
236
+ });
237
+ }); };
238
+ _this.getAssociatedCarts = function (options) { return __awaiter(_this, void 0, void 0, function () {
239
+ var space, carts;
240
+ return __generator(this, function (_b) {
241
+ switch (_b.label) {
242
+ case 0:
243
+ if (!!!this.data().id)
244
+ return [2, []];
245
+ return [4, Space_1.default.getCurrentSpaceWithRef(this._collection.path, this._user)];
246
+ case 1:
247
+ space = _b.sent();
248
+ return [4, space.carts.get(__assign({ query: [
249
+ {
250
+ field: 'promise_to_purchase.ids',
251
+ operator: 'array-contains',
252
+ value: this.data().id
253
+ }
254
+ ] }, (!!options ? options : {})))];
255
+ case 2:
256
+ carts = _b.sent();
257
+ return [2, carts.filter(function (f) { return !!f.data().paid_at && f.data().status >= Cart_1.CartStatusEnum.CHECKOUT_PAYMENT_SUCCESS; })];
258
+ }
259
+ });
260
+ }); };
261
+ _this.isValid = function (customPriceList, checkDate) {
262
+ if (checkDate === void 0) { checkDate = new Date(); }
263
+ if (!!!customPriceList || customPriceList.length === 0 || typeof customPriceList === 'string')
264
+ return false;
265
+ var startDate = _this.data().starting_date;
266
+ var endDate = _this.data().ending_date;
267
+ if ((0, moment_1.default)(checkDate).isBefore((0, moment_1.default)((0, data_1.formatDate)(startDate), 'day')))
268
+ return false;
269
+ if (!!endDate && (0, moment_1.default)(checkDate).isSameOrAfter((0, moment_1.default)((0, data_1.formatDate)(endDate), 'day')))
270
+ return false;
271
+ return true;
272
+ };
273
+ _this.disableEmptyPABanks = function (bankTypeIDs) { return __awaiter(_this, void 0, void 0, function () {
274
+ var newBankArray, _loop_1, _i, bankTypeIDs_1, bankID, newData, allBanksAreInactive;
275
+ return __generator(this, function (_b) {
276
+ switch (_b.label) {
277
+ case 0:
278
+ if (this._data.banks.every(function (b) { return !!!bankTypeIDs.includes(b.bank_type_id); }))
279
+ throw new Error('None of the provided bank IDs were found in promise');
280
+ newBankArray = __spreadArray([], this._data.banks, true);
281
+ _loop_1 = function (bankID) {
282
+ newBankArray = newBankArray.map(function (b) {
283
+ if (b.bank_type_id !== bankID)
284
+ return b;
285
+ return __assign(__assign({}, b), { active: false });
286
+ });
287
+ };
288
+ for (_i = 0, bankTypeIDs_1 = bankTypeIDs; _i < bankTypeIDs_1.length; _i++) {
289
+ bankID = bankTypeIDs_1[_i];
290
+ _loop_1(bankID);
291
+ }
292
+ newData = {
293
+ banks: newBankArray
294
+ };
295
+ allBanksAreInactive = newBankArray.every(function (b) { return !!!b.active; });
296
+ if (!!allBanksAreInactive) {
297
+ newData = __assign(__assign({}, newData), { ending_date: new Date() });
298
+ }
299
+ return [4, this.save(newData)];
300
+ case 1:
301
+ _b.sent();
302
+ return [2];
303
+ }
304
+ });
305
+ }); };
306
+ _this.deactivate = function (save) {
307
+ if (save === void 0) { save = false; }
308
+ return __awaiter(_this, void 0, void 0, function () {
309
+ var _b;
310
+ return __generator(this, function (_c) {
311
+ switch (_c.label) {
312
+ case 0:
313
+ this._data = __assign(__assign({}, this._data), { ending_date: (_b = this._data.ending_date) !== null && _b !== void 0 ? _b : new Date() });
314
+ if (!!!save) return [3, 2];
315
+ return [4, this.save()];
316
+ case 1:
317
+ _c.sent();
318
+ _c.label = 2;
319
+ case 2: return [2];
320
+ }
321
+ });
322
+ });
323
+ };
324
+ _this.activate = function (newDate, save) {
325
+ if (newDate === void 0) { newDate = new Date(); }
326
+ if (save === void 0) { save = false; }
327
+ return __awaiter(_this, void 0, void 0, function () {
328
+ return __generator(this, function (_b) {
329
+ switch (_b.label) {
330
+ case 0:
331
+ this._data = __assign(__assign({}, this._data), { starting_date: newDate, ending_date: null });
332
+ if (!!!save) return [3, 2];
333
+ return [4, this.save()];
334
+ case 1:
335
+ _b.sent();
336
+ _b.label = 2;
337
+ case 2: return [2];
338
+ }
339
+ });
340
+ });
341
+ };
342
+ _this.archive = function (save) {
343
+ if (save === void 0) { save = false; }
344
+ return __awaiter(_this, void 0, void 0, function () {
345
+ return __generator(this, function (_b) {
346
+ switch (_b.label) {
347
+ case 0:
348
+ this._data = __assign(__assign({}, this._data), { archived: true });
349
+ if (!!!save) return [3, 2];
350
+ return [4, this.save()];
351
+ case 1:
352
+ _b.sent();
353
+ _b.label = 2;
354
+ case 2: return [2];
355
+ }
356
+ });
357
+ });
358
+ };
359
+ return _this;
360
+ }
361
+ PromiseToPurchase.prototype.getBank = function (bankTypeId) {
362
+ return this._data.banks.find(function (b) { return b.bank_type_id === bankTypeId; });
363
+ };
364
+ var _a;
365
+ _a = PromiseToPurchase;
366
+ PromiseToPurchase.fetch = function (_b) {
367
+ var app = _b.app, api = _b.api, _c = _b.hpp, hpp = _c === void 0 ? 10 : _c, _d = _b.page, page = _d === void 0 ? 0 : _d, _e = _b.query, query = _e === void 0 ? '' : _e, _f = _b.filters, filters = _f === void 0 ? '' : _f, _g = _b.indice, indice = _g === void 0 ? 'customer_pa_cust_id' : _g, _h = _b.f, f = _h === void 0 ? '' : _h, space = _b.space, _j = _b.useProspr, useProspr = _j === void 0 ? false : _j;
368
+ return __awaiter(void 0, void 0, void 0, function () {
369
+ var prosprSearch, prosprService, algolia, results, error_1;
370
+ return __generator(_a, function (_k) {
371
+ switch (_k.label) {
372
+ case 0:
373
+ _k.trys.push([0, 2, , 3]);
374
+ prosprSearch = false;
375
+ if (!!space) {
376
+ prosprService = space
377
+ .data()
378
+ .external_services.find(function (es) { return es.external_service_name.toLowerCase().trim() === 'prosprsearch'; });
379
+ prosprSearch = !!prosprService && prosprService.is_active;
380
+ }
381
+ algolia = (0, algolia_1.createClient)({
382
+ app: app,
383
+ indexId: "".concat(__1.isTestEnv ? 'test' : 'prod', "_").concat(indice),
384
+ key: !!useProspr ? api : prosprSearch && !!space ? space.preferences.prosprsearch.app() : api,
385
+ prospr: !!prosprSearch || !!useProspr
386
+ });
387
+ return [4, algolia.search(query, {
388
+ hitsPerPage: hpp,
389
+ facetFilters: filters,
390
+ filters: f,
391
+ page: page,
392
+ facets: ['*']
393
+ })];
394
+ case 1:
395
+ results = _k.sent();
396
+ return [2, results];
397
+ case 2:
398
+ error_1 = _k.sent();
399
+ (0, console_1.errorMessage)(error_1);
400
+ throw error_1;
401
+ case 3: return [2];
402
+ }
403
+ });
404
+ });
405
+ };
406
+ PromiseToPurchase.fetchHistory = function (_b) {
407
+ var app = _b.app, api = _b.api, _c = _b.hpp, hpp = _c === void 0 ? 50 : _c, _d = _b.page, page = _d === void 0 ? 0 : _d, _e = _b.query, query = _e === void 0 ? '' : _e, _f = _b.filters, filters = _f === void 0 ? '' : _f, _g = _b.indice, indice = _g === void 0 ? 'pa_bank_history' : _g, _h = _b.f, f = _h === void 0 ? '' : _h, _j = _b.useProspr, useProspr = _j === void 0 ? false : _j;
408
+ return __awaiter(void 0, void 0, void 0, function () {
409
+ var results, e_5;
410
+ return __generator(_a, function (_k) {
411
+ switch (_k.label) {
412
+ case 0:
413
+ _k.trys.push([0, 2, , 3]);
414
+ return [4, (0, searchIndexes_1.searchAPIFetchAlgoliaAddioSearch)({
415
+ app: app,
416
+ api: api,
417
+ indice: indice,
418
+ hpp: hpp,
419
+ page: page,
420
+ query: query,
421
+ filters: filters,
422
+ f: f,
423
+ useProspr: useProspr
424
+ })];
425
+ case 1:
426
+ results = _k.sent();
427
+ return [2, results];
428
+ case 2:
429
+ e_5 = _k.sent();
430
+ console.log('error on fetching history for promises : ', e_5.toString());
431
+ return [3, 3];
432
+ case 3: return [2];
433
+ }
434
+ });
435
+ });
436
+ };
437
+ PromiseToPurchase.calculateRemainingAmounts = function (actualCart, applicableBanks, applicableBanksHistory, space) { return __awaiter(void 0, void 0, void 0, function () {
438
+ var remainingAmountsForApplicableBanks, cartDataPA, remainingBankAmounts;
439
+ return __generator(_a, function (_b) {
440
+ switch (_b.label) {
441
+ case 0: return [4, space.promisesToPurchase.getAvailableAmountForApplicableBanks(applicableBanks, applicableBanksHistory)];
442
+ case 1:
443
+ remainingAmountsForApplicableBanks = _b.sent();
444
+ if (!!!actualCart)
445
+ throw new Error("ActualCart can't be undefined");
446
+ cartDataPA = actualCart.data().promise_to_purchase;
447
+ if (!!!cartDataPA || !!!cartDataPA.banks_used || cartDataPA.banks_used.length === 0)
448
+ throw new Error("ActualCart must have an associated promise to purchase and at least one bank_used");
449
+ remainingBankAmounts = applicableBanks.map(function (applicable) {
450
+ var bank = applicable.bank, promise_id = applicable.promise_id, promise_unique_id = applicable.promise_unique_id;
451
+ var remainingAmount = remainingAmountsForApplicableBanks[bank.bank_type_id];
452
+ if (typeof remainingAmount === 'undefined')
453
+ return;
454
+ return {
455
+ bank_type_id: bank.bank_type_id,
456
+ amount: remainingAmount,
457
+ promise_id: promise_id,
458
+ promise_unique_id: promise_unique_id
459
+ };
460
+ });
461
+ return [2, remainingBankAmounts.filter(function (bankApplied) { return !!bankApplied; })];
462
+ }
463
+ });
464
+ }); };
465
+ PromiseToPurchase.getDefaultPromiseToPurchase = function (customerId) { return ({
466
+ archived: false,
467
+ promise_unique_id: '',
468
+ customer_id: customerId,
469
+ banks: [],
470
+ starting_date: (0, moment_1.default)().toDate()
471
+ }); };
472
+ return PromiseToPurchase;
473
+ }(baseService_1.BaseServiceClass));
474
+ exports.default = PromiseToPurchase;
475
475
  //# sourceMappingURL=index.js.map