@medusajs/core-flows 3.0.0-snapshot-20251216145629 → 3.0.0-snapshot-20260102125810

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 (122) hide show
  1. package/dist/auth/workflows/generate-reset-password-token.d.ts +1 -0
  2. package/dist/auth/workflows/generate-reset-password-token.d.ts.map +1 -1
  3. package/dist/auth/workflows/generate-reset-password-token.js +1 -0
  4. package/dist/auth/workflows/generate-reset-password-token.js.map +1 -1
  5. package/dist/auth/workflows/index.d.ts +1 -0
  6. package/dist/auth/workflows/index.d.ts.map +1 -1
  7. package/dist/auth/workflows/index.js +1 -0
  8. package/dist/auth/workflows/index.js.map +1 -1
  9. package/dist/auth/workflows/set-auth-app-metadata.d.ts +40 -0
  10. package/dist/auth/workflows/set-auth-app-metadata.d.ts.map +1 -0
  11. package/dist/auth/workflows/set-auth-app-metadata.js +47 -0
  12. package/dist/auth/workflows/set-auth-app-metadata.js.map +1 -0
  13. package/dist/cart/steps/update-cart-items-translations.js +1 -1
  14. package/dist/cart/steps/update-cart-items-translations.js.map +1 -1
  15. package/dist/cart/utils/fields.d.ts.map +1 -1
  16. package/dist/cart/utils/fields.js +2 -0
  17. package/dist/cart/utils/fields.js.map +1 -1
  18. package/dist/cart/workflows/list-shipping-options-for-cart-with-pricing.d.ts.map +1 -1
  19. package/dist/cart/workflows/list-shipping-options-for-cart-with-pricing.js +6 -1
  20. package/dist/cart/workflows/list-shipping-options-for-cart-with-pricing.js.map +1 -1
  21. package/dist/cart/workflows/list-shipping-options-for-cart.d.ts +1 -1
  22. package/dist/cart/workflows/list-shipping-options-for-cart.d.ts.map +1 -1
  23. package/dist/cart/workflows/list-shipping-options-for-cart.js +6 -1
  24. package/dist/cart/workflows/list-shipping-options-for-cart.js.map +1 -1
  25. package/dist/cart/workflows/refresh-cart-shipping-methods.d.ts.map +1 -1
  26. package/dist/cart/workflows/refresh-cart-shipping-methods.js +1 -0
  27. package/dist/cart/workflows/refresh-cart-shipping-methods.js.map +1 -1
  28. package/dist/common/steps/get-translated-line-items.d.ts.map +1 -1
  29. package/dist/common/steps/get-translated-line-items.js.map +1 -1
  30. package/dist/common/steps/get-translated-shipping-option.d.ts +8 -0
  31. package/dist/common/steps/get-translated-shipping-option.d.ts.map +1 -0
  32. package/dist/common/steps/get-translated-shipping-option.js +15 -0
  33. package/dist/common/steps/get-translated-shipping-option.js.map +1 -0
  34. package/dist/common/utils/apply-translations-to-items.d.ts.map +1 -1
  35. package/dist/common/utils/apply-translations-to-items.js +1 -0
  36. package/dist/common/utils/apply-translations-to-items.js.map +1 -1
  37. package/dist/defaults/workflows/create-defaults.d.ts.map +1 -1
  38. package/dist/defaults/workflows/create-defaults.js +32 -0
  39. package/dist/defaults/workflows/create-defaults.js.map +1 -1
  40. package/dist/draft-order/utils/fields.d.ts.map +1 -1
  41. package/dist/draft-order/utils/fields.js +1 -0
  42. package/dist/draft-order/utils/fields.js.map +1 -1
  43. package/dist/draft-order/workflows/add-draft-order-shipping-methods.d.ts.map +1 -1
  44. package/dist/draft-order/workflows/add-draft-order-shipping-methods.js +6 -1
  45. package/dist/draft-order/workflows/add-draft-order-shipping-methods.js.map +1 -1
  46. package/dist/draft-order/workflows/update-draft-order.d.ts.map +1 -1
  47. package/dist/draft-order/workflows/update-draft-order.js +8 -2
  48. package/dist/draft-order/workflows/update-draft-order.js.map +1 -1
  49. package/dist/fulfillment/workflows/create-shipping-options.d.ts.map +1 -1
  50. package/dist/fulfillment/workflows/create-shipping-options.js +11 -1
  51. package/dist/fulfillment/workflows/create-shipping-options.js.map +1 -1
  52. package/dist/fulfillment/workflows/delete-shipping-options.d.ts.map +1 -1
  53. package/dist/fulfillment/workflows/delete-shipping-options.js +5 -1
  54. package/dist/fulfillment/workflows/delete-shipping-options.js.map +1 -1
  55. package/dist/fulfillment/workflows/update-shipping-options.d.ts.map +1 -1
  56. package/dist/fulfillment/workflows/update-shipping-options.js +8 -1
  57. package/dist/fulfillment/workflows/update-shipping-options.js.map +1 -1
  58. package/dist/order/steps/index.d.ts +1 -0
  59. package/dist/order/steps/index.d.ts.map +1 -1
  60. package/dist/order/steps/index.js +1 -0
  61. package/dist/order/steps/index.js.map +1 -1
  62. package/dist/order/steps/update-order-shipping-methods-translations.d.ts +8 -0
  63. package/dist/order/steps/update-order-shipping-methods-translations.d.ts.map +1 -0
  64. package/dist/order/steps/update-order-shipping-methods-translations.js +41 -0
  65. package/dist/order/steps/update-order-shipping-methods-translations.js.map +1 -0
  66. package/dist/order/workflows/claim/create-claim-shipping-method.d.ts.map +1 -1
  67. package/dist/order/workflows/claim/create-claim-shipping-method.js +14 -2
  68. package/dist/order/workflows/claim/create-claim-shipping-method.js.map +1 -1
  69. package/dist/order/workflows/exchange/create-exchange-shipping-method.d.ts.map +1 -1
  70. package/dist/order/workflows/exchange/create-exchange-shipping-method.js +7 -2
  71. package/dist/order/workflows/exchange/create-exchange-shipping-method.js.map +1 -1
  72. package/dist/order/workflows/order-edit/create-order-edit-shipping-method.d.ts.map +1 -1
  73. package/dist/order/workflows/order-edit/create-order-edit-shipping-method.js +7 -2
  74. package/dist/order/workflows/order-edit/create-order-edit-shipping-method.js.map +1 -1
  75. package/dist/order/workflows/return/create-return-shipping-method.d.ts.map +1 -1
  76. package/dist/order/workflows/return/create-return-shipping-method.js +7 -2
  77. package/dist/order/workflows/return/create-return-shipping-method.js.map +1 -1
  78. package/dist/order/workflows/update-order.d.ts.map +1 -1
  79. package/dist/order/workflows/update-order.js +8 -2
  80. package/dist/order/workflows/update-order.js.map +1 -1
  81. package/dist/product/steps/create-product-options.d.ts +11 -2
  82. package/dist/product/steps/create-product-options.d.ts.map +1 -1
  83. package/dist/product/steps/create-product-options.js +6 -1
  84. package/dist/product/steps/create-product-options.js.map +1 -1
  85. package/dist/product/steps/index.d.ts +2 -0
  86. package/dist/product/steps/index.d.ts.map +1 -1
  87. package/dist/product/steps/index.js +2 -0
  88. package/dist/product/steps/index.js.map +1 -1
  89. package/dist/product/steps/link-product-options-to-product.d.ts +41 -0
  90. package/dist/product/steps/link-product-options-to-product.d.ts.map +1 -0
  91. package/dist/product/steps/link-product-options-to-product.js +69 -0
  92. package/dist/product/steps/link-product-options-to-product.js.map +1 -0
  93. package/dist/product/steps/process-product-options-for-import.d.ts +51 -0
  94. package/dist/product/steps/process-product-options-for-import.d.ts.map +1 -0
  95. package/dist/product/steps/process-product-options-for-import.js +87 -0
  96. package/dist/product/steps/process-product-options-for-import.js.map +1 -0
  97. package/dist/product/steps/update-product-options.d.ts.map +1 -1
  98. package/dist/product/steps/update-product-options.js +6 -6
  99. package/dist/product/steps/update-product-options.js.map +1 -1
  100. package/dist/product/workflows/batch-products.d.ts.map +1 -1
  101. package/dist/product/workflows/batch-products.js +10 -4
  102. package/dist/product/workflows/batch-products.js.map +1 -1
  103. package/dist/product/workflows/create-and-link-product-options-to-product.d.ts +73 -0
  104. package/dist/product/workflows/create-and-link-product-options-to-product.d.ts.map +1 -0
  105. package/dist/product/workflows/create-and-link-product-options-to-product.js +96 -0
  106. package/dist/product/workflows/create-and-link-product-options-to-product.js.map +1 -0
  107. package/dist/product/workflows/create-product-options.d.ts +7 -1
  108. package/dist/product/workflows/create-product-options.d.ts.map +1 -1
  109. package/dist/product/workflows/create-product-options.js +7 -1
  110. package/dist/product/workflows/create-product-options.js.map +1 -1
  111. package/dist/product/workflows/delete-product-options.d.ts.map +1 -1
  112. package/dist/product/workflows/delete-product-options.js +2 -2
  113. package/dist/product/workflows/delete-product-options.js.map +1 -1
  114. package/dist/product/workflows/index.d.ts +1 -0
  115. package/dist/product/workflows/index.d.ts.map +1 -1
  116. package/dist/product/workflows/index.js +1 -0
  117. package/dist/product/workflows/index.js.map +1 -1
  118. package/dist/product/workflows/update-product-options.d.ts +1 -1
  119. package/dist/product/workflows/update-product-options.d.ts.map +1 -1
  120. package/dist/product/workflows/update-product-options.js +1 -1
  121. package/dist/tsconfig.tsbuildinfo +1 -1
  122. package/package.json +3 -3
