UNPKG

commitiquette

Version:

Plugin for commitizen to use commitLint config

76 lines (75 loc) 2.52 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.maxLengthTransformerFactory = exports.valueFromRule = exports.wordCase = exports.assertNever = exports.getLongest = exports.pipeWith = void 0; var types_1 = require("@commitlint/types"); var change_case_1 = require("change-case"); var chalk_1 = require("chalk"); function pipeWith(arg) { var fns = []; for (var _i = 1; _i < arguments.length; _i++) { fns[_i - 1] = arguments[_i]; } return fns.reduce(function (v, f) { return f(v); }, arg); } exports.pipeWith = pipeWith; function getLongest(array) { return array.reduce(function (x, y) { return (x.length > y.length ? x : y); }).length; } exports.getLongest = getLongest; /* istanbul ignore next */ function assertNever(x) { throw new Error('Unexpected object ' + x); } exports.assertNever = assertNever; function wordCase(value, rule) { switch (rule) { case 'lower-case': case 'lowerCase': case 'lowercase': return value.toLowerCase(); case 'snake-case': return (0, change_case_1.snakeCase)(value); case 'pascal-case': return (0, change_case_1.pascalCase)(value); case 'sentence-case': case 'sentencecase': return (0, change_case_1.sentenceCase)(value); case 'start-case': return (0, change_case_1.capitalCase)(value); case 'kebab-case': return (0, change_case_1.paramCase)(value); case 'upper-case': case 'uppercase': return value.toUpperCase(); case 'camel-case': return (0, change_case_1.camelCase)(value); /* istanbul ignore next */ default: return assertNever(rule); } } exports.wordCase = wordCase; function valueFromRule(rule) { if (rule == null) { return undefined; } var level = rule[0], applicable = rule[1], value = rule[2]; if (level === types_1.RuleConfigSeverity.Disabled) { return undefined; } if (applicable === 'never') { return undefined; } return value; } exports.valueFromRule = valueFromRule; function maxLengthTransformerFactory(maxLength) { return function (value) { if (maxLength) { var color = value.length <= maxLength ? chalk_1.green : chalk_1.red; return color("(" + value.length + ") " + value); } return value; }; } exports.maxLengthTransformerFactory = maxLengthTransformerFactory;