@mercurjs/core 2.2.0-canary.3 → 2.2.0-canary.5

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 (634) hide show
  1. package/.medusa/server/src/api/admin/middlewares.js +9 -13
  2. package/.medusa/server/src/api/admin/offers/query-config.js +8 -8
  3. package/.medusa/server/src/api/admin/product-attributes/[id]/route.js +3 -3
  4. package/.medusa/server/src/api/admin/product-attributes/[id]/values/[value_id]/route.js +3 -3
  5. package/.medusa/server/src/api/admin/product-attributes/[id]/values/route.js +2 -2
  6. package/.medusa/server/src/api/admin/product-attributes/middlewares.js +15 -1
  7. package/.medusa/server/src/api/admin/product-attributes/query-config.js +1 -2
  8. package/.medusa/server/src/api/admin/product-attributes/route.js +6 -3
  9. package/.medusa/server/src/api/admin/product-attributes/validators.d.ts +1 -5
  10. package/.medusa/server/src/api/admin/product-attributes/validators.js +2 -15
  11. package/.medusa/server/src/api/admin/product-categories/[id]/products/route.js +3 -3
  12. package/.medusa/server/src/api/admin/product-categories/[id]/route.js +8 -7
  13. package/.medusa/server/src/api/admin/product-categories/query-config.js +1 -2
  14. package/.medusa/server/src/api/admin/product-categories/route.js +4 -4
  15. package/.medusa/server/src/api/admin/product-categories/validators.d.ts +8 -8
  16. package/.medusa/server/src/api/admin/product-changes/[id]/cancel/route.js +5 -6
  17. package/.medusa/server/src/api/admin/product-changes/[id]/confirm/route.js +5 -5
  18. package/.medusa/server/src/api/admin/products/[id]/attributes/[attribute_id]/route.d.ts +1 -4
  19. package/.medusa/server/src/api/admin/products/[id]/attributes/[attribute_id]/route.js +42 -30
  20. package/.medusa/server/src/api/admin/products/[id]/attributes/batch/route.d.ts +3 -2
  21. package/.medusa/server/src/api/admin/products/[id]/attributes/batch/route.js +11 -22
  22. package/.medusa/server/src/api/admin/products/[id]/attributes/route.d.ts +2 -3
  23. package/.medusa/server/src/api/admin/products/[id]/attributes/route.js +40 -25
  24. package/.medusa/server/src/api/admin/products/[id]/confirm/route.d.ts +12 -0
  25. package/.medusa/server/src/api/admin/products/[id]/confirm/route.js +16 -6
  26. package/.medusa/server/src/api/admin/products/[id]/preview/route.d.ts +8 -1
  27. package/.medusa/server/src/api/admin/products/[id]/preview/route.js +20 -7
  28. package/.medusa/server/src/api/admin/products/[id]/reject/route.d.ts +8 -0
  29. package/.medusa/server/src/api/admin/products/[id]/reject/route.js +13 -8
  30. package/.medusa/server/src/api/admin/products/[id]/request-changes/route.d.ts +9 -0
  31. package/.medusa/server/src/api/admin/products/[id]/request-changes/route.js +16 -10
  32. package/.medusa/server/src/api/admin/products/[id]/route.js +6 -6
  33. package/.medusa/server/src/api/admin/products/[id]/variants/[variant_id]/route.js +5 -5
  34. package/.medusa/server/src/api/admin/products/[id]/variants/route.js +22 -4
  35. package/.medusa/server/src/api/admin/products/middlewares.js +8 -4
  36. package/.medusa/server/src/api/admin/products/query-config.js +12 -18
  37. package/.medusa/server/src/api/admin/products/route.js +4 -9
  38. package/.medusa/server/src/api/admin/products/validators.d.ts +1040 -214
  39. package/.medusa/server/src/api/admin/products/validators.js +108 -16
  40. package/.medusa/server/src/api/store/carts/[id]/line-items/route.js +11 -5
  41. package/.medusa/server/src/api/store/carts/[id]/line-items/validators.d.ts +3 -3
  42. package/.medusa/server/src/api/store/carts/[id]/line-items/validators.js +2 -2
  43. package/.medusa/server/src/api/store/middlewares.js +7 -9
  44. package/.medusa/server/src/api/store/products/[id]/route.js +3 -18
  45. package/.medusa/server/src/api/store/products/middlewares.js +1 -7
  46. package/.medusa/server/src/api/store/products/query-config.d.ts +1 -3
  47. package/.medusa/server/src/api/store/products/query-config.js +14 -17
  48. package/.medusa/server/src/api/store/products/route.js +3 -19
  49. package/.medusa/server/src/api/store/products/validators.d.ts +0 -6
  50. package/.medusa/server/src/api/store/products/validators.js +1 -2
  51. package/.medusa/server/src/api/utils/filter-attributes-by-category-link.d.ts +17 -0
  52. package/.medusa/server/src/api/utils/filter-attributes-by-category-link.js +58 -0
  53. package/.medusa/server/src/api/utils/format-product-attributes.d.ts +51 -5
  54. package/.medusa/server/src/api/utils/format-product-attributes.js +174 -31
  55. package/.medusa/server/src/api/utils/index.d.ts +1 -0
  56. package/.medusa/server/src/api/utils/index.js +2 -1
  57. package/.medusa/server/src/api/vendor/middlewares.js +7 -11
  58. package/.medusa/server/src/api/vendor/offers/query-config.js +8 -8
  59. package/.medusa/server/src/api/vendor/orders/[id]/fulfillments/[fulfillment_id]/cancel/route.js +3 -3
  60. package/.medusa/server/src/api/vendor/orders/[id]/fulfillments/route.js +3 -3
  61. package/.medusa/server/src/api/vendor/product-attributes/middlewares.js +15 -1
  62. package/.medusa/server/src/api/vendor/product-attributes/route.js +4 -1
  63. package/.medusa/server/src/api/vendor/product-attributes/validators.d.ts +1 -5
  64. package/.medusa/server/src/api/vendor/product-attributes/validators.js +2 -15
  65. package/.medusa/server/src/api/vendor/product-categories/query-config.js +1 -2
  66. package/.medusa/server/src/api/vendor/product-categories/validators.d.ts +4 -4
  67. package/.medusa/server/src/api/vendor/products/[id]/attributes/[attribute_id]/route.d.ts +6 -5
  68. package/.medusa/server/src/api/vendor/products/[id]/attributes/[attribute_id]/route.js +41 -16
  69. package/.medusa/server/src/api/vendor/products/[id]/attributes/route.d.ts +10 -6
  70. package/.medusa/server/src/api/vendor/products/[id]/attributes/route.js +60 -25
  71. package/.medusa/server/src/api/vendor/products/[id]/cancel/route.d.ts +5 -7
  72. package/.medusa/server/src/api/vendor/products/[id]/cancel/route.js +14 -15
  73. package/.medusa/server/src/api/vendor/products/[id]/route.d.ts +18 -9
  74. package/.medusa/server/src/api/vendor/products/[id]/route.js +35 -16
  75. package/.medusa/server/src/api/vendor/products/[id]/variants/[variant_id]/route.d.ts +11 -9
  76. package/.medusa/server/src/api/vendor/products/[id]/variants/[variant_id]/route.js +43 -21
  77. package/.medusa/server/src/api/vendor/products/[id]/variants/route.d.ts +9 -5
  78. package/.medusa/server/src/api/vendor/products/[id]/variants/route.js +30 -10
  79. package/.medusa/server/src/api/vendor/products/helpers.d.ts +8 -0
  80. package/.medusa/server/src/api/vendor/products/helpers.js +26 -0
  81. package/.medusa/server/src/api/vendor/products/middlewares.js +17 -5
  82. package/.medusa/server/src/api/vendor/products/query-config.js +12 -17
  83. package/.medusa/server/src/api/vendor/products/route.d.ts +11 -1
  84. package/.medusa/server/src/api/vendor/products/route.js +25 -12
  85. package/.medusa/server/src/api/vendor/products/validators.d.ts +287 -57
  86. package/.medusa/server/src/api/vendor/products/validators.js +65 -13
  87. package/.medusa/server/src/api/vendor/returns/[id]/receive/confirm/route.js +3 -3
  88. package/.medusa/server/src/links/category-seller-link.js +2 -2
  89. package/.medusa/server/src/links/offer-price-link.js +13 -0
  90. package/.medusa/server/src/links/offer-variant-link.js +2 -2
  91. package/.medusa/server/src/links/product-attribute-category-link.d.ts +16 -0
  92. package/.medusa/server/src/links/product-attribute-category-link.js +40 -0
  93. package/.medusa/server/src/links/product-attribute-product-link.d.ts +10 -0
  94. package/.medusa/server/src/links/product-attribute-product-link.js +29 -0
  95. package/.medusa/server/src/links/product-attribute-value-link.d.ts +22 -0
  96. package/.medusa/server/src/links/product-attribute-value-link.js +46 -0
  97. package/.medusa/server/src/links/product-change-link.d.ts +8 -0
  98. package/.medusa/server/src/links/product-change-link.js +27 -0
  99. package/.medusa/server/src/links/product-seller-link.js +2 -2
  100. package/.medusa/server/src/links/product-variant-attribute-link.js +21 -0
  101. package/.medusa/server/src/links/product-variant-attribute-value-link.d.ts +2 -0
  102. package/.medusa/server/src/links/product-variant-attribute-value-link.js +21 -0
  103. package/.medusa/server/src/modules/{product/migrations/Migration20260414141012.d.ts → offer/migrations/Migration20260526000000.d.ts} +1 -1
  104. package/.medusa/server/src/modules/offer/migrations/Migration20260526000000.js +16 -0
  105. package/.medusa/server/src/modules/offer/models/offer.d.ts +0 -1
  106. package/.medusa/server/src/modules/offer/models/offer.js +1 -7
  107. package/.medusa/server/src/modules/offer/service.d.ts +0 -1
  108. package/.medusa/server/src/modules/product-attribute/index.d.ts +36 -0
  109. package/.medusa/server/src/modules/product-attribute/index.js +14 -0
  110. package/.medusa/server/src/modules/product-attribute/joiner-config.d.ts +1 -0
  111. package/.medusa/server/src/modules/product-attribute/joiner-config.js +17 -0
  112. package/.medusa/server/src/modules/{product/migrations/Migration20260415151424.d.ts → product-attribute/migrations/Migration20260601000000.d.ts} +1 -1
  113. package/.medusa/server/src/modules/product-attribute/migrations/Migration20260601000000.js +62 -0
  114. package/.medusa/server/src/modules/product-attribute/migrations/Migration20260601000001.d.ts +11 -0
  115. package/.medusa/server/src/modules/product-attribute/migrations/Migration20260601000001.js +29 -0
  116. package/.medusa/server/src/modules/product-attribute/models/index.d.ts +2 -0
  117. package/.medusa/server/src/modules/product-attribute/models/index.js +11 -0
  118. package/.medusa/server/src/modules/product-attribute/models/product-attribute-value.d.ts +25 -0
  119. package/.medusa/server/src/modules/product-attribute/models/product-attribute-value.js +29 -0
  120. package/.medusa/server/src/modules/product-attribute/models/product-attribute.d.ts +26 -0
  121. package/.medusa/server/src/modules/product-attribute/models/product-attribute.js +53 -0
  122. package/.medusa/server/src/modules/product-attribute/service.d.ts +55 -0
  123. package/.medusa/server/src/modules/product-attribute/service.js +15 -0
  124. package/.medusa/server/src/modules/product-edit/index.d.ts +36 -0
  125. package/.medusa/server/src/modules/{subscription → product-edit}/index.js +4 -2
  126. package/.medusa/server/src/modules/product-edit/joiner-config.d.ts +1 -0
  127. package/.medusa/server/src/modules/product-edit/joiner-config.js +17 -0
  128. package/.medusa/server/src/modules/{product/migrations/Migration20260416104248.d.ts → product-edit/migrations/Migration20260601130000.d.ts} +1 -1
  129. package/.medusa/server/src/modules/product-edit/migrations/Migration20260601130000.js +78 -0
  130. package/.medusa/server/src/modules/product-edit/models/index.d.ts +2 -0
  131. package/.medusa/server/src/modules/product-edit/models/index.js +11 -0
  132. package/.medusa/server/src/modules/product-edit/models/product-change-action.d.ts +49 -0
  133. package/.medusa/server/src/modules/{product → product-edit}/models/product-change-action.js +1 -1
  134. package/.medusa/server/src/modules/product-edit/models/product-change.d.ts +31 -0
  135. package/.medusa/server/src/modules/product-edit/models/product-change.js +52 -0
  136. package/.medusa/server/src/modules/product-edit/service.d.ts +84 -0
  137. package/.medusa/server/src/modules/product-edit/service.js +15 -0
  138. package/.medusa/server/src/types/cart-line-item.d.ts +0 -9
  139. package/.medusa/server/src/with-mercur.js +1 -6
  140. package/.medusa/server/src/workflows/cart/hooks/before-refreshing-payment-collection.js +36 -0
  141. package/.medusa/server/src/workflows/cart/hooks/index.d.ts +3 -2
  142. package/.medusa/server/src/workflows/cart/hooks/index.js +4 -3
  143. package/.medusa/server/src/workflows/cart/hooks/set-pricing-context.js +94 -0
  144. package/.medusa/server/src/workflows/cart/hooks/validate.d.ts +1 -0
  145. package/.medusa/server/src/workflows/cart/hooks/validate.js +107 -0
  146. package/.medusa/server/src/workflows/cart/steps/index.d.ts +0 -3
  147. package/.medusa/server/src/workflows/cart/steps/index.js +1 -4
  148. package/.medusa/server/src/workflows/cart/utils/fields.js +1 -2
  149. package/.medusa/server/src/workflows/cart/workflows/index.d.ts +0 -2
  150. package/.medusa/server/src/workflows/cart/workflows/index.js +1 -3
  151. package/.medusa/server/src/workflows/index.d.ts +1 -1
  152. package/.medusa/server/src/workflows/index.js +2 -2
  153. package/.medusa/server/src/workflows/offer/steps/add-offer-prices.d.ts +22 -0
  154. package/.medusa/server/src/workflows/offer/steps/add-offer-prices.js +64 -0
  155. package/.medusa/server/src/workflows/offer/steps/create-offers.d.ts +0 -1
  156. package/.medusa/server/src/workflows/offer/steps/delete-offers.d.ts +6 -1
  157. package/.medusa/server/src/workflows/offer/steps/delete-offers.js +10 -6
  158. package/.medusa/server/src/workflows/offer/steps/ensure-variant-price-sets.d.ts +15 -0
  159. package/.medusa/server/src/workflows/offer/steps/ensure-variant-price-sets.js +61 -0
  160. package/.medusa/server/src/workflows/offer/steps/index.d.ts +4 -1
  161. package/.medusa/server/src/workflows/offer/steps/index.js +5 -2
  162. package/.medusa/server/src/workflows/offer/steps/remove-offer-prices.d.ts +3 -0
  163. package/.medusa/server/src/workflows/offer/steps/remove-offer-prices.js +15 -0
  164. package/.medusa/server/src/workflows/offer/steps/update-offers.d.ts +0 -1
  165. package/.medusa/server/src/workflows/offer/utils/assert-offer-price-ownership.d.ts +17 -0
  166. package/.medusa/server/src/workflows/offer/utils/assert-offer-price-ownership.js +27 -0
  167. package/.medusa/server/src/workflows/offer/utils/index.d.ts +1 -0
  168. package/.medusa/server/src/workflows/offer/utils/index.js +2 -1
  169. package/.medusa/server/src/workflows/offer/workflows/batch-offer-inventory-items.d.ts +17 -31
  170. package/.medusa/server/src/workflows/offer/workflows/batch-offer-inventory-items.js +1 -1
  171. package/.medusa/server/src/workflows/offer/workflows/create-offers.d.ts +12 -111
  172. package/.medusa/server/src/workflows/offer/workflows/create-offers.js +98 -45
  173. package/.medusa/server/src/workflows/offer/workflows/delete-offers.js +2 -2
  174. package/.medusa/server/src/workflows/offer/workflows/update-offers.d.ts +21 -116
  175. package/.medusa/server/src/workflows/offer/workflows/update-offers.js +136 -20
  176. package/.medusa/server/src/workflows/order/workflows/cancel-order-fulfillment.d.ts +1 -1
  177. package/.medusa/server/src/workflows/order/workflows/cancel-order-fulfillment.js +3 -4
  178. package/.medusa/server/src/workflows/order/workflows/confirm-return-receive.d.ts +1 -1
  179. package/.medusa/server/src/workflows/order/workflows/confirm-return-receive.js +3 -4
  180. package/.medusa/server/src/workflows/order/workflows/create-order-fulfillment.d.ts +10 -33
  181. package/.medusa/server/src/workflows/order/workflows/create-order-fulfillment.js +3 -4
  182. package/.medusa/server/src/workflows/product/events.d.ts +5 -47
  183. package/.medusa/server/src/workflows/product/events.js +7 -49
  184. package/.medusa/server/src/workflows/product/index.d.ts +1 -1
  185. package/.medusa/server/src/workflows/product/index.js +2 -2
  186. package/.medusa/server/src/workflows/product/steps/index.d.ts +3 -28
  187. package/.medusa/server/src/workflows/product/steps/index.js +4 -29
  188. package/.medusa/server/src/workflows/product/steps/replace-product-attribute-value-links.d.ts +28 -0
  189. package/.medusa/server/src/workflows/product/steps/replace-product-attribute-value-links.js +72 -0
  190. package/.medusa/server/src/workflows/product/steps/resolve-attribute-refs.d.ts +90 -0
  191. package/.medusa/server/src/workflows/product/steps/resolve-attribute-refs.js +185 -0
  192. package/.medusa/server/src/workflows/product/steps/validate-products-status.d.ts +19 -0
  193. package/.medusa/server/src/workflows/product/steps/validate-products-status.js +28 -0
  194. package/.medusa/server/src/workflows/product/steps/validate-seller-product-permissions.d.ts +0 -1
  195. package/.medusa/server/src/workflows/product/steps/validate-seller-product-permissions.js +2 -21
  196. package/.medusa/server/src/workflows/product/workflows/confirm-products.d.ts +13 -1
  197. package/.medusa/server/src/workflows/product/workflows/confirm-products.js +41 -30
  198. package/.medusa/server/src/workflows/product/workflows/create-products.d.ts +59 -3
  199. package/.medusa/server/src/workflows/product/workflows/create-products.js +186 -16
  200. package/.medusa/server/src/workflows/product/workflows/index.d.ts +3 -26
  201. package/.medusa/server/src/workflows/product/workflows/index.js +4 -27
  202. package/.medusa/server/src/workflows/product/workflows/link-sellers-to-product-category.d.ts +1 -1
  203. package/.medusa/server/src/workflows/product/workflows/link-sellers-to-product-category.js +3 -4
  204. package/.medusa/server/src/workflows/product/workflows/link-sellers-to-product.d.ts +1 -1
  205. package/.medusa/server/src/workflows/product/workflows/link-sellers-to-product.js +3 -4
  206. package/.medusa/server/src/workflows/product/workflows/reject-product.d.ts +8 -1
  207. package/.medusa/server/src/workflows/product/workflows/reject-product.js +42 -38
  208. package/.medusa/server/src/workflows/product/workflows/request-product-change.d.ts +25 -0
  209. package/.medusa/server/src/workflows/product/workflows/request-product-change.js +69 -0
  210. package/.medusa/server/src/workflows/product/workflows/update-products.d.ts +39 -3
  211. package/.medusa/server/src/workflows/product/workflows/update-products.js +148 -10
  212. package/.medusa/server/src/workflows/product-attribute/events.d.ts +19 -0
  213. package/.medusa/server/src/workflows/product-attribute/events.js +23 -0
  214. package/.medusa/server/src/workflows/{subscription → product-attribute}/index.d.ts +1 -0
  215. package/.medusa/server/src/workflows/{subscription → product-attribute}/index.js +2 -1
  216. package/.medusa/server/src/workflows/product-attribute/steps/create-product-attribute-values.d.ts +37 -0
  217. package/.medusa/server/src/workflows/product-attribute/steps/create-product-attribute-values.js +18 -0
  218. package/.medusa/server/src/workflows/product-attribute/steps/create-product-attributes.d.ts +44 -0
  219. package/.medusa/server/src/workflows/product-attribute/steps/create-product-attributes.js +18 -0
  220. package/.medusa/server/src/workflows/{product → product-attribute}/steps/delete-product-attribute-values.d.ts +1 -0
  221. package/.medusa/server/src/workflows/product-attribute/steps/delete-product-attribute-values.js +18 -0
  222. package/.medusa/server/src/workflows/{product → product-attribute}/steps/delete-product-attributes.d.ts +1 -0
  223. package/.medusa/server/src/workflows/product-attribute/steps/delete-product-attributes.js +18 -0
  224. package/.medusa/server/src/workflows/product-attribute/steps/index.d.ts +10 -0
  225. package/.medusa/server/src/workflows/product-attribute/steps/index.js +27 -0
  226. package/.medusa/server/src/workflows/product-attribute/steps/update-product-attribute-values.d.ts +38 -0
  227. package/.medusa/server/src/workflows/product-attribute/steps/update-product-attribute-values.js +23 -0
  228. package/.medusa/server/src/workflows/product-attribute/steps/update-product-attributes.d.ts +38 -0
  229. package/.medusa/server/src/workflows/{product → product-attribute}/steps/update-product-attributes.js +7 -6
  230. package/.medusa/server/src/workflows/product-attribute/steps/upsert-product-attribute-values.d.ts +43 -0
  231. package/.medusa/server/src/workflows/product-attribute/steps/upsert-product-attribute-values.js +51 -0
  232. package/.medusa/server/src/workflows/product-attribute/steps/upsert-product-options-for-axis.d.ts +7 -0
  233. package/.medusa/server/src/workflows/product-attribute/steps/upsert-product-options-for-axis.js +59 -0
  234. package/.medusa/server/src/workflows/product-attribute/steps/validate-attribute-accepts-values.d.ts +6 -0
  235. package/.medusa/server/src/workflows/product-attribute/steps/validate-attribute-accepts-values.js +20 -0
  236. package/.medusa/server/src/workflows/product-attribute/steps/validate-product-attribute-input.d.ts +7 -0
  237. package/.medusa/server/src/workflows/product-attribute/steps/validate-product-attribute-input.js +20 -0
  238. package/.medusa/server/src/workflows/product-attribute/workflows/add-product-attribute.d.ts +52 -0
  239. package/.medusa/server/src/workflows/product-attribute/workflows/add-product-attribute.js +120 -0
  240. package/.medusa/server/src/workflows/product-attribute/workflows/batch-product-attribute-values.d.ts +23 -0
  241. package/.medusa/server/src/workflows/product-attribute/workflows/batch-product-attribute-values.js +252 -0
  242. package/.medusa/server/src/workflows/product-attribute/workflows/create-product-attribute-values.d.ts +18 -0
  243. package/.medusa/server/src/workflows/product-attribute/workflows/create-product-attribute-values.js +26 -0
  244. package/.medusa/server/src/workflows/product-attribute/workflows/create-product-attributes.d.ts +19 -0
  245. package/.medusa/server/src/workflows/product-attribute/workflows/create-product-attributes.js +64 -0
  246. package/.medusa/server/src/workflows/product-attribute/workflows/delete-product-attribute-values.d.ts +16 -0
  247. package/.medusa/server/src/workflows/product-attribute/workflows/delete-product-attribute-values.js +40 -0
  248. package/.medusa/server/src/workflows/product-attribute/workflows/delete-product-attributes.d.ts +23 -0
  249. package/.medusa/server/src/workflows/product-attribute/workflows/delete-product-attributes.js +31 -0
  250. package/.medusa/server/src/workflows/product-attribute/workflows/detach-product-attribute.d.ts +17 -0
  251. package/.medusa/server/src/workflows/product-attribute/workflows/detach-product-attribute.js +62 -0
  252. package/.medusa/server/src/workflows/product-attribute/workflows/index.d.ts +12 -0
  253. package/.medusa/server/src/workflows/product-attribute/workflows/index.js +29 -0
  254. package/.medusa/server/src/workflows/product-attribute/workflows/materialize-product-attributes.d.ts +135 -0
  255. package/.medusa/server/src/workflows/product-attribute/workflows/materialize-product-attributes.js +43 -0
  256. package/.medusa/server/src/workflows/product-attribute/workflows/sync-product-attribute-options.d.ts +24 -0
  257. package/.medusa/server/src/workflows/product-attribute/workflows/sync-product-attribute-options.js +27 -0
  258. package/.medusa/server/src/workflows/product-attribute/workflows/update-product-attribute-values.d.ts +18 -0
  259. package/.medusa/server/src/workflows/product-attribute/workflows/update-product-attribute-values.js +27 -0
  260. package/.medusa/server/src/workflows/product-attribute/workflows/update-product-attributes.d.ts +18 -0
  261. package/.medusa/server/src/workflows/product-attribute/workflows/update-product-attributes.js +27 -0
  262. package/.medusa/server/src/workflows/product-attribute/workflows/upsert-product-attribute-values.d.ts +18 -0
  263. package/.medusa/server/src/workflows/product-attribute/workflows/upsert-product-attribute-values.js +26 -0
  264. package/.medusa/server/src/workflows/product-edit/events.d.ts +13 -0
  265. package/.medusa/server/src/workflows/product-edit/events.js +17 -0
  266. package/.medusa/server/src/workflows/product-edit/index.d.ts +1 -0
  267. package/.medusa/server/src/workflows/product-edit/index.js +2 -1
  268. package/.medusa/server/src/workflows/product-edit/steps/add-product-change-action.d.ts +38 -0
  269. package/.medusa/server/src/workflows/product-edit/steps/add-product-change-action.js +18 -0
  270. package/.medusa/server/src/workflows/product-edit/steps/cancel-product-change.d.ts +38 -2
  271. package/.medusa/server/src/workflows/product-edit/steps/cancel-product-change.js +28 -10
  272. package/.medusa/server/src/workflows/product-edit/steps/confirm-product-change-validation.d.ts +15 -0
  273. package/.medusa/server/src/workflows/product-edit/steps/confirm-product-change-validation.js +25 -0
  274. package/.medusa/server/src/workflows/product-edit/steps/confirm-product-changes.d.ts +46 -3
  275. package/.medusa/server/src/workflows/product-edit/steps/confirm-product-changes.js +44 -7
  276. package/.medusa/server/src/workflows/product-edit/steps/create-product-change-actions.d.ts +41 -14
  277. package/.medusa/server/src/workflows/product-edit/steps/create-product-change-actions.js +20 -11
  278. package/.medusa/server/src/workflows/product-edit/steps/create-product-changes.d.ts +46 -16
  279. package/.medusa/server/src/workflows/product-edit/steps/create-product-changes.js +11 -18
  280. package/.medusa/server/src/workflows/product-edit/steps/decline-product-change.d.ts +44 -3
  281. package/.medusa/server/src/workflows/product-edit/steps/decline-product-change.js +37 -10
  282. package/.medusa/server/src/workflows/product-edit/steps/index.d.ts +5 -3
  283. package/.medusa/server/src/workflows/product-edit/steps/index.js +6 -4
  284. package/.medusa/server/src/workflows/product-edit/steps/update-product-change-actions.d.ts +49 -0
  285. package/.medusa/server/src/workflows/product-edit/steps/update-product-change-actions.js +34 -0
  286. package/.medusa/server/src/workflows/product-edit/steps/validate-no-pending-product-change.d.ts +7 -7
  287. package/.medusa/server/src/workflows/product-edit/steps/validate-no-pending-product-change.js +29 -13
  288. package/.medusa/server/src/workflows/product-edit/steps/validate-product-change-is-pending.d.ts +10 -0
  289. package/.medusa/server/src/workflows/product-edit/steps/validate-product-change-is-pending.js +14 -0
  290. package/.medusa/server/src/workflows/product-edit/workflows/apply-product-attribute-change-actions.d.ts +23 -0
  291. package/.medusa/server/src/workflows/product-edit/workflows/apply-product-attribute-change-actions.js +139 -0
  292. package/.medusa/server/src/workflows/product-edit/workflows/apply-product-change-actions.d.ts +38 -0
  293. package/.medusa/server/src/workflows/product-edit/workflows/apply-product-change-actions.js +191 -0
  294. package/.medusa/server/src/workflows/product-edit/workflows/auto-confirm-product-change.d.ts +14 -13
  295. package/.medusa/server/src/workflows/product-edit/workflows/auto-confirm-product-change.js +14 -22
  296. package/.medusa/server/src/workflows/product-edit/workflows/cancel-product-change.d.ts +17 -0
  297. package/.medusa/server/src/workflows/product-edit/workflows/cancel-product-change.js +35 -0
  298. package/.medusa/server/src/workflows/product-edit/workflows/confirm-product-change.d.ts +30 -0
  299. package/.medusa/server/src/workflows/product-edit/workflows/confirm-product-change.js +55 -0
  300. package/.medusa/server/src/workflows/product-edit/workflows/create-product-change.d.ts +17 -0
  301. package/.medusa/server/src/workflows/product-edit/workflows/create-product-change.js +26 -0
  302. package/.medusa/server/src/workflows/product-edit/workflows/index.d.ts +10 -8
  303. package/.medusa/server/src/workflows/product-edit/workflows/index.js +11 -9
  304. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-delete-product.d.ts +14 -17
  305. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-delete-product.js +21 -46
  306. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-update-attributes.d.ts +55 -0
  307. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-update-attributes.js +198 -0
  308. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-update-fields.d.ts +22 -15
  309. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-update-fields.js +126 -50
  310. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-update-variants.d.ts +35 -0
  311. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-update-variants.js +108 -0
  312. package/.medusa/server/src/workflows/product-edit/workflows/record-product-audit-change.d.ts +36 -0
  313. package/.medusa/server/src/workflows/product-edit/workflows/record-product-audit-change.js +53 -0
  314. package/.medusa/server/src/workflows/product-edit/workflows/reject-product-change.d.ts +18 -0
  315. package/.medusa/server/src/workflows/product-edit/workflows/reject-product-change.js +36 -0
  316. package/.medusa/server/src/workflows/product-edit/workflows/stage-product-change.d.ts +35 -0
  317. package/.medusa/server/src/workflows/product-edit/workflows/stage-product-change.js +57 -0
  318. package/.medusa/server/src/workflows/seller/workflows/create-sellers.d.ts +20 -2
  319. package/.medusa/server/src/workflows/seller/workflows/create-sellers.js +1 -1
  320. package/.medusa/server/src/workflows/seller/workflows/update-seller-address.d.ts +14 -2
  321. package/.medusa/server/src/workflows/seller/workflows/update-seller-address.js +1 -1
  322. package/.medusa/server/src/workflows/seller/workflows/update-seller-payment-details.d.ts +14 -2
  323. package/.medusa/server/src/workflows/seller/workflows/update-seller-payment-details.js +1 -1
  324. package/.medusa/server/src/workflows/seller/workflows/update-seller-professional-details.d.ts +14 -2
  325. package/.medusa/server/src/workflows/seller/workflows/update-seller-professional-details.js +1 -1
  326. package/.medusa/server/src/workflows/seller/workflows/update-seller.d.ts +14 -2
  327. package/.medusa/server/src/workflows/seller/workflows/update-seller.js +1 -1
  328. package/package.json +3 -3
  329. package/.medusa/server/src/api/admin/product-brands/[id]/route.d.ts +0 -7
  330. package/.medusa/server/src/api/admin/product-brands/[id]/route.js +0 -51
  331. package/.medusa/server/src/api/admin/product-brands/[id]/sellers/route.d.ts +0 -3
  332. package/.medusa/server/src/api/admin/product-brands/[id]/sellers/route.js +0 -20
  333. package/.medusa/server/src/api/admin/product-brands/middlewares.d.ts +0 -2
  334. package/.medusa/server/src/api/admin/product-brands/middlewares.js +0 -49
  335. package/.medusa/server/src/api/admin/product-brands/query-config.d.ts +0 -12
  336. package/.medusa/server/src/api/admin/product-brands/query-config.js +0 -24
  337. package/.medusa/server/src/api/admin/product-brands/route.d.ts +0 -6
  338. package/.medusa/server/src/api/admin/product-brands/route.js +0 -38
  339. package/.medusa/server/src/api/admin/product-brands/validators.d.ts +0 -284
  340. package/.medusa/server/src/api/admin/product-brands/validators.js +0 -41
  341. package/.medusa/server/src/api/admin/products/batch/route.d.ts +0 -4
  342. package/.medusa/server/src/api/admin/products/batch/route.js +0 -36
  343. package/.medusa/server/src/api/admin/subscription-plans/[id]/overrides/[override_id]/route.d.ts +0 -6
  344. package/.medusa/server/src/api/admin/subscription-plans/[id]/overrides/[override_id]/route.js +0 -43
  345. package/.medusa/server/src/api/admin/subscription-plans/[id]/overrides/route.d.ts +0 -4
  346. package/.medusa/server/src/api/admin/subscription-plans/[id]/overrides/route.js +0 -24
  347. package/.medusa/server/src/api/admin/subscription-plans/[id]/route.d.ts +0 -6
  348. package/.medusa/server/src/api/admin/subscription-plans/[id]/route.js +0 -43
  349. package/.medusa/server/src/api/admin/subscription-plans/middlewares.d.ts +0 -2
  350. package/.medusa/server/src/api/admin/subscription-plans/middlewares.js +0 -81
  351. package/.medusa/server/src/api/admin/subscription-plans/query-config.d.ts +0 -17
  352. package/.medusa/server/src/api/admin/subscription-plans/query-config.js +0 -43
  353. package/.medusa/server/src/api/admin/subscription-plans/route.d.ts +0 -5
  354. package/.medusa/server/src/api/admin/subscription-plans/route.js +0 -35
  355. package/.medusa/server/src/api/admin/subscription-plans/validators.d.ts +0 -117
  356. package/.medusa/server/src/api/admin/subscription-plans/validators.js +0 -42
  357. package/.medusa/server/src/api/store/product-brands/[id]/route.d.ts +0 -2
  358. package/.medusa/server/src/api/store/product-brands/[id]/route.js +0 -18
  359. package/.medusa/server/src/api/store/product-brands/middlewares.d.ts +0 -2
  360. package/.medusa/server/src/api/store/product-brands/middlewares.js +0 -23
  361. package/.medusa/server/src/api/store/product-brands/query-config.d.ts +0 -12
  362. package/.medusa/server/src/api/store/product-brands/query-config.js +0 -23
  363. package/.medusa/server/src/api/store/product-brands/route.d.ts +0 -2
  364. package/.medusa/server/src/api/store/product-brands/route.js +0 -21
  365. package/.medusa/server/src/api/store/product-brands/validators.d.ts +0 -215
  366. package/.medusa/server/src/api/store/product-brands/validators.js +0 -21
  367. package/.medusa/server/src/api/utils/wrap-variants-with-offers-inventory.d.ts +0 -12
  368. package/.medusa/server/src/api/utils/wrap-variants-with-offers-inventory.js +0 -165
  369. package/.medusa/server/src/api/utils/wrap-variants-with-offers-prices.d.ts +0 -12
  370. package/.medusa/server/src/api/utils/wrap-variants-with-offers-prices.js +0 -64
  371. package/.medusa/server/src/api/vendor/product-brands/[id]/route.d.ts +0 -3
  372. package/.medusa/server/src/api/vendor/product-brands/[id]/route.js +0 -18
  373. package/.medusa/server/src/api/vendor/product-brands/middlewares.d.ts +0 -2
  374. package/.medusa/server/src/api/vendor/product-brands/middlewares.js +0 -23
  375. package/.medusa/server/src/api/vendor/product-brands/query-config.d.ts +0 -12
  376. package/.medusa/server/src/api/vendor/product-brands/query-config.js +0 -24
  377. package/.medusa/server/src/api/vendor/product-brands/route.d.ts +0 -3
  378. package/.medusa/server/src/api/vendor/product-brands/route.js +0 -21
  379. package/.medusa/server/src/api/vendor/product-brands/validators.d.ts +0 -221
  380. package/.medusa/server/src/api/vendor/product-brands/validators.js +0 -22
  381. package/.medusa/server/src/api/vendor/subscription/middlewares.d.ts +0 -2
  382. package/.medusa/server/src/api/vendor/subscription/middlewares.js +0 -28
  383. package/.medusa/server/src/api/vendor/subscription/route.d.ts +0 -3
  384. package/.medusa/server/src/api/vendor/subscription/route.js +0 -31
  385. package/.medusa/server/src/links/brand-seller-link.js +0 -16
  386. package/.medusa/server/src/links/offer-price-set-link.js +0 -15
  387. package/.medusa/server/src/modules/product/index.d.ts +0 -7
  388. package/.medusa/server/src/modules/product/index.js +0 -14
  389. package/.medusa/server/src/modules/product/migrations/Migration20260414141012.js +0 -169
  390. package/.medusa/server/src/modules/product/migrations/Migration20260415151424.js +0 -14
  391. package/.medusa/server/src/modules/product/migrations/Migration20260416104248.js +0 -14
  392. package/.medusa/server/src/modules/product/migrations/Migration20260416105443.d.ts +0 -5
  393. package/.medusa/server/src/modules/product/migrations/Migration20260416105443.js +0 -16
  394. package/.medusa/server/src/modules/product/migrations/Migration20260421093258.d.ts +0 -5
  395. package/.medusa/server/src/modules/product/migrations/Migration20260421093258.js +0 -22
  396. package/.medusa/server/src/modules/product/migrations/Migration20260422105949.d.ts +0 -5
  397. package/.medusa/server/src/modules/product/migrations/Migration20260422105949.js +0 -32
  398. package/.medusa/server/src/modules/product/migrations/Migration20260422112250.d.ts +0 -5
  399. package/.medusa/server/src/modules/product/migrations/Migration20260422112250.js +0 -16
  400. package/.medusa/server/src/modules/product/migrations/Migration20260424120000.d.ts +0 -5
  401. package/.medusa/server/src/modules/product/migrations/Migration20260424120000.js +0 -16
  402. package/.medusa/server/src/modules/product/migrations/Migration20260427140959.d.ts +0 -5
  403. package/.medusa/server/src/modules/product/migrations/Migration20260427140959.js +0 -20
  404. package/.medusa/server/src/modules/product/migrations/Migration20260427141021.d.ts +0 -5
  405. package/.medusa/server/src/modules/product/migrations/Migration20260427141021.js +0 -16
  406. package/.medusa/server/src/modules/product/migrations/Migration20260428115720.d.ts +0 -5
  407. package/.medusa/server/src/modules/product/migrations/Migration20260428115720.js +0 -16
  408. package/.medusa/server/src/modules/product/migrations/Migration20260430143600.d.ts +0 -5
  409. package/.medusa/server/src/modules/product/migrations/Migration20260430143600.js +0 -15
  410. package/.medusa/server/src/modules/product/migrations/Migration20260430144500.d.ts +0 -5
  411. package/.medusa/server/src/modules/product/migrations/Migration20260430144500.js +0 -23
  412. package/.medusa/server/src/modules/product/migrations/Migration20260430150000.d.ts +0 -5
  413. package/.medusa/server/src/modules/product/migrations/Migration20260430150000.js +0 -14
  414. package/.medusa/server/src/modules/product/migrations/Migration20260520120000.d.ts +0 -5
  415. package/.medusa/server/src/modules/product/migrations/Migration20260520120000.js +0 -16
  416. package/.medusa/server/src/modules/product/models/index.d.ts +0 -13
  417. package/.medusa/server/src/modules/product/models/index.js +0 -33
  418. package/.medusa/server/src/modules/product/models/product-attribute-value.d.ts +0 -1698
  419. package/.medusa/server/src/modules/product/models/product-attribute-value.js +0 -38
  420. package/.medusa/server/src/modules/product/models/product-attribute.d.ts +0 -1627
  421. package/.medusa/server/src/modules/product/models/product-attribute.js +0 -57
  422. package/.medusa/server/src/modules/product/models/product-brand.d.ts +0 -551
  423. package/.medusa/server/src/modules/product/models/product-brand.js +0 -34
  424. package/.medusa/server/src/modules/product/models/product-category.d.ts +0 -1692
  425. package/.medusa/server/src/modules/product/models/product-category.js +0 -55
  426. package/.medusa/server/src/modules/product/models/product-change-action.d.ts +0 -1105
  427. package/.medusa/server/src/modules/product/models/product-change.d.ts +0 -559
  428. package/.medusa/server/src/modules/product/models/product-change.js +0 -50
  429. package/.medusa/server/src/modules/product/models/product-collection.d.ts +0 -552
  430. package/.medusa/server/src/modules/product/models/product-collection.js +0 -27
  431. package/.medusa/server/src/modules/product/models/product-image.d.ts +0 -1745
  432. package/.medusa/server/src/modules/product/models/product-image.js +0 -51
  433. package/.medusa/server/src/modules/product/models/product-tag.d.ts +0 -561
  434. package/.medusa/server/src/modules/product/models/product-tag.js +0 -26
  435. package/.medusa/server/src/modules/product/models/product-type.d.ts +0 -553
  436. package/.medusa/server/src/modules/product/models/product-type.js +0 -26
  437. package/.medusa/server/src/modules/product/models/product-variant-product-image.d.ts +0 -3366
  438. package/.medusa/server/src/modules/product/models/product-variant-product-image.js +0 -19
  439. package/.medusa/server/src/modules/product/models/product-variant.d.ts +0 -1619
  440. package/.medusa/server/src/modules/product/models/product-variant.js +0 -87
  441. package/.medusa/server/src/modules/product/models/product.d.ts +0 -559
  442. package/.medusa/server/src/modules/product/models/product.js +0 -137
  443. package/.medusa/server/src/modules/product/repositories/product-category.d.ts +0 -53
  444. package/.medusa/server/src/modules/product/repositories/product-category.js +0 -381
  445. package/.medusa/server/src/modules/product/service.d.ts +0 -11209
  446. package/.medusa/server/src/modules/product/service.js +0 -1471
  447. package/.medusa/server/src/modules/product/services/product-category.d.ts +0 -37
  448. package/.medusa/server/src/modules/product/services/product-category.js +0 -166
  449. package/.medusa/server/src/modules/subscription/index.d.ts +0 -35
  450. package/.medusa/server/src/modules/subscription/migrations/Migration20260324135903.d.ts +0 -5
  451. package/.medusa/server/src/modules/subscription/migrations/Migration20260324135903.js +0 -24
  452. package/.medusa/server/src/modules/subscription/models/index.d.ts +0 -2
  453. package/.medusa/server/src/modules/subscription/models/index.js +0 -11
  454. package/.medusa/server/src/modules/subscription/models/subscription-override.d.ts +0 -20
  455. package/.medusa/server/src/modules/subscription/models/subscription-override.js +0 -36
  456. package/.medusa/server/src/modules/subscription/models/subscription-plan.d.ts +0 -20
  457. package/.medusa/server/src/modules/subscription/models/subscription-plan.js +0 -32
  458. package/.medusa/server/src/modules/subscription/service.d.ts +0 -49
  459. package/.medusa/server/src/modules/subscription/service.js +0 -17
  460. package/.medusa/server/src/workflows/cart/hooks/validate-add-to-cart-stock.js +0 -52
  461. package/.medusa/server/src/workflows/cart/hooks/validate-update-line-item-stock.js +0 -60
  462. package/.medusa/server/src/workflows/cart/steps/calculate-offer-prices.d.ts +0 -19
  463. package/.medusa/server/src/workflows/cart/steps/calculate-offer-prices.js +0 -39
  464. package/.medusa/server/src/workflows/cart/steps/decorate-line-item-with-offer.d.ts +0 -8
  465. package/.medusa/server/src/workflows/cart/steps/decorate-line-item-with-offer.js +0 -45
  466. package/.medusa/server/src/workflows/cart/steps/get-line-item-actions.d.ts +0 -21
  467. package/.medusa/server/src/workflows/cart/steps/get-line-item-actions.js +0 -85
  468. package/.medusa/server/src/workflows/cart/workflows/add-to-cart.d.ts +0 -12
  469. package/.medusa/server/src/workflows/cart/workflows/add-to-cart.js +0 -235
  470. package/.medusa/server/src/workflows/cart/workflows/update-line-item-in-cart.d.ts +0 -16
  471. package/.medusa/server/src/workflows/cart/workflows/update-line-item-in-cart.js +0 -87
  472. package/.medusa/server/src/workflows/product/steps/associate-sellers-with-product-brand.d.ts +0 -8
  473. package/.medusa/server/src/workflows/product/steps/associate-sellers-with-product-brand.js +0 -26
  474. package/.medusa/server/src/workflows/product/steps/batch-link-products-in-category.d.ts +0 -7
  475. package/.medusa/server/src/workflows/product/steps/batch-link-products-in-category.js +0 -61
  476. package/.medusa/server/src/workflows/product/steps/batch-product-attributes.d.ts +0 -11
  477. package/.medusa/server/src/workflows/product/steps/batch-product-attributes.js +0 -16
  478. package/.medusa/server/src/workflows/product/steps/create-product-attribute-values.d.ts +0 -6
  479. package/.medusa/server/src/workflows/product/steps/create-product-attribute-values.js +0 -17
  480. package/.medusa/server/src/workflows/product/steps/create-product-attributes.d.ts +0 -2
  481. package/.medusa/server/src/workflows/product/steps/create-product-attributes.js +0 -17
  482. package/.medusa/server/src/workflows/product/steps/create-product-brands.d.ts +0 -2
  483. package/.medusa/server/src/workflows/product/steps/create-product-brands.js +0 -17
  484. package/.medusa/server/src/workflows/product/steps/create-product-categories.d.ts +0 -1576
  485. package/.medusa/server/src/workflows/product/steps/create-product-categories.js +0 -18
  486. package/.medusa/server/src/workflows/product/steps/create-product-variants.d.ts +0 -2
  487. package/.medusa/server/src/workflows/product/steps/create-product-variants.js +0 -18
  488. package/.medusa/server/src/workflows/product/steps/create-products.d.ts +0 -2
  489. package/.medusa/server/src/workflows/product/steps/create-products.js +0 -17
  490. package/.medusa/server/src/workflows/product/steps/delete-product-attribute-values.js +0 -17
  491. package/.medusa/server/src/workflows/product/steps/delete-product-attributes.js +0 -17
  492. package/.medusa/server/src/workflows/product/steps/delete-product-brands.d.ts +0 -1
  493. package/.medusa/server/src/workflows/product/steps/delete-product-brands.js +0 -17
  494. package/.medusa/server/src/workflows/product/steps/delete-product-categories.d.ts +0 -1
  495. package/.medusa/server/src/workflows/product/steps/delete-product-categories.js +0 -17
  496. package/.medusa/server/src/workflows/product/steps/delete-product-variants.d.ts +0 -1
  497. package/.medusa/server/src/workflows/product/steps/delete-product-variants.js +0 -17
  498. package/.medusa/server/src/workflows/product/steps/delete-products.d.ts +0 -1
  499. package/.medusa/server/src/workflows/product/steps/delete-products.js +0 -17
  500. package/.medusa/server/src/workflows/product/steps/detach-sellers-from-product-brand.d.ts +0 -8
  501. package/.medusa/server/src/workflows/product/steps/detach-sellers-from-product-brand.js +0 -26
  502. package/.medusa/server/src/workflows/product/steps/remove-attribute-from-product.d.ts +0 -6
  503. package/.medusa/server/src/workflows/product/steps/remove-attribute-from-product.js +0 -11
  504. package/.medusa/server/src/workflows/product/steps/update-product-attribute-values.d.ts +0 -7
  505. package/.medusa/server/src/workflows/product/steps/update-product-attribute-values.js +0 -22
  506. package/.medusa/server/src/workflows/product/steps/update-product-attributes.d.ts +0 -7
  507. package/.medusa/server/src/workflows/product/steps/update-product-brands.d.ts +0 -7
  508. package/.medusa/server/src/workflows/product/steps/update-product-brands.js +0 -28
  509. package/.medusa/server/src/workflows/product/steps/update-product-categories.d.ts +0 -1580
  510. package/.medusa/server/src/workflows/product/steps/update-product-categories.js +0 -20
  511. package/.medusa/server/src/workflows/product/steps/update-product-variants.d.ts +0 -10
  512. package/.medusa/server/src/workflows/product/steps/update-product-variants.js +0 -32
  513. package/.medusa/server/src/workflows/product/steps/update-products.d.ts +0 -10
  514. package/.medusa/server/src/workflows/product/steps/update-products.js +0 -33
  515. package/.medusa/server/src/workflows/product/steps/upsert-product-attribute-values.d.ts +0 -5
  516. package/.medusa/server/src/workflows/product/steps/upsert-product-attribute-values.js +0 -30
  517. package/.medusa/server/src/workflows/product/steps/validate-attribute-accepts-values.d.ts +0 -5
  518. package/.medusa/server/src/workflows/product/steps/validate-attribute-accepts-values.js +0 -19
  519. package/.medusa/server/src/workflows/product/steps/validate-confirm-products.d.ts +0 -3
  520. package/.medusa/server/src/workflows/product/steps/validate-confirm-products.js +0 -14
  521. package/.medusa/server/src/workflows/product/steps/validate-delete-product-attribute-values.d.ts +0 -5
  522. package/.medusa/server/src/workflows/product/steps/validate-delete-product-attribute-values.js +0 -19
  523. package/.medusa/server/src/workflows/product/steps/validate-delete-product-attributes.d.ts +0 -5
  524. package/.medusa/server/src/workflows/product/steps/validate-delete-product-attributes.js +0 -30
  525. package/.medusa/server/src/workflows/product/steps/validate-reject-product.d.ts +0 -3
  526. package/.medusa/server/src/workflows/product/steps/validate-reject-product.js +0 -12
  527. package/.medusa/server/src/workflows/product/steps/validate-request-changes.d.ts +0 -3
  528. package/.medusa/server/src/workflows/product/steps/validate-request-changes.js +0 -12
  529. package/.medusa/server/src/workflows/product/steps/validate-resubmit-product.d.ts +0 -3
  530. package/.medusa/server/src/workflows/product/steps/validate-resubmit-product.js +0 -12
  531. package/.medusa/server/src/workflows/product/workflows/batch-link-products-in-category.d.ts +0 -8
  532. package/.medusa/server/src/workflows/product/workflows/batch-link-products-in-category.js +0 -10
  533. package/.medusa/server/src/workflows/product/workflows/batch-product-attributes.d.ts +0 -12
  534. package/.medusa/server/src/workflows/product/workflows/batch-product-attributes.js +0 -23
  535. package/.medusa/server/src/workflows/product/workflows/batch-products.d.ts +0 -3
  536. package/.medusa/server/src/workflows/product/workflows/batch-products.js +0 -86
  537. package/.medusa/server/src/workflows/product/workflows/create-product-attribute-values.d.ts +0 -8
  538. package/.medusa/server/src/workflows/product/workflows/create-product-attribute-values.js +0 -21
  539. package/.medusa/server/src/workflows/product/workflows/create-product-attributes.d.ts +0 -7
  540. package/.medusa/server/src/workflows/product/workflows/create-product-attributes.js +0 -18
  541. package/.medusa/server/src/workflows/product/workflows/create-product-brands.d.ts +0 -7
  542. package/.medusa/server/src/workflows/product/workflows/create-product-brands.js +0 -19
  543. package/.medusa/server/src/workflows/product/workflows/create-product-categories.d.ts +0 -1581
  544. package/.medusa/server/src/workflows/product/workflows/create-product-categories.js +0 -18
  545. package/.medusa/server/src/workflows/product/workflows/create-product-variants.d.ts +0 -3
  546. package/.medusa/server/src/workflows/product/workflows/create-product-variants.js +0 -25
  547. package/.medusa/server/src/workflows/product/workflows/delete-product-attribute-values.d.ts +0 -6
  548. package/.medusa/server/src/workflows/product/workflows/delete-product-attribute-values.js +0 -20
  549. package/.medusa/server/src/workflows/product/workflows/delete-product-attributes.d.ts +0 -6
  550. package/.medusa/server/src/workflows/product/workflows/delete-product-attributes.js +0 -20
  551. package/.medusa/server/src/workflows/product/workflows/delete-product-brands.d.ts +0 -6
  552. package/.medusa/server/src/workflows/product/workflows/delete-product-brands.js +0 -19
  553. package/.medusa/server/src/workflows/product/workflows/delete-product-categories.d.ts +0 -6
  554. package/.medusa/server/src/workflows/product/workflows/delete-product-categories.js +0 -18
  555. package/.medusa/server/src/workflows/product/workflows/delete-product-variants.d.ts +0 -8
  556. package/.medusa/server/src/workflows/product/workflows/delete-product-variants.js +0 -24
  557. package/.medusa/server/src/workflows/product/workflows/delete-products.d.ts +0 -6
  558. package/.medusa/server/src/workflows/product/workflows/delete-products.js +0 -19
  559. package/.medusa/server/src/workflows/product/workflows/link-sellers-to-product-brand.d.ts +0 -14
  560. package/.medusa/server/src/workflows/product/workflows/link-sellers-to-product-brand.js +0 -21
  561. package/.medusa/server/src/workflows/product/workflows/remove-attribute-from-product.d.ts +0 -7
  562. package/.medusa/server/src/workflows/product/workflows/remove-attribute-from-product.js +0 -20
  563. package/.medusa/server/src/workflows/product/workflows/request-product-changes.d.ts +0 -11
  564. package/.medusa/server/src/workflows/product/workflows/request-product-changes.js +0 -61
  565. package/.medusa/server/src/workflows/product/workflows/resubmit-product.d.ts +0 -8
  566. package/.medusa/server/src/workflows/product/workflows/resubmit-product.js +0 -48
  567. package/.medusa/server/src/workflows/product/workflows/submit-seller-products.d.ts +0 -3
  568. package/.medusa/server/src/workflows/product/workflows/submit-seller-products.js +0 -76
  569. package/.medusa/server/src/workflows/product/workflows/update-product-attribute-values.d.ts +0 -8
  570. package/.medusa/server/src/workflows/product/workflows/update-product-attribute-values.js +0 -18
  571. package/.medusa/server/src/workflows/product/workflows/update-product-attributes.d.ts +0 -8
  572. package/.medusa/server/src/workflows/product/workflows/update-product-attributes.js +0 -18
  573. package/.medusa/server/src/workflows/product/workflows/update-product-brands.d.ts +0 -8
  574. package/.medusa/server/src/workflows/product/workflows/update-product-brands.js +0 -19
  575. package/.medusa/server/src/workflows/product/workflows/update-product-categories.d.ts +0 -1583
  576. package/.medusa/server/src/workflows/product/workflows/update-product-categories.js +0 -18
  577. package/.medusa/server/src/workflows/product/workflows/update-product-variants.d.ts +0 -3
  578. package/.medusa/server/src/workflows/product/workflows/update-product-variants.js +0 -36
  579. package/.medusa/server/src/workflows/product/workflows/upsert-product-attribute-values.d.ts +0 -8
  580. package/.medusa/server/src/workflows/product/workflows/upsert-product-attribute-values.js +0 -21
  581. package/.medusa/server/src/workflows/product-edit/steps/retrieve-product-with-change.d.ts +0 -5
  582. package/.medusa/server/src/workflows/product-edit/steps/retrieve-product-with-change.js +0 -11
  583. package/.medusa/server/src/workflows/product-edit/steps/validate-product-change-pending.d.ts +0 -11
  584. package/.medusa/server/src/workflows/product-edit/steps/validate-product-change-pending.js +0 -21
  585. package/.medusa/server/src/workflows/product-edit/workflows/cancel-product-edit.d.ts +0 -19
  586. package/.medusa/server/src/workflows/product-edit/workflows/cancel-product-edit.js +0 -40
  587. package/.medusa/server/src/workflows/product-edit/workflows/confirm-product-edit.d.ts +0 -21
  588. package/.medusa/server/src/workflows/product-edit/workflows/confirm-product-edit.js +0 -44
  589. package/.medusa/server/src/workflows/product-edit/workflows/decline-product-edit.d.ts +0 -16
  590. package/.medusa/server/src/workflows/product-edit/workflows/decline-product-edit.js +0 -42
  591. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-add-attribute.d.ts +0 -19
  592. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-add-attribute.js +0 -66
  593. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-add-variant.d.ts +0 -17
  594. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-add-variant.js +0 -58
  595. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-remove-attribute.d.ts +0 -17
  596. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-remove-attribute.js +0 -62
  597. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-remove-variant.d.ts +0 -16
  598. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-remove-variant.js +0 -68
  599. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-update-variant.d.ts +0 -21
  600. package/.medusa/server/src/workflows/product-edit/workflows/product-edit-update-variant.js +0 -89
  601. package/.medusa/server/src/workflows/subscription/steps/create-subscription-overrides.d.ts +0 -31
  602. package/.medusa/server/src/workflows/subscription/steps/create-subscription-overrides.js +0 -17
  603. package/.medusa/server/src/workflows/subscription/steps/create-subscription-plans.d.ts +0 -31
  604. package/.medusa/server/src/workflows/subscription/steps/create-subscription-plans.js +0 -17
  605. package/.medusa/server/src/workflows/subscription/steps/delete-subscription-overrides.d.ts +0 -2
  606. package/.medusa/server/src/workflows/subscription/steps/delete-subscription-overrides.js +0 -17
  607. package/.medusa/server/src/workflows/subscription/steps/delete-subscription-plans.d.ts +0 -2
  608. package/.medusa/server/src/workflows/subscription/steps/delete-subscription-plans.js +0 -17
  609. package/.medusa/server/src/workflows/subscription/steps/index.d.ts +0 -6
  610. package/.medusa/server/src/workflows/subscription/steps/index.js +0 -23
  611. package/.medusa/server/src/workflows/subscription/steps/update-subscription-overrides.d.ts +0 -31
  612. package/.medusa/server/src/workflows/subscription/steps/update-subscription-overrides.js +0 -17
  613. package/.medusa/server/src/workflows/subscription/steps/update-subscription-plans.d.ts +0 -31
  614. package/.medusa/server/src/workflows/subscription/steps/update-subscription-plans.js +0 -17
  615. package/.medusa/server/src/workflows/subscription/workflows/create-subscription-overrides.d.ts +0 -31
  616. package/.medusa/server/src/workflows/subscription/workflows/create-subscription-overrides.js +0 -11
  617. package/.medusa/server/src/workflows/subscription/workflows/create-subscription-plans.d.ts +0 -31
  618. package/.medusa/server/src/workflows/subscription/workflows/create-subscription-plans.js +0 -11
  619. package/.medusa/server/src/workflows/subscription/workflows/delete-subscription-overrides.d.ts +0 -5
  620. package/.medusa/server/src/workflows/subscription/workflows/delete-subscription-overrides.js +0 -11
  621. package/.medusa/server/src/workflows/subscription/workflows/delete-subscription-plans.d.ts +0 -5
  622. package/.medusa/server/src/workflows/subscription/workflows/delete-subscription-plans.js +0 -11
  623. package/.medusa/server/src/workflows/subscription/workflows/index.d.ts +0 -6
  624. package/.medusa/server/src/workflows/subscription/workflows/index.js +0 -23
  625. package/.medusa/server/src/workflows/subscription/workflows/update-subscription-overrides.d.ts +0 -31
  626. package/.medusa/server/src/workflows/subscription/workflows/update-subscription-overrides.js +0 -11
  627. package/.medusa/server/src/workflows/subscription/workflows/update-subscription-plans.d.ts +0 -31
  628. package/.medusa/server/src/workflows/subscription/workflows/update-subscription-plans.js +0 -11
  629. package/.medusa/server/src/workflows/utils/override-workflow.d.ts +0 -12
  630. package/.medusa/server/src/workflows/utils/override-workflow.js +0 -21
  631. /package/.medusa/server/src/links/{brand-seller-link.d.ts → offer-price-link.d.ts} +0 -0
  632. /package/.medusa/server/src/links/{offer-price-set-link.d.ts → product-variant-attribute-link.d.ts} +0 -0
  633. /package/.medusa/server/src/workflows/cart/hooks/{validate-add-to-cart-stock.d.ts → before-refreshing-payment-collection.d.ts} +0 -0
  634. /package/.medusa/server/src/workflows/cart/hooks/{validate-update-line-item-stock.d.ts → set-pricing-context.d.ts} +0 -0
