@medusajs/medusa 1.2.2-dev.56 → 1.3.1-alpha.72

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 (627) hide show
  1. package/CHANGELOG.md +98 -0
  2. package/dist/api/index.d.ts +1 -0
  3. package/dist/api/index.js +1 -0
  4. package/dist/api/index.js.map +1 -1
  5. package/dist/api/middlewares/batch-job/can-access-batch-job.d.ts +1 -0
  6. package/dist/api/{routes/admin/discounts/add-valid-product.js → middlewares/batch-job/can-access-batch-job.js} +31 -43
  7. package/dist/api/middlewares/batch-job/can-access-batch-job.js.map +1 -0
  8. package/dist/api/middlewares/batch-job/get-requested-batch-job.d.ts +1 -0
  9. package/dist/api/{routes/admin/products/get-variants.js → middlewares/batch-job/get-requested-batch-job.js} +28 -37
  10. package/dist/api/middlewares/batch-job/get-requested-batch-job.js.map +1 -0
  11. package/dist/api/middlewares/error-handler.js +1 -1
  12. package/dist/api/middlewares/index.d.ts +2 -0
  13. package/dist/api/middlewares/index.js +5 -0
  14. package/dist/api/middlewares/index.js.map +1 -1
  15. package/dist/api/routes/admin/auth/create-session.js +5 -5
  16. package/dist/api/routes/admin/auth/create-session.js.map +1 -1
  17. package/dist/api/routes/admin/batch/index.d.ts +13 -0
  18. package/dist/api/routes/admin/batch/index.js +37 -0
  19. package/dist/api/routes/admin/batch/index.js.map +1 -0
  20. package/dist/api/routes/admin/batch/list-batch-jobs.d.ts +47 -0
  21. package/dist/api/routes/admin/batch/list-batch-jobs.js +245 -0
  22. package/dist/api/routes/admin/batch/list-batch-jobs.js.map +1 -0
  23. package/dist/api/routes/admin/customer-groups/list-customer-groups.js +2 -2
  24. package/dist/api/routes/admin/customer-groups/list-customer-groups.js.map +1 -1
  25. package/dist/api/routes/admin/discounts/create-condition.d.ts +58 -0
  26. package/dist/api/routes/admin/discounts/create-condition.js +186 -0
  27. package/dist/api/routes/admin/discounts/create-condition.js.map +1 -0
  28. package/dist/api/routes/admin/discounts/create-discount.d.ts +14 -4
  29. package/dist/api/routes/admin/discounts/create-discount.js +72 -16
  30. package/dist/api/routes/admin/discounts/create-discount.js.map +1 -1
  31. package/dist/api/routes/admin/discounts/create-dynamic-code.d.ts +1 -0
  32. package/dist/api/routes/admin/discounts/create-dynamic-code.js +4 -1
  33. package/dist/api/routes/admin/discounts/create-dynamic-code.js.map +1 -1
  34. package/dist/api/routes/admin/discounts/delete-condition.d.ts +36 -0
  35. package/dist/api/routes/admin/discounts/delete-condition.js +151 -0
  36. package/dist/api/routes/admin/discounts/delete-condition.js.map +1 -0
  37. package/dist/api/routes/admin/discounts/delete-dynamic-code.js +3 -1
  38. package/dist/api/routes/admin/discounts/delete-dynamic-code.js.map +1 -1
  39. package/dist/api/routes/admin/discounts/get-condition.d.ts +31 -0
  40. package/dist/api/routes/{store/carts/update-payment-method.js → admin/discounts/get-condition.js} +48 -45
  41. package/dist/api/routes/admin/discounts/get-condition.js.map +1 -0
  42. package/dist/api/routes/admin/discounts/get-discount-by-code.d.ts +4 -0
  43. package/dist/api/routes/admin/discounts/get-discount-by-code.js +40 -6
  44. package/dist/api/routes/admin/discounts/get-discount-by-code.js.map +1 -1
  45. package/dist/api/routes/admin/discounts/get-discount.d.ts +7 -0
  46. package/dist/api/routes/admin/discounts/get-discount.js +43 -9
  47. package/dist/api/routes/admin/discounts/get-discount.js.map +1 -1
  48. package/dist/api/routes/admin/discounts/index.d.ts +11 -3
  49. package/dist/api/routes/admin/discounts/index.js +13 -7
  50. package/dist/api/routes/admin/discounts/index.js.map +1 -1
  51. package/dist/api/routes/admin/discounts/list-discounts.d.ts +2 -6
  52. package/dist/api/routes/admin/discounts/list-discounts.js +15 -28
  53. package/dist/api/routes/admin/discounts/list-discounts.js.map +1 -1
  54. package/dist/api/routes/admin/discounts/update-condition.d.ts +55 -0
  55. package/dist/api/routes/admin/discounts/update-condition.js +184 -0
  56. package/dist/api/routes/admin/discounts/update-condition.js.map +1 -0
  57. package/dist/api/routes/admin/discounts/update-discount.d.ts +18 -12
  58. package/dist/api/routes/admin/discounts/update-discount.js +79 -33
  59. package/dist/api/routes/admin/discounts/update-discount.js.map +1 -1
  60. package/dist/api/routes/admin/draft-orders/create-draft-order.d.ts +3 -3
  61. package/dist/api/routes/admin/draft-orders/create-draft-order.js.map +1 -1
  62. package/dist/api/routes/admin/draft-orders/create-line-item.d.ts +1 -1
  63. package/dist/api/routes/admin/draft-orders/create-line-item.js.map +1 -1
  64. package/dist/api/routes/admin/draft-orders/index.js +7 -1
  65. package/dist/api/routes/admin/draft-orders/index.js.map +1 -1
  66. package/dist/api/routes/admin/draft-orders/register-payment.js +0 -1
  67. package/dist/api/routes/admin/draft-orders/register-payment.js.map +1 -1
  68. package/dist/api/routes/admin/draft-orders/update-line-item.d.ts +1 -1
  69. package/dist/api/routes/admin/draft-orders/update-line-item.js.map +1 -1
  70. package/dist/api/routes/admin/index.js +2 -0
  71. package/dist/api/routes/admin/index.js.map +1 -1
  72. package/dist/api/routes/admin/notifications/index.js.map +1 -1
  73. package/dist/api/routes/admin/notifications/list-notifications.js.map +1 -1
  74. package/dist/api/routes/admin/notifications/resend-notification.js.map +1 -1
  75. package/dist/api/routes/admin/orders/add-shipping-method.d.ts +1 -1
  76. package/dist/api/routes/admin/orders/add-shipping-method.js.map +1 -1
  77. package/dist/api/routes/admin/orders/create-claim.js +6 -0
  78. package/dist/api/routes/admin/orders/create-claim.js.map +1 -1
  79. package/dist/api/routes/admin/orders/create-order.js.map +1 -1
  80. package/dist/api/routes/admin/orders/create-swap.js +7 -3
  81. package/dist/api/routes/admin/orders/create-swap.js.map +1 -1
  82. package/dist/api/routes/admin/orders/index.d.ts +1 -1
  83. package/dist/api/routes/admin/orders/index.js +1 -3
  84. package/dist/api/routes/admin/orders/index.js.map +1 -1
  85. package/dist/api/routes/admin/orders/list-orders.js.map +1 -1
  86. package/dist/api/routes/admin/orders/update-order.js.map +1 -1
  87. package/dist/api/routes/admin/price-lists/delete-product-prices.d.ts +32 -0
  88. package/dist/api/routes/admin/{discounts/remove-valid-product.js → price-lists/delete-product-prices.js} +48 -25
  89. package/dist/api/routes/admin/price-lists/delete-product-prices.js.map +1 -0
  90. package/dist/api/routes/admin/price-lists/delete-variant-prices.d.ts +32 -0
  91. package/dist/api/routes/admin/price-lists/delete-variant-prices.js +105 -0
  92. package/dist/api/routes/admin/price-lists/delete-variant-prices.js.map +1 -0
  93. package/dist/api/routes/admin/price-lists/index.d.ts +9 -0
  94. package/dist/api/routes/admin/price-lists/index.js +6 -1
  95. package/dist/api/routes/admin/price-lists/index.js.map +1 -1
  96. package/dist/api/routes/admin/price-lists/list-price-list-products.d.ts +74 -0
  97. package/dist/api/routes/admin/price-lists/list-price-list-products.js +287 -0
  98. package/dist/api/routes/admin/price-lists/list-price-list-products.js.map +1 -0
  99. package/dist/api/routes/admin/price-lists/list-price-lists.js.map +1 -1
  100. package/dist/api/routes/admin/price-lists/update-price-list.d.ts +4 -4
  101. package/dist/api/routes/admin/price-lists/update-price-list.js +2 -2
  102. package/dist/api/routes/admin/price-lists/update-price-list.js.map +1 -1
  103. package/dist/api/routes/admin/product-tags/list-product-tags.d.ts +2 -1
  104. package/dist/api/routes/admin/product-tags/list-product-tags.js +6 -3
  105. package/dist/api/routes/admin/product-tags/list-product-tags.js.map +1 -1
  106. package/dist/api/routes/admin/product-types/list-product-types.d.ts +2 -1
  107. package/dist/api/routes/admin/product-types/list-product-types.js +6 -3
  108. package/dist/api/routes/admin/product-types/list-product-types.js.map +1 -1
  109. package/dist/api/routes/admin/products/index.d.ts +2 -1
  110. package/dist/api/routes/admin/products/index.js +7 -2
  111. package/dist/api/routes/admin/products/index.js.map +1 -1
  112. package/dist/api/routes/admin/products/list-products.d.ts +2 -1
  113. package/dist/api/routes/admin/products/list-products.js +31 -65
  114. package/dist/api/routes/admin/products/list-products.js.map +1 -1
  115. package/dist/api/routes/admin/products/list-variants.d.ts +35 -0
  116. package/dist/api/routes/admin/products/list-variants.js +173 -0
  117. package/dist/api/routes/admin/products/list-variants.js.map +1 -0
  118. package/dist/api/routes/admin/products/update-variant.js +11 -7
  119. package/dist/api/routes/admin/products/update-variant.js.map +1 -1
  120. package/dist/api/routes/admin/regions/index.d.ts +1 -1
  121. package/dist/api/routes/admin/shipping-options/list-shipping-options.d.ts +2 -2
  122. package/dist/api/routes/admin/shipping-options/list-shipping-options.js +2 -2
  123. package/dist/api/routes/admin/shipping-options/list-shipping-options.js.map +1 -1
  124. package/dist/api/routes/admin/store/get-store.js.map +1 -1
  125. package/dist/api/routes/admin/swaps/index.js +3 -0
  126. package/dist/api/routes/admin/swaps/index.js.map +1 -1
  127. package/dist/api/routes/admin/tax-rates/list-tax-rates.js.map +1 -1
  128. package/dist/api/routes/admin/tax-rates/utils/get-query-config.d.ts +1 -1
  129. package/dist/api/routes/admin/tax-rates/utils/get-query-config.js +4 -2
  130. package/dist/api/routes/admin/tax-rates/utils/get-query-config.js.map +1 -1
  131. package/dist/api/routes/admin/uploads/index.d.ts +1 -1
  132. package/dist/api/routes/admin/users/update-user.d.ts +1 -1
  133. package/dist/api/routes/admin/users/update-user.js.map +1 -1
  134. package/dist/api/routes/store/auth/create-session.js +4 -5
  135. package/dist/api/routes/store/auth/create-session.js.map +1 -1
  136. package/dist/api/routes/store/carts/create-cart.js +8 -5
  137. package/dist/api/routes/store/carts/create-cart.js.map +1 -1
  138. package/dist/api/routes/store/carts/create-line-item.d.ts +1 -1
  139. package/dist/api/routes/store/carts/create-line-item.js +9 -6
  140. package/dist/api/routes/store/carts/create-line-item.js.map +1 -1
  141. package/dist/api/routes/store/carts/index.d.ts +0 -1
  142. package/dist/api/routes/store/carts/index.js +1 -3
  143. package/dist/api/routes/store/carts/index.js.map +1 -1
  144. package/dist/api/routes/store/carts/update-cart.js +8 -8
  145. package/dist/api/routes/store/carts/update-cart.js.map +1 -1
  146. package/dist/api/routes/store/customers/create-customer.js +3 -4
  147. package/dist/api/routes/store/customers/create-customer.js.map +1 -1
  148. package/dist/api/routes/store/orders/index.js +0 -2
  149. package/dist/api/routes/store/orders/index.js.map +1 -1
  150. package/dist/api/routes/store/products/get-product.js +17 -5
  151. package/dist/api/routes/store/products/get-product.js.map +1 -1
  152. package/dist/api/routes/store/products/index.d.ts +2 -2
  153. package/dist/api/routes/store/products/list-products.d.ts +2 -1
  154. package/dist/api/routes/store/products/list-products.js +21 -8
  155. package/dist/api/routes/store/products/list-products.js.map +1 -1
  156. package/dist/api/routes/store/products/search.d.ts +1 -1
  157. package/dist/api/routes/store/products/search.js.map +1 -1
  158. package/dist/api/routes/store/shipping-options/list-options.js.map +1 -1
  159. package/dist/api/routes/store/swaps/create-swap.js +7 -3
  160. package/dist/api/routes/store/swaps/create-swap.js.map +1 -1
  161. package/dist/api/routes/store/variants/get-variant.js +17 -5
  162. package/dist/api/routes/store/variants/get-variant.js.map +1 -1
  163. package/dist/api/routes/store/variants/list-variants.d.ts +2 -1
  164. package/dist/api/routes/store/variants/list-variants.js +38 -9
  165. package/dist/api/routes/store/variants/list-variants.js.map +1 -1
  166. package/dist/commands/develop.js +2 -2
  167. package/dist/commands/develop.js.map +1 -1
  168. package/dist/commands/start.js +6 -0
  169. package/dist/commands/start.js.map +1 -1
  170. package/dist/controllers/customers/index.d.ts +1 -1
  171. package/dist/controllers/customers/list-customers.d.ts +1 -1
  172. package/dist/controllers/customers/list-customers.js +34 -37
  173. package/dist/controllers/customers/list-customers.js.map +1 -1
  174. package/dist/controllers/products/admin-list-products.d.ts +16 -0
  175. package/dist/controllers/products/admin-list-products.js +103 -0
  176. package/dist/controllers/products/admin-list-products.js.map +1 -0
  177. package/dist/helpers/test-request.js +26 -17
  178. package/dist/helpers/test-request.js.map +1 -1
  179. package/dist/index.d.ts +4 -59
  180. package/dist/index.js +4 -62
  181. package/dist/index.js.map +1 -1
  182. package/dist/interfaces/index.d.ts +3 -0
  183. package/dist/interfaces/index.js +3 -0
  184. package/dist/interfaces/index.js.map +1 -1
  185. package/dist/interfaces/models/base-entity.d.ts +8 -0
  186. package/dist/interfaces/models/base-entity.js +36 -0
  187. package/dist/interfaces/models/base-entity.js.map +1 -0
  188. package/dist/interfaces/models/soft-deletable-entity.d.ts +4 -0
  189. package/dist/interfaces/models/soft-deletable-entity.js +43 -0
  190. package/dist/interfaces/models/soft-deletable-entity.js.map +1 -0
  191. package/dist/interfaces/price-selection-strategy.d.ts +50 -0
  192. package/dist/interfaces/price-selection-strategy.js +34 -0
  193. package/dist/interfaces/price-selection-strategy.js.map +1 -0
  194. package/dist/interfaces/tax-service.d.ts +6 -0
  195. package/dist/interfaces/tax-service.js +31 -0
  196. package/dist/interfaces/tax-service.js.map +1 -1
  197. package/dist/interfaces/transaction-base-service.d.ts +23 -0
  198. package/dist/interfaces/transaction-base-service.js +200 -0
  199. package/dist/interfaces/transaction-base-service.js.map +1 -0
  200. package/dist/loaders/api.d.ts +9 -5
  201. package/dist/loaders/api.js +2 -6
  202. package/dist/loaders/api.js.map +1 -1
  203. package/dist/loaders/config.d.ts +3 -0
  204. package/dist/loaders/config.js +47 -0
  205. package/dist/loaders/config.js.map +1 -0
  206. package/dist/loaders/database.d.ts +8 -4
  207. package/dist/loaders/database.js.map +1 -1
  208. package/dist/loaders/defaults.d.ts +4 -3
  209. package/dist/loaders/defaults.js +39 -31
  210. package/dist/loaders/defaults.js.map +1 -1
  211. package/dist/loaders/express.d.ts +7 -4
  212. package/dist/loaders/express.js +7 -5
  213. package/dist/loaders/express.js.map +1 -1
  214. package/dist/loaders/index.d.ts +13 -8
  215. package/dist/loaders/index.js +29 -54
  216. package/dist/loaders/index.js.map +1 -1
  217. package/dist/loaders/logger.d.ts +1 -0
  218. package/dist/loaders/logger.js.map +1 -1
  219. package/dist/loaders/models.d.ts +8 -3
  220. package/dist/loaders/models.js +19 -17
  221. package/dist/loaders/models.js.map +1 -1
  222. package/dist/loaders/passport.d.ts +7 -4
  223. package/dist/loaders/passport.js +23 -21
  224. package/dist/loaders/passport.js.map +1 -1
  225. package/dist/loaders/plugins.d.ts +38 -10
  226. package/dist/loaders/plugins.js +30 -26
  227. package/dist/loaders/plugins.js.map +1 -1
  228. package/dist/loaders/redis.d.ts +8 -5
  229. package/dist/loaders/redis.js +3 -3
  230. package/dist/loaders/redis.js.map +1 -1
  231. package/dist/loaders/repositories.d.ts +7 -3
  232. package/dist/loaders/repositories.js +1 -1
  233. package/dist/loaders/repositories.js.map +1 -1
  234. package/dist/loaders/search-index.d.ts +4 -3
  235. package/dist/loaders/search-index.js.map +1 -1
  236. package/dist/loaders/services.d.ts +10 -5
  237. package/dist/loaders/services.js.map +1 -1
  238. package/dist/loaders/strategies.d.ts +1 -1
  239. package/dist/loaders/subscribers.d.ts +7 -3
  240. package/dist/loaders/subscribers.js.map +1 -1
  241. package/dist/migrations/1646324713514-discount_conditions.d.ts +6 -0
  242. package/dist/migrations/1646324713514-discount_conditions.js +335 -0
  243. package/dist/migrations/1646324713514-discount_conditions.js.map +1 -0
  244. package/dist/migrations/1648600574750-add_line_item_adjustments.d.ts +6 -0
  245. package/dist/migrations/1648600574750-add_line_item_adjustments.js +101 -0
  246. package/dist/migrations/1648600574750-add_line_item_adjustments.js.map +1 -0
  247. package/dist/migrations/1648641130007-tax_line_constraints.d.ts +6 -0
  248. package/dist/migrations/1648641130007-tax_line_constraints.js +77 -0
  249. package/dist/migrations/1648641130007-tax_line_constraints.js.map +1 -0
  250. package/dist/migrations/1649775522087-add_batch_job_model.d.ts +6 -0
  251. package/dist/migrations/1649775522087-add_batch_job_model.js +77 -0
  252. package/dist/migrations/1649775522087-add_batch_job_model.js.map +1 -0
  253. package/dist/models/address.d.ts +3 -6
  254. package/dist/models/address.js +23 -24
  255. package/dist/models/address.js.map +1 -1
  256. package/dist/models/batch-job.d.ts +55 -0
  257. package/dist/models/batch-job.js +118 -0
  258. package/dist/models/batch-job.js.map +1 -0
  259. package/dist/models/cart.d.ts +5 -8
  260. package/dist/models/cart.js +35 -36
  261. package/dist/models/cart.js.map +1 -1
  262. package/dist/models/claim-image.d.ts +3 -6
  263. package/dist/models/claim-image.js +22 -23
  264. package/dist/models/claim-image.js.map +1 -1
  265. package/dist/models/claim-item.d.ts +3 -6
  266. package/dist/models/claim-item.js +25 -24
  267. package/dist/models/claim-item.js.map +1 -1
  268. package/dist/models/claim-order.d.ts +4 -4
  269. package/dist/models/claim-order.js +28 -13
  270. package/dist/models/claim-order.js.map +1 -1
  271. package/dist/models/claim-tag.d.ts +3 -6
  272. package/dist/models/claim-tag.js +22 -23
  273. package/dist/models/claim-tag.js.map +1 -1
  274. package/dist/models/country.d.ts +1 -1
  275. package/dist/models/country.js +1 -1
  276. package/dist/models/country.js.map +1 -1
  277. package/dist/models/custom-shipping-option.d.ts +3 -6
  278. package/dist/models/custom-shipping-option.js +23 -24
  279. package/dist/models/custom-shipping-option.js.map +1 -1
  280. package/dist/models/customer-group.d.ts +3 -6
  281. package/dist/models/customer-group.js +26 -26
  282. package/dist/models/customer-group.js.map +1 -1
  283. package/dist/models/customer.d.ts +3 -6
  284. package/dist/models/customer.js +23 -25
  285. package/dist/models/customer.js.map +1 -1
  286. package/dist/models/discount-condition-customer-group.d.ts +39 -0
  287. package/dist/models/discount-condition-customer-group.js +84 -0
  288. package/dist/models/discount-condition-customer-group.js.map +1 -0
  289. package/dist/models/discount-condition-product-collection.d.ts +39 -0
  290. package/dist/models/discount-condition-product-collection.js +84 -0
  291. package/dist/models/discount-condition-product-collection.js.map +1 -0
  292. package/dist/models/discount-condition-product-tag.d.ts +39 -0
  293. package/dist/models/discount-condition-product-tag.js +84 -0
  294. package/dist/models/discount-condition-product-tag.js.map +1 -0
  295. package/dist/models/discount-condition-product-type.d.ts +39 -0
  296. package/dist/models/discount-condition-product-type.js +84 -0
  297. package/dist/models/discount-condition-product-type.js.map +1 -0
  298. package/dist/models/discount-condition-product.d.ts +39 -0
  299. package/dist/models/discount-condition-product.js +84 -0
  300. package/dist/models/discount-condition-product.js.map +1 -0
  301. package/dist/models/discount-condition.d.ts +65 -0
  302. package/dist/models/discount-condition.js +209 -0
  303. package/dist/models/discount-condition.js.map +1 -0
  304. package/dist/models/discount-rule.d.ts +8 -11
  305. package/dist/models/discount-rule.js +28 -38
  306. package/dist/models/discount-rule.js.map +1 -1
  307. package/dist/models/discount.d.ts +7 -10
  308. package/dist/models/discount.js +30 -30
  309. package/dist/models/discount.js.map +1 -1
  310. package/dist/models/draft-order.d.ts +3 -5
  311. package/dist/models/draft-order.js +23 -20
  312. package/dist/models/draft-order.js.map +1 -1
  313. package/dist/models/fulfillment-item.js.map +1 -1
  314. package/dist/models/fulfillment-provider.js.map +1 -1
  315. package/dist/models/fulfillment.d.ts +5 -7
  316. package/dist/models/fulfillment.js +29 -21
  317. package/dist/models/fulfillment.js.map +1 -1
  318. package/dist/models/gift-card-transaction.js +2 -5
  319. package/dist/models/gift-card-transaction.js.map +1 -1
  320. package/dist/models/gift-card.d.ts +3 -6
  321. package/dist/models/gift-card.js +22 -23
  322. package/dist/models/gift-card.js.map +1 -1
  323. package/dist/models/idempotency-key.d.ts +2 -2
  324. package/dist/models/idempotency-key.js +2 -3
  325. package/dist/models/idempotency-key.js.map +1 -1
  326. package/dist/models/image.d.ts +3 -6
  327. package/dist/models/image.js +22 -23
  328. package/dist/models/image.js.map +1 -1
  329. package/dist/models/index.d.ts +67 -0
  330. package/dist/models/index.js +80 -0
  331. package/dist/models/index.js.map +1 -0
  332. package/dist/models/invite.d.ts +3 -6
  333. package/dist/models/invite.js +22 -24
  334. package/dist/models/invite.js.map +1 -1
  335. package/dist/models/line-item-adjustment.d.ts +13 -0
  336. package/dist/models/line-item-adjustment.js +76 -0
  337. package/dist/models/line-item-adjustment.js.map +1 -0
  338. package/dist/models/line-item-tax-line.js +4 -6
  339. package/dist/models/line-item-tax-line.js.map +1 -1
  340. package/dist/models/line-item.d.ts +5 -5
  341. package/dist/models/line-item.js +29 -19
  342. package/dist/models/line-item.js.map +1 -1
  343. package/dist/models/money-amount.d.ts +2 -5
  344. package/dist/models/money-amount.js +26 -26
  345. package/dist/models/money-amount.js.map +1 -1
  346. package/dist/models/note.d.ts +3 -6
  347. package/dist/models/note.js +22 -23
  348. package/dist/models/note.js.map +1 -1
  349. package/dist/models/notification.d.ts +3 -5
  350. package/dist/models/notification.js +22 -19
  351. package/dist/models/notification.js.map +1 -1
  352. package/dist/models/oauth.d.ts +1 -1
  353. package/dist/models/oauth.js +2 -5
  354. package/dist/models/oauth.js.map +1 -1
  355. package/dist/models/order.d.ts +3 -5
  356. package/dist/models/order.js +25 -21
  357. package/dist/models/order.js.map +1 -1
  358. package/dist/models/payment-provider.js.map +1 -1
  359. package/dist/models/payment-session.d.ts +3 -5
  360. package/dist/models/payment-session.js +22 -19
  361. package/dist/models/payment-session.js.map +1 -1
  362. package/dist/models/payment.d.ts +4 -6
  363. package/dist/models/payment.js +22 -19
  364. package/dist/models/payment.js.map +1 -1
  365. package/dist/models/price-list.d.ts +4 -7
  366. package/dist/models/price-list.js +30 -28
  367. package/dist/models/price-list.js.map +1 -1
  368. package/dist/models/product-collection.d.ts +4 -7
  369. package/dist/models/product-collection.js +25 -24
  370. package/dist/models/product-collection.js.map +1 -1
  371. package/dist/models/product-option-value.d.ts +3 -6
  372. package/dist/models/product-option-value.js +24 -26
  373. package/dist/models/product-option-value.js.map +1 -1
  374. package/dist/models/product-option.d.ts +3 -6
  375. package/dist/models/product-option.js +23 -24
  376. package/dist/models/product-option.js.map +1 -1
  377. package/dist/models/product-tag.d.ts +3 -6
  378. package/dist/models/product-tag.js +22 -23
  379. package/dist/models/product-tag.js.map +1 -1
  380. package/dist/models/product-tax-rate.d.ts +1 -1
  381. package/dist/models/product-tax-rate.js.map +1 -1
  382. package/dist/models/product-type-tax-rate.d.ts +1 -1
  383. package/dist/models/product-type-tax-rate.js.map +1 -1
  384. package/dist/models/product-type.d.ts +3 -6
  385. package/dist/models/product-type.js +22 -23
  386. package/dist/models/product-type.js.map +1 -1
  387. package/dist/models/product-variant.d.ts +3 -6
  388. package/dist/models/product-variant.js +30 -26
  389. package/dist/models/product-variant.js.map +1 -1
  390. package/dist/models/product.d.ts +3 -6
  391. package/dist/models/product.js +25 -22
  392. package/dist/models/product.js.map +1 -1
  393. package/dist/models/refund.d.ts +3 -5
  394. package/dist/models/refund.js +22 -17
  395. package/dist/models/refund.js.map +1 -1
  396. package/dist/models/region.d.ts +3 -6
  397. package/dist/models/region.js +23 -24
  398. package/dist/models/region.js.map +1 -1
  399. package/dist/models/return-item.d.ts +1 -1
  400. package/dist/models/return-item.js.map +1 -1
  401. package/dist/models/return-reason.d.ts +3 -6
  402. package/dist/models/return-reason.js +24 -25
  403. package/dist/models/return-reason.js.map +1 -1
  404. package/dist/models/return.d.ts +5 -7
  405. package/dist/models/return.js +29 -21
  406. package/dist/models/return.js.map +1 -1
  407. package/dist/models/shipping-method-tax-line.js +4 -6
  408. package/dist/models/shipping-method-tax-line.js.map +1 -1
  409. package/dist/models/shipping-method.d.ts +1 -1
  410. package/dist/models/shipping-method.js +2 -5
  411. package/dist/models/shipping-method.js.map +1 -1
  412. package/dist/models/shipping-option-requirement.js +2 -5
  413. package/dist/models/shipping-option-requirement.js.map +1 -1
  414. package/dist/models/shipping-option.d.ts +4 -7
  415. package/dist/models/shipping-option.js +25 -24
  416. package/dist/models/shipping-option.js.map +1 -1
  417. package/dist/models/shipping-profile.d.ts +3 -6
  418. package/dist/models/shipping-profile.js +22 -23
  419. package/dist/models/shipping-profile.js.map +1 -1
  420. package/dist/models/shipping-tax-rate.d.ts +1 -1
  421. package/dist/models/shipping-tax-rate.js.map +1 -1
  422. package/dist/models/staged-job.d.ts +1 -1
  423. package/dist/models/staged-job.js +2 -3
  424. package/dist/models/staged-job.js.map +1 -1
  425. package/dist/models/store.d.ts +3 -5
  426. package/dist/models/store.js +22 -17
  427. package/dist/models/store.js.map +1 -1
  428. package/dist/models/swap.d.ts +9 -12
  429. package/dist/models/swap.js +55 -52
  430. package/dist/models/swap.js.map +1 -1
  431. package/dist/models/tax-line.d.ts +3 -5
  432. package/dist/models/tax-line.js +20 -14
  433. package/dist/models/tax-line.js.map +1 -1
  434. package/dist/models/tax-rate.d.ts +3 -5
  435. package/dist/models/tax-rate.js +22 -19
  436. package/dist/models/tax-rate.js.map +1 -1
  437. package/dist/models/tracking-link.d.ts +3 -6
  438. package/dist/models/tracking-link.js +26 -27
  439. package/dist/models/tracking-link.js.map +1 -1
  440. package/dist/models/user.d.ts +3 -6
  441. package/dist/models/user.js +22 -23
  442. package/dist/models/user.js.map +1 -1
  443. package/dist/repositories/batch-job.d.ts +4 -0
  444. package/dist/repositories/batch-job.js +38 -0
  445. package/dist/repositories/batch-job.js.map +1 -0
  446. package/dist/repositories/cart.d.ts +2 -2
  447. package/dist/repositories/cart.js.map +1 -1
  448. package/dist/repositories/customer.d.ts +1 -1
  449. package/dist/repositories/customer.js +7 -9
  450. package/dist/repositories/customer.js.map +1 -1
  451. package/dist/repositories/discount-condition.d.ts +38 -0
  452. package/dist/repositories/discount-condition.js +398 -0
  453. package/dist/repositories/discount-condition.js.map +1 -0
  454. package/dist/repositories/line-item-adjustment.d.ts +4 -0
  455. package/dist/repositories/line-item-adjustment.js +38 -0
  456. package/dist/repositories/line-item-adjustment.js.map +1 -0
  457. package/dist/repositories/line-item-tax-line.d.ts +2 -0
  458. package/dist/repositories/line-item-tax-line.js +80 -0
  459. package/dist/repositories/line-item-tax-line.js.map +1 -1
  460. package/dist/repositories/line-item.js +1 -0
  461. package/dist/repositories/line-item.js.map +1 -1
  462. package/dist/repositories/money-amount.d.ts +2 -0
  463. package/dist/repositories/money-amount.js +77 -2
  464. package/dist/repositories/money-amount.js.map +1 -1
  465. package/dist/repositories/order.d.ts +1 -1
  466. package/dist/repositories/price-list.d.ts +8 -1
  467. package/dist/repositories/price-list.js +209 -0
  468. package/dist/repositories/price-list.js.map +1 -1
  469. package/dist/repositories/product.d.ts +2 -0
  470. package/dist/repositories/product.js +35 -17
  471. package/dist/repositories/product.js.map +1 -1
  472. package/dist/repositories/shipping-method-tax-line.d.ts +2 -0
  473. package/dist/repositories/shipping-method-tax-line.js +80 -0
  474. package/dist/repositories/shipping-method-tax-line.js.map +1 -1
  475. package/dist/scripts/discount-rule-migration.d.ts +4 -0
  476. package/dist/scripts/discount-rule-migration.js +189 -0
  477. package/dist/scripts/discount-rule-migration.js.map +1 -0
  478. package/dist/scripts/line-item-adjustment-migration.d.ts +4 -0
  479. package/dist/scripts/line-item-adjustment-migration.js +173 -0
  480. package/dist/scripts/line-item-adjustment-migration.js.map +1 -0
  481. package/dist/services/batch-job.d.ts +24 -0
  482. package/dist/services/batch-job.js +126 -0
  483. package/dist/services/batch-job.js.map +1 -0
  484. package/dist/services/cart.d.ts +66 -55
  485. package/dist/services/cart.js +1301 -1410
  486. package/dist/services/cart.js.map +1 -1
  487. package/dist/services/claim.js +62 -19
  488. package/dist/services/claim.js.map +1 -1
  489. package/dist/services/customer.d.ts +0 -7
  490. package/dist/services/customer.js +8 -35
  491. package/dist/services/customer.js.map +1 -1
  492. package/dist/services/discount-condition.d.ts +31 -0
  493. package/dist/services/discount-condition.js +232 -0
  494. package/dist/services/discount-condition.js.map +1 -0
  495. package/dist/services/discount.d.ts +50 -59
  496. package/dist/services/discount.js +272 -174
  497. package/dist/services/discount.js.map +1 -1
  498. package/dist/services/draft-order.js +1 -0
  499. package/dist/services/draft-order.js.map +1 -1
  500. package/dist/services/fulfillment-provider.js +23 -17
  501. package/dist/services/fulfillment-provider.js.map +1 -1
  502. package/dist/services/invite.d.ts +4 -2
  503. package/dist/services/invite.js +11 -9
  504. package/dist/services/invite.js.map +1 -1
  505. package/dist/services/line-item-adjustment.d.ts +87 -0
  506. package/dist/services/line-item-adjustment.js +434 -0
  507. package/dist/services/line-item-adjustment.js.map +1 -0
  508. package/dist/services/line-item.d.ts +48 -40
  509. package/dist/services/line-item.js +226 -193
  510. package/dist/services/line-item.js.map +1 -1
  511. package/dist/services/order.d.ts +0 -13
  512. package/dist/services/order.js +4 -30
  513. package/dist/services/order.js.map +1 -1
  514. package/dist/services/payment-provider.js +23 -17
  515. package/dist/services/payment-provider.js.map +1 -1
  516. package/dist/services/price-list.d.ts +35 -14
  517. package/dist/services/price-list.js +327 -56
  518. package/dist/services/price-list.js.map +1 -1
  519. package/dist/services/product-tag.d.ts +2 -2
  520. package/dist/services/product-tag.js +15 -2
  521. package/dist/services/product-tag.js.map +1 -1
  522. package/dist/services/product-type.d.ts +1 -1
  523. package/dist/services/product-type.js +14 -1
  524. package/dist/services/product-type.js.map +1 -1
  525. package/dist/services/product-variant.d.ts +26 -9
  526. package/dist/services/product-variant.js +223 -77
  527. package/dist/services/product-variant.js.map +1 -1
  528. package/dist/services/product.d.ts +24 -5
  529. package/dist/services/product.js +247 -52
  530. package/dist/services/product.js.map +1 -1
  531. package/dist/services/region.js +8 -4
  532. package/dist/services/region.js.map +1 -1
  533. package/dist/services/return.js +2 -1
  534. package/dist/services/return.js.map +1 -1
  535. package/dist/services/shipping-option.d.ts +2 -2
  536. package/dist/services/shipping-option.js +7 -4
  537. package/dist/services/shipping-option.js.map +1 -1
  538. package/dist/services/swap.d.ts +4 -1
  539. package/dist/services/swap.js +29 -16
  540. package/dist/services/swap.js.map +1 -1
  541. package/dist/services/system-tax.d.ts +2 -3
  542. package/dist/services/system-tax.js +2 -2
  543. package/dist/services/system-tax.js.map +1 -1
  544. package/dist/services/tax-provider.d.ts +2 -0
  545. package/dist/services/tax-provider.js +96 -7
  546. package/dist/services/tax-provider.js.map +1 -1
  547. package/dist/services/tax-rate.d.ts +3 -3
  548. package/dist/services/tax-rate.js +1 -1
  549. package/dist/services/tax-rate.js.map +1 -1
  550. package/dist/services/totals.d.ts +9 -8
  551. package/dist/services/totals.js +41 -88
  552. package/dist/services/totals.js.map +1 -1
  553. package/dist/strategies/cart-completion.js.map +1 -1
  554. package/dist/strategies/price-selection.d.ts +13 -0
  555. package/dist/strategies/price-selection.js +185 -0
  556. package/dist/strategies/price-selection.js.map +1 -0
  557. package/dist/subscribers/order.js +1 -7
  558. package/dist/subscribers/order.js.map +1 -1
  559. package/dist/types/batch-job.d.ts +15 -0
  560. package/dist/types/batch-job.js +63 -0
  561. package/dist/types/batch-job.js.map +1 -0
  562. package/dist/types/cart.d.ts +2 -2
  563. package/dist/types/common.d.ts +32 -13
  564. package/dist/types/common.js +1 -0
  565. package/dist/types/common.js.map +1 -1
  566. package/dist/types/discount.d.ts +68 -1
  567. package/dist/types/discount.js +129 -5
  568. package/dist/types/discount.js.map +1 -1
  569. package/dist/types/global.d.ts +43 -0
  570. package/dist/types/global.js +3 -0
  571. package/dist/types/global.js.map +1 -0
  572. package/dist/types/line-item-adjustment.d.ts +9 -0
  573. package/dist/types/line-item-adjustment.js +50 -0
  574. package/dist/types/line-item-adjustment.js.map +1 -0
  575. package/dist/types/note.d.ts +1 -1
  576. package/dist/types/price-list.d.ts +1 -0
  577. package/dist/types/price-list.js +5 -0
  578. package/dist/types/price-list.js.map +1 -1
  579. package/dist/types/price-selection.d.ts +5 -0
  580. package/dist/types/price-selection.js +35 -0
  581. package/dist/types/price-selection.js.map +1 -0
  582. package/dist/types/product-variant.d.ts +6 -0
  583. package/dist/types/product-variant.js.map +1 -1
  584. package/dist/types/product.d.ts +18 -0
  585. package/dist/types/product.js +104 -5
  586. package/dist/types/product.js.map +1 -1
  587. package/dist/types/tax-service.d.ts +2 -2
  588. package/dist/types/user.d.ts +2 -2
  589. package/dist/types/validators/exactly-one.d.ts +6 -0
  590. package/dist/types/validators/exactly-one.js +37 -0
  591. package/dist/types/validators/exactly-one.js.map +1 -0
  592. package/dist/utils/build-query.d.ts +8 -0
  593. package/dist/utils/build-query.js +114 -0
  594. package/dist/utils/build-query.js.map +1 -0
  595. package/dist/utils/date-helpers.d.ts +2 -0
  596. package/dist/utils/date-helpers.js +15 -0
  597. package/dist/utils/date-helpers.js.map +1 -0
  598. package/dist/utils/generate-entity-id.d.ts +6 -0
  599. package/dist/utils/generate-entity-id.js +19 -0
  600. package/dist/utils/generate-entity-id.js.map +1 -0
  601. package/dist/utils/get-query-config.d.ts +11 -0
  602. package/dist/utils/get-query-config.js +88 -0
  603. package/dist/utils/get-query-config.js.map +1 -0
  604. package/dist/utils/index.d.ts +4 -0
  605. package/dist/utils/index.js +17 -0
  606. package/dist/utils/index.js.map +1 -0
  607. package/dist/utils/set-metadata.d.ts +9 -0
  608. package/dist/utils/set-metadata.js +72 -0
  609. package/dist/utils/set-metadata.js.map +1 -0
  610. package/dist/utils/validate-id.d.ts +4 -0
  611. package/dist/utils/validate-id.js +47 -0
  612. package/dist/utils/validate-id.js.map +1 -0
  613. package/jest.config.js +6 -0
  614. package/package.json +10 -9
  615. package/tsconfig.spec.json +10 -0
  616. package/dist/api/routes/admin/discounts/add-valid-product.d.ts +0 -23
  617. package/dist/api/routes/admin/discounts/add-valid-product.js.map +0 -1
  618. package/dist/api/routes/admin/discounts/remove-valid-product.d.ts +0 -23
  619. package/dist/api/routes/admin/discounts/remove-valid-product.js.map +0 -1
  620. package/dist/api/routes/admin/products/get-variants.d.ts +0 -24
  621. package/dist/api/routes/admin/products/get-variants.js.map +0 -1
  622. package/dist/api/routes/store/carts/update-payment-method.d.ts +0 -38
  623. package/dist/api/routes/store/carts/update-payment-method.js.map +0 -1
  624. package/dist/config/index.d.ts +0 -14
  625. package/dist/config/index.js +0 -40
  626. package/dist/config/index.js.map +0 -1
  627. package/yarn-error.log +0 -6769
