@medusajs/medusa 1.3.0 → 1.3.1-alpha.63

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 (498) hide show
  1. package/CHANGELOG.md +50 -0
  2. package/dist/api/middlewares/authenticate-customer.d.ts +2 -1
  3. package/dist/api/middlewares/authenticate-customer.js +1 -2
  4. package/dist/api/middlewares/authenticate-customer.js.map +1 -1
  5. package/dist/api/middlewares/authenticate.d.ts +2 -1
  6. package/dist/api/middlewares/authenticate.js.map +1 -1
  7. package/dist/api/middlewares/await-middleware.d.ts +3 -1
  8. package/dist/api/middlewares/await-middleware.js +2 -31
  9. package/dist/api/middlewares/await-middleware.js.map +1 -1
  10. package/dist/api/middlewares/batch-job/can-access-batch-job.d.ts +1 -0
  11. package/dist/api/middlewares/batch-job/can-access-batch-job.js +70 -0
  12. package/dist/api/middlewares/batch-job/can-access-batch-job.js.map +1 -0
  13. package/dist/api/middlewares/batch-job/get-requested-batch-job.d.ts +1 -0
  14. package/dist/api/middlewares/batch-job/get-requested-batch-job.js +67 -0
  15. package/dist/api/middlewares/batch-job/get-requested-batch-job.js.map +1 -0
  16. package/dist/api/middlewares/error-handler.d.ts +3 -1
  17. package/dist/api/middlewares/error-handler.js +3 -3
  18. package/dist/api/middlewares/error-handler.js.map +1 -1
  19. package/dist/api/middlewares/index.d.ts +12 -10
  20. package/dist/api/middlewares/index.js +9 -0
  21. package/dist/api/middlewares/index.js.map +1 -1
  22. package/dist/api/middlewares/normalized-query.d.ts +6 -1
  23. package/dist/api/middlewares/normalized-query.js +5 -2
  24. package/dist/api/middlewares/normalized-query.js.map +1 -1
  25. package/dist/api/middlewares/transform-body.d.ts +4 -0
  26. package/dist/api/middlewares/transform-body.js +66 -0
  27. package/dist/api/middlewares/transform-body.js.map +1 -0
  28. package/dist/api/middlewares/transform-query.d.ts +6 -0
  29. package/dist/api/middlewares/transform-query.js +86 -0
  30. package/dist/api/middlewares/transform-query.js.map +1 -0
  31. package/dist/api/routes/admin/batch/index.d.ts +13 -0
  32. package/dist/api/routes/admin/batch/index.js +50 -0
  33. package/dist/api/routes/admin/batch/index.js.map +1 -0
  34. package/dist/api/routes/admin/batch/list-batch-jobs.d.ts +48 -0
  35. package/dist/api/routes/admin/batch/list-batch-jobs.js +220 -0
  36. package/dist/api/routes/admin/batch/list-batch-jobs.js.map +1 -0
  37. package/dist/api/routes/admin/discounts/add-valid-product.d.ts +23 -0
  38. package/dist/api/routes/admin/discounts/add-valid-product.js +82 -0
  39. package/dist/api/routes/admin/discounts/add-valid-product.js.map +1 -0
  40. package/dist/api/routes/admin/discounts/create-condition.d.ts +58 -0
  41. package/dist/api/routes/admin/discounts/create-condition.js +186 -0
  42. package/dist/api/routes/admin/discounts/create-condition.js.map +1 -0
  43. package/dist/api/routes/admin/discounts/create-discount.d.ts +3 -2
  44. package/dist/api/routes/admin/discounts/create-discount.js +7 -5
  45. package/dist/api/routes/admin/discounts/create-discount.js.map +1 -1
  46. package/dist/api/routes/admin/discounts/delete-condition.d.ts +36 -0
  47. package/dist/api/routes/admin/discounts/delete-condition.js +151 -0
  48. package/dist/api/routes/admin/discounts/delete-condition.js.map +1 -0
  49. package/dist/api/routes/admin/discounts/get-condition.d.ts +31 -0
  50. package/dist/api/routes/admin/discounts/get-condition.js +125 -0
  51. package/dist/api/routes/admin/discounts/get-condition.js.map +1 -0
  52. package/dist/api/routes/admin/discounts/get-discount-by-code.d.ts +4 -0
  53. package/dist/api/routes/admin/discounts/get-discount-by-code.js +40 -6
  54. package/dist/api/routes/admin/discounts/get-discount-by-code.js.map +1 -1
  55. package/dist/api/routes/admin/discounts/index.d.ts +10 -0
  56. package/dist/api/routes/admin/discounts/index.js +12 -1
  57. package/dist/api/routes/admin/discounts/index.js.map +1 -1
  58. package/dist/api/routes/admin/discounts/remove-valid-product.d.ts +23 -0
  59. package/dist/api/routes/admin/discounts/remove-valid-product.js +82 -0
  60. package/dist/api/routes/admin/discounts/remove-valid-product.js.map +1 -0
  61. package/dist/api/routes/admin/discounts/update-condition.d.ts +55 -0
  62. package/dist/api/routes/admin/discounts/update-condition.js +184 -0
  63. package/dist/api/routes/admin/discounts/update-condition.js.map +1 -0
  64. package/dist/api/routes/admin/discounts/update-discount.d.ts +6 -10
  65. package/dist/api/routes/admin/discounts/update-discount.js +9 -18
  66. package/dist/api/routes/admin/discounts/update-discount.js.map +1 -1
  67. package/dist/api/routes/admin/draft-orders/index.d.ts +1 -1
  68. package/dist/api/routes/admin/draft-orders/index.js.map +1 -1
  69. package/dist/api/routes/admin/draft-orders/list-draft-orders.js +7 -6
  70. package/dist/api/routes/admin/draft-orders/list-draft-orders.js.map +1 -1
  71. package/dist/api/routes/admin/index.js +2 -0
  72. package/dist/api/routes/admin/index.js.map +1 -1
  73. package/dist/api/routes/admin/orders/create-claim.d.ts +4 -14
  74. package/dist/api/routes/admin/orders/create-claim.js +9 -14
  75. package/dist/api/routes/admin/orders/create-claim.js.map +1 -1
  76. package/dist/api/routes/admin/orders/fulfill-claim.d.ts +1 -1
  77. package/dist/api/routes/admin/orders/fulfill-claim.js.map +1 -1
  78. package/dist/api/routes/admin/orders/update-claim.d.ts +1 -1
  79. package/dist/api/routes/admin/orders/update-claim.js.map +1 -1
  80. package/dist/api/routes/admin/price-lists/create-price-list.d.ts +2 -1
  81. package/dist/api/routes/admin/price-lists/create-price-list.js +4 -7
  82. package/dist/api/routes/admin/price-lists/create-price-list.js.map +1 -1
  83. package/dist/api/routes/admin/price-lists/delete-product-prices.d.ts +32 -0
  84. package/dist/api/routes/admin/price-lists/delete-product-prices.js +105 -0
  85. package/dist/api/routes/admin/price-lists/delete-product-prices.js.map +1 -0
  86. package/dist/api/routes/admin/price-lists/delete-variant-prices.d.ts +32 -0
  87. package/dist/api/routes/admin/price-lists/delete-variant-prices.js +105 -0
  88. package/dist/api/routes/admin/price-lists/delete-variant-prices.js.map +1 -0
  89. package/dist/api/routes/admin/price-lists/index.d.ts +2 -0
  90. package/dist/api/routes/admin/price-lists/index.js +28 -7
  91. package/dist/api/routes/admin/price-lists/index.js.map +1 -1
  92. package/dist/api/routes/admin/price-lists/list-price-list-products.d.ts +2 -1
  93. package/dist/api/routes/admin/price-lists/list-price-list-products.js +38 -29
  94. package/dist/api/routes/admin/price-lists/list-price-list-products.js.map +1 -1
  95. package/dist/api/routes/admin/price-lists/list-price-lists.d.ts +2 -1
  96. package/dist/api/routes/admin/price-lists/list-price-lists.js +8 -40
  97. package/dist/api/routes/admin/price-lists/list-price-lists.js.map +1 -1
  98. package/dist/api/routes/admin/price-lists/update-price-list.d.ts +2 -2
  99. package/dist/api/routes/admin/price-lists/update-price-list.js +2 -2
  100. package/dist/api/routes/admin/price-lists/update-price-list.js.map +1 -1
  101. package/dist/api/routes/admin/product-tags/list-product-tags.d.ts +2 -1
  102. package/dist/api/routes/admin/product-tags/list-product-tags.js +6 -3
  103. package/dist/api/routes/admin/product-tags/list-product-tags.js.map +1 -1
  104. package/dist/api/routes/admin/product-types/list-product-types.d.ts +2 -1
  105. package/dist/api/routes/admin/product-types/list-product-types.js +6 -3
  106. package/dist/api/routes/admin/product-types/list-product-types.js.map +1 -1
  107. package/dist/api/routes/admin/products/index.d.ts +2 -1
  108. package/dist/api/routes/admin/products/index.js +7 -2
  109. package/dist/api/routes/admin/products/index.js.map +1 -1
  110. package/dist/api/routes/admin/products/list-variants.d.ts +35 -0
  111. package/dist/api/routes/admin/products/list-variants.js +173 -0
  112. package/dist/api/routes/admin/products/list-variants.js.map +1 -0
  113. package/dist/api/routes/admin/shipping-options/list-shipping-options.d.ts +2 -2
  114. package/dist/api/routes/admin/shipping-options/list-shipping-options.js +2 -2
  115. package/dist/api/routes/admin/shipping-options/list-shipping-options.js.map +1 -1
  116. package/dist/api/routes/admin/store/get-store.js +4 -2
  117. package/dist/api/routes/admin/store/get-store.js.map +1 -1
  118. package/dist/api/routes/admin/store/update-store.d.ts +1 -0
  119. package/dist/api/routes/admin/store/update-store.js +5 -0
  120. package/dist/api/routes/admin/store/update-store.js.map +1 -1
  121. package/dist/api/routes/admin/users/update-user.d.ts +1 -1
  122. package/dist/api/routes/admin/users/update-user.js.map +1 -1
  123. package/dist/api/routes/store/carts/update-cart.js +1 -1
  124. package/dist/api/routes/store/carts/update-cart.js.map +1 -1
  125. package/dist/api/routes/store/carts/update-payment-method.d.ts +38 -0
  126. package/dist/api/routes/store/carts/update-payment-method.js +122 -0
  127. package/dist/api/routes/store/carts/update-payment-method.js.map +1 -0
  128. package/dist/api/routes/store/customers/get-payment-methods.js +6 -7
  129. package/dist/api/routes/store/customers/get-payment-methods.js.map +1 -1
  130. package/dist/commands/develop.js +1 -1
  131. package/dist/commands/develop.js.map +1 -1
  132. package/dist/commands/migrate.js +17 -6
  133. package/dist/commands/migrate.js.map +1 -1
  134. package/dist/commands/start.js +6 -0
  135. package/dist/commands/start.js.map +1 -1
  136. package/dist/config/index.d.ts +14 -0
  137. package/dist/config/index.js +40 -0
  138. package/dist/config/index.js.map +1 -0
  139. package/dist/controllers/products/admin-list-products.js +2 -2
  140. package/dist/controllers/products/admin-list-products.js.map +1 -1
  141. package/dist/helpers/test-request.js +11 -10
  142. package/dist/helpers/test-request.js.map +1 -1
  143. package/dist/index.d.ts +1 -0
  144. package/dist/index.js +1 -0
  145. package/dist/index.js.map +1 -1
  146. package/dist/interfaces/base-service.js +2 -3
  147. package/dist/interfaces/base-service.js.map +1 -1
  148. package/dist/interfaces/batch-job-strategy.d.ts +28 -0
  149. package/dist/interfaces/batch-job-strategy.js +75 -0
  150. package/dist/interfaces/batch-job-strategy.js.map +1 -0
  151. package/dist/interfaces/file-service.d.ts +62 -0
  152. package/dist/interfaces/file-service.js +32 -0
  153. package/dist/interfaces/file-service.js.map +1 -0
  154. package/dist/interfaces/index.d.ts +4 -1
  155. package/dist/interfaces/index.js +4 -1
  156. package/dist/interfaces/index.js.map +1 -1
  157. package/dist/interfaces/models/base-entity.d.ts +8 -0
  158. package/dist/interfaces/models/base-entity.js +36 -0
  159. package/dist/interfaces/models/base-entity.js.map +1 -0
  160. package/dist/interfaces/models/soft-deletable-entity.d.ts +4 -0
  161. package/dist/interfaces/models/soft-deletable-entity.js +43 -0
  162. package/dist/interfaces/models/soft-deletable-entity.js.map +1 -0
  163. package/dist/interfaces/transaction-base-service.d.ts +23 -0
  164. package/dist/interfaces/transaction-base-service.js +200 -0
  165. package/dist/interfaces/transaction-base-service.js.map +1 -0
  166. package/dist/loaders/plugins.d.ts +23 -3
  167. package/dist/loaders/plugins.js +28 -18
  168. package/dist/loaders/plugins.js.map +1 -1
  169. package/dist/models/address.d.ts +3 -6
  170. package/dist/models/address.js +23 -24
  171. package/dist/models/address.js.map +1 -1
  172. package/dist/models/batch-job.d.ts +2 -5
  173. package/dist/models/batch-job.js +22 -23
  174. package/dist/models/batch-job.js.map +1 -1
  175. package/dist/models/cart.d.ts +5 -8
  176. package/dist/models/cart.js +35 -36
  177. package/dist/models/cart.js.map +1 -1
  178. package/dist/models/claim-image.d.ts +3 -6
  179. package/dist/models/claim-image.js +22 -23
  180. package/dist/models/claim-image.js.map +1 -1
  181. package/dist/models/claim-item.d.ts +3 -6
  182. package/dist/models/claim-item.js +25 -24
  183. package/dist/models/claim-item.js.map +1 -1
  184. package/dist/models/claim-order.d.ts +4 -4
  185. package/dist/models/claim-order.js +28 -13
  186. package/dist/models/claim-order.js.map +1 -1
  187. package/dist/models/claim-tag.d.ts +3 -6
  188. package/dist/models/claim-tag.js +22 -23
  189. package/dist/models/claim-tag.js.map +1 -1
  190. package/dist/models/custom-shipping-option.d.ts +3 -6
  191. package/dist/models/custom-shipping-option.js +23 -24
  192. package/dist/models/custom-shipping-option.js.map +1 -1
  193. package/dist/models/customer-group.d.ts +3 -6
  194. package/dist/models/customer-group.js +23 -25
  195. package/dist/models/customer-group.js.map +1 -1
  196. package/dist/models/customer.d.ts +3 -6
  197. package/dist/models/customer.js +23 -25
  198. package/dist/models/customer.js.map +1 -1
  199. package/dist/models/discount-condition-customer-group.d.ts +1 -1
  200. package/dist/models/discount-condition-customer-group.js.map +1 -1
  201. package/dist/models/discount-condition-product-collection.d.ts +1 -1
  202. package/dist/models/discount-condition-product-collection.js.map +1 -1
  203. package/dist/models/discount-condition-product-tag.d.ts +1 -1
  204. package/dist/models/discount-condition-product-tag.js.map +1 -1
  205. package/dist/models/discount-condition-product-type.d.ts +1 -1
  206. package/dist/models/discount-condition-product-type.js.map +1 -1
  207. package/dist/models/discount-condition-product.d.ts +1 -1
  208. package/dist/models/discount-condition-product.js.map +1 -1
  209. package/dist/models/discount-condition.d.ts +3 -6
  210. package/dist/models/discount-condition.js +22 -21
  211. package/dist/models/discount-condition.js.map +1 -1
  212. package/dist/models/discount-rule.d.ts +3 -6
  213. package/dist/models/discount-rule.js +22 -21
  214. package/dist/models/discount-rule.js.map +1 -1
  215. package/dist/models/discount.d.ts +7 -10
  216. package/dist/models/discount.js +30 -30
  217. package/dist/models/discount.js.map +1 -1
  218. package/dist/models/draft-order.d.ts +4 -7
  219. package/dist/models/draft-order.js +25 -22
  220. package/dist/models/draft-order.js.map +1 -1
  221. package/dist/models/fulfillment-item.js.map +1 -1
  222. package/dist/models/fulfillment-provider.js.map +1 -1
  223. package/dist/models/fulfillment.d.ts +5 -7
  224. package/dist/models/fulfillment.js +29 -21
  225. package/dist/models/fulfillment.js.map +1 -1
  226. package/dist/models/gift-card-transaction.js +2 -5
  227. package/dist/models/gift-card-transaction.js.map +1 -1
  228. package/dist/models/gift-card.d.ts +3 -6
  229. package/dist/models/gift-card.js +22 -23
  230. package/dist/models/gift-card.js.map +1 -1
  231. package/dist/models/idempotency-key.d.ts +2 -2
  232. package/dist/models/idempotency-key.js +2 -3
  233. package/dist/models/idempotency-key.js.map +1 -1
  234. package/dist/models/image.d.ts +3 -6
  235. package/dist/models/image.js +22 -23
  236. package/dist/models/image.js.map +1 -1
  237. package/dist/models/index.d.ts +11 -10
  238. package/dist/models/index.js +11 -10
  239. package/dist/models/index.js.map +1 -1
  240. package/dist/models/invite.d.ts +3 -6
  241. package/dist/models/invite.js +22 -24
  242. package/dist/models/invite.js.map +1 -1
  243. package/dist/models/line-item-adjustment.d.ts +1 -1
  244. package/dist/models/line-item-adjustment.js +2 -5
  245. package/dist/models/line-item-adjustment.js.map +1 -1
  246. package/dist/models/line-item-tax-line.js +2 -5
  247. package/dist/models/line-item-tax-line.js.map +1 -1
  248. package/dist/models/line-item.d.ts +3 -5
  249. package/dist/models/line-item.js +25 -20
  250. package/dist/models/line-item.js.map +1 -1
  251. package/dist/models/money-amount.d.ts +2 -5
  252. package/dist/models/money-amount.js +22 -25
  253. package/dist/models/money-amount.js.map +1 -1
  254. package/dist/models/note.d.ts +3 -6
  255. package/dist/models/note.js +22 -23
  256. package/dist/models/note.js.map +1 -1
  257. package/dist/models/notification.d.ts +3 -5
  258. package/dist/models/notification.js +22 -19
  259. package/dist/models/notification.js.map +1 -1
  260. package/dist/models/oauth.d.ts +1 -1
  261. package/dist/models/oauth.js +2 -5
  262. package/dist/models/oauth.js.map +1 -1
  263. package/dist/models/order.d.ts +3 -5
  264. package/dist/models/order.js +25 -21
  265. package/dist/models/order.js.map +1 -1
  266. package/dist/models/payment-provider.js.map +1 -1
  267. package/dist/models/payment-session.d.ts +3 -5
  268. package/dist/models/payment-session.js +22 -19
  269. package/dist/models/payment-session.js.map +1 -1
  270. package/dist/models/payment.d.ts +4 -6
  271. package/dist/models/payment.js +22 -19
  272. package/dist/models/payment.js.map +1 -1
  273. package/dist/models/price-list.d.ts +4 -7
  274. package/dist/models/price-list.js +24 -26
  275. package/dist/models/price-list.js.map +1 -1
  276. package/dist/models/product-collection.d.ts +4 -7
  277. package/dist/models/product-collection.js +25 -24
  278. package/dist/models/product-collection.js.map +1 -1
  279. package/dist/models/product-option-value.d.ts +3 -6
  280. package/dist/models/product-option-value.js +24 -26
  281. package/dist/models/product-option-value.js.map +1 -1
  282. package/dist/models/product-option.d.ts +3 -6
  283. package/dist/models/product-option.js +23 -24
  284. package/dist/models/product-option.js.map +1 -1
  285. package/dist/models/product-tag.d.ts +3 -6
  286. package/dist/models/product-tag.js +22 -23
  287. package/dist/models/product-tag.js.map +1 -1
  288. package/dist/models/product-tax-rate.d.ts +1 -1
  289. package/dist/models/product-tax-rate.js.map +1 -1
  290. package/dist/models/product-type-tax-rate.d.ts +1 -1
  291. package/dist/models/product-type-tax-rate.js.map +1 -1
  292. package/dist/models/product-type.d.ts +3 -6
  293. package/dist/models/product-type.js +22 -23
  294. package/dist/models/product-type.js.map +1 -1
  295. package/dist/models/product-variant.d.ts +3 -6
  296. package/dist/models/product-variant.js +23 -25
  297. package/dist/models/product-variant.js.map +1 -1
  298. package/dist/models/product.d.ts +3 -6
  299. package/dist/models/product.js +25 -22
  300. package/dist/models/product.js.map +1 -1
  301. package/dist/models/refund.d.ts +3 -5
  302. package/dist/models/refund.js +22 -17
  303. package/dist/models/refund.js.map +1 -1
  304. package/dist/models/region.d.ts +3 -6
  305. package/dist/models/region.js +23 -24
  306. package/dist/models/region.js.map +1 -1
  307. package/dist/models/return-item.d.ts +1 -1
  308. package/dist/models/return-item.js.map +1 -1
  309. package/dist/models/return-reason.d.ts +3 -6
  310. package/dist/models/return-reason.js +24 -25
  311. package/dist/models/return-reason.js.map +1 -1
  312. package/dist/models/return.d.ts +5 -7
  313. package/dist/models/return.js +29 -21
  314. package/dist/models/return.js.map +1 -1
  315. package/dist/models/shipping-method-tax-line.js +2 -5
  316. package/dist/models/shipping-method-tax-line.js.map +1 -1
  317. package/dist/models/shipping-method.d.ts +2 -2
  318. package/dist/models/shipping-method.js +3 -6
  319. package/dist/models/shipping-method.js.map +1 -1
  320. package/dist/models/shipping-option-requirement.js +2 -5
  321. package/dist/models/shipping-option-requirement.js.map +1 -1
  322. package/dist/models/shipping-option.d.ts +5 -8
  323. package/dist/models/shipping-option.js +26 -25
  324. package/dist/models/shipping-option.js.map +1 -1
  325. package/dist/models/shipping-profile.d.ts +3 -6
  326. package/dist/models/shipping-profile.js +22 -23
  327. package/dist/models/shipping-profile.js.map +1 -1
  328. package/dist/models/shipping-tax-rate.d.ts +1 -1
  329. package/dist/models/shipping-tax-rate.js.map +1 -1
  330. package/dist/models/staged-job.d.ts +1 -1
  331. package/dist/models/staged-job.js +2 -3
  332. package/dist/models/staged-job.js.map +1 -1
  333. package/dist/models/store.d.ts +3 -5
  334. package/dist/models/store.js +22 -17
  335. package/dist/models/store.js.map +1 -1
  336. package/dist/models/swap.d.ts +5 -8
  337. package/dist/models/swap.js +32 -29
  338. package/dist/models/swap.js.map +1 -1
  339. package/dist/models/tax-line.d.ts +3 -5
  340. package/dist/models/tax-line.js +20 -14
  341. package/dist/models/tax-line.js.map +1 -1
  342. package/dist/models/tax-rate.d.ts +3 -5
  343. package/dist/models/tax-rate.js +22 -19
  344. package/dist/models/tax-rate.js.map +1 -1
  345. package/dist/models/tracking-link.d.ts +3 -6
  346. package/dist/models/tracking-link.js +26 -27
  347. package/dist/models/tracking-link.js.map +1 -1
  348. package/dist/models/user.d.ts +3 -6
  349. package/dist/models/user.js +22 -23
  350. package/dist/models/user.js.map +1 -1
  351. package/dist/repositories/batch-job.d.ts +4 -0
  352. package/dist/repositories/batch-job.js +38 -0
  353. package/dist/repositories/batch-job.js.map +1 -0
  354. package/dist/repositories/discount-condition.d.ts +4 -0
  355. package/dist/repositories/discount-condition.js +14 -0
  356. package/dist/repositories/discount-condition.js.map +1 -1
  357. package/dist/repositories/line-item-tax-line.js.map +1 -1
  358. package/dist/repositories/money-amount.d.ts +1 -0
  359. package/dist/repositories/money-amount.js +34 -6
  360. package/dist/repositories/money-amount.js.map +1 -1
  361. package/dist/repositories/order.d.ts +1 -1
  362. package/dist/repositories/price-list.d.ts +8 -1
  363. package/dist/repositories/price-list.js +209 -0
  364. package/dist/repositories/price-list.js.map +1 -1
  365. package/dist/repositories/product.d.ts +4 -2
  366. package/dist/repositories/product.js +61 -1
  367. package/dist/repositories/product.js.map +1 -1
  368. package/dist/repositories/shipping-method-tax-line.js.map +1 -1
  369. package/dist/scripts/discount-rule-migration.js +48 -36
  370. package/dist/scripts/discount-rule-migration.js.map +1 -1
  371. package/dist/services/batch-job.d.ts +24 -0
  372. package/dist/services/batch-job.js +126 -0
  373. package/dist/services/batch-job.js.map +1 -0
  374. package/dist/services/cart.d.ts +15 -15
  375. package/dist/services/cart.js +160 -165
  376. package/dist/services/cart.js.map +1 -1
  377. package/dist/services/claim-item.d.ts +23 -27
  378. package/dist/services/claim-item.js +217 -247
  379. package/dist/services/claim-item.js.map +1 -1
  380. package/dist/services/claim.d.ts +89 -71
  381. package/dist/services/claim.js +915 -840
  382. package/dist/services/claim.js.map +1 -1
  383. package/dist/services/customer.d.ts +0 -7
  384. package/dist/services/customer.js +4 -33
  385. package/dist/services/customer.js.map +1 -1
  386. package/dist/services/discount-condition.d.ts +31 -0
  387. package/dist/services/discount-condition.js +232 -0
  388. package/dist/services/discount-condition.js.map +1 -0
  389. package/dist/services/discount.d.ts +11 -12
  390. package/dist/services/discount.js +103 -216
  391. package/dist/services/discount.js.map +1 -1
  392. package/dist/services/draft-order.d.ts +69 -66
  393. package/dist/services/draft-order.js +375 -353
  394. package/dist/services/draft-order.js.map +1 -1
  395. package/dist/services/event-bus.d.ts +72 -56
  396. package/dist/services/event-bus.js +122 -99
  397. package/dist/services/event-bus.js.map +1 -1
  398. package/dist/services/file.d.ts +14 -0
  399. package/dist/services/file.js +43 -0
  400. package/dist/services/file.js.map +1 -0
  401. package/dist/services/line-item-adjustment.d.ts +5 -5
  402. package/dist/services/line-item-adjustment.js +3 -5
  403. package/dist/services/line-item-adjustment.js.map +1 -1
  404. package/dist/services/line-item.js +3 -3
  405. package/dist/services/line-item.js.map +1 -1
  406. package/dist/services/order.d.ts +0 -13
  407. package/dist/services/order.js +0 -26
  408. package/dist/services/order.js.map +1 -1
  409. package/dist/services/price-list.d.ts +35 -14
  410. package/dist/services/price-list.js +327 -56
  411. package/dist/services/price-list.js.map +1 -1
  412. package/dist/services/pricing.d.ts +87 -0
  413. package/dist/services/pricing.js +443 -0
  414. package/dist/services/pricing.js.map +1 -0
  415. package/dist/services/product-tag.d.ts +2 -2
  416. package/dist/services/product-tag.js +15 -2
  417. package/dist/services/product-tag.js.map +1 -1
  418. package/dist/services/product-type.d.ts +1 -1
  419. package/dist/services/product-type.js +14 -1
  420. package/dist/services/product-type.js.map +1 -1
  421. package/dist/services/product-variant.js +1 -1
  422. package/dist/services/product-variant.js.map +1 -1
  423. package/dist/services/product.d.ts +2 -9
  424. package/dist/services/product.js +34 -58
  425. package/dist/services/product.js.map +1 -1
  426. package/dist/services/region.js +4 -4
  427. package/dist/services/region.js.map +1 -1
  428. package/dist/services/return.js +2 -0
  429. package/dist/services/return.js.map +1 -1
  430. package/dist/services/shipping-option.d.ts +43 -108
  431. package/dist/services/shipping-option.js +305 -352
  432. package/dist/services/shipping-option.js.map +1 -1
  433. package/dist/services/store.d.ts +36 -45
  434. package/dist/services/store.js +207 -217
  435. package/dist/services/store.js.map +1 -1
  436. package/dist/strategies/cart-completion.js.map +1 -1
  437. package/dist/types/batch-job.d.ts +9 -0
  438. package/dist/types/batch-job.js +53 -1
  439. package/dist/types/batch-job.js.map +1 -1
  440. package/dist/types/cart.d.ts +2 -2
  441. package/dist/types/claim.d.ts +67 -0
  442. package/dist/types/claim.js +3 -0
  443. package/dist/types/claim.js.map +1 -0
  444. package/dist/types/common.d.ts +53 -11
  445. package/dist/types/common.js +1 -0
  446. package/dist/types/common.js.map +1 -1
  447. package/dist/types/discount.d.ts +8 -9
  448. package/dist/types/global.d.ts +19 -0
  449. package/dist/types/note.d.ts +1 -1
  450. package/dist/types/price-list.d.ts +3 -0
  451. package/dist/types/price-list.js +5 -0
  452. package/dist/types/price-list.js.map +1 -1
  453. package/dist/types/pricing.d.ts +25 -0
  454. package/dist/types/pricing.js +3 -0
  455. package/dist/types/pricing.js.map +1 -0
  456. package/dist/types/product.d.ts +2 -0
  457. package/dist/types/product.js +18 -4
  458. package/dist/types/product.js.map +1 -1
  459. package/dist/types/shipping-options.d.ts +56 -0
  460. package/dist/types/shipping-options.js +3 -0
  461. package/dist/types/shipping-options.js.map +1 -0
  462. package/dist/types/store.d.ts +9 -0
  463. package/dist/types/store.js +3 -0
  464. package/dist/types/store.js.map +1 -0
  465. package/dist/types/tax-service.d.ts +2 -2
  466. package/dist/types/user.d.ts +2 -2
  467. package/dist/utils/build-query.d.ts +8 -0
  468. package/dist/utils/build-query.js +114 -0
  469. package/dist/utils/build-query.js.map +1 -0
  470. package/dist/utils/countries.d.ts +3 -2
  471. package/dist/utils/countries.js.map +1 -1
  472. package/dist/utils/currencies.d.ts +10 -1899
  473. package/dist/utils/currencies.js.map +1 -1
  474. package/dist/utils/format-registration-name.d.ts +4 -4
  475. package/dist/utils/format-registration-name.js +7 -10
  476. package/dist/utils/format-registration-name.js.map +1 -1
  477. package/dist/utils/generate-entity-id.d.ts +6 -0
  478. package/dist/utils/generate-entity-id.js +19 -0
  479. package/dist/utils/generate-entity-id.js.map +1 -0
  480. package/dist/utils/get-query-config.d.ts +4 -6
  481. package/dist/utils/get-query-config.js +50 -5
  482. package/dist/utils/get-query-config.js.map +1 -1
  483. package/dist/utils/index.d.ts +4 -0
  484. package/dist/utils/index.js +17 -0
  485. package/dist/utils/index.js.map +1 -0
  486. package/dist/utils/set-metadata.d.ts +9 -0
  487. package/dist/utils/set-metadata.js +72 -0
  488. package/dist/utils/set-metadata.js.map +1 -0
  489. package/dist/utils/sleep.d.ts +1 -0
  490. package/dist/utils/sleep.js +50 -0
  491. package/dist/utils/sleep.js.map +1 -0
  492. package/dist/utils/validate-id.d.ts +4 -0
  493. package/dist/utils/validate-id.js +47 -0
  494. package/dist/utils/validate-id.js.map +1 -0
  495. package/jest.config.js +6 -0
  496. package/package.json +6 -3
  497. package/tsconfig.spec.json +10 -0
  498. package/yarn-error.log +29038 -0
