UNPKG

strict-tslint-config

Version:

An opinionated TSLint configuration preset. Works best together with strict TypeScript settings and Prettier.

29 lines (28 loc) 1.03 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const common_tags_1 = require("common-tags"); const json_diff_1 = require("json-diff"); const colorize_1 = require("json-diff/lib/colorize"); function renderRuleDiff(ruleName, currentRules, nextRules) { const diff = json_diff_1.diff({ [ruleName]: currentRules[ruleName] }, { [ruleName]: nextRules[ruleName] }); if (!diff) { return; } return common_tags_1.codeBlock ` \`\`\`diff ${colorize_1.colorize(diff, { color: false }).trim()} \`\`\` `; } function renderRule(ruleName, currentRules, nextRules, rationales = []) { const diff = renderRuleDiff(ruleName, currentRules, nextRules); if (!diff) { return; } const link = `[${ruleName}](https://palantir.github.io/tslint/rules/${ruleName}/)`; const body = rationales ? rationales.map(rationale => `- ${rationale}`).join('\n') : ''; return `#### ${link}\n\n${body && `${body}\n\n`}${diff}`; } exports.renderRule = renderRule;