@icapps/tree-house-communication
Version:
Tree House communication module
44 lines (43 loc) • 1.28 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.mapTemplateEmail = void 0;
const _ = require("lodash");
function mapTemplateEmail(mailInfo) {
return {
template_name: mailInfo.templateName,
template_content: mailInfo.templateContent || [],
message: {
from_email: _.isString(mailInfo.from) ? mailInfo.from : mailInfo.from.email,
subject: mailInfo.subject,
to: mailInfo.to.map(mapRecipient),
merge_vars: mailInfo.to.map(mapMergeVars),
global_merge_vars: mailInfo.globalContent ? mailInfo.globalContent.map(mapMergeVar) : [],
},
};
}
exports.mapTemplateEmail = mapTemplateEmail;
const mapMergeVars = (recipient) => {
if (_.isString(recipient)) {
return;
}
const vars = recipient.content ? recipient.content.map(mapMergeVar) : [];
return {
vars,
rcpt: recipient.email,
};
};
const mapMergeVar = (value) => {
return { name: value.name, content: value.value };
};
const mapRecipient = (recipient) => {
if (_.isString(recipient)) {
return {
email: recipient,
type: 'to',
};
}
return {
email: recipient.email,
type: 'to',
};
};