UNPKG

semantic-release-discord-bot

Version:

A discord bot for semantic-release library notifying release statuses

47 lines (46 loc) 1.82 kB
"use strict"; var __assign = (this && this.__assign) || function () { __assign = Object.assign || function(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } return t; }; return __assign.apply(this, arguments); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.renderMessage = void 0; var is_message_1 = require("../helpers/is-message"); var lodash_1 = require("lodash"); var path_1 = require("path"); var nunjucks = require("nunjucks"); var telegramifyMarkdown = require("telegramify-markdown"); function renderMessage(message, context) { var _a; if (context === void 0) { context = {}; } if ((0, is_message_1.isMessage)(message)) { console.info('Discord notification renderMessage isMessage', message, context); var templated = (0, lodash_1.template)(message.message)(__assign(__assign({}, context), message.customData)); return { message: telegramifyMarkdown(templated).trim(), format: (_a = message.format) !== null && _a !== void 0 ? _a : 'markdown' }; } else { console.info('Discord notification renderMessage not isMessage', message, context); return { message: renderFromTemplate(message, __assign(__assign({}, context), message.customData)), format: (0, path_1.extname)(message.path) === '.html' ? 'html' : 'markdown' }; } } exports.renderMessage = renderMessage; function renderFromTemplate(template, context) { nunjucks.configure(process.cwd(), { autoescape: false, trimBlocks: true, }); return nunjucks.render(template.path, context).trim(); }