addio-admin-sdk 1.6.13 → 1.6.14

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 (499) 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 +362 -353
  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 +145 -145
  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 +311 -311
  205. package/dist/Interfaces/Space/index.js +77 -77
  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 +63 -63
  257. package/dist/lib/Booking/index.js +813 -813
  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 +3653 -3653
  262. package/dist/lib/Catalogue/index.d.ts +9 -9
  263. package/dist/lib/Catalogue/index.js +208 -208
  264. package/dist/lib/Category/index.d.ts +26 -26
  265. package/dist/lib/Category/index.js +361 -361
  266. package/dist/lib/Class/index.d.ts +12 -12
  267. package/dist/lib/Class/index.js +159 -159
  268. package/dist/lib/Consent/index.d.ts +4 -4
  269. package/dist/lib/Consent/index.js +79 -79
  270. package/dist/lib/Customer/index.d.ts +10 -10
  271. package/dist/lib/Customer/index.js +140 -140
  272. package/dist/lib/Declination/index.d.ts +10 -10
  273. package/dist/lib/Declination/index.js +85 -85
  274. package/dist/lib/Discount/index.d.ts +18 -18
  275. package/dist/lib/Discount/index.js +759 -759
  276. package/dist/lib/ElasticSearch/index.d.ts +8 -8
  277. package/dist/lib/ElasticSearch/index.js +101 -101
  278. package/dist/lib/Email/AbandonedCartEmail.d.ts +8 -8
  279. package/dist/lib/Email/AbandonedCartEmail.js +78 -78
  280. package/dist/lib/Email/AccountConfirmationEmail.d.ts +11 -11
  281. package/dist/lib/Email/AccountConfirmationEmail.js +95 -95
  282. package/dist/lib/Email/AdminOrderConfirmationEmail.d.ts +8 -8
  283. package/dist/lib/Email/AdminOrderConfirmationEmail.js +78 -78
  284. package/dist/lib/Email/ApplicationEmail.d.ts +8 -8
  285. package/dist/lib/Email/ApplicationEmail.js +78 -78
  286. package/dist/lib/Email/BackInStockEmail.d.ts +8 -8
  287. package/dist/lib/Email/BackInStockEmail.js +78 -78
  288. package/dist/lib/Email/ContactEmail.d.ts +8 -8
  289. package/dist/lib/Email/ContactEmail.js +78 -78
  290. package/dist/lib/Email/CustomerBookingAdminEmail.d.ts +8 -8
  291. package/dist/lib/Email/CustomerBookingAdminEmail.js +78 -78
  292. package/dist/lib/Email/CustomerBookingEmail.d.ts +8 -8
  293. package/dist/lib/Email/CustomerBookingEmail.js +78 -78
  294. package/dist/lib/Email/OrderConfirmationEmail.d.ts +8 -8
  295. package/dist/lib/Email/OrderConfirmationEmail.js +78 -78
  296. package/dist/lib/Email/OrderDenounciationEmail.d.ts +8 -8
  297. package/dist/lib/Email/OrderDenounciationEmail.js +78 -78
  298. package/dist/lib/Email/OrderSampleEmail.d.ts +8 -8
  299. package/dist/lib/Email/OrderSampleEmail.js +78 -78
  300. package/dist/lib/Email/OtherTypeEmails.d.ts +8 -8
  301. package/dist/lib/Email/OtherTypeEmails.js +90 -90
  302. package/dist/lib/Email/PasswordResetEmail.d.ts +8 -8
  303. package/dist/lib/Email/PasswordResetEmail.js +78 -78
  304. package/dist/lib/Email/PhotoShootEmail.d.ts +8 -8
  305. package/dist/lib/Email/PhotoShootEmail.js +78 -78
  306. package/dist/lib/Email/PickUpConfirmation.d.ts +8 -8
  307. package/dist/lib/Email/PickUpConfirmation.js +78 -78
  308. package/dist/lib/Email/ShippingConfirmation.d.ts +8 -8
  309. package/dist/lib/Email/ShippingConfirmation.js +78 -78
  310. package/dist/lib/Email/WelcomeEmail.d.ts +8 -8
  311. package/dist/lib/Email/WelcomeEmail.js +78 -78
  312. package/dist/lib/Email/index.d.ts +8 -8
  313. package/dist/lib/Email/index.js +82 -82
  314. package/dist/lib/ExternalService/Ebay.d.ts +63 -63
  315. package/dist/lib/ExternalService/Ebay.js +185 -185
  316. package/dist/lib/ExternalService/index.d.ts +5 -5
  317. package/dist/lib/ExternalService/index.js +28 -28
  318. package/dist/lib/Indexed/IndexedCart.d.ts +13 -13
  319. package/dist/lib/Indexed/IndexedCart.js +194 -194
  320. package/dist/lib/Indexed/Product.d.ts +17 -17
  321. package/dist/lib/Indexed/Product.js +116 -116
  322. package/dist/lib/Inventory/index.d.ts +31 -31
  323. package/dist/lib/Inventory/index.js +560 -560
  324. package/dist/lib/Invoice/index.d.ts +5 -5
  325. package/dist/lib/Invoice/index.js +28 -28
  326. package/dist/lib/MarketplacePublication/index.d.ts +9 -9
  327. package/dist/lib/MarketplacePublication/index.js +221 -221
  328. package/dist/lib/MongoDB/BaseAPI.d.ts +18 -18
  329. package/dist/lib/MongoDB/BaseAPI.js +308 -308
  330. package/dist/lib/Order/index.d.ts +7 -7
  331. package/dist/lib/Order/index.js +62 -62
  332. package/dist/lib/Org/index.d.ts +26 -26
  333. package/dist/lib/Org/index.js +286 -286
  334. package/dist/lib/PandaPay/index.d.ts +16 -16
  335. package/dist/lib/PandaPay/index.js +219 -219
  336. package/dist/lib/Paysafe/index.d.ts +11 -11
  337. package/dist/lib/Paysafe/index.js +100 -100
  338. package/dist/lib/Product/index.d.ts +143 -143
  339. package/dist/lib/Product/index.js +1326 -1326
  340. package/dist/lib/ProductAttribute/index.d.ts +15 -15
  341. package/dist/lib/ProductAttribute/index.js +114 -114
  342. package/dist/lib/PromiseToPurchase/index.d.ts +35 -35
  343. package/dist/lib/PromiseToPurchase/index.js +474 -474
  344. package/dist/lib/PurchaseOrder/index.d.ts +9 -9
  345. package/dist/lib/PurchaseOrder/index.js +72 -72
  346. package/dist/lib/Queue/index.d.ts +40 -40
  347. package/dist/lib/Queue/index.js +254 -254
  348. package/dist/lib/Service/Enum/ServiceEnum.d.ts +3 -3
  349. package/dist/lib/Service/Enum/ServiceEnum.js +7 -7
  350. package/dist/lib/Service/index.d.ts +5 -5
  351. package/dist/lib/Service/index.js +57 -57
  352. package/dist/lib/Shipment/index.d.ts +28 -28
  353. package/dist/lib/Shipment/index.js +559 -559
  354. package/dist/lib/Slider/index.d.ts +16 -16
  355. package/dist/lib/Slider/index.js +235 -235
  356. package/dist/lib/Space/index.d.ts +769 -769
  357. package/dist/lib/Space/index.js +6688 -6688
  358. package/dist/lib/StockNotification/index.d.ts +4 -4
  359. package/dist/lib/StockNotification/index.js +26 -26
  360. package/dist/lib/Store/index.d.ts +5 -5
  361. package/dist/lib/Store/index.js +30 -30
  362. package/dist/lib/Supplier/Command.d.ts +5 -5
  363. package/dist/lib/Supplier/Command.js +28 -28
  364. package/dist/lib/Supplier/index.d.ts +25 -25
  365. package/dist/lib/Supplier/index.js +92 -92
  366. package/dist/lib/Tags/index.d.ts +6 -6
  367. package/dist/lib/Tags/index.js +84 -84
  368. package/dist/lib/Tax/index.d.ts +8 -8
  369. package/dist/lib/Tax/index.js +136 -136
  370. package/dist/lib/TransferRequest/index.d.ts +21 -21
  371. package/dist/lib/TransferRequest/index.js +302 -302
  372. package/dist/lib/Update/index.d.ts +10 -10
  373. package/dist/lib/Update/index.js +71 -71
  374. package/dist/lib/User/index.d.ts +33 -33
  375. package/dist/lib/User/index.js +360 -360
  376. package/dist/lib/Wishlist/index.d.ts +5 -5
  377. package/dist/lib/Wishlist/index.js +28 -28
  378. package/dist/lib/base.d.ts +14 -14
  379. package/dist/lib/base.js +135 -135
  380. package/dist/lib/baseService.d.ts +17 -17
  381. package/dist/lib/baseService.js +113 -113
  382. package/dist/rules/GR/constants/data.d.ts +28 -28
  383. package/dist/rules/GR/constants/data.js +57 -57
  384. package/dist/rules/GR/constants/products.d.ts +8 -8
  385. package/dist/rules/GR/constants/products.js +234 -234
  386. package/dist/rules/GR/interfaces/cart.d.ts +68 -68
  387. package/dist/rules/GR/interfaces/cart.js +49 -49
  388. package/dist/rules/GR/interfaces/data.d.ts +97 -97
  389. package/dist/rules/GR/interfaces/data.js +104 -104
  390. package/dist/rules/GR/interfaces/products.d.ts +61 -61
  391. package/dist/rules/GR/interfaces/products.js +10 -10
  392. package/dist/rules/GR/utils/cart.d.ts +39 -39
  393. package/dist/rules/GR/utils/cart.js +644 -644
  394. package/dist/rules/GR/utils/data.d.ts +3 -3
  395. package/dist/rules/GR/utils/data.js +25 -25
  396. package/dist/rules/GR/utils/expedition.d.ts +70 -70
  397. package/dist/rules/GR/utils/expedition.js +1584 -1584
  398. package/dist/rules/GR/utils/expedition.js.map +1 -1
  399. package/dist/rules/GR/utils/g2.d.ts +153 -153
  400. package/dist/rules/GR/utils/g2.js +914 -914
  401. package/dist/rules/GR/utils/invoices.d.ts +5 -5
  402. package/dist/rules/GR/utils/invoices.js +140 -140
  403. package/dist/rules/GR/utils/products.d.ts +105 -105
  404. package/dist/rules/GR/utils/products.js +1013 -1013
  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 +41 -41
  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 +300 -300
  417. package/dist/services/database/NotFirebaseProvider.d.ts +35 -35
  418. package/dist/services/database/NotFirebaseProvider.js +367 -367
  419. package/dist/utils/algolia.d.ts +6 -6
  420. package/dist/utils/algolia.js +22 -22
  421. package/dist/utils/anonymisation.d.ts +30 -30
  422. package/dist/utils/anonymisation.js +269 -269
  423. package/dist/utils/array.d.ts +5 -5
  424. package/dist/utils/array.js +36 -36
  425. package/dist/utils/aws.d.ts +14 -14
  426. package/dist/utils/aws.js +220 -220
  427. package/dist/utils/booking.d.ts +22 -22
  428. package/dist/utils/booking.js +175 -175
  429. package/dist/utils/cart.d.ts +511 -511
  430. package/dist/utils/cart.js +503 -503
  431. package/dist/utils/cmv.d.ts +10 -10
  432. package/dist/utils/cmv.js +107 -107
  433. package/dist/utils/console.d.ts +6 -6
  434. package/dist/utils/console.js +121 -121
  435. package/dist/utils/context.d.ts +19 -19
  436. package/dist/utils/context.js +41 -41
  437. package/dist/utils/currency.d.ts +6 -6
  438. package/dist/utils/currency.js +62 -62
  439. package/dist/utils/data.d.ts +40 -40
  440. package/dist/utils/data.js +226 -226
  441. package/dist/utils/date.d.ts +1 -1
  442. package/dist/utils/date.js +16 -16
  443. package/dist/utils/dimensions.d.ts +3 -3
  444. package/dist/utils/dimensions.js +18 -18
  445. package/dist/utils/discount.d.ts +33 -33
  446. package/dist/utils/discount.js +906 -906
  447. package/dist/utils/errors.d.ts +113 -113
  448. package/dist/utils/errors.js +113 -113
  449. package/dist/utils/file-admin.d.ts +8 -8
  450. package/dist/utils/file-admin.js +94 -94
  451. package/dist/utils/file.d.ts +38 -38
  452. package/dist/utils/file.js +318 -318
  453. package/dist/utils/firebase-admin.d.ts +2 -2
  454. package/dist/utils/firebase-admin.js +118 -118
  455. package/dist/utils/firebase.d.ts +41 -41
  456. package/dist/utils/firebase.js +220 -220
  457. package/dist/utils/import.d.ts +1 -1
  458. package/dist/utils/import.js +81 -81
  459. package/dist/utils/inventories.d.ts +26 -26
  460. package/dist/utils/inventories.js +355 -355
  461. package/dist/utils/locale.d.ts +13 -13
  462. package/dist/utils/locale.js +67 -67
  463. package/dist/utils/mailchimp.d.ts +57 -57
  464. package/dist/utils/mailchimp.js +735 -735
  465. package/dist/utils/mongodb.d.ts +1 -1
  466. package/dist/utils/mongodb.js +68 -68
  467. package/dist/utils/object.d.ts +6 -6
  468. package/dist/utils/object.js +124 -124
  469. package/dist/utils/payment.d.ts +10 -10
  470. package/dist/utils/payment.js +25 -25
  471. package/dist/utils/products.d.ts +26 -26
  472. package/dist/utils/products.js +301 -301
  473. package/dist/utils/promiseToPurchase.d.ts +56 -56
  474. package/dist/utils/promiseToPurchase.js +228 -228
  475. package/dist/utils/prosprsearch.d.ts +21 -21
  476. package/dist/utils/prosprsearch.js +276 -276
  477. package/dist/utils/sdc.d.ts +10 -10
  478. package/dist/utils/sdc.js +1308 -1308
  479. package/dist/utils/searchIndexes.d.ts +20 -20
  480. package/dist/utils/searchIndexes.js +273 -273
  481. package/dist/utils/services.d.ts +38 -38
  482. package/dist/utils/services.js +394 -394
  483. package/dist/utils/shipment.d.ts +110 -110
  484. package/dist/utils/shipment.js +410 -410
  485. package/dist/utils/simpletexting.d.ts +2 -2
  486. package/dist/utils/simpletexting.js +88 -88
  487. package/dist/utils/sliders.d.ts +4 -4
  488. package/dist/utils/sliders.js +70 -70
  489. package/dist/utils/string.d.ts +16 -16
  490. package/dist/utils/string.js +194 -194
  491. package/dist/utils/update.d.ts +7 -7
  492. package/dist/utils/update.js +244 -244
  493. package/dist/utils/weight.d.ts +3 -3
  494. package/dist/utils/weight.js +18 -18
  495. package/dist/utils/zones.d.ts +10 -10
  496. package/dist/utils/zones.js +287 -287
  497. package/package.json +106 -106
  498. package/publish.sh +143 -143
  499. package/readme.md +182 -182
