@email-service/email-service
Version:
email-service is a versatile npm package designed to simplify the integration and standardization of email communications across multiple Email Service Providers (ESPs).
35 lines (34 loc) • 1.62 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.EmailServiceSelector = exports.getEmailService = void 0;
exports.getWebHook = getWebHook;
const emailServiceSelector_js_1 = require("./models/emailServiceSelector.js");
async function getWebHook(userAgent, req, logger = false) {
const data = await (0, emailServiceSelector_js_1.getWebHook)(userAgent, req, logger);
if (!data.success) {
// Narrowing explicite via Extract : le tsconfig n'est pas en strict mode,
// ce qui empêche la discrimination automatique de l'union WebHookResponse.
const errorBranch = data;
return { success: false, status: errorBranch.status, error: errorBranch.error };
}
return {
success: true,
status: data.status,
data: {
webHookType: data.data.webHookType,
to: data.data.to,
from: data.data.from,
subject: data.data.subject,
metaData: data.data.metaData,
dump: data.data.dump,
espMessageId: data.data.messageId,
espRecordType: data.espData.espRecordType,
espType: data.espData.espType
},
espData: data.espData
};
}
// src/index.ts
const emailServiceSelector_js_2 = require("./models/emailServiceSelector.js");
Object.defineProperty(exports, "getEmailService", { enumerable: true, get: function () { return emailServiceSelector_js_2.getEmailService; } });
Object.defineProperty(exports, "EmailServiceSelector", { enumerable: true, get: function () { return emailServiceSelector_js_2.EmailServiceSelector; } });