@medusajs/core-flows
Version:
Set of workflow definitions for Medusa
34 lines • 1.25 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.uploadFilesStep = exports.uploadFilesStepId = void 0;
const utils_1 = require("@medusajs/framework/utils");
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
exports.uploadFilesStepId = "upload-files";
/**
* This step uploads one or more files using the installed
* [File Module Provider](https://docs.medusajs.com/resources/infrastructure-modules/file).
*
* @example
* const data = uploadFilesStep({
* files: [
* {
* filename: "test.jpg",
* mimeType: "img/jpg",
* content: "binary-string",
* access: "public"
* }
* ]
* })
*/
exports.uploadFilesStep = (0, workflows_sdk_1.createStep)(exports.uploadFilesStepId, async (data, { container }) => {
const service = container.resolve(utils_1.Modules.FILE);
const created = await service.createFiles(data.files);
return new workflows_sdk_1.StepResponse(created, created.map((file) => file.id));
}, async (createdIds, { container }) => {
if (!createdIds?.length) {
return;
}
const service = container.resolve(utils_1.Modules.FILE);
await service.deleteFiles(createdIds);
});
//# sourceMappingURL=upload-files.js.map
;