1 | ;
|
2 | var __importDefault = (this && this.__importDefault) || function (mod) {
|
3 | return (mod && mod.__esModule) ? mod : { "default": mod };
|
4 | };
|
5 | Object.defineProperty(exports, "__esModule", { value: true });
|
6 | const indent_string_1 = __importDefault(require("indent-string"));
|
7 | const CONCATENATED_VALUES_SEPARATOR = ', ';
|
8 | function rtrim(str) {
|
9 | return str.replace(/\s+$/, '');
|
10 | }
|
11 | function removeTTYColors(str) {
|
12 | return str.replace(/\033\[[0-9;]*m/g, '');
|
13 | }
|
14 | exports.removeTTYColors = removeTTYColors;
|
15 | function wordWrap(str, indent, width) {
|
16 | let curStr = '';
|
17 | let wrappedMsg = '';
|
18 | if (removeTTYColors(str).length <= width - indent)
|
19 | return indent_string_1.default(str, ' ', indent);
|
20 | str = str.replace(/(\r\n)/gm, '\n')
|
21 | .split(/(\S+[ \t]+)|(\S+(?:\n))|(\n)/m)
|
22 | //NOTE: cut empty elements
|
23 | .filter(elm => !!elm);
|
24 | str.forEach(word => {
|
25 | const newStr = curStr + word;
|
26 | if (removeTTYColors(newStr).length > width - indent) {
|
27 | wrappedMsg += `${rtrim(curStr)}\n`;
|
28 | curStr = word;
|
29 | }
|
30 | else {
|
31 | if (curStr[curStr.length - 1] === '\n') {
|
32 | wrappedMsg += `${rtrim(curStr)}\n`;
|
33 | curStr = '';
|
34 | }
|
35 | curStr += word;
|
36 | }
|
37 | });
|
38 | return indent_string_1.default(wrappedMsg + curStr, ' ', indent);
|
39 | }
|
40 | exports.wordWrap = wordWrap;
|
41 | function splitQuotedText(str, splitChar, quotes = '"\'') {
|
42 | let currentPart = '';
|
43 | const parts = [];
|
44 | let quoteChar = null;
|
45 | for (let i = 0; i < str.length; i++) {
|
46 | const currentChar = str[i];
|
47 | if (currentChar === splitChar) {
|
48 | if (quoteChar)
|
49 | currentPart += currentChar;
|
50 | else {
|
51 | parts.push(currentPart);
|
52 | currentPart = '';
|
53 | }
|
54 | }
|
55 | else if (quotes.indexOf(currentChar) > -1) {
|
56 | if (quoteChar === currentChar)
|
57 | quoteChar = null;
|
58 | else if (!quoteChar)
|
59 | quoteChar = currentChar;
|
60 | else
|
61 | currentPart += currentChar;
|
62 | }
|
63 | else
|
64 | currentPart += currentChar;
|
65 | }
|
66 | if (currentPart)
|
67 | parts.push(currentPart);
|
68 | return parts;
|
69 | }
|
70 | exports.splitQuotedText = splitQuotedText;
|
71 | function getPluralSuffix(array) {
|
72 | return array.length > 1 ? 's' : '';
|
73 | }
|
74 | exports.getPluralSuffix = getPluralSuffix;
|
75 | function getConcatenatedValuesString(array, separator) {
|
76 | separator = separator || CONCATENATED_VALUES_SEPARATOR;
|
77 | return array.map(item => `"${item}"`).join(separator);
|
78 | }
|
79 | exports.getConcatenatedValuesString = getConcatenatedValuesString;
|
80 | function getToBeInPastTense(array) {
|
81 | return array.length > 1 ? 'were' : 'was';
|
82 | }
|
83 | exports.getToBeInPastTense = getToBeInPastTense;
|
84 | //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL3N0cmluZy5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGtFQUF5QztBQUV6QyxNQUFNLDZCQUE2QixHQUFHLElBQUksQ0FBQztBQUUzQyxTQUFTLEtBQUssQ0FBRSxHQUFHO0lBQ2YsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztBQUNuQyxDQUFDO0FBRUQsU0FBZ0IsZUFBZSxDQUFFLEdBQUc7SUFDaEMsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLGlCQUFpQixFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQzlDLENBQUM7QUFGRCwwQ0FFQztBQUVELFNBQWdCLFFBQVEsQ0FBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLEtBQUs7SUFDeEMsSUFBSSxNQUFNLEdBQU8sRUFBRSxDQUFDO0lBQ3BCLElBQUksVUFBVSxHQUFHLEVBQUUsQ0FBQztJQUVwQixJQUFJLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLElBQUksS0FBSyxHQUFHLE1BQU07UUFDN0MsT0FBTyx1QkFBWSxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFFMUMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQztTQUM5QixLQUFLLENBQUMsK0JBQStCLENBQUM7UUFDdkMsMEJBQTBCO1NBQ3pCLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUUxQixHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1FBQ2YsTUFBTSxNQUFNLEdBQUcsTUFBTSxHQUFHLElBQUksQ0FBQztRQUU3QixJQUFJLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEdBQUcsS0FBSyxHQUFHLE1BQU0sRUFBRTtZQUNqRCxVQUFVLElBQUksR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztZQUNuQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1NBQ2pCO2FBQ0k7WUFDRCxJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRTtnQkFDcEMsVUFBVSxJQUFJLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7Z0JBQ25DLE1BQU0sR0FBRyxFQUFFLENBQUM7YUFDZjtZQUVELE1BQU0sSUFBSSxJQUFJLENBQUM7U0FDbEI7SUFDTCxDQUFDLENBQUMsQ0FBQztJQUVILE9BQU8sdUJBQVksQ0FBQyxVQUFVLEdBQUcsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztBQUMxRCxDQUFDO0FBOUJELDRCQThCQztBQUVELFNBQWdCLGVBQWUsQ0FBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sR0FBRyxLQUFLO0lBQzNELElBQUksV0FBVyxHQUFHLEVBQUUsQ0FBQztJQUNyQixNQUFNLEtBQUssR0FBUyxFQUFFLENBQUM7SUFDdkIsSUFBSSxTQUFTLEdBQUssSUFBSSxDQUFDO0lBRXZCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1FBQ2pDLE1BQU0sV0FBVyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUUzQixJQUFJLFdBQVcsS0FBSyxTQUFTLEVBQUU7WUFDM0IsSUFBSSxTQUFTO2dCQUNULFdBQVcsSUFBSSxXQUFXLENBQUM7aUJBQzFCO2dCQUNELEtBQUssQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7Z0JBQ3hCLFdBQVcsR0FBRyxFQUFFLENBQUM7YUFDcEI7U0FDSjthQUNJLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRTtZQUN2QyxJQUFJLFNBQVMsS0FBSyxXQUFXO2dCQUN6QixTQUFTLEdBQUcsSUFBSSxDQUFDO2lCQUNoQixJQUFJLENBQUMsU0FBUztnQkFDZixTQUFTLEdBQUcsV0FBVyxDQUFDOztnQkFFeEIsV0FBVyxJQUFJLFdBQVcsQ0FBQztTQUNsQzs7WUFFRyxXQUFXLElBQUksV0FBVyxDQUFDO0tBQ2xDO0lBRUQsSUFBSSxXQUFXO1FBQ1gsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUU1QixPQUFPLEtBQUssQ0FBQztBQUNqQixDQUFDO0FBaENELDBDQWdDQztBQUVELFNBQWdCLGVBQWUsQ0FBRSxLQUFLO0lBQ2xDLE9BQU8sS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0FBQ3ZDLENBQUM7QUFGRCwwQ0FFQztBQUVELFNBQWdCLDJCQUEyQixDQUFFLEtBQUssRUFBRSxTQUFTO0lBQ3pELFNBQVMsR0FBRyxTQUFTLElBQUksNkJBQTZCLENBQUM7SUFFdkQsT0FBTyxLQUFLLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxJQUFJLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUMxRCxDQUFDO0FBSkQsa0VBSUM7QUFFRCxTQUFnQixrQkFBa0IsQ0FBRSxLQUFLO0lBQ3JDLE9BQU8sS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0FBQzdDLENBQUM7QUFGRCxnREFFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBpbmRlbnRTdHJpbmcgZnJvbSAnaW5kZW50LXN0cmluZyc7XG5cbmNvbnN0IENPTkNBVEVOQVRFRF9WQUxVRVNfU0VQQVJBVE9SID0gJywgJztcblxuZnVuY3Rpb24gcnRyaW0gKHN0cikge1xuICAgIHJldHVybiBzdHIucmVwbGFjZSgvXFxzKyQvLCAnJyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZW1vdmVUVFlDb2xvcnMgKHN0cikge1xuICAgIHJldHVybiBzdHIucmVwbGFjZSgvXFwwMzNcXFtbMC05O10qbS9nLCAnJyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB3b3JkV3JhcCAoc3RyLCBpbmRlbnQsIHdpZHRoKSB7XG4gICAgbGV0IGN1clN0ciAgICAgPSAnJztcbiAgICBsZXQgd3JhcHBlZE1zZyA9ICcnO1xuXG4gICAgaWYgKHJlbW92ZVRUWUNvbG9ycyhzdHIpLmxlbmd0aCA8PSB3aWR0aCAtIGluZGVudClcbiAgICAgICAgcmV0dXJuIGluZGVudFN0cmluZyhzdHIsICcgJywgaW5kZW50KTtcblxuICAgIHN0ciA9IHN0ci5yZXBsYWNlKC8oXFxyXFxuKS9nbSwgJ1xcbicpXG4gICAgICAgIC5zcGxpdCgvKFxcUytbIFxcdF0rKXwoXFxTKyg/OlxcbikpfChcXG4pL20pXG4gICAgICAgIC8vTk9URTogY3V0IGVtcHR5IGVsZW1lbnRzXG4gICAgICAgIC5maWx0ZXIoZWxtID0+ICEhZWxtKTtcblxuICAgIHN0ci5mb3JFYWNoKHdvcmQgPT4ge1xuICAgICAgICBjb25zdCBuZXdTdHIgPSBjdXJTdHIgKyB3b3JkO1xuXG4gICAgICAgIGlmIChyZW1vdmVUVFlDb2xvcnMobmV3U3RyKS5sZW5ndGggPiB3aWR0aCAtIGluZGVudCkge1xuICAgICAgICAgICAgd3JhcHBlZE1zZyArPSBgJHtydHJpbShjdXJTdHIpfVxcbmA7XG4gICAgICAgICAgICBjdXJTdHIgPSB3b3JkO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgaWYgKGN1clN0cltjdXJTdHIubGVuZ3RoIC0gMV0gPT09ICdcXG4nKSB7XG4gICAgICAgICAgICAgICAgd3JhcHBlZE1zZyArPSBgJHtydHJpbShjdXJTdHIpfVxcbmA7XG4gICAgICAgICAgICAgICAgY3VyU3RyID0gJyc7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGN1clN0ciArPSB3b3JkO1xuICAgICAgICB9XG4gICAgfSk7XG5cbiAgICByZXR1cm4gaW5kZW50U3RyaW5nKHdyYXBwZWRNc2cgKyBjdXJTdHIsICcgJywgaW5kZW50KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNwbGl0UXVvdGVkVGV4dCAoc3RyLCBzcGxpdENoYXIsIHF1b3RlcyA9ICdcIlxcJycpIHtcbiAgICBsZXQgY3VycmVudFBhcnQgPSAnJztcbiAgICBjb25zdCBwYXJ0cyAgICAgICA9IFtdO1xuICAgIGxldCBxdW90ZUNoYXIgICA9IG51bGw7XG5cbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHN0ci5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBjdXJyZW50Q2hhciA9IHN0cltpXTtcblxuICAgICAgICBpZiAoY3VycmVudENoYXIgPT09IHNwbGl0Q2hhcikge1xuICAgICAgICAgICAgaWYgKHF1b3RlQ2hhcilcbiAgICAgICAgICAgICAgICBjdXJyZW50UGFydCArPSBjdXJyZW50Q2hhcjtcbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIHBhcnRzLnB1c2goY3VycmVudFBhcnQpO1xuICAgICAgICAgICAgICAgIGN1cnJlbnRQYXJ0ID0gJyc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAocXVvdGVzLmluZGV4T2YoY3VycmVudENoYXIpID4gLTEpIHtcbiAgICAgICAgICAgIGlmIChxdW90ZUNoYXIgPT09IGN1cnJlbnRDaGFyKVxuICAgICAgICAgICAgICAgIHF1b3RlQ2hhciA9IG51bGw7XG4gICAgICAgICAgICBlbHNlIGlmICghcXVvdGVDaGFyKVxuICAgICAgICAgICAgICAgIHF1b3RlQ2hhciA9IGN1cnJlbnRDaGFyO1xuICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgIGN1cnJlbnRQYXJ0ICs9IGN1cnJlbnRDaGFyO1xuICAgICAgICB9XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIGN1cnJlbnRQYXJ0ICs9IGN1cnJlbnRDaGFyO1xuICAgIH1cblxuICAgIGlmIChjdXJyZW50UGFydClcbiAgICAgICAgcGFydHMucHVzaChjdXJyZW50UGFydCk7XG5cbiAgICByZXR1cm4gcGFydHM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRQbHVyYWxTdWZmaXggKGFycmF5KSB7XG4gICAgcmV0dXJuIGFycmF5Lmxlbmd0aCA+IDEgPyAncycgOiAnJztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldENvbmNhdGVuYXRlZFZhbHVlc1N0cmluZyAoYXJyYXksIHNlcGFyYXRvcikge1xuICAgIHNlcGFyYXRvciA9IHNlcGFyYXRvciB8fCBDT05DQVRFTkFURURfVkFMVUVTX1NFUEFSQVRPUjtcblxuICAgIHJldHVybiBhcnJheS5tYXAoaXRlbSA9PiBgXCIke2l0ZW19XCJgKS5qb2luKHNlcGFyYXRvcik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRUb0JlSW5QYXN0VGVuc2UgKGFycmF5KSB7XG4gICAgcmV0dXJuIGFycmF5Lmxlbmd0aCA+IDEgPyAnd2VyZScgOiAnd2FzJztcbn1cbiJdfQ== |
\ | No newline at end of file |