@mercurjs/core 2.2.0-canary.2 → 2.2.0-canary.21

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 (992) hide show
  1. package/.medusa/server/src/api/admin/claims/[id]/outbound/items/route.d.ts +20 -0
  2. package/.medusa/server/src/api/admin/claims/[id]/outbound/items/route.js +66 -0
  3. package/.medusa/server/src/api/admin/claims/[id]/request/route.d.ts +10 -0
  4. package/.medusa/server/src/api/admin/claims/[id]/request/route.js +80 -0
  5. package/.medusa/server/src/api/admin/collections/[id]/route.d.ts +7 -0
  6. package/.medusa/server/src/api/admin/collections/[id]/route.js +48 -0
  7. package/.medusa/server/src/api/admin/collections/middlewares.d.ts +2 -0
  8. package/.medusa/server/src/api/admin/collections/middlewares.js +55 -0
  9. package/.medusa/server/src/api/admin/{product-brands → collections}/query-config.d.ts +2 -2
  10. package/.medusa/server/src/api/admin/collections/query-config.js +29 -0
  11. package/.medusa/server/src/api/admin/collections/route.d.ts +6 -0
  12. package/.medusa/server/src/api/admin/collections/route.js +36 -0
  13. package/.medusa/server/src/api/admin/collections/validators.d.ts +271 -0
  14. package/.medusa/server/src/api/admin/collections/validators.js +42 -0
  15. package/.medusa/server/src/api/admin/commission-rates/query-config.js +6 -4
  16. package/.medusa/server/src/api/admin/commission-rates/validators.d.ts +53 -26
  17. package/.medusa/server/src/api/admin/commission-rates/validators.js +11 -8
  18. package/.medusa/server/src/api/{vendor/product-brands → admin/customer-groups}/middlewares.d.ts +1 -1
  19. package/.medusa/server/src/api/admin/customer-groups/middlewares.js +48 -0
  20. package/.medusa/server/src/api/admin/customer-groups/validators.d.ts +753 -0
  21. package/.medusa/server/src/api/admin/customer-groups/validators.js +13 -0
  22. package/.medusa/server/src/api/admin/exchanges/[id]/outbound/items/route.d.ts +22 -0
  23. package/.medusa/server/src/api/admin/exchanges/[id]/outbound/items/route.js +68 -0
  24. package/.medusa/server/src/api/admin/exchanges/[id]/request/route.d.ts +10 -0
  25. package/.medusa/server/src/api/admin/exchanges/[id]/request/route.js +81 -0
  26. package/.medusa/server/src/api/admin/members/validators.d.ts +2 -2
  27. package/.medusa/server/src/api/admin/middlewares.js +31 -40
  28. package/.medusa/server/src/api/admin/offers/query-config.js +8 -8
  29. package/.medusa/server/src/api/admin/offers/validators.d.ts +8 -8
  30. package/.medusa/server/src/api/admin/order-edits/[id]/confirm/route.d.ts +12 -0
  31. package/.medusa/server/src/api/admin/order-edits/[id]/confirm/route.js +27 -0
  32. package/.medusa/server/src/api/admin/order-edits/[id]/items/route.d.ts +26 -0
  33. package/.medusa/server/src/api/admin/order-edits/[id]/items/route.js +57 -0
  34. package/.medusa/server/src/api/admin/order-groups/apply-request-filter.d.ts +2 -0
  35. package/.medusa/server/src/api/admin/order-groups/apply-request-filter.js +140 -0
  36. package/.medusa/server/src/api/admin/order-groups/middlewares.js +3 -1
  37. package/.medusa/server/src/api/admin/order-groups/validators.d.ts +7 -4
  38. package/.medusa/server/src/api/admin/order-groups/validators.js +7 -1
  39. package/.medusa/server/src/api/admin/orders/[id]/commission-lines/route.d.ts +7 -0
  40. package/.medusa/server/src/api/admin/orders/[id]/commission-lines/route.js +17 -0
  41. package/.medusa/server/src/api/admin/orders/middlewares.d.ts +2 -0
  42. package/.medusa/server/src/api/admin/orders/middlewares.js +42 -0
  43. package/.medusa/server/src/api/admin/orders/resolve-order-seller-id.d.ts +11 -0
  44. package/.medusa/server/src/api/admin/orders/resolve-order-seller-id.js +24 -0
  45. package/.medusa/server/src/api/admin/orders/validators.d.ts +73 -27
  46. package/.medusa/server/src/api/admin/orders/validators.js +9 -29
  47. package/.medusa/server/src/api/admin/payouts/validators.d.ts +2 -2
  48. package/.medusa/server/src/api/admin/product-attributes/[id]/route.js +4 -4
  49. package/.medusa/server/src/api/admin/product-attributes/[id]/values/[value_id]/route.js +4 -4
  50. package/.medusa/server/src/api/admin/product-attributes/[id]/values/route.js +2 -2
  51. package/.medusa/server/src/api/admin/product-attributes/middlewares.js +15 -1
  52. package/.medusa/server/src/api/admin/product-attributes/query-config.js +1 -2
  53. package/.medusa/server/src/api/admin/product-attributes/route.js +7 -4
  54. package/.medusa/server/src/api/admin/product-attributes/validators.d.ts +21 -25
  55. package/.medusa/server/src/api/admin/product-attributes/validators.js +2 -15
  56. package/.medusa/server/src/api/admin/product-categories/[id]/products/route.js +3 -3
  57. package/.medusa/server/src/api/admin/product-categories/[id]/route.js +8 -10
  58. package/.medusa/server/src/api/admin/product-categories/query-config.js +7 -2
  59. package/.medusa/server/src/api/admin/product-categories/route.js +5 -8
  60. package/.medusa/server/src/api/admin/product-categories/validators.d.ts +70 -8
  61. package/.medusa/server/src/api/admin/product-categories/validators.js +11 -1
  62. package/.medusa/server/src/api/admin/product-changes/[id]/cancel/route.js +5 -6
  63. package/.medusa/server/src/api/admin/product-changes/[id]/confirm/route.js +5 -5
  64. package/.medusa/server/src/api/admin/products/[id]/attributes/[attribute_id]/route.d.ts +10 -4
  65. package/.medusa/server/src/api/admin/products/[id]/attributes/[attribute_id]/route.js +60 -23
  66. package/.medusa/server/src/api/admin/products/[id]/attributes/batch/route.d.ts +3 -2
  67. package/.medusa/server/src/api/admin/products/[id]/attributes/batch/route.js +11 -22
  68. package/.medusa/server/src/api/admin/products/[id]/attributes/route.d.ts +2 -3
  69. package/.medusa/server/src/api/admin/products/[id]/attributes/route.js +40 -25
  70. package/.medusa/server/src/api/admin/products/[id]/confirm/route.d.ts +12 -0
  71. package/.medusa/server/src/api/admin/products/[id]/confirm/route.js +16 -6
  72. package/.medusa/server/src/api/admin/products/[id]/preview/route.d.ts +8 -1
  73. package/.medusa/server/src/api/admin/products/[id]/preview/route.js +20 -7
  74. package/.medusa/server/src/api/admin/products/[id]/reject/route.d.ts +8 -0
  75. package/.medusa/server/src/api/admin/products/[id]/reject/route.js +13 -8
  76. package/.medusa/server/src/api/admin/products/[id]/request-changes/route.d.ts +9 -0
  77. package/.medusa/server/src/api/admin/products/[id]/request-changes/route.js +16 -10
  78. package/.medusa/server/src/api/admin/products/[id]/route.js +16 -6
  79. package/.medusa/server/src/api/admin/products/[id]/variants/[variant_id]/route.js +5 -5
  80. package/.medusa/server/src/api/admin/products/[id]/variants/route.js +22 -4
  81. package/.medusa/server/src/api/admin/products/middlewares.js +10 -4
  82. package/.medusa/server/src/api/admin/products/query-config.js +12 -18
  83. package/.medusa/server/src/api/admin/products/route.js +14 -8
  84. package/.medusa/server/src/api/admin/products/validators.d.ts +1053 -203
  85. package/.medusa/server/src/api/admin/products/validators.js +119 -16
  86. package/.medusa/server/src/api/admin/returns/[id]/receive/confirm/route.d.ts +9 -0
  87. package/.medusa/server/src/api/admin/returns/[id]/receive/confirm/route.js +35 -0
  88. package/.medusa/server/src/api/admin/sellers/validators.d.ts +20 -21
  89. package/.medusa/server/src/api/admin/sellers/validators.js +3 -4
  90. package/.medusa/server/src/api/admin/shipping-options/middlewares.d.ts +2 -0
  91. package/.medusa/server/src/api/admin/shipping-options/middlewares.js +46 -0
  92. package/.medusa/server/src/api/admin/shipping-profiles/middlewares.d.ts +2 -0
  93. package/.medusa/server/src/api/admin/shipping-profiles/middlewares.js +46 -0
  94. package/.medusa/server/src/api/admin/stock-locations/middlewares.d.ts +2 -0
  95. package/.medusa/server/src/api/admin/stock-locations/middlewares.js +46 -0
  96. package/.medusa/server/src/api/store/carts/[id]/line-items/route.js +23 -5
  97. package/.medusa/server/src/api/store/carts/[id]/line-items/validators.d.ts +0 -3
  98. package/.medusa/server/src/api/store/carts/[id]/line-items/validators.js +1 -2
  99. package/.medusa/server/src/api/store/middlewares.js +7 -9
  100. package/.medusa/server/src/api/store/order-groups/validators.d.ts +2 -2
  101. package/.medusa/server/src/api/store/product-attributes/validators.d.ts +4 -4
  102. package/.medusa/server/src/api/store/products/[id]/route.js +3 -18
  103. package/.medusa/server/src/api/store/products/middlewares.js +1 -7
  104. package/.medusa/server/src/api/store/products/query-config.d.ts +1 -3
  105. package/.medusa/server/src/api/store/products/query-config.js +14 -17
  106. package/.medusa/server/src/api/store/products/route.js +3 -19
  107. package/.medusa/server/src/api/store/products/validators.d.ts +0 -6
  108. package/.medusa/server/src/api/store/products/validators.js +1 -2
  109. package/.medusa/server/src/api/store/sellers/validators.d.ts +2 -2
  110. package/.medusa/server/src/api/utils/filter-attributes-by-category-link.d.ts +17 -0
  111. package/.medusa/server/src/api/utils/filter-attributes-by-category-link.js +58 -0
  112. package/.medusa/server/src/api/utils/format-product-attributes.d.ts +51 -5
  113. package/.medusa/server/src/api/utils/format-product-attributes.js +176 -31
  114. package/.medusa/server/src/api/utils/index.d.ts +2 -0
  115. package/.medusa/server/src/api/utils/index.js +3 -1
  116. package/.medusa/server/src/api/utils/offers.d.ts +48 -0
  117. package/.medusa/server/src/api/utils/offers.js +136 -0
  118. package/.medusa/server/src/api/utils/order-commission-lines.d.ts +18 -0
  119. package/.medusa/server/src/api/utils/order-commission-lines.js +78 -0
  120. package/.medusa/server/src/api/vendor/campaigns/validators.d.ts +2 -2
  121. package/.medusa/server/src/api/vendor/claims/[id]/cancel/route.d.ts +4 -0
  122. package/.medusa/server/src/api/vendor/claims/[id]/cancel/route.js +17 -0
  123. package/.medusa/server/src/api/vendor/claims/[id]/claim-items/[action_id]/route.d.ts +9 -0
  124. package/.medusa/server/src/api/vendor/claims/[id]/claim-items/[action_id]/route.js +32 -0
  125. package/.medusa/server/src/api/vendor/claims/[id]/claim-items/route.d.ts +6 -0
  126. package/.medusa/server/src/api/vendor/claims/[id]/claim-items/route.js +15 -0
  127. package/.medusa/server/src/api/vendor/claims/[id]/inbound/items/[action_id]/route.d.ts +9 -0
  128. package/.medusa/server/src/api/vendor/claims/[id]/inbound/items/[action_id]/route.js +46 -0
  129. package/.medusa/server/src/api/vendor/claims/[id]/inbound/items/route.d.ts +6 -0
  130. package/.medusa/server/src/api/vendor/claims/[id]/inbound/items/route.js +26 -0
  131. package/.medusa/server/src/api/vendor/claims/[id]/inbound/shipping-method/[action_id]/route.d.ts +9 -0
  132. package/.medusa/server/src/api/vendor/claims/[id]/inbound/shipping-method/[action_id]/route.js +39 -0
  133. package/.medusa/server/src/api/vendor/claims/[id]/inbound/shipping-method/route.d.ts +6 -0
  134. package/.medusa/server/src/api/vendor/claims/[id]/inbound/shipping-method/route.js +26 -0
  135. package/.medusa/server/src/api/vendor/claims/[id]/outbound/items/[action_id]/route.d.ts +9 -0
  136. package/.medusa/server/src/api/vendor/claims/[id]/outbound/items/[action_id]/route.js +32 -0
  137. package/.medusa/server/src/api/vendor/claims/[id]/outbound/items/route.d.ts +12 -0
  138. package/.medusa/server/src/api/vendor/claims/[id]/outbound/items/route.js +47 -0
  139. package/.medusa/server/src/api/vendor/claims/[id]/outbound/shipping-method/[action_id]/route.d.ts +9 -0
  140. package/.medusa/server/src/api/vendor/claims/[id]/outbound/shipping-method/[action_id]/route.js +32 -0
  141. package/.medusa/server/src/api/vendor/claims/[id]/outbound/shipping-method/route.d.ts +6 -0
  142. package/.medusa/server/src/api/vendor/claims/[id]/outbound/shipping-method/route.js +15 -0
  143. package/.medusa/server/src/api/vendor/claims/[id]/request/route.d.ts +6 -0
  144. package/.medusa/server/src/api/vendor/claims/[id]/request/route.js +34 -0
  145. package/.medusa/server/src/api/vendor/claims/[id]/route.d.ts +3 -0
  146. package/.medusa/server/src/api/vendor/claims/[id]/route.js +19 -0
  147. package/.medusa/server/src/api/vendor/claims/helpers.d.ts +2 -0
  148. package/.medusa/server/src/api/vendor/claims/helpers.js +19 -0
  149. package/.medusa/server/src/api/vendor/claims/middlewares.d.ts +2 -0
  150. package/.medusa/server/src/api/vendor/claims/middlewares.js +184 -0
  151. package/.medusa/server/src/api/vendor/claims/query-config.d.ts +12 -0
  152. package/.medusa/server/src/api/vendor/claims/query-config.js +31 -0
  153. package/.medusa/server/src/api/vendor/claims/route.d.ts +5 -0
  154. package/.medusa/server/src/api/vendor/claims/route.js +35 -0
  155. package/.medusa/server/src/api/vendor/claims/validators.d.ts +378 -0
  156. package/.medusa/server/src/api/vendor/claims/validators.js +89 -0
  157. package/.medusa/server/src/api/vendor/collections/query-config.js +7 -1
  158. package/.medusa/server/src/api/vendor/collections/validators.d.ts +2 -2
  159. package/.medusa/server/src/api/vendor/currencies/validators.d.ts +2 -2
  160. package/.medusa/server/src/api/vendor/customer-groups/[id]/customers/route.d.ts +4 -0
  161. package/.medusa/server/src/api/vendor/customer-groups/[id]/customers/route.js +20 -0
  162. package/.medusa/server/src/api/vendor/customer-groups/[id]/route.d.ts +6 -0
  163. package/.medusa/server/src/api/vendor/customer-groups/[id]/route.js +43 -0
  164. package/.medusa/server/src/api/vendor/customer-groups/helpers.d.ts +3 -0
  165. package/.medusa/server/src/api/vendor/customer-groups/helpers.js +38 -0
  166. package/.medusa/server/src/api/vendor/customer-groups/middlewares.d.ts +2 -0
  167. package/.medusa/server/src/api/vendor/customer-groups/middlewares.js +62 -0
  168. package/.medusa/server/src/api/{store/product-brands → vendor/customer-groups}/query-config.d.ts +2 -3
  169. package/.medusa/server/src/api/vendor/customer-groups/query-config.js +22 -0
  170. package/.medusa/server/src/api/vendor/customer-groups/route.d.ts +5 -0
  171. package/.medusa/server/src/api/vendor/customer-groups/route.js +35 -0
  172. package/.medusa/server/src/api/vendor/customer-groups/validators.d.ts +157 -0
  173. package/.medusa/server/src/api/vendor/customer-groups/validators.js +35 -0
  174. package/.medusa/server/src/api/vendor/customers/[id]/customer-groups/route.d.ts +4 -0
  175. package/.medusa/server/src/api/vendor/customers/[id]/customer-groups/route.js +28 -0
  176. package/.medusa/server/src/api/vendor/customers/[id]/route.js +15 -1
  177. package/.medusa/server/src/api/vendor/customers/middlewares.js +9 -1
  178. package/.medusa/server/src/api/vendor/customers/validators.d.ts +16 -2
  179. package/.medusa/server/src/api/vendor/customers/validators.js +9 -2
  180. package/.medusa/server/src/api/vendor/exchanges/[id]/cancel/route.d.ts +4 -0
  181. package/.medusa/server/src/api/vendor/exchanges/[id]/cancel/route.js +17 -0
  182. package/.medusa/server/src/api/vendor/exchanges/[id]/inbound/items/[action_id]/route.d.ts +9 -0
  183. package/.medusa/server/src/api/vendor/exchanges/[id]/inbound/items/[action_id]/route.js +46 -0
  184. package/.medusa/server/src/api/vendor/exchanges/[id]/inbound/items/route.d.ts +6 -0
  185. package/.medusa/server/src/api/vendor/exchanges/[id]/inbound/items/route.js +26 -0
  186. package/.medusa/server/src/api/vendor/exchanges/[id]/inbound/shipping-method/[action_id]/route.d.ts +9 -0
  187. package/.medusa/server/src/api/vendor/exchanges/[id]/inbound/shipping-method/[action_id]/route.js +45 -0
  188. package/.medusa/server/src/api/vendor/exchanges/[id]/inbound/shipping-method/route.d.ts +6 -0
  189. package/.medusa/server/src/api/vendor/exchanges/[id]/inbound/shipping-method/route.js +26 -0
  190. package/.medusa/server/src/api/vendor/exchanges/[id]/outbound/items/[action_id]/route.d.ts +9 -0
  191. package/.medusa/server/src/api/vendor/exchanges/[id]/outbound/items/[action_id]/route.js +32 -0
  192. package/.medusa/server/src/api/vendor/exchanges/[id]/outbound/items/route.d.ts +12 -0
  193. package/.medusa/server/src/api/vendor/exchanges/[id]/outbound/items/route.js +47 -0
  194. package/.medusa/server/src/api/vendor/exchanges/[id]/outbound/shipping-method/[action_id]/route.d.ts +9 -0
  195. package/.medusa/server/src/api/vendor/exchanges/[id]/outbound/shipping-method/[action_id]/route.js +32 -0
  196. package/.medusa/server/src/api/vendor/exchanges/[id]/outbound/shipping-method/route.d.ts +6 -0
  197. package/.medusa/server/src/api/vendor/exchanges/[id]/outbound/shipping-method/route.js +15 -0
  198. package/.medusa/server/src/api/vendor/exchanges/[id]/request/route.d.ts +6 -0
  199. package/.medusa/server/src/api/vendor/exchanges/[id]/request/route.js +34 -0
  200. package/.medusa/server/src/api/vendor/exchanges/helpers.d.ts +2 -0
  201. package/.medusa/server/src/api/vendor/exchanges/helpers.js +19 -0
  202. package/.medusa/server/src/api/vendor/exchanges/middlewares.d.ts +2 -0
  203. package/.medusa/server/src/api/vendor/exchanges/middlewares.js +155 -0
  204. package/.medusa/server/src/api/vendor/exchanges/query-config.d.ts +7 -0
  205. package/.medusa/server/src/api/vendor/exchanges/query-config.js +23 -0
  206. package/.medusa/server/src/api/vendor/exchanges/route.d.ts +5 -0
  207. package/.medusa/server/src/api/vendor/exchanges/route.js +35 -0
  208. package/.medusa/server/src/api/vendor/exchanges/validators.d.ts +313 -0
  209. package/.medusa/server/src/api/vendor/exchanges/validators.js +71 -0
  210. package/.medusa/server/src/api/vendor/fulfillment-providers/validators.d.ts +2 -2
  211. package/.medusa/server/src/api/vendor/fulfillment-sets/validators.d.ts +16 -16
  212. package/.medusa/server/src/api/vendor/inventory-items/validators.d.ts +8 -8
  213. package/.medusa/server/src/api/vendor/middlewares.js +79 -71
  214. package/.medusa/server/src/api/vendor/offers/query-config.js +8 -8
  215. package/.medusa/server/src/api/vendor/offers/validators.d.ts +10 -10
  216. package/.medusa/server/src/api/vendor/offers/validators.js +4 -4
  217. package/.medusa/server/src/api/vendor/order-edits/[id]/confirm/route.d.ts +14 -0
  218. package/.medusa/server/src/api/vendor/order-edits/[id]/confirm/route.js +29 -0
  219. package/.medusa/server/src/api/vendor/order-edits/[id]/items/[action_id]/route.d.ts +14 -0
  220. package/.medusa/server/src/api/vendor/order-edits/[id]/items/[action_id]/route.js +41 -0
  221. package/.medusa/server/src/api/vendor/order-edits/[id]/items/item/[item_id]/route.d.ts +10 -0
  222. package/.medusa/server/src/api/vendor/order-edits/[id]/items/item/[item_id]/route.js +30 -0
  223. package/.medusa/server/src/api/vendor/order-edits/[id]/items/route.d.ts +16 -0
  224. package/.medusa/server/src/api/vendor/order-edits/[id]/items/route.js +45 -0
  225. package/.medusa/server/src/api/vendor/order-edits/[id]/request/route.d.ts +10 -0
  226. package/.medusa/server/src/api/vendor/order-edits/[id]/request/route.js +25 -0
  227. package/.medusa/server/src/api/vendor/order-edits/[id]/route.d.ts +10 -0
  228. package/.medusa/server/src/api/vendor/order-edits/[id]/route.js +26 -0
  229. package/.medusa/server/src/api/vendor/order-edits/[id]/shipping-method/[action_id]/route.d.ts +14 -0
  230. package/.medusa/server/src/api/vendor/order-edits/[id]/shipping-method/[action_id]/route.js +41 -0
  231. package/.medusa/server/src/api/vendor/order-edits/[id]/shipping-method/route.d.ts +9 -0
  232. package/.medusa/server/src/api/vendor/order-edits/[id]/shipping-method/route.js +20 -0
  233. package/.medusa/server/src/api/vendor/order-edits/middlewares.d.ts +2 -0
  234. package/.medusa/server/src/api/vendor/order-edits/middlewares.js +106 -0
  235. package/.medusa/server/src/api/vendor/order-edits/route.d.ts +10 -0
  236. package/.medusa/server/src/api/vendor/order-edits/route.js +21 -0
  237. package/.medusa/server/src/api/vendor/order-edits/validators.d.ts +166 -0
  238. package/.medusa/server/src/api/vendor/order-edits/validators.js +50 -0
  239. package/.medusa/server/src/api/vendor/orders/[id]/commission-lines/route.d.ts +7 -0
  240. package/.medusa/server/src/api/vendor/orders/[id]/commission-lines/route.js +18 -0
  241. package/.medusa/server/src/api/vendor/orders/[id]/fulfillments/[fulfillment_id]/cancel/route.js +3 -3
  242. package/.medusa/server/src/api/vendor/orders/[id]/fulfillments/route.js +3 -3
  243. package/.medusa/server/src/api/vendor/orders/apply-request-filter.d.ts +2 -0
  244. package/.medusa/server/src/api/vendor/orders/apply-request-filter.js +112 -0
  245. package/.medusa/server/src/api/vendor/orders/middlewares.js +3 -1
  246. package/.medusa/server/src/api/vendor/orders/query-config.js +34 -11
  247. package/.medusa/server/src/api/vendor/orders/resolve-offer-items.d.ts +41 -0
  248. package/.medusa/server/src/api/vendor/orders/resolve-offer-items.js +75 -0
  249. package/.medusa/server/src/api/vendor/orders/validators.d.ts +7 -4
  250. package/.medusa/server/src/api/vendor/orders/validators.js +7 -1
  251. package/.medusa/server/src/api/vendor/payment-collections/[id]/mark-as-paid/route.d.ts +3 -0
  252. package/.medusa/server/src/api/vendor/payment-collections/[id]/mark-as-paid/route.js +25 -0
  253. package/.medusa/server/src/api/vendor/payment-collections/helpers.d.ts +3 -0
  254. package/.medusa/server/src/api/vendor/payment-collections/helpers.js +30 -0
  255. package/.medusa/server/src/api/vendor/payment-collections/middlewares.d.ts +2 -0
  256. package/.medusa/server/src/api/vendor/payment-collections/middlewares.js +17 -0
  257. package/.medusa/server/src/api/vendor/payment-collections/query-config.d.ts +7 -0
  258. package/.medusa/server/src/api/vendor/payment-collections/query-config.js +26 -0
  259. package/.medusa/server/src/api/vendor/payment-collections/validators.d.ts +17 -0
  260. package/.medusa/server/src/api/vendor/payment-collections/validators.js +12 -0
  261. package/.medusa/server/src/api/vendor/payments/helpers.d.ts +9 -0
  262. package/.medusa/server/src/api/vendor/payments/helpers.js +23 -8
  263. package/.medusa/server/src/api/vendor/payments/validators.d.ts +4 -4
  264. package/.medusa/server/src/api/vendor/payouts/validators.d.ts +2 -2
  265. package/.medusa/server/src/api/vendor/price-lists/validators.d.ts +2 -2
  266. package/.medusa/server/src/api/vendor/price-preferences/validators.d.ts +2 -2
  267. package/.medusa/server/src/api/vendor/product-attributes/middlewares.js +15 -1
  268. package/.medusa/server/src/api/vendor/product-attributes/route.js +4 -1
  269. package/.medusa/server/src/api/vendor/product-attributes/validators.d.ts +19 -23
  270. package/.medusa/server/src/api/vendor/product-attributes/validators.js +2 -15
  271. package/.medusa/server/src/api/vendor/product-categories/[id]/products/route.d.ts +4 -0
  272. package/.medusa/server/src/api/vendor/product-categories/[id]/products/route.js +36 -0
  273. package/.medusa/server/src/api/vendor/product-categories/middlewares.js +9 -1
  274. package/.medusa/server/src/api/vendor/product-categories/query-config.js +7 -2
  275. package/.medusa/server/src/api/vendor/product-categories/validators.d.ts +21 -4
  276. package/.medusa/server/src/api/vendor/product-categories/validators.js +7 -2
  277. package/.medusa/server/src/api/vendor/product-types/validators.d.ts +2 -2
  278. package/.medusa/server/src/api/vendor/product-variants/validators.d.ts +6 -6
  279. package/.medusa/server/src/api/vendor/products/[id]/attributes/[attribute_id]/route.d.ts +18 -5
  280. package/.medusa/server/src/api/vendor/products/[id]/attributes/[attribute_id]/route.js +77 -17
  281. package/.medusa/server/src/api/vendor/products/[id]/attributes/batch/route.d.ts +12 -0
  282. package/.medusa/server/src/api/vendor/products/[id]/attributes/batch/route.js +46 -0
  283. package/.medusa/server/src/api/vendor/products/[id]/attributes/route.d.ts +10 -6
  284. package/.medusa/server/src/api/vendor/products/[id]/attributes/route.js +58 -25
  285. package/.medusa/server/src/api/vendor/products/[id]/cancel/route.d.ts +5 -7
  286. package/.medusa/server/src/api/vendor/products/[id]/cancel/route.js +12 -15
  287. package/.medusa/server/src/api/vendor/products/[id]/route.d.ts +18 -9
  288. package/.medusa/server/src/api/vendor/products/[id]/route.js +43 -16
  289. package/.medusa/server/src/api/vendor/products/[id]/variants/[variant_id]/route.d.ts +11 -9
  290. package/.medusa/server/src/api/vendor/products/[id]/variants/[variant_id]/route.js +46 -21
  291. package/.medusa/server/src/api/vendor/products/[id]/variants/route.d.ts +9 -5
  292. package/.medusa/server/src/api/vendor/products/[id]/variants/route.js +28 -10
  293. package/.medusa/server/src/api/vendor/products/helpers.d.ts +8 -0
  294. package/.medusa/server/src/api/vendor/products/helpers.js +26 -0
  295. package/.medusa/server/src/api/vendor/products/middlewares.js +36 -5
  296. package/.medusa/server/src/api/vendor/products/query-config.js +17 -17
  297. package/.medusa/server/src/api/vendor/products/route.d.ts +11 -1
  298. package/.medusa/server/src/api/vendor/products/route.js +35 -11
  299. package/.medusa/server/src/api/vendor/products/validators.d.ts +422 -79
  300. package/.medusa/server/src/api/vendor/products/validators.js +130 -14
  301. package/.medusa/server/src/api/vendor/promotions/validators.d.ts +4 -4
  302. package/.medusa/server/src/api/vendor/refund-reasons/validators.d.ts +2 -2
  303. package/.medusa/server/src/api/vendor/regions/validators.d.ts +4 -4
  304. package/.medusa/server/src/api/vendor/reservations/[id]/route.d.ts +5 -0
  305. package/.medusa/server/src/api/vendor/reservations/[id]/route.js +39 -0
  306. package/.medusa/server/src/api/vendor/reservations/helpers.d.ts +2 -0
  307. package/.medusa/server/src/api/vendor/reservations/helpers.js +21 -0
  308. package/.medusa/server/src/api/{admin/product-brands → vendor/reservations}/middlewares.d.ts +1 -1
  309. package/.medusa/server/src/api/vendor/reservations/middlewares.js +44 -0
  310. package/.medusa/server/src/api/vendor/reservations/query-config.d.ts +19 -0
  311. package/.medusa/server/src/api/vendor/reservations/query-config.js +48 -0
  312. package/.medusa/server/src/api/vendor/reservations/route.d.ts +4 -0
  313. package/.medusa/server/src/api/vendor/reservations/route.js +35 -0
  314. package/.medusa/server/src/api/vendor/reservations/validators.d.ts +296 -0
  315. package/.medusa/server/src/api/vendor/reservations/validators.js +40 -0
  316. package/.medusa/server/src/api/vendor/return-reasons/validators.d.ts +2 -2
  317. package/.medusa/server/src/api/vendor/returns/[id]/receive/confirm/route.js +3 -3
  318. package/.medusa/server/src/api/vendor/returns/validators.d.ts +4 -4
  319. package/.medusa/server/src/api/vendor/sales-channels/validators.d.ts +2 -2
  320. package/.medusa/server/src/api/vendor/sellers/route.js +9 -2
  321. package/.medusa/server/src/api/vendor/sellers/validators.d.ts +7 -7
  322. package/.medusa/server/src/api/vendor/sellers/validators.js +5 -2
  323. package/.medusa/server/src/api/vendor/shipping-option-types/validators.d.ts +2 -2
  324. package/.medusa/server/src/api/vendor/shipping-options/middlewares.js +13 -1
  325. package/.medusa/server/src/api/vendor/shipping-options/validators.d.ts +43 -40
  326. package/.medusa/server/src/api/vendor/shipping-options/validators.js +2 -1
  327. package/.medusa/server/src/api/vendor/shipping-profiles/validators.d.ts +4 -4
  328. package/.medusa/server/src/api/vendor/stock-locations/validators.d.ts +2 -2
  329. package/.medusa/server/src/api/vendor/stores/validators.d.ts +2 -2
  330. package/.medusa/server/src/links/cart-line-item-offer-link.js +9 -2
  331. package/.medusa/server/src/links/category-seller-link.js +2 -2
  332. package/.medusa/server/src/links/media-product-category-link.d.ts +12 -0
  333. package/.medusa/server/src/links/media-product-category-link.js +23 -0
  334. package/.medusa/server/src/links/media-product-collection-link.d.ts +11 -0
  335. package/.medusa/server/src/links/media-product-collection-link.js +22 -0
  336. package/.medusa/server/src/links/offer-price-link.js +13 -0
  337. package/.medusa/server/src/links/offer-variant-link.js +2 -2
  338. package/.medusa/server/src/links/order-line-item-offer-link.js +10 -2
  339. package/.medusa/server/src/links/product-attribute-category-link.d.ts +16 -0
  340. package/.medusa/server/src/links/product-attribute-category-link.js +40 -0
  341. package/.medusa/server/src/links/product-attribute-product-link.d.ts +10 -0
  342. package/.medusa/server/src/links/product-attribute-product-link.js +29 -0
  343. package/.medusa/server/src/links/product-attribute-value-link.d.ts +22 -0
  344. package/.medusa/server/src/links/product-attribute-value-link.js +46 -0
  345. package/.medusa/server/src/links/product-change-link.d.ts +8 -0
  346. package/.medusa/server/src/links/product-change-link.js +27 -0
  347. package/.medusa/server/src/links/product-seller-link.js +2 -2
  348. package/.medusa/server/src/links/product-variant-attribute-link.js +21 -0
  349. package/.medusa/server/src/links/product-variant-attribute-value-link.js +21 -0
  350. package/.medusa/server/src/links/seller-customer-group-link.d.ts +2 -0
  351. package/.medusa/server/src/links/seller-customer-group-link.js +15 -0
  352. package/.medusa/server/src/migration-scripts/drop-fulfillment-global-unique-indexes.js +6 -1
  353. package/.medusa/server/src/modules/commission/index.d.ts +14 -0
  354. package/.medusa/server/src/modules/commission/index.js +3 -1
  355. package/.medusa/server/src/modules/commission/loaders/seed-default-commission-rate.d.ts +11 -0
  356. package/.medusa/server/src/modules/commission/loaders/seed-default-commission-rate.js +35 -0
  357. package/.medusa/server/src/modules/{product/migrations/Migration20260414141012.d.ts → commission/migrations/Migration20260615120000.d.ts} +1 -1
  358. package/.medusa/server/src/modules/commission/migrations/Migration20260615120000.js +46 -0
  359. package/.medusa/server/src/modules/commission/models/commission-line.d.ts +2 -1
  360. package/.medusa/server/src/modules/commission/models/commission-line.js +3 -2
  361. package/.medusa/server/src/modules/commission/models/commission-rate-value.d.ts +25 -0
  362. package/.medusa/server/src/modules/commission/models/commission-rate-value.js +17 -0
  363. package/.medusa/server/src/modules/commission/models/commission-rate.d.ts +9 -4
  364. package/.medusa/server/src/modules/commission/models/commission-rate.js +9 -6
  365. package/.medusa/server/src/modules/commission/models/commission-rule.d.ts +8 -3
  366. package/.medusa/server/src/modules/commission/models/index.d.ts +1 -0
  367. package/.medusa/server/src/modules/commission/models/index.js +4 -2
  368. package/.medusa/server/src/modules/commission/service.d.ts +74 -9
  369. package/.medusa/server/src/modules/commission/service.js +147 -114
  370. package/.medusa/server/src/modules/media/index.d.ts +21 -0
  371. package/.medusa/server/src/modules/{subscription → media}/index.js +2 -2
  372. package/.medusa/server/src/modules/{product/migrations/Migration20260415151424.d.ts → media/migrations/Migration20260616000000.d.ts} +1 -1
  373. package/.medusa/server/src/modules/media/migrations/Migration20260616000000.js +16 -0
  374. package/.medusa/server/src/modules/media/models/image.d.ts +28 -0
  375. package/.medusa/server/src/modules/media/models/image.js +37 -0
  376. package/.medusa/server/src/modules/media/models/index.d.ts +1 -0
  377. package/.medusa/server/src/modules/media/models/index.js +9 -0
  378. package/.medusa/server/src/modules/media/service.d.ts +17 -0
  379. package/.medusa/server/src/modules/media/service.js +10 -0
  380. package/.medusa/server/src/modules/{product/migrations/Migration20260416104248.d.ts → offer/migrations/Migration20260526000000.d.ts} +1 -1
  381. package/.medusa/server/src/modules/offer/migrations/Migration20260526000000.js +16 -0
  382. package/.medusa/server/src/modules/offer/models/offer.d.ts +0 -1
  383. package/.medusa/server/src/modules/offer/models/offer.js +1 -7
  384. package/.medusa/server/src/modules/offer/service.d.ts +0 -1
  385. package/.medusa/server/src/modules/product-attribute/index.d.ts +36 -0
  386. package/.medusa/server/src/modules/product-attribute/index.js +14 -0
  387. package/.medusa/server/src/modules/product-attribute/joiner-config.d.ts +1 -0
  388. package/.medusa/server/src/modules/product-attribute/joiner-config.js +17 -0
  389. package/.medusa/server/src/modules/{product/migrations/Migration20260416105443.d.ts → product-attribute/migrations/Migration20260601000000.d.ts} +1 -1
  390. package/.medusa/server/src/modules/product-attribute/migrations/Migration20260601000000.js +62 -0
  391. package/.medusa/server/src/modules/product-attribute/migrations/Migration20260601000001.d.ts +11 -0
  392. package/.medusa/server/src/modules/product-attribute/migrations/Migration20260601000001.js +29 -0
  393. package/.medusa/server/src/modules/product-attribute/models/index.d.ts +2 -0
  394. package/.medusa/server/src/modules/product-attribute/models/index.js +11 -0
  395. package/.medusa/server/src/modules/product-attribute/models/product-attribute-value.d.ts +25 -0
  396. package/.medusa/server/src/modules/product-attribute/models/product-attribute-value.js +29 -0
  397. package/.medusa/server/src/modules/product-attribute/models/product-attribute.d.ts +26 -0
  398. package/.medusa/server/src/modules/product-attribute/models/product-attribute.js +53 -0
  399. package/.medusa/server/src/modules/product-attribute/service.d.ts +55 -0
  400. package/.medusa/server/src/modules/product-attribute/service.js +15 -0
  401. package/.medusa/server/src/modules/product-edit/index.d.ts +36 -0
  402. package/.medusa/server/src/modules/product-edit/index.js +14 -0
  403. package/.medusa/server/src/modules/product-edit/joiner-config.d.ts +1 -0
  404. package/.medusa/server/src/modules/product-edit/joiner-config.js +17 -0
  405. package/.medusa/server/src/modules/product-edit/migrations/Migration20260601130000.d.ts +5 -0
  406. package/.medusa/server/src/modules/product-edit/migrations/Migration20260601130000.js +78 -0
  407. package/.medusa/server/src/modules/product-edit/models/index.d.ts +2 -0
  408. package/.medusa/server/src/modules/product-edit/models/index.js +11 -0
  409. package/.medusa/server/src/modules/product-edit/models/product-change-action.d.ts +49 -0
  410. package/.medusa/server/src/modules/{product → product-edit}/models/product-change-action.js +1 -1
  411. package/.medusa/server/src/modules/product-edit/models/product-change.d.ts +31 -0
  412. package/.medusa/server/src/modules/product-edit/models/product-change.js +52 -0
  413. package/.medusa/server/src/modules/product-edit/service.d.ts +84 -0
  414. package/.medusa/server/src/modules/product-edit/service.js +15 -0
  415. package/.medusa/server/src/modules/seller/migrations/Migration20260616120000.d.ts +5 -0
  416. package/.medusa/server/src/modules/seller/migrations/Migration20260616120000.js +16 -0
  417. package/.medusa/server/src/modules/seller/models/address.d.ts +2 -2
  418. package/.medusa/server/src/modules/seller/models/member-invite.d.ts +2 -2
  419. package/.medusa/server/src/modules/seller/models/member.d.ts +2 -2
  420. package/.medusa/server/src/modules/seller/models/payment-details.d.ts +2 -2
  421. package/.medusa/server/src/modules/seller/models/payment-details.js +3 -3
  422. package/.medusa/server/src/modules/seller/models/professional-details.d.ts +2 -2
  423. package/.medusa/server/src/modules/seller/models/seller-member.d.ts +4 -4
  424. package/.medusa/server/src/modules/seller/models/seller.d.ts +2 -2
  425. package/.medusa/server/src/modules/seller/service.d.ts +16 -16
  426. package/.medusa/server/src/subscribers/link-order-line-items-to-offers.d.ts +6 -0
  427. package/.medusa/server/src/subscribers/link-order-line-items-to-offers.js +94 -0
  428. package/.medusa/server/src/subscribers/order-edit-confirmed.d.ts +12 -0
  429. package/.medusa/server/src/subscribers/order-edit-confirmed.js +34 -0
  430. package/.medusa/server/src/types/cart-line-item.d.ts +0 -9
  431. package/.medusa/server/src/utils/dashboard/dashboard-base.js +6 -2
  432. package/.medusa/server/src/utils/disable-medusa-middlewares.js +7 -1
  433. package/.medusa/server/src/with-mercur.js +1 -6
  434. package/.medusa/server/src/workflows/cart/hooks/before-refreshing-payment-collection.js +36 -0
  435. package/.medusa/server/src/workflows/cart/hooks/index.d.ts +3 -2
  436. package/.medusa/server/src/workflows/cart/hooks/index.js +4 -3
  437. package/.medusa/server/src/workflows/cart/hooks/set-pricing-context.js +94 -0
  438. package/.medusa/server/src/workflows/cart/hooks/validate.d.ts +1 -0
  439. package/.medusa/server/src/workflows/cart/hooks/validate.js +107 -0
  440. package/.medusa/server/src/workflows/cart/steps/index.d.ts +0 -3
  441. package/.medusa/server/src/workflows/cart/steps/index.js +1 -4
  442. package/.medusa/server/src/workflows/cart/utils/fields.js +29 -2
  443. package/.medusa/server/src/workflows/cart/workflows/complete-cart-with-split-orders.js +29 -3
  444. package/.medusa/server/src/workflows/cart/workflows/index.d.ts +0 -2
  445. package/.medusa/server/src/workflows/cart/workflows/index.js +1 -3
  446. package/.medusa/server/src/workflows/commission/steps/create-commission-rates.d.ts +13 -4
  447. package/.medusa/server/src/workflows/commission/steps/create-commission-rules.d.ts +13 -4
  448. package/.medusa/server/src/workflows/commission/steps/index.d.ts +1 -0
  449. package/.medusa/server/src/workflows/commission/steps/index.js +2 -1
  450. package/.medusa/server/src/workflows/commission/steps/update-commission-rates.d.ts +13 -4
  451. package/.medusa/server/src/workflows/commission/steps/update-commission-rules.d.ts +13 -4
  452. package/.medusa/server/src/workflows/commission/steps/upsert-commission-lines.d.ts +6 -2
  453. package/.medusa/server/src/workflows/commission/steps/upsert-commission-lines.js +5 -1
  454. package/.medusa/server/src/workflows/commission/steps/validate-commission-rates-deletable.d.ts +5 -0
  455. package/.medusa/server/src/workflows/commission/steps/validate-commission-rates-deletable.js +22 -0
  456. package/.medusa/server/src/workflows/commission/workflows/create-commission-rates.d.ts +13 -4
  457. package/.medusa/server/src/workflows/commission/workflows/delete-commission-rates.js +3 -1
  458. package/.medusa/server/src/workflows/commission/workflows/refresh-order-commission-lines.js +2 -1
  459. package/.medusa/server/src/workflows/commission/workflows/update-commission-rates.d.ts +13 -4
  460. package/.medusa/server/src/workflows/{subscription/workflows → customer-group}/index.js +3 -7
  461. package/.medusa/server/src/workflows/customer-group/steps/index.d.ts +1 -0
  462. package/.medusa/server/src/workflows/customer-group/steps/index.js +18 -0
  463. package/.medusa/server/src/workflows/customer-group/steps/link-seller-customer-group.d.ts +6 -0
  464. package/.medusa/server/src/workflows/customer-group/steps/link-seller-customer-group.js +38 -0
  465. package/.medusa/server/src/workflows/customer-group/workflows/create-seller-customer-groups.d.ts +7 -0
  466. package/.medusa/server/src/workflows/customer-group/workflows/create-seller-customer-groups.js +20 -0
  467. package/.medusa/server/src/workflows/customer-group/workflows/index.d.ts +1 -0
  468. package/.medusa/server/src/workflows/{subscription/steps → customer-group/workflows}/index.js +2 -7
  469. package/.medusa/server/src/workflows/index.d.ts +3 -1
  470. package/.medusa/server/src/workflows/index.js +4 -2
  471. package/.medusa/server/src/workflows/media/index.d.ts +2 -0
  472. package/.medusa/server/src/workflows/{subscription → media}/index.js +1 -1
  473. package/.medusa/server/src/workflows/media/steps/create-images.d.ts +23 -0
  474. package/.medusa/server/src/workflows/media/steps/create-images.js +24 -0
  475. package/.medusa/server/src/workflows/media/steps/delete-images.d.ts +6 -0
  476. package/.medusa/server/src/workflows/media/steps/delete-images.js +24 -0
  477. package/.medusa/server/src/workflows/media/steps/index.d.ts +2 -0
  478. package/.medusa/server/src/workflows/media/steps/index.js +19 -0
  479. package/.medusa/server/src/workflows/media/workflows/create-product-category-with-images.d.ts +16 -0
  480. package/.medusa/server/src/workflows/media/workflows/create-product-category-with-images.js +28 -0
  481. package/.medusa/server/src/workflows/media/workflows/create-product-collection-with-images.d.ts +16 -0
  482. package/.medusa/server/src/workflows/media/workflows/create-product-collection-with-images.js +28 -0
  483. package/.medusa/server/src/workflows/media/workflows/delete-product-category-with-images.d.ts +9 -0
  484. package/.medusa/server/src/workflows/media/workflows/delete-product-category-with-images.js +26 -0
  485. package/.medusa/server/src/workflows/media/workflows/delete-product-collection-with-images.d.ts +10 -0
  486. package/.medusa/server/src/workflows/media/workflows/delete-product-collection-with-images.js +27 -0
  487. package/.medusa/server/src/workflows/media/workflows/index.d.ts +8 -0
  488. package/.medusa/server/src/workflows/media/workflows/index.js +25 -0
  489. package/.medusa/server/src/workflows/media/workflows/set-category-images.d.ts +24 -0
  490. package/.medusa/server/src/workflows/media/workflows/set-category-images.js +80 -0
  491. package/.medusa/server/src/workflows/media/workflows/set-collection-images.d.ts +25 -0
  492. package/.medusa/server/src/workflows/media/workflows/set-collection-images.js +81 -0
  493. package/.medusa/server/src/workflows/media/workflows/update-product-category-with-images.d.ts +16 -0
  494. package/.medusa/server/src/workflows/media/workflows/update-product-category-with-images.js +26 -0
  495. package/.medusa/server/src/workflows/media/workflows/update-product-collection-with-images.d.ts +16 -0
  496. package/.medusa/server/src/workflows/media/workflows/update-product-collection-with-images.js +26 -0
  497. package/.medusa/server/src/workflows/offer/steps/add-offer-prices.d.ts +22 -0
  498. package/.medusa/server/src/workflows/offer/steps/add-offer-prices.js +64 -0
  499. package/.medusa/server/src/workflows/offer/steps/create-offers.d.ts +0 -1
  500. package/.medusa/server/src/workflows/offer/steps/delete-offers.d.ts +6 -1
  501. package/.medusa/server/src/workflows/offer/steps/delete-offers.js +10 -6
  502. package/.medusa/server/src/workflows/offer/steps/ensure-variant-price-sets.d.ts +15 -0
  503. package/.medusa/server/src/workflows/offer/steps/ensure-variant-price-sets.js +61 -0
  504. package/.medusa/server/src/workflows/offer/steps/index.d.ts +4 -1
  505. package/.medusa/server/src/workflows/offer/steps/index.js +5 -2
  506. package/.medusa/server/src/workflows/offer/steps/remove-offer-prices.d.ts +3 -0
  507. package/.medusa/server/src/workflows/offer/steps/remove-offer-prices.js +15 -0
  508. package/.medusa/server/src/workflows/offer/steps/update-offers.d.ts +0 -1
  509. package/.medusa/server/src/workflows/offer/utils/assert-offer-price-ownership.d.ts +17 -0
  510. package/.medusa/server/src/workflows/offer/utils/assert-offer-price-ownership.js +27 -0
  511. package/.medusa/server/src/workflows/offer/utils/index.d.ts +1 -0
  512. package/.medusa/server/src/workflows/offer/utils/index.js +2 -1
  513. package/.medusa/server/src/workflows/offer/workflows/batch-offer-inventory-items.d.ts +17 -31
  514. package/.medusa/server/src/workflows/offer/workflows/batch-offer-inventory-items.js +1 -1
  515. package/.medusa/server/src/workflows/offer/workflows/create-offers.d.ts +12 -111
  516. package/.medusa/server/src/workflows/offer/workflows/create-offers.js +98 -45
  517. package/.medusa/server/src/workflows/offer/workflows/delete-offers.js +2 -2
  518. package/.medusa/server/src/workflows/offer/workflows/update-offers.d.ts +21 -116
  519. package/.medusa/server/src/workflows/offer/workflows/update-offers.js +136 -20
  520. package/.medusa/server/src/workflows/order/workflows/cancel-order-fulfillment.d.ts +1 -1
  521. package/.medusa/server/src/workflows/order/workflows/cancel-order-fulfillment.js +3 -4
  522. package/.medusa/server/src/workflows/order/workflows/confirm-claim-request.d.ts +7 -0
  523. package/.medusa/server/src/workflows/order/workflows/confirm-claim-request.js +151 -0
  524. package/.medusa/server/src/workflows/order/workflows/confirm-exchange-request.d.ts +7 -0
  525. package/.medusa/server/src/workflows/order/workflows/confirm-exchange-request.js +159 -0
  526. package/.medusa/server/src/workflows/order/workflows/confirm-order-edit-request.d.ts +7 -0
  527. package/.medusa/server/src/workflows/order/workflows/confirm-order-edit-request.js +165 -0
  528. package/.medusa/server/src/workflows/order/workflows/confirm-return-receive.d.ts +1 -1
  529. package/.medusa/server/src/workflows/order/workflows/confirm-return-receive.js +3 -4
  530. package/.medusa/server/src/workflows/order/workflows/create-order-fulfillment.d.ts +10 -33
  531. package/.medusa/server/src/workflows/order/workflows/create-order-fulfillment.js +3 -4
  532. package/.medusa/server/src/workflows/order/workflows/index.d.ts +3 -0
  533. package/.medusa/server/src/workflows/order/workflows/index.js +4 -1
  534. package/.medusa/server/src/workflows/payout/workflows/create-payout.js +21 -8
  535. package/.medusa/server/src/workflows/product/events.d.ts +5 -47
  536. package/.medusa/server/src/workflows/product/events.js +7 -49
  537. package/.medusa/server/src/workflows/product/index.d.ts +1 -1
  538. package/.medusa/server/src/workflows/product/index.js +2 -2
  539. package/.medusa/server/src/workflows/product/steps/index.d.ts +3 -28
  540. package/.medusa/server/src/workflows/product/steps/index.js +4 -29
  541. package/.medusa/server/src/workflows/product/steps/replace-product-attribute-value-links.d.ts +28 -0
  542. package/.medusa/server/src/workflows/product/steps/replace-product-attribute-value-links.js +72 -0
  543. package/.medusa/server/src/workflows/product/steps/resolve-attribute-refs.d.ts +90 -0
  544. package/.medusa/server/src/workflows/product/steps/resolve-attribute-refs.js +185 -0
  545. package/.medusa/server/src/workflows/product/steps/validate-products-status.d.ts +19 -0
  546. package/.medusa/server/src/workflows/product/steps/validate-products-status.js +28 -0
  547. package/.medusa/server/src/workflows/product/steps/validate-seller-product-permissions.d.ts +0 -1
  548. package/.medusa/server/src/workflows/product/steps/validate-seller-product-permissions.js +2 -21
  549. package/.medusa/server/src/workflows/product/workflows/confirm-products.d.ts +13 -1
  550. package/.medusa/server/src/workflows/product/workflows/confirm-products.js +41 -30
  551. package/.medusa/server/src/workflows/product/workflows/create-products.d.ts +81 -3
  552. package/.medusa/server/src/workflows/product/workflows/create-products.js +253 -17
  553. package/.medusa/server/src/workflows/product/workflows/index.d.ts +3 -26
  554. package/.medusa/server/src/workflows/product/workflows/index.js +4 -27
  555. package/.medusa/server/src/workflows/product/workflows/link-sellers-to-product-category.d.ts +1 -1
  556. package/.medusa/server/src/workflows/product/workflows/link-sellers-to-product-category.js +3 -4
  557. package/.medusa/server/src/workflows/product/workflows/link-sellers-to-product.d.ts +1 -1
  558. package/.medusa/server/src/workflows/product/workflows/link-sellers-to-product.js +3 -4
  559. package/.medusa/server/src/workflows/product/workflows/reject-product.d.ts +8 -1
  560. package/.medusa/server/src/workflows/product/workflows/reject-product.js +42 -38
  561. package/.medusa/server/src/workflows/product/workflows/request-product-change.d.ts +25 -0
  562. package/.medusa/server/src/workflows/product/workflows/request-product-change.js +69 -0
  563. package/.medusa/server/src/workflows/product/workflows/update-products.d.ts +39 -3
  564. package/.medusa/server/src/workflows/product/workflows/update-products.js +148 -10
  565. package/.medusa/server/src/workflows/product-attribute/events.d.ts +19 -0
  566. package/.medusa/server/src/workflows/product-attribute/events.js +23 -0
  567. package/.medusa/server/src/workflows/product-attribute/index.d.ts +3 -0
  568. package/.medusa/server/src/workflows/product-attribute/index.js +20 -0
  569. package/.medusa/server/src/workflows/product-attribute/steps/create-product-attribute-values.d.ts +37 -0
  570. package/.medusa/server/src/workflows/product-attribute/steps/create-product-attribute-values.js +18 -0
  571. package/.medusa/server/src/workflows/product-attribute/steps/create-product-attributes.d.ts +44 -0
  572. package/.medusa/server/src/workflows/product-attribute/steps/create-product-attributes.js +18 -0
  573. package/.medusa/server/src/workflows/{product → product-attribute}/steps/delete-product-attribute-values.d.ts +1 -0
  574. package/.medusa/server/src/workflows/product-attribute/steps/delete-product-attribute-values.js +18 -0
  575. package/.medusa/server/src/workflows/{product → product-attribute}/steps/delete-product-attributes.d.ts +1 -0
  576. package/.medusa/server/src/workflows/product-attribute/steps/delete-product-attributes.js +18 -0
  577. package/.medusa/server/src/workflows/product-attribute/steps/index.d.ts +10 -0
  578. package/.medusa/server/src/workflows/product-attribute/steps/index.js +27 -0
  579. package/.medusa/server/src/workflows/product-attribute/steps/update-product-attribute-values.d.ts +38 -0
  580. package/.medusa/server/src/workflows/product-attribute/steps/update-product-attribute-values.js +23 -0
  581. package/.medusa/server/src/workflows/product-attribute/steps/update-product-attributes.d.ts +38 -0
  582. package/.medusa/server/src/workflows/{product → product-attribute}/steps/update-product-attributes.js +7 -6
  583. package/.medusa/server/src/workflows/product-attribute/steps/upsert-product-attribute-values.d.ts +43 -0
  584. package/.medusa/server/src/workflows/product-attribute/steps/upsert-product-attribute-values.js +51 -0
  585. package/.medusa/server/src/workflows/product-attribute/steps/upsert-product-options-for-axis.d.ts +7 -0
  586. package/.medusa/server/src/workflows/product-attribute/steps/upsert-product-options-for-axis.js +59 -0
  587. package/.medusa/server/src/workflows/product-attribute/steps/validate-attribute-accepts-values.d.ts +6 -0
  588. package/.medusa/server/src/workflows/product-attribute/steps/validate-attribute-accepts-values.js +20 -0
  589. package/.medusa/server/src/workflows/product-attribute/steps/validate-product-attribute-input.d.ts +7 -0
  590. package/.medusa/server/src/workflows/product-attribute/steps/validate-product-attribute-input.js +20 -0
  591. package/.medusa/server/src/workflows/product-attribute/workflows/add-product-attribute.d.ts +52 -0
  592. package/.medusa/server/src/workflows/product-attribute/workflows/add-product-attribute.js +120 -0
  593. package/.medusa/server/src/workflows/product-attribute/workflows/batch-product-attribute-values.d.ts +23 -0
  594. package/.medusa/server/src/workflows/product-attribute/workflows/batch-product-attribute-values.js +252 -0
  595. package/.medusa/server/src/workflows/product-attribute/workflows/create-product-attribute-values.d.ts +18 -0
  596. package/.medusa/server/src/workflows/product-attribute/workflows/create-product-attribute-values.js +26 -0
  597. package/.medusa/server/src/workflows/product-attribute/workflows/create-product-attributes.d.ts +19 -0
  598. package/.medusa/server/src/workflows/product-attribute/workflows/create-product-attributes.js +64 -0
  599. package/.medusa/server/src/workflows/product-attribute/workflows/delete-product-attribute-values.d.ts +16 -0
  600. package/.medusa/server/src/workflows/product-attribute/workflows/delete-product-attribute-values.js +40 -0
  601. package/.medusa/server/src/workflows/product-attribute/workflows/delete-product-attributes.d.ts +23 -0
  602. package/.medusa/server/src/workflows/product-attribute/workflows/delete-product-attributes.js +31 -0
  603. package/.medusa/server/src/workflows/product-attribute/workflows/detach-product-attribute.d.ts +17 -0
  604. package/.medusa/server/src/workflows/product-attribute/workflows/detach-product-attribute.js +62 -0
  605. package/.medusa/server/src/workflows/product-attribute/workflows/index.d.ts +13 -0
  606. package/.medusa/server/src/workflows/product-attribute/workflows/index.js +30 -0
  607. package/.medusa/server/src/workflows/product-attribute/workflows/materialize-product-attributes.d.ts +135 -0
  608. package/.medusa/server/src/workflows/product-attribute/workflows/materialize-product-attributes.js +43 -0
  609. package/.medusa/server/src/workflows/product-attribute/workflows/sync-product-attribute-options.d.ts +24 -0
  610. package/.medusa/server/src/workflows/product-attribute/workflows/sync-product-attribute-options.js +27 -0
  611. package/.medusa/server/src/workflows/product-attribute/workflows/update-product-attribute-values.d.ts +18 -0
  612. package/.medusa/server/src/workflows/product-attribute/workflows/update-product-attribute-values.js +27 -0
  613. package/.medusa/server/src/workflows/product-attribute/workflows/update-product-attribute.d.ts +23 -0
  614. package/.medusa/server/src/workflows/product-attribute/workflows/update-product-attribute.js +67 -0
  615. package/.medusa/server/src/workflows/product-attribute/workflows/update-product-attributes.d.ts +18 -0
  616. package/.medusa/server/src/workflows/product-attribute/workflows/update-product-attributes.js +27 -0
  617. package/.medusa/server/src/workflows/product-attribute/workflows/upsert-product-attribute-values.d.ts +18 -0
  618. package/.medusa/server/src/workflows/product-attribute/workflows/upsert-product-attribute-values.js +26 -0
  619. package/.medusa/server/src/workflows/product-edit/events.d.ts +13 -0
  620. package/.medusa/server/src/workflows/product-edit/events.js +17 -0
  621. package/.medusa/server/src/workflows/product-edit/index.d.ts +1 -0
  622. package/.medusa/server/src/workflows/product-edit/index.js +2 -1
  623. package/.medusa/server/src/workflows/product-edit/steps/add-product-change-action.d.ts +38 -0
  624. package/.medusa/server/src/workflows/product-edit/steps/add-product-change-action.js +18 -0
  625. package/.medusa/server/src/workflows/product-edit/steps/apply-variant-image-links.d.ts +24 -0
  626. package/.medusa/server/src/workflows/product-edit/steps/apply-variant-image-links.js +41 -0
  627. package/.medusa/server/src/workflows/product-edit/steps/cancel-product-change.d.ts +38 -2
  628. package/.medusa/server/src/workflows/product-edit/steps/cancel-product-change.js +28 -10
  629. package/.medusa/server/src/workflows/product-edit/steps/confirm-product-change-validation.d.ts +15 -0
  630. package/.medusa/server/src/workflows/product-edit/steps/confirm-product-change-validation.js +25 -0
  631. package/.medusa/server/src/workflows/product-edit/steps/confirm-product-changes.d.ts +46 -3
  632. package/.medusa/server/src/workflows/product-edit/steps/confirm-product-changes.js +44 -7
  633. package/.medusa/server/src/workflows/product-edit/steps/create-product-change-actions.d.ts +41 -14
  634. package/.medusa/server/src/workflows/product-edit/steps/create-product-change-actions.js +20 -11
  635. package/.medusa/server/src/workflows/product-edit/steps/create-product-changes.d.ts +46 -16
  636. package/.medusa/server/src/workflows/product-edit/steps/create-product-changes.js +11 -18
  637. package/.medusa/server/src/workflows/product-edit/steps/decline-product-change.d.ts +44 -3
  638. package/.medusa/server/src/workflows/product-edit/steps/decline-product-change.js +37 -10
  639. package/.medusa/server/src/workflows/product-edit/steps/index.d.ts +6 -3
  640. package/.medusa/server/src/workflows/product-edit/steps/index.js +7 -4
  641. package/.medusa/server/src/workflows/product-edit/steps/update-product-change-actions.d.ts +49 -0
  642. package/.medusa/server/src/workflows/product-edit/steps/update-product-change-actions.js +34 -0
  643. package/.medusa/server/src/workflows/product-edit/steps/validate-no-pending-product-change.d.ts +7 -7
  644. package/.medusa/server/src/workflows/product-edit/steps/validate-no-pending-product-change.js +29 -13
  645. package/.medusa/server/src/workflows/product-edit/steps/validate-product-change-is-pending.d.ts +10 -0
  646. package/.medusa/server/src/workflows/product-edit/steps/validate-product-change-is-pending.js +14 -0
  647. package/.medusa/server/src/workflows/product-edit/workflows/apply-product-attribute-change-actions.d.ts +23 -0
  648. package/.medusa/server/src/workflows/product-edit/workflows/apply-product-attribute-change-actions.js +139 -0
  649. package/.medusa/server/src/workflows/product-edit/workflows/apply-product-change-actions.d.ts +38 -0
  650. package/.medusa/server/src/workflows/product-edit/workflows/apply-product-change-actions.js +213 -0
  651. package/.medusa/server/src/workflows/product-edit/workflows/auto-confirm-product-change.d.ts +20 -13
  652. package/.medusa/server/src/workflows/product-edit/workflows/auto-confirm-product-change.js +16 -23
  653. package/.medusa/server/src/workflows/product-edit/workflows/cancel-product-change.d.ts +17 -0
  654. package/.medusa/server/src/workflows/product-edit/workflows/cancel-product-change.js +35 -0
  655. package/.medusa/server/src/workflows/product-edit/workflows/confirm-product-change.d.ts +30 -0
  656. package/.medusa/server/src/workflows/product-edit/workflows/confirm-product-change.js +55 -0
  657. package/.medusa/server/src/workflows/product-edit/workflows/create-product-change.d.ts +17 -0
  658. package/.medusa/server/src/workflows/product-edit/workflows/create-product-change.js +26 -0
  659. package/.medusa/server/src/workflows/product-edit/workflows/index.d.ts +10 -8
  660. package/.medusa/server/src/workflows/product-edit/workflows/index.js +11 -9
  661. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-delete-product.d.ts +18 -16
  662. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-delete-product.js +32 -44
  663. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-update-attributes.d.ts +55 -0
  664. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-update-attributes.js +198 -0
  665. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-update-fields.d.ts +22 -15
  666. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-update-fields.js +126 -50
  667. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-update-variants.d.ts +35 -0
  668. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-update-variants.js +206 -0
  669. package/.medusa/server/src/workflows/product-edit/workflows/record-product-audit-change.d.ts +36 -0
  670. package/.medusa/server/src/workflows/product-edit/workflows/record-product-audit-change.js +53 -0
  671. package/.medusa/server/src/workflows/product-edit/workflows/reject-product-change.d.ts +18 -0
  672. package/.medusa/server/src/workflows/product-edit/workflows/reject-product-change.js +36 -0
  673. package/.medusa/server/src/workflows/product-edit/workflows/stage-product-change.d.ts +41 -0
  674. package/.medusa/server/src/workflows/product-edit/workflows/stage-product-change.js +58 -0
  675. package/.medusa/server/src/workflows/seller/steps/create-seller-member.d.ts +4 -4
  676. package/.medusa/server/src/workflows/seller/steps/update-member.d.ts +2 -2
  677. package/.medusa/server/src/workflows/seller/steps/update-seller-member.d.ts +4 -4
  678. package/.medusa/server/src/workflows/seller/workflows/add-seller-member.d.ts +4 -4
  679. package/.medusa/server/src/workflows/seller/workflows/create-sellers.d.ts +20 -2
  680. package/.medusa/server/src/workflows/seller/workflows/create-sellers.js +1 -1
  681. package/.medusa/server/src/workflows/seller/workflows/update-member.d.ts +2 -2
  682. package/.medusa/server/src/workflows/seller/workflows/update-seller-address.d.ts +14 -2
  683. package/.medusa/server/src/workflows/seller/workflows/update-seller-address.js +1 -1
  684. package/.medusa/server/src/workflows/seller/workflows/update-seller-payment-details.d.ts +14 -2
  685. package/.medusa/server/src/workflows/seller/workflows/update-seller-payment-details.js +1 -1
  686. package/.medusa/server/src/workflows/seller/workflows/update-seller-professional-details.d.ts +14 -2
  687. package/.medusa/server/src/workflows/seller/workflows/update-seller-professional-details.js +1 -1
  688. package/.medusa/server/src/workflows/seller/workflows/update-seller.d.ts +14 -2
  689. package/.medusa/server/src/workflows/seller/workflows/update-seller.js +1 -1
  690. package/package.json +3 -3
  691. package/.medusa/server/src/api/admin/product-brands/[id]/route.d.ts +0 -7
  692. package/.medusa/server/src/api/admin/product-brands/[id]/route.js +0 -51
  693. package/.medusa/server/src/api/admin/product-brands/[id]/sellers/route.d.ts +0 -3
  694. package/.medusa/server/src/api/admin/product-brands/[id]/sellers/route.js +0 -20
  695. package/.medusa/server/src/api/admin/product-brands/middlewares.js +0 -49
  696. package/.medusa/server/src/api/admin/product-brands/query-config.js +0 -24
  697. package/.medusa/server/src/api/admin/product-brands/route.d.ts +0 -6
  698. package/.medusa/server/src/api/admin/product-brands/route.js +0 -38
  699. package/.medusa/server/src/api/admin/product-brands/validators.d.ts +0 -284
  700. package/.medusa/server/src/api/admin/product-brands/validators.js +0 -41
  701. package/.medusa/server/src/api/admin/products/batch/route.d.ts +0 -4
  702. package/.medusa/server/src/api/admin/products/batch/route.js +0 -36
  703. package/.medusa/server/src/api/admin/subscription-plans/[id]/overrides/[override_id]/route.d.ts +0 -6
  704. package/.medusa/server/src/api/admin/subscription-plans/[id]/overrides/[override_id]/route.js +0 -43
  705. package/.medusa/server/src/api/admin/subscription-plans/[id]/overrides/route.d.ts +0 -4
  706. package/.medusa/server/src/api/admin/subscription-plans/[id]/overrides/route.js +0 -24
  707. package/.medusa/server/src/api/admin/subscription-plans/[id]/route.d.ts +0 -6
  708. package/.medusa/server/src/api/admin/subscription-plans/[id]/route.js +0 -43
  709. package/.medusa/server/src/api/admin/subscription-plans/middlewares.d.ts +0 -2
  710. package/.medusa/server/src/api/admin/subscription-plans/middlewares.js +0 -81
  711. package/.medusa/server/src/api/admin/subscription-plans/query-config.d.ts +0 -17
  712. package/.medusa/server/src/api/admin/subscription-plans/query-config.js +0 -43
  713. package/.medusa/server/src/api/admin/subscription-plans/route.d.ts +0 -5
  714. package/.medusa/server/src/api/admin/subscription-plans/route.js +0 -35
  715. package/.medusa/server/src/api/admin/subscription-plans/validators.d.ts +0 -117
  716. package/.medusa/server/src/api/admin/subscription-plans/validators.js +0 -42
  717. package/.medusa/server/src/api/store/product-brands/[id]/route.d.ts +0 -2
  718. package/.medusa/server/src/api/store/product-brands/[id]/route.js +0 -18
  719. package/.medusa/server/src/api/store/product-brands/middlewares.d.ts +0 -2
  720. package/.medusa/server/src/api/store/product-brands/middlewares.js +0 -23
  721. package/.medusa/server/src/api/store/product-brands/query-config.js +0 -23
  722. package/.medusa/server/src/api/store/product-brands/route.d.ts +0 -2
  723. package/.medusa/server/src/api/store/product-brands/route.js +0 -21
  724. package/.medusa/server/src/api/store/product-brands/validators.d.ts +0 -215
  725. package/.medusa/server/src/api/store/product-brands/validators.js +0 -21
  726. package/.medusa/server/src/api/utils/wrap-variants-with-offers-inventory.d.ts +0 -12
  727. package/.medusa/server/src/api/utils/wrap-variants-with-offers-inventory.js +0 -165
  728. package/.medusa/server/src/api/utils/wrap-variants-with-offers-prices.d.ts +0 -12
  729. package/.medusa/server/src/api/utils/wrap-variants-with-offers-prices.js +0 -64
  730. package/.medusa/server/src/api/vendor/product-brands/[id]/route.d.ts +0 -3
  731. package/.medusa/server/src/api/vendor/product-brands/[id]/route.js +0 -18
  732. package/.medusa/server/src/api/vendor/product-brands/middlewares.js +0 -23
  733. package/.medusa/server/src/api/vendor/product-brands/query-config.d.ts +0 -12
  734. package/.medusa/server/src/api/vendor/product-brands/query-config.js +0 -24
  735. package/.medusa/server/src/api/vendor/product-brands/route.d.ts +0 -3
  736. package/.medusa/server/src/api/vendor/product-brands/route.js +0 -21
  737. package/.medusa/server/src/api/vendor/product-brands/validators.d.ts +0 -221
  738. package/.medusa/server/src/api/vendor/product-brands/validators.js +0 -22
  739. package/.medusa/server/src/api/vendor/subscription/middlewares.d.ts +0 -2
  740. package/.medusa/server/src/api/vendor/subscription/middlewares.js +0 -28
  741. package/.medusa/server/src/api/vendor/subscription/route.d.ts +0 -3
  742. package/.medusa/server/src/api/vendor/subscription/route.js +0 -31
  743. package/.medusa/server/src/links/brand-seller-link.js +0 -16
  744. package/.medusa/server/src/links/line-item-commission-line-link.js +0 -21
  745. package/.medusa/server/src/links/offer-price-set-link.js +0 -15
  746. package/.medusa/server/src/modules/product/index.d.ts +0 -7
  747. package/.medusa/server/src/modules/product/index.js +0 -14
  748. package/.medusa/server/src/modules/product/migrations/Migration20260414141012.js +0 -169
  749. package/.medusa/server/src/modules/product/migrations/Migration20260415151424.js +0 -14
  750. package/.medusa/server/src/modules/product/migrations/Migration20260416104248.js +0 -14
  751. package/.medusa/server/src/modules/product/migrations/Migration20260416105443.js +0 -16
  752. package/.medusa/server/src/modules/product/migrations/Migration20260421093258.d.ts +0 -5
  753. package/.medusa/server/src/modules/product/migrations/Migration20260421093258.js +0 -22
  754. package/.medusa/server/src/modules/product/migrations/Migration20260422105949.d.ts +0 -5
  755. package/.medusa/server/src/modules/product/migrations/Migration20260422105949.js +0 -32
  756. package/.medusa/server/src/modules/product/migrations/Migration20260422112250.d.ts +0 -5
  757. package/.medusa/server/src/modules/product/migrations/Migration20260422112250.js +0 -16
  758. package/.medusa/server/src/modules/product/migrations/Migration20260424120000.d.ts +0 -5
  759. package/.medusa/server/src/modules/product/migrations/Migration20260424120000.js +0 -16
  760. package/.medusa/server/src/modules/product/migrations/Migration20260427140959.d.ts +0 -5
  761. package/.medusa/server/src/modules/product/migrations/Migration20260427140959.js +0 -20
  762. package/.medusa/server/src/modules/product/migrations/Migration20260427141021.d.ts +0 -5
  763. package/.medusa/server/src/modules/product/migrations/Migration20260427141021.js +0 -16
  764. package/.medusa/server/src/modules/product/migrations/Migration20260428115720.d.ts +0 -5
  765. package/.medusa/server/src/modules/product/migrations/Migration20260428115720.js +0 -16
  766. package/.medusa/server/src/modules/product/migrations/Migration20260430143600.d.ts +0 -5
  767. package/.medusa/server/src/modules/product/migrations/Migration20260430143600.js +0 -15
  768. package/.medusa/server/src/modules/product/migrations/Migration20260430144500.d.ts +0 -5
  769. package/.medusa/server/src/modules/product/migrations/Migration20260430144500.js +0 -23
  770. package/.medusa/server/src/modules/product/migrations/Migration20260430150000.d.ts +0 -5
  771. package/.medusa/server/src/modules/product/migrations/Migration20260430150000.js +0 -14
  772. package/.medusa/server/src/modules/product/migrations/Migration20260520120000.d.ts +0 -5
  773. package/.medusa/server/src/modules/product/migrations/Migration20260520120000.js +0 -16
  774. package/.medusa/server/src/modules/product/models/index.d.ts +0 -13
  775. package/.medusa/server/src/modules/product/models/index.js +0 -33
  776. package/.medusa/server/src/modules/product/models/product-attribute-value.d.ts +0 -1698
  777. package/.medusa/server/src/modules/product/models/product-attribute-value.js +0 -38
  778. package/.medusa/server/src/modules/product/models/product-attribute.d.ts +0 -1627
  779. package/.medusa/server/src/modules/product/models/product-attribute.js +0 -57
  780. package/.medusa/server/src/modules/product/models/product-brand.d.ts +0 -551
  781. package/.medusa/server/src/modules/product/models/product-brand.js +0 -34
  782. package/.medusa/server/src/modules/product/models/product-category.d.ts +0 -1692
  783. package/.medusa/server/src/modules/product/models/product-category.js +0 -55
  784. package/.medusa/server/src/modules/product/models/product-change-action.d.ts +0 -1105
  785. package/.medusa/server/src/modules/product/models/product-change.d.ts +0 -559
  786. package/.medusa/server/src/modules/product/models/product-change.js +0 -50
  787. package/.medusa/server/src/modules/product/models/product-collection.d.ts +0 -552
  788. package/.medusa/server/src/modules/product/models/product-collection.js +0 -27
  789. package/.medusa/server/src/modules/product/models/product-image.d.ts +0 -1745
  790. package/.medusa/server/src/modules/product/models/product-image.js +0 -51
  791. package/.medusa/server/src/modules/product/models/product-tag.d.ts +0 -561
  792. package/.medusa/server/src/modules/product/models/product-tag.js +0 -26
  793. package/.medusa/server/src/modules/product/models/product-type.d.ts +0 -553
  794. package/.medusa/server/src/modules/product/models/product-type.js +0 -26
  795. package/.medusa/server/src/modules/product/models/product-variant-product-image.d.ts +0 -3366
  796. package/.medusa/server/src/modules/product/models/product-variant-product-image.js +0 -19
  797. package/.medusa/server/src/modules/product/models/product-variant.d.ts +0 -1619
  798. package/.medusa/server/src/modules/product/models/product-variant.js +0 -87
  799. package/.medusa/server/src/modules/product/models/product.d.ts +0 -559
  800. package/.medusa/server/src/modules/product/models/product.js +0 -137
  801. package/.medusa/server/src/modules/product/repositories/product-category.d.ts +0 -53
  802. package/.medusa/server/src/modules/product/repositories/product-category.js +0 -381
  803. package/.medusa/server/src/modules/product/service.d.ts +0 -11209
  804. package/.medusa/server/src/modules/product/service.js +0 -1471
  805. package/.medusa/server/src/modules/product/services/product-category.d.ts +0 -37
  806. package/.medusa/server/src/modules/product/services/product-category.js +0 -166
  807. package/.medusa/server/src/modules/subscription/index.d.ts +0 -35
  808. package/.medusa/server/src/modules/subscription/migrations/Migration20260324135903.d.ts +0 -5
  809. package/.medusa/server/src/modules/subscription/migrations/Migration20260324135903.js +0 -24
  810. package/.medusa/server/src/modules/subscription/models/index.d.ts +0 -2
  811. package/.medusa/server/src/modules/subscription/models/index.js +0 -11
  812. package/.medusa/server/src/modules/subscription/models/subscription-override.d.ts +0 -20
  813. package/.medusa/server/src/modules/subscription/models/subscription-override.js +0 -36
  814. package/.medusa/server/src/modules/subscription/models/subscription-plan.d.ts +0 -20
  815. package/.medusa/server/src/modules/subscription/models/subscription-plan.js +0 -32
  816. package/.medusa/server/src/modules/subscription/service.d.ts +0 -49
  817. package/.medusa/server/src/modules/subscription/service.js +0 -17
  818. package/.medusa/server/src/workflows/cart/hooks/validate-add-to-cart-stock.js +0 -52
  819. package/.medusa/server/src/workflows/cart/hooks/validate-update-line-item-stock.js +0 -60
  820. package/.medusa/server/src/workflows/cart/steps/calculate-offer-prices.d.ts +0 -19
  821. package/.medusa/server/src/workflows/cart/steps/calculate-offer-prices.js +0 -39
  822. package/.medusa/server/src/workflows/cart/steps/decorate-line-item-with-offer.d.ts +0 -8
  823. package/.medusa/server/src/workflows/cart/steps/decorate-line-item-with-offer.js +0 -45
  824. package/.medusa/server/src/workflows/cart/steps/get-line-item-actions.d.ts +0 -21
  825. package/.medusa/server/src/workflows/cart/steps/get-line-item-actions.js +0 -85
  826. package/.medusa/server/src/workflows/cart/workflows/add-to-cart.d.ts +0 -12
  827. package/.medusa/server/src/workflows/cart/workflows/add-to-cart.js +0 -235
  828. package/.medusa/server/src/workflows/cart/workflows/update-line-item-in-cart.d.ts +0 -16
  829. package/.medusa/server/src/workflows/cart/workflows/update-line-item-in-cart.js +0 -87
  830. package/.medusa/server/src/workflows/product/steps/associate-sellers-with-product-brand.d.ts +0 -8
  831. package/.medusa/server/src/workflows/product/steps/associate-sellers-with-product-brand.js +0 -26
  832. package/.medusa/server/src/workflows/product/steps/batch-link-products-in-category.d.ts +0 -7
  833. package/.medusa/server/src/workflows/product/steps/batch-link-products-in-category.js +0 -61
  834. package/.medusa/server/src/workflows/product/steps/batch-product-attributes.d.ts +0 -11
  835. package/.medusa/server/src/workflows/product/steps/batch-product-attributes.js +0 -16
  836. package/.medusa/server/src/workflows/product/steps/create-product-attribute-values.d.ts +0 -6
  837. package/.medusa/server/src/workflows/product/steps/create-product-attribute-values.js +0 -17
  838. package/.medusa/server/src/workflows/product/steps/create-product-attributes.d.ts +0 -2
  839. package/.medusa/server/src/workflows/product/steps/create-product-attributes.js +0 -17
  840. package/.medusa/server/src/workflows/product/steps/create-product-brands.d.ts +0 -2
  841. package/.medusa/server/src/workflows/product/steps/create-product-brands.js +0 -17
  842. package/.medusa/server/src/workflows/product/steps/create-product-categories.d.ts +0 -1576
  843. package/.medusa/server/src/workflows/product/steps/create-product-categories.js +0 -18
  844. package/.medusa/server/src/workflows/product/steps/create-product-variants.d.ts +0 -2
  845. package/.medusa/server/src/workflows/product/steps/create-product-variants.js +0 -18
  846. package/.medusa/server/src/workflows/product/steps/create-products.d.ts +0 -2
  847. package/.medusa/server/src/workflows/product/steps/create-products.js +0 -17
  848. package/.medusa/server/src/workflows/product/steps/delete-product-attribute-values.js +0 -17
  849. package/.medusa/server/src/workflows/product/steps/delete-product-attributes.js +0 -17
  850. package/.medusa/server/src/workflows/product/steps/delete-product-brands.d.ts +0 -1
  851. package/.medusa/server/src/workflows/product/steps/delete-product-brands.js +0 -17
  852. package/.medusa/server/src/workflows/product/steps/delete-product-categories.d.ts +0 -1
  853. package/.medusa/server/src/workflows/product/steps/delete-product-categories.js +0 -17
  854. package/.medusa/server/src/workflows/product/steps/delete-product-variants.d.ts +0 -1
  855. package/.medusa/server/src/workflows/product/steps/delete-product-variants.js +0 -17
  856. package/.medusa/server/src/workflows/product/steps/delete-products.d.ts +0 -1
  857. package/.medusa/server/src/workflows/product/steps/delete-products.js +0 -17
  858. package/.medusa/server/src/workflows/product/steps/detach-sellers-from-product-brand.d.ts +0 -8
  859. package/.medusa/server/src/workflows/product/steps/detach-sellers-from-product-brand.js +0 -26
  860. package/.medusa/server/src/workflows/product/steps/remove-attribute-from-product.d.ts +0 -6
  861. package/.medusa/server/src/workflows/product/steps/remove-attribute-from-product.js +0 -11
  862. package/.medusa/server/src/workflows/product/steps/update-product-attribute-values.d.ts +0 -7
  863. package/.medusa/server/src/workflows/product/steps/update-product-attribute-values.js +0 -22
  864. package/.medusa/server/src/workflows/product/steps/update-product-attributes.d.ts +0 -7
  865. package/.medusa/server/src/workflows/product/steps/update-product-brands.d.ts +0 -7
  866. package/.medusa/server/src/workflows/product/steps/update-product-brands.js +0 -28
  867. package/.medusa/server/src/workflows/product/steps/update-product-categories.d.ts +0 -1580
  868. package/.medusa/server/src/workflows/product/steps/update-product-categories.js +0 -20
  869. package/.medusa/server/src/workflows/product/steps/update-product-variants.d.ts +0 -10
  870. package/.medusa/server/src/workflows/product/steps/update-product-variants.js +0 -32
  871. package/.medusa/server/src/workflows/product/steps/update-products.d.ts +0 -10
  872. package/.medusa/server/src/workflows/product/steps/update-products.js +0 -33
  873. package/.medusa/server/src/workflows/product/steps/upsert-product-attribute-values.d.ts +0 -5
  874. package/.medusa/server/src/workflows/product/steps/upsert-product-attribute-values.js +0 -30
  875. package/.medusa/server/src/workflows/product/steps/validate-attribute-accepts-values.d.ts +0 -5
  876. package/.medusa/server/src/workflows/product/steps/validate-attribute-accepts-values.js +0 -19
  877. package/.medusa/server/src/workflows/product/steps/validate-confirm-products.d.ts +0 -3
  878. package/.medusa/server/src/workflows/product/steps/validate-confirm-products.js +0 -14
  879. package/.medusa/server/src/workflows/product/steps/validate-delete-product-attribute-values.d.ts +0 -5
  880. package/.medusa/server/src/workflows/product/steps/validate-delete-product-attribute-values.js +0 -19
  881. package/.medusa/server/src/workflows/product/steps/validate-delete-product-attributes.d.ts +0 -5
  882. package/.medusa/server/src/workflows/product/steps/validate-delete-product-attributes.js +0 -30
  883. package/.medusa/server/src/workflows/product/steps/validate-reject-product.d.ts +0 -3
  884. package/.medusa/server/src/workflows/product/steps/validate-reject-product.js +0 -12
  885. package/.medusa/server/src/workflows/product/steps/validate-request-changes.d.ts +0 -3
  886. package/.medusa/server/src/workflows/product/steps/validate-request-changes.js +0 -12
  887. package/.medusa/server/src/workflows/product/steps/validate-resubmit-product.d.ts +0 -3
  888. package/.medusa/server/src/workflows/product/steps/validate-resubmit-product.js +0 -12
  889. package/.medusa/server/src/workflows/product/workflows/batch-link-products-in-category.d.ts +0 -8
  890. package/.medusa/server/src/workflows/product/workflows/batch-link-products-in-category.js +0 -10
  891. package/.medusa/server/src/workflows/product/workflows/batch-product-attributes.d.ts +0 -12
  892. package/.medusa/server/src/workflows/product/workflows/batch-product-attributes.js +0 -23
  893. package/.medusa/server/src/workflows/product/workflows/batch-products.d.ts +0 -3
  894. package/.medusa/server/src/workflows/product/workflows/batch-products.js +0 -86
  895. package/.medusa/server/src/workflows/product/workflows/create-product-attribute-values.d.ts +0 -8
  896. package/.medusa/server/src/workflows/product/workflows/create-product-attribute-values.js +0 -21
  897. package/.medusa/server/src/workflows/product/workflows/create-product-attributes.d.ts +0 -7
  898. package/.medusa/server/src/workflows/product/workflows/create-product-attributes.js +0 -18
  899. package/.medusa/server/src/workflows/product/workflows/create-product-brands.d.ts +0 -7
  900. package/.medusa/server/src/workflows/product/workflows/create-product-brands.js +0 -19
  901. package/.medusa/server/src/workflows/product/workflows/create-product-categories.d.ts +0 -1581
  902. package/.medusa/server/src/workflows/product/workflows/create-product-categories.js +0 -18
  903. package/.medusa/server/src/workflows/product/workflows/create-product-variants.d.ts +0 -3
  904. package/.medusa/server/src/workflows/product/workflows/create-product-variants.js +0 -25
  905. package/.medusa/server/src/workflows/product/workflows/delete-product-attribute-values.d.ts +0 -6
  906. package/.medusa/server/src/workflows/product/workflows/delete-product-attribute-values.js +0 -20
  907. package/.medusa/server/src/workflows/product/workflows/delete-product-attributes.d.ts +0 -6
  908. package/.medusa/server/src/workflows/product/workflows/delete-product-attributes.js +0 -20
  909. package/.medusa/server/src/workflows/product/workflows/delete-product-brands.d.ts +0 -6
  910. package/.medusa/server/src/workflows/product/workflows/delete-product-brands.js +0 -19
  911. package/.medusa/server/src/workflows/product/workflows/delete-product-categories.d.ts +0 -6
  912. package/.medusa/server/src/workflows/product/workflows/delete-product-categories.js +0 -18
  913. package/.medusa/server/src/workflows/product/workflows/delete-product-variants.d.ts +0 -8
  914. package/.medusa/server/src/workflows/product/workflows/delete-product-variants.js +0 -24
  915. package/.medusa/server/src/workflows/product/workflows/delete-products.d.ts +0 -6
  916. package/.medusa/server/src/workflows/product/workflows/delete-products.js +0 -19
  917. package/.medusa/server/src/workflows/product/workflows/link-sellers-to-product-brand.d.ts +0 -14
  918. package/.medusa/server/src/workflows/product/workflows/link-sellers-to-product-brand.js +0 -21
  919. package/.medusa/server/src/workflows/product/workflows/remove-attribute-from-product.d.ts +0 -7
  920. package/.medusa/server/src/workflows/product/workflows/remove-attribute-from-product.js +0 -20
  921. package/.medusa/server/src/workflows/product/workflows/request-product-changes.d.ts +0 -11
  922. package/.medusa/server/src/workflows/product/workflows/request-product-changes.js +0 -61
  923. package/.medusa/server/src/workflows/product/workflows/resubmit-product.d.ts +0 -8
  924. package/.medusa/server/src/workflows/product/workflows/resubmit-product.js +0 -48
  925. package/.medusa/server/src/workflows/product/workflows/submit-seller-products.d.ts +0 -3
  926. package/.medusa/server/src/workflows/product/workflows/submit-seller-products.js +0 -76
  927. package/.medusa/server/src/workflows/product/workflows/update-product-attribute-values.d.ts +0 -8
  928. package/.medusa/server/src/workflows/product/workflows/update-product-attribute-values.js +0 -18
  929. package/.medusa/server/src/workflows/product/workflows/update-product-attributes.d.ts +0 -8
  930. package/.medusa/server/src/workflows/product/workflows/update-product-attributes.js +0 -18
  931. package/.medusa/server/src/workflows/product/workflows/update-product-brands.d.ts +0 -8
  932. package/.medusa/server/src/workflows/product/workflows/update-product-brands.js +0 -19
  933. package/.medusa/server/src/workflows/product/workflows/update-product-categories.d.ts +0 -1583
  934. package/.medusa/server/src/workflows/product/workflows/update-product-categories.js +0 -18
  935. package/.medusa/server/src/workflows/product/workflows/update-product-variants.d.ts +0 -3
  936. package/.medusa/server/src/workflows/product/workflows/update-product-variants.js +0 -36
  937. package/.medusa/server/src/workflows/product/workflows/upsert-product-attribute-values.d.ts +0 -8
  938. package/.medusa/server/src/workflows/product/workflows/upsert-product-attribute-values.js +0 -21
  939. package/.medusa/server/src/workflows/product-edit/steps/retrieve-product-with-change.d.ts +0 -5
  940. package/.medusa/server/src/workflows/product-edit/steps/retrieve-product-with-change.js +0 -11
  941. package/.medusa/server/src/workflows/product-edit/steps/validate-product-change-pending.d.ts +0 -11
  942. package/.medusa/server/src/workflows/product-edit/steps/validate-product-change-pending.js +0 -21
  943. package/.medusa/server/src/workflows/product-edit/workflows/cancel-product-edit.d.ts +0 -19
  944. package/.medusa/server/src/workflows/product-edit/workflows/cancel-product-edit.js +0 -40
  945. package/.medusa/server/src/workflows/product-edit/workflows/confirm-product-edit.d.ts +0 -21
  946. package/.medusa/server/src/workflows/product-edit/workflows/confirm-product-edit.js +0 -44
  947. package/.medusa/server/src/workflows/product-edit/workflows/decline-product-edit.d.ts +0 -16
  948. package/.medusa/server/src/workflows/product-edit/workflows/decline-product-edit.js +0 -42
  949. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-add-attribute.d.ts +0 -19
  950. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-add-attribute.js +0 -66
  951. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-add-variant.d.ts +0 -17
  952. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-add-variant.js +0 -58
  953. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-remove-attribute.d.ts +0 -17
  954. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-remove-attribute.js +0 -62
  955. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-remove-variant.d.ts +0 -16
  956. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-remove-variant.js +0 -68
  957. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-update-variant.d.ts +0 -21
  958. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-update-variant.js +0 -89
  959. package/.medusa/server/src/workflows/subscription/steps/create-subscription-overrides.d.ts +0 -31
  960. package/.medusa/server/src/workflows/subscription/steps/create-subscription-overrides.js +0 -17
  961. package/.medusa/server/src/workflows/subscription/steps/create-subscription-plans.d.ts +0 -31
  962. package/.medusa/server/src/workflows/subscription/steps/create-subscription-plans.js +0 -17
  963. package/.medusa/server/src/workflows/subscription/steps/delete-subscription-overrides.d.ts +0 -2
  964. package/.medusa/server/src/workflows/subscription/steps/delete-subscription-overrides.js +0 -17
  965. package/.medusa/server/src/workflows/subscription/steps/delete-subscription-plans.d.ts +0 -2
  966. package/.medusa/server/src/workflows/subscription/steps/delete-subscription-plans.js +0 -17
  967. package/.medusa/server/src/workflows/subscription/steps/index.d.ts +0 -6
  968. package/.medusa/server/src/workflows/subscription/steps/update-subscription-overrides.d.ts +0 -31
  969. package/.medusa/server/src/workflows/subscription/steps/update-subscription-overrides.js +0 -17
  970. package/.medusa/server/src/workflows/subscription/steps/update-subscription-plans.d.ts +0 -31
  971. package/.medusa/server/src/workflows/subscription/steps/update-subscription-plans.js +0 -17
  972. package/.medusa/server/src/workflows/subscription/workflows/create-subscription-overrides.d.ts +0 -31
  973. package/.medusa/server/src/workflows/subscription/workflows/create-subscription-overrides.js +0 -11
  974. package/.medusa/server/src/workflows/subscription/workflows/create-subscription-plans.d.ts +0 -31
  975. package/.medusa/server/src/workflows/subscription/workflows/create-subscription-plans.js +0 -11
  976. package/.medusa/server/src/workflows/subscription/workflows/delete-subscription-overrides.d.ts +0 -5
  977. package/.medusa/server/src/workflows/subscription/workflows/delete-subscription-overrides.js +0 -11
  978. package/.medusa/server/src/workflows/subscription/workflows/delete-subscription-plans.d.ts +0 -5
  979. package/.medusa/server/src/workflows/subscription/workflows/delete-subscription-plans.js +0 -11
  980. package/.medusa/server/src/workflows/subscription/workflows/index.d.ts +0 -6
  981. package/.medusa/server/src/workflows/subscription/workflows/update-subscription-overrides.d.ts +0 -31
  982. package/.medusa/server/src/workflows/subscription/workflows/update-subscription-overrides.js +0 -11
  983. package/.medusa/server/src/workflows/subscription/workflows/update-subscription-plans.d.ts +0 -31
  984. package/.medusa/server/src/workflows/subscription/workflows/update-subscription-plans.js +0 -11
  985. package/.medusa/server/src/workflows/utils/override-workflow.d.ts +0 -12
  986. package/.medusa/server/src/workflows/utils/override-workflow.js +0 -21
  987. /package/.medusa/server/src/links/{brand-seller-link.d.ts → offer-price-link.d.ts} +0 -0
  988. /package/.medusa/server/src/links/{line-item-commission-line-link.d.ts → product-variant-attribute-link.d.ts} +0 -0
  989. /package/.medusa/server/src/links/{offer-price-set-link.d.ts → product-variant-attribute-value-link.d.ts} +0 -0
  990. /package/.medusa/server/src/workflows/cart/hooks/{validate-add-to-cart-stock.d.ts → before-refreshing-payment-collection.d.ts} +0 -0
  991. /package/.medusa/server/src/workflows/cart/hooks/{validate-update-line-item-stock.d.ts → set-pricing-context.d.ts} +0 -0
  992. /package/.medusa/server/src/workflows/{subscription → customer-group}/index.d.ts +0 -0
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.filterAttributesByCategoryLinkOrGlobal = void 0;
4
+ const utils_1 = require("@medusajs/framework/utils");
5
+ /**
6
+ * Replacement for `maybeApplyLinkFilter` on the
7
+ * `category_owning_attribute` link. When a category filter is present,
8
+ * the default helper restricts the result to attribute IDs linked to
9
+ * that category, which silently drops "global" attributes (those that
10
+ * have no category link at all). Marketplace operators and vendors
11
+ * expect a category-scoped attribute list to also surface global
12
+ * attributes, so this middleware composes:
13
+ *
14
+ * id IN (attribute IDs linked to the requested category)
15
+ * OR
16
+ * id NOT IN (any attribute that has at least one category link)
17
+ *
18
+ * The second clause is what brings global attributes back in.
19
+ */
20
+ const filterAttributesByCategoryLinkOrGlobal = async (req, _, next) => {
21
+ const filterableFields = req.filterableFields ?? {};
22
+ const categoryFilter = filterableFields.product_category_id;
23
+ if (!categoryFilter) {
24
+ return next();
25
+ }
26
+ delete filterableFields.product_category_id;
27
+ const categoryIds = Array.isArray(categoryFilter)
28
+ ? categoryFilter
29
+ : [categoryFilter];
30
+ const query = req.scope.resolve(utils_1.ContainerRegistrationKeys.QUERY);
31
+ const { data: linkedToCategory } = await query.graph({
32
+ entity: "category_owning_attribute",
33
+ fields: ["product_attribute_id"],
34
+ filters: { product_category_id: categoryIds },
35
+ });
36
+ const linkedToCategoryIds = Array.from(new Set(linkedToCategory.map((l) => l.product_attribute_id)));
37
+ const { data: anyLinked } = await query.graph({
38
+ entity: "category_owning_attribute",
39
+ fields: ["product_attribute_id"],
40
+ });
41
+ const anyLinkedIds = Array.from(new Set(anyLinked.map((l) => l.product_attribute_id)));
42
+ const orClause = [
43
+ { id: linkedToCategoryIds },
44
+ { id: { $nin: anyLinkedIds } },
45
+ ];
46
+ const existingId = filterableFields.id;
47
+ if (existingId !== undefined) {
48
+ filterableFields.$and = [{ id: existingId }, { $or: orClause }];
49
+ delete filterableFields.id;
50
+ }
51
+ else {
52
+ filterableFields.$or = orClause;
53
+ }
54
+ req.filterableFields = filterableFields;
55
+ return next();
56
+ };
57
+ exports.filterAttributesByCategoryLinkOrGlobal = filterAttributesByCategoryLinkOrGlobal;
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWF0dHJpYnV0ZXMtYnktY2F0ZWdvcnktbGluay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcGkvdXRpbHMvZmlsdGVyLWF0dHJpYnV0ZXMtYnktY2F0ZWdvcnktbGluay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFLQSxxREFBcUU7QUFFckU7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFDSSxNQUFNLHNDQUFzQyxHQUFHLEtBQUssRUFDekQsR0FBa0IsRUFDbEIsQ0FBaUIsRUFDakIsSUFBd0IsRUFDeEIsRUFBRTtJQUNGLE1BQU0sZ0JBQWdCLEdBQUcsR0FBRyxDQUFDLGdCQUFnQixJQUFJLEVBQUUsQ0FBQTtJQUNuRCxNQUFNLGNBQWMsR0FBRyxnQkFBZ0IsQ0FBQyxtQkFBbUIsQ0FBQTtJQUUzRCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDcEIsT0FBTyxJQUFJLEVBQUUsQ0FBQTtJQUNmLENBQUM7SUFFRCxPQUFPLGdCQUFnQixDQUFDLG1CQUFtQixDQUFBO0lBRTNDLE1BQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDO1FBQy9DLENBQUMsQ0FBQyxjQUFjO1FBQ2hCLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFBO0lBRXBCLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLGlDQUF5QixDQUFDLEtBQUssQ0FBQyxDQUFBO0lBRWhFLE1BQU0sRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsR0FBRyxNQUFNLEtBQUssQ0FBQyxLQUFLLENBQUM7UUFDbkQsTUFBTSxFQUFFLDJCQUEyQjtRQUNuQyxNQUFNLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztRQUNoQyxPQUFPLEVBQUUsRUFBRSxtQkFBbUIsRUFBRSxXQUFXLEVBQUU7S0FDOUMsQ0FBQyxDQUFBO0lBQ0YsTUFBTSxtQkFBbUIsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUNwQyxJQUFJLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQ2xFLENBQUE7SUFFRCxNQUFNLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxHQUFHLE1BQU0sS0FBSyxDQUFDLEtBQUssQ0FBQztRQUM1QyxNQUFNLEVBQUUsMkJBQTJCO1FBQ25DLE1BQU0sRUFBRSxDQUFDLHNCQUFzQixDQUFDO0tBQ2pDLENBQUMsQ0FBQTtJQUNGLE1BQU0sWUFBWSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQzdCLElBQUksR0FBRyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQzNELENBQUE7SUFFRCxNQUFNLFFBQVEsR0FBRztRQUNmLEVBQUUsRUFBRSxFQUFFLG1CQUFtQixFQUFFO1FBQzNCLEVBQUUsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxFQUFFO0tBQy9CLENBQUE7SUFFRCxNQUFNLFVBQVUsR0FBRyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUE7SUFDdEMsSUFBSSxVQUFVLEtBQUssU0FBUyxFQUFFLENBQUM7UUFDN0IsZ0JBQWdCLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQTtRQUMvRCxPQUFPLGdCQUFnQixDQUFDLEVBQUUsQ0FBQTtJQUM1QixDQUFDO1NBQU0sQ0FBQztRQUNOLGdCQUFnQixDQUFDLEdBQUcsR0FBRyxRQUFRLENBQUE7SUFDakMsQ0FBQztJQUVELEdBQUcsQ0FBQyxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQTtJQUV2QyxPQUFPLElBQUksRUFBRSxDQUFBO0FBQ2YsQ0FBQyxDQUFBO0FBckRZLFFBQUEsc0NBQXNDLDBDQXFEbEQifQ==
@@ -1,8 +1,54 @@
1
+ import type { MedusaContainer } from "@medusajs/framework/types";
1
2
  /**
2
- * Computes a unified `attributes` array on the product by merging
3
- * variant_attributes, custom_attributes, and attribute_values into
4
- * a single grouped structure with values nested under each attribute.
3
+ * Builds a unified `product.attributes` array on each product from the
4
+ * linked value ids (single-hop joiner) by issuing TWO bulk queries
5
+ * against the product-attribute module one for every selected value
6
+ * across all input products, one for every attribute's full value set.
7
+ * Each entry per product surfaces:
5
8
  *
6
- * Mutates the product object in place.
9
+ * - `values`: the values selected on this product (sorted by rank).
10
+ * - `all_values`: the parent attribute's full value set so the edit
11
+ * form can render the dropdown with `values` pre-selected.
12
+ *
13
+ * Always seeds `product.attributes = []` even when there's nothing to
14
+ * enrich, so downstream code can rely on the field existing. Cross-
15
+ * module chained populate (`attribute_values.attribute.values`) crashes
16
+ * Medusa's joiner here because the value side lives in another module —
17
+ * splitting the read avoids that path entirely.
18
+ *
19
+ * Mutates each product object in place.
20
+ */
21
+ export declare function enrichProductAttributes(scope: MedusaContainer, products: any[]): Promise<void>;
22
+ type ProductAttributeValueRow = {
23
+ id: string;
24
+ name: string;
25
+ attribute?: {
26
+ id: string;
27
+ name?: string;
28
+ handle?: string | null;
29
+ type?: string;
30
+ is_variant_axis?: boolean;
31
+ } | null;
32
+ };
33
+ type GroupedProductAttribute = {
34
+ id: string;
35
+ name?: string;
36
+ handle?: string | null;
37
+ type?: string;
38
+ is_variant_axis?: boolean;
39
+ values: {
40
+ id: string;
41
+ name: string;
42
+ }[];
43
+ };
44
+ /**
45
+ * Groups `product.attribute_values` (from a 2-hop graph fetch with
46
+ * `attribute_values.attribute.*`) into one entry per attribute, each
47
+ * carrying only the values selected on this product. Pass
48
+ * `options.attributeId` to narrow the result to a single attribute for
49
+ * detail endpoints.
7
50
  */
