// ╔═══════╗╔═══════╗╔═══════╗╔═══════╗╔═╗ ╔═══════╗╔═══════╗╔═══════╗ ╔═══════╗╔═══════╗╔════╗╔═╗╔═══════╗╔═══════╗╔═══════╗ ╔═══════╗╔═══════╗ // ╚══╗ ╔══╝║ ╔═════╝║ ╔╗ ╔╗ ║║ ╔═══╗ ║║ ║ ║ ╔═══╗ ║╚══╗ ╔══╝║ ╔═════╝ ║ ╔═════╝║ ╔═════╝║ ╔╗ ║║ ║╚╗ ╔══╗ ║║ ╔═════╝║ ╔═══╗ ║ ╚══╗ ╔══╝║ ╔═════╝ // ║ ║ ║ ╚═════╗║ ║║ ║║ ║║ ╚═══╝ ║║ ║ ║ ╚═══╝ ║ ║ ║ ║ ╚═════╗╔═══════╗║ ╚═════╗║ ╚═════╗║ ║║ ║║ ║ ║ ║ ║ ║║ ╚═════╗║ ╚═══╝ ║ ║ ║ ║ ╚═════╗ // ║ ║ ║ ╔═════╝║ ║║ ║║ ║║ ╔═════╝║ ║ ║ ╔═══╗ ║ ║ ║ ║ ╔═════╝╚═══════╝╚═════╗ ║║ ╔═════╝║ ║║ ║║ ║ ║ ║ ║ ║║ ╔═════╝║ ╔═╗ ╔═╝ ║ ║ ╚═════╗ ║ // ║ ║ ║ ╚═════╗║ ║║ ║║ ║║ ║ ║ ╚═════╗║ ║ ║ ║ ║ ║ ║ ╚═════╗ ╔═════╝ ║║ ╚═════╗║ ║║ ╚╝ ║╔╝ ╚══╝ ║║ ╚═════╗║ ║ ║ ╚═╗╔═╗ ║ ║ ╔═════╝ ║ // ╚═╝ ╚═══════╝╚═╝╚═╝╚═╝╚═╝ ╚═══════╝╚═╝ ╚═╝ ╚═╝ ╚═══════╝ ╚═══════╝╚═══════╝╚═╝╚════╝╚═══════╝╚═══════╝╚═╝ ╚═══╝╚═╝ ╚═╝ ╚═══════╝ // ╔═══════╗╔═══════╗╔═══════╗╔═══════╗╔═══════╗╔═══════╗╔═══════╗ // ╚══╗ ╔══╝║ ╔╗ ╔╗ ║║ ╔═══╗ ║║ ╔═══╗ ║║ ╔═══╗ ║╚══╗ ╔══╝║ ╔═════╝ // ║ ║ ║ ║║ ║║ ║║ ╚═══╝ ║║ ║ ║ ║║ ╚═══╝ ║ ║ ║ ║ ╚═════╗ // ║ ║ ║ ║║ ║║ ║║ ╔═════╝║ ║ ║ ║║ ╔═╗ ╔═╝ ║ ║ ╚═════╗ ║ // ╔══╝ ╚══╗║ ║║ ║║ ║║ ║ ║ ╚═══╝ ║║ ║ ║ ╚═╗ ║ ║ ╔═════╝ ║ // ╚═══════╝╚═╝╚═╝╚═╝╚═╝ ╚═══════╝╚═╝ ╚═══╝ ╚═╝ ╚═══════╝ import * as messageManagers from '../../../managers/message-managers.js'; import * as messageTypings from '../../../typings/message-typings.js'; import * as templateEngine from '../../../../template-engine/template-engine.js'; // ╔═══════╗╔═══════╗╔════╗╔═╗╔═══════╗ // ║ ╔═════╝║ ╔═════╝║ ╔╗ ║║ ║╚╗ ╔══╗ ║ // ║ ╚═════╗║ ╚═════╗║ ║║ ║║ ║ ║ ║ ║ ║ // ╚═════╗ ║║ ╔═════╝║ ║║ ║║ ║ ║ ║ ║ ║ // ╔═════╝ ║║ ╚═════╗║ ║║ ╚╝ ║╔╝ ╚══╝ ║ // ╚═══════╝╚═══════╝╚═╝╚════╝╚═══════╝ export async function sendTemplateMessage(parameters: messageTypings.SendTemplateMessageParameters) { const {template, variables = {}} = parameters; templateEngine.validateTemplateName(template); templateEngine.validateTemplateVariables(variables); return await messageManagers.sendMessage({ 'h:X-Mailgun-Variables': JSON.stringify({...variables}), ...parameters, }); }