UNPKG

@tsc_tech/medusa-plugin-notification-template

Version:
43 lines 4.22 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.getTemplateBodyStep = void 0; const utils_1 = require("@medusajs/framework/utils"); const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk"); const handlebars_1 = __importDefault(require("handlebars")); exports.getTemplateBodyStep = (0, workflows_sdk_1.createStep)("get-template-body-step", async (input, { container }) => { const cacheModuleService = container.resolve(utils_1.Modules.CACHE); const extraData = await cacheModuleService.get("extraData"); const { entityData, notificationTemplate, data } = input; if (!entityData.length) { console.warn(`No entity data found for ID: ${data.id}`); return new workflows_sdk_1.StepResponse(); } if (!notificationTemplate) { console.warn(`No notification template found for this event`); return new workflows_sdk_1.StepResponse(); } const entityDetails = { ...(entityData[0] && { ...entityData[0] }), ...(extraData && { ...extraData }), }; const compileAndParseEmails = (template) => { if (!template) return []; return handlebars_1.default.compile(template)(entityDetails) .split(",") .map((email) => email.trim()) .filter((email) => email); }; const templateBody = { emailBody: handlebars_1.default.compile(notificationTemplate?.template)(entityDetails), to: compileAndParseEmails(notificationTemplate?.to), cc: compileAndParseEmails(notificationTemplate?.cc), bcc: compileAndParseEmails(notificationTemplate?.bcc), subject: handlebars_1.default.compile(notificationTemplate?.subject)(entityDetails), }; return new workflows_sdk_1.StepResponse({ templateBody, entityDetails }); }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXRlbXBsYXRlLWJvZHktc3RlcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3Mvc3RlcHMvZ2V0LXRlbXBsYXRlLWJvZHktc3RlcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxxREFBb0Q7QUFDcEQscUVBQTZFO0FBQzdFLDREQUFvQztBQWtCdkIsUUFBQSxtQkFBbUIsR0FBRyxJQUFBLDBCQUFVLEVBQzNDLHdCQUF3QixFQUN4QixLQUFLLEVBQ0gsS0FBb0IsRUFDcEIsRUFBRSxTQUFTLEVBQUUsRUFZYixFQUFFO0lBQ0YsTUFBTSxrQkFBa0IsR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDLGVBQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1RCxNQUFNLFNBQVMsR0FBK0IsTUFBTSxrQkFBa0IsQ0FBQyxHQUFHLENBQ3hFLFdBQVcsQ0FDWixDQUFDO0lBQ0YsTUFBTSxFQUFFLFVBQVUsRUFBRSxvQkFBb0IsRUFBRSxJQUFJLEVBQUUsR0FBRyxLQUFLLENBQUM7SUFDekQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUN2QixPQUFPLENBQUMsSUFBSSxDQUFDLGdDQUFnQyxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUN4RCxPQUFPLElBQUksNEJBQVksRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFDRCxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUMxQixPQUFPLENBQUMsSUFBSSxDQUFDLCtDQUErQyxDQUFDLENBQUM7UUFDOUQsT0FBTyxJQUFJLDRCQUFZLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQsTUFBTSxhQUFhLEdBQUc7UUFDcEIsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDMUMsR0FBRyxDQUFDLFNBQVMsSUFBSSxFQUFFLEdBQUcsU0FBUyxFQUFFLENBQUM7S0FDbkMsQ0FBQztJQUVGLE1BQU0scUJBQXFCLEdBQUcsQ0FBQyxRQUFpQixFQUFZLEVBQUU7UUFDNUQsSUFBSSxDQUFDLFFBQVE7WUFBRSxPQUFPLEVBQUUsQ0FBQztRQUN6QixPQUFPLG9CQUFVLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLGFBQWEsQ0FBQzthQUMvQyxLQUFLLENBQUMsR0FBRyxDQUFDO2FBQ1YsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7YUFDNUIsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QixDQUFDLENBQUM7SUFFRixNQUFNLFlBQVksR0FBRztRQUNuQixTQUFTLEVBQUUsb0JBQVUsQ0FBQyxPQUFPLENBQUMsb0JBQW9CLEVBQUUsUUFBUSxDQUFDLENBQzNELGFBQWEsQ0FDZDtRQUNELEVBQUUsRUFBRSxxQkFBcUIsQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLENBQUM7UUFDbkQsRUFBRSxFQUFFLHFCQUFxQixDQUFDLG9CQUFvQixFQUFFLEVBQUUsQ0FBQztRQUNuRCxHQUFHLEVBQUUscUJBQXFCLENBQUMsb0JBQW9CLEVBQUUsR0FBRyxDQUFDO1FBQ3JELE9BQU8sRUFBRSxvQkFBVSxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsRUFBRSxPQUFPLENBQUMsQ0FBQyxhQUFhLENBQUM7S0FDMUUsQ0FBQztJQUNGLE9BQU8sSUFBSSw0QkFBWSxDQUFDLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxDQUFDLENBQUM7QUFDM0QsQ0FBQyxDQUNGLENBQUMifQ==