8
- export declare function formatProductAttributes(product: any): void;
51
+ export declare function groupProductAttributeValues(attributeValues: ProductAttributeValueRow[] | undefined, options?: {
52
+ attributeId?: string;
53
+ }): GroupedProductAttribute[];
54
+ export {};
@@ -1,44 +1,189 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.formatProductAttributes = formatProductAttributes;
3
+ exports.enrichProductAttributes = enrichProductAttributes;
4
+ exports.groupProductAttributeValues = groupProductAttributeValues;
5
+ const utils_1 = require("@medusajs/framework/utils");
4
6
  /**
5
- * Computes a unified `attributes` array on the product by merging
6
- * variant_attributes, custom_attributes, and attribute_values into
7
- * a single grouped structure with values nested under each attribute.
7
+ * Builds a unified `product.attributes` array on each product from the
8
+ * linked value ids (single-hop joiner) by issuing TWO bulk queries
9
+ * against the product-attribute module one for every selected value
10
+ * across all input products, one for every attribute's full value set.
11
+ * Each entry per product surfaces:
8
12
  *
9
- * Mutates the product object in place.
13
+ * - `values`: the values selected on this product (sorted by rank).
14
+ * - `all_values`: the parent attribute's full value set so the edit
15
+ * form can render the dropdown with `values` pre-selected.
16
+ *
17
+ * Always seeds `product.attributes = []` even when there's nothing to
18
+ * enrich, so downstream code can rely on the field existing. Cross-
19
+ * module chained populate (`attribute_values.attribute.values`) crashes
20
+ * Medusa's joiner here because the value side lives in another module —
21
+ * splitting the read avoids that path entirely.
22
+ *
23
+ * Mutates each product object in place.
10
24
  */