@@ -1,560 +1,560 @@
1
- "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
14
- if (k2 === undefined) k2 = k;
15
- var desc = Object.getOwnPropertyDescriptor(m, k);
16
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
17
- desc = { enumerable: true, get: function() { return m[k]; } };
18
- }
19
- Object.defineProperty(o, k2, desc);
20
- }) : (function(o, m, k, k2) {
21
- if (k2 === undefined) k2 = k;
22
- o[k2] = m[k];
23
- }));
24
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
25
- Object.defineProperty(o, "default", { enumerable: true, value: v });
26
- }) : function(o, v) {
27
- o["default"] = v;
28
- });
29
- var __importStar = (this && this.__importStar) || function (mod) {
30
- if (mod && mod.__esModule) return mod;
31
- var result = {};
32
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
33
- __setModuleDefault(result, mod);
34
- return result;
35
- };
36
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
37
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
38
- return new (P || (P = Promise))(function (resolve, reject) {
39
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
40
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
41
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
42
- step((generator = generator.apply(thisArg, _arguments || [])).next());
43
- });
44
- };
45
- var __generator = (this && this.__generator) || function (thisArg, body) {
46
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
47
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
48
- function verb(n) { return function (v) { return step([n, v]); }; }
49
- function step(op) {
50
- if (f) throw new TypeError("Generator is already executing.");
51
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
52
- 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;
53
- if (y = 0, t) op = [op[0] & 2, t.value];
54
- switch (op[0]) {
55
- case 0: case 1: t = op; break;
56
- case 4: _.label++; return { value: op[1], done: false };
57
- case 5: _.label++; y = op[1]; op = [0]; continue;
58
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
59
- default:
60
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
61
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
62
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
63
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
64
- if (t[2]) _.ops.pop();
65
- _.trys.pop(); continue;
66
- }
67
- op = body.call(thisArg, _);
68
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
69
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
70
- }
71
- };
72
- var __importDefault = (this && this.__importDefault) || function (mod) {
73
- return (mod && mod.__esModule) ? mod : { "default": mod };
74
- };
75
- Object.defineProperty(exports, "__esModule", { value: true });
76
- var isomorphic_unfetch_1 = __importDefault(require("isomorphic-unfetch"));
77
- var lodash_1 = require("lodash");
78
- var console_1 = require("../../utils/console");
79
- var shipment_1 = require("../../utils/shipment");
80
- var Cart_1 = __importDefault(require("../Cart"));
81
- var convert = __importStar(require("xml-js"));
82
- var moment_1 = __importDefault(require("moment"));
83
- var currency_1 = require("../../utils/currency");
84
- var Shipment = (function () {
85
- function Shipment(cart, shipmentService) {
86
- var _this = this;
87
- this._getPriceByCurrency = function (amount, fromCurrency, space) {
88
- return !!!space
89
- ? undefined
90
- : (0, lodash_1.toNumber)((0, currency_1.calculateAmountByCurrency)(space, space.preferences.default.currency(), typeof amount === 'string' ? (0, lodash_1.toNumber)(amount) : amount, fromCurrency));
91
- };
92
- this.getShippingQuotes = function (space, fromAddress, fromServer, doNotPackage) {
93
- if (fromServer === void 0) { fromServer = false; }
94
- return __awaiter(_this, void 0, void 0, function () {
95
- var quotes, _loop_1, this_1, _i, _a, ss, state_1, lowest;
96
- var _this = this;
97
- return __generator(this, function (_b) {
98
- switch (_b.label) {
99
- case 0:
100
- if (!!!this._cart)
101
- throw new Error("Cart can't be null");
102
- quotes = [];
103
- _loop_1 = function (ss) {
104
- var requestHeader, url, method, headers, body_2, _c, _loop_2, _d, body_1, q, quoteReq, errors, quoteJson, error_1, quoteReq, errors, quoteXML, _e, quoteJson, error_2, error_3;
105
- return __generator(this, function (_f) {
106
- switch (_f.label) {
107
- case 0:
108
- (0, console_1.workingMessage)("Calling ".concat(ss.external_service_name, " service... for good"));
109
- requestHeader = ss.external_service_name === 'Livraison sur mesure'
110
- ? { url: '', type: '', headers: {} }
111
- : (0, shipment_1.quotesUrl)(ss.external_service_infos, ss.external_service_name);
112
- if (!!!requestHeader)
113
- return [2, "continue"];
114
- url = requestHeader.url, method = requestHeader.type, headers = requestHeader.headers;
115
- _f.label = 1;
116
- case 1:
117
- _f.trys.push([1, 27, , 28]);
118
- if (!(ss.external_service_name === 'Livraison sur mesure')) return [3, 2];
119
- _c = { custom: true };
120
- return [3, 4];
121
- case 2: return [4, (0, shipment_1.getBodyForQuoteRequest)(ss, this_1._cart, fromAddress, doNotPackage)];
122
- case 3:
123
- _c = _f.sent();
124
- _f.label = 4;
125
- case 4:
126
- body_2 = _c;
127
- if (!!!body_2)
128
- return [2, { value: [] }];
129
- if (!(Array.isArray(body_2) && ['shipstation', 'shiptime'].includes(ss.external_service_name))) return [3, 9];
130
- _loop_2 = function (q) {
131
- var quoteReq, quoteJson, error_4;
132
- return __generator(this, function (_g) {
133
- switch (_g.label) {
134
- case 0:
135
- _g.trys.push([0, 3, , 4]);
136
- return [4, (0, isomorphic_unfetch_1.default)(!!fromServer ? url : '/api/services/cors', {
137
- headers: !!fromServer
138
- ? __assign(__assign({}, headers), { 'content-type': 'application/json' })
139
- : { 'content-type': 'application/json' },
140
- method: !!fromServer ? method : 'POST',
141
- body: !!fromServer
142
- ? JSON.stringify(q)
143
- : JSON.stringify({
144
- props: { body: q, headers: headers, method: method },
145
- url: url
146
- })
147
- })];
148
- case 1:
149
- quoteReq = _g.sent();
150
- if (quoteReq.status.toString().charAt(0) !== '2')
151
- return [2, "continue"];
152
- return [4, quoteReq.json()];
153
- case 2:
154
- quoteJson = _g.sent();
155
- quotes.push(quoteJson.map(function (quote) {
156
- if (ss.external_service_name !== 'shipstation') {
157
- return __assign(__assign({}, quote), { quote_id: quote.quoteId, carrier: quote.carrierName, base_fee: quote.totalCharge.amount / 100, service: quote.serviceName, service_code: quote.serviceId, details: q, provider_name: 'shiptime' });
158
- }
159
- return __assign(__assign({}, quote), { carrier: q.carrierCode, base_fee: quote.shipmentCost, service: quote.serviceName, service_code: quote.serviceCode, details: q, provider_name: 'shipstation' });
160
- }));
161
- return [3, 4];
162
- case 3:
163
- error_4 = _g.sent();
164
- (0, console_1.errorMessage)(error_4);
165
- return [2, "continue"];
166
- case 4: return [2];
167
- }
168
- });
169
- };
170
- _d = 0, body_1 = body_2;
171
- _f.label = 5;
172
- case 5:
173
- if (!(_d < body_1.length)) return [3, 8];
174
- q = body_1[_d];
175
- return [5, _loop_2(q)];
176
- case 6:
177
- _f.sent();
178
- _f.label = 7;
179
- case 7:
180
- _d++;
181
- return [3, 5];
182
- case 8: return [2, "continue"];
183
- case 9:
184
- if (!(ss.external_service_name === 'shiptime')) return [3, 16];
185
- _f.label = 10;
186
- case 10:
187
- _f.trys.push([10, 15, , 16]);
188
- return [4, (0, isomorphic_unfetch_1.default)(!!fromServer ? url : '/api/services/cors', {
189
- headers: !!fromServer
190
- ? __assign(__assign({}, headers), { 'content-type': 'application/json' })
191
- : { 'content-type': 'application/json' },
192
- method: !!fromServer ? method : 'POST',
193
- body: !!fromServer ? JSON.stringify(body_2) : JSON.stringify({ props: { body: body_2, headers: headers, method: method }, url: url })
194
- })];
195
- case 11:
196
- quoteReq = _f.sent();
197
- if (!(quoteReq.status.toString().charAt(0) === '4')) return [3, 13];
198
- return [4, quoteReq.json()];
199
- case 12:
200
- errors = (_f.sent());
201
- console.log("errors while fetching quote with status ".concat(quoteReq.status), errors);
202
- return [2, "continue"];
203
- case 13: return [4, quoteReq.json()];
204
- case 14:
205
- quoteJson = _f.sent();
206
- quoteJson.availableRates.map(function (quote) {
207
- var merchant_shipping_fee = Cart_1.default.calculateMerchantShippingFee(quote.totalBeforeTaxes.amount / 100, space.data());
208
- var newQuote = {
209
- quote_id: quote.quoteId,
210
- carrier: quote.carrierName,
211
- service: quote.serviceName,
212
- service_code: quote.serviceId,
213
- base_fee: _this._getPriceByCurrency(quote.baseCharge.amount / 100, quote.baseCharge.currency, space),
214
- totalBeforeTaxes: _this._getPriceByCurrency(quote.totalBeforeTaxes.amount / 100, quote.totalBeforeTaxes.currency, space),
215
- method: 'shipping',
216
- details: body_2,
217
- transit_days: quote.transitDays,
218
- is_lowest: false,
219
- is_fastest: false,
220
- provider: 'shiptime',
221
- surcharges: !!quote.surcharges
222
- ? quote.surcharges.map(function (surcharge) { return ({
223
- name: surcharge.name,
224
- amount: _this._getPriceByCurrency(surcharge.price.amount / 100, surcharge.price.currency, space)
225
- }); })
226
- : [],
227
- taxes: !!quote.taxes
228
- ? quote.taxes.map(function (tax) { return ({
229
- name: tax.name,
230
- amount: _this._getPriceByCurrency(tax.price.amount / 100, tax.price.currency, space)
231
- }); })
232
- : [],
233
- merchant_shipping_fee: merchant_shipping_fee,
234
- total: _this._getPriceByCurrency(quote.totalCharge.amount / 100, quote.totalCharge.currency, space)
235
- };
236
- quotes.push(newQuote);
237
- return newQuote;
238
- });
239
- return [3, 16];
240
- case 15:
241
- error_1 = _f.sent();
242
- console.log('error: ', error_1);
243
- console.log(JSON.stringify(error_1));
244
- (0, console_1.errorMessage)("Error while fetching Shiptime quotes ".concat(error_1, " - ").concat(JSON.stringify(error_1)));
245
- return [3, 16];
246
- case 16:
247
- if (!(ss.external_service_name === 'Poste Canada')) return [3, 26];
248
- _f.label = 17;
249
- case 17:
250
- _f.trys.push([17, 25, , 26]);
251
- return [4, (0, isomorphic_unfetch_1.default)(!!fromServer ? url : '/api/services/cors', {
252
- headers: !!fromServer ? __assign({}, headers) : { 'content-type': 'application/json' },
253
- method: !!fromServer ? method : 'POST',
254
- body: !!fromServer ? body_2 : JSON.stringify({ props: { body: body_2, headers: headers, method: method }, url: url })
255
- })];
256
- case 18:
257
- quoteReq = _f.sent();
258
- if (!(quoteReq.status.toString().charAt(0) === '4')) return [3, 20];
259
- return [4, quoteReq.text()];
260
- case 19:
261
- errors = (_f.sent());
262
- if (!!errors) {
263
- return [2, { value: errors }];
264
- }
265
- if (!!!errors)
266
- return [2, "continue"];
267
- _f.label = 20;
268
- case 20:
269
- if (!!!fromServer) return [3, 22];
270
- return [4, quoteReq.text()];
271
- case 21:
272
- _e = _f.sent();
273
- return [3, 24];
274
- case 22: return [4, quoteReq.json()];
275
- case 23:
276
- _e = _f.sent();
277
- _f.label = 24;
278
- case 24:
279
- quoteXML = _e;
280
- quoteJson = JSON.parse(convert.xml2json(quoteXML, { compact: true }));
281
- quoteJson['price-quotes']['price-quote'].forEach(function (qJson) {
282
- var surchage = (0, lodash_1.sumBy)(qJson['price-details'].adjustments.adjustment, function (a) {
283
- return (0, lodash_1.toNumber)(a['adjustment-cost']._text);
284
- });
285
- quotes.push(__assign(__assign({}, qJson), { surcharges: (0, lodash_1.map)(qJson['price-details'].adjustments.adjustment.map(function (a) { return ({
286
- price: {
287
- currency: 'CAD',
288
- amount: (0, lodash_1.toNumber)(a['adjustment-cost']._text) * 100
289
- },
290
- code: a['adjustment-code']._text,
291
- name: a['adjustment-name']._text
292
- }); })), taxes: (0, lodash_1.map)(qJson['price-details'].taxes, function (t, ti) { return ({
293
- price: { currency: 'CAD', amount: (0, lodash_1.toNumber)(t._text) * 100 },
294
- code: (0, lodash_1.toString)(ti).toUpperCase(),
295
- name: (0, lodash_1.toString)(ti).toUpperCase()
296
- }); }), totalCharge: {
297
- amount: (0, lodash_1.toNumber)(qJson['price-details']['due']._text) * 100,
298
- currency: 'CAD'
299
- }, totalBeforeTaxes: {
300
- amount: ((0, lodash_1.toNumber)(qJson['price-details']['base']._text) + surchage) * 100,
301
- currency: 'CAD'
302
- }, carrier: 'Poste Canada', base_fee: (0, lodash_1.toNumber)(qJson['price-details']['base']._text) + surchage, baseCharge: {
303
- amount: (0, lodash_1.toNumber)(qJson['price-details']['base']._text) * 100,
304
- currency: 'CAD'
305
- }, service: qJson['service-name']._text, serviceName: qJson['service-name']._text, service_code: qJson['service-code']._text, serviceCode: qJson['service-code']._text, provider_name: 'Poste Canada', provider: 'Poste Canada', transit_days: (0, lodash_1.toNumber)(qJson['service-standard']['expected-transit-time']._text), estimatedShippingDate: qJson['service-standard']['expected-delivery-date']
306
- ? (0, moment_1.default)(qJson['service-standard']['expected-delivery-date']._text).toString()
307
- : undefined }));
308
- });
309
- return [3, 26];
310
- case 25:
311
- error_2 = _f.sent();
312
- console.log('error: ', error_2);
313
- console.log(JSON.stringify(error_2));
314
- (0, console_1.errorMessage)("Error while fetching Shiptime quotes ".concat(error_2, " - ").concat(JSON.stringify(error_2)));
315
- return [3, 26];
316
- case 26:
317
- (0, console_1.workingMessage)("Looking for ".concat(ss.external_service_name));
318
- if (ss.external_service_name === 'Livraison sur mesure') {
319
- quotes.push({
320
- baseCharge: {
321
- amount: 10000,
322
- currency: 'CAD'
323
- },
324
- surcharges: [],
325
- taxes: [],
326
- totalCharge: {
327
- amount: 10000,
328
- currency: 'CAD'
329
- },
330
- totalBeforeTaxes: {
331
- amount: 10000,
332
- currency: 'CAD'
333
- },
334
- carrier: 'Groupe Richer',
335
- base_fee: 100,
336
- service: 'groupe-richer',
337
- serviceName: 'Groupe Richer',
338
- service_code: 'gr',
339
- serviceCode: 'gr',
340
- provider_name: 'Groupe Richer',
341
- provider: 'Groupe Richer'
342
- });
343
- }
344
- return [3, 28];
345
- case 27:
346
- error_3 = _f.sent();
347
- console.log('error: ', JSON.stringify(error_3));
348
- (0, console_1.errorMessage)(error_3);
349
- return [2, "continue"];
350
- case 28: return [2];
351
- }
352
- });
353
- };
354
- this_1 = this;
355
- _i = 0, _a = this._shipmentService;
356
- _b.label = 1;
357
- case 1:
358
- if (!(_i < _a.length)) return [3, 4];
359
- ss = _a[_i];
360
- return [5, _loop_1(ss)];
361
- case 2:
362
- state_1 = _b.sent();
363
- if (typeof state_1 === "object")
364
- return [2, state_1.value];
365
- _b.label = 3;
366
- case 3:
367
- _i++;
368
- return [3, 1];
369
- case 4:
370
- this._shippingQuote = quotes;
371
- lowest = (0, lodash_1.minBy)(quotes, function (q) { return q.base_fee; });
372
- return [2, (0, lodash_1.map)(quotes, function (q) {
373
- if (!!!lowest)
374
- return q;
375
- if (q.base_fee !== lowest.base_fee)
376
- return q;
377
- return __assign(__assign({}, q), { is_lowest: true });
378
- })];
379
- }
380
- });
381
- });
382
- };
383
- this.getServiceOfQuote = function (quote) {
384
- var service = _this._shipmentService.find(function (a) {
385
- return a.external_service_name.toLowerCase() === (0, lodash_1.toString)(quote.provider_name || quote.provider || '').toLowerCase();
386
- });
387
- if (!!!service)
388
- throw new Error("Can't find provider ".concat(quote.provider, " (").concat(!!quote.provider_name, ")"));
389
- return service;
390
- };
391
- this.approveQuote = function (quote, fromServer, canadaPostProps) { return __awaiter(_this, void 0, void 0, function () {
392
- var service, requestHeader, url, method, headers, body, quoteReq, details, type, quoteXML, _a, error_5;
393
- return __generator(this, function (_b) {
394
- switch (_b.label) {
395
- case 0:
396
- if (!!!this._cart)
397
- throw new Error("Cart can't be null");
398
- service = this.getServiceOfQuote(quote);
399
- requestHeader = (0, shipment_1.createShipmentUrl)(service.external_service_infos, service.external_service_name);
400
- if (!!!requestHeader)
401
- throw new Error("Can't access service provider. Please validate your external services configuration");
402
- url = requestHeader.url, method = requestHeader.type, headers = requestHeader.headers;
403
- if (!!!quote) {
404
- quote = this._shippingQuote;
405
- }
406
- if (!!!quote) {
407
- throw new Error("Quote expected");
408
- }
409
- body = (0, shipment_1.getBodyForQuoteApprove)(service, quote, canadaPostProps);
410
- return [4, (0, isomorphic_unfetch_1.default)(!!fromServer ? url : '/api/services/cors', {
411
- headers: !!fromServer
412
- ? __assign(__assign({}, headers), { 'content-type': 'application/json' })
413
- : { 'content-type': 'application/json' },
414
- method: !!fromServer ? method : 'POST',
415
- body: !!fromServer ? JSON.stringify(body) : JSON.stringify({ props: { body: body, headers: headers, method: method }, url: url })
416
- })];
417
- case 1:
418
- quoteReq = _b.sent();
419
- if (quoteReq.status.toString() !== '200')
420
- throw new Error("Error while fetching quotes: ".concat(quoteReq.statusText));
421
- if (!(!!headers['Content-Type'] && headers['Content-Type'].includes('xml'))) return [3, 9];
422
- _b.label = 2;
423
- case 2:
424
- _b.trys.push([2, 7, , 8]);
425
- type = quoteReq.headers.get('Content-Type');
426
- if (!(!!!type || !type.includes('json'))) return [3, 4];
427
- return [4, quoteReq.text()];
428
- case 3:
429
- _a = _b.sent();
430
- return [3, 6];
431
- case 4: return [4, quoteReq.json()];
432
- case 5:
433
- _a = _b.sent();
434
- _b.label = 6;
435
- case 6:
436
- quoteXML = _a;
437
- details = JSON.parse(convert.xml2json(quoteXML));
438
- details = __assign(__assign({}, details), { labelUrl: details['elements'][0]['elements']
439
- .find(function (a) { return a.name === 'links'; })
440
- .elements.find(function (e) { return !!e.attributes && e.attributes.rel === 'label'; }).attributes.href, deleteUrl: details['elements'][0]['elements']
441
- .find(function (a) { return a.name === 'links'; })
442
- .elements.find(function (e) { return !!e.attributes && e.attributes.rel === 'self'; }).attributes.href });
443
- return [3, 8];
444
- case 7:
445
- error_5 = _b.sent();
446
- (0, console_1.errorMessage)(error_5.toString());
447
- throw new Error("Can't process shipping label. Please contact us with the quote ".concat(JSON.stringify(quote)));
448
- case 8: return [3, 11];
449
- case 9: return [4, quoteReq.json()];
450
- case 10:
451
- details = _b.sent();
452
- _b.label = 11;
453
- case 11: return [2, { confirmed: true, details: details }];
454
- }
455
- });
456
- }); };
457
- this.cancelShipping = function (orderId, fromServer, deleteUrl) { return __awaiter(_this, void 0, void 0, function () {
458
- var details, error, confirmed, _i, _a, ss, requestHeader, url, method, headers, quoteReq, error_6;
459
- return __generator(this, function (_b) {
460
- switch (_b.label) {
461
- case 0:
462
- error = undefined;
463
- confirmed = false;
464
- _i = 0, _a = this._shipmentService;
465
- _b.label = 1;
466
- case 1:
467
- if (!(_i < _a.length)) return [3, 6];
468
- ss = _a[_i];
469
- requestHeader = (0, shipment_1.deleteShipmentUrl)(__assign(__assign({}, ss.external_service_infos), { orderId: orderId, deleteUrl: deleteUrl }), ss.external_service_name);
470
- if (!!!requestHeader)
471
- return [3, 5];
472
- url = requestHeader.url, method = requestHeader.type, headers = requestHeader.headers;
473
- _b.label = 2;
474
- case 2:
475
- _b.trys.push([2, 4, , 5]);
476
- return [4, (0, isomorphic_unfetch_1.default)(!!fromServer ? url : '/api/services/cors', {
477
- headers: !!fromServer
478
- ? __assign(__assign({}, headers), { 'content-type': 'application/json' })
479
- : { 'content-type': 'application/json' },
480
- method: !!fromServer ? method : 'POST',
481
- body: JSON.stringify({ props: { headers: headers, method: method }, url: url })
482
- })];
483
- case 3:
484
- quoteReq = _b.sent();
485
- if (quoteReq.status.toString() !== '200')
486
- return [3, 5];
487
- return [2, { confirmed: true, error: error }];
488
- case 4:
489
- error_6 = _b.sent();
490
- error_6 = error_6;
491
- (0, console_1.errorMessage)("Error while calling order service ".concat(error_6, " - ").concat(JSON.stringify(error_6)));
492
- return [3, 5];
493
- case 5:
494
- _i++;
495
- return [3, 1];
496
- case 6: return [2, { confirmed: false, error: "Can't void shipping" }];
497
- }
498
- });
499
- }); };
500
- this.getLabel = function (labelUrl, fromServer) { return __awaiter(_this, void 0, void 0, function () {
501
- var _i, _a, ss, requestHeader, url, method, headers, quoteReq, type, details, _b, error_7;
502
- return __generator(this, function (_c) {
503
- switch (_c.label) {
504
- case 0:
505
- _i = 0, _a = this._shipmentService;
506
- _c.label = 1;
507
- case 1:
508
- if (!(_i < _a.length)) return [3, 10];
509
- ss = _a[_i];
510
- _c.label = 2;
511
- case 2:
512
- _c.trys.push([2, 8, , 9]);
513
- requestHeader = (0, shipment_1.createShipmentLabelUrl)(__assign(__assign({}, ss.external_service_infos), { labelUrl: labelUrl }), ss.external_service_name);
514
- if (!!!requestHeader)
515
- return [3, 9];
516
- url = requestHeader.url, method = requestHeader.type, headers = requestHeader.headers;
517
- return [4, (0, isomorphic_unfetch_1.default)(!!fromServer ? url : '/api/services/cors', {
518
- headers: !!fromServer
519
- ? __assign(__assign({}, headers), { 'content-type': 'application/json' })
520
- : { 'content-type': 'application/json' },
521
- method: !!fromServer ? method : 'POST',
522
- body: JSON.stringify({ props: { headers: headers, method: method }, url: url })
523
- })];
524
- case 3:
525
- quoteReq = _c.sent();
526
- if (quoteReq.status.toString() !== '200')
527
- return [3, 9];
528
- type = quoteReq.headers.get('Content-Type');
529
- if (!(!!!type || !type.includes('json'))) return [3, 5];
530
- return [4, quoteReq.text()];
531
- case 4:
532
- _b = _c.sent();
533
- return [3, 7];
534
- case 5: return [4, quoteReq.json()];
535
- case 6:
536
- _b = _c.sent();
537
- _c.label = 7;
538
- case 7:
539
- details = _b;
540
- return [2, { confirmed: true, label: details }];
541
- case 8:
542
- error_7 = _c.sent();
543
- console.log(error_7);
544
- console.log('erreur: ', JSON.stringify(error_7));
545
- return [3, 9];
546
- case 9:
547
- _i++;
548
- return [3, 1];
549
- case 10: return [2];
550
- }
551
- });
552
- }); };
553
- this._shipmentService = shipmentService;
554
- this._shippingQuote = undefined;
555
- this._cart = cart;
556
- }
557
- return Shipment;
558
- }());
559
- exports.default = Shipment;
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ var desc = Object.getOwnPropertyDescriptor(m, k);
16
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
17
+ desc = { enumerable: true, get: function() { return m[k]; } };
18
+ }
19
+ Object.defineProperty(o, k2, desc);
20
+ }) : (function(o, m, k, k2) {
21
+ if (k2 === undefined) k2 = k;
22
+ o[k2] = m[k];
23
+ }));
24
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
25
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
26
+ }) : function(o, v) {
27
+ o["default"] = v;
28
+ });
29
+ var __importStar = (this && this.__importStar) || function (mod) {
30
+ if (mod && mod.__esModule) return mod;
31
+ var result = {};
32
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
33
+ __setModuleDefault(result, mod);
34
+ return result;
35
+ };
36
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
37
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
38
+ return new (P || (P = Promise))(function (resolve, reject) {
39
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
40
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
41
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
42
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
43
+ });
44
+ };
45
+ var __generator = (this && this.__generator) || function (thisArg, body) {
46
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
47
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
48
+ function verb(n) { return function (v) { return step([n, v]); }; }
49
+ function step(op) {
50
+ if (f) throw new TypeError("Generator is already executing.");
51
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
52
+ 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;
53
+ if (y = 0, t) op = [op[0] & 2, t.value];
54
+ switch (op[0]) {
55
+ case 0: case 1: t = op; break;
56
+ case 4: _.label++; return { value: op[1], done: false };
57
+ case 5: _.label++; y = op[1]; op = [0]; continue;
58
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
59
+ default:
60
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
61
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
62
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
63
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
64
+ if (t[2]) _.ops.pop();
65
+ _.trys.pop(); continue;
66
+ }
67
+ op = body.call(thisArg, _);
68
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
69
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
70
+ }
71
+ };
72
+ var __importDefault = (this && this.__importDefault) || function (mod) {
73
+ return (mod && mod.__esModule) ? mod : { "default": mod };
74
+ };
75
+ Object.defineProperty(exports, "__esModule", { value: true });
76
+ var isomorphic_unfetch_1 = __importDefault(require("isomorphic-unfetch"));
77
+ var lodash_1 = require("lodash");
78
+ var console_1 = require("../../utils/console");
79
+ var shipment_1 = require("../../utils/shipment");
80
+ var Cart_1 = __importDefault(require("../Cart"));
81
+ var convert = __importStar(require("xml-js"));
82
+ var moment_1 = __importDefault(require("moment"));
83
+ var currency_1 = require("../../utils/currency");
84
+ var Shipment = (function () {
85
+ function Shipment(cart, shipmentService) {
86
+ var _this = this;
87
+ this._getPriceByCurrency = function (amount, fromCurrency, space) {
88
+ return !!!space
89
+ ? undefined
90
+ : (0, lodash_1.toNumber)((0, currency_1.calculateAmountByCurrency)(space, space.preferences.default.currency(), typeof amount === 'string' ? (0, lodash_1.toNumber)(amount) : amount, fromCurrency));
91
+ };
92
+ this.getShippingQuotes = function (space, fromAddress, fromServer, doNotPackage) {
93
+ if (fromServer === void 0) { fromServer = false; }
94
+ return __awaiter(_this, void 0, void 0, function () {
95
+ var quotes, _loop_1, this_1, _i, _a, ss, state_1, lowest;
96
+ var _this = this;
97
+ return __generator(this, function (_b) {
98
+ switch (_b.label) {
99
+ case 0:
100
+ if (!!!this._cart)
101
+ throw new Error("Cart can't be null");
102
+ quotes = [];
103
+ _loop_1 = function (ss) {
104
+ var requestHeader, url, method, headers, body_2, _c, _loop_2, _d, body_1, q, quoteReq, errors, quoteJson, error_1, quoteReq, errors, quoteXML, _e, quoteJson, error_2, error_3;
105
+ return __generator(this, function (_f) {
106
+ switch (_f.label) {
107
+ case 0:
108
+ (0, console_1.workingMessage)("Calling ".concat(ss.external_service_name, " service... for good"));
109
+ requestHeader = ss.external_service_name === 'Livraison sur mesure'
110
+ ? { url: '', type: '', headers: {} }
111
+ : (0, shipment_1.quotesUrl)(ss.external_service_infos, ss.external_service_name);
112
+ if (!!!requestHeader)
113
+ return [2, "continue"];
114
+ url = requestHeader.url, method = requestHeader.type, headers = requestHeader.headers;
115
+ _f.label = 1;
116
+ case 1:
117
+ _f.trys.push([1, 27, , 28]);
118
+ if (!(ss.external_service_name === 'Livraison sur mesure')) return [3, 2];
119
+ _c = { custom: true };
120
+ return [3, 4];
121
+ case 2: return [4, (0, shipment_1.getBodyForQuoteRequest)(ss, this_1._cart, fromAddress, doNotPackage)];
122
+ case 3:
123
+ _c = _f.sent();
124
+ _f.label = 4;
125
+ case 4:
126
+ body_2 = _c;
127
+ if (!!!body_2)
128
+ return [2, { value: [] }];
129
+ if (!(Array.isArray(body_2) && ['shipstation', 'shiptime'].includes(ss.external_service_name))) return [3, 9];
130
+ _loop_2 = function (q) {
131
+ var quoteReq, quoteJson, error_4;
132
+ return __generator(this, function (_g) {
133
+ switch (_g.label) {
134
+ case 0:
135
+ _g.trys.push([0, 3, , 4]);
136
+ return [4, (0, isomorphic_unfetch_1.default)(!!fromServer ? url : '/api/services/cors', {
137
+ headers: !!fromServer
138
+ ? __assign(__assign({}, headers), { 'content-type': 'application/json' })
139
+ : { 'content-type': 'application/json' },
140
+ method: !!fromServer ? method : 'POST',
141
+ body: !!fromServer
142
+ ? JSON.stringify(q)
143
+ : JSON.stringify({
144
+ props: { body: q, headers: headers, method: method },
145
+ url: url
146
+ })
147
+ })];
148
+ case 1:
149
+ quoteReq = _g.sent();
150
+ if (quoteReq.status.toString().charAt(0) !== '2')
151
+ return [2, "continue"];
152
+ return [4, quoteReq.json()];
153
+ case 2:
154
+ quoteJson = _g.sent();
155
+ quotes.push(quoteJson.map(function (quote) {
156
+ if (ss.external_service_name !== 'shipstation') {
157
+ return __assign(__assign({}, quote), { quote_id: quote.quoteId, carrier: quote.carrierName, base_fee: quote.totalCharge.amount / 100, service: quote.serviceName, service_code: quote.serviceId, details: q, provider_name: 'shiptime' });
158
+ }
159
+ return __assign(__assign({}, quote), { carrier: q.carrierCode, base_fee: quote.shipmentCost, service: quote.serviceName, service_code: quote.serviceCode, details: q, provider_name: 'shipstation' });
160
+ }));
161
+ return [3, 4];
162
+ case 3:
163
+ error_4 = _g.sent();
164
+ (0, console_1.errorMessage)(error_4);
165
+ return [2, "continue"];
166
+ case 4: return [2];
167
+ }
168
+ });
169
+ };
170
+ _d = 0, body_1 = body_2;
171
+ _f.label = 5;
172
+ case 5:
173
+ if (!(_d < body_1.length)) return [3, 8];
174
+ q = body_1[_d];
175
+ return [5, _loop_2(q)];
176
+ case 6:
177
+ _f.sent();
178
+ _f.label = 7;
179
+ case 7:
180
+ _d++;
181
+ return [3, 5];
182
+ case 8: return [2, "continue"];
183
+ case 9:
184
+ if (!(ss.external_service_name === 'shiptime')) return [3, 16];
185
+ _f.label = 10;
186
+ case 10:
187
+ _f.trys.push([10, 15, , 16]);
188
+ return [4, (0, isomorphic_unfetch_1.default)(!!fromServer ? url : '/api/services/cors', {
189
+ headers: !!fromServer
190
+ ? __assign(__assign({}, headers), { 'content-type': 'application/json' })
191
+ : { 'content-type': 'application/json' },
192
+ method: !!fromServer ? method : 'POST',
193
+ body: !!fromServer ? JSON.stringify(body_2) : JSON.stringify({ props: { body: body_2, headers: headers, method: method }, url: url })
194
+ })];
195
+ case 11:
196
+ quoteReq = _f.sent();
197
+ if (!(quoteReq.status.toString().charAt(0) === '4')) return [3, 13];
198
+ return [4, quoteReq.json()];
199
+ case 12:
200
+ errors = (_f.sent());
201
+ console.log("errors while fetching quote with status ".concat(quoteReq.status), errors);
202
+ return [2, "continue"];
203
+ case 13: return [4, quoteReq.json()];
204
+ case 14:
205
+ quoteJson = _f.sent();
206
+ quoteJson.availableRates.map(function (quote) {
207
+ var merchant_shipping_fee = Cart_1.default.calculateMerchantShippingFee(quote.totalBeforeTaxes.amount / 100, space.data());
208
+ var newQuote = {
209
+ quote_id: quote.quoteId,
210
+ carrier: quote.carrierName,
211
+ service: quote.serviceName,
212
+ service_code: quote.serviceId,
213
+ base_fee: _this._getPriceByCurrency(quote.baseCharge.amount / 100, quote.baseCharge.currency, space),
214
+ totalBeforeTaxes: _this._getPriceByCurrency(quote.totalBeforeTaxes.amount / 100, quote.totalBeforeTaxes.currency, space),
215
+ method: 'shipping',
216
+ details: body_2,
217
+ transit_days: quote.transitDays,
218
+ is_lowest: false,
219
+ is_fastest: false,
220
+ provider: 'shiptime',
221
+ surcharges: !!quote.surcharges
222
+ ? quote.surcharges.map(function (surcharge) { return ({
223
+ name: surcharge.name,
224
+ amount: _this._getPriceByCurrency(surcharge.price.amount / 100, surcharge.price.currency, space)
225
+ }); })
226
+ : [],
227
+ taxes: !!quote.taxes
228
+ ? quote.taxes.map(function (tax) { return ({
229
+ name: tax.name,
230
+ amount: _this._getPriceByCurrency(tax.price.amount / 100, tax.price.currency, space)
231
+ }); })
232
+ : [],
233
+ merchant_shipping_fee: merchant_shipping_fee,
234
+ total: _this._getPriceByCurrency(quote.totalCharge.amount / 100, quote.totalCharge.currency, space)
235
+ };
236
+ quotes.push(newQuote);
237
+ return newQuote;
238
+ });
239
+ return [3, 16];
240
+ case 15:
241
+ error_1 = _f.sent();
242
+ console.log('error: ', error_1);
243
+ console.log(JSON.stringify(error_1));
244
+ (0, console_1.errorMessage)("Error while fetching Shiptime quotes ".concat(error_1, " - ").concat(JSON.stringify(error_1)));
245
+ return [3, 16];
246
+ case 16:
247
+ if (!(ss.external_service_name === 'Poste Canada')) return [3, 26];
248
+ _f.label = 17;
249
+ case 17:
250
+ _f.trys.push([17, 25, , 26]);
251
+ return [4, (0, isomorphic_unfetch_1.default)(!!fromServer ? url : '/api/services/cors', {
252
+ headers: !!fromServer ? __assign({}, headers) : { 'content-type': 'application/json' },
253
+ method: !!fromServer ? method : 'POST',
254
+ body: !!fromServer ? body_2 : JSON.stringify({ props: { body: body_2, headers: headers, method: method }, url: url })
255
+ })];
256
+ case 18:
257
+ quoteReq = _f.sent();
258
+ if (!(quoteReq.status.toString().charAt(0) === '4')) return [3, 20];
259
+ return [4, quoteReq.text()];
260
+ case 19:
261
+ errors = (_f.sent());
262
+ if (!!errors) {
263
+ return [2, { value: errors }];
264
+ }
265
+ if (!!!errors)
266
+ return [2, "continue"];
267
+ _f.label = 20;
268
+ case 20:
269
+ if (!!!fromServer) return [3, 22];
270
+ return [4, quoteReq.text()];
271
+ case 21:
272
+ _e = _f.sent();
273
+ return [3, 24];
274
+ case 22: return [4, quoteReq.json()];
275
+ case 23:
276
+ _e = _f.sent();
277
+ _f.label = 24;
278
+ case 24:
279
+ quoteXML = _e;
280
+ quoteJson = JSON.parse(convert.xml2json(quoteXML, { compact: true }));
281
+ quoteJson['price-quotes']['price-quote'].forEach(function (qJson) {
282
+ var surchage = (0, lodash_1.sumBy)(qJson['price-details'].adjustments.adjustment, function (a) {
283
+ return (0, lodash_1.toNumber)(a['adjustment-cost']._text);
284
+ });
285
+ quotes.push(__assign(__assign({}, qJson), { surcharges: (0, lodash_1.map)(qJson['price-details'].adjustments.adjustment.map(function (a) { return ({
286
+ price: {
287
+ currency: 'CAD',
288
+ amount: (0, lodash_1.toNumber)(a['adjustment-cost']._text) * 100
289
+ },
290
+ code: a['adjustment-code']._text,
291
+ name: a['adjustment-name']._text
292
+ }); })), taxes: (0, lodash_1.map)(qJson['price-details'].taxes, function (t, ti) { return ({
293
+ price: { currency: 'CAD', amount: (0, lodash_1.toNumber)(t._text) * 100 },
294
+ code: (0, lodash_1.toString)(ti).toUpperCase(),
295
+ name: (0, lodash_1.toString)(ti).toUpperCase()
296
+ }); }), totalCharge: {
297
+ amount: (0, lodash_1.toNumber)(qJson['price-details']['due']._text) * 100,
298
+ currency: 'CAD'
299
+ }, totalBeforeTaxes: {
300
+ amount: ((0, lodash_1.toNumber)(qJson['price-details']['base']._text) + surchage) * 100,
301
+ currency: 'CAD'
302
+ }, carrier: 'Poste Canada', base_fee: (0, lodash_1.toNumber)(qJson['price-details']['base']._text) + surchage, baseCharge: {
303
+ amount: (0, lodash_1.toNumber)(qJson['price-details']['base']._text) * 100,
304
+ currency: 'CAD'
305
+ }, service: qJson['service-name']._text, serviceName: qJson['service-name']._text, service_code: qJson['service-code']._text, serviceCode: qJson['service-code']._text, provider_name: 'Poste Canada', provider: 'Poste Canada', transit_days: (0, lodash_1.toNumber)(qJson['service-standard']['expected-transit-time']._text), estimatedShippingDate: qJson['service-standard']['expected-delivery-date']
306
+ ? (0, moment_1.default)(qJson['service-standard']['expected-delivery-date']._text).toString()
307
+ : undefined }));
308
+ });
309
+ return [3, 26];
310
+ case 25:
311
+ error_2 = _f.sent();
312
+ console.log('error: ', error_2);
313
+ console.log(JSON.stringify(error_2));
314
+ (0, console_1.errorMessage)("Error while fetching Shiptime quotes ".concat(error_2, " - ").concat(JSON.stringify(error_2)));
315
+ return [3, 26];
316
+ case 26:
317
+ (0, console_1.workingMessage)("Looking for ".concat(ss.external_service_name));
318
+ if (ss.external_service_name === 'Livraison sur mesure') {
319
+ quotes.push({
320
+ baseCharge: {
321
+ amount: 10000,
322
+ currency: 'CAD'
323
+ },
324
+ surcharges: [],
325
+ taxes: [],
326
+ totalCharge: {
327
+ amount: 10000,
328
+ currency: 'CAD'
329
+ },
330
+ totalBeforeTaxes: {
331
+ amount: 10000,
332
+ currency: 'CAD'
333
+ },
334
+ carrier: 'Groupe Richer',
335
+ base_fee: 100,
336
+ service: 'groupe-richer',
337
+ serviceName: 'Groupe Richer',
338
+ service_code: 'gr',
339
+ serviceCode: 'gr',
340
+ provider_name: 'Groupe Richer',
341
+ provider: 'Groupe Richer'
342
+ });
343
+ }
344
+ return [3, 28];
345
+ case 27:
346
+ error_3 = _f.sent();
347
+ console.log('error: ', JSON.stringify(error_3));
348
+ (0, console_1.errorMessage)(error_3);
349
+ return [2, "continue"];
350
+ case 28: return [2];
351
+ }
352
+ });
353
+ };
354
+ this_1 = this;
355
+ _i = 0, _a = this._shipmentService;
356
+ _b.label = 1;
357
+ case 1:
358
+ if (!(_i < _a.length)) return [3, 4];
359
+ ss = _a[_i];
360
+ return [5, _loop_1(ss)];
361
+ case 2:
362
+ state_1 = _b.sent();
363
+ if (typeof state_1 === "object")
364
+ return [2, state_1.value];
365
+ _b.label = 3;
366
+ case 3:
367
+ _i++;
368
+ return [3, 1];
369
+ case 4:
370
+ this._shippingQuote = quotes;
371
+ lowest = (0, lodash_1.minBy)(quotes, function (q) { return q.base_fee; });
372
+ return [2, (0, lodash_1.map)(quotes, function (q) {
373
+ if (!!!lowest)
374
+ return q;
375
+ if (q.base_fee !== lowest.base_fee)
376
+ return q;
377
+ return __assign(__assign({}, q), { is_lowest: true });
378
+ })];
379
+ }
380
+ });
381
+ });
382
+ };
383
+ this.getServiceOfQuote = function (quote) {
384
+ var service = _this._shipmentService.find(function (a) {
385
+ return a.external_service_name.toLowerCase() === (0, lodash_1.toString)(quote.provider_name || quote.provider || '').toLowerCase();
386
+ });
387
+ if (!!!service)
388
+ throw new Error("Can't find provider ".concat(quote.provider, " (").concat(!!quote.provider_name, ")"));
389
+ return service;
390
+ };
391
+ this.approveQuote = function (quote, fromServer, canadaPostProps) { return __awaiter(_this, void 0, void 0, function () {
392
+ var service, requestHeader, url, method, headers, body, quoteReq, details, type, quoteXML, _a, error_5;
393
+ return __generator(this, function (_b) {
394
+ switch (_b.label) {
395
+ case 0:
396
+ if (!!!this._cart)
397
+ throw new Error("Cart can't be null");
398
+ service = this.getServiceOfQuote(quote);
399
+ requestHeader = (0, shipment_1.createShipmentUrl)(service.external_service_infos, service.external_service_name);
400
+ if (!!!requestHeader)
401
+ throw new Error("Can't access service provider. Please validate your external services configuration");
402
+ url = requestHeader.url, method = requestHeader.type, headers = requestHeader.headers;
403
+ if (!!!quote) {
404
+ quote = this._shippingQuote;
405
+ }
406
+ if (!!!quote) {
407
+ throw new Error("Quote expected");
408
+ }
409
+ body = (0, shipment_1.getBodyForQuoteApprove)(service, quote, canadaPostProps);
410
+ return [4, (0, isomorphic_unfetch_1.default)(!!fromServer ? url : '/api/services/cors', {
411
+ headers: !!fromServer
412
+ ? __assign(__assign({}, headers), { 'content-type': 'application/json' })
413
+ : { 'content-type': 'application/json' },
414
+ method: !!fromServer ? method : 'POST',
415
+ body: !!fromServer ? JSON.stringify(body) : JSON.stringify({ props: { body: body, headers: headers, method: method }, url: url })
416
+ })];
417
+ case 1:
418
+ quoteReq = _b.sent();
419
+ if (quoteReq.status.toString() !== '200')
420
+ throw new Error("Error while fetching quotes: ".concat(quoteReq.statusText));
421
+ if (!(!!headers['Content-Type'] && headers['Content-Type'].includes('xml'))) return [3, 9];
422
+ _b.label = 2;
423
+ case 2:
424
+ _b.trys.push([2, 7, , 8]);
425
+ type = quoteReq.headers.get('Content-Type');
426
+ if (!(!!!type || !type.includes('json'))) return [3, 4];
427
+ return [4, quoteReq.text()];
428
+ case 3:
429
+ _a = _b.sent();
430
+ return [3, 6];
431
+ case 4: return [4, quoteReq.json()];
432
+ case 5:
433
+ _a = _b.sent();
434
+ _b.label = 6;
435
+ case 6:
436
+ quoteXML = _a;
437
+ details = JSON.parse(convert.xml2json(quoteXML));
438
+ details = __assign(__assign({}, details), { labelUrl: details['elements'][0]['elements']
439
+ .find(function (a) { return a.name === 'links'; })
440
+ .elements.find(function (e) { return !!e.attributes && e.attributes.rel === 'label'; }).attributes.href, deleteUrl: details['elements'][0]['elements']
441
+ .find(function (a) { return a.name === 'links'; })
442
+ .elements.find(function (e) { return !!e.attributes && e.attributes.rel === 'self'; }).attributes.href });
443
+ return [3, 8];
444
+ case 7:
445
+ error_5 = _b.sent();
446
+ (0, console_1.errorMessage)(error_5.toString());
447
+ throw new Error("Can't process shipping label. Please contact us with the quote ".concat(JSON.stringify(quote)));
448
+ case 8: return [3, 11];
449
+ case 9: return [4, quoteReq.json()];
450
+ case 10:
451
+ details = _b.sent();
452
+ _b.label = 11;
453
+ case 11: return [2, { confirmed: true, details: details }];
454
+ }
455
+ });
456
+ }); };
457
+ this.cancelShipping = function (orderId, fromServer, deleteUrl) { return __awaiter(_this, void 0, void 0, function () {
458
+ var details, error, confirmed, _i, _a, ss, requestHeader, url, method, headers, quoteReq, error_6;
459
+ return __generator(this, function (_b) {
460
+ switch (_b.label) {
461
+ case 0:
462
+ error = undefined;
463
+ confirmed = false;
464
+ _i = 0, _a = this._shipmentService;
465
+ _b.label = 1;
466
+ case 1:
467
+ if (!(_i < _a.length)) return [3, 6];
468
+ ss = _a[_i];
469
+ requestHeader = (0, shipment_1.deleteShipmentUrl)(__assign(__assign({}, ss.external_service_infos), { orderId: orderId, deleteUrl: deleteUrl }), ss.external_service_name);
470
+ if (!!!requestHeader)
471
+ return [3, 5];
472
+ url = requestHeader.url, method = requestHeader.type, headers = requestHeader.headers;
473
+ _b.label = 2;
474
+ case 2:
475
+ _b.trys.push([2, 4, , 5]);
476
+ return [4, (0, isomorphic_unfetch_1.default)(!!fromServer ? url : '/api/services/cors', {
477
+ headers: !!fromServer
478
+ ? __assign(__assign({}, headers), { 'content-type': 'application/json' })
479
+ : { 'content-type': 'application/json' },
480
+ method: !!fromServer ? method : 'POST',
481
+ body: JSON.stringify({ props: { headers: headers, method: method }, url: url })
482
+ })];
483
+ case 3:
484
+ quoteReq = _b.sent();
485
+ if (quoteReq.status.toString() !== '200')
486
+ return [3, 5];
487
+ return [2, { confirmed: true, error: error }];
488
+ case 4:
489
+ error_6 = _b.sent();
490
+ error_6 = error_6;
491
+ (0, console_1.errorMessage)("Error while calling order service ".concat(error_6, " - ").concat(JSON.stringify(error_6)));
492
+ return [3, 5];
493
+ case 5:
494
+ _i++;
495
+ return [3, 1];
496
+ case 6: return [2, { confirmed: false, error: "Can't void shipping" }];
497
+ }
498
+ });
499
+ }); };
500
+ this.getLabel = function (labelUrl, fromServer) { return __awaiter(_this, void 0, void 0, function () {
501
+ var _i, _a, ss, requestHeader, url, method, headers, quoteReq, type, details, _b, error_7;
502
+ return __generator(this, function (_c) {
503
+ switch (_c.label) {
504
+ case 0:
505
+ _i = 0, _a = this._shipmentService;
506
+ _c.label = 1;
507
+ case 1:
508
+ if (!(_i < _a.length)) return [3, 10];
509
+ ss = _a[_i];
510
+ _c.label = 2;
511
+ case 2:
512
+ _c.trys.push([2, 8, , 9]);
513
+ requestHeader = (0, shipment_1.createShipmentLabelUrl)(__assign(__assign({}, ss.external_service_infos), { labelUrl: labelUrl }), ss.external_service_name);
514
+ if (!!!requestHeader)
515
+ return [3, 9];
516
+ url = requestHeader.url, method = requestHeader.type, headers = requestHeader.headers;
517
+ return [4, (0, isomorphic_unfetch_1.default)(!!fromServer ? url : '/api/services/cors', {
518
+ headers: !!fromServer
519
+ ? __assign(__assign({}, headers), { 'content-type': 'application/json' })
520
+ : { 'content-type': 'application/json' },
521
+ method: !!fromServer ? method : 'POST',
522
+ body: JSON.stringify({ props: { headers: headers, method: method }, url: url })
523
+ })];
524
+ case 3:
525
+ quoteReq = _c.sent();
526
+ if (quoteReq.status.toString() !== '200')
527
+ return [3, 9];
528
+ type = quoteReq.headers.get('Content-Type');
529
+ if (!(!!!type || !type.includes('json'))) return [3, 5];
530
+ return [4, quoteReq.text()];
531
+ case 4:
532
+ _b = _c.sent();
533
+ return [3, 7];
534
+ case 5: return [4, quoteReq.json()];
535
+ case 6:
536
+ _b = _c.sent();
537
+ _c.label = 7;
538
+ case 7:
539
+ details = _b;
540
+ return [2, { confirmed: true, label: details }];
541
+ case 8:
542
+ error_7 = _c.sent();
543
+ console.log(error_7);
544
+ console.log('erreur: ', JSON.stringify(error_7));
545
+ return [3, 9];
546
+ case 9:
547
+ _i++;
548
+ return [3, 1];
549
+ case 10: return [2];
550
+ }
551
+ });
552
+ }); };
553
+ this._shipmentService = shipmentService;
554
+ this._shippingQuote = undefined;
555
+ this._cart = cart;
556
+ }
557
+ return Shipment;
558
+ }());
559
+ exports.default = Shipment;
560
560
  //# sourceMappingURL=index.js.map