UNPKG

@medusajs/core-flows

Version:

Set of workflow definitions for Medusa

39 lines 1.55 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.addOrderTransactionStep = exports.addOrderTransactionStepId = void 0; const utils_1 = require("@medusajs/framework/utils"); const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk"); exports.addOrderTransactionStepId = "add-order-transaction"; /** * This step creates order transactions. */ exports.addOrderTransactionStep = (0, workflows_sdk_1.createStep)(exports.addOrderTransactionStepId, async (data, { container }) => { const service = container.resolve(utils_1.Modules.ORDER); const trxsData = Array.isArray(data) ? data : [data]; if (!trxsData.length) { return new workflows_sdk_1.StepResponse(null); } for (const trx of trxsData) { const existing = await service.listOrderTransactions({ order_id: trx.order_id, reference: trx.reference, reference_id: trx.reference_id, }, { select: ["id"], }); if (existing.length) { return new workflows_sdk_1.StepResponse(null); } } const created = await service.addOrderTransactions(trxsData); return new workflows_sdk_1.StepResponse((Array.isArray(data) ? created : created[0]), created.map((c) => c.id)); }, async (id, { container }) => { if (!id?.length) { return; } const service = container.resolve(utils_1.Modules.ORDER); await service.deleteOrderTransactions(id); }); //# sourceMappingURL=add-order-transaction.js.map