11
- function formatProductAttributes(product) {
12
- const hasAttrData = product.variant_attributes ||
13
- product.custom_attributes ||
14
- product.attribute_values;
15
- if (!hasAttrData)
25
+ async function enrichProductAttributes(scope, products) {
26
+ if (!products?.length)
16
27
  return;
17
- const attrsById = new Map();
18
- for (const attr of product.variant_attributes ?? []) {
19
- attrsById.set(attr.id, { ...attr, values: [...(attr.values ?? [])] });
20
- }
21
- for (const attr of product.custom_attributes ?? []) {
22
- if (!attrsById.has(attr.id)) {
23
- attrsById.set(attr.id, {
24
- ...attr,
25
- values: [...(attr.values ?? [])],
26
- });
28
+ // Guarantee the field is present even if the product carries no
29
+ // attribute joiner data.
30
+ for (const product of products) {
31
+ if (product && !product.attributes)
32
+ product.attributes = [];
33
+ }
34
+ // Collect linked value ids and product-scoped attribute ids across
35
+ // the whole batch so we issue one query per module entity instead of
36
+ // N (where N = list size).
37
+ const linkedValueIds = new Set();
38
+ const inlineAttributeIds = new Set();
39
+ for (const product of products) {
40
+ for (const v of (product?.attribute_values ?? [])) {
41
+ if (typeof v?.id === "string")
42
+ linkedValueIds.add(v.id);
27
43
  }
44
+ for (const a of (product?.scoped_attributes ?? [])) {
45
+ if (typeof a?.id === "string")
46
+ inlineAttributeIds.add(a.id);
47
+ }
48
+ }
49
+ if (!linkedValueIds.size && !inlineAttributeIds.size)
50
+ return;
51
+ const query = scope.resolve(utils_1.ContainerRegistrationKeys.QUERY);
52
+ const { data: selectedValues } = linkedValueIds.size
53
+ ? await query.graph({
54
+ entity: "product_attribute_value",
55
+ fields: ["id", "name", "rank", "attribute_id"],
56
+ filters: { id: Array.from(linkedValueIds) },
57
+ })
58
+ : {
59
+ data: [],
60
+ };
61
+ const selectedValueById = new Map();
62
+ for (const v of selectedValues) {
63
+ selectedValueById.set(v.id, v);
28
64
  }
29
- for (const val of product.attribute_values ?? []) {
30
- if (!val.attribute)
65
+ const attributeIds = new Set(inlineAttributeIds);
66
+ for (const v of selectedValues) {
67
+ if (v.attribute_id)
68
+ attributeIds.add(v.attribute_id);
69
+ }
70
+ if (!attributeIds.size)
71
+ return;
72
+ const { data: attributes } = await query.graph({
73
+ entity: "product_attribute",
74
+ fields: [
75
+ "id",
76
+ "name",
77
+ "handle",
78
+ "type",
79
+ "is_variant_axis",
80
+ "is_required",
81
+ "rank",
82
+ "product_id",
83
+ ],
84
+ filters: { id: Array.from(attributeIds) },
85
+ });
86
+ const { data: allValues } = await query.graph({
87
+ entity: "product_attribute_value",
88
+ fields: ["id", "name", "rank", "attribute_id"],
89
+ filters: { attribute_id: Array.from(attributeIds) },
90
+ });
91
+ const attrTemplateById = new Map();
92
+ for (const attr of attributes) {
93
+ attrTemplateById.set(attr.id, {
94
+ id: attr.id,
95
+ name: attr.name,
96
+ handle: attr.handle ?? null,
97
+ type: attr.type,
98
+ is_variant_axis: !!attr.is_variant_axis,
99
+ is_required: !!attr.is_required,
100
+ rank: attr.rank,
101
+ all_values: [],
102
+ });
103
+ }
104
+ for (const v of allValues) {
105
+ if (!v.attribute_id)
31
106
  continue;
32
- const attrId = val.attribute.id ?? val.attribute_id;
33
- if (!attrId || attrsById.has(attrId))
107
+ const tmpl = attrTemplateById.get(v.attribute_id);
108
+ if (!tmpl)
34
109
  continue;
35
- attrsById.set(attrId, { ...val.attribute, values: [] });
110
+ tmpl.all_values.push({ id: v.id, name: v.name, rank: v.rank });
36
111
  }
37
- const productValueIds = new Set((product.attribute_values ?? []).map((v) => v.id));
38
- for (const attr of attrsById.values()) {
39
- attr.values = (attr.values ?? []).filter((v) => productValueIds.has(v.id));
40
- attr.values.sort((a, b) => (a.rank ?? 0) - (b.rank ?? 0));
112
+ for (const tmpl of attrTemplateById.values()) {
113
+ tmpl.all_values.sort((a, b) => (a.rank ?? 0) - (b.rank ?? 0));
114
+ }
115
+ for (const product of products) {
116
+ if (!product)
117
+ continue;
118
+ const productValueIds = (product.attribute_values ?? [])
119
+ .map((v) => v?.id)
120
+ .filter((id) => typeof id === "string");
121
+ const productScopedAttrIds = (product.scoped_attributes ?? [])
122
+ .map((a) => a?.id)
123
+ .filter((id) => typeof id === "string");
124
+ const attrsForProduct = new Map();
125
+ for (const aid of productScopedAttrIds) {
126
+ const tmpl = attrTemplateById.get(aid);
127
+ if (tmpl)
128
+ attrsForProduct.set(aid, {
129
+ ...tmpl,
130
+ all_values: [...tmpl.all_values],
131
+ values: [],
132
+ });
133
+ }
134
+ for (const vid of productValueIds) {
135
+ const v = selectedValueById.get(vid);
136
+ if (!v?.attribute_id)
137
+ continue;
138
+ let attr = attrsForProduct.get(v.attribute_id);
139
+ if (!attr) {
140
+ const tmpl = attrTemplateById.get(v.attribute_id);
141
+ if (!tmpl)
142
+ continue;
143
+ attr = {
144
+ ...tmpl,
145
+ all_values: [...tmpl.all_values],
146
+ values: [],
147
+ };
148
+ attrsForProduct.set(v.attribute_id, attr);
149
+ }
150
+ attr.values.push({ id: v.id, name: v.name, rank: v.rank });
151
+ }
152
+ for (const attr of attrsForProduct.values()) {
153
+ attr.values.sort((a, b) => (a.rank ?? 0) - (b.rank ?? 0));
154
+ }
155
+ product.attributes = [...attrsForProduct.values()].sort((a, b) => (a.rank ?? 0) - (b.rank ?? 0));
156
+ }
157
+ }
158
+ /**
159
+ * Groups `product.attribute_values` (from a 2-hop graph fetch with
160
+ * `attribute_values.attribute.*`) into one entry per attribute, each
161
+ * carrying only the values selected on this product. Pass
162
+ * `options.attributeId` to narrow the result to a single attribute for
163
+ * detail endpoints.
164
+ */
165
+ function groupProductAttributeValues(attributeValues, options) {
166
+ const byId = new Map();
167
+ for (const v of attributeValues ?? []) {
168
+ const attr = v.attribute;
169
+ if (!attr?.id)
170
+ continue;
171
+ if (options?.attributeId && attr.id !== options.attributeId)
172
+ continue;
173
+ let grouped = byId.get(attr.id);
174
+ if (!grouped) {
175
+ grouped = {
176
+ id: attr.id,
177
+ name: attr.name,
178
+ handle: attr.handle ?? null,
179
+ type: attr.type,
180
+ is_variant_axis: !!attr.is_variant_axis,
181
+ values: [],
182
+ };
183
+ byId.set(attr.id, grouped);
184
+ }
185
+ grouped.values.push({ id: v.id, name: v.name });
41
186
  }
42
- product.attributes = [...attrsById.values()].sort((a, b) => (a.rank ?? 0) - (b.rank ?? 0));
187
+ return Array.from(byId.values());
43
188
  }
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LXByb2R1Y3QtYXR0cmlidXRlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcGkvdXRpbHMvZm9ybWF0LXByb2R1Y3QtYXR0cmlidXRlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQU9BLDBEQTRDQztBQW5ERDs7Ozs7O0dBTUc7QUFDSCxTQUFnQix1QkFBdUIsQ0FBQyxPQUFZO0lBQ2xELE1BQU0sV0FBVyxHQUNmLE9BQU8sQ0FBQyxrQkFBa0I7UUFDMUIsT0FBTyxDQUFDLGlCQUFpQjtRQUN6QixPQUFPLENBQUMsZ0JBQWdCLENBQUE7SUFFMUIsSUFBSSxDQUFDLFdBQVc7UUFBRSxPQUFNO0lBRXhCLE1BQU0sU0FBUyxHQUFHLElBQUksR0FBRyxFQUFlLENBQUE7SUFFeEMsS0FBSyxNQUFNLElBQUksSUFBSSxPQUFPLENBQUMsa0JBQWtCLElBQUksRUFBRSxFQUFFLENBQUM7UUFDcEQsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUUsR0FBRyxJQUFJLEVBQUUsTUFBTSxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUE7SUFDdkUsQ0FBQztJQUVELEtBQUssTUFBTSxJQUFJLElBQUksT0FBTyxDQUFDLGlCQUFpQixJQUFJLEVBQUUsRUFBRSxDQUFDO1FBQ25ELElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQzVCLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRTtnQkFDckIsR0FBRyxJQUFJO2dCQUNQLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDO2FBQ2pDLENBQUMsQ0FBQTtRQUNKLENBQUM7SUFDSCxDQUFDO0lBRUQsS0FBSyxNQUFNLEdBQUcsSUFBSSxPQUFPLENBQUMsZ0JBQWdCLElBQUksRUFBRSxFQUFFLENBQUM7UUFDakQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTO1lBQUUsU0FBUTtRQUM1QixNQUFNLE1BQU0sR0FBRyxHQUFHLENBQUMsU0FBUyxDQUFDLEVBQUUsSUFBSSxHQUFHLENBQUMsWUFBWSxDQUFBO1FBQ25ELElBQUksQ0FBQyxNQUFNLElBQUksU0FBUyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUM7WUFBRSxTQUFRO1FBQzlDLFNBQVMsQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFBO0lBQ3pELENBQUM7SUFFRCxNQUFNLGVBQWUsR0FBRyxJQUFJLEdBQUcsQ0FDN0IsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQ3ZELENBQUE7SUFFRCxLQUFLLE1BQU0sSUFBSSxJQUFJLFNBQVMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDO1FBQ3RDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQU0sRUFBRSxFQUFFLENBQ2xELGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUMxQixDQUFBO1FBQ0QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFNLEVBQUUsQ0FBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDckUsQ0FBQztJQUVELE9BQU8sQ0FBQyxVQUFVLEdBQUcsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FDL0MsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUN4QyxDQUFBO0FBQ0gsQ0FBQyJ9
189
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LXByb2R1Y3QtYXR0cmlidXRlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcGkvdXRpbHMvZm9ybWF0LXByb2R1Y3QtYXR0cmlidXRlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQWtDQSwwREF3TEM7QUE4QkQsa0VBd0JDO0FBaFJELHFEQUFxRTtBQWVyRTs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0JHO0FBQ0ksS0FBSyxVQUFVLHVCQUF1QixDQUMzQyxLQUFzQixFQUN0QixRQUFlO0lBRWYsSUFBSSxDQUFDLFFBQVEsRUFBRSxNQUFNO1FBQUUsT0FBTTtJQUU3QixnRUFBZ0U7SUFDaEUseUJBQXlCO0lBQ3pCLEtBQUssTUFBTSxPQUFPLElBQUksUUFBUSxFQUFFLENBQUM7UUFDL0IsSUFBSSxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVTtZQUFFLE9BQU8sQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFBO0lBQzdELENBQUM7SUFFRCxtRUFBbUU7SUFDbkUscUVBQXFFO0lBQ3JFLDJCQUEyQjtJQUMzQixNQUFNLGNBQWMsR0FBRyxJQUFJLEdBQUcsRUFBVSxDQUFBO0lBQ3hDLE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxHQUFHLEVBQVUsQ0FBQTtJQUM1QyxLQUFLLE1BQU0sT0FBTyxJQUFJLFFBQVEsRUFBRSxDQUFDO1FBQy9CLEtBQUssTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsZ0JBQWdCLElBQUksRUFBRSxDQUU5QyxFQUFFLENBQUM7WUFDSCxJQUFJLE9BQU8sQ0FBQyxFQUFFLEVBQUUsS0FBSyxRQUFRO2dCQUFFLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFBO1FBQ3pELENBQUM7UUFDRCxLQUFLLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLGlCQUFpQixJQUFJLEVBQUUsQ0FFL0MsRUFBRSxDQUFDO1lBQ0gsSUFBSSxPQUFPLENB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
@@ -4,3 +4,5 @@ export * from "./ensure-seller-middleware";
4
4
  export * from "./filter-by-seller-id";
5
5
  export * from "./vendor-cors-middleware";
6
6
  export * from "./format-product-attributes";
7
+ export * from "./filter-attributes-by-category-link";
8
+ export * from "./offers";
@@ -20,4 +20,6 @@ __exportStar(require("./ensure-seller-middleware"), exports);
20
20
  __exportStar(require("./filter-by-seller-id"), exports);
21
21
  __exportStar(require("./vendor-cors-middleware"), exports);
22
22
  __exportStar(require("./format-product-attributes"), exports);
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3V0aWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxvREFBaUM7QUFDakMsZ0VBQTZDO0FBQzdDLDZEQUEwQztBQUMxQyx3REFBcUM7QUFDckMsMkRBQXdDO0FBQ3hDLDhEQUEyQyJ9
23
+ __exportStar(require("./filter-attributes-by-category-link"), exports);
24
+ __exportStar(require("./offers"), exports);
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3V0aWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxvREFBaUM7QUFDakMsZ0VBQTZDO0FBQzdDLDZEQUEwQztBQUMxQyx3REFBcUM7QUFDckMsMkRBQXdDO0FBQ3hDLDhEQUEyQztBQUMzQyx1RUFBb0Q7QUFDcEQsMkNBQXdCIn0=
@@ -0,0 +1,48 @@
1
+ import { AuthenticatedMedusaRequest, MedusaNextFunction, MedusaResponse } from "@medusajs/framework/http";
2
+ import type { MedusaContainer } from "@medusajs/framework/types";
3
+ type WrappableVariant = {
4
+ id: string;
5
+ offers?: unknown[];
6
+ };
7
+ type WrappableProduct = {
8
+ variants?: WrappableVariant[] | null;
9
+ };
10
+ /**
11
+ * Attaches offers under each variant of the given products, in place
12
+ * (`variant.offers = [...]`). The `offer ↔ variant` link is shared across
13
+ * sellers, so a raw graph traversal would surface every seller's offers on
14
+ * a master variant — this fetches them with one bounded query over the
15
+ * page's variant ids and keys them onto the matching variants. Mirrors
16
+ * Medusa's `wrapProductsWithTaxPrices` post-query enrichment pattern.
17
+ *
18
+ * Pass `sellerId` to scope the attach to a single seller (the vendor
19
+ * Offers surface, where a competitor's offers must never leak). Omit it
20
+ * for the platform-wide admin surface, which attaches **every** seller's
21
+ * offers (each carrying `offer.seller`). Variants with no offer get
22
+ * `offers: []`.
23
+ */
24
+ export declare const wrapProductVariantsWithOffers: (scope: MedusaContainer, products: WrappableProduct[], sellerId?: string) => Promise<void>;
25
+ type OfferAwareRequest = AuthenticatedMedusaRequest & {
26
+ seller_context?: {
27
+ seller_id?: string;
28
+ };
29
+ };
30
+ /**
31
+ * Scopes a product list to products carrying at least one offer, when
32
+ * `?has_offer=true`. Shared by the vendor and admin Offers lists, which
33
+ * back their product-grained rows with the product endpoint:
34
+ *
35
+ * - **Vendor** — `req.seller_context.seller_id` is always set, so the scope
36
+ * is the active seller's offered products (a competitor's offered product
37
+ * never appears).
38
+ * - **Admin** — no seller context; the optional `seller_id` query param is
39
+ * the Offers **Store** filter (consumed here so it scopes the offer's
40
+ * store, not product ownership). Absent it, the scope is every offered
41
+ * product across the marketplace.
42
+ *
43
+ * Either way it resolves the offered variant ids and constrains the product
44
+ * query to products carrying one of them. The `has_offer` pseudo-filter is
45
+ * consumed and removed so it never reaches the product graph read.
46
+ */
47
+ export declare const applyOfferedProductsFilter: (req: OfferAwareRequest, _res: MedusaResponse, next: MedusaNextFunction) => Promise<void>;
48
+ export {};
@@ -0,0 +1,136 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.applyOfferedProductsFilter = exports.wrapProductVariantsWithOffers = void 0;
4
+ const utils_1 = require("@medusajs/framework/utils");
5
+ /**
6
+ * Field set pulled for each offer attached by
7
+ * `wrapProductVariantsWithOffers`. Carries the offer identity + seller +
8
+ * shipping profile + price ladder + inventory-item links (with per-location
9
+ * stock). `seller.*` lets the admin (platform-wide) Store column resolve;
10
+ * it is harmless for the seller-scoped vendor reads.
11
+ */
12
+ const OFFER_WRAP_FIELDS = [
13
+ "id",
14
+ "seller_id",
15
+ "variant_id",
16
+ "shipping_profile_id",
17
+ "sku",
18
+ "ean",
19
+ "upc",
20
+ "created_at",
21
+ "updated_at",
22
+ "seller.id",
23
+ "seller.name",
24
+ "seller.handle",
25
+ "shipping_profile.id",
26
+ "shipping_profile.name",
27
+ "prices.id",
28
+ "prices.amount",
29
+ "prices.currency_code",
30
+ "prices.min_quantity",
31
+ "prices.max_quantity",
32
+ "inventory_item_link.id",
33
+ "inventory_item_link.required_quantity",
34
+ "inventory_item_link.inventory_item_id",
35
+ "inventory_item_link.inventory_item.id",
36
+ "inventory_item_link.inventory_item.sku",
37
+ "inventory_item_link.inventory_item.title",
38
+ "inventory_item_link.inventory_item.location_levels.id",
39
+ "inventory_item_link.inventory_item.location_levels.location_id",
40
+ "inventory_item_link.inventory_item.location_levels.stocked_quantity",
41
+ ];
42
+ /**
43
+ * Attaches offers under each variant of the given products, in place
44
+ * (`variant.offers = [...]`). The `offer ↔ variant` link is shared across
45
+ * sellers, so a raw graph traversal would surface every seller's offers on
46
+ * a master variant — this fetches them with one bounded query over the
47
+ * page's variant ids and keys them onto the matching variants. Mirrors
48
+ * Medusa's `wrapProductsWithTaxPrices` post-query enrichment pattern.
49
+ *
50
+ * Pass `sellerId` to scope the attach to a single seller (the vendor
51
+ * Offers surface, where a competitor's offers must never leak). Omit it
52
+ * for the platform-wide admin surface, which attaches **every** seller's
53
+ * offers (each carrying `offer.seller`). Variants with no offer get
54
+ * `offers: []`.
55
+ */
56
+ const wrapProductVariantsWithOffers = async (scope, products, sellerId) => {
57
+ const variantIds = Array.from(new Set(products.flatMap((p) => (p.variants ?? []).map((v) => v.id))));
58
+ if (!variantIds.length) {
59
+ return;
60
+ }
61
+ const query = scope.resolve(utils_1.ContainerRegistrationKeys.QUERY);
62
+ const { data: offers } = await query.graph({
63
+ entity: "offer",
64
+ fields: OFFER_WRAP_FIELDS,
65
+ filters: {
66
+ variant_id: variantIds,
67
+ ...(sellerId ? { seller_id: sellerId } : {}),
68
+ },
69
+ });
70
+ const offersByVariant = new Map();
71
+ for (const offer of offers) {
72
+ const existing = offersByVariant.get(offer.variant_id);
73
+ if (existing) {
74
+ existing.push(offer);
75
+ }
76
+ else {
77
+ offersByVariant.set(offer.variant_id, [offer]);
78
+ }
79
+ }
80
+ for (const product of products) {
81
+ for (const variant of product.variants ?? []) {
82
+ variant.offers = offersByVariant.get(variant.id) ?? [];
83
+ }
84
+ }
85
+ };
86
+ exports.wrapProductVariantsWithOffers = wrapProductVariantsWithOffers;
87
+ /**
88
+ * Scopes a product list to products carrying at least one offer, when
89
+ * `?has_offer=true`. Shared by the vendor and admin Offers lists, which
90
+ * back their product-grained rows with the product endpoint:
91
+ *
92
+ * - **Vendor** — `req.seller_context.seller_id` is always set, so the scope
93
+ * is the active seller's offered products (a competitor's offered product
94
+ * never appears).
95
+ * - **Admin** — no seller context; the optional `seller_id` query param is
96
+ * the Offers **Store** filter (consumed here so it scopes the offer's
97
+ * store, not product ownership). Absent it, the scope is every offered
98
+ * product across the marketplace.
99
+ *
100
+ * Either way it resolves the offered variant ids and constrains the product
101
+ * query to products carrying one of them. The `has_offer` pseudo-filter is
102
+ * consumed and removed so it never reaches the product graph read.
103
+ */
104
+ const applyOfferedProductsFilter = async (req, _res, next) => {
105
+ req.filterableFields ??= {};
106
+ const hasOffer = req.filterableFields.has_offer;
107
+ delete req.filterableFields.has_offer;
108
+ if (hasOffer !== true) {
109
+ return next();
110
+ }
111
+ // Vendor: the active seller. Admin: the optional store filter (consumed
112
+ // here so `seller_id` scopes the offer's store, not product ownership).
113
+ const contextSellerId = req.seller_context?.seller_id;
114
+ const sellerId = contextSellerId ?? req.filterableFields.seller_id;
115
+ if (!contextSellerId) {
116
+ delete req.filterableFields.seller_id;
117
+ }
118
+ const query = req.scope.resolve(utils_1.ContainerRegistrationKeys.QUERY);
119
+ const { data: offers } = await query.graph({
120
+ entity: "offer",
121
+ fields: ["variant_id"],
122
+ filters: sellerId ? { seller_id: sellerId } : {},
123
+ });
124
+ const variantIds = Array.from(new Set(offers
125
+ .map((offer) => offer.variant_id)
126
+ .filter((id) => Boolean(id))));
127
+ const existingAnd = req.filterableFields.$and ?? [];
128
+ req.filterableFields.$and = [
129
+ ...existingAnd,
130
+ // No offers → match nothing (empty list) rather than the whole catalogue.
131
+ { variants: { id: variantIds.length ? variantIds : ["__none__"] } },
132
+ ];
133
+ return next();
134
+ };
135
+ exports.applyOfferedProductsFilter = applyOfferedProductsFilter;
136
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2ZmZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwaS91dGlscy9vZmZlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBS0EscURBQXFFO0FBR3JFOzs7Ozs7R0FNRztBQUNILE1BQU0saUJBQWlCLEdBQUc7SUFDeEIsSUFBSTtJQUNKLFdBQVc7SUFDWCxZQUFZO0lBQ1oscUJBQXFCO0lBQ3JCLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLFlBQVk7SUFDWixZQUFZO0lBQ1osV0FBVztJQUNYLGFBQWE7SUFDYixlQUFlO0lBQ2YscUJBQXFCO0lBQ3JCLHVCQUF1QjtJQUN2QixXQUFXO0lBQ1gsZUFBZTtJQUNmLHNCQUFzQjtJQUN0QixxQkFBcUI7SUFDckIscUJBQXFCO0lBQ3JCLHdCQUF3QjtJQUN4Qix1Q0FBdUM7SUFDdkMsdUNBQXVDO0lBQ3ZDLHVDQUF1QztJQUN2Qyx3Q0FBd0M7SUFDeEMsMENBQTBDO0lBQzFDLHVEQUF1RDtJQUN2RCxnRUFBZ0U7SUFDaEUscUVBQXFFO0NBQ3RFLENBQUE7QUFNRDs7Ozs7Ozs7Ozs7OztHQWFHO0FBQ0ksTUFBTSw2QkFBNkIsR0FBRyxLQUFLLEVBQ2hELEtBQXNCLEVBQ3RCLFFBQTRCLEVBQzVCLFFBQWlCLEVBQ0YsRUFBRTtJQUNqQixNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUMzQixJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUN0RSxDQUFBO0lBRUQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUN2QixPQUFNO0lBQ1IsQ0FBQztJQUVELE1BQU0sS0FB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
@@ -0,0 +1,18 @@
1
+ import { MedusaContainer } from "@medusajs/framework/types";
2
+ import { CommissionLineDTO } from "@mercurjs/types";
3
+ /**
4
+ * Returns an order's commission lines — both item-anchored and
5
+ * shipping-anchored — by reading the `commission_line` entity directly.
6
+ *
7
+ * The order→commission links resolve for items but not shipping methods
8
+ * (and the two cannot be co-resolved in one graph query), so commission is
9
+ * always read from the commission module by the order's item + shipping ids.
10
+ *
11
+ * When `sellerId` is provided (vendor surface) the order's ownership is
12
+ * verified through the order↔seller link; a non-owned / missing order yields
13
+ * `found: false`.
14
+ */
15
+ export declare const getOrderCommissionLines: (scope: MedusaContainer, orderId: string, sellerId?: string) => Promise<{
16
+ found: boolean;
17
+ commission_lines: CommissionLineDTO[];
18
+ }>;