@@ -0,0 +1,434 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ var __assign = (this && this.__assign) || function () {
18
+ __assign = Object.assign || function(t) {
19
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
20
+ s = arguments[i];
21
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
22
+ t[p] = s[p];
23
+ }
24
+ return t;
25
+ };
26
+ return __assign.apply(this, arguments);
27
+ };
28
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
29
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
30
+ return new (P || (P = Promise))(function (resolve, reject) {
31
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
32
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
33
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
34
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
35
+ });
36
+ };
37
+ var __generator = (this && this.__generator) || function (thisArg, body) {
38
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
39
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
40
+ function verb(n) { return function (v) { return step([n, v]); }; }
41
+ function step(op) {
42
+ if (f) throw new TypeError("Generator is already executing.");
43
+ while (_) try {
44
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
45
+ if (y = 0, t) op = [op[0] & 2, t.value];
46
+ switch (op[0]) {
47
+ case 0: case 1: t = op; break;
48
+ case 4: _.label++; return { value: op[1], done: false };
49
+ case 5: _.label++; y = op[1]; op = [0]; continue;
50
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
51
+ default:
52
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
53
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
54
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
55
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
56
+ if (t[2]) _.ops.pop();
57
+ _.trys.pop(); continue;
58
+ }
59
+ op = body.call(thisArg, _);
60
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
61
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
62
+ }
63
+ };
64
+ var __rest = (this && this.__rest) || function (s, e) {
65
+ var t = {};
66
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
67
+ t[p] = s[p];
68
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
69
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
70
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
71
+ t[p[i]] = s[p[i]];
72
+ }
73
+ return t;
74
+ };
75
+ var __values = (this && this.__values) || function(o) {
76
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
77
+ if (m) return m.call(o);
78
+ if (o && typeof o.length === "number") return {
79
+ next: function () {
80
+ if (o && i >= o.length) o = void 0;
81
+ return { value: o && o[i++], done: !o };
82
+ }
83
+ };
84
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
85
+ };
86
+ var __read = (this && this.__read) || function (o, n) {
87
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
88
+ if (!m) return o;
89
+ var i = m.call(o), r, ar = [], e;
90
+ try {
91
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
92
+ }
93
+ catch (error) { e = { error: error }; }
94
+ finally {
95
+ try {
96
+ if (r && !r.done && (m = i["return"])) m.call(i);
97
+ }
98
+ finally { if (e) throw e.error; }
99
+ }
100
+ return ar;
101
+ };
102
+ Object.defineProperty(exports, "__esModule", { value: true });
103
+ var medusa_core_utils_1 = require("medusa-core-utils");
104
+ var medusa_interfaces_1 = require("medusa-interfaces");
105
+ /**
106
+ * Provides layer to manipulate line item adjustments.
107
+ * @extends BaseService
108
+ */
109
+ var LineItemAdjustmentService = /** @class */ (function (_super) {
110
+ __extends(LineItemAdjustmentService, _super);
111
+ function LineItemAdjustmentService(_a) {
112
+ var manager = _a.manager, lineItemAdjustmentRepository = _a.lineItemAdjustmentRepository, discountService = _a.discountService;
113
+ var _this = _super.call(this) || this;
114
+ _this.manager_ = manager;
115
+ _this.lineItemAdjustmentRepo_ = lineItemAdjustmentRepository;
116
+ _this.discountService = discountService;
117
+ return _this;
118
+ }
119
+ LineItemAdjustmentService.prototype.withTransaction = function (transactionManager) {
120
+ if (!transactionManager) {
121
+ return this;
122
+ }
123
+ var cloned = new LineItemAdjustmentService({
124
+ manager: transactionManager,
125
+ lineItemAdjustmentRepository: this.lineItemAdjustmentRepo_,
126
+ discountService: this.discountService,
127
+ });
128
+ cloned.transactionManager_ = transactionManager;
129
+ return cloned;
130
+ };
131
+ /**
132
+ * Retrieves a line item adjustment by id.
133
+ * @param id - the id of the line item adjustment to retrieve
134
+ * @param config - the config to retrieve the line item adjustment by
135
+ * @return the line item adjustment.
136
+ */
137
+ LineItemAdjustmentService.prototype.retrieve = function (id, config) {
138
+ if (config === void 0) { config = {}; }
139
+ return __awaiter(this, void 0, void 0, function () {
140
+ var lineItemAdjustmentRepo, query, lineItemAdjustment;
141
+ return __generator(this, function (_a) {
142
+ switch (_a.label) {
143
+ case 0:
144
+ lineItemAdjustmentRepo = this.manager_.getCustomRepository(this.lineItemAdjustmentRepo_);
145
+ query = this.buildQuery_({ id: id }, config);
146
+ return [4 /*yield*/, lineItemAdjustmentRepo.findOne(query)];
147
+ case 1:
148
+ lineItemAdjustment = _a.sent();
149
+ if (!lineItemAdjustment) {
150
+ throw new medusa_core_utils_1.MedusaError(medusa_core_utils_1.MedusaError.Types.NOT_FOUND, "Line item adjustment with id: ".concat(id, " was not found"));
151
+ }
152
+ return [2 /*return*/, lineItemAdjustment];
153
+ }
154
+ });
155
+ });
156
+ };
157
+ /**
158
+ * Creates a line item adjustment
159
+ * @param data - the line item adjustment to create
160
+ * @return line item adjustment
161
+ */
162
+ LineItemAdjustmentService.prototype.create = function (data) {
163
+ return __awaiter(this, void 0, void 0, function () {
164
+ var _this = this;
165
+ return __generator(this, function (_a) {
166
+ switch (_a.label) {
167
+ case 0: return [4 /*yield*/, this.atomicPhase_(function (manager) { return __awaiter(_this, void 0, void 0, function () {
168
+ var lineItemAdjustmentRepo, lineItemAdjustment;
169
+ return __generator(this, function (_a) {
170
+ switch (_a.label) {
171
+ case 0:
172
+ lineItemAdjustmentRepo = manager.getCustomRepository(this.lineItemAdjustmentRepo_);
173
+ lineItemAdjustment = lineItemAdjustmentRepo.create(data);
174
+ return [4 /*yield*/, lineItemAdjustmentRepo.save(lineItemAdjustment)];
175
+ case 1: return [2 /*return*/, _a.sent()];
176
+ }
177
+ });
178
+ }); })];
179
+ case 1: return [2 /*return*/, _a.sent()];
180
+ }
181
+ });
182
+ });
183
+ };
184
+ /**
185
+ * Creates a line item adjustment
186
+ * @param id - the line item adjustment id to update
187
+ * @param data - the line item adjustment to create
188
+ * @return line item adjustment
189
+ */
190
+ LineItemAdjustmentService.prototype.update = function (id, data) {
191
+ return __awaiter(this, void 0, void 0, function () {
192
+ var _this = this;
193
+ return __generator(this, function (_a) {
194
+ switch (_a.label) {
195
+ case 0: return [4 /*yield*/, this.atomicPhase_(function (manager) { return __awaiter(_this, void 0, void 0, function () {
196
+ var lineItemAdjustmentRepo, lineItemAdjustment, metadata, rest, _a, _b, _c, key, value, result;
197
+ var e_1, _d;
198
+ return __generator(this, function (_e) {
199
+ switch (_e.label) {
200
+ case 0:
201
+ lineItemAdjustmentRepo = manager.getCustomRepository(this.lineItemAdjustmentRepo_);
202
+ return [4 /*yield*/, this.retrieve(id)];
203
+ case 1:
204
+ lineItemAdjustment = _e.sent();
205
+ metadata = data.metadata, rest = __rest(data, ["metadata"]);
206
+ if (metadata) {
207
+ lineItemAdjustment.metadata = this.setMetadata_(lineItemAdjustment, metadata);
208
+ }
209
+ try {
210
+ for (_a = __values(Object.entries(rest)), _b = _a.next(); !_b.done; _b = _a.next()) {
211
+ _c = __read(_b.value, 2), key = _c[0], value = _c[1];
212
+ lineItemAdjustment[key] = value;
213
+ }
214
+ }
215
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
216
+ finally {
217
+ try {
218
+ if (_b && !_b.done && (_d = _a.return)) _d.call(_a);
219
+ }
220
+ finally { if (e_1) throw e_1.error; }
221
+ }
222
+ return [4 /*yield*/, lineItemAdjustmentRepo.save(lineItemAdjustment)];
223
+ case 2:
224
+ result = _e.sent();
225
+ return [2 /*return*/, result];
226
+ }
227
+ });
228
+ }); })];
229
+ case 1: return [2 /*return*/, _a.sent()];
230
+ }
231
+ });
232
+ });
233
+ };
234
+ /**
235
+ * Lists line item adjustments
236
+ * @param selector - the query object for find
237
+ * @param config - the config to be used for find
238
+ * @return the result of the find operation
239
+ */
240
+ LineItemAdjustmentService.prototype.list = function (selector, config) {
241
+ if (selector === void 0) { selector = {}; }
242
+ if (config === void 0) { config = { skip: 0, take: 20 }; }
243
+ return __awaiter(this, void 0, void 0, function () {
244
+ var lineItemAdjustmentRepo, query;
245
+ return __generator(this, function (_a) {
246
+ switch (_a.label) {
247
+ case 0:
248
+ lineItemAdjustmentRepo = this.manager_.getCustomRepository(this.lineItemAdjustmentRepo_);
249
+ query = this.buildQuery_(selector, config);
250
+ return [4 /*yield*/, lineItemAdjustmentRepo.find(query)];
251
+ case 1: return [2 /*return*/, _a.sent()];
252
+ }
253
+ });
254
+ });
255
+ };
256
+ /**
257
+ * Deletes line item adjustments matching a selector
258
+ * @param selectorOrId - the query object for find or the line item adjustment id
259
+ * @return the result of the delete operation
260
+ */
261
+ LineItemAdjustmentService.prototype.delete = function (selectorOrId) {
262
+ return __awaiter(this, void 0, void 0, function () {
263
+ var _this = this;
264
+ return __generator(this, function (_a) {
265
+ return [2 /*return*/, this.atomicPhase_(function (manager) { return __awaiter(_this, void 0, void 0, function () {
266
+ var lineItemAdjustmentRepo, query, lineItemAdjustments;
267
+ return __generator(this, function (_a) {
268
+ switch (_a.label) {
269
+ case 0:
270
+ lineItemAdjustmentRepo = manager.getCustomRepository(this.lineItemAdjustmentRepo_);
271
+ if (!(typeof selectorOrId === "string")) return [3 /*break*/, 2];
272
+ return [4 /*yield*/, this.delete({ id: selectorOrId })];
273
+ case 1: return [2 /*return*/, _a.sent()];
274
+ case 2:
275
+ query = this.buildQuery_(selectorOrId);
276
+ return [4 /*yield*/, lineItemAdjustmentRepo.find(query)];
277
+ case 3:
278
+ lineItemAdjustments = _a.sent();
279
+ return [4 /*yield*/, lineItemAdjustmentRepo.remove(lineItemAdjustments)];
280
+ case 4:
281
+ _a.sent();
282
+ return [2 /*return*/, Promise.resolve()];
283
+ }
284
+ });
285
+ }); })];
286
+ });
287
+ });
288
+ };
289
+ /**
290
+ * Creates adjustment for a line item
291
+ * @param cart - the cart object holding discounts
292
+ * @param generatedLineItem - the line item for which a line item adjustment might be created
293
+ * @param context - the line item for which a line item adjustment might be created
294
+ * @return a line item adjustment or undefined if no adjustment was created
295
+ */
296
+ LineItemAdjustmentService.prototype.generateAdjustments = function (cart, generatedLineItem, context) {
297
+ return __awaiter(this, void 0, void 0, function () {
298
+ var _this = this;
299
+ return __generator(this, function (_a) {
300
+ return [2 /*return*/, this.atomicPhase_(function (manager) { return __awaiter(_this, void 0, void 0, function () {
301
+ var _a, discount, lineItemProduct, isValid, amount, adjustments;
302
+ var _b;
303
+ return __generator(this, function (_c) {
304
+ switch (_c.label) {
305
+ case 0:
306
+ // if lineItem should not be discounted
307
+ // or lineItem is a return line item
308
+ // or the cart does not have any discounts
309
+ // then do nothing
310
+ if (!generatedLineItem.allow_discounts ||
311
+ generatedLineItem.is_return ||
312
+ !((_b = cart === null || cart === void 0 ? void 0 : cart.discounts) === null || _b === void 0 ? void 0 : _b.length)) {
313
+ return [2 /*return*/, []];
314
+ }
315
+ _a = __read(cart.discounts.filter(function (d) { return d.rule.type !== "free_shipping"; }), 1), discount = _a[0];
316
+ // if no discount is applied to the cart then return
317
+ if (!discount) {
318
+ return [2 /*return*/, []];
319
+ }
320
+ lineItemProduct = context.variant.product_id;
321
+ return [4 /*yield*/, this.discountService
322
+ .withTransaction(manager)
323
+ .validateDiscountForProduct(discount.rule_id, lineItemProduct)
324
+ // if discount is not valid for line item, then do nothing
325
+ ];
326
+ case 1:
327
+ isValid = _c.sent();
328
+ // if discount is not valid for line item, then do nothing
329
+ if (!isValid) {
330
+ return [2 /*return*/, []];
331
+ }
332
+ return [4 /*yield*/, this.discountService.calculateDiscountForLineItem(discount.id, generatedLineItem, cart)
333
+ // if discounted amount is 0, then do nothing
334
+ ];
335
+ case 2:
336
+ amount = _c.sent();
337
+ // if discounted amount is 0, then do nothing
338
+ if (amount === 0) {
339
+ return [2 /*return*/, []];
340
+ }
341
+ adjustments = [
342
+ {
343
+ amount: amount,
344
+ discount_id: discount.id,
345
+ description: "discount",
346
+ },
347
+ ];
348
+ return [2 /*return*/, adjustments];
349
+ }
350
+ });
351
+ }); })];
352
+ });
353
+ });
354
+ };
355
+ /**
356
+ * Creates adjustment for a line item
357
+ * @param cart - the cart object holding discounts
358
+ * @param lineItem - the line item for which a line item adjustment might be created
359
+ * @return a line item adjustment or undefined if no adjustment was created
360
+ */
361
+ LineItemAdjustmentService.prototype.createAdjustmentForLineItem = function (cart, lineItem) {
362
+ return __awaiter(this, void 0, void 0, function () {
363
+ var adjustments, createdAdjustments, adjustments_1, adjustments_1_1, adjustment, created, e_2_1;
364
+ var e_2, _a;
365
+ return __generator(this, function (_b) {
366
+ switch (_b.label) {
367
+ case 0: return [4 /*yield*/, this.generateAdjustments(cart, lineItem, {
368
+ variant: lineItem.variant,
369
+ })];
370
+ case 1:
371
+ adjustments = _b.sent();
372
+ createdAdjustments = [];
373
+ _b.label = 2;
374
+ case 2:
375
+ _b.trys.push([2, 7, 8, 9]);
376
+ adjustments_1 = __values(adjustments), adjustments_1_1 = adjustments_1.next();
377
+ _b.label = 3;
378
+ case 3:
379
+ if (!!adjustments_1_1.done) return [3 /*break*/, 6];
380
+ adjustment = adjustments_1_1.value;
381
+ return [4 /*yield*/, this.create(__assign({ item_id: lineItem.id }, adjustment))];
382
+ case 4:
383
+ created = _b.sent();
384
+ createdAdjustments.push(created);
385
+ _b.label = 5;
386
+ case 5:
387
+ adjustments_1_1 = adjustments_1.next();
388
+ return [3 /*break*/, 3];
389
+ case 6: return [3 /*break*/, 9];
390
+ case 7:
391
+ e_2_1 = _b.sent();
392
+ e_2 = { error: e_2_1 };
393
+ return [3 /*break*/, 9];
394
+ case 8:
395
+ try {
396
+ if (adjustments_1_1 && !adjustments_1_1.done && (_a = adjustments_1.return)) _a.call(adjustments_1);
397
+ }
398
+ finally { if (e_2) throw e_2.error; }
399
+ return [7 /*endfinally*/];
400
+ case 9: return [2 /*return*/, createdAdjustments];
401
+ }
402
+ });
403
+ });
404
+ };
405
+ /**
406
+ * Creates adjustment for a line item
407
+ * @param cart - the cart object holding discounts
408
+ * @param lineItem - the line item for which a line item adjustment might be created
409
+ * @return if a lineItem was given, returns a line item adjustment or undefined if no adjustment was created
410
+ * otherwise returns an array of line item adjustments for each line item in the cart
411
+ */
412
+ LineItemAdjustmentService.prototype.createAdjustments = function (cart, lineItem) {
413
+ return __awaiter(this, void 0, void 0, function () {
414
+ var _this = this;
415
+ return __generator(this, function (_a) {
416
+ switch (_a.label) {
417
+ case 0:
418
+ if (!lineItem) return [3 /*break*/, 2];
419
+ return [4 /*yield*/, this.createAdjustmentForLineItem(cart, lineItem)];
420
+ case 1: return [2 /*return*/, _a.sent()];
421
+ case 2:
422
+ if (!cart.items) {
423
+ return [2 /*return*/, []];
424
+ }
425
+ return [4 /*yield*/, Promise.all(cart.items.map(function (li) { return _this.createAdjustmentForLineItem(cart, li); }))];
426
+ case 3: return [2 /*return*/, _a.sent()];
427
+ }
428
+ });
429
+ });
430
+ };
431
+ return LineItemAdjustmentService;
432
+ }(medusa_interfaces_1.BaseService));
433
+ exports.default = LineItemAdjustmentService;
434
+ //# sourceMappingURL=line-item-adjustment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"line-item-adjustment.js","sourceRoot":"","sources":["../../src/services/line-item-adjustment.ts"],"names":[],"mappings":"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"}
@@ -1,49 +1,51 @@
1
- export default LineItemService;
2
- declare const LineItemService_base: any;
1
+ import { BaseService } from "medusa-interfaces";
2
+ import { EntityManager } from "typeorm";
3
+ import { LineItemRepository } from "../repositories/line-item";
4
+ import { LineItemTaxLineRepository } from "../repositories/line-item-tax-line";
5
+ import { ProductService, RegionService, ProductVariantService } from "./index";
6
+ import { CartRepository } from "../repositories/cart";
7
+ import { LineItem } from "../models/line-item";
8
+ import LineItemAdjustmentService from "./line-item-adjustment";
9
+ import { Cart } from "../models/cart";
10
+ declare type InjectedDependencies = {
11
+ manager: EntityManager;
12
+ lineItemRepository: typeof LineItemRepository;
13
+ lineItemTaxLineRepository: typeof LineItemTaxLineRepository;
14
+ cartRepository: typeof CartRepository;
15
+ productVariantService: ProductVariantService;
16
+ productService: ProductService;
17
+ regionService: RegionService;
18
+ lineItemAdjustmentService: LineItemAdjustmentService;
19
+ };
3
20
  /**
4
21
  * Provides layer to manipulate line items.
5
22
  * @extends BaseService
6
23
  */
