table 6.7.3 → 6.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +79 -1
- package/dist/src/alignSpanningCell.d.ts +7 -0
- package/dist/src/alignSpanningCell.js +44 -0
- package/dist/src/alignSpanningCell.js.map +1 -0
- package/dist/{alignString.d.ts → src/alignString.d.ts} +0 -0
- package/dist/{alignString.js → src/alignString.js} +4 -3
- package/dist/src/alignString.js.map +1 -0
- package/dist/{alignTableData.d.ts → src/alignTableData.d.ts} +0 -0
- package/dist/src/alignTableData.js +20 -0
- package/dist/src/alignTableData.js.map +1 -0
- package/dist/{calculateCellHeight.d.ts → src/calculateCellHeight.d.ts} +0 -0
- package/dist/{calculateCellHeight.js → src/calculateCellHeight.js} +2 -1
- package/dist/src/calculateCellHeight.js.map +1 -0
- package/dist/src/calculateMaximumColumnWidths.d.ts +7 -0
- package/dist/src/calculateMaximumColumnWidths.js +36 -0
- package/dist/src/calculateMaximumColumnWidths.js.map +1 -0
- package/dist/src/calculateOutputColumnWidths.d.ts +2 -0
- package/dist/src/calculateOutputColumnWidths.js +10 -0
- package/dist/src/calculateOutputColumnWidths.js.map +1 -0
- package/dist/{calculateRowHeights.d.ts → src/calculateRowHeights.d.ts} +0 -0
- package/dist/src/calculateRowHeights.js +42 -0
- package/dist/src/calculateRowHeights.js.map +1 -0
- package/dist/src/calculateSpanningCellWidth.d.ts +3 -0
- package/dist/src/calculateSpanningCellWidth.js +26 -0
- package/dist/src/calculateSpanningCellWidth.js.map +1 -0
- package/dist/{createStream.d.ts → src/createStream.d.ts} +0 -0
- package/dist/{createStream.js → src/createStream.js} +15 -13
- package/dist/src/createStream.js.map +1 -0
- package/dist/src/drawBorder.d.ts +34 -0
- package/dist/src/drawBorder.js +202 -0
- package/dist/src/drawBorder.js.map +1 -0
- package/dist/src/drawContent.d.ts +14 -0
- package/dist/src/drawContent.js +51 -0
- package/dist/src/drawContent.js.map +1 -0
- package/dist/src/drawRow.d.ts +10 -0
- package/dist/{drawRow.js → src/drawRow.js} +7 -2
- package/dist/src/drawRow.js.map +1 -0
- package/dist/src/drawTable.d.ts +2 -0
- package/dist/src/drawTable.js +31 -0
- package/dist/src/drawTable.js.map +1 -0
- package/dist/{generated → src/generated}/validators.d.ts +2 -2
- package/dist/{generated → src/generated}/validators.js +747 -223
- package/dist/src/generated/validators.js.map +1 -0
- package/dist/{getBorderCharacters.d.ts → src/getBorderCharacters.d.ts} +0 -0
- package/dist/{getBorderCharacters.js → src/getBorderCharacters.js} +17 -0
- package/dist/src/getBorderCharacters.js.map +1 -0
- package/dist/{index.d.ts → src/index.d.ts} +0 -0
- package/dist/{index.js → src/index.js} +1 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/injectHeaderConfig.d.ts +3 -0
- package/dist/src/injectHeaderConfig.js +29 -0
- package/dist/src/injectHeaderConfig.js.map +1 -0
- package/dist/src/makeRangeConfig.d.ts +3 -0
- package/dist/src/makeRangeConfig.js +18 -0
- package/dist/src/makeRangeConfig.js.map +1 -0
- package/dist/{makeStreamConfig.d.ts → src/makeStreamConfig.d.ts} +0 -0
- package/dist/{makeStreamConfig.js → src/makeStreamConfig.js} +3 -2
- package/dist/src/makeStreamConfig.js.map +1 -0
- package/dist/{makeTableConfig.d.ts → src/makeTableConfig.d.ts} +2 -2
- package/dist/src/makeTableConfig.js +62 -0
- package/dist/src/makeTableConfig.js.map +1 -0
- package/dist/src/mapDataUsingRowHeights.d.ts +4 -0
- package/dist/{mapDataUsingRowHeights.js → src/mapDataUsingRowHeights.js} +19 -11
- package/dist/src/mapDataUsingRowHeights.js.map +1 -0
- package/dist/{padTableData.d.ts → src/padTableData.d.ts} +0 -0
- package/dist/{padTableData.js → src/padTableData.js} +9 -2
- package/dist/src/padTableData.js.map +1 -0
- package/dist/src/schemas/config.json +95 -0
- package/dist/src/schemas/shared.json +139 -0
- package/dist/src/schemas/streamConfig.json +25 -0
- package/dist/src/spanningCellManager.d.ts +21 -0
- package/dist/src/spanningCellManager.js +86 -0
- package/dist/src/spanningCellManager.js.map +1 -0
- package/dist/{stringifyTableData.d.ts → src/stringifyTableData.d.ts} +0 -0
- package/dist/{stringifyTableData.js → src/stringifyTableData.js} +2 -1
- package/dist/src/stringifyTableData.js.map +1 -0
- package/dist/{table.d.ts → src/table.d.ts} +0 -0
- package/dist/src/table.js +31 -0
- package/dist/src/table.js.map +1 -0
- package/dist/src/truncateTableData.d.ts +6 -0
- package/dist/{truncateTableData.js → src/truncateTableData.js} +4 -3
- package/dist/src/truncateTableData.js.map +1 -0
- package/dist/{types → src/types}/api.d.ts +21 -5
- package/dist/{types → src/types}/api.js +1 -0
- package/dist/src/types/api.js.map +1 -0
- package/dist/{types → src/types}/internal.d.ts +0 -0
- package/dist/{types → src/types}/internal.js +1 -0
- package/dist/src/types/internal.js.map +1 -0
- package/dist/src/utils.d.ts +10 -0
- package/dist/{utils.js → src/utils.js} +55 -4
- package/dist/src/utils.js.map +1 -0
- package/dist/{validateConfig.d.ts → src/validateConfig.d.ts} +0 -0
- package/dist/{validateConfig.js → src/validateConfig.js} +2 -0
- package/dist/src/validateConfig.js.map +1 -0
- package/dist/src/validateSpanningCellConfig.d.ts +3 -0
- package/dist/src/validateSpanningCellConfig.js +46 -0
- package/dist/src/validateSpanningCellConfig.js.map +1 -0
- package/dist/{validateTableData.d.ts → src/validateTableData.d.ts} +0 -0
- package/dist/{validateTableData.js → src/validateTableData.js} +2 -1
- package/dist/src/validateTableData.js.map +1 -0
- package/dist/{wrapCell.d.ts → src/wrapCell.d.ts} +0 -0
- package/dist/{wrapCell.js → src/wrapCell.js} +4 -3
- package/dist/src/wrapCell.js.map +1 -0
- package/dist/{wrapString.d.ts → src/wrapString.d.ts} +0 -0
- package/dist/{wrapString.js → src/wrapString.js} +4 -3
- package/dist/src/wrapString.js.map +1 -0
- package/dist/{wrapWord.d.ts → src/wrapWord.d.ts} +0 -0
- package/dist/{wrapWord.js → src/wrapWord.js} +4 -3
- package/dist/src/wrapWord.js.map +1 -0
- package/package.json +14 -29
- package/dist/alignTableData.js +0 -13
- package/dist/calculateCellWidths.d.ts +0 -5
- package/dist/calculateCellWidths.js +0 -16
- package/dist/calculateColumnWidths.d.ts +0 -6
- package/dist/calculateColumnWidths.js +0 -16
- package/dist/calculateRowHeights.js +0 -18
- package/dist/drawBorder.d.ts +0 -26
- package/dist/drawBorder.js +0 -100
- package/dist/drawContent.d.ts +0 -9
- package/dist/drawContent.js +0 -26
- package/dist/drawHeader.d.ts +0 -2
- package/dist/drawHeader.js +0 -29
- package/dist/drawRow.d.ts +0 -6
- package/dist/drawTable.d.ts +0 -2
- package/dist/drawTable.js +0 -38
- package/dist/makeTableConfig.js +0 -64
- package/dist/mapDataUsingRowHeights.d.ts +0 -2
- package/dist/table.js +0 -26
- package/dist/truncateTableData.d.ts +0 -6
- package/dist/utils.d.ts +0 -1
|
@@ -22,10 +22,11 @@ const validateTableData = (rows) => {
|
|
|
22
22
|
}
|
|
23
23
|
for (const cell of row) {
|
|
24
24
|
// eslint-disable-next-line no-control-regex
|
|
25
|
-
if (/[\u0001-\u0006\u0008\u0009\u000B-\u001A]/.test(utils_1.normalizeString(String(cell)))) {
|
|
25
|
+
if (/[\u0001-\u0006\u0008\u0009\u000B-\u001A]/.test((0, utils_1.normalizeString)(String(cell)))) {
|
|
26
26
|
throw new Error('Table data must not contain control characters.');
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
29
|
}
|
|
30
30
|
};
|
|
31
31
|
exports.validateTableData = validateTableData;
|
|
32
|
+
//# sourceMappingURL=validateTableData.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validateTableData.js","sourceRoot":"","sources":["../../src/validateTableData.ts"],"names":[],"mappings":";;;AAAA,mCAEiB;AAEV,MAAM,iBAAiB,GAAG,CAAC,IAAiB,EAAQ,EAAE;IAC3D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACxB,MAAM,IAAI,SAAS,CAAC,8BAA8B,CAAC,CAAC;KACrD;IAED,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;QACrB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;KACxD;IAED,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;QACxB,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;KAC3D;IAED,MAAM,YAAY,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAEpC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;QACtB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YACvB,MAAM,IAAI,SAAS,CAAC,kCAAkC,CAAC,CAAC;SACzD;QAED,IAAI,GAAG,CAAC,MAAM,KAAK,YAAY,EAAE;YAC/B,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;SAClE;QAED,KAAK,MAAM,IAAI,IAAI,GAAG,EAAE;YACtB,4CAA4C;YAC5C,IAAI,0CAA0C,CAAC,IAAI,CAAC,IAAA,uBAAe,EAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;gBAClF,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;aACpE;SACF;KACF;AACH,CAAC,CAAC;AA/BW,QAAA,iBAAiB,qBA+B5B"}
|
|
File without changes
|
|
@@ -13,15 +13,15 @@ const wrapWord_1 = require("./wrapWord");
|
|
|
13
13
|
*/
|
|
14
14
|
const wrapCell = (cellValue, cellWidth, useWrapWord) => {
|
|
15
15
|
// First split on literal newlines
|
|
16
|
-
const cellLines = utils_1.splitAnsi(cellValue);
|
|
16
|
+
const cellLines = (0, utils_1.splitAnsi)(cellValue);
|
|
17
17
|
// Then iterate over the list and word-wrap every remaining line if necessary.
|
|
18
18
|
for (let lineNr = 0; lineNr < cellLines.length;) {
|
|
19
19
|
let lineChunks;
|
|
20
20
|
if (useWrapWord) {
|
|
21
|
-
lineChunks = wrapWord_1.wrapWord(cellLines[lineNr], cellWidth);
|
|
21
|
+
lineChunks = (0, wrapWord_1.wrapWord)(cellLines[lineNr], cellWidth);
|
|
22
22
|
}
|
|
23
23
|
else {
|
|
24
|
-
lineChunks = wrapString_1.wrapString(cellLines[lineNr], cellWidth);
|
|
24
|
+
lineChunks = (0, wrapString_1.wrapString)(cellLines[lineNr], cellWidth);
|
|
25
25
|
}
|
|
26
26
|
// Replace our original array element with whatever the wrapping returned
|
|
27
27
|
cellLines.splice(lineNr, 1, ...lineChunks);
|
|
@@ -30,3 +30,4 @@ const wrapCell = (cellValue, cellWidth, useWrapWord) => {
|
|
|
30
30
|
return cellLines;
|
|
31
31
|
};
|
|
32
32
|
exports.wrapCell = wrapCell;
|
|
33
|
+
//# sourceMappingURL=wrapCell.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wrapCell.js","sourceRoot":"","sources":["../../src/wrapCell.ts"],"names":[],"mappings":";;;AAAA,mCAEiB;AACjB,6CAEsB;AACtB,yCAEoB;AAEpB;;;;;;GAMG;AACI,MAAM,QAAQ,GAAG,CAAC,SAAiB,EAAE,SAAiB,EAAE,WAAoB,EAAY,EAAE;IAC/F,kCAAkC;IAClC,MAAM,SAAS,GAAG,IAAA,iBAAS,EAAC,SAAS,CAAC,CAAC;IAEvC,8EAA8E;IAC9E,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC,MAAM,GAAG;QAC/C,IAAI,UAAU,CAAC;QAEf,IAAI,WAAW,EAAE;YACf,UAAU,GAAG,IAAA,mBAAQ,EAAC,SAAS,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC,CAAC;SACrD;aAAM;YACL,UAAU,GAAG,IAAA,uBAAU,EAAC,SAAS,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC,CAAC;SACvD;QAED,yEAAyE;QACzE,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,UAAU,CAAC,CAAC;QAC3C,MAAM,IAAI,UAAU,CAAC,MAAM,CAAC;KAC7B;IAED,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AApBW,QAAA,QAAQ,YAoBnB"}
|
|
File without changes
|
|
@@ -18,9 +18,10 @@ const wrapString = (subject, size) => {
|
|
|
18
18
|
let subjectSlice = subject;
|
|
19
19
|
const chunks = [];
|
|
20
20
|
do {
|
|
21
|
-
chunks.push(slice_ansi_1.default(subjectSlice, 0, size));
|
|
22
|
-
subjectSlice = slice_ansi_1.default(subjectSlice, size).trim();
|
|
23
|
-
} while (string_width_1.default(subjectSlice));
|
|
21
|
+
chunks.push((0, slice_ansi_1.default)(subjectSlice, 0, size));
|
|
22
|
+
subjectSlice = (0, slice_ansi_1.default)(subjectSlice, size).trim();
|
|
23
|
+
} while ((0, string_width_1.default)(subjectSlice));
|
|
24
24
|
return chunks;
|
|
25
25
|
};
|
|
26
26
|
exports.wrapString = wrapString;
|
|
27
|
+
//# sourceMappingURL=wrapString.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wrapString.js","sourceRoot":"","sources":["../../src/wrapString.ts"],"names":[],"mappings":";;;;;;AAAA,4DAA+B;AAC/B,gEAAuC;AAEvC;;;;;;;GAOG;AACI,MAAM,UAAU,GAAG,CAAC,OAAe,EAAE,IAAY,EAAY,EAAE;IACpE,IAAI,YAAY,GAAG,OAAO,CAAC;IAE3B,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,GAAG;QACD,MAAM,CAAC,IAAI,CAAC,IAAA,oBAAK,EAAC,YAAY,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;QAE1C,YAAY,GAAG,IAAA,oBAAK,EAAC,YAAY,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;KACjD,QAAQ,IAAA,sBAAW,EAAC,YAAY,CAAC,EAAE;IAEpC,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAZW,QAAA,UAAU,cAYrB"}
|
|
File without changes
|
|
@@ -7,10 +7,10 @@ exports.wrapWord = void 0;
|
|
|
7
7
|
const slice_ansi_1 = __importDefault(require("slice-ansi"));
|
|
8
8
|
const strip_ansi_1 = __importDefault(require("strip-ansi"));
|
|
9
9
|
const calculateStringLengths = (input, size) => {
|
|
10
|
-
let subject = strip_ansi_1.default(input);
|
|
10
|
+
let subject = (0, strip_ansi_1.default)(input);
|
|
11
11
|
const chunks = [];
|
|
12
12
|
// https://regex101.com/r/gY5kZ1/1
|
|
13
|
-
const re = new RegExp('(^.{1,' + String(size) + '}(\\s+|$))|(^.{1,' + String(size - 1) + '}(\\\\|/|_|\\.|,|;|-))');
|
|
13
|
+
const re = new RegExp('(^.{1,' + String(Math.max(size, 1)) + '}(\\s+|$))|(^.{1,' + String(Math.max(size - 1, 1)) + '}(\\\\|/|_|\\.|,|;|-))');
|
|
14
14
|
do {
|
|
15
15
|
let chunk;
|
|
16
16
|
const match = re.exec(subject);
|
|
@@ -33,9 +33,10 @@ const wrapWord = (input, size) => {
|
|
|
33
33
|
const result = [];
|
|
34
34
|
let startIndex = 0;
|
|
35
35
|
calculateStringLengths(input, size).forEach(([length, offset]) => {
|
|
36
|
-
result.push(slice_ansi_1.default(input, startIndex, startIndex + length));
|
|
36
|
+
result.push((0, slice_ansi_1.default)(input, startIndex, startIndex + length));
|
|
37
37
|
startIndex += length + offset;
|
|
38
38
|
});
|
|
39
39
|
return result;
|
|
40
40
|
};
|
|
41
41
|
exports.wrapWord = wrapWord;
|
|
42
|
+
//# sourceMappingURL=wrapWord.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wrapWord.js","sourceRoot":"","sources":["../../src/wrapWord.ts"],"names":[],"mappings":";;;;;;AAAA,4DAA+B;AAC/B,4DAAmC;AAEnC,MAAM,sBAAsB,GAAG,CAAC,KAAa,EAAE,IAAY,EAA0C,EAAE;IACrG,IAAI,OAAO,GAAG,IAAA,oBAAS,EAAC,KAAK,CAAC,CAAC;IAE/B,MAAM,MAAM,GAA4B,EAAE,CAAC;IAE3C,kCAAkC;IAClC,MAAM,EAAE,GAAG,IAAI,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,mBAAmB,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,wBAAwB,CAAC,CAAC;IAE7I,GAAG;QACD,IAAI,KAAa,CAAC;QAElB,MAAM,KAAK,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE/B,IAAI,KAAK,EAAE;YACT,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YAEjB,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAEtC,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC;YAC1C,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,aAAa,CAAC;YAE5C,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC;SACtC;aAAM;YACL,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YAC/B,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAE9B,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;SAChC;KACF,QAAQ,OAAO,CAAC,MAAM,EAAE;IAEzB,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEK,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAE,IAAY,EAAY,EAAE;IAChE,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,sBAAsB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE;QAC/D,MAAM,CAAC,IAAI,CAAC,IAAA,oBAAK,EAAC,KAAK,EAAE,UAAU,EAAE,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC;QAE3D,UAAU,IAAI,MAAM,GAAG,MAAM,CAAC;IAChC,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAXW,QAAA,QAAQ,YAWnB"}
|
package/package.json
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
"@types/chai": "^4.2.16",
|
|
17
17
|
"@types/lodash.mapvalues": "^4.6.6",
|
|
18
18
|
"@types/lodash.truncate": "^4.4.6",
|
|
19
|
-
"@types/mocha": "^
|
|
19
|
+
"@types/mocha": "^9.0.0",
|
|
20
20
|
"@types/node": "^14.14.37",
|
|
21
21
|
"@types/sinon": "^10.0.0",
|
|
22
22
|
"@types/slice-ansi": "^4.0.0",
|
|
@@ -25,19 +25,19 @@
|
|
|
25
25
|
"chai": "^4.2.0",
|
|
26
26
|
"chalk": "^4.1.0",
|
|
27
27
|
"coveralls": "^3.1.0",
|
|
28
|
-
"eslint": "^7.
|
|
28
|
+
"eslint": "^7.32.0",
|
|
29
29
|
"eslint-config-canonical": "^25.0.0",
|
|
30
|
-
"gitdown": "^3.1.
|
|
30
|
+
"gitdown": "^3.1.4",
|
|
31
31
|
"husky": "^4.3.6",
|
|
32
|
-
"js-beautify": "^1.
|
|
32
|
+
"js-beautify": "^1.14.0",
|
|
33
33
|
"lodash.mapvalues": "^4.6.0",
|
|
34
34
|
"mkdirp": "^1.0.4",
|
|
35
35
|
"mocha": "^8.2.1",
|
|
36
36
|
"nyc": "^15.1.0",
|
|
37
37
|
"semantic-release": "^17.3.1",
|
|
38
|
-
"sinon": "^
|
|
38
|
+
"sinon": "^12.0.1",
|
|
39
39
|
"ts-node": "^9.1.1",
|
|
40
|
-
"typescript": "4.2
|
|
40
|
+
"typescript": "4.5.2"
|
|
41
41
|
},
|
|
42
42
|
"engines": {
|
|
43
43
|
"node": ">=10.0.0"
|
|
@@ -56,37 +56,22 @@
|
|
|
56
56
|
"ansi"
|
|
57
57
|
],
|
|
58
58
|
"license": "BSD-3-Clause",
|
|
59
|
-
"main": "./dist/index.js",
|
|
59
|
+
"main": "./dist/src/index.js",
|
|
60
60
|
"files": [
|
|
61
|
-
"dist
|
|
62
|
-
"dist/**/*.d.ts"
|
|
61
|
+
"dist/src/"
|
|
63
62
|
],
|
|
64
63
|
"name": "table",
|
|
65
|
-
"nyc": {
|
|
66
|
-
"extensions": [
|
|
67
|
-
".ts"
|
|
68
|
-
],
|
|
69
|
-
"exclude": [
|
|
70
|
-
"src/generated/validators.js",
|
|
71
|
-
"test/**/*.ts"
|
|
72
|
-
],
|
|
73
|
-
"reporter": [
|
|
74
|
-
"text-lcov",
|
|
75
|
-
"text"
|
|
76
|
-
]
|
|
77
|
-
},
|
|
78
64
|
"repository": {
|
|
79
65
|
"type": "git",
|
|
80
66
|
"url": "https://github.com/gajus/table"
|
|
81
67
|
},
|
|
82
68
|
"scripts": {
|
|
83
|
-
"
|
|
84
|
-
"
|
|
85
|
-
"build": "npm run create-validators && npm run compile",
|
|
69
|
+
"prebuild": "rm -fr ./src/generated && mkdirp ./src/generated",
|
|
70
|
+
"build": "npm run create-validators && tsc",
|
|
86
71
|
"create-readme": "gitdown ./.README/README.md --output-file ./README.md",
|
|
87
|
-
"create-validators": "
|
|
88
|
-
"lint": "eslint
|
|
89
|
-
"test": "
|
|
72
|
+
"create-validators": "ajv compile --all-errors --inline-refs=false -s src/schemas/config -s src/schemas/streamConfig -r src/schemas/shared -c ajv-keywords/dist/keywords/typeof -o | js-beautify > ./src/generated/validators.js",
|
|
73
|
+
"lint": "eslint ./src ./test",
|
|
74
|
+
"test": "nyc mocha && nyc check-coverage --lines 95"
|
|
90
75
|
},
|
|
91
|
-
"version": "6.
|
|
76
|
+
"version": "6.8.0"
|
|
92
77
|
}
|
package/dist/alignTableData.js
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.alignTableData = void 0;
|
|
4
|
-
const alignString_1 = require("./alignString");
|
|
5
|
-
const alignTableData = (rows, config) => {
|
|
6
|
-
return rows.map((row) => {
|
|
7
|
-
return row.map((cell, cellIndex) => {
|
|
8
|
-
const { width, alignment } = config.columns[cellIndex];
|
|
9
|
-
return alignString_1.alignString(cell, width, alignment);
|
|
10
|
-
});
|
|
11
|
-
});
|
|
12
|
-
};
|
|
13
|
-
exports.alignTableData = alignTableData;
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
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
|
-
exports.calculateCellWidths = void 0;
|
|
7
|
-
const string_width_1 = __importDefault(require("string-width"));
|
|
8
|
-
/**
|
|
9
|
-
* Calculates width of each cell contents in a row.
|
|
10
|
-
*/
|
|
11
|
-
const calculateCellWidths = (cells) => {
|
|
12
|
-
return cells.map((cell) => {
|
|
13
|
-
return Math.max(...cell.split('\n').map(string_width_1.default));
|
|
14
|
-
});
|
|
15
|
-
};
|
|
16
|
-
exports.calculateCellWidths = calculateCellWidths;
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const calculateCellWidths_1 = require("./calculateCellWidths");
|
|
4
|
-
/**
|
|
5
|
-
* Produces an array of values that describe the largest value length (width) in every column.
|
|
6
|
-
*/
|
|
7
|
-
exports.default = (rows) => {
|
|
8
|
-
const columnWidths = new Array(rows[0].length).fill(0);
|
|
9
|
-
rows.forEach((row) => {
|
|
10
|
-
const cellWidths = calculateCellWidths_1.calculateCellWidths(row);
|
|
11
|
-
cellWidths.forEach((cellWidth, cellIndex) => {
|
|
12
|
-
columnWidths[cellIndex] = Math.max(columnWidths[cellIndex], cellWidth);
|
|
13
|
-
});
|
|
14
|
-
});
|
|
15
|
-
return columnWidths;
|
|
16
|
-
};
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.calculateRowHeights = void 0;
|
|
4
|
-
const calculateCellHeight_1 = require("./calculateCellHeight");
|
|
5
|
-
/**
|
|
6
|
-
* Produces an array of values that describe the largest value length (height) in every row.
|
|
7
|
-
*/
|
|
8
|
-
const calculateRowHeights = (rows, config) => {
|
|
9
|
-
return rows.map((row) => {
|
|
10
|
-
let rowHeight = 1;
|
|
11
|
-
row.forEach((cell, cellIndex) => {
|
|
12
|
-
const cellHeight = calculateCellHeight_1.calculateCellHeight(cell, config.columns[cellIndex].width, config.columns[cellIndex].wrapWord);
|
|
13
|
-
rowHeight = Math.max(rowHeight, cellHeight);
|
|
14
|
-
});
|
|
15
|
-
return rowHeight;
|
|
16
|
-
});
|
|
17
|
-
};
|
|
18
|
-
exports.calculateRowHeights = calculateRowHeights;
|
package/dist/drawBorder.d.ts
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import type { DrawVerticalLine } from './types/api';
|
|
2
|
-
import type { TableConfig, SeparatorGetter, TopBorderConfig, JoinBorderConfig, BottomBorderConfig } from './types/internal';
|
|
3
|
-
declare type Separator = {
|
|
4
|
-
readonly left: string;
|
|
5
|
-
readonly right: string;
|
|
6
|
-
readonly body: string;
|
|
7
|
-
readonly join: string;
|
|
8
|
-
};
|
|
9
|
-
declare const drawBorder: (columnWidths: number[], config: {
|
|
10
|
-
separator: Separator;
|
|
11
|
-
drawVerticalLine: DrawVerticalLine;
|
|
12
|
-
}) => string;
|
|
13
|
-
declare const drawBorderTop: (columnWidths: number[], config: {
|
|
14
|
-
border: TopBorderConfig;
|
|
15
|
-
drawVerticalLine: DrawVerticalLine;
|
|
16
|
-
}) => string;
|
|
17
|
-
declare const drawBorderJoin: (columnWidths: number[], config: {
|
|
18
|
-
border: JoinBorderConfig;
|
|
19
|
-
drawVerticalLine: DrawVerticalLine;
|
|
20
|
-
}) => string;
|
|
21
|
-
declare const drawBorderBottom: (columnWidths: number[], config: {
|
|
22
|
-
border: BottomBorderConfig;
|
|
23
|
-
drawVerticalLine: DrawVerticalLine;
|
|
24
|
-
}) => string;
|
|
25
|
-
export declare const createTableBorderGetter: (columnWidths: number[], config: TableConfig) => SeparatorGetter;
|
|
26
|
-
export { drawBorder, drawBorderBottom, drawBorderJoin, drawBorderTop, };
|
package/dist/drawBorder.js
DELETED
|
@@ -1,100 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.drawBorderTop = exports.drawBorderJoin = exports.drawBorderBottom = exports.drawBorder = exports.createTableBorderGetter = void 0;
|
|
4
|
-
const drawContent_1 = require("./drawContent");
|
|
5
|
-
const drawBorder = (columnWidths, config) => {
|
|
6
|
-
const { separator, drawVerticalLine } = config;
|
|
7
|
-
const columns = columnWidths.map((size) => {
|
|
8
|
-
return config.separator.body.repeat(size);
|
|
9
|
-
});
|
|
10
|
-
return drawContent_1.drawContent(columns, {
|
|
11
|
-
drawSeparator: drawVerticalLine,
|
|
12
|
-
separatorGetter: (index, columnCount) => {
|
|
13
|
-
if (index === 0) {
|
|
14
|
-
return separator.left;
|
|
15
|
-
}
|
|
16
|
-
if (index === columnCount) {
|
|
17
|
-
return separator.right;
|
|
18
|
-
}
|
|
19
|
-
return separator.join;
|
|
20
|
-
},
|
|
21
|
-
}) + '\n';
|
|
22
|
-
};
|
|
23
|
-
exports.drawBorder = drawBorder;
|
|
24
|
-
const drawBorderTop = (columnWidths, config) => {
|
|
25
|
-
const result = drawBorder(columnWidths, {
|
|
26
|
-
...config,
|
|
27
|
-
separator: {
|
|
28
|
-
body: config.border.topBody,
|
|
29
|
-
join: config.border.topJoin,
|
|
30
|
-
left: config.border.topLeft,
|
|
31
|
-
right: config.border.topRight,
|
|
32
|
-
},
|
|
33
|
-
});
|
|
34
|
-
if (result === '\n') {
|
|
35
|
-
return '';
|
|
36
|
-
}
|
|
37
|
-
return result;
|
|
38
|
-
};
|
|
39
|
-
exports.drawBorderTop = drawBorderTop;
|
|
40
|
-
const drawBorderJoin = (columnWidths, config) => {
|
|
41
|
-
return drawBorder(columnWidths, {
|
|
42
|
-
...config,
|
|
43
|
-
separator: {
|
|
44
|
-
body: config.border.joinBody,
|
|
45
|
-
join: config.border.joinJoin,
|
|
46
|
-
left: config.border.joinLeft,
|
|
47
|
-
right: config.border.joinRight,
|
|
48
|
-
},
|
|
49
|
-
});
|
|
50
|
-
};
|
|
51
|
-
exports.drawBorderJoin = drawBorderJoin;
|
|
52
|
-
const drawBorderBottom = (columnWidths, config) => {
|
|
53
|
-
return drawBorder(columnWidths, {
|
|
54
|
-
...config,
|
|
55
|
-
separator: {
|
|
56
|
-
body: config.border.bottomBody,
|
|
57
|
-
join: config.border.bottomJoin,
|
|
58
|
-
left: config.border.bottomLeft,
|
|
59
|
-
right: config.border.bottomRight,
|
|
60
|
-
},
|
|
61
|
-
});
|
|
62
|
-
};
|
|
63
|
-
exports.drawBorderBottom = drawBorderBottom;
|
|
64
|
-
const createTableBorderGetter = (columnWidths, config) => {
|
|
65
|
-
return (index, size) => {
|
|
66
|
-
if (!config.header) {
|
|
67
|
-
if (index === 0) {
|
|
68
|
-
return drawBorderTop(columnWidths, config);
|
|
69
|
-
}
|
|
70
|
-
if (index === size) {
|
|
71
|
-
return drawBorderBottom(columnWidths, config);
|
|
72
|
-
}
|
|
73
|
-
return drawBorderJoin(columnWidths, config);
|
|
74
|
-
}
|
|
75
|
-
// Deal with the header
|
|
76
|
-
if (index === 0) {
|
|
77
|
-
return drawBorderTop(columnWidths, {
|
|
78
|
-
...config,
|
|
79
|
-
border: {
|
|
80
|
-
...config.border,
|
|
81
|
-
topJoin: config.border.topBody,
|
|
82
|
-
},
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
|
-
if (index === 1) {
|
|
86
|
-
return drawBorderJoin(columnWidths, {
|
|
87
|
-
...config,
|
|
88
|
-
border: {
|
|
89
|
-
...config.border,
|
|
90
|
-
joinJoin: config.border.headerJoin,
|
|
91
|
-
},
|
|
92
|
-
});
|
|
93
|
-
}
|
|
94
|
-
if (index === size) {
|
|
95
|
-
return drawBorderBottom(columnWidths, config);
|
|
96
|
-
}
|
|
97
|
-
return drawBorderJoin(columnWidths, config);
|
|
98
|
-
};
|
|
99
|
-
};
|
|
100
|
-
exports.createTableBorderGetter = createTableBorderGetter;
|
package/dist/drawContent.d.ts
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
declare type SeparatorConfig = {
|
|
2
|
-
drawSeparator: (index: number, size: number) => boolean;
|
|
3
|
-
separatorGetter: (index: number, size: number) => string;
|
|
4
|
-
};
|
|
5
|
-
/**
|
|
6
|
-
* Shared function to draw horizontal borders, rows or the entire table
|
|
7
|
-
*/
|
|
8
|
-
export declare const drawContent: (contents: string[], separatorConfig: SeparatorConfig) => string;
|
|
9
|
-
export {};
|
package/dist/drawContent.js
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.drawContent = void 0;
|
|
4
|
-
/**
|
|
5
|
-
* Shared function to draw horizontal borders, rows or the entire table
|
|
6
|
-
*/
|
|
7
|
-
const drawContent = (contents, separatorConfig) => {
|
|
8
|
-
const { separatorGetter, drawSeparator } = separatorConfig;
|
|
9
|
-
const contentSize = contents.length;
|
|
10
|
-
const result = [];
|
|
11
|
-
if (drawSeparator(0, contentSize)) {
|
|
12
|
-
result.push(separatorGetter(0, contentSize));
|
|
13
|
-
}
|
|
14
|
-
contents.forEach((content, contentIndex) => {
|
|
15
|
-
result.push(content);
|
|
16
|
-
// Only append the middle separator if the content is not the last
|
|
17
|
-
if (contentIndex + 1 < contentSize && drawSeparator(contentIndex + 1, contentSize)) {
|
|
18
|
-
result.push(separatorGetter(contentIndex + 1, contentSize));
|
|
19
|
-
}
|
|
20
|
-
});
|
|
21
|
-
if (drawSeparator(contentSize, contentSize)) {
|
|
22
|
-
result.push(separatorGetter(contentSize, contentSize));
|
|
23
|
-
}
|
|
24
|
-
return result.join('');
|
|
25
|
-
};
|
|
26
|
-
exports.drawContent = drawContent;
|
package/dist/drawHeader.d.ts
DELETED
package/dist/drawHeader.js
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.drawHeader = void 0;
|
|
4
|
-
const alignString_1 = require("./alignString");
|
|
5
|
-
const drawRow_1 = require("./drawRow");
|
|
6
|
-
const padTableData_1 = require("./padTableData");
|
|
7
|
-
const truncateTableData_1 = require("./truncateTableData");
|
|
8
|
-
const wrapCell_1 = require("./wrapCell");
|
|
9
|
-
const drawHeader = (width, config) => {
|
|
10
|
-
if (!config.header) {
|
|
11
|
-
throw new Error('Can not draw header without header configuration');
|
|
12
|
-
}
|
|
13
|
-
const { alignment, paddingRight, paddingLeft, wrapWord } = config.header;
|
|
14
|
-
let content = config.header.content;
|
|
15
|
-
content = truncateTableData_1.truncateString(content, config.header.truncate);
|
|
16
|
-
const headerLines = wrapCell_1.wrapCell(content, width, wrapWord);
|
|
17
|
-
return headerLines.map((headerLine) => {
|
|
18
|
-
let line = alignString_1.alignString(headerLine, width, alignment);
|
|
19
|
-
line = padTableData_1.padString(line, paddingLeft, paddingRight);
|
|
20
|
-
return drawRow_1.drawRow([line], {
|
|
21
|
-
...config,
|
|
22
|
-
drawVerticalLine: (index) => {
|
|
23
|
-
const columnCount = config.columns.length;
|
|
24
|
-
return config.drawVerticalLine(index === 0 ? 0 : columnCount, columnCount);
|
|
25
|
-
},
|
|
26
|
-
});
|
|
27
|
-
}).join('');
|
|
28
|
-
};
|
|
29
|
-
exports.drawHeader = drawHeader;
|
package/dist/drawRow.d.ts
DELETED
package/dist/drawTable.d.ts
DELETED
package/dist/drawTable.js
DELETED
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
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
|
-
exports.drawTable = void 0;
|
|
7
|
-
const string_width_1 = __importDefault(require("string-width"));
|
|
8
|
-
const drawBorder_1 = require("./drawBorder");
|
|
9
|
-
const drawContent_1 = require("./drawContent");
|
|
10
|
-
const drawHeader_1 = require("./drawHeader");
|
|
11
|
-
const drawRow_1 = require("./drawRow");
|
|
12
|
-
const utils_1 = require("./utils");
|
|
13
|
-
const drawTable = (rows, columnWidths, rowHeights, config) => {
|
|
14
|
-
const { drawHorizontalLine, singleLine, } = config;
|
|
15
|
-
const contents = utils_1.groupBySizes(rows, rowHeights).map((group) => {
|
|
16
|
-
return group.map((row) => {
|
|
17
|
-
return drawRow_1.drawRow(row, config);
|
|
18
|
-
}).join('');
|
|
19
|
-
});
|
|
20
|
-
if (config.header) {
|
|
21
|
-
// assume that topLeft/right border have width = 1
|
|
22
|
-
const headerWidth = string_width_1.default(drawRow_1.drawRow(rows[0], config)) - 2 -
|
|
23
|
-
config.header.paddingLeft - config.header.paddingRight;
|
|
24
|
-
const header = drawHeader_1.drawHeader(headerWidth, config);
|
|
25
|
-
contents.unshift(header);
|
|
26
|
-
}
|
|
27
|
-
return drawContent_1.drawContent(contents, {
|
|
28
|
-
drawSeparator: (index, size) => {
|
|
29
|
-
// Top/bottom border
|
|
30
|
-
if (index === 0 || index === size) {
|
|
31
|
-
return drawHorizontalLine(index, size);
|
|
32
|
-
}
|
|
33
|
-
return !singleLine && drawHorizontalLine(index, size);
|
|
34
|
-
},
|
|
35
|
-
separatorGetter: drawBorder_1.createTableBorderGetter(columnWidths, config),
|
|
36
|
-
});
|
|
37
|
-
};
|
|
38
|
-
exports.drawTable = drawTable;
|
package/dist/makeTableConfig.js
DELETED
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
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
|
-
exports.makeTableConfig = void 0;
|
|
7
|
-
const calculateColumnWidths_1 = __importDefault(require("./calculateColumnWidths"));
|
|
8
|
-
const utils_1 = require("./utils");
|
|
9
|
-
const validateConfig_1 = require("./validateConfig");
|
|
10
|
-
/**
|
|
11
|
-
* Creates a configuration for every column using default
|
|
12
|
-
* values for the missing configuration properties.
|
|
13
|
-
*/
|
|
14
|
-
const makeColumnsConfig = (rows, columns, columnDefault) => {
|
|
15
|
-
const columnWidths = calculateColumnWidths_1.default(rows);
|
|
16
|
-
return rows[0].map((_, columnIndex) => {
|
|
17
|
-
return {
|
|
18
|
-
alignment: 'left',
|
|
19
|
-
paddingLeft: 1,
|
|
20
|
-
paddingRight: 1,
|
|
21
|
-
truncate: Number.POSITIVE_INFINITY,
|
|
22
|
-
verticalAlignment: 'top',
|
|
23
|
-
width: columnWidths[columnIndex],
|
|
24
|
-
wrapWord: false,
|
|
25
|
-
...columnDefault,
|
|
26
|
-
...columns === null || columns === void 0 ? void 0 : columns[columnIndex],
|
|
27
|
-
};
|
|
28
|
-
});
|
|
29
|
-
};
|
|
30
|
-
const makeHeaderConfig = (config) => {
|
|
31
|
-
if (!config.header) {
|
|
32
|
-
return undefined;
|
|
33
|
-
}
|
|
34
|
-
return {
|
|
35
|
-
alignment: 'center',
|
|
36
|
-
paddingLeft: 1,
|
|
37
|
-
paddingRight: 1,
|
|
38
|
-
truncate: Number.POSITIVE_INFINITY,
|
|
39
|
-
wrapWord: false,
|
|
40
|
-
...config.header,
|
|
41
|
-
};
|
|
42
|
-
};
|
|
43
|
-
/**
|
|
44
|
-
* Makes a new configuration object out of the userConfig object
|
|
45
|
-
* using default values for the missing configuration properties.
|
|
46
|
-
*/
|
|
47
|
-
const makeTableConfig = (rows, config = {}) => {
|
|
48
|
-
var _a, _b, _c;
|
|
49
|
-
validateConfig_1.validateConfig('config.json', config);
|
|
50
|
-
return {
|
|
51
|
-
...config,
|
|
52
|
-
border: utils_1.makeBorderConfig(config.border),
|
|
53
|
-
columns: makeColumnsConfig(rows, config.columns, config.columnDefault),
|
|
54
|
-
drawHorizontalLine: (_a = config.drawHorizontalLine) !== null && _a !== void 0 ? _a : (() => {
|
|
55
|
-
return true;
|
|
56
|
-
}),
|
|
57
|
-
drawVerticalLine: (_b = config.drawVerticalLine) !== null && _b !== void 0 ? _b : (() => {
|
|
58
|
-
return true;
|
|
59
|
-
}),
|
|
60
|
-
header: makeHeaderConfig(config),
|
|
61
|
-
singleLine: (_c = config.singleLine) !== null && _c !== void 0 ? _c : false,
|
|
62
|
-
};
|
|
63
|
-
};
|
|
64
|
-
exports.makeTableConfig = makeTableConfig;
|
package/dist/table.js
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.table = void 0;
|
|
4
|
-
const alignTableData_1 = require("./alignTableData");
|
|
5
|
-
const calculateCellWidths_1 = require("./calculateCellWidths");
|
|
6
|
-
const calculateRowHeights_1 = require("./calculateRowHeights");
|
|
7
|
-
const drawTable_1 = require("./drawTable");
|
|
8
|
-
const makeTableConfig_1 = require("./makeTableConfig");
|
|
9
|
-
const mapDataUsingRowHeights_1 = require("./mapDataUsingRowHeights");
|
|
10
|
-
const padTableData_1 = require("./padTableData");
|
|
11
|
-
const stringifyTableData_1 = require("./stringifyTableData");
|
|
12
|
-
const truncateTableData_1 = require("./truncateTableData");
|
|
13
|
-
const validateTableData_1 = require("./validateTableData");
|
|
14
|
-
const table = (data, userConfig = {}) => {
|
|
15
|
-
validateTableData_1.validateTableData(data);
|
|
16
|
-
let rows = stringifyTableData_1.stringifyTableData(data);
|
|
17
|
-
const config = makeTableConfig_1.makeTableConfig(rows, userConfig);
|
|
18
|
-
rows = truncateTableData_1.truncateTableData(rows, config);
|
|
19
|
-
const rowHeights = calculateRowHeights_1.calculateRowHeights(rows, config);
|
|
20
|
-
rows = mapDataUsingRowHeights_1.mapDataUsingRowHeights(rows, rowHeights, config);
|
|
21
|
-
rows = alignTableData_1.alignTableData(rows, config);
|
|
22
|
-
rows = padTableData_1.padTableData(rows, config);
|
|
23
|
-
const cellWidths = calculateCellWidths_1.calculateCellWidths(rows[0]);
|
|
24
|
-
return drawTable_1.drawTable(rows, cellWidths, rowHeights, config);
|
|
25
|
-
};
|
|
26
|
-
exports.table = table;
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { BaseConfig, Row } from './types/internal';
|
|
2
|
-
export declare const truncateString: (input: string, length: number) => string;
|
|
3
|
-
/**
|
|
4
|
-
* @todo Make it work with ASCII content.
|
|
5
|
-
*/
|
|
6
|
-
export declare const truncateTableData: (rows: Row[], config: BaseConfig) => Row[];
|
package/dist/utils.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|