UNPKG

danger

Version:
63 lines 4.07 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.inlineTemplate = exports.template = exports.dangerSignaturePostfix = exports.fileLineToString = exports.dangerIDToString = exports.messageForResultWithIssues = exports.dangerSignature = void 0; var DangerUtils_1 = require("../DangerUtils"); // BitBucket Cloud supports these emojis 🎉 var noEntryEmoji = ":x:"; var warningEmoji = ":warning:"; var messageEmoji = ":sparkles:"; var signatureEmoji = ":no_entry_sign:"; var successEmoji = ":tada:"; var dangerSignature = function (results) { var meta = results.meta || { runtimeName: "dangerJS", runtimeHref: "https://danger.systems/js" }; return "Generated by ".concat(signatureEmoji, " [").concat(meta.runtimeName, "](").concat(meta.runtimeHref, ")"); }; exports.dangerSignature = dangerSignature; exports.messageForResultWithIssues = "".concat(warningEmoji, " Danger found some issues. Don't worry, everything is fixable."); var dangerIDToString = function (id) { return "danger-id-".concat(id, ";"); }; exports.dangerIDToString = dangerIDToString; var fileLineToString = function (file, line) { return " File: ".concat(file, ";Line: ").concat(line, ";"); }; exports.fileLineToString = fileLineToString; /** * Postfix signature to be attached comment generated / updated by danger. */ var dangerSignaturePostfix = function (results, commitID) { var signature = (0, exports.dangerSignature)(results); if (commitID !== undefined) { signature = "".concat(signature, " against ").concat(commitID); } return "\n\n ".concat(signature, "\n "); }; exports.dangerSignaturePostfix = dangerSignaturePostfix; function buildMarkdownTable(header, defaultEmoji, violations) { if (violations.length === 0 || violations.every(function (violation) { return !violation.message; })) { return ""; } return "\n\n | ".concat(violations.length, " ").concat(header, " |\n | --- |\n").concat(violations.map(function (v) { return " | ".concat(v.icon || defaultEmoji, " - ").concat(v.message, " |"); }).join("\n"), "\n\n "); } /** * A template function for creating a GitHub issue comment from Danger Results * @param {string} dangerID A string that represents a unique build * @param {string} commitID The hash that represents the latest commit * @param {DangerResults} results Data to work with * @returns {string} HTML */ function template(dangerID, results, commitID) { var summaryMessage; if (!results.fails.length && !results.warnings.length) { summaryMessage = "".concat(successEmoji, " All green. ").concat((0, DangerUtils_1.compliment)()); } else { summaryMessage = exports.messageForResultWithIssues; } return "\n ".concat(summaryMessage, "\n\n ").concat(buildMarkdownTable("Fails", noEntryEmoji, results.fails), "\n ").concat(buildMarkdownTable("Warnings", warningEmoji, results.warnings), "\n ").concat(buildMarkdownTable("Messages", messageEmoji, results.messages), "\n\n ").concat(results.markdowns.map(function (v) { return v.message; }).join("\n\n"), "\n\n ").concat((0, exports.dangerSignaturePostfix)(results, commitID), "\n\n [](http://").concat((0, exports.dangerIDToString)(dangerID), ")\n "); } exports.template = template; function inlineTemplate(dangerID, results, file, line) { var printViolation = function (defaultEmoji) { return function (violation) { return "- ".concat(violation.icon || defaultEmoji, " ").concat(violation.message); }; }; return "\n[//]: # (".concat((0, exports.dangerIDToString)(dangerID), ")\n[//]: # (").concat((0, exports.fileLineToString)(file, line), ")\n").concat(results.fails.map(printViolation(noEntryEmoji)).join("\n"), "\n").concat(results.warnings.map(printViolation(warningEmoji)).join("\n"), "\n").concat(results.messages.map(printViolation(messageEmoji)).join("\n"), "\n").concat(results.markdowns.map(function (v) { return v.message; }).join("\n\n"), "\n "); } exports.inlineTemplate = inlineTemplate; //# sourceMappingURL=bitbucketCloudTemplate.js.map