@medusajs/core-flows 0.0.7 → 0.1.0-next-20240321130526
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.
- package/dist/defaults/index.d.ts +2 -0
- package/dist/defaults/index.js +18 -0
- package/dist/defaults/steps/create-default-store.d.ts +7 -0
- package/dist/defaults/steps/create-default-store.js +34 -0
- package/dist/defaults/steps/index.d.ts +1 -0
- package/dist/defaults/steps/index.js +17 -0
- package/dist/defaults/workflows/create-defaults.d.ts +2 -0
- package/dist/defaults/workflows/create-defaults.js +21 -0
- package/dist/defaults/workflows/index.d.ts +1 -0
- package/dist/defaults/workflows/index.js +17 -0
- package/dist/handlers/product/update-product-variants.js +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/inventory/steps/index.d.ts +1 -0
- package/dist/inventory/steps/index.js +1 -0
- package/dist/inventory/steps/update-inventory-items.d.ts +3 -0
- package/dist/inventory/steps/update-inventory-items.js +25 -0
- package/dist/inventory/workflows/index.d.ts +1 -0
- package/dist/inventory/workflows/index.js +1 -0
- package/dist/inventory/workflows/update-inventory-items.d.ts +7 -0
- package/dist/inventory/workflows/update-inventory-items.js +9 -0
- package/dist/price-list/steps/delete-price-lists.js +2 -4
- package/dist/price-list/steps/remove-price-list-prices.js +3 -4
- package/dist/product/steps/remove-variant-pricing-link.js +10 -14
- package/dist/product/steps/update-product-options.d.ts +1 -1
- package/dist/product/steps/update-product-options.js +2 -9
- package/dist/product/steps/update-product-variants.d.ts +1 -1
- package/dist/product/steps/update-product-variants.js +2 -9
- package/dist/product/workflows/delete-product-variants.js +0 -1
- package/dist/product/workflows/delete-products.js +0 -2
- package/dist/sales-channel/steps/create-default-sales-channel.d.ts +7 -0
- package/dist/sales-channel/steps/create-default-sales-channel.js +22 -0
- package/dist/sales-channel/steps/index.d.ts +1 -0
- package/dist/sales-channel/steps/index.js +1 -0
- package/package.json +6 -6
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./steps"), exports);
|
|
18
|
+
__exportStar(require("./workflows"), exports);
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { CreateStoreDTO } from "@medusajs/types";
|
|
2
|
+
type CreateDefaultStoreStepInput = {
|
|
3
|
+
store: CreateStoreDTO;
|
|
4
|
+
};
|
|
5
|
+
export declare const createDefaultStoreStepId = "create-default-store";
|
|
6
|
+
export declare const createDefaultStoreStep: import("@medusajs/workflows-sdk").StepFunction<CreateDefaultStoreStepInput, any>;
|
|
7
|
+
export {};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createDefaultStoreStep = exports.createDefaultStoreStepId = void 0;
|
|
4
|
+
const modules_sdk_1 = require("@medusajs/modules-sdk");
|
|
5
|
+
const workflows_sdk_1 = require("@medusajs/workflows-sdk");
|
|
6
|
+
const store_1 = require("../../store");
|
|
7
|
+
exports.createDefaultStoreStepId = "create-default-store";
|
|
8
|
+
exports.createDefaultStoreStep = (0, workflows_sdk_1.createStep)(exports.createDefaultStoreStepId, async (data, { container }) => {
|
|
9
|
+
const storeService = container.resolve(modules_sdk_1.ModuleRegistrationName.STORE);
|
|
10
|
+
let shouldDelete = false;
|
|
11
|
+
let [store] = await storeService.list({}, { take: 1 });
|
|
12
|
+
if (!store) {
|
|
13
|
+
store = await (0, store_1.createStoresWorkflow)(container).run({
|
|
14
|
+
input: {
|
|
15
|
+
stores: [
|
|
16
|
+
{
|
|
17
|
+
// TODO: Revisit for a more sophisticated approach
|
|
18
|
+
...data.store,
|
|
19
|
+
supported_currency_codes: ["usd"],
|
|
20
|
+
default_currency_code: "usd",
|
|
21
|
+
},
|
|
22
|
+
],
|
|
23
|
+
},
|
|
24
|
+
});
|
|
25
|
+
shouldDelete = true;
|
|
26
|
+
}
|
|
27
|
+
return new workflows_sdk_1.StepResponse(store, { storeId: store.id, shouldDelete });
|
|
28
|
+
}, async (data, { container }) => {
|
|
29
|
+
if (!data || !data.shouldDelete) {
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
const service = container.resolve(modules_sdk_1.ModuleRegistrationName.STORE);
|
|
33
|
+
await service.delete(data.storeId);
|
|
34
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./create-default-store";
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./create-default-store"), exports);
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createDefaultsWorkflow = exports.createDefaultsWorkflowID = void 0;
|
|
4
|
+
const workflows_sdk_1 = require("@medusajs/workflows-sdk");
|
|
5
|
+
const sales_channel_1 = require("../../sales-channel");
|
|
6
|
+
const create_default_store_1 = require("../steps/create-default-store");
|
|
7
|
+
exports.createDefaultsWorkflowID = "create-defaults";
|
|
8
|
+
exports.createDefaultsWorkflow = (0, workflows_sdk_1.createWorkflow)(exports.createDefaultsWorkflowID, (input) => {
|
|
9
|
+
const salesChannel = (0, sales_channel_1.createDefaultSalesChannelStep)({
|
|
10
|
+
data: {
|
|
11
|
+
name: "Default Sales Channel",
|
|
12
|
+
description: "Created by Medusa",
|
|
13
|
+
},
|
|
14
|
+
});
|
|
15
|
+
const store = (0, create_default_store_1.createDefaultStoreStep)({
|
|
16
|
+
store: {
|
|
17
|
+
default_sales_channel_id: salesChannel.id,
|
|
18
|
+
},
|
|
19
|
+
});
|
|
20
|
+
return store;
|
|
21
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./create-defaults";
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./create-defaults"), exports);
|
|
@@ -12,7 +12,7 @@ async function updateProductVariants({ container, data, }) {
|
|
|
12
12
|
productsVariants.push(...variantsUpdateData);
|
|
13
13
|
}
|
|
14
14
|
if (updateVariantsData.length) {
|
|
15
|
-
await productModuleService.
|
|
15
|
+
await productModuleService.upsertVariants(updateVariantsData);
|
|
16
16
|
}
|
|
17
17
|
return productsVariants;
|
|
18
18
|
}
|
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
|
@@ -31,6 +31,7 @@ __exportStar(require("./api-key"), exports);
|
|
|
31
31
|
__exportStar(require("./auth"), exports);
|
|
32
32
|
__exportStar(require("./customer"), exports);
|
|
33
33
|
__exportStar(require("./customer-group"), exports);
|
|
34
|
+
__exportStar(require("./defaults"), exports);
|
|
34
35
|
__exportStar(require("./definition"), exports);
|
|
35
36
|
__exportStar(require("./definitions"), exports);
|
|
36
37
|
__exportStar(require("./fulfillment"), exports);
|
|
@@ -5,4 +5,5 @@ export * from "./create-inventory-items";
|
|
|
5
5
|
export * from "./validate-singular-inventory-items-for-tags";
|
|
6
6
|
export * from "./create-inventory-levels";
|
|
7
7
|
export * from "./validate-inventory-locations";
|
|
8
|
+
export * from "./update-inventory-items";
|
|
8
9
|
export * from "./delete-inventory-levels";
|
|
@@ -21,4 +21,5 @@ __exportStar(require("./create-inventory-items"), exports);
|
|
|
21
21
|
__exportStar(require("./validate-singular-inventory-items-for-tags"), exports);
|
|
22
22
|
__exportStar(require("./create-inventory-levels"), exports);
|
|
23
23
|
__exportStar(require("./validate-inventory-locations"), exports);
|
|
24
|
+
__exportStar(require("./update-inventory-items"), exports);
|
|
24
25
|
__exportStar(require("./delete-inventory-levels"), exports);
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { InventoryNext } from "@medusajs/types";
|
|
2
|
+
export declare const updateInventoryItemsStepId = "update-inventory-items-step";
|
|
3
|
+
export declare const updateInventoryItemsStep: import("@medusajs/workflows-sdk").StepFunction<InventoryNext.UpdateInventoryItemInput[], InventoryNext.InventoryItemDTO[]>;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.updateInventoryItemsStep = exports.updateInventoryItemsStepId = void 0;
|
|
4
|
+
const workflows_sdk_1 = require("@medusajs/workflows-sdk");
|
|
5
|
+
const utils_1 = require("@medusajs/utils");
|
|
6
|
+
const modules_sdk_1 = require("@medusajs/modules-sdk");
|
|
7
|
+
exports.updateInventoryItemsStepId = "update-inventory-items-step";
|
|
8
|
+
exports.updateInventoryItemsStep = (0, workflows_sdk_1.createStep)(exports.updateInventoryItemsStepId, async (input, { container }) => {
|
|
9
|
+
const inventoryService = container.resolve(modules_sdk_1.ModuleRegistrationName.INVENTORY);
|
|
10
|
+
const { selects, relations } = (0, utils_1.getSelectsAndRelationsFromObjectArray)(input);
|
|
11
|
+
const dataBeforeUpdate = await inventoryService.list({ id: input.map(({ id }) => id) }, {});
|
|
12
|
+
const updatedInventoryItems = await inventoryService.update(input);
|
|
13
|
+
return new workflows_sdk_1.StepResponse(updatedInventoryItems, {
|
|
14
|
+
dataBeforeUpdate,
|
|
15
|
+
selects,
|
|
16
|
+
relations,
|
|
17
|
+
});
|
|
18
|
+
}, async (revertInput, { container }) => {
|
|
19
|
+
if (!revertInput?.dataBeforeUpdate?.length) {
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
const { dataBeforeUpdate, selects, relations } = revertInput;
|
|
23
|
+
const inventoryService = container.resolve(modules_sdk_1.ModuleRegistrationName.INVENTORY);
|
|
24
|
+
await inventoryService.update(dataBeforeUpdate.map((data) => (0, utils_1.convertItemResponseToUpdateRequest)(data, selects, relations)));
|
|
25
|
+
});
|
|
@@ -17,4 +17,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
17
17
|
__exportStar(require("./delete-inventory-items"), exports);
|
|
18
18
|
__exportStar(require("./create-inventory-items"), exports);
|
|
19
19
|
__exportStar(require("./create-inventory-levels"), exports);
|
|
20
|
+
__exportStar(require("./update-inventory-items"), exports);
|
|
20
21
|
__exportStar(require("./delete-inventory-levels"), exports);
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { InventoryNext } from "@medusajs/types";
|
|
2
|
+
interface WorkflowInput {
|
|
3
|
+
updates: InventoryNext.UpdateInventoryItemInput[];
|
|
4
|
+
}
|
|
5
|
+
export declare const updateInventoryItemsWorkflowId = "update-inventory-items-workflow";
|
|
6
|
+
export declare const updateInventoryItemsWorkflow: import("@medusajs/workflows-sdk").ReturnWorkflow<WorkflowInput, InventoryNext.InventoryItemDTO[], Record<string, Function>>;
|
|
7
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.updateInventoryItemsWorkflow = exports.updateInventoryItemsWorkflowId = void 0;
|
|
4
|
+
const workflows_sdk_1 = require("@medusajs/workflows-sdk");
|
|
5
|
+
const steps_1 = require("../steps");
|
|
6
|
+
exports.updateInventoryItemsWorkflowId = "update-inventory-items-workflow";
|
|
7
|
+
exports.updateInventoryItemsWorkflow = (0, workflows_sdk_1.createWorkflow)(exports.updateInventoryItemsWorkflowId, (input) => {
|
|
8
|
+
return (0, steps_1.updateInventoryItemsStep)(input.updates);
|
|
9
|
+
});
|
|
@@ -6,14 +6,12 @@ const workflows_sdk_1 = require("@medusajs/workflows-sdk");
|
|
|
6
6
|
exports.deletePriceListsStepId = "delete-campaigns";
|
|
7
7
|
exports.deletePriceListsStep = (0, workflows_sdk_1.createStep)(exports.deletePriceListsStepId, async (ids, { container }) => {
|
|
8
8
|
const pricingModule = container.resolve(modules_sdk_1.ModuleRegistrationName.PRICING);
|
|
9
|
-
|
|
10
|
-
await pricingModule.deletePriceLists(ids);
|
|
9
|
+
await pricingModule.softDeletePriceLists(ids);
|
|
11
10
|
return new workflows_sdk_1.StepResponse(void 0, ids);
|
|
12
11
|
}, async (idsToRestore, { container }) => {
|
|
13
12
|
if (!idsToRestore?.length) {
|
|
14
13
|
return;
|
|
15
14
|
}
|
|
16
15
|
const pricingModule = container.resolve(modules_sdk_1.ModuleRegistrationName.PRICING);
|
|
17
|
-
|
|
18
|
-
// await pricingModule.restorePriceLists(idsToRestore)
|
|
16
|
+
await pricingModule.restorePriceLists(idsToRestore);
|
|
19
17
|
});
|
|
@@ -10,13 +10,12 @@ exports.removePriceListPricesStep = (0, workflows_sdk_1.createStep)(exports.remo
|
|
|
10
10
|
}
|
|
11
11
|
const pricingModule = container.resolve(modules_sdk_1.ModuleRegistrationName.PRICING);
|
|
12
12
|
const psmas = await pricingModule.listPriceSetMoneyAmounts({ id: ids }, { relations: ["price_list"] });
|
|
13
|
-
await pricingModule.
|
|
13
|
+
await pricingModule.softDeletePriceSetMoneyAmounts(psmas.map((psma) => psma.id));
|
|
14
14
|
return new workflows_sdk_1.StepResponse(null, psmas.map((psma) => psma.id));
|
|
15
15
|
}, async (ids, { container }) => {
|
|
16
|
-
if (!ids) {
|
|
16
|
+
if (!ids?.length) {
|
|
17
17
|
return;
|
|
18
18
|
}
|
|
19
19
|
const pricingModule = container.resolve(modules_sdk_1.ModuleRegistrationName.PRICING);
|
|
20
|
-
|
|
21
|
-
// pricingModule.restorePrices(ids)
|
|
20
|
+
await pricingModule.restorePriceSetMoneyAmounts(ids);
|
|
22
21
|
});
|
|
@@ -6,24 +6,20 @@ const utils_1 = require("@medusajs/utils");
|
|
|
6
6
|
const workflows_sdk_1 = require("@medusajs/workflows-sdk");
|
|
7
7
|
exports.removeVariantPricingLinkStepId = "remove-variant-pricing-link";
|
|
8
8
|
exports.removeVariantPricingLinkStep = (0, workflows_sdk_1.createStep)(exports.removeVariantPricingLinkStepId, async (data, { container }) => {
|
|
9
|
+
if (!data.variant_ids.length) {
|
|
10
|
+
return;
|
|
11
|
+
}
|
|
9
12
|
const remoteLink = container.resolve(utils_1.ContainerRegistrationKeys.REMOTE_LINK);
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
await remoteLink.delete(links.map((link) => link.id));
|
|
15
|
-
return new workflows_sdk_1.StepResponse(void 0, links);
|
|
13
|
+
await remoteLink.delete({
|
|
14
|
+
[modules_sdk_1.Modules.PRODUCT]: { variant_id: data.variant_ids },
|
|
15
|
+
});
|
|
16
|
+
return new workflows_sdk_1.StepResponse(void 0, data.variant_ids);
|
|
16
17
|
}, async (prevData, { container }) => {
|
|
17
18
|
if (!prevData?.length) {
|
|
18
19
|
return;
|
|
19
20
|
}
|
|
20
21
|
const remoteLink = container.resolve(utils_1.ContainerRegistrationKeys.REMOTE_LINK);
|
|
21
|
-
await remoteLink.
|
|
22
|
-
[modules_sdk_1.Modules.PRODUCT]: {
|
|
23
|
-
|
|
24
|
-
},
|
|
25
|
-
[modules_sdk_1.Modules.PRICING]: {
|
|
26
|
-
price_set_id: entry.price_set_id,
|
|
27
|
-
},
|
|
28
|
-
})));
|
|
22
|
+
await remoteLink.restore({
|
|
23
|
+
[modules_sdk_1.Modules.PRODUCT]: { variant_id: prevData },
|
|
24
|
+
});
|
|
29
25
|
});
|
|
@@ -4,5 +4,5 @@ type UpdateProductOptionsStepInput = {
|
|
|
4
4
|
update: ProductTypes.UpdateProductOptionDTO;
|
|
5
5
|
};
|
|
6
6
|
export declare const updateProductOptionsStepId = "update-product-options";
|
|
7
|
-
export declare const updateProductOptionsStep: import("@medusajs/workflows-sdk").StepFunction<UpdateProductOptionsStepInput,
|
|
7
|
+
export declare const updateProductOptionsStep: import("@medusajs/workflows-sdk").StepFunction<UpdateProductOptionsStepInput, ProductTypes.ProductOptionDTO[]>;
|
|
8
8
|
export {};
|
|
@@ -14,19 +14,12 @@ exports.updateProductOptionsStep = (0, workflows_sdk_1.createStep)(exports.updat
|
|
|
14
14
|
select: selects,
|
|
15
15
|
relations,
|
|
16
16
|
});
|
|
17
|
-
|
|
18
|
-
// const productOptions = await service.updateOptions(data.selector, data.update)
|
|
19
|
-
const productOptions = [];
|
|
17
|
+
const productOptions = await service.updateOptions(data.selector, data.update);
|
|
20
18
|
return new workflows_sdk_1.StepResponse(productOptions, prevData);
|
|
21
19
|
}, async (prevData, { container }) => {
|
|
22
20
|
if (!prevData?.length) {
|
|
23
21
|
return;
|
|
24
22
|
}
|
|
25
23
|
const service = container.resolve(modules_sdk_1.ModuleRegistrationName.PRODUCT);
|
|
26
|
-
|
|
27
|
-
// await service.upsertOptions(
|
|
28
|
-
// prevData.map((r) => ({
|
|
29
|
-
// ...r,
|
|
30
|
-
// }))
|
|
31
|
-
// )
|
|
24
|
+
await service.upsertOptions(prevData);
|
|
32
25
|
});
|
|
@@ -4,5 +4,5 @@ type UpdateProductVariantsStepInput = {
|
|
|
4
4
|
update: ProductTypes.UpdateProductVariantDTO;
|
|
5
5
|
};
|
|
6
6
|
export declare const updateProductVariantsStepId = "update-product-variants";
|
|
7
|
-
export declare const updateProductVariantsStep: import("@medusajs/workflows-sdk").StepFunction<UpdateProductVariantsStepInput,
|
|
7
|
+
export declare const updateProductVariantsStep: import("@medusajs/workflows-sdk").StepFunction<UpdateProductVariantsStepInput, ProductTypes.ProductVariantDTO[]>;
|
|
8
8
|
export {};
|
|
@@ -14,19 +14,12 @@ exports.updateProductVariantsStep = (0, workflows_sdk_1.createStep)(exports.upda
|
|
|
14
14
|
select: selects,
|
|
15
15
|
relations,
|
|
16
16
|
});
|
|
17
|
-
|
|
18
|
-
// const productVariants = await service.updateVariants(data.selector, data.update)
|
|
19
|
-
const productVariants = [];
|
|
17
|
+
const productVariants = await service.updateVariants(data.selector, data.update);
|
|
20
18
|
return new workflows_sdk_1.StepResponse(productVariants, prevData);
|
|
21
19
|
}, async (prevData, { container }) => {
|
|
22
20
|
if (!prevData?.length) {
|
|
23
21
|
return;
|
|
24
22
|
}
|
|
25
23
|
const service = container.resolve(modules_sdk_1.ModuleRegistrationName.PRODUCT);
|
|
26
|
-
|
|
27
|
-
// await service.upsertVariants(
|
|
28
|
-
// prevData.map((r) => ({
|
|
29
|
-
// ...r,
|
|
30
|
-
// }))
|
|
31
|
-
// )
|
|
24
|
+
await service.upsertVariants(prevData);
|
|
32
25
|
});
|
|
@@ -5,7 +5,6 @@ const workflows_sdk_1 = require("@medusajs/workflows-sdk");
|
|
|
5
5
|
const steps_1 = require("../steps");
|
|
6
6
|
exports.deleteProductVariantsWorkflowId = "delete-product-variants";
|
|
7
7
|
exports.deleteProductVariantsWorkflow = (0, workflows_sdk_1.createWorkflow)(exports.deleteProductVariantsWorkflowId, (input) => {
|
|
8
|
-
// Question: Should we also remove the price set manually, or would that be cascaded?
|
|
9
8
|
(0, steps_1.removeVariantPricingLinkStep)({ variant_ids: input.ids });
|
|
10
9
|
return (0, steps_1.deleteProductVariantsStep)(input.ids);
|
|
11
10
|
});
|
|
@@ -11,8 +11,6 @@ exports.deleteProductsWorkflow = (0, workflows_sdk_1.createWorkflow)(exports.del
|
|
|
11
11
|
.flatMap((product) => product.variants)
|
|
12
12
|
.map((variant) => variant.id);
|
|
13
13
|
});
|
|
14
|
-
// Question: Should we also remove the price set manually, or would that be cascaded?
|
|
15
|
-
// Question: Since we soft-delete the product, how do we restore the product with the prices and the links?
|
|
16
14
|
(0, steps_1.removeVariantPricingLinkStep)({ variant_ids: variantsToBeDeleted });
|
|
17
15
|
return (0, steps_1.deleteProductsStep)(input.ids);
|
|
18
16
|
});
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { CreateSalesChannelDTO } from "@medusajs/types";
|
|
2
|
+
interface StepInput {
|
|
3
|
+
data: CreateSalesChannelDTO;
|
|
4
|
+
}
|
|
5
|
+
export declare const createDefaultSalesChannelStepId = "create-default-sales-channel";
|
|
6
|
+
export declare const createDefaultSalesChannelStep: import("@medusajs/workflows-sdk").StepFunction<StepInput, import("@medusajs/types").SalesChannelDTO>;
|
|
7
|
+
export {};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createDefaultSalesChannelStep = exports.createDefaultSalesChannelStepId = void 0;
|
|
4
|
+
const modules_sdk_1 = require("@medusajs/modules-sdk");
|
|
5
|
+
const workflows_sdk_1 = require("@medusajs/workflows-sdk");
|
|
6
|
+
exports.createDefaultSalesChannelStepId = "create-default-sales-channel";
|
|
7
|
+
exports.createDefaultSalesChannelStep = (0, workflows_sdk_1.createStep)(exports.createDefaultSalesChannelStepId, async (input, { container }) => {
|
|
8
|
+
const salesChannelService = container.resolve(modules_sdk_1.ModuleRegistrationName.SALES_CHANNEL);
|
|
9
|
+
let shouldDelete = false;
|
|
10
|
+
let [salesChannel] = await salesChannelService.list({}, { take: 1 });
|
|
11
|
+
if (!salesChannel) {
|
|
12
|
+
salesChannel = await salesChannelService.create(input.data);
|
|
13
|
+
shouldDelete = true;
|
|
14
|
+
}
|
|
15
|
+
return new workflows_sdk_1.StepResponse(salesChannel, { id: salesChannel.id, shouldDelete });
|
|
16
|
+
}, async (data, { container }) => {
|
|
17
|
+
if (!data?.id || !data.shouldDelete) {
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
const service = container.resolve(modules_sdk_1.ModuleRegistrationName.SALES_CHANNEL);
|
|
21
|
+
await service.delete(data.id);
|
|
22
|
+
});
|
|
@@ -15,6 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./associate-products-with-channels"), exports);
|
|
18
|
+
__exportStar(require("./create-default-sales-channel"), exports);
|
|
18
19
|
__exportStar(require("./create-sales-channels"), exports);
|
|
19
20
|
__exportStar(require("./delete-sales-channels"), exports);
|
|
20
21
|
__exportStar(require("./update-sales-channels"), exports);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@medusajs/core-flows",
|
|
3
|
-
"version": "0.0
|
|
3
|
+
"version": "0.1.0-next-20240321130526",
|
|
4
4
|
"description": "Set of workflow definitions for Medusa",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
"author": "Medusa",
|
|
22
22
|
"license": "MIT",
|
|
23
23
|
"devDependencies": {
|
|
24
|
-
"@medusajs/types": "
|
|
24
|
+
"@medusajs/types": "1.12.0-next-20240321130526",
|
|
25
25
|
"cross-env": "^5.2.1",
|
|
26
26
|
"jest": "^29.6.3",
|
|
27
27
|
"rimraf": "^5.0.1",
|
|
@@ -29,10 +29,10 @@
|
|
|
29
29
|
"typescript": "^5.1.6"
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@medusajs/modules-sdk": "
|
|
33
|
-
"@medusajs/orchestration": "
|
|
34
|
-
"@medusajs/utils": "
|
|
35
|
-
"@medusajs/workflows-sdk": "
|
|
32
|
+
"@medusajs/modules-sdk": "1.12.10-next-20240321130526",
|
|
33
|
+
"@medusajs/orchestration": "0.5.6-next-20240321130526",
|
|
34
|
+
"@medusajs/utils": "1.11.8-next-20240321130526",
|
|
35
|
+
"@medusajs/workflows-sdk": "0.1.5-next-20240321130526",
|
|
36
36
|
"awilix": "^8.0.1",
|
|
37
37
|
"ulid": "^2.3.0"
|
|
38
38
|
},
|