@@ -78,6 +78,9 @@ exports.updateOrderWorkflow = (0, workflows_sdk_1.createWorkflow)(exports.update
78
78
  "shipping_address.*",
79
79
  "billing_address.*",
80
80
  "metadata",
81
+ "shipping_methods.id",
82
+ "shipping_methods.name",
83
+ "shipping_methods.shipping_option_id",
81
84
  ],
82
85
  filters: { id: input.id },
83
86
  options: { throwIfKeyNotFound: true },
@@ -183,10 +186,13 @@ exports.updateOrderWorkflow = (0, workflows_sdk_1.createWorkflow)(exports.update
183
186
  (0, workflows_sdk_1.when)("locale-changed", { input, order }, ({ input, order }) => {
184
187
  return !!input.locale && input.locale !== order.locale;
185
188
  }).then(() => {
186
- (0, steps_1.updateOrderItemsTranslationsStep)({
189
+ (0, workflows_sdk_1.parallelize)((0, steps_1.updateOrderItemsTranslationsStep)({
187
190
  order_id: input.id,
188
191
  locale: input.locale,
189
- });
192
+ }), (0, steps_1.updateOrderShippingMethodsTranslationsStep)({
193
+ locale: input.locale,
194
+ shippingMethods: order.shipping_methods,
195
+ }));
190
196
  });
191
197
  (0, common_1.emitEventStep)({
192
198
  eventName: utils_1.OrderWorkflowEvents.UPDATED,
@@ -1 +1 @@
1
- {"version":3,"file":"update-order.js","sourceRoot":"","sources":["../../../src/order/workflows/update-order.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update-order.js","sourceRoot":"","sources":["../../../src/order/workflows/update-order.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,8 @@
1
1
  import type { ProductTypes } from "@medusajs/framework/types";
2
+ /**
3
+ * The data to create one or more product options.
4
+ */
5
+ export type CreateProductOptionsStepInput = ProductTypes.CreateProductOptionDTO[];
2
6
  export declare const createProductOptionsStepId = "create-product-options";
3
7
  /**
4
8
  * This step creates one or more product options.
@@ -6,8 +10,13 @@ export declare const createProductOptionsStepId = "create-product-options";
6
10
  * @example
7
11
  * const data = createProductOptionsStep([{
8
12
  * title: "Size",
9
- * values: ["S", "M", "L"]
13
+ * values: ["S", "M", "L"],
14
+ * ranks: {
15
+ * "S": 2,
16
+ * "M": 1,
17
+ * "L": 3
18
+ * }
10
19
  * }])
11
20
  */
12
- export declare const createProductOptionsStep: import("@medusajs/framework/workflows-sdk").StepFunction<ProductTypes.CreateProductOptionDTO[], ProductTypes.ProductOptionDTO[]>;
21
+ export declare const createProductOptionsStep: import("@medusajs/framework/workflows-sdk").StepFunction<CreateProductOptionsStepInput, ProductTypes.ProductOptionDTO[]>;
13
22
  //# sourceMappingURL=create-product-options.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-product-options.d.ts","sourceRoot":"","sources":["../../../src/product/steps/create-product-options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,YAAY,EACb,MAAM,2BAA2B,CAAA;AAIlC,eAAO,MAAM,0BAA0B,2BAA2B,CAAA;AAClE;;;;;;;;GAQG;AACH,eAAO,MAAM,wBAAwB,kIAoBpC,CAAA"}
1
+ {"version":3,"file":"create-product-options.d.ts","sourceRoot":"","sources":["../../../src/product/steps/create-product-options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,YAAY,EACb,MAAM,2BAA2B,CAAA;AAIlC;;GAEG;AACH,MAAM,MAAM,6BAA6B,GAAG,YAAY,CAAC,sBAAsB,EAAE,CAAA;AAEjF,eAAO,MAAM,0BAA0B,2BAA2B,CAAA;AAClE;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,wBAAwB,0HAoBpC,CAAA"}
@@ -10,7 +10,12 @@ exports.createProductOptionsStepId = "create-product-options";
10
10
  * @example
11
11
  * const data = createProductOptionsStep([{
12
12
  * title: "Size",
13
- * values: ["S", "M", "L"]
13
+ * values: ["S", "M", "L"],
14
+ * ranks: {
15
+ * "S": 2,
16
+ * "M": 1,
17
+ * "L": 3
18
+ * }
14
19
  * }])
15
20
  */
16
21
  exports.createProductOptionsStep = (0, workflows_sdk_1.createStep)(exports.createProductOptionsStepId, async (data, { container }) => {
@@ -1 +1 @@
1
- {"version":3,"file":"create-product-options.js","sourceRoot":"","sources":["../../../src/product/steps/create-product-options.ts"],"names":[],"mappings":";;;AAIA,qDAAmD;AACnD,qEAA4E;AAE/D,QAAA,0BAA0B,GAAG,wBAAwB,CAAA;AAClE;;;;;;;;GAQG;AACU,QAAA,wBAAwB,GAAG,IAAA,0BAAU,EAChD,kCAA0B,EAC1B,KAAK,EAAE,IAA2C,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;IACnE,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAwB,eAAO,CAAC,OAAO,CAAC,CAAA;IAEzE,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAA;IACxD,OAAO,IAAI,4BAAY,CACrB,OAAO,EACP,OAAO,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,CACjD,CAAA;AACH,CAAC,EACD,KAAK,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;IAClC,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC;QACxB,OAAM;IACR,CAAC;IAED,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAwB,eAAO,CAAC,OAAO,CAAC,CAAA;IAEzE,MAAM,OAAO,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAA;AAChD,CAAC,CACF,CAAA"}
1
+ {"version":3,"file":"create-product-options.js","sourceRoot":"","sources":["../../../src/product/steps/create-product-options.ts"],"names":[],"mappings":";;;AAIA,qDAAmD;AACnD,qEAA4E;AAO/D,QAAA,0BAA0B,GAAG,wBAAwB,CAAA;AAClE;;;;;;;;;;;;;GAaG;AACU,QAAA,wBAAwB,GAAG,IAAA,0BAAU,EAChD,kCAA0B,EAC1B,KAAK,EAAE,IAAmC,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;IAC3D,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAwB,eAAO,CAAC,OAAO,CAAC,CAAA;IAEzE,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAA;IACxD,OAAO,IAAI,4BAAY,CACrB,OAAO,EACP,OAAO,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,CACjD,CAAA;AACH,CAAC,EACD,KAAK,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;IAClC,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC;QACxB,OAAM;IACR,CAAC;IAED,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAwB,eAAO,CAAC,OAAO,CAAC,CAAA;IAEzE,MAAM,OAAO,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAA;AAChD,CAAC,CACF,CAAA"}
@@ -32,4 +32,6 @@ export * from "./get-variant-availability";
32
32
  export * from "./normalize-products";
33
33
  export * from "./normalize-products-to-chunks";
34
34
  export * from "./process-import-chunks";
35
+ export * from "./link-product-options-to-product";
36
+ export * from "./process-product-options-for-import";
35
37
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/product/steps/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAA;AACvC,cAAc,yBAAyB,CAAA;AACvC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,mBAAmB,CAAA;AACjC,cAAc,mBAAmB,CAAA;AACjC,cAAc,mBAAmB,CAAA;AACjC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,oBAAoB,CAAA;AAClC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA;AACxC,cAAc,2BAA2B,CAAA;AACzC,cAAc,2BAA2B,CAAA;AACzC,cAAc,2BAA2B,CAAA;AACzC,cAAc,sBAAsB,CAAA;AACpC,cAAc,sBAAsB,CAAA;AACpC,cAAc,sBAAsB,CAAA;AACpC,cAAc,kCAAkC,CAAA;AAChD,cAAc,mCAAmC,CAAA;AACjD,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,uBAAuB,CAAA;AACrC,cAAc,uBAAuB,CAAA;AACrC,cAAc,uBAAuB,CAAA;AACrC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,wBAAwB,CAAA;AACtC,cAAc,qBAAqB,CAAA;AACnC,cAAc,oCAAoC,CAAA;AAClD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,sBAAsB,CAAA;AACpC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,yBAAyB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/product/steps/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAA;AACvC,cAAc,yBAAyB,CAAA;AACvC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,mBAAmB,CAAA;AACjC,cAAc,mBAAmB,CAAA;AACjC,cAAc,mBAAmB,CAAA;AACjC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,oBAAoB,CAAA;AAClC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA;AACxC,cAAc,2BAA2B,CAAA;AACzC,cAAc,2BAA2B,CAAA;AACzC,cAAc,2BAA2B,CAAA;AACzC,cAAc,sBAAsB,CAAA;AACpC,cAAc,sBAAsB,CAAA;AACpC,cAAc,sBAAsB,CAAA;AACpC,cAAc,kCAAkC,CAAA;AAChD,cAAc,mCAAmC,CAAA;AACjD,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,uBAAuB,CAAA;AACrC,cAAc,uBAAuB,CAAA;AACrC,cAAc,uBAAuB,CAAA;AACrC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,wBAAwB,CAAA;AACtC,cAAc,qBAAqB,CAAA;AACnC,cAAc,oCAAoC,CAAA;AAClD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,sBAAsB,CAAA;AACpC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,yBAAyB,CAAA;AACvC,cAAc,mCAAmC,CAAA;AACjD,cAAc,sCAAsC,CAAA"}
@@ -48,4 +48,6 @@ __exportStar(require("./get-variant-availability"), exports);
48
48
  __exportStar(require("./normalize-products"), exports);
49
49
  __exportStar(require("./normalize-products-to-chunks"), exports);
50
50
  __exportStar(require("./process-import-chunks"), exports);
51
+ __exportStar(require("./link-product-options-to-product"), exports);
52
+ __exportStar(require("./process-product-options-for-import"), exports);
51
53
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/product/steps/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAuC;AACvC,0DAAuC;AACvC,+DAA4C;AAC5C,oDAAiC;AACjC,oDAAiC;AACjC,oDAAiC;AACjC,iDAA8B;AAC9B,qDAAkC;AAClC,gEAA6C;AAC7C,2DAAwC;AACxC,2DAAwC;AACxC,2DAAwC;AACxC,4DAAyC;AACzC,4DAAyC;AACzC,4DAAyC;AACzC,uDAAoC;AACpC,uDAAoC;AACpC,uDAAoC;AACpC,mEAAgD;AAChD,oEAAiD;AACjD,yDAAsC;AACtC,yDAAsC;AACtC,yDAAsC;AACtC,wDAAqC;AACrC,wDAAqC;AACrC,wDAAqC;AACrC,+DAA4C;AAC5C,yDAAsC;AACtC,sDAAmC;AACnC,qEAAkD;AAClD,6DAA0C;AAC1C,uDAAoC;AACpC,iEAA8C;AAC9C,0DAAuC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/product/steps/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAuC;AACvC,0DAAuC;AACvC,+DAA4C;AAC5C,oDAAiC;AACjC,oDAAiC;AACjC,oDAAiC;AACjC,iDAA8B;AAC9B,qDAAkC;AAClC,gEAA6C;AAC7C,2DAAwC;AACxC,2DAAwC;AACxC,2DAAwC;AACxC,4DAAyC;AACzC,4DAAyC;AACzC,4DAAyC;AACzC,uDAAoC;AACpC,uDAAoC;AACpC,uDAAoC;AACpC,mEAAgD;AAChD,oEAAiD;AACjD,yDAAsC;AACtC,yDAAsC;AACtC,yDAAsC;AACtC,wDAAqC;AACrC,wDAAqC;AACrC,wDAAqC;AACrC,+DAA4C;AAC5C,yDAAsC;AACtC,sDAAmC;AACnC,qEAAkD;AAClD,6DAA0C;AAC1C,uDAAoC;AACpC,iEAA8C;AAC9C,0DAAuC;AACvC,oEAAiD;AACjD,uEAAoD"}
@@ -0,0 +1,41 @@
1
+ import { ProductTypes } from "@medusajs/framework/types";
2
+ /**
3
+ * The data to add/remove one or more product options to/from a product.
4
+ */
5
+ export type LinkProductOptionsToProductStepInput = {
6
+ /**
7
+ * The product ID to add/remove the options to/from.
8
+ */
9
+ product_id: string;
10
+ /**
11
+ * The product options to add to the product.
12
+ */
13
+ add?: (string | Omit<ProductTypes.ProductOptionProductPair, "product_id">)[];
14
+ /**
15
+ * The product options to remove from the product.
16
+ */
17
+ remove?: string[];
18
+ };
19
+ export declare const linkProductOptionsToProductStepId = "link-product-options-to-product";
20
+ /**
21
+ * This step manages options of a product. You can add or remove
22
+ * options from a product.
23
+ *
24
+ * @since 2.13.0
25
+ *
26
+ * @example
27
+ * const data = linkProductOptionsToProductStep({
28
+ * product_id: "prod_123",
29
+ * add: [
30
+ * "opt_123",
31
+ * {
32
+ * product_option_id: "opt_789",
33
+ * product_id: "prod_123",
34
+ * product_option_value_ids: ["optval_1", "optval_2"]
35
+ * }
36
+ * ],
37
+ * remove: ["opt_456"]
38
+ * })
39
+ */
40
+ export declare const linkProductOptionsToProductStep: import("@medusajs/framework/workflows-sdk").StepFunction<LinkProductOptionsToProductStepInput, undefined>;
41
+ //# sourceMappingURL=link-product-options-to-product.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"link-product-options-to-product.d.ts","sourceRoot":"","sources":["../../../src/product/steps/link-product-options-to-product.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAI/E;;GAEG;AACH,MAAM,MAAM,oCAAoC,GAAG;IACjD;;OAEG;IACH,UAAU,EAAE,MAAM,CAAA;IAClB;;OAEG;IACH,GAAG,CAAC,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,wBAAwB,EAAE,YAAY,CAAC,CAAC,EAAE,CAAA;IAC5E;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;CAClB,CAAA;AAED,eAAO,MAAM,iCAAiC,oCACX,CAAA;AACnC;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,+BAA+B,2GAkD3C,CAAA"}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.linkProductOptionsToProductStep = exports.linkProductOptionsToProductStepId = void 0;
4
+ const utils_1 = require("@medusajs/framework/utils");
5
+ const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
6
+ exports.linkProductOptionsToProductStepId = "link-product-options-to-product";
7
+ /**
8
+ * This step manages options of a product. You can add or remove
9
+ * options from a product.
10
+ *
11
+ * @since 2.13.0
12
+ *
13
+ * @example
14
+ * const data = linkProductOptionsToProductStep({
15
+ * product_id: "prod_123",
16
+ * add: [
17
+ * "opt_123",
18
+ * {
19
+ * product_option_id: "opt_789",
20
+ * product_id: "prod_123",
21
+ * product_option_value_ids: ["optval_1", "optval_2"]
22
+ * }
23
+ * ],
24
+ * remove: ["opt_456"]
25
+ * })
26
+ */
27
+ exports.linkProductOptionsToProductStep = (0, workflows_sdk_1.createStep)(exports.linkProductOptionsToProductStepId, async (input, { container }) => {
28
+ const service = container.resolve(utils_1.Modules.PRODUCT);
29
+ const toAdd = (input.add ?? []).map((option) => {
30
+ if (typeof option === "string") {
31
+ return {
32
+ product_option_id: option,
33
+ product_id: input.product_id,
34
+ };
35
+ }
36
+ return {
37
+ product_option_id: option.product_option_id,
38
+ product_id: input.product_id,
39
+ product_option_value_ids: option.product_option_value_ids,
40
+ };
41
+ });
42
+ const toRemove = (input.remove ?? []).map((optionId) => {
43
+ return {
44
+ product_option_id: optionId,
45
+ product_id: input.product_id,
46
+ };
47
+ });
48
+ const promises = [];
49
+ if (toAdd.length) {
50
+ promises.push(service.addProductOptionToProduct(toAdd));
51
+ }
52
+ if (toRemove.length) {
53
+ promises.push(service.removeProductOptionFromProduct(toRemove));
54
+ }
55
+ await (0, utils_1.promiseAll)(promises);
56
+ return new workflows_sdk_1.StepResponse(void 0, { toAdd, toRemove });
57
+ }, async (prevData, { container }) => {
58
+ if (!prevData) {
59
+ return;
60
+ }
61
+ const service = container.resolve(utils_1.Modules.PRODUCT);
62
+ if (prevData.toAdd.length) {
63
+ await service.removeProductOptionFromProduct(prevData.toAdd);
64
+ }
65
+ if (prevData.toRemove.length) {
66
+ await service.addProductOptionToProduct(prevData.toRemove);
67
+ }
68
+ });
69
+ //# sourceMappingURL=link-product-options-to-product.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"link-product-options-to-product.js","sourceRoot":"","sources":["../../../src/product/steps/link-product-options-to-product.ts"],"names":[],"mappings":";;;AACA,qDAA+D;AAC/D,qEAA4E;AAoB/D,QAAA,iCAAiC,GAC5C,iCAAiC,CAAA;AACnC;;;;;;;;;;;;;;;;;;;GAmBG;AACU,QAAA,+BAA+B,GAAG,IAAA,0BAAU,EACvD,yCAAiC,EACjC,KAAK,EAAE,KAA2C,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;IACnE,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAwB,eAAO,CAAC,OAAO,CAAC,CAAA;IAEzE,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QAC7C,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC/B,OAAO;gBACL,iBAAiB,EAAE,MAAM;gBACzB,UAAU,EAAE,KAAK,CAAC,UAAU;aAC7B,CAAA;QACH,CAAC;QACD,OAAO;YACL,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;YAC3C,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,wBAAwB,EAAE,MAAM,CAAC,wBAAwB;SAC1D,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,MAAM,QAAQ,GAAG,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;QACrD,OAAO;YACL,iBAAiB,EAAE,QAAQ;YAC3B,UAAU,EAAE,KAAK,CAAC,UAAU;SAC7B,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,MAAM,QAAQ,GAAmB,EAAE,CAAA;IACnC,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACjB,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC,CAAA;IACzD,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;QACpB,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,8BAA8B,CAAC,QAAQ,CAAC,CAAC,CAAA;IACjE,CAAC;IACD,MAAM,IAAA,kBAAU,EAAC,QAAQ,CAAC,CAAA;IAE1B,OAAO,IAAI,4BAAY,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;AACtD,CAAC,EACD,KAAK,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;IAChC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAM;IACR,CAAC;IACD,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAwB,eAAO,CAAC,OAAO,CAAC,CAAA;IAEzE,IAAI,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAC1B,MAAM,OAAO,CAAC,8BAA8B,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC9D,CAAC;IACD,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC7B,MAAM,OAAO,CAAC,yBAAyB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IAC5D,CAAC;AACH,CAAC,CACF,CAAA"}
@@ -0,0 +1,51 @@
1
+ import type { ProductTypes, UpdateProductWorkflowInputDTO } from "@medusajs/framework/types";
2
+ export declare const processProductOptionsForImportStepId = "process-product-options-for-import";
3
+ /**
4
+ * The data to process products with options during import.
5
+ */
6
+ export type ProcessProductOptionsForImportInput = {
7
+ /**
8
+ * The products to process. Each product can optionally have an `options` field
9
+ * containing the product options to create.
10
+ */
11
+ products: (Omit<UpdateProductWorkflowInputDTO, "option_ids"> & {
12
+ /**
13
+ * The product options to create for the product.
14
+ */
15
+ options?: ProductTypes.CreateProductOptionDTO[];
16
+ })[];
17
+ };
18
+ /**
19
+ * This step processes products with options during import. It performs the following actions:
20
+ *
21
+ * 1. Creates product options.
22
+ * 2. Transforms `product.options` in the input to `product.option_ids`.
23
+ * 3. Transforms variant options from `{title: value}` to `{optionId: value}`.
24
+ *
25
+ * @since 2.13.0
26
+ *
27
+ * @example
28
+ * const data = processProductOptionsForImportStep({
29
+ * products: [
30
+ * {
31
+ * title: "T-Shirt",
32
+ * options: [
33
+ * {
34
+ * title: "Size",
35
+ * values: ["S", "M", "L"]
36
+ * }
37
+ * ],
38
+ * variants: [
39
+ * {
40
+ * title: "T-Shirt - Small",
41
+ * options: {
42
+ * Size: "S"
43
+ * }
44
+ * }
45
+ * ]
46
+ * }
47
+ * ]
48
+ * })
49
+ */
50
+ export declare const processProductOptionsForImportStep: import("@medusajs/framework/workflows-sdk").StepFunction<ProcessProductOptionsForImportInput, UpdateProductWorkflowInputDTO[]>;
51
+ //# sourceMappingURL=process-product-options-for-import.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"process-product-options-for-import.d.ts","sourceRoot":"","sources":["../../../src/product/steps/process-product-options-for-import.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,YAAY,EACZ,6BAA6B,EAC9B,MAAM,2BAA2B,CAAA;AAKlC,eAAO,MAAM,oCAAoC,uCACX,CAAA;AAEtC;;GAEG;AACH,MAAM,MAAM,mCAAmC,GAAG;IAChD;;;OAGG;IACH,QAAQ,EAAE,CAAC,IAAI,CAAC,6BAA6B,EAAE,YAAY,CAAC,GAAG;QAC7D;;WAEG;QACH,OAAO,CAAC,EAAE,YAAY,CAAC,sBAAsB,EAAE,CAAA;KAChD,CAAC,EAAE,CAAA;CACL,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,eAAO,MAAM,kCAAkC,gIAyE9C,CAAA"}
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.processProductOptionsForImportStep = exports.processProductOptionsForImportStepId = void 0;
4
+ const utils_1 = require("@medusajs/framework/utils");
5
+ const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
6
+ const utils_2 = require("@medusajs/utils");
7
+ exports.processProductOptionsForImportStepId = "process-product-options-for-import";
8
+ /**
9
+ * This step processes products with options during import. It performs the following actions:
10
+ *
11
+ * 1. Creates product options.
12
+ * 2. Transforms `product.options` in the input to `product.option_ids`.
13
+ * 3. Transforms variant options from `{title: value}` to `{optionId: value}`.
14
+ *
15
+ * @since 2.13.0
16
+ *
17
+ * @example
18
+ * const data = processProductOptionsForImportStep({
19
+ * products: [
20
+ * {
21
+ * title: "T-Shirt",
22
+ * options: [
23
+ * {
24
+ * title: "Size",
25
+ * values: ["S", "M", "L"]
26
+ * }
27
+ * ],
28
+ * variants: [
29
+ * {
30
+ * title: "T-Shirt - Small",
31
+ * options: {
32
+ * Size: "S"
33
+ * }
34
+ * }
35
+ * ]
36
+ * }
37
+ * ]
38
+ * })
39
+ */
40
+ exports.processProductOptionsForImportStep = (0, workflows_sdk_1.createStep)(exports.processProductOptionsForImportStepId, async (data, { container }) => {
41
+ const productService = container.resolve(utils_1.Modules.PRODUCT);
42
+ const processedProducts = [];
43
+ const allOptions = [];
44
+ const productIndices = []; // Maps option index to product index
45
+ data.products.forEach((product, index) => {
46
+ (product.options ?? []).forEach((option) => {
47
+ allOptions.push(option);
48
+ productIndices.push(index);
49
+ });
50
+ });
51
+ const createdOptions = allOptions.length > 0
52
+ ? await productService.createProductOptions(allOptions.map(option => ({
53
+ ...option,
54
+ is_exclusive: true // Until we change the CSV logic to pass option id in there, we have to default to exclusive
55
+ })))
56
+ : [];
57
+ const createdOptionIds = createdOptions.map((opt) => opt.id);
58
+ const productOptionsMap = new Map();
59
+ createdOptions.forEach((option, index) => {
60
+ const productIndex = productIndices[index];
61
+ if (!productOptionsMap.has(productIndex)) {
62
+ productOptionsMap.set(productIndex, []);
63
+ }
64
+ productOptionsMap.get(productIndex).push(option);
65
+ });
66
+ data.products.forEach((product, index) => {
67
+ const createdOptionsForProduct = productOptionsMap.get(index);
68
+ if (createdOptionsForProduct && createdOptionsForProduct.length) {
69
+ // Transform product to use option_ids instead of options
70
+ const transformedProduct = (0, utils_2.deepCopy)(product);
71
+ delete transformedProduct.options;
72
+ transformedProduct.option_ids = createdOptionsForProduct.map((opt) => opt.id);
73
+ processedProducts.push(transformedProduct);
74
+ }
75
+ else {
76
+ processedProducts.push(product);
77
+ }
78
+ });
79
+ return new workflows_sdk_1.StepResponse(processedProducts, createdOptionIds);
80
+ }, async (createdOptionIds, { container }) => {
81
+ if (!createdOptionIds || createdOptionIds.length === 0) {
82
+ return;
83
+ }
84
+ const productService = container.resolve(utils_1.Modules.PRODUCT);
85
+ await productService.deleteProductOptions(createdOptionIds);
86
+ });
87
+ //# sourceMappingURL=process-product-options-for-import.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"process-product-options-for-import.js","sourceRoot":"","sources":["../../../src/product/steps/process-product-options-for-import.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"update-product-options.d.ts","sourceRoot":"","sources":["../../../src/product/steps/update-product-options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,YAAY,EACb,MAAM,2BAA2B,CAAA;AAOlC;;GAEG;AACH,MAAM,MAAM,6BAA6B,GAAG;IAC1C;;OAEG;IACH,QAAQ,EAAE,YAAY,CAAC,4BAA4B,CAAA;IACnD;;OAEG;IACH,MAAM,EAAE,YAAY,CAAC,sBAAsB,CAAA;CAC5C,CAAA;AAED,eAAO,MAAM,0BAA0B,2BAA2B,CAAA;AAClE;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,wBAAwB,0HAoCpC,CAAA"}
1
+ {"version":3,"file":"update-product-options.d.ts","sourceRoot":"","sources":["../../../src/product/steps/update-product-options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,YAAY,EACb,MAAM,2BAA2B,CAAA;AAQlC;;GAEG;AACH,MAAM,MAAM,6BAA6B,GAAG;IAC1C;;OAEG;IACH,QAAQ,EAAE,YAAY,CAAC,4BAA4B,CAAA;IACnD;;OAEG;IACH,MAAM,EAAE,YAAY,CAAC,sBAAsB,CAAA;CAC5C,CAAA;AAED,eAAO,MAAM,0BAA0B,2BAA2B,CAAA;AAClE;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,wBAAwB,0HAwCpC,CAAA"}
@@ -19,13 +19,15 @@ exports.updateProductOptionsStepId = "update-product-options";
19
19
  */
20
20
  exports.updateProductOptionsStep = (0, workflows_sdk_1.createStep)(exports.updateProductOptionsStepId, async (data, { container }) => {
21
21
  const service = container.resolve(utils_1.Modules.PRODUCT);
22
- const { selects, relations } = (0, utils_1.getSelectsAndRelationsFromObjectArray)([
23
- data.update,
24
- ]);
22
+ const { ranks, ...cleanedUpdate } = data.update;
23
+ const { selects } = (0, utils_1.getSelectsAndRelationsFromObjectArray)([cleanedUpdate]);
25
24
  const prevData = await service.listProductOptions(data.selector, {
26
25
  select: selects,
27
- relations,
26
+ relations: ["values"],
28
27
  });
28
+ if (!prevData.length) {
29
+ throw new utils_1.MedusaError(utils_1.MedusaError.Types.NOT_FOUND, `Product option with id "${data.selector.id}" not found`);
30
+ }
29
31
  const productOptions = await service.updateProductOptions(data.selector, data.update);
30
32
  return new workflows_sdk_1.StepResponse(productOptions, prevData);
31
33
  }, async (prevData, { container }) => {
@@ -36,8 +38,6 @@ exports.updateProductOptionsStep = (0, workflows_sdk_1.createStep)(exports.updat
36
38
  await service.upsertProductOptions(prevData.map((o) => ({
37
39
  ...o,
38
40
  values: o.values?.map((v) => v.value),
39
- product: undefined,
40
- product_id: o.product_id ?? undefined,
41
41
  })));
42
42
  });
43
43
  //# sourceMappingURL=update-product-options.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"update-product-options.js","sourceRoot":"","sources":["../../../src/product/steps/update-product-options.ts"],"names":[],"mappings":";;;AAIA,qDAGkC;AAClC,qEAA4E;AAgB/D,QAAA,0BAA0B,GAAG,wBAAwB,CAAA;AAClE;;;;;;;;;;;;GAYG;AACU,QAAA,wBAAwB,GAAG,IAAA,0BAAU,EAChD,kCAA0B,EAC1B,KAAK,EAAE,IAAmC,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;IAC3D,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAwB,eAAO,CAAC,OAAO,CAAC,CAAA;IAEzE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,IAAA,6CAAqC,EAAC;QACnE,IAAI,CAAC,MAAM;KACZ,CAAC,CAAA;IAEF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,QAAQ,EAAE;QAC/D,MAAM,EAAE,OAAO;QACf,SAAS;KACV,CAAC,CAAA;IAEF,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,oBAAoB,CACvD,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,MAAM,CACZ,CAAA;IACD,OAAO,IAAI,4BAAY,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAA;AACnD,CAAC,EACD,KAAK,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;IAChC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QACtB,OAAM;IACR,CAAC;IAED,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAwB,eAAO,CAAC,OAAO,CAAC,CAAA;IAEzE,MAAM,OAAO,CAAC,oBAAoB,CAChC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACnB,GAAG,CAAC;QACJ,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;QACrC,OAAO,EAAE,SAAS;QAClB,UAAU,EAAE,CAAC,CAAC,UAAU,IAAI,SAAS;KACtC,CAAC,CAAC,CACJ,CAAA;AACH,CAAC,CACF,CAAA"}
1
+ {"version":3,"file":"update-product-options.js","sourceRoot":"","sources":["../../../src/product/steps/update-product-options.ts"],"names":[],"mappings":";;;AAIA,qDAIkC;AAClC,qEAA4E;AAgB/D,QAAA,0BAA0B,GAAG,wBAAwB,CAAA;AAClE;;;;;;;;;;;;GAYG;AACU,QAAA,wBAAwB,GAAG,IAAA,0BAAU,EAChD,kCAA0B,EAC1B,KAAK,EAAE,IAAmC,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;IAC3D,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAwB,eAAO,CAAC,OAAO,CAAC,CAAA;IAEzE,MAAM,EAAE,KAAK,EAAE,GAAG,aAAa,EAAE,GAAG,IAAI,CAAC,MAAM,CAAA;IAC/C,MAAM,EAAE,OAAO,EAAE,GAAG,IAAA,6CAAqC,EAAC,CAAC,aAAa,CAAC,CAAC,CAAA;IAE1E,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,QAAQ,EAAE;QAC/D,MAAM,EAAE,OAAO;QACf,SAAS,EAAE,CAAC,QAAQ,CAAC;KACtB,CAAC,CAAA;IAEF,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QACrB,MAAM,IAAI,mBAAW,CACnB,mBAAW,CAAC,KAAK,CAAC,SAAS,EAC3B,2BAA2B,IAAI,CAAC,QAAQ,CAAC,EAAE,aAAa,CACzD,CAAA;IACH,CAAC;IAED,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,oBAAoB,CACvD,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,MAAM,CACZ,CAAA;IACD,OAAO,IAAI,4BAAY,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAA;AACnD,CAAC,EACD,KAAK,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;IAChC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QACtB,OAAM;IACR,CAAC;IAED,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAwB,eAAO,CAAC,OAAO,CAAC,CAAA;IAEzE,MAAM,OAAO,CAAC,oBAAoB,CAChC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACnB,GAAG,CAAC;QACJ,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;KACtC,CAAC,CAAC,CACJ,CAAA;AACH,CAAC,CACF,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"batch-products.d.ts","sourceRoot":"","sources":["../../../src/product/workflows/batch-products.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,6BAA6B,EAC7B,YAAY,EACZ,6BAA6B,EAC9B,MAAM,2BAA2B,CAAA;AAalC;;GAEG;AACH,MAAM,WAAW,yBACf,SAAQ,kBAAkB,CACxB,6BAA6B,EAC7B,6BAA6B,CAC9B;CAAG;AAiBN,eAAO,MAAM,uBAAuB,mBAAmB,CAAA;AACvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,eAAO,MAAM,qBAAqB,yIAqBjC,CAAA"}
1
+ {"version":3,"file":"batch-products.d.ts","sourceRoot":"","sources":["../../../src/product/workflows/batch-products.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,6BAA6B,EAC7B,YAAY,EACZ,6BAA6B,EAC9B,MAAM,2BAA2B,CAAA;AAclC;;GAEG;AACH,MAAM,WAAW,yBACf,SAAQ,kBAAkB,CACxB,6BAA6B,EAC7B,6BAA6B,CAC9B;CAAG;AAEN,eAAO,MAAM,uBAAuB,mBAAmB,CAAA;AACvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,eAAO,MAAM,qBAAqB,yIA2CjC,CAAA"}
@@ -5,9 +5,7 @@ const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
5
5
  const create_products_1 = require("./create-products");
6
6
  const delete_products_1 = require("./delete-products");
7
7
  const update_products_1 = require("./update-products");
8
- const conditionallyCreateProducts = (input) => (0, workflows_sdk_1.when)({ input }, ({ input }) => !!input.create?.length).then(() => create_products_1.createProductsWorkflow.runAsStep({ input: { products: input.create } }));
9
- const conditionallyUpdateProducts = (input) => (0, workflows_sdk_1.when)({ input }, ({ input }) => !!input.update?.length).then(() => update_products_1.updateProductsWorkflow.runAsStep({ input: { products: input.update } }));
10
- const conditionallyDeleteProducts = (input) => (0, workflows_sdk_1.when)({ input }, ({ input }) => !!input.delete?.length).then(() => delete_products_1.deleteProductsWorkflow.runAsStep({ input: { ids: input.delete } }));
8
+ const process_product_options_for_import_1 = require("../steps/process-product-options-for-import");
11
9
  exports.batchProductsWorkflowId = "batch-products";
12
10
  /**
13
11
  * This workflow creates, updates, or deletes products. It's used by the
@@ -60,7 +58,15 @@ exports.batchProductsWorkflowId = "batch-products";
60
58
  * Manage products in bulk.
61
59
  */
62
60
  exports.batchProductsWorkflow = (0, workflows_sdk_1.createWorkflow)(exports.batchProductsWorkflowId, (input) => {
63
- const res = (0, workflows_sdk_1.parallelize)(conditionallyCreateProducts(input), conditionallyUpdateProducts(input), conditionallyDeleteProducts(input));
61
+ const productsToUpdate = (0, workflows_sdk_1.transform)({ input }, ({ input }) => {
62
+ return input.update ?? [];
63
+ });
64
+ const processedProductsToUpdate = (0, process_product_options_for_import_1.processProductOptionsForImportStep)({
65
+ products: productsToUpdate,
66
+ });
67
+ const res = (0, workflows_sdk_1.parallelize)((0, workflows_sdk_1.when)({ input }, ({ input }) => !!input.create?.length).then(() => create_products_1.createProductsWorkflow.runAsStep({ input: { products: input.create } })), (0, workflows_sdk_1.when)({ processedProductsToUpdate }, ({ processedProductsToUpdate }) => !!processedProductsToUpdate.length).then(() => update_products_1.updateProductsWorkflow.runAsStep({
68
+ input: { products: processedProductsToUpdate },
69
+ })), (0, workflows_sdk_1.when)({ input }, ({ input }) => !!input.delete?.length).then(() => delete_products_1.deleteProductsWorkflow.runAsStep({ input: { ids: input.delete } })));
64
70
  return new workflows_sdk_1.WorkflowResponse((0, workflows_sdk_1.transform)({ res, input }, (data) => {
65
71
  return {
66
72
  created: data.res[0] ?? [],
@@ -1 +1 @@
1
- {"version":3,"file":"batch-products.js","sourceRoot":"","sources":["../../../src/product/workflows/batch-products.ts"],"names":[],"mappings":";;;AAOA,qEAO0C;AAC1C,uDAA0D;AAC1D,uDAA0D;AAC1D,uDAA0D;AAW1D,MAAM,2BAA2B,GAAG,CAAC,KAAgC,EAAE,EAAE,CACvE,IAAA,oBAAI,EAAC,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAC/D,wCAAsB,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,MAAO,EAAE,EAAE,CAAC,CACzE,CAAA;AAEH,MAAM,2BAA2B,GAAG,CAAC,KAAgC,EAAE,EAAE,CACvE,IAAA,oBAAI,EAAC,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAC/D,wCAAsB,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,MAAO,EAAE,EAAE,CAAC,CACzE,CAAA;AAEH,MAAM,2BAA2B,GAAG,CAAC,KAAgC,EAAE,EAAE,CACvE,IAAA,oBAAI,EAAC,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAC/D,wCAAsB,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,MAAO,EAAE,EAAE,CAAC,CACpE,CAAA;AAEU,QAAA,uBAAuB,GAAG,gBAAgB,CAAA;AACvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACU,QAAA,qBAAqB,GAAG,IAAA,8BAAc,EACjD,+BAAuB,EACvB,CACE,KAA8C,EACkB,EAAE;IAClE,MAAM,GAAG,GAAG,IAAA,2BAAW,EACrB,2BAA2B,CAAC,KAAK,CAAC,EAClC,2BAA2B,CAAC,KAAK,CAAC,EAClC,2BAA2B,CAAC,KAAK,CAAC,CACnC,CAAA;IAED,OAAO,IAAI,gCAAgB,CACzB,IAAA,yBAAS,EAAC,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE;QACjC,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE;YAC1B,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE;YAC1B,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE;SACjC,CAAA;IACH,CAAC,CAAC,CACH,CAAA;AACH,CAAC,CACF,CAAA"}
1
+ {"version":3,"file":"batch-products.js","sourceRoot":"","sources":["../../../src/product/workflows/batch-products.ts"],"names":[],"mappings":";;;AAOA,qEAO0C;AAC1C,uDAA0D;AAC1D,uDAA0D;AAC1D,uDAA0D;AAC1D,oGAAgG;AAWnF,QAAA,uBAAuB,GAAG,gBAAgB,CAAA;AACvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACU,QAAA,qBAAqB,GAAG,IAAA,8BAAc,EACjD,+BAAuB,EACvB,CACE,KAA8C,EACkB,EAAE;IAClE,MAAM,gBAAgB,GAAG,IAAA,yBAAS,EAAC,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;QAC1D,OAAO,KAAK,CAAC,MAAM,IAAI,EAAE,CAAA;IAC3B,CAAC,CAAC,CAAA;IAEF,MAAM,yBAAyB,GAAG,IAAA,uEAAkC,EAAC;QACnE,QAAQ,EAAE,gBAG+C;KAC1D,CAAC,CAAA;IAEF,MAAM,GAAG,GAAG,IAAA,2BAAW,EACrB,IAAA,oBAAI,EAAC,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAC/D,wCAAsB,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,MAAO,EAAE,EAAE,CAAC,CACzE,EACD,IAAA,oBAAI,EACF,EAAE,yBAAyB,EAAE,EAC7B,CAAC,EAAE,yBAAyB,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,yBAAyB,CAAC,MAAM,CACtE,CAAC,IAAI,CAAC,GAAG,EAAE,CACV,wCAAsB,CAAC,SAAS,CAAC;QAC/B,KAAK,EAAE,EAAE,QAAQ,EAAE,yBAAyB,EAAE;KAC/C,CAAC,CACH,EACD,IAAA,oBAAI,EAAC,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAC/D,wCAAsB,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,MAAO,EAAE,EAAE,CAAC,CACpE,CACF,CAAA;IAED,OAAO,IAAI,gCAAgB,CACzB,IAAA,yBAAS,EAAC,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE;QACjC,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE;YAC1B,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE;YAC1B,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE;SACjC,CAAA;IACH,CAAC,CAAC,CACH,CAAA;AACH,CAAC,CACF,CAAA"}
@@ -0,0 +1,73 @@
1
+ import type { ProductTypes } from "@medusajs/framework/types";
2
+ /**
3
+ * The data to manage product options of a product.
4
+ */
5
+ export type LinkProductOptionsToProductWorkflowInput = {
6
+ /**
7
+ * The ID of the product to manage its options.
8
+ */
9
+ product_id: string;
10
+ /**
11
+ * The product options to add to the product. You can pass one of the
12
+ * following:
13
+ *
14
+ * 1. The ID of an existing product option as a string.
15
+ * 2. An object with `id` and `value_ids` to add an existing product option with specific values. This
16
+ * is useful when you want to associate only specific option values of an option to the product.
17
+ * 3. An object to create a new product option.
18
+ */
19
+ add?: (string | {
20
+ /**
21
+ * The ID of the product option to add.
22
+ */
23
+ id: string;
24
+ /**
25
+ * The IDs of the product option values to associate with the product option.
26
+ */
27
+ value_ids: string[];
28
+ } | ProductTypes.CreateProductOptionDTO)[];
29
+ /**
30
+ * The product options to remove from the product.
31
+ */
32
+ remove?: string[];
33
+ };
34
+ export declare const createAndLinkProductOptionsToProductWorkflowId = "create-and-link-product-options-to-product";
35
+ /**
36
+ * This workflow manages one or more product options of a product. It's used by the
37
+ * [Manage Product Options](https://docs.medusajs.com/api/admin#products_postproductsidoptions).
38
+ * This workflow also creates non-existing product options before adding them to the product.
39
+ *
40
+ * You can also use this workflow within your customizations or your own custom workflows, allowing you
41
+ * to wrap custom logic around product-option and product association.
42
+ *
43
+ * @since 2.13.0
44
+ *
45
+ * @example
46
+ * const { result } = await createAndLinkProductOptionsToProductWorkflow(container)
47
+ * .run({
48
+ * input: {
49
+ * product_id: "prod_123"
50
+ * add: [
51
+ * // Add existing option by ID
52
+ * "opt_456",
53
+ * // Create new option
54
+ * {
55
+ * title: "Size",
56
+ * values: ["S", "M", "L", "XL"]
57
+ * },
58
+ * // Add existing option with specific values
59
+ * {
60
+ * id: "opt_123"
61
+ * value_ids: ["optval_1", "optval_2"]
62
+ * }
63
+ * ],
64
+ * remove: ["opt_321"]
65
+ * }
66
+ * })
67
+ *
68
+ * @summary
69
+ *
70
+ * Manage options of a product.
71
+ */
72
+ export declare const createAndLinkProductOptionsToProductWorkflow: import("@medusajs/framework/workflows-sdk").ReturnWorkflow<LinkProductOptionsToProductWorkflowInput, never, []>;
73
+ //# sourceMappingURL=create-and-link-product-options-to-product.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-and-link-product-options-to-product.d.ts","sourceRoot":"","sources":["../../../src/product/workflows/create-and-link-product-options-to-product.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAc7D;;GAEG;AACH,MAAM,MAAM,wCAAwC,GAAG;IACrD;;OAEG;IACH,UAAU,EAAE,MAAM,CAAA;IAClB;;;;;;;;OAQG;IACH,GAAG,CAAC,EAAE,CACF,MAAM,GACN;QACA;;WAEG;QACH,EAAE,EAAE,MAAM,CAAC;QACX;;WAEG;QACH,SAAS,EAAE,MAAM,EAAE,CAAA;KACpB,GACC,YAAY,CAAC,sBAAsB,CACtC,EAAE,CAAA;IACH;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;CAClB,CAAA;AAED,eAAO,MAAM,8CAA8C,+CACb,CAAA;AAC9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,eAAO,MAAM,4CAA4C,iHA+ExD,CAAA"}