7
- declare class LineItemService extends LineItemService_base {
8
- [x: string]: any;
9
- constructor({ manager, lineItemRepository, lineItemTaxLineRepository, productVariantService, productService, regionService, cartRepository, }: {
10
- manager: any;
11
- lineItemRepository: any;
12
- lineItemTaxLineRepository: any;
13
- productVariantService: any;
14
- productService: any;
15
- regionService: any;
16
- cartRepository: any;
17
- });
18
- /** @private @const {EntityManager} */
19
- private manager_;
20
- /** @private @const {LineItemRepository} */
21
- private lineItemRepository_;
22
- /** @private @const {typeof LineItemTaxLineRepository} */
23
- private itemTaxLineRepo_;
24
- /** @private @const {ProductVariantService} */
25
- private productVariantService_;
26
- /** @private @const {ProductService} */
27
- private productService_;
28
- /** @private @const {RegionService} */
29
- private regionService_;
30
- /** @private @const {CartRepository} */
31
- private cartRepository_;
32
- withTransaction(transactionManager: any): LineItemService;
24
+ declare class LineItemService extends BaseService {
25
+ protected readonly manager_: EntityManager;
26
+ protected readonly lineItemRepository_: typeof LineItemRepository;
27
+ protected readonly itemTaxLineRepo_: typeof LineItemTaxLineRepository;
28
+ protected readonly cartRepository_: typeof CartRepository;
29
+ protected readonly productVariantService_: ProductVariantService;
30
+ protected readonly productService_: ProductService;
31
+ protected readonly regionService_: RegionService;
32
+ protected readonly lineItemAdjustmentService_: LineItemAdjustmentService;
33
+ constructor({ manager, lineItemRepository, lineItemTaxLineRepository, productVariantService, productService, regionService, cartRepository, lineItemAdjustmentService, }: InjectedDependencies);
34
+ withTransaction(transactionManager: EntityManager): LineItemService;
33
35
  list(selector: any, config?: {
34
36
  skip: number;
35
37
  take: number;
36
38
  order: {
37
39
  created_at: string;
38
40
  };
39
- }): Promise<any>;
41
+ }): Promise<LineItem[]>;
40
42
  /**
41
43
  * Retrieves a line item by its id.
42
44
  * @param {string} id - the id of the line item to retrieve
43
45
  * @param {object} config - the config to be used at query building
44
- * @return {LineItem} the line item
46
+ * @return {Promise<LineItem | never>} the line item
45
47
  */