@@ -14,6 +14,17 @@ var __extends = (this && this.__extends) || (function () {
14
14
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
15
  };
16
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
+ };
17
28
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
18
29
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
19
30
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -90,8 +101,9 @@ var __read = (this && this.__read) || function (o, n) {
90
101
  };
91
102
  Object.defineProperty(exports, "__esModule", { value: true });
92
103
  var medusa_core_utils_1 = require("medusa-core-utils");
93
- var medusa_interfaces_1 = require("medusa-interfaces");
94
104
  var exception_formatter_1 = require("../utils/exception-formatter");
105
+ var interfaces_1 = require("../interfaces");
106
+ var utils_1 = require("../utils");
95
107
  /**
96
108
  * Provides layer to manipulate product tags.
97
109
  * @extends BaseService
@@ -99,27 +111,19 @@ var exception_formatter_1 = require("../utils/exception-formatter");
99
111
  var PriceListService = /** @class */ (function (_super) {
100
112
  __extends(PriceListService, _super);
101
113
  function PriceListService(_a) {
102
- var manager = _a.manager, customerGroupService = _a.customerGroupService, priceListRepository = _a.priceListRepository, moneyAmountRepository = _a.moneyAmountRepository;
103
- var _this = _super.call(this) || this;
114
+ var manager = _a.manager, customerGroupService = _a.customerGroupService, regionService = _a.regionService, productService = _a.productService, productVariantService = _a.productVariantService, priceListRepository = _a.priceListRepository, moneyAmountRepository = _a.moneyAmountRepository;
115
+ var _this =
116
+ // eslint-disable-next-line prefer-rest-params
117
+ _super.call(this, arguments[0]) || this;
104
118
  _this.manager_ = manager;
105
119
  _this.customerGroupService_ = customerGroupService;
120
+ _this.productService_ = productService;
121
+ _this.variantService_ = productVariantService;
122
+ _this.regionService_ = regionService;
106
123
  _this.priceListRepo_ = priceListRepository;
107
124
  _this.moneyAmountRepo_ = moneyAmountRepository;
108
125
  return _this;
109
126
  }
110
- PriceListService.prototype.withTransaction = function (transactionManager) {
111
- if (!transactionManager) {
112
- return this;
113
- }
114
- var cloned = new PriceListService({
115
- manager: transactionManager,
116
- customerGroupService: this.customerGroupService_,
117
- priceListRepository: this.priceListRepo_,
118
- moneyAmountRepository: this.moneyAmountRepo_,
119
- });
120
- cloned.transactionManager_ = transactionManager;
121
- return cloned;
122
- };
123
127
  /**
124
128
  * Retrieves a product tag by id.
125
129
  * @param {string} priceListId - the id of the product tag to retrieve
@@ -134,7 +138,7 @@ var PriceListService = /** @class */ (function (_super) {
134
138
  switch (_a.label) {
135
139
  case 0:
136
140
  priceListRepo = this.manager_.getCustomRepository(this.priceListRepo_);
137
- query = this.buildQuery_({ id: priceListId }, config);
141
+ query = (0, utils_1.buildQuery)({ id: priceListId }, config);
138
142
  return [4 /*yield*/, priceListRepo.findOne(query)];
139
143
  case 1:
140
144
  priceList = _a.sent();
@@ -212,7 +216,7 @@ var PriceListService = /** @class */ (function (_super) {
212
216
  return __generator(this, function (_a) {
213
217
  switch (_a.label) {
214
218
  case 0: return [4 /*yield*/, this.atomicPhase_(function (manager) { return __awaiter(_this, void 0, void 0, function () {
215
- var priceListRepo, moneyAmountRepo, priceList, prices, customer_groups, rest, _a, _b, _c, key, value, result;
219
+ var priceListRepo, moneyAmountRepo, priceList, prices, customer_groups, rest, prices_, _a, _b, _c, key, value;
216
220
  var e_1, _d;
217
221
  return __generator(this, function (_e) {
218
222
  switch (_e.label) {
@@ -223,9 +227,27 @@ var PriceListService = /** @class */ (function (_super) {
223
227
  case 1:
224
228
  priceList = _e.sent();
225
229
  prices = update.prices, customer_groups = update.customer_groups, rest = __rest(update, ["prices", "customer_groups"]);
230
+ if (!prices) return [3 /*break*/, 4];
231
+ return [4 /*yield*/, this.addCurrencyFromRegion(prices)];
232
+ case 2:
233
+ prices_ = _e.sent();
234
+ return [4 /*yield*/, moneyAmountRepo.updatePriceListPrices(id, prices_)];
235
+ case 3:
236
+ _e.sent();
237
+ _e.label = 4;
238
+ case 4:
239
+ if (!customer_groups) return [3 /*break*/, 6];
240
+ return [4 /*yield*/, this.upsertCustomerGroups_(id, customer_groups)];
241
+ case 5:
242
+ _e.sent();
243
+ _e.label = 6;
244
+ case 6:
226
245
  try {
227
246
  for (_a = __values(Object.entries(rest)), _b = _a.next(); !_b.done; _b = _a.next()) {
228
247
  _c = __read(_b.value, 2), key = _c[0], value = _c[1];
248
+ if (typeof value === "undefined") {
249
+ continue;
250
+ }
229
251
  priceList[key] = value;
230
252
  }
231
253
  }
@@ -237,25 +259,12 @@ var PriceListService = /** @class */ (function (_super) {
237
259
  finally { if (e_1) throw e_1.error; }
238
260
  }
239
261
  return [4 /*yield*/, priceListRepo.save(priceList)];
240
- case 2:
241
- _e.sent();
242
- if (!prices) return [3 /*break*/, 4];
243
- return [4 /*yield*/, moneyAmountRepo.updatePriceListPrices(id, prices)];
244
- case 3:
245
- _e.sent();
246
- _e.label = 4;
247
- case 4:
248
- if (!customer_groups) return [3 /*break*/, 6];
249
- return [4 /*yield*/, this.upsertCustomerGroups_(id, customer_groups)];
250
- case 5:
251
- _e.sent();
252
- _e.label = 6;
253
- case 6: return [4 /*yield*/, this.retrieve(id, {
254
- relations: ["prices", "customer_groups"],
255
- })];
256
262
  case 7:
257
- result = _e.sent();
258
- return [2 /*return*/, result];
263
+ _e.sent();
264
+ return [4 /*yield*/, this.retrieve(id, {
265
+ relations: ["prices", "customer_groups"],
266
+ })];
267
+ case 8: return [2 /*return*/, _e.sent()];
259
268
  }
260
269
  });
261
270
  }); })];
@@ -278,7 +287,7 @@ var PriceListService = /** @class */ (function (_super) {
278
287
  return __generator(this, function (_a) {
279
288
  switch (_a.label) {
280
289
  case 0: return [4 /*yield*/, this.atomicPhase_(function (manager) { return __awaiter(_this, void 0, void 0, function () {
281
- var moneyAmountRepo, priceList, result;
290
+ var moneyAmountRepo, priceList, prices_;
282
291
  return __generator(this, function (_a) {
283
292
  switch (_a.label) {
284
293
  case 0:
@@ -286,15 +295,16 @@ var PriceListService = /** @class */ (function (_super) {
286
295
  return [4 /*yield*/, this.retrieve(id, { select: ["id"] })];
287
296
  case 1:
288
297
  priceList = _a.sent();
289
- return [4 /*yield*/, moneyAmountRepo.addPriceListPrices(priceList.id, prices, replace)];
298
+ return [4 /*yield*/, this.addCurrencyFromRegion(prices)];
290
299
  case 2:
300
+ prices_ = _a.sent();
301
+ return [4 /*yield*/, moneyAmountRepo.addPriceListPrices(priceList.id, prices_, replace)];
302
+ case 3:
291
303
  _a.sent();
292
304
  return [4 /*yield*/, this.retrieve(priceList.id, {
293
305
  relations: ["prices"],
294
306
  })];
295
- case 3:
296
- result = _a.sent();
297
- return [2 /*return*/, result];
307
+ case 4: return [2 /*return*/, _a.sent()];
298
308
  }
299
309
  });
300
310
  }); })];
@@ -326,7 +336,7 @@ var PriceListService = /** @class */ (function (_super) {
326
336
  return [4 /*yield*/, moneyAmountRepo.deletePriceListPrices(priceList.id, priceIds)];
327
337
  case 2:
328
338
  _a.sent();
329
- return [2 /*return*/, Promise.resolve()];
339
+ return [2 /*return*/];
330
340
  }
331
341
  });
332
342
  }); })];
@@ -358,10 +368,10 @@ var PriceListService = /** @class */ (function (_super) {
358
368
  if (!priceList) {
359
369
  return [2 /*return*/, Promise.resolve()];
360
370
  }
361
- return [4 /*yield*/, priceListRepo.delete(priceList)];
371
+ return [4 /*yield*/, priceListRepo.remove(priceList)];
362
372
  case 2:
363
373
  _a.sent();
364
- return [2 /*return*/, Promise.resolve()];
374
+ return [2 /*return*/];
365
375
  }
366
376
  });
367
377
  }); })];
@@ -380,13 +390,26 @@ var PriceListService = /** @class */ (function (_super) {
380
390
  if (selector === void 0) { selector = {}; }
381
391
  if (config === void 0) { config = { skip: 0, take: 20 }; }
382
392
  return __awaiter(this, void 0, void 0, function () {
383
- var priceListRepo, query;
393
+ var _this = this;
384
394
  return __generator(this, function (_a) {
385
395
  switch (_a.label) {
386
- case 0:
387
- priceListRepo = this.manager_.getCustomRepository(this.priceListRepo_);
388
- query = this.buildQuery_(selector, config);
389
- return [4 /*yield*/, priceListRepo.find(query)];
396
+ case 0: return [4 /*yield*/, this.atomicPhase_(function (manager) { return __awaiter(_this, void 0, void 0, function () {
397
+ var priceListRepo, q, priceListSelector, query, groups, _a, priceLists;
398
+ return __generator(this, function (_b) {
399
+ switch (_b.label) {
400
+ case 0:
401
+ priceListRepo = manager.getCustomRepository(this.priceListRepo_);
402
+ q = selector.q, priceListSelector = __rest(selector, ["q"]);
403
+ query = (0, utils_1.buildQuery)(priceListSelector, config);
404
+ groups = query.where.customer_groups;
405
+ query.where.customer_groups = undefined;
406
+ return [4 /*yield*/, priceListRepo.listAndCount(query, groups)];
407
+ case 1:
408
+ _a = __read.apply(void 0, [_b.sent(), 1]), priceLists = _a[0];
409
+ return [2 /*return*/, priceLists];
410
+ }
411
+ });
412
+ }); })];
390
413
  case 1: return [2 /*return*/, _a.sent()];
391
414
  }
392
415
  });
@@ -400,15 +423,32 @@ var PriceListService = /** @class */ (function (_super) {
400
423
  */
401
424
  PriceListService.prototype.listAndCount = function (selector, config) {
402
425
  if (selector === void 0) { selector = {}; }
403
- if (config === void 0) { config = { skip: 0, take: 20 }; }
426
+ if (config === void 0) { config = {
427
+ skip: 0,
428
+ take: 20,
429
+ }; }
404
430
  return __awaiter(this, void 0, void 0, function () {
405
- var priceListRepo, query;
431
+ var _this = this;
406
432
  return __generator(this, function (_a) {
407
433
  switch (_a.label) {
408
- case 0:
409
- priceListRepo = this.manager_.getCustomRepository(this.priceListRepo_);
410
- query = this.buildQuery_(selector, config);
411
- return [4 /*yield*/, priceListRepo.findAndCount(query)];
434
+ case 0: return [4 /*yield*/, this.atomicPhase_(function (manager) { return __awaiter(_this, void 0, void 0, function () {
435
+ var priceListRepo, q, priceListSelector, _a, relations, query, groups;
436
+ return __generator(this, function (_b) {
437
+ switch (_b.label) {
438
+ case 0:
439
+ priceListRepo = manager.getCustomRepository(this.priceListRepo_);
440
+ q = selector.q, priceListSelector = __rest(selector, ["q"]);
441
+ _a = (0, utils_1.buildQuery)(priceListSelector, config), relations = _a.relations, query = __rest(_a, ["relations"]);
442
+ groups = query.where.customer_groups;
443
+ delete query.where.customer_groups;
444
+ if (!q) return [3 /*break*/, 2];
445
+ return [4 /*yield*/, priceListRepo.getFreeTextSearchResultsAndCount(q, query, groups, relations)];
446
+ case 1: return [2 /*return*/, _b.sent()];
447
+ case 2: return [4 /*yield*/, priceListRepo.listAndCount(__assign(__assign({}, query), { relations: relations }), groups)];
448
+ case 3: return [2 /*return*/, _b.sent()];
449
+ }
450
+ });
451
+ }); })];
412
452
  case 1: return [2 /*return*/, _a.sent()];
413
453
  }
414
454
  });
@@ -463,7 +503,238 @@ var PriceListService = /** @class */ (function (_super) {
463
503
  });
464
504
  });
465
505
  };
506
+ PriceListService.prototype.listProducts = function (priceListId, selector, config, requiresPriceList) {
507
+ if (selector === void 0) { selector = {}; }
508
+ if (config === void 0) { config = {
509
+ relations: [],
510
+ skip: 0,
511
+ take: 20,
512
+ }; }
513
+ if (requiresPriceList === void 0) { requiresPriceList = false; }
514
+ return __awaiter(this, void 0, void 0, function () {
515
+ var _this = this;
516
+ return __generator(this, function (_a) {
517
+ switch (_a.label) {
518
+ case 0: return [4 /*yield*/, this.atomicPhase_(function (manager) { return __awaiter(_this, void 0, void 0, function () {
519
+ var _a, products, count, moneyAmountRepo, productsWithPrices;
520
+ var _this = this;
521
+ return __generator(this, function (_b) {
522
+ switch (_b.label) {
523
+ case 0: return [4 /*yield*/, this.productService_.listAndCount(selector, config)];
524
+ case 1:
525
+ _a = __read.apply(void 0, [_b.sent(), 2]), products = _a[0], count = _a[1];
526
+ moneyAmountRepo = manager.getCustomRepository(this.moneyAmountRepo_);
527
+ return [4 /*yield*/, Promise.all(products.map(function (p) { return __awaiter(_this, void 0, void 0, function () {
528
+ var _a;
529
+ var _this = this;
530
+ var _b;
531
+ return __generator(this, function (_c) {
532
+ switch (_c.label) {
533
+ case 0:
534
+ if (!((_b = p.variants) === null || _b === void 0 ? void 0 : _b.length)) return [3 /*break*/, 2];
535
+ _a = p;
536
+ return [4 /*yield*/, Promise.all(p.variants.map(function (v) { return __awaiter(_this, void 0, void 0, function () {
537
+ var _a, prices;
538
+ return __generator(this, function (_b) {
539
+ switch (_b.label) {
540
+ case 0: return [4 /*yield*/, moneyAmountRepo.findManyForVariantInPriceList(v.id, priceListId, requiresPriceList)];
541
+ case 1:
542
+ _a = __read.apply(void 0, [_b.sent(), 1]), prices = _a[0];
543
+ return [2 /*return*/, __assign(__assign({}, v), { prices: prices })];
544
+ }
545
+ });
546
+ }); }))];
547
+ case 1:
548
+ _a.variants = _c.sent();
549
+ _c.label = 2;
550
+ case 2: return [2 /*return*/, p];
551
+ }
552
+ });
553
+ }); }))];
554
+ case 2:
555
+ productsWithPrices = _b.sent();
556
+ return [2 /*return*/, [productsWithPrices, count]];
557
+ }
558
+ });
559
+ }); })];
560
+ case 1: return [2 /*return*/, _a.sent()];
561
+ }
562
+ });
563
+ });
564
+ };
565
+ PriceListService.prototype.listVariants = function (priceListId, selector, config, requiresPriceList) {
566
+ if (selector === void 0) { selector = {}; }
567
+ if (config === void 0) { config = {
568
+ relations: [],
569
+ skip: 0,
570
+ take: 20,
571
+ }; }
572
+ if (requiresPriceList === void 0) { requiresPriceList = false; }
573
+ return __awaiter(this, void 0, void 0, function () {
574
+ var _this = this;
575
+ return __generator(this, function (_a) {
576
+ switch (_a.label) {
577
+ case 0: return [4 /*yield*/, this.atomicPhase_(function (manager) { return __awaiter(_this, void 0, void 0, function () {
578
+ var _a, variants, count, moneyAmountRepo, variantsWithPrices;
579
+ var _this = this;
580
+ return __generator(this, function (_b) {
581
+ switch (_b.label) {
582
+ case 0: return [4 /*yield*/, this.variantService_.listAndCount(selector, config)];
583
+ case 1:
584
+ _a = __read.apply(void 0, [_b.sent(), 2]), variants = _a[0], count = _a[1];
585
+ moneyAmountRepo = manager.getCustomRepository(this.moneyAmountRepo_);
586
+ return [4 /*yield*/, Promise.all(variants.map(function (variant) { return __awaiter(_this, void 0, void 0, function () {
587
+ var _a, prices;
588
+ return __generator(this, function (_b) {
589
+ switch (_b.label) {
590
+ case 0: return [4 /*yield*/, moneyAmountRepo.findManyForVariantInPriceList(variant.id, priceListId, requiresPriceList)];
591
+ case 1:
592
+ _a = __read.apply(void 0, [_b.sent(), 1]), prices = _a[0];
593
+ variant.prices = prices;
594
+ return [2 /*return*/, variant];
595
+ }
596
+ });
597
+ }); }))];
598
+ case 2:
599
+ variantsWithPrices = _b.sent();
600
+ return [2 /*return*/, [variantsWithPrices, count]];
601
+ }
602
+ });
603
+ }); })];
604
+ case 1: return [2 /*return*/, _a.sent()];
605
+ }
606
+ });
607
+ });
608
+ };
609
+ PriceListService.prototype.deleteProductPrices = function (priceListId, productIds) {
610
+ return __awaiter(this, void 0, void 0, function () {
611
+ var _this = this;
612
+ return __generator(this, function (_a) {
613
+ switch (_a.label) {
614
+ case 0: return [4 /*yield*/, this.atomicPhase_(function () { return __awaiter(_this, void 0, void 0, function () {
615
+ var _a, products, count, priceIds;
616
+ return __generator(this, function (_b) {
617
+ switch (_b.label) {
618
+ case 0: return [4 /*yield*/, this.listProducts(priceListId, {
619
+ id: productIds,
620
+ }, {
621
+ relations: ["variants"],
622
+ }, true)];
623
+ case 1:
624
+ _a = __read.apply(void 0, [_b.sent(), 2]), products = _a[0], count = _a[1];
625
+ if (count === 0) {
626
+ return [2 /*return*/, [[], count]];
627
+ }
628
+ priceIds = products
629
+ .map(function (_a) {
630
+ var variants = _a.variants;
631
+ return variants
632
+ .map(function (variant) { return variant.prices.map(function (price) { return price.id; }); })
633
+ .flat();
634
+ })
635
+ .flat();
636
+ if (!priceIds.length) {
637
+ return [2 /*return*/, [[], 0]];
638
+ }
639
+ return [4 /*yield*/, this.deletePrices(priceListId, priceIds)];
640
+ case 2:
641
+ _b.sent();
642
+ return [2 /*return*/, [priceIds, priceIds.length]];
643
+ }
644
+ });
645
+ }); })];
646
+ case 1: return [2 /*return*/, _a.sent()];
647
+ }
648
+ });
649
+ });
650
+ };
651
+ PriceListService.prototype.deleteVariantPrices = function (priceListId, variantIds) {
652
+ return __awaiter(this, void 0, void 0, function () {
653
+ var _this = this;
654
+ return __generator(this, function (_a) {
655
+ switch (_a.label) {
656
+ case 0: return [4 /*yield*/, this.atomicPhase_(function () { return __awaiter(_this, void 0, void 0, function () {
657
+ var _a, variants, count, priceIds;
658
+ return __generator(this, function (_b) {
659
+ switch (_b.label) {
660
+ case 0: return [4 /*yield*/, this.listVariants(priceListId, {
661
+ id: variantIds,
662
+ }, {}, true)];
663
+ case 1:
664
+ _a = __read.apply(void 0, [_b.sent(), 2]), variants = _a[0], count = _a[1];
665
+ if (count === 0) {
666
+ return [2 /*return*/, [[], count]];
667
+ }
668
+ priceIds = variants
669
+ .map(function (variant) { return variant.prices.map(function (price) { return price.id; }); })
670
+ .flat();
671
+ if (!priceIds.length) {
672
+ return [2 /*return*/, [[], 0]];
673
+ }
674
+ return [4 /*yield*/, this.deletePrices(priceListId, priceIds)];
675
+ case 2:
676
+ _b.sent();
677
+ return [2 /*return*/, [priceIds, priceIds.length]];
678
+ }
679
+ });
680
+ }); })];
681
+ case 1: return [2 /*return*/, _a.sent()];
682
+ }
683
+ });
684
+ });
685
+ };
686
+ /**
687
+ * Add `currency_code` to an MA record if `region_id`is passed.
688
+ * @param prices - a list of PriceListPrice(Create/Update)Input records
689
+ * @return {Promise} updated `prices` list
690
+ */
691
+ PriceListService.prototype.addCurrencyFromRegion = function (prices) {
692
+ return __awaiter(this, void 0, void 0, function () {
693
+ var prices_, prices_1, prices_1_1, p, region, e_3_1;
694
+ var e_3, _a;
695
+ return __generator(this, function (_b) {
696
+ switch (_b.label) {
697
+ case 0:
698
+ prices_ = [];
699
+ _b.label = 1;
700
+ case 1:
701
+ _b.trys.push([1, 7, 8, 9]);
702
+ prices_1 = __values(prices), prices_1_1 = prices_1.next();
703
+ _b.label = 2;
704
+ case 2:
705
+ if (!!prices_1_1.done) return [3 /*break*/, 6];
706
+ p = prices_1_1.value;
707
+ if (!p.region_id) return [3 /*break*/, 4];
708
+ return [4 /*yield*/, this.regionService_
709
+ .withTransaction(this.manager_)
710
+ .retrieve(p.region_id)];
711
+ case 3:
712
+ region = _b.sent();
713
+ p.currency_code = region.currency_code;
714
+ _b.label = 4;
715
+ case 4:
716
+ prices_.push(p);
717
+ _b.label = 5;
718
+ case 5:
719
+ prices_1_1 = prices_1.next();
720
+ return [3 /*break*/, 2];
721
+ case 6: return [3 /*break*/, 9];
722
+ case 7:
723
+ e_3_1 = _b.sent();
724
+ e_3 = { error: e_3_1 };
725
+ return [3 /*break*/, 9];
726
+ case 8:
727
+ try {
728
+ if (prices_1_1 && !prices_1_1.done && (_a = prices_1.return)) _a.call(prices_1);
729
+ }
730
+ finally { if (e_3) throw e_3.error; }
731
+ return [7 /*endfinally*/];
732
+ case 9: return [2 /*return*/, prices_];
733
+ }
734
+ });
735
+ });
736
+ };
466
737
  return PriceListService;
467
- }(medusa_interfaces_1.BaseService));
738
+ }(interfaces_1.TransactionBaseService));
468
739
  exports.default = PriceListService;
469
740
  //# sourceMappingURL=price-list.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"price-list.js","sourceRoot":"","sources":["../../src/services/price-list.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uDAA+C;AAC/C,uDAA+C;AAc/C,oEAA8D;AAS9D;;;GAGG;AACH;IAA+B,oCAAW;IAMxC,0BAAY,EAKgB;YAJ1B,OAAO,aAAA,EACP,oBAAoB,0BAAA,EACpB,mBAAmB,yBAAA,EACnB,qBAAqB,2BAAA;QAJvB,YAME,iBAAO,SAKR;QAJC,KAAI,CAAC,QAAQ,GAAG,OAAO,CAAA;QACvB,KAAI,CAAC,qBAAqB,GAAG,oBAAoB,CAAA;QACjD,KAAI,CAAC,cAAc,GAAG,mBAAmB,CAAA;QACzC,KAAI,CAAC,gBAAgB,GAAG,qBAAqB,CAAA;;IAC/C,CAAC;IAED,0CAAe,GAAf,UAAgB,kBAAiC;QAC/C,IAAI,CAAC,kBAAkB,EAAE;YACvB,OAAO,IAAI,CAAA;SACZ;QAED,IAAM,MAAM,GAAG,IAAI,gBAAgB,CAAC;YAClC,OAAO,EAAE,kBAAkB;YAC3B,oBAAoB,EAAE,IAAI,CAAC,qBAAqB;YAChD,mBAAmB,EAAE,IAAI,CAAC,cAAc;YACxC,qBAAqB,EAAE,IAAI,CAAC,gBAAgB;SAC7C,CAAC,CAAA;QAEF,MAAM,CAAC,mBAAmB,GAAG,kBAAkB,CAAA;QAE/C,OAAO,MAAM,CAAA;IACf,CAAC;IAED;;;;;OAKG;IACG,mCAAQ,GAAd,UACE,WAAmB,EACnB,MAAkC;QAAlC,uBAAA,EAAA,WAAkC;;;;;;wBAE5B,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;wBAEtE,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,MAAM,CAAC,CAAA;wBACzC,qBAAM,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,EAAA;;wBAA9C,SAAS,GAAG,SAAkC;wBAEpD,IAAI,CAAC,SAAS,EAAE;4BACd,MAAM,IAAI,+BAAW,CACnB,+BAAW,CAAC,KAAK,CAAC,SAAS,EAC3B,8BAAuB,WAAW,mBAAgB,CACnD,CAAA;yBACF;wBAED,sBAAO,SAAS,EAAA;;;;KACjB;IAED;;;;OAIG;IACG,iCAAM,GAAZ,UAAa,eAAqC;;;;;4BACzC,qBAAM,IAAI,CAAC,YAAY,CAAC,UAAO,OAAsB;;;;;wCACpD,aAAa,GAAG,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;wCAChE,eAAe,GAAG,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;wCAElE,MAAM,GAA+B,eAAe,OAA9C,EAAE,eAAe,GAAc,eAAe,gBAA7B,EAAK,IAAI,UAAK,eAAe,EAAtD,6BAAoC,CAAF,CAAoB;;;;wCAGpD,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;wCAEvB,qBAAM,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,EAAA;;wCAA5C,SAAS,GAAG,SAAgC;6CAE9C,MAAM,EAAN,wBAAM;wCACR,qBAAM,eAAe,CAAC,kBAAkB,CAAC,SAAS,CAAC,EAAE,EAAE,MAAM,CAAC,EAAA;;wCAA9D,SAA8D,CAAA;;;6CAG5D,eAAe,EAAf,wBAAe;wCACjB,qBAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,EAAE,EAAE,eAAe,CAAC,EAAA;;wCAA/D,SAA+D,CAAA;;4CAGlD,qBAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,EAAE;4CAC/C,SAAS,EAAE,CAAC,QAAQ,EAAE,iBAAiB,CAAC;yCACzC,CAAC,EAAA;;wCAFI,MAAM,GAAG,SAEb;wCAEF,sBAAO,MAAM,EAAA;;;wCAEb,MAAM,IAAA,qCAAe,EAAC,OAAK,CAAC,CAAA;;;;6BAE/B,CAAC,EAAA;4BA3BF,sBAAO,SA2BL,EAAA;;;;KACH;IAED;;;;;OAKG;IACG,iCAAM,GAAZ,UAAa,EAAU,EAAE,MAA4B;;;;;4BAC5C,qBAAM,IAAI,CAAC,YAAY,CAAC,UAAO,OAAsB;;;;;;wCACpD,aAAa,GAAG,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;wCAChE,eAAe,GAAG,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;wCAExD,qBAAM,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAA;;wCAAvD,SAAS,GAAG,SAA2C;wCAErD,MAAM,GAA+B,MAAM,OAArC,EAAE,eAAe,GAAc,MAAM,gBAApB,EAAK,IAAI,UAAK,MAAM,EAA7C,6BAAoC,CAAF,CAAW;;4CAEnD,KAA2B,KAAA,SAAA,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA,4CAAE;gDAAtC,KAAA,mBAAY,EAAX,GAAG,QAAA,EAAE,KAAK,QAAA;gDACpB,SAAS,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;6CACvB;;;;;;;;;wCAED,qBAAM,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,EAAA;;wCAAnC,SAAmC,CAAA;6CAE/B,MAAM,EAAN,wBAAM;wCACR,qBAAM,eAAe,CAAC,qBAAqB,CAAC,EAAE,EAAE,MAAM,CAAC,EAAA;;wCAAvD,SAAuD,CAAA;;;6CAGrD,eAAe,EAAf,wBAAe;wCACjB,qBAAM,IAAI,CAAC,qBAAqB,CAAC,EAAE,EAAE,eAAe,CAAC,EAAA;;wCAArD,SAAqD,CAAA;;4CAGxC,qBAAM,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;4CACrC,SAAS,EAAE,CAAC,QAAQ,EAAE,iBAAiB,CAAC;yCACzC,CAAC,EAAA;;wCAFI,MAAM,GAAG,SAEb;wCAEF,sBAAO,MAAM,EAAA;;;6BACd,CAAC,EAAA;4BA3BF,sBAAO,SA2BL,EAAA;;;;KACH;IAED;;;;;;OAMG;IACG,oCAAS,GAAf,UACE,EAAU,EACV,MAAmC,EACnC,OAAe;QAAf,wBAAA,EAAA,eAAe;;;;;4BAER,qBAAM,IAAI,CAAC,YAAY,CAAC,UAAO,OAAsB;;;;;wCACpD,eAAe,GAAG,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;wCAExD,qBAAM,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAA;;wCAAvD,SAAS,GAAG,SAA2C;wCAE7D,qBAAM,eAAe,CAAC,kBAAkB,CAAC,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAA;;wCAAvE,SAAuE,CAAA;wCAExD,qBAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,EAAE;gDAC/C,SAAS,EAAE,CAAC,QAAQ,CAAC;6CACtB,CAAC,EAAA;;wCAFI,MAAM,GAAG,SAEb;wCAEF,sBAAO,MAAM,EAAA;;;6BACd,CAAC,EAAA;4BAZF,sBAAO,SAYL,EAAA;;;;KACH;IAED;;;;;OAKG;IACG,uCAAY,GAAlB,UAAmB,EAAU,EAAE,QAAkB;;;;;4BACxC,qBAAM,IAAI,CAAC,YAAY,CAAC,UAAO,OAAsB;;;;;wCACpD,eAAe,GAAG,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;wCAExD,qBAAM,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAA;;wCAAvD,SAAS,GAAG,SAA2C;wCAE7D,qBAAM,eAAe,CAAC,qBAAqB,CAAC,SAAS,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAA;;wCAAnE,SAAmE,CAAA;wCAEnE,sBAAO,OAAO,CAAC,OAAO,EAAE,EAAA;;;6BACzB,CAAC,EAAA;4BARF,sBAAO,SAQL,EAAA;;;;KACH;IAED;;;;;OAKG;IACG,iCAAM,GAAZ,UAAa,EAAU;;;;;4BACd,qBAAM,IAAI,CAAC,YAAY,CAAC,UAAO,OAAsB;;;;;wCACpD,aAAa,GAAG,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;wCAEpD,qBAAM,aAAa,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAA;;wCAA9D,SAAS,GAAG,SAAkD;wCACpE,IAAI,CAAC,SAAS,EAAE;4CACd,sBAAO,OAAO,CAAC,OAAO,EAAE,EAAA;yCACzB;wCAED,qBAAM,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,EAAA;;wCAArC,SAAqC,CAAA;wCAErC,sBAAO,OAAO,CAAC,OAAO,EAAE,EAAA;;;6BACzB,CAAC,EAAA;4BAXF,sBAAO,SAWL,EAAA;;;;KACH;IAED;;;;;OAKG;IACG,+BAAI,GAAV,UACE,QAAuC,EACvC,MAAqD;QADrD,yBAAA,EAAA,aAAuC;QACvC,uBAAA,EAAA,WAAkC,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE;;;;;;wBAE/C,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;wBAEtE,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;wBACzC,qBAAM,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,EAAA;4BAAtC,sBAAO,SAA+B,EAAA;;;;KACvC;IAED;;;;;OAKG;IACG,uCAAY,GAAlB,UACE,QAAuC,EACvC,MAAqD;QADrD,yBAAA,EAAA,aAAuC;QACvC,uBAAA,EAAA,WAAkC,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE;;;;;;wBAE/C,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;wBAEtE,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;wBACzC,qBAAM,aAAa,CAAC,YAAY,CAAC,KAAK,CAAC,EAAA;4BAA9C,sBAAO,SAAuC,EAAA;;;;KAC/C;IAEK,gDAAqB,GAA3B,UACE,WAAmB,EACnB,cAAgC;;;;;;;wBAE1B,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;wBAC1D,qBAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAA;;wBAAhE,SAAS,GAAG,SAAoD;wBAEhE,MAAM,GAAoB,EAAE,CAAA;;;;wBAEjB,mBAAA,SAAA,cAAc,CAAA;;;;wBAApB,EAAE;wBACW,qBAAM,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAA;;wBAAhE,aAAa,GAAG,SAAgD;wBACtE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;;;;;;;;;;;;;;;;;wBAG5B,SAAS,CAAC,eAAe,GAAG,MAAM,CAAA;wBAElC,qBAAM,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,EAAA;;wBAAnC,SAAmC,CAAA;;;;;KACpC;IACH,uBAAC;AAAD,CAAC,AA1PD,CAA+B,+BAAW,GA0PzC;AAED,kBAAe,gBAAgB,CAAA"}
1
+ {"version":3,"file":"price-list.js","sourceRoot":"","sources":["../../src/services/price-list.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,87 @@
1
+ import { EntityManager } from "typeorm";
2
+ import { ProductVariantService, RegionService, TaxProviderService } from ".";
3
+ import { Product, ProductVariant } from "../models";
4
+ import { TaxServiceRate } from "../types/tax-service";
5
+ import { ProductVariantPricing, TaxedPricing, PricingContext, PricedProduct, PricedVariant } from "../types/pricing";
6
+ import { TransactionBaseService } from "../interfaces";
7
+ import { IPriceSelectionStrategy, PriceSelectionContext } from "../interfaces/price-selection-strategy";
8
+ declare type InjectedDependencies = {
9
+ manager: EntityManager;
10
+ productVariantService: ProductVariantService;
11
+ taxProviderService: TaxProviderService;
12
+ regionService: RegionService;
13
+ priceSelectionStrategy: IPriceSelectionStrategy;
14
+ };
15
+ /**
16
+ * Allows retrieval of prices.
17
+ * @extends BaseService
18
+ */
19
+ declare class PricingService extends TransactionBaseService<PricingService> {
20
+ protected manager_: EntityManager;
21
+ protected transactionManager_: EntityManager | undefined;
22
+ protected readonly regionService: RegionService;
23
+ protected readonly taxProviderService: TaxProviderService;
24
+ protected readonly priceSelectionStrategy: IPriceSelectionStrategy;
25
+ protected readonly productVariantService: ProductVariantService;
26
+ constructor({ manager, productVariantService, taxProviderService, regionService, priceSelectionStrategy, }: InjectedDependencies);
27
+ /**
28
+ * Collects additional information neccessary for completing the price
29
+ * selection.
30
+ * @param context - the price selection context to use
31
+ * @return The pricing context
32
+ */
33
+ collectPricingContext(context: PriceSelectionContext): Promise<PricingContext>;
34
+ /**
35
+ * Gets the prices for a product variant
36
+ * @param variantPricing - the prices retrieved from a variant
37
+ * @param productRates - the tax rates that the product has applied
38
+ * @return The tax related variant prices.
39
+ */
40
+ calculateTaxes(variantPricing: ProductVariantPricing, productRates: TaxServiceRate[]): Promise<TaxedPricing>;
41
+ private getProductVariantPricing_;
42
+ /**
43
+ * Gets the prices for a product variant.
44
+ * @param variant - the id of the variant to get prices for
45
+ * @param context - the price selection context to use
46
+ * @return The product variant prices
47
+ */
48
+ getProductVariantPricing(variant: Pick<ProductVariant, "id" | "product_id">, context: PriceSelectionContext | PricingContext): Promise<ProductVariantPricing>;
49
+ /**
50
+ * Gets the prices for a product variant by a variant id.
51
+ * @param variantId - the id of the variant to get prices for
52
+ * @param context - the price selection context to use
53
+ * @return The product variant prices
54
+ */
55
+ getProductVariantPricingById(variantId: string, context: PriceSelectionContext | PricingContext): Promise<ProductVariantPricing>;
56
+ private getProductPricing_;
57
+ /**
58
+ * Gets all the variant prices for a product. All the product's variants will
59
+ * be fetched.
60
+ * @param product - the product to get pricing for.
61
+ * @param context - the price selection context to use
62
+ * @return A map of variant ids to their corresponding prices
63
+ */
64
+ getProductPricing(product: Pick<Product, "id" | "variants">, context: PriceSelectionContext): Promise<Record<string, ProductVariantPricing>>;
65
+ /**
66
+ * Gets all the variant prices for a product by the product id
67
+ * @param productId - the id of the product to get prices for
68
+ * @param context - the price selection context to use
69
+ * @return A map of variant ids to their corresponding prices
70
+ */
71
+ getProductPricingById(productId: string, context: PriceSelectionContext): Promise<Record<string, ProductVariantPricing>>;
72
+ /**
73
+ * Set additional prices on a list of product variants.
74
+ * @param variants - list of variants on which to set additional prices
75
+ * @param context - the price selection context to use
76
+ * @return A list of products with variants decorated with prices
77
+ */
78
+ setVariantPrices(variants: ProductVariant[], context: PriceSelectionContext): Promise<PricedVariant[]>;
79
+ /**
80
+ * Set additional prices on a list of products.
81
+ * @param products - list of products on which to set additional prices
82
+ * @param context - the price selection context to use
83
+ * @return A list of products with variants decorated with prices
84
+ */
85
+ setProductPrices(products: Product[], context?: PriceSelectionContext): Promise<(Product | PricedProduct)[]>;
86
+ }
87
+ export default PricingService;