@@ -0,0 +1,120 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.addProductAttributeWorkflow = exports.addProductAttributeWorkflowId = void 0;
4
+ const utils_1 = require("@medusajs/framework/utils");
5
+ const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
6
+ const core_flows_1 = require("@medusajs/medusa/core-flows");
7
+ const types_1 = require("@mercurjs/types");
8
+ const materialize_product_attributes_1 = require("./materialize-product-attributes");
9
+ const sync_product_attribute_options_1 = require("./sync-product-attribute-options");
10
+ const steps_1 = require("../../product/steps");
11
+ exports.addProductAttributeWorkflowId = "add-product-attribute";
12
+ /**
13
+ * Adds a product attribute to a product in one shot. Composes the
14
+ * marketplace building blocks:
15
+ *
16
+ * 1. `resolveAttributeRefsStep` — existing attribute lookups (by
17
+ * `attribute_id`) and value-name → id resolution.
18
+ * 2. `materializeProductAttributesWorkflow` — when the caller passed
19
+ * inline `{ name, type, … }`, creates the product-scoped
20
+ * attribute + its values.
21
+ * 3. `createRemoteLinkStep` — writes `product_attribute_value_link`
22
+ * rows so the product picks up the attached values on next read.
23
+ * 4. `syncProductAttributeOptionsWorkflow` — upserts a stock product
24
+ * option for variant-axis attributes so the product's option set
25
+ * stays in sync with its variant axes.
26
+ */
27
+ exports.addProductAttributeWorkflow = (0, workflows_sdk_1.createWorkflow)(exports.addProductAttributeWorkflowId, function (input) {
28
+ const groups = (0, workflows_sdk_1.transform)({ input }, ({ input }) => {
29
+ const ref = input.attribute_id !== undefined
30
+ ? {
31
+ attribute_id: input.attribute_id,
32
+ value_ids: input.value_ids,
33
+ values: input.values,
34
+ }
35
+ : {
36
+ name: input.name,
37
+ type: input.type,
38
+ values: input.values,
39
+ is_variant_axis: input.is_variant_axis,
40
+ is_filterable: input.is_filterable,
41
+ is_required: input.is_required,
42
+ description: input.description,
43
+ metadata: input.metadata,
44
+ };
45
+ const isVariantAxis = input.is_variant_axis === true ||
46
+ (input.attribute_id !== undefined && input.is_variant_axis !== false);
47
+ return [
48
+ {
49
+ variant_attributes: isVariantAxis ? [ref] : undefined,
50
+ product_attributes: isVariantAxis ? undefined : [ref],
51
+ },
52
+ ];
53
+ });
54
+ const resolved = (0, steps_1.resolveAttributeRefsStep)({ groups });
55
+ const inlinePlan = (0, workflows_sdk_1.transform)({ resolved, input }, ({ resolved, input }) => (0, steps_1.buildInlinePlan)(resolved, () => input.product_id));
56
+ const materialized = materialize_product_attributes_1.materializeProductAttributesWorkflow.runAsStep({
57
+ input: (0, workflows_sdk_1.transform)({ inlinePlan }, ({ inlinePlan }) => ({
58
+ plan: inlinePlan,
59
+ })),
60
+ });
61
+ const optionPlan = (0, workflows_sdk_1.transform)({ resolved, materialized }, ({ resolved, materialized }) => {
62
+ const r = resolved[0];
63
+ const existing = r.existing_variant[0] ?? r.existing_product[0];
64
+ const inline = r.inline_variant[0] ?? r.inline_product[0];
65
+ if (existing) {
66
+ return {
67
+ value_ids: existing.value_ids,
68
+ title: existing.attribute_name,
69
+ value_names: existing.value_names,
70
+ is_variant_axis: existing.is_variant_axis,
71
+ };
72
+ }
73
+ if (inline) {
74
+ return {
75
+ value_ids: materialized.inline_values.map((v) => v.id),
76
+ title: inline.name,
77
+ value_names: inline.values,
78
+ is_variant_axis: inline.is_variant_axis,
79
+ };
80
+ }
81
+ return {
82
+ value_ids: [],
83
+ title: "",
84
+ value_names: [],
85
+ is_variant_axis: false,
86
+ };
87
+ });
88
+ const valueLinks = (0, workflows_sdk_1.transform)({ input, optionPlan }, ({ input, optionPlan }) => optionPlan.value_ids.map((value_id) => ({
89
+ [utils_1.Modules.PRODUCT]: { product_id: input.product_id },
90
+ [types_1.MercurModules.PRODUCT_ATTRIBUTE]: {
91
+ product_attribute_value_id: value_id,
92
+ },
93
+ })));
94
+ (0, core_flows_1.createRemoteLinkStep)(valueLinks).config({
95
+ name: "add-product-attribute-link-values",
96
+ });
97
+ sync_product_attribute_options_1.syncProductAttributeOptionsWorkflow.runAsStep({
98
+ input: (0, workflows_sdk_1.transform)({ input, optionPlan }, ({ input, optionPlan }) => ({
99
+ upsert: optionPlan.is_variant_axis &&
100
+ optionPlan.title &&
101
+ optionPlan.value_names.length
102
+ ? [
103
+ {
104
+ product_id: input.product_id,
105
+ title: optionPlan.title,
106
+ values: optionPlan.value_names,
107
+ },
108
+ ]
109
+ : [],
110
+ })),
111
+ });
112
+ const productAttributeAdded = (0, workflows_sdk_1.createHook)("productAttributeAdded", {
113
+ product_id: input.product_id,
114
+ additional_data: input.additional_data,
115
+ });
116
+ return new workflows_sdk_1.WorkflowResponse(void 0, {
117
+ hooks: [productAttributeAdded],
118
+ });
119
+ });
120
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLXByb2R1Y3QtYXR0cmlidXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9wcm9kdWN0LWF0dHJpYnV0ZS93b3JrZmxvd3MvYWRkLXByb2R1Y3QtYXR0cmlidXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLHFEQUFtRDtBQUNuRCxxRUFLMEM7QUFDMUMsNERBQWtFO0FBQ2xFLDJDQUE4RDtBQUU5RCxxRkFBdUY7QUFDdkYscUZBQXNGO0FBQ3RGLCtDQUc0QjtBQXFCZixRQUFBLDZCQUE2QixHQUFHLHVCQUF1QixDQUFBO0FBRXBFOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBQ1UsUUFBQSwyQkFBMkIsR0FBRyxJQUFBLDhCQUFjLEVBQ3ZELHFDQUE2QixFQUM3QixVQUFVLEtBQXVDO0lBQy9DLE1BQU0sTUFBTSxHQUFHLElBQUEseUJBQVMsRUFBQyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFO1FBQ2hELE1BQU0sR0FBRyxHQUNQLEtBQUssQ0FBQyxZQUFZLEtBQUssU0FBUztZQUM5QixDQUFDLENBQUM7Z0JBQ0UsWUFBWSxFQUFFLEtBQUssQ0FBQyxZQUFZO2dCQUNoQyxTQUFTLEVBQUUsS0FBSyxDQUFDLFNBQVM7Z0JBQzFCLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTTthQUNyQjtZQUNILENBQUMsQ0FBQztnQkFDRSxJQUFJLEVBQUUsS0FBSyxDQUFDLElBQWM7Z0JBQzFCLElBQUksRUFBRSxLQUFLLENBQUMsSUFBcUI7Z0JBQ2pDLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTTtnQkFDcEIsZUFBZSxFQUFFLEtBQUssQ0FBQyxlQUFlO2dCQUN0QyxhQUFhLEVBQUUsS0FBSyxDQUFDLGFBQWE7Z0JBQ2xDLFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVztnQkFDOUIsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO2dCQUM5QixRQUFR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
@@ -0,0 +1,23 @@
1
+ import { type Hook, type ReturnWorkflow } from "@medusajs/framework/workflows-sdk";
2
+ export type BatchProductAttributeValuesCreateInput = {
3
+ attribute_id: string;
4
+ attribute_value_ids?: string[];
5
+ values?: string[];
6
+ };
7
+ export type BatchProductAttributeValuesWorkflowInput = {
8
+ product_id: string;
9
+ create?: BatchProductAttributeValuesCreateInput[];
10
+ delete?: string[];
11
+ };
12
+ export type BatchProductAttributeValuesWorkflowHooks = [
13
+ Hook<"validate", {
14
+ input: BatchProductAttributeValuesWorkflowInput;
15
+ }, unknown>,
16
+ Hook<"productAttributeValuesBatched", {
17
+ product_id: string;
18
+ attached_value_ids: string[];
19
+ detached_value_ids: string[];
20
+ }, unknown>
21
+ ];
22
+ export declare const batchProductAttributeValuesWorkflowId = "batch-product-attribute-values";
23
+ export declare const batchProductAttributeValuesWorkflow: ReturnWorkflow<BatchProductAttributeValuesWorkflowInput, void, BatchProductAttributeValuesWorkflowHooks>;
@@ -0,0 +1,252 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.batchProductAttributeValuesWorkflow = exports.batchProductAttributeValuesWorkflowId = void 0;
4
+ const utils_1 = require("@medusajs/framework/utils");
5
+ const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
6
+ const core_flows_1 = require("@medusajs/medusa/core-flows");
7
+ const types_1 = require("@mercurjs/types");
8
+ const steps_1 = require("../steps");
9
+ const sync_product_attribute_options_1 = require("./sync-product-attribute-options");
10
+ exports.batchProductAttributeValuesWorkflowId = "batch-product-attribute-values";
11
+ exports.batchProductAttributeValuesWorkflow = (0, workflows_sdk_1.createWorkflow)(exports.batchProductAttributeValuesWorkflowId, function (input) {
12
+ const validate = (0, workflows_sdk_1.createHook)("validate", { input });
13
+ // Collect candidate (attribute_id, name) pairs into one query so
14
+ // free-text `values` in the create payload can be resolved to ids.
15
+ const nameLookupFilters = (0, workflows_sdk_1.transform)({ input }, ({ input }) => {
16
+ const attributeIds = new Set();
17
+ const names = new Set();
18
+ for (const entry of input.create ?? []) {
19
+ if (entry.values?.length) {
20
+ attributeIds.add(entry.attribute_id);
21
+ entry.values.forEach((n) => names.add(n));
22
+ }
23
+ }
24
+ return {
25
+ attribute_ids: Array.from(attributeIds),
26
+ names: Array.from(names),
27
+ has_lookups: attributeIds.size > 0,
28
+ };
29
+ });
30
+ const namedValues = (0, workflows_sdk_1.when)({ nameLookupFilters }, ({ nameLookupFilters }) => nameLookupFilters.has_lookups).then(() => (0, core_flows_1.useQueryGraphStep)({
31
+ entity: "product_attribute_value",
32
+ fields: ["id", "name", "attribute_id"],
33
+ filters: {
34
+ attribute_id: nameLookupFilters.attribute_ids,
35
+ name: nameLookupFilters.names,
36
+ },
37
+ }).config({ name: "batch-pa-resolve-named-values" }));
38
+ // For non-select attribute types the UI sends free-text `values` —
39
+ // upsert any name that doesn't already exist as a
40
+ // `ProductAttributeValue`. Matches the validator's "Text/unit/toggle
41
+ // types — provide new value strings" contract.
42
+ const valuesToCreate = (0, workflows_sdk_1.transform)({ input, namedValues }, ({ input, namedValues }) => {
43
+ const matches = (namedValues
44
+ ?.data ?? []);
45
+ const existing = new Set(matches
46
+ .filter((v) => v.attribute_id)
47
+ .map((v) => `${v.attribute_id}::${v.name}`));
48
+ const seen = new Set();
49
+ const out = [];
50
+ for (const entry of input.create ?? []) {
51
+ for (const name of entry.values ?? []) {
52
+ const trimmed = name?.trim();
53
+ if (!trimmed)
54
+ continue;
55
+ const key = `${entry.attribute_id}::${trimmed}`;
56
+ if (existing.has(key) || seen.has(key))
57
+ continue;
58
+ seen.add(key);
59
+ out.push({ attribute_id: entry.attribute_id, name: trimmed });
60
+ }
61
+ }
62
+ return out;
63
+ });
64
+ // Always invoke — the step short-circuits on an empty input — so the
65
+ // workflow graph wires `createdNamedValues` deterministically into
66
+ // `valueIdsToAttach` regardless of whether anything had to be upserted.
67
+ const createdNamedValues = (0, steps_1.createProductAttributeValuesStep)(valuesToCreate).config({ name: "batch-pa-create-named-values" });
68
+ // Load attribute metadata once for the union of create + delete
69
+ // attribute_ids — needed to (a) decide which refs are variant-axis
70
+ // (and therefore need an accompanying product option) and (b)
71
+ // resolve value ids → names for option synthesis.
72
+ const attrMetaFilters = (0, workflows_sdk_1.transform)({ input }, ({ input }) => {
73
+ const ids = new Set();
74
+ for (const entry of input.create ?? [])
75
+ ids.add(entry.attribute_id);
76
+ for (const id of input.delete ?? [])
77
+ ids.add(id);
78
+ return { ids: Array.from(ids), has_any: ids.size > 0 };
79
+ });
80
+ const attributesMeta = (0, workflows_sdk_1.when)({ attrMetaFilters }, ({ attrMetaFilters }) => attrMetaFilters.has_any).then(() => (0, core_flows_1.useQueryGraphStep)({
81
+ entity: "product_attribute",
82
+ fields: [
83
+ "id",
84
+ "name",
85
+ "is_variant_axis",
86
+ "values.id",
87
+ "values.name",
88
+ ],
89
+ filters: { id: attrMetaFilters.ids },
90
+ }).config({ name: "batch-pa-load-attribute-meta" }));
91
+ // Load the product's currently-linked attribute values so the delete
92
+ // payload (which references attribute_ids, not value_ids) can be
93
+ // expanded to the value_ids whose links need to be dismissed. Also
94
+ // loads the product's options so variant-axis detachment can drop
95
+ // the matching stock option in the same transaction.
96
+ const hasDeletes = (0, workflows_sdk_1.transform)({ input }, ({ input }) => (input.delete?.length ?? 0) > 0);
97
+ const productAttributeValues = (0, workflows_sdk_1.when)({ hasDeletes }, ({ hasDeletes }) => hasDeletes).then(() => (0, core_flows_1.useQueryGraphStep)({
98
+ entity: "product",
99
+ fields: [
100
+ "attribute_values.id",
101
+ "attribute_values.attribute.id",
102
+ "options.id",
103
+ "options.title",
104
+ ],
105
+ filters: { id: input.product_id },
106
+ }).config({ name: "batch-pa-load-product" }));
107
+ const valueIdsToAttach = (0, workflows_sdk_1.transform)({ input, namedValues, createdNamedValues, valuesToCreate }, ({ input, namedValues, createdNamedValues, valuesToCreate }) => {
108
+ const matches = (namedValues
109
+ ?.data ?? []);
110
+ const created = (createdNamedValues ?? []);
111
+ const idByKey = new Map();
112
+ for (const v of matches) {
113
+ if (v.attribute_id)
114
+ idByKey.set(`${v.attribute_id}::${v.name}`, v.id);
115
+ }
116
+ // `createProductAttributeValuesStep` returns the new rows in the
117
+ // same order as `valuesToCreate`, so pair them by index — the
118
+ // returned shape may not include `attribute_id` (it's a belongsTo
119
+ // FK and isn't always flattened on the create response).
120
+ valuesToCreate.forEach((spec, idx) => {
121
+ const row = created[idx];
122
+ if (row?.id)
123
+ idByKey.set(`${spec.attribute_id}::${spec.name}`, row.id);
124
+ });
125
+ const ids = [];
126
+ for (const entry of input.create ?? []) {
127
+ if (entry.attribute_value_ids?.length) {
128
+ ids.push(...entry.attribute_value_ids);
129
+ }
130
+ if (entry.values?.length) {
131
+ for (const name of entry.values) {
132
+ const trimmed = name?.trim();
133
+ if (!trimmed)
134
+ continue;
135
+ const id = idByKey.get(`${entry.attribute_id}::${trimmed}`);
136
+ if (id)
137
+ ids.push(id);
138
+ }
139
+ }
140
+ }
141
+ return ids;
142
+ });
143
+ const valueIdsToDetach = (0, workflows_sdk_1.transform)({ input, productAttributeValues }, ({ input, productAttributeValues }) => {
144
+ const toDelete = new Set(input.delete ?? []);
145
+ if (toDelete.size === 0)
146
+ return [];
147
+ const products = (productAttributeValues?.data ?? []);
148
+ const values = products[0]?.attribute_values ?? [];
149
+ return values
150
+ .filter((v) => v.attribute?.id && toDelete.has(v.attribute.id))
151
+ .map((v) => v.id);
152
+ });
153
+ // Build the list of (product_id, title, values[]) entries for the
154
+ // variant-axis create refs. Mirrors what `addProductAttributeWorkflow`
155
+ // does for the single-attach case — a variant-axis attribute attach
156
+ // must also produce a matching stock product option so the variant
157
+ // form has somewhere to slot its axis values.
158
+ const optionsToUpsert = (0, workflows_sdk_1.transform)({ input, attributesMeta }, ({ input, attributesMeta }) => {
159
+ const attrs = (attributesMeta
160
+ ?.data ?? []);
161
+ const byId = new Map(attrs.map((a) => [a.id, a]));
162
+ const out = [];
163
+ for (const entry of input.create ?? []) {
164
+ const attr = byId.get(entry.attribute_id);
165
+ if (!attr?.is_variant_axis)
166
+ continue;
167
+ const nameById = new Map((attr.values ?? []).map((v) => [v.id, v.name]));
168
+ const names = [];
169
+ const seen = new Set();
170
+ const pushName = (name) => {
171
+ if (!name || seen.has(name))
172
+ return;
173
+ seen.add(name);
174
+ names.push(name);
175
+ };
176
+ for (const id of entry.attribute_value_ids ?? []) {
177
+ pushName(nameById.get(id));
178
+ }
179
+ if (entry.values?.length) {
180
+ // Variant-axis option upsert mirrors what `valueIdsToAttach`
181
+ // links — both existing-by-name matches and newly-upserted
182
+ // names contribute to the stock option's value set.
183
+ for (const name of entry.values) {
184
+ pushName(name?.trim());
185
+ }
186
+ }
187
+ if (!names.length)
188
+ continue;
189
+ out.push({
190
+ product_id: input.product_id,
191
+ title: attr.name,
192
+ values: names,
193
+ });
194
+ }
195
+ return out;
196
+ });
197
+ // For each variant-axis attribute being detached, drop the matching
198
+ // product option (matched by title === attribute.name) — symmetric
199
+ // to `detachProductAttributeWorkflow`.
200
+ const optionIdsToDelete = (0, workflows_sdk_1.transform)({ input, attributesMeta, productAttributeValues }, ({ input, attributesMeta, productAttributeValues }) => {
201
+ if (!input.delete?.length)
202
+ return [];
203
+ const attrs = (attributesMeta
204
+ ?.data ?? []);
205
+ const byId = new Map(attrs.map((a) => [a.id, a]));
206
+ const products = (productAttributeValues?.data ?? []);
207
+ const optionByTitle = new Map((products[0]?.options ?? []).map((o) => [o.title, o.id]));
208
+ const ids = [];
209
+ for (const id of input.delete) {
210
+ const attr = byId.get(id);
211
+ if (!attr?.is_variant_axis)
212
+ continue;
213
+ const optionId = optionByTitle.get(attr.name);
214
+ if (optionId)
215
+ ids.push(optionId);
216
+ }
217
+ return ids;
218
+ });
219
+ const attachLinks = (0, workflows_sdk_1.transform)({ valueIdsToAttach, input }, ({ valueIdsToAttach, input }) => valueIdsToAttach.map((value_id) => ({
220
+ [utils_1.Modules.PRODUCT]: { product_id: input.product_id },
221
+ [types_1.MercurModules.PRODUCT_ATTRIBUTE]: {
222
+ product_attribute_value_id: value_id,
223
+ },
224
+ })));
225
+ const detachLinks = (0, workflows_sdk_1.transform)({ valueIdsToDetach, input }, ({ valueIdsToDetach, input }) => valueIdsToDetach.map((value_id) => ({
226
+ [utils_1.Modules.PRODUCT]: { product_id: input.product_id },
227
+ [types_1.MercurModules.PRODUCT_ATTRIBUTE]: {
228
+ product_attribute_value_id: value_id,
229
+ },
230
+ })));
231
+ (0, workflows_sdk_1.when)({ valueIdsToAttach }, ({ valueIdsToAttach }) => valueIdsToAttach.length > 0).then(() => (0, core_flows_1.createRemoteLinkStep)(attachLinks).config({
232
+ name: "batch-pa-attach-links",
233
+ }));
234
+ (0, workflows_sdk_1.when)({ valueIdsToDetach }, ({ valueIdsToDetach }) => valueIdsToDetach.length > 0).then(() => (0, core_flows_1.dismissRemoteLinkStep)(detachLinks).config({
235
+ name: "batch-pa-detach-links",
236
+ }));
237
+ sync_product_attribute_options_1.syncProductAttributeOptionsWorkflow.runAsStep({
238
+ input: (0, workflows_sdk_1.transform)({ optionsToUpsert, optionIdsToDelete }, ({ optionsToUpsert, optionIdsToDelete }) => ({
239
+ upsert: optionsToUpsert,
240
+ delete_ids: optionIdsToDelete,
241
+ })),
242
+ });
243
+ const productAttributeValuesBatched = (0, workflows_sdk_1.createHook)("productAttributeValuesBatched", {
244
+ product_id: input.product_id,
245
+ attached_value_ids: valueIdsToAttach,
246
+ detached_value_ids: valueIdsToDetach,
247
+ });
248
+ return new workflows_sdk_1.WorkflowResponse(void 0, {
249
+ hooks: [validate, productAttributeValuesBatched],
250
+ });
251
+ });
252
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmF0Y2gtcHJvZHVjdC1hdHRyaWJ1dGUtdmFsdWVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9wcm9kdWN0LWF0dHJpYnV0ZS93b3JrZmxvd3MvYmF0Y2gtcHJvZHVjdC1hdHRyaWJ1dGUtdmFsdWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFEQUFtRDtBQUNuRCxxRUFRMEM7QUFDMUMsNERBSW9DO0FBQ3BDLDJDQUErQztBQUUvQyxvQ0FBMkQ7QUFDM0QscUZBQXNGO0FBK0J6RSxRQUFBLHFDQUFxQyxHQUNoRCxnQ0FBZ0MsQ0FBQTtBQUVyQixRQUFBLG1DQUFtQyxHQUk1QyxJQUFBLDhCQUFjLEVBQ2hCLDZDQUFxQyxFQUNyQyxVQUFVLEtBQStDO0lBQ3ZELE1BQU0sUUFBUSxHQUFHLElBQUEsMEJBQVUsRUFBQyxVQUFVLEVBQUUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFBO0lBRWxELGlFQUFpRTtJQUNqRSxtRUFBbUU7SUFDbkUsTUFBTSxpQkFBaUIsR0FBRyxJQUFBLHlCQUFTLEVBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRTtRQUMzRCxNQUFNLFlBQVksR0FBRyxJQUFJLEdBQUcsRUFBVSxDQUFBO1FBQ3RDLE1BQU0sS0FBSyxHQUFHLElBQUksR0FBRyxFQUFVLENBQUE7UUFDL0IsS0FBSyxNQUFNLEtBQUssSUFBSSxLQUFLLENBQUMsTUFBTSxJQUFJLEVBQUUsRUFBRSxDQUFDO1lBQ3ZDLElBQUksS0FBSyxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsQ0FBQztnQkFDekIsWUFBWSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUE7Z0JBQ3BDLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMs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
@@ -0,0 +1,18 @@
1
+ import { AdditionalData } from "@medusajs/framework/types";
2
+ import { type Hook, type ReturnWorkflow } from "@medusajs/framework/workflows-sdk";
3
+ import { CreateProductAttributeValueDTO, ProductAttributeValueDTO } from "@mercurjs/types";
4
+ export type CreateProductAttributeValuesWorkflowInput = {
5
+ attribute_id: string;
6
+ values: CreateProductAttributeValueDTO[];
7
+ } & AdditionalData;
8
+ export type CreateProductAttributeValuesWorkflowHooks = [
9
+ Hook<"validate", {
10
+ input: CreateProductAttributeValuesWorkflowInput;
11
+ }, unknown>,
12
+ Hook<"productAttributeValuesCreated", {
13
+ values: ProductAttributeValueDTO[];
14
+ additional_data: Record<string, unknown> | undefined;
15
+ }, unknown>
16
+ ];
17
+ export declare const createProductAttributeValuesWorkflowId = "create-product-attribute-values";
18
+ export declare const createProductAttributeValuesWorkflow: ReturnWorkflow<CreateProductAttributeValuesWorkflowInput, ProductAttributeValueDTO[], CreateProductAttributeValuesWorkflowHooks>;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createProductAttributeValuesWorkflow = exports.createProductAttributeValuesWorkflowId = void 0;
4
+ const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
5
+ const core_flows_1 = require("@medusajs/medusa/core-flows");
6
+ const events_1 = require("../events");
7
+ const steps_1 = require("../steps");
8
+ exports.createProductAttributeValuesWorkflowId = "create-product-attribute-values";
9
+ exports.createProductAttributeValuesWorkflow = (0, workflows_sdk_1.createWorkflow)(exports.createProductAttributeValuesWorkflowId, function (input) {
10
+ const validate = (0, workflows_sdk_1.createHook)("validate", { input });
11
+ (0, steps_1.validateAttributeAcceptsValuesStep)({ attribute_id: input.attribute_id });
12
+ const valueInputs = (0, workflows_sdk_1.transform)({ input }, ({ input }) => input.values.map((v) => ({ ...v, attribute_id: input.attribute_id })));
13
+ const values = (0, steps_1.createProductAttributeValuesStep)(valueInputs);
14
+ (0, core_flows_1.emitEventStep)({
15
+ eventName: events_1.ProductAttributeValueWorkflowEvents.CREATED,
16
+ data: (0, workflows_sdk_1.transform)({ values }, ({ values }) => values.map((v) => ({ id: v.id }))),
17
+ });
18
+ const productAttributeValuesCreated = (0, workflows_sdk_1.createHook)("productAttributeValuesCreated", {
19
+ values,
20
+ additional_data: input.additional_data,
21
+ });
22
+ return new workflows_sdk_1.WorkflowResponse(values, {
23
+ hooks: [validate, productAttributeValuesCreated],
24
+ });
25
+ });
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXByb2R1Y3QtYXR0cmlidXRlLXZhbHVlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3MvcHJvZHVjdC1hdHRyaWJ1dGUvd29ya2Zsb3dzL2NyZWF0ZS1wcm9kdWN0LWF0dHJpYnV0ZS12YWx1ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EscUVBTzBDO0FBQzFDLDREQUEyRDtBQU0zRCxzQ0FBK0Q7QUFDL0Qsb0NBR2lCO0FBdUJKLFFBQUEsc0NBQXNDLEdBQ2pELGlDQUFpQyxDQUFBO0FBRXRCLFFBQUEsb0NBQW9DLEdBSTdDLElBQUEsOEJBQWMsRUFDaEIsOENBQXNDLEVBQ3RDLFVBQVUsS0FBZ0Q7SUFDeEQsTUFBTSxRQUFRLEdBQUcsSUFBQSwwQkFBVSxFQUFDLFVBQVUsRUFBRSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUE7SUFFbEQsSUFBQSwwQ0FBa0MsRUFBQyxFQUFFLFlBQVksRUFBRSxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQTtJQUV4RSxNQUFNLFdBQVcsR0FBRyxJQUFBLHlCQUFTLEVBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxDQUNyRCxLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLFlBQVksRUFBRSxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQyxDQUN0RSxDQUFBO0lBRUQsTUFBTSxNQUFNLEdBQUcsSUFBQSx3Q0FBZ0MsRUFBQyxXQUFXLENBQUMsQ0FBQTtJQUU1RCxJQUFBLDBCQUFhLEVBQUM7UUFDWixTQUFTLEVBQUUsNENBQW1DLENBQUMsT0FBTztRQUN0RCxJQUFJLEVBQUUsSUFBQSx5QkFBUyxFQUFDLEVBQUUsTUFBTSxFQUFFLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsQ0FDekMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUNsQztLQUNGLENBQUMsQ0FBQTtJQUVGLE1BQU0sNkJBQTZCLEdBQUcsSUFBQSwwQkFBVSxFQUM5QywrQkFBK0IsRUFDL0I7UUFDRSxNQUFNO1FBQ04sZUFBZSxFQUFFLEtBQUssQ0FBQyxlQUFlO0tBQ3ZDLENBQ0YsQ0FBQTtJQUVELE9BQU8sSUFBSSxnQ0FBZ0IsQ0FBQyxNQUFvQyxFQUFFO1FBQ2hFLEtBQUssRUFBRSxDQUFDLFFBQVEsRUFBRSw2QkFBNkIsQ0FBQztLQUNqRCxDQUFDLENBQUE7QUFDSixDQUFDLENBQ0YsQ0FBQSJ9
@@ -0,0 +1,19 @@
1
+ import { AdditionalData } from "@medusajs/framework/types";
2
+ import { type Hook, type ReturnWorkflow } from "@medusajs/framework/workflows-sdk";
3
+ import { CreateProductAttributeDTO, ProductAttributeDTO } from "@mercurjs/types";
4
+ export type CreateProductAttributesWorkflowInput = {
5
+ attributes: (CreateProductAttributeDTO & {
6
+ category_ids?: string[];
7
+ })[];
8
+ } & AdditionalData;
9
+ export type CreateProductAttributesWorkflowHooks = [
10
+ Hook<"validate", {
11
+ input: CreateProductAttributesWorkflowInput;
12
+ }, unknown>,
13
+ Hook<"productAttributesCreated", {
14
+ attributes: ProductAttributeDTO[];
15
+ additional_data: Record<string, unknown> | undefined;
16
+ }, unknown>
17
+ ];
18
+ export declare const createProductAttributesWorkflowId = "create-product-attributes";
19
+ export declare const createProductAttributesWorkflow: ReturnWorkflow<CreateProductAttributesWorkflowInput, ProductAttributeDTO[], CreateProductAttributesWorkflowHooks>;
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createProductAttributesWorkflow = exports.createProductAttributesWorkflowId = void 0;
4
+ const utils_1 = require("@medusajs/framework/utils");
5
+ const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
6
+ const core_flows_1 = require("@medusajs/medusa/core-flows");
7
+ const types_1 = require("@mercurjs/types");
8
+ const events_1 = require("../events");
9
+ const steps_1 = require("../steps");
10
+ exports.createProductAttributesWorkflowId = "create-product-attributes";
11
+ exports.createProductAttributesWorkflow = (0, workflows_sdk_1.createWorkflow)(exports.createProductAttributesWorkflowId, function (input) {
12
+ const validate = (0, workflows_sdk_1.createHook)("validate", { input });
13
+ (0, steps_1.validateProductAttributeInputStep)({ attributes: input.attributes });
14
+ const attributesToCreate = (0, workflows_sdk_1.transform)({ input }, ({ input }) => input.attributes.map((attr) => {
15
+ const { category_ids: _category_ids, values: _values, ...rest } = attr;
16
+ return rest;
17
+ }));
18
+ const attributes = (0, steps_1.createProductAttributesStep)(attributesToCreate);
19
+ // Persist each attribute's `values[]` against the just-created ids.
20
+ // The underlying create-attribute service doesn't accept inline
21
+ // values, so they have to land via the values step.
22
+ const valuesToCreate = (0, workflows_sdk_1.transform)({ input, attributes }, ({ input, attributes }) => {
23
+ const out = [];
24
+ input.attributes.forEach((attr, idx) => {
25
+ const attribute_id = attributes[idx]?.id;
26
+ if (!attribute_id)
27
+ return;
28
+ for (const v of attr.values ?? []) {
29
+ out.push({ ...v, attribute_id });
30
+ }
31
+ });
32
+ return out;
33
+ });
34
+ (0, steps_1.createProductAttributeValuesStep)(valuesToCreate);
35
+ const categoryLinks = (0, workflows_sdk_1.transform)({ input, attributes }, ({ input, attributes }) => {
36
+ const links = [];
37
+ input.attributes.forEach((attr, idx) => {
38
+ for (const category_id of attr.category_ids ?? []) {
39
+ links.push({
40
+ [utils_1.Modules.PRODUCT]: { product_category_id: category_id },
41
+ [types_1.MercurModules.PRODUCT_ATTRIBUTE]: {
42
+ product_attribute_id: attributes[idx].id,
43
+ },
44
+ });
45
+ }
46
+ });
47
+ return links;
48
+ });
49
+ (0, core_flows_1.createRemoteLinkStep)(categoryLinks).config({
50
+ name: "pa-create-category-links",
51
+ });
52
+ (0, core_flows_1.emitEventStep)({
53
+ eventName: events_1.ProductAttributeWorkflowEvents.CREATED,
54
+ data: (0, workflows_sdk_1.transform)({ attributes }, ({ attributes }) => attributes.map((a) => ({ id: a.id }))),
55
+ });
56
+ const productAttributesCreated = (0, workflows_sdk_1.createHook)("productAttributesCreated", {
57
+ attributes,
58
+ additional_data: input.additional_data,
59
+ });
60
+ return new workflows_sdk_1.WorkflowResponse(attributes, {
61
+ hooks: [validate, productAttributesCreated],
62
+ });
63
+ });
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXByb2R1Y3QtYXR0cmlidXRlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3MvcHJvZHVjdC1hdHRyaWJ1dGUvd29ya2Zsb3dzL2NyZWF0ZS1wcm9kdWN0LWF0dHJpYnV0ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscURBQW1EO0FBRW5ELHFFQU8wQztBQUMxQyw0REFHb0M7QUFDcEMsMkNBSXdCO0FBRXhCLHNDQUEwRDtBQUMxRCxvQ0FJaUI7QUFvQkosUUFBQSxpQ0FBaUMsR0FBRywyQkFBMkIsQ0FBQTtBQUUvRCxRQUFBLCtCQUErQixHQUl4QyxJQUFBLDhCQUFjLEVBQ2hCLHlDQUFpQyxFQUNqQyxVQUFVLEtBQTJDO0lBQ25ELE1BQU0sUUFBUSxHQUFHLElBQUEsMEJBQVUsRUFBQyxVQUFVLEVBQUUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFBO0lBRWxELElBQUEseUNBQWlDLEVBQUMsRUFBRSxVQUFVLEVBQUUsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUE7SUFFbkUsTUFBTSxrQkFBa0IsR0FBRyxJQUFBLHlCQUFTLEVBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxDQUM1RCxLQUFLLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1FBQzVCLE1BQU0sRUFBRSxZQUFZLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUE7UUFDdEUsT0FBTyxJQUFJLENBQUE7SUFDYixDQUFDLENBQUMsQ0FDSCxDQUFBO0lBRUQsTUFBTSxVQUFVLEdBQUcsSUFBQSxtQ0FBMkIsRUFBQyxrQkFBa0IsQ0FBQyxDQUFBO0lBRWxFLG9FQUFvRTtJQUNwRSxnRUFBZ0U7SUFDaEUsb0RBQW9EO0lBQ3BELE1BQU0sY0FBYyxH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
@@ -0,0 +1,16 @@
1
+ import { AdditionalData } from "@medusajs/framework/types";
2
+ import { type Hook, type ReturnWorkflow } from "@medusajs/framework/workflows-sdk";
3
+ export type DeleteProductAttributeValuesWorkflowInput = {
4
+ ids: string[];
5
+ } & AdditionalData;
6
+ export type DeleteProductAttributeValuesWorkflowHooks = [
7
+ Hook<"validate", {
8
+ input: DeleteProductAttributeValuesWorkflowInput;
9
+ }, unknown>,
10
+ Hook<"productAttributeValuesDeleted", {
11
+ ids: string[];
12
+ additional_data: Record<string, unknown> | undefined;
13
+ }, unknown>
14
+ ];
15
+ export declare const deleteProductAttributeValuesWorkflowId = "delete-product-attribute-values";
16
+ export declare const deleteProductAttributeValuesWorkflow: ReturnWorkflow<DeleteProductAttributeValuesWorkflowInput, void, DeleteProductAttributeValuesWorkflowHooks>;
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.deleteProductAttributeValuesWorkflow = exports.deleteProductAttributeValuesWorkflowId = void 0;
4
+ const utils_1 = require("@medusajs/framework/utils");
5
+ const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
6
+ const core_flows_1 = require("@medusajs/medusa/core-flows");
7
+ const types_1 = require("@mercurjs/types");
8
+ const events_1 = require("../events");
9
+ const steps_1 = require("../steps");
10
+ exports.deleteProductAttributeValuesWorkflowId = "delete-product-attribute-values";
11
+ exports.deleteProductAttributeValuesWorkflow = (0, workflows_sdk_1.createWorkflow)(exports.deleteProductAttributeValuesWorkflowId, function (input) {
12
+ const validate = (0, workflows_sdk_1.createHook)("validate", { input });
13
+ // NOTE: mirror-link validation gap — previously enforced via
14
+ // `validateProductAttributeValueNotMirroredStep`; dropped to avoid the
15
+ // full-table scan it required.
16
+ const dismissLinks = (0, workflows_sdk_1.transform)({ input }, ({ input }) => input.ids.flatMap((id) => [
17
+ {
18
+ [types_1.MercurModules.PRODUCT_ATTRIBUTE]: {
19
+ product_attribute_value_id: id,
20
+ },
21
+ [utils_1.Modules.PRODUCT]: {},
22
+ },
23
+ ]));
24
+ (0, core_flows_1.dismissRemoteLinkStep)(dismissLinks).config({
25
+ name: "pa-dismiss-attribute-value-links",
26
+ });
27
+ (0, steps_1.deleteProductAttributeValuesStep)(input.ids);
28
+ (0, core_flows_1.emitEventStep)({
29
+ eventName: events_1.ProductAttributeValueWorkflowEvents.DELETED,
30
+ data: (0, workflows_sdk_1.transform)({ input }, ({ input }) => input.ids.map((id) => ({ id }))),
31
+ });
32
+ const productAttributeValuesDeleted = (0, workflows_sdk_1.createHook)("productAttributeValuesDeleted", {
33
+ ids: input.ids,
34
+ additional_data: input.additional_data,
35
+ });
36
+ return new workflows_sdk_1.WorkflowResponse(void 0, {
37
+ hooks: [validate, productAttributeValuesDeleted],
38
+ });
39
+ });
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsZXRlLXByb2R1Y3QtYXR0cmlidXRlLXZhbHVlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3MvcHJvZHVjdC1hdHRyaWJ1dGUvd29ya2Zsb3dzL2RlbGV0ZS1wcm9kdWN0LWF0dHJpYnV0ZS12YWx1ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscURBQW1EO0FBRW5ELHFFQU8wQztBQUMxQyw0REFHb0M7QUFDcEMsMkNBQStDO0FBRS9DLHNDQUErRDtBQUMvRCxvQ0FBMkQ7QUFzQjlDLFFBQUEsc0NBQXNDLEdBQ2pELGlDQUFpQyxDQUFBO0FBRXRCLFFBQUEsb0NBQW9DLEdBSTdDLElBQUEsOEJBQWMsRUFDaEIsOENBQXNDLEVBQ3RDLFVBQVUsS0FBZ0Q7SUFDeEQsTUFBTSxRQUFRLEdBQUcsSUFBQSwwQkFBVSxFQUFDLFVBQVUsRUFBRSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUE7SUFFbEQsNkRBQTZEO0lBQzdELHVFQUF1RTtJQUN2RSwrQkFBK0I7SUFFL0IsTUFBTSxZQUFZLEdBQUcsSUFBQSx5QkFBUyxFQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FDdEQsS0FBSyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDO1FBQ3hCO1lBQ0UsQ0FBQyxxQkFBYSxDQUFDLGlCQUFpQixDQUFDLEVBQUU7Z0JBQ2pDLDBCQUEwQixFQUFFLEVBQUU7YUFDL0I7WUFDRCxDQUFDLGVBQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxFQUFFO1NBQ3RCO0tBQ0YsQ0FBQyxDQUNILENBQUE7SUFFRCxJQUFBLGtDQUFxQixFQUFDLFlBQVksQ0FBQyxDQUFDLE1BQU0sQ0FBQztRQUN6QyxJQUFJLEVBQUUsa0NBQWtDO0tBQ3pDLENBQUMsQ0FBQTtJQUVGLElBQUEsd0NBQWdDLEVBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBRTNDLElBQUEsMEJBQWEsRUFBQztRQUNaLFNBQVMsRUFBRSw0Q0FBbUMsQ0FBQyxPQUFPO1FBQ3RELElBQUksRUFBRSxJQUFBLHlCQUFTLEVBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxDQUN2QyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FDaEM7S0FDRixDQUFDLENBQUE7SUFFRixNQUFNLDZCQUE2QixHQUFHLElBQUEsMEJBQVUsRUFDOUMsK0JBQStCLEVBQy9CO1FBQ0UsR0FBRyxFQUFFLEtBQUssQ0FBQyxHQUFHO1FBQ2QsZUFBZSxFQUFFLEtBQUssQ0FBQyxlQUFlO0tBQ3ZDLENBQ0YsQ0FBQTtJQUVELE9BQU8sSUFBSSxnQ0FBZ0IsQ0FBQyxLQUFLLENBQUMsRUFBRTtRQUNsQyxLQUFLLEVBQUUsQ0FBQyxRQUFRLEVBQUUsNkJBQTZCLENBQUM7S0FDakQsQ0FBQyxDQUFBO0FBQ0osQ0FBQyxDQUNGLENBQUEifQ==