46
- retrieve(id: string, config?: object): LineItem;
48
+ retrieve(id: string, config?: {}): Promise<LineItem | never>;
47
49
  /**
48
50
  * Creates return line items for a given cart based on the return items in a
49
51
  * return.
@@ -52,24 +54,30 @@ declare class LineItemService extends LineItemService_base {
52
54
  * @return {Promise<LineItem[]>} the created line items
53
55
  */
54
56
  createReturnLines(returnId: string, cartId: string): Promise<LineItem[]>;
55
- generate(variantId: any, regionId: any, quantity: any, config?: {}): Promise<any>;
57
+ generate(variantId: string, regionId: string, quantity: number, context?: {
58
+ unit_price?: number;
59
+ metadata?: Record<string, unknown>;
60
+ customer_id?: string;
61
+ cart?: Cart;
62
+ }): Promise<LineItem>;
56
63
  /**
57
64
  * Create a line item
58
- * @param {LineItem} lineItem - the line item object to create
59
- * @return {LineItem} the created line item
65
+ * @param {Partial<LineItem>} data - the line item object to create
66
+ * @return {Promise<LineItem>} the created line item
60
67
  */
61
- create(lineItem: LineItem): LineItem;
68
+ create(data: Partial<LineItem>): Promise<LineItem>;
62
69
  /**
63
70
  * Updates a line item
64
71
  * @param {string} id - the id of the line item to update
65
- * @param {object} update - the properties to update on line item
66
- * @return {LineItem} the update line item
72
+ * @param {Partial<LineItem>} data - the properties to update on line item
73
+ * @return {Promise<LineItem>} the update line item
67
74
  */
68
- update(id: string, update: object): LineItem;
75
+ update(id: string, data: Partial<LineItem>): Promise<LineItem>;
69
76
  /**
70
77
  * Deletes a line item.
71
78
  * @param {string} id - the id of the line item to delete
72
- * @return {Promise} the result of the delete operation
79
+ * @return {Promise<LineItem | undefined>} the result of the delete operation
73
80
  */
74
- delete(id: string): Promise<any>;
81
+ delete(id: string): Promise<LineItem | undefined>;
75
82
  }
83
+ export default LineItemService;