table 6.0.8 → 6.3.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 +53 -1
- package/dist/src/alignString.js +64 -0
- package/dist/src/alignTableData.js +21 -0
- package/dist/src/calculateCellHeight.js +17 -0
- package/dist/src/calculateCellWidthIndex.js +17 -0
- package/dist/src/calculateMaximumColumnWidthIndex.js +25 -0
- package/dist/src/calculateRowHeightIndex.js +30 -0
- package/dist/src/createStream.js +74 -0
- package/dist/src/drawBorder.js +55 -0
- package/dist/src/drawHorizontalContent.js +19 -0
- package/dist/src/drawRow.js +17 -0
- package/dist/src/drawTable.js +38 -0
- package/dist/src/getBorderCharacters.js +83 -0
- package/dist/{index.js.flow → src/index.d.ts} +2 -6
- package/dist/src/index.js +24 -0
- package/dist/src/makeConfig.js +59 -0
- package/dist/src/makeStreamConfig.js +60 -0
- package/dist/src/mapDataUsingRowHeightIndex.js +27 -0
- package/dist/src/padTableData.js +11 -0
- package/dist/src/stringifyTableData.js +8 -0
- package/dist/src/table.js +28 -0
- package/dist/src/truncateTableData.js +20 -0
- package/dist/src/types/api.d.ts +99 -0
- package/dist/src/types/api.js +3 -0
- package/dist/src/types/internal.js +3 -0
- package/dist/src/validateConfig.js +27 -0
- package/dist/src/validateTableData.js +29 -0
- package/dist/{validators.js → src/validators.js} +54 -14
- package/dist/src/wrapCell.js +33 -0
- package/dist/src/wrapString.js +25 -0
- package/dist/src/wrapWord.js +29 -0
- package/package.json +33 -26
- package/dist/alignString.js +0 -108
- package/dist/alignString.js.flow +0 -97
- package/dist/alignString.js.map +0 -1
- package/dist/alignTableData.js +0 -35
- package/dist/alignTableData.js.flow +0 -21
- package/dist/alignTableData.js.map +0 -1
- package/dist/calculateCellHeight.js +0 -38
- package/dist/calculateCellHeight.js.flow +0 -24
- package/dist/calculateCellHeight.js.map +0 -1
- package/dist/calculateCellWidthIndex.js +0 -28
- package/dist/calculateCellWidthIndex.js.flow +0 -17
- package/dist/calculateCellWidthIndex.js.map +0 -1
- package/dist/calculateMaximumColumnWidthIndex.js +0 -37
- package/dist/calculateMaximumColumnWidthIndex.js.flow +0 -27
- package/dist/calculateMaximumColumnWidthIndex.js.map +0 -1
- package/dist/calculateRowHeightIndex.js +0 -46
- package/dist/calculateRowHeightIndex.js.flow +0 -36
- package/dist/calculateRowHeightIndex.js.map +0 -1
- package/dist/createStream.js +0 -125
- package/dist/createStream.js.flow +0 -125
- package/dist/createStream.js.map +0 -1
- package/dist/drawBorder.js +0 -110
- package/dist/drawBorder.js.flow +0 -101
- package/dist/drawBorder.js.map +0 -1
- package/dist/drawRow.js +0 -26
- package/dist/drawRow.js.flow +0 -15
- package/dist/drawRow.js.map +0 -1
- package/dist/drawTable.js +0 -59
- package/dist/drawTable.js.flow +0 -53
- package/dist/drawTable.js.map +0 -1
- package/dist/getBorderCharacters.js +0 -119
- package/dist/getBorderCharacters.js.flow +0 -120
- package/dist/getBorderCharacters.js.map +0 -1
- package/dist/index.js +0 -32
- package/dist/index.js.map +0 -1
- package/dist/makeConfig.js +0 -92
- package/dist/makeConfig.js.flow +0 -76
- package/dist/makeConfig.js.map +0 -1
- package/dist/makeStreamConfig.js +0 -98
- package/dist/makeStreamConfig.js.flow +0 -83
- package/dist/makeStreamConfig.js.map +0 -1
- package/dist/mapDataUsingRowHeightIndex.js +0 -42
- package/dist/mapDataUsingRowHeightIndex.js.flow +0 -34
- package/dist/mapDataUsingRowHeightIndex.js.map +0 -1
- package/dist/padTableData.js +0 -24
- package/dist/padTableData.js.flow +0 -14
- package/dist/padTableData.js.map +0 -1
- package/dist/schemas/config.json +0 -23
- package/dist/schemas/shared.json +0 -98
- package/dist/schemas/streamConfig.json +0 -20
- package/dist/stringifyTableData.js +0 -22
- package/dist/stringifyTableData.js.flow +0 -11
- package/dist/stringifyTableData.js.map +0 -1
- package/dist/table.js +0 -110
- package/dist/table.js.flow +0 -96
- package/dist/table.js.map +0 -1
- package/dist/truncateTableData.js +0 -30
- package/dist/truncateTableData.js.flow +0 -17
- package/dist/truncateTableData.js.map +0 -1
- package/dist/validateConfig.js +0 -41
- package/dist/validateConfig.js.flow +0 -27
- package/dist/validateConfig.js.map +0 -1
- package/dist/validateTableData.js +0 -55
- package/dist/validateTableData.js.flow +0 -44
- package/dist/validateTableData.js.map +0 -1
- package/dist/wrapCell.js +0 -48
- package/dist/wrapCell.js.flow +0 -35
- package/dist/wrapCell.js.map +0 -1
- package/dist/wrapString.js +0 -40
- package/dist/wrapString.js.flow +0 -29
- package/dist/wrapString.js.map +0 -1
- package/dist/wrapWord.js +0 -47
- package/dist/wrapWord.js.flow +0 -39
- package/dist/wrapWord.js.map +0 -1
package/dist/createStream.js
DELETED
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _alignTableData = _interopRequireDefault(require("./alignTableData"));
|
|
9
|
-
|
|
10
|
-
var _calculateRowHeightIndex = _interopRequireDefault(require("./calculateRowHeightIndex"));
|
|
11
|
-
|
|
12
|
-
var _drawBorder = require("./drawBorder");
|
|
13
|
-
|
|
14
|
-
var _drawRow = _interopRequireDefault(require("./drawRow"));
|
|
15
|
-
|
|
16
|
-
var _makeStreamConfig = _interopRequireDefault(require("./makeStreamConfig"));
|
|
17
|
-
|
|
18
|
-
var _mapDataUsingRowHeightIndex = _interopRequireDefault(require("./mapDataUsingRowHeightIndex"));
|
|
19
|
-
|
|
20
|
-
var _padTableData = _interopRequireDefault(require("./padTableData"));
|
|
21
|
-
|
|
22
|
-
var _stringifyTableData = _interopRequireDefault(require("./stringifyTableData"));
|
|
23
|
-
|
|
24
|
-
var _truncateTableData = _interopRequireDefault(require("./truncateTableData"));
|
|
25
|
-
|
|
26
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
27
|
-
|
|
28
|
-
/**
|
|
29
|
-
* @param {Array} data
|
|
30
|
-
* @param {object} config
|
|
31
|
-
* @returns {Array}
|
|
32
|
-
*/
|
|
33
|
-
const prepareData = (data, config) => {
|
|
34
|
-
let rows;
|
|
35
|
-
rows = (0, _stringifyTableData.default)(data);
|
|
36
|
-
rows = (0, _truncateTableData.default)(data, config);
|
|
37
|
-
const rowHeightIndex = (0, _calculateRowHeightIndex.default)(rows, config);
|
|
38
|
-
rows = (0, _mapDataUsingRowHeightIndex.default)(rows, rowHeightIndex, config);
|
|
39
|
-
rows = (0, _alignTableData.default)(rows, config);
|
|
40
|
-
rows = (0, _padTableData.default)(rows, config);
|
|
41
|
-
return rows;
|
|
42
|
-
};
|
|
43
|
-
/**
|
|
44
|
-
* @param {string[]} row
|
|
45
|
-
* @param {number[]} columnWidthIndex
|
|
46
|
-
* @param {object} config
|
|
47
|
-
* @returns {undefined}
|
|
48
|
-
*/
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
const create = (row, columnWidthIndex, config) => {
|
|
52
|
-
const rows = prepareData([row], config);
|
|
53
|
-
const body = rows.map(literalRow => {
|
|
54
|
-
return (0, _drawRow.default)(literalRow, config.border);
|
|
55
|
-
}).join('');
|
|
56
|
-
let output;
|
|
57
|
-
output = '';
|
|
58
|
-
output += (0, _drawBorder.drawBorderTop)(columnWidthIndex, config.border);
|
|
59
|
-
output += body;
|
|
60
|
-
output += (0, _drawBorder.drawBorderBottom)(columnWidthIndex, config.border);
|
|
61
|
-
output = output.trimEnd();
|
|
62
|
-
process.stdout.write(output);
|
|
63
|
-
};
|
|
64
|
-
/**
|
|
65
|
-
* @param {string[]} row
|
|
66
|
-
* @param {number[]} columnWidthIndex
|
|
67
|
-
* @param {object} config
|
|
68
|
-
* @returns {undefined}
|
|
69
|
-
*/
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
const append = (row, columnWidthIndex, config) => {
|
|
73
|
-
const rows = prepareData([row], config);
|
|
74
|
-
const body = rows.map(literalRow => {
|
|
75
|
-
return (0, _drawRow.default)(literalRow, config.border);
|
|
76
|
-
}).join('');
|
|
77
|
-
let output = '';
|
|
78
|
-
const bottom = (0, _drawBorder.drawBorderBottom)(columnWidthIndex, config.border);
|
|
79
|
-
|
|
80
|
-
if (bottom !== '\n') {
|
|
81
|
-
output = '\r\u001B[K';
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
output += (0, _drawBorder.drawBorderJoin)(columnWidthIndex, config.border);
|
|
85
|
-
output += body;
|
|
86
|
-
output += bottom;
|
|
87
|
-
output = output.trimEnd();
|
|
88
|
-
process.stdout.write(output);
|
|
89
|
-
};
|
|
90
|
-
/**
|
|
91
|
-
* @param {object} userConfig
|
|
92
|
-
* @returns {object}
|
|
93
|
-
*/
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
const createStream = (userConfig = {}) => {
|
|
97
|
-
const config = (0, _makeStreamConfig.default)(userConfig);
|
|
98
|
-
const columnWidthIndex = Object.values(config.columns).map(column => {
|
|
99
|
-
return column.width + column.paddingLeft + column.paddingRight;
|
|
100
|
-
});
|
|
101
|
-
let empty;
|
|
102
|
-
empty = true;
|
|
103
|
-
return {
|
|
104
|
-
/**
|
|
105
|
-
* @param {string[]} row
|
|
106
|
-
* @returns {undefined}
|
|
107
|
-
*/
|
|
108
|
-
write: row => {
|
|
109
|
-
if (row.length !== config.columnCount) {
|
|
110
|
-
throw new Error('Row cell count does not match the config.columnCount.');
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
if (empty) {
|
|
114
|
-
empty = false;
|
|
115
|
-
return create(row, columnWidthIndex, config);
|
|
116
|
-
} else {
|
|
117
|
-
return append(row, columnWidthIndex, config);
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
};
|
|
121
|
-
};
|
|
122
|
-
|
|
123
|
-
var _default = createStream;
|
|
124
|
-
exports.default = _default;
|
|
125
|
-
//# sourceMappingURL=createStream.js.map
|
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
import alignTableData from './alignTableData';
|
|
2
|
-
import calculateRowHeightIndex from './calculateRowHeightIndex';
|
|
3
|
-
import {
|
|
4
|
-
drawBorderBottom,
|
|
5
|
-
drawBorderJoin,
|
|
6
|
-
drawBorderTop,
|
|
7
|
-
} from './drawBorder';
|
|
8
|
-
import drawRow from './drawRow';
|
|
9
|
-
import makeStreamConfig from './makeStreamConfig';
|
|
10
|
-
import mapDataUsingRowHeightIndex from './mapDataUsingRowHeightIndex';
|
|
11
|
-
import padTableData from './padTableData';
|
|
12
|
-
import stringifyTableData from './stringifyTableData';
|
|
13
|
-
import truncateTableData from './truncateTableData';
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* @param {Array} data
|
|
17
|
-
* @param {object} config
|
|
18
|
-
* @returns {Array}
|
|
19
|
-
*/
|
|
20
|
-
const prepareData = (data, config) => {
|
|
21
|
-
let rows;
|
|
22
|
-
|
|
23
|
-
rows = stringifyTableData(data);
|
|
24
|
-
|
|
25
|
-
rows = truncateTableData(data, config);
|
|
26
|
-
|
|
27
|
-
const rowHeightIndex = calculateRowHeightIndex(rows, config);
|
|
28
|
-
|
|
29
|
-
rows = mapDataUsingRowHeightIndex(rows, rowHeightIndex, config);
|
|
30
|
-
rows = alignTableData(rows, config);
|
|
31
|
-
rows = padTableData(rows, config);
|
|
32
|
-
|
|
33
|
-
return rows;
|
|
34
|
-
};
|
|
35
|
-
|
|
36
|
-
/**
|
|
37
|
-
* @param {string[]} row
|
|
38
|
-
* @param {number[]} columnWidthIndex
|
|
39
|
-
* @param {object} config
|
|
40
|
-
* @returns {undefined}
|
|
41
|
-
*/
|
|
42
|
-
const create = (row, columnWidthIndex, config) => {
|
|
43
|
-
const rows = prepareData([row], config);
|
|
44
|
-
|
|
45
|
-
const body = rows.map((literalRow) => {
|
|
46
|
-
return drawRow(literalRow, config.border);
|
|
47
|
-
}).join('');
|
|
48
|
-
|
|
49
|
-
let output;
|
|
50
|
-
|
|
51
|
-
output = '';
|
|
52
|
-
|
|
53
|
-
output += drawBorderTop(columnWidthIndex, config.border);
|
|
54
|
-
output += body;
|
|
55
|
-
output += drawBorderBottom(columnWidthIndex, config.border);
|
|
56
|
-
|
|
57
|
-
output = output.trimEnd();
|
|
58
|
-
|
|
59
|
-
process.stdout.write(output);
|
|
60
|
-
};
|
|
61
|
-
|
|
62
|
-
/**
|
|
63
|
-
* @param {string[]} row
|
|
64
|
-
* @param {number[]} columnWidthIndex
|
|
65
|
-
* @param {object} config
|
|
66
|
-
* @returns {undefined}
|
|
67
|
-
*/
|
|
68
|
-
const append = (row, columnWidthIndex, config) => {
|
|
69
|
-
const rows = prepareData([row], config);
|
|
70
|
-
|
|
71
|
-
const body = rows.map((literalRow) => {
|
|
72
|
-
return drawRow(literalRow, config.border);
|
|
73
|
-
}).join('');
|
|
74
|
-
|
|
75
|
-
let output = '';
|
|
76
|
-
const bottom = drawBorderBottom(columnWidthIndex, config.border);
|
|
77
|
-
|
|
78
|
-
if (bottom !== '\n') {
|
|
79
|
-
output = '\r\u001B[K';
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
output += drawBorderJoin(columnWidthIndex, config.border);
|
|
83
|
-
output += body;
|
|
84
|
-
output += bottom;
|
|
85
|
-
|
|
86
|
-
output = output.trimEnd();
|
|
87
|
-
|
|
88
|
-
process.stdout.write(output);
|
|
89
|
-
};
|
|
90
|
-
|
|
91
|
-
/**
|
|
92
|
-
* @param {object} userConfig
|
|
93
|
-
* @returns {object}
|
|
94
|
-
*/
|
|
95
|
-
export default (userConfig = {}) => {
|
|
96
|
-
const config = makeStreamConfig(userConfig);
|
|
97
|
-
|
|
98
|
-
const columnWidthIndex = Object.values(config.columns).map((column) => {
|
|
99
|
-
return column.width + column.paddingLeft + column.paddingRight;
|
|
100
|
-
});
|
|
101
|
-
|
|
102
|
-
let empty;
|
|
103
|
-
|
|
104
|
-
empty = true;
|
|
105
|
-
|
|
106
|
-
return {
|
|
107
|
-
/**
|
|
108
|
-
* @param {string[]} row
|
|
109
|
-
* @returns {undefined}
|
|
110
|
-
*/
|
|
111
|
-
write: (row) => {
|
|
112
|
-
if (row.length !== config.columnCount) {
|
|
113
|
-
throw new Error('Row cell count does not match the config.columnCount.');
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
if (empty) {
|
|
117
|
-
empty = false;
|
|
118
|
-
|
|
119
|
-
return create(row, columnWidthIndex, config);
|
|
120
|
-
} else {
|
|
121
|
-
return append(row, columnWidthIndex, config);
|
|
122
|
-
}
|
|
123
|
-
},
|
|
124
|
-
};
|
|
125
|
-
};
|
package/dist/createStream.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/createStream.js"],"names":["prepareData","data","config","rows","rowHeightIndex","create","row","columnWidthIndex","body","map","literalRow","border","join","output","trimEnd","process","stdout","write","append","bottom","userConfig","Object","values","columns","column","width","paddingLeft","paddingRight","empty","length","columnCount","Error"],"mappings":"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","sourcesContent":["import alignTableData from './alignTableData';\nimport calculateRowHeightIndex from './calculateRowHeightIndex';\nimport {\n drawBorderBottom,\n drawBorderJoin,\n drawBorderTop,\n} from './drawBorder';\nimport drawRow from './drawRow';\nimport makeStreamConfig from './makeStreamConfig';\nimport mapDataUsingRowHeightIndex from './mapDataUsingRowHeightIndex';\nimport padTableData from './padTableData';\nimport stringifyTableData from './stringifyTableData';\nimport truncateTableData from './truncateTableData';\n\n/**\n * @param {Array} data\n * @param {object} config\n * @returns {Array}\n */\nconst prepareData = (data, config) => {\n let rows;\n\n rows = stringifyTableData(data);\n\n rows = truncateTableData(data, config);\n\n const rowHeightIndex = calculateRowHeightIndex(rows, config);\n\n rows = mapDataUsingRowHeightIndex(rows, rowHeightIndex, config);\n rows = alignTableData(rows, config);\n rows = padTableData(rows, config);\n\n return rows;\n};\n\n/**\n * @param {string[]} row\n * @param {number[]} columnWidthIndex\n * @param {object} config\n * @returns {undefined}\n */\nconst create = (row, columnWidthIndex, config) => {\n const rows = prepareData([row], config);\n\n const body = rows.map((literalRow) => {\n return drawRow(literalRow, config.border);\n }).join('');\n\n let output;\n\n output = '';\n\n output += drawBorderTop(columnWidthIndex, config.border);\n output += body;\n output += drawBorderBottom(columnWidthIndex, config.border);\n\n output = output.trimEnd();\n\n process.stdout.write(output);\n};\n\n/**\n * @param {string[]} row\n * @param {number[]} columnWidthIndex\n * @param {object} config\n * @returns {undefined}\n */\nconst append = (row, columnWidthIndex, config) => {\n const rows = prepareData([row], config);\n\n const body = rows.map((literalRow) => {\n return drawRow(literalRow, config.border);\n }).join('');\n\n let output = '';\n const bottom = drawBorderBottom(columnWidthIndex, config.border);\n\n if (bottom !== '\\n') {\n output = '\\r\\u001B[K';\n }\n\n output += drawBorderJoin(columnWidthIndex, config.border);\n output += body;\n output += bottom;\n\n output = output.trimEnd();\n\n process.stdout.write(output);\n};\n\n/**\n * @param {object} userConfig\n * @returns {object}\n */\nexport default (userConfig = {}) => {\n const config = makeStreamConfig(userConfig);\n\n const columnWidthIndex = Object.values(config.columns).map((column) => {\n return column.width + column.paddingLeft + column.paddingRight;\n });\n\n let empty;\n\n empty = true;\n\n return {\n /**\n * @param {string[]} row\n * @returns {undefined}\n */\n write: (row) => {\n if (row.length !== config.columnCount) {\n throw new Error('Row cell count does not match the config.columnCount.');\n }\n\n if (empty) {\n empty = false;\n\n return create(row, columnWidthIndex, config);\n } else {\n return append(row, columnWidthIndex, config);\n }\n },\n };\n};\n"],"file":"createStream.js"}
|
package/dist/drawBorder.js
DELETED
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.drawBorderTop = exports.drawBorderJoin = exports.drawBorderBottom = exports.drawBorder = void 0;
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* @typedef drawBorder~parts
|
|
10
|
-
* @property {string} left
|
|
11
|
-
* @property {string} right
|
|
12
|
-
* @property {string} body
|
|
13
|
-
* @property {string} join
|
|
14
|
-
*/
|
|
15
|
-
|
|
16
|
-
/**
|
|
17
|
-
* @param {number[]} columnSizeIndex
|
|
18
|
-
* @param {drawBorder~parts} parts
|
|
19
|
-
* @returns {string}
|
|
20
|
-
*/
|
|
21
|
-
const drawBorder = (columnSizeIndex, parts) => {
|
|
22
|
-
const columns = columnSizeIndex.map(size => {
|
|
23
|
-
return parts.body.repeat(size);
|
|
24
|
-
}).join(parts.join);
|
|
25
|
-
return parts.left + columns + parts.right + '\n';
|
|
26
|
-
};
|
|
27
|
-
/**
|
|
28
|
-
* @typedef drawBorderTop~parts
|
|
29
|
-
* @property {string} topLeft
|
|
30
|
-
* @property {string} topRight
|
|
31
|
-
* @property {string} topBody
|
|
32
|
-
* @property {string} topJoin
|
|
33
|
-
*/
|
|
34
|
-
|
|
35
|
-
/**
|
|
36
|
-
* @param {number[]} columnSizeIndex
|
|
37
|
-
* @param {drawBorderTop~parts} parts
|
|
38
|
-
* @returns {string}
|
|
39
|
-
*/
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
exports.drawBorder = drawBorder;
|
|
43
|
-
|
|
44
|
-
const drawBorderTop = (columnSizeIndex, parts) => {
|
|
45
|
-
const border = drawBorder(columnSizeIndex, {
|
|
46
|
-
body: parts.topBody,
|
|
47
|
-
join: parts.topJoin,
|
|
48
|
-
left: parts.topLeft,
|
|
49
|
-
right: parts.topRight
|
|
50
|
-
});
|
|
51
|
-
|
|
52
|
-
if (border === '\n') {
|
|
53
|
-
return '';
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
return border;
|
|
57
|
-
};
|
|
58
|
-
/**
|
|
59
|
-
* @typedef drawBorderJoin~parts
|
|
60
|
-
* @property {string} joinLeft
|
|
61
|
-
* @property {string} joinRight
|
|
62
|
-
* @property {string} joinBody
|
|
63
|
-
* @property {string} joinJoin
|
|
64
|
-
*/
|
|
65
|
-
|
|
66
|
-
/**
|
|
67
|
-
* @param {number[]} columnSizeIndex
|
|
68
|
-
* @param {drawBorderJoin~parts} parts
|
|
69
|
-
* @returns {string}
|
|
70
|
-
*/
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
exports.drawBorderTop = drawBorderTop;
|
|
74
|
-
|
|
75
|
-
const drawBorderJoin = (columnSizeIndex, parts) => {
|
|
76
|
-
return drawBorder(columnSizeIndex, {
|
|
77
|
-
body: parts.joinBody,
|
|
78
|
-
join: parts.joinJoin,
|
|
79
|
-
left: parts.joinLeft,
|
|
80
|
-
right: parts.joinRight
|
|
81
|
-
});
|
|
82
|
-
};
|
|
83
|
-
/**
|
|
84
|
-
* @typedef drawBorderBottom~parts
|
|
85
|
-
* @property {string} topLeft
|
|
86
|
-
* @property {string} topRight
|
|
87
|
-
* @property {string} topBody
|
|
88
|
-
* @property {string} topJoin
|
|
89
|
-
*/
|
|
90
|
-
|
|
91
|
-
/**
|
|
92
|
-
* @param {number[]} columnSizeIndex
|
|
93
|
-
* @param {drawBorderBottom~parts} parts
|
|
94
|
-
* @returns {string}
|
|
95
|
-
*/
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
exports.drawBorderJoin = drawBorderJoin;
|
|
99
|
-
|
|
100
|
-
const drawBorderBottom = (columnSizeIndex, parts) => {
|
|
101
|
-
return drawBorder(columnSizeIndex, {
|
|
102
|
-
body: parts.bottomBody,
|
|
103
|
-
join: parts.bottomJoin,
|
|
104
|
-
left: parts.bottomLeft,
|
|
105
|
-
right: parts.bottomRight
|
|
106
|
-
});
|
|
107
|
-
};
|
|
108
|
-
|
|
109
|
-
exports.drawBorderBottom = drawBorderBottom;
|
|
110
|
-
//# sourceMappingURL=drawBorder.js.map
|
package/dist/drawBorder.js.flow
DELETED
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @typedef drawBorder~parts
|
|
3
|
-
* @property {string} left
|
|
4
|
-
* @property {string} right
|
|
5
|
-
* @property {string} body
|
|
6
|
-
* @property {string} join
|
|
7
|
-
*/
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* @param {number[]} columnSizeIndex
|
|
11
|
-
* @param {drawBorder~parts} parts
|
|
12
|
-
* @returns {string}
|
|
13
|
-
*/
|
|
14
|
-
const drawBorder = (columnSizeIndex, parts) => {
|
|
15
|
-
const columns = columnSizeIndex
|
|
16
|
-
.map((size) => {
|
|
17
|
-
return parts.body.repeat(size);
|
|
18
|
-
})
|
|
19
|
-
.join(parts.join);
|
|
20
|
-
|
|
21
|
-
return parts.left + columns + parts.right + '\n';
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* @typedef drawBorderTop~parts
|
|
26
|
-
* @property {string} topLeft
|
|
27
|
-
* @property {string} topRight
|
|
28
|
-
* @property {string} topBody
|
|
29
|
-
* @property {string} topJoin
|
|
30
|
-
*/
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* @param {number[]} columnSizeIndex
|
|
34
|
-
* @param {drawBorderTop~parts} parts
|
|
35
|
-
* @returns {string}
|
|
36
|
-
*/
|
|
37
|
-
const drawBorderTop = (columnSizeIndex, parts) => {
|
|
38
|
-
const border = drawBorder(columnSizeIndex, {
|
|
39
|
-
body: parts.topBody,
|
|
40
|
-
join: parts.topJoin,
|
|
41
|
-
left: parts.topLeft,
|
|
42
|
-
right: parts.topRight,
|
|
43
|
-
});
|
|
44
|
-
|
|
45
|
-
if (border === '\n') {
|
|
46
|
-
return '';
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
return border;
|
|
50
|
-
};
|
|
51
|
-
|
|
52
|
-
/**
|
|
53
|
-
* @typedef drawBorderJoin~parts
|
|
54
|
-
* @property {string} joinLeft
|
|
55
|
-
* @property {string} joinRight
|
|
56
|
-
* @property {string} joinBody
|
|
57
|
-
* @property {string} joinJoin
|
|
58
|
-
*/
|
|
59
|
-
|
|
60
|
-
/**
|
|
61
|
-
* @param {number[]} columnSizeIndex
|
|
62
|
-
* @param {drawBorderJoin~parts} parts
|
|
63
|
-
* @returns {string}
|
|
64
|
-
*/
|
|
65
|
-
const drawBorderJoin = (columnSizeIndex, parts) => {
|
|
66
|
-
return drawBorder(columnSizeIndex, {
|
|
67
|
-
body: parts.joinBody,
|
|
68
|
-
join: parts.joinJoin,
|
|
69
|
-
left: parts.joinLeft,
|
|
70
|
-
right: parts.joinRight,
|
|
71
|
-
});
|
|
72
|
-
};
|
|
73
|
-
|
|
74
|
-
/**
|
|
75
|
-
* @typedef drawBorderBottom~parts
|
|
76
|
-
* @property {string} topLeft
|
|
77
|
-
* @property {string} topRight
|
|
78
|
-
* @property {string} topBody
|
|
79
|
-
* @property {string} topJoin
|
|
80
|
-
*/
|
|
81
|
-
|
|
82
|
-
/**
|
|
83
|
-
* @param {number[]} columnSizeIndex
|
|
84
|
-
* @param {drawBorderBottom~parts} parts
|
|
85
|
-
* @returns {string}
|
|
86
|
-
*/
|
|
87
|
-
const drawBorderBottom = (columnSizeIndex, parts) => {
|
|
88
|
-
return drawBorder(columnSizeIndex, {
|
|
89
|
-
body: parts.bottomBody,
|
|
90
|
-
join: parts.bottomJoin,
|
|
91
|
-
left: parts.bottomLeft,
|
|
92
|
-
right: parts.bottomRight,
|
|
93
|
-
});
|
|
94
|
-
};
|
|
95
|
-
|
|
96
|
-
export {
|
|
97
|
-
drawBorder,
|
|
98
|
-
drawBorderBottom,
|
|
99
|
-
drawBorderJoin,
|
|
100
|
-
drawBorderTop,
|
|
101
|
-
};
|
package/dist/drawBorder.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/drawBorder.js"],"names":["drawBorder","columnSizeIndex","parts","columns","map","size","body","repeat","join","left","right","drawBorderTop","border","topBody","topJoin","topLeft","topRight","drawBorderJoin","joinBody","joinJoin","joinLeft","joinRight","drawBorderBottom","bottomBody","bottomJoin","bottomLeft","bottomRight"],"mappings":";;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAMA,UAAU,GAAG,CAACC,eAAD,EAAkBC,KAAlB,KAA4B;AAC7C,QAAMC,OAAO,GAAGF,eAAe,CAC5BG,GADa,CACRC,IAAD,IAAU;AACb,WAAOH,KAAK,CAACI,IAAN,CAAWC,MAAX,CAAkBF,IAAlB,CAAP;AACD,GAHa,EAIbG,IAJa,CAIRN,KAAK,CAACM,IAJE,CAAhB;AAMA,SAAON,KAAK,CAACO,IAAN,GAAaN,OAAb,GAAuBD,KAAK,CAACQ,KAA7B,GAAqC,IAA5C;AACD,CARD;AAUA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;AACA,MAAMC,aAAa,GAAG,CAACV,eAAD,EAAkBC,KAAlB,KAA4B;AAChD,QAAMU,MAAM,GAAGZ,UAAU,CAACC,eAAD,EAAkB;AACzCK,IAAAA,IAAI,EAAEJ,KAAK,CAACW,OAD6B;AAEzCL,IAAAA,IAAI,EAAEN,KAAK,CAACY,OAF6B;AAGzCL,IAAAA,IAAI,EAAEP,KAAK,CAACa,OAH6B;AAIzCL,IAAAA,KAAK,EAAER,KAAK,CAACc;AAJ4B,GAAlB,CAAzB;;AAOA,MAAIJ,MAAM,KAAK,IAAf,EAAqB;AACnB,WAAO,EAAP;AACD;;AAED,SAAOA,MAAP;AACD,CAbD;AAeA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;AACA,MAAMK,cAAc,GAAG,CAAChB,eAAD,EAAkBC,KAAlB,KAA4B;AACjD,SAAOF,UAAU,CAACC,eAAD,EAAkB;AACjCK,IAAAA,IAAI,EAAEJ,KAAK,CAACgB,QADqB;AAEjCV,IAAAA,IAAI,EAAEN,KAAK,CAACiB,QAFqB;AAGjCV,IAAAA,IAAI,EAAEP,KAAK,CAACkB,QAHqB;AAIjCV,IAAAA,KAAK,EAAER,KAAK,CAACmB;AAJoB,GAAlB,CAAjB;AAMD,CAPD;AASA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;AACA,MAAMC,gBAAgB,GAAG,CAACrB,eAAD,EAAkBC,KAAlB,KAA4B;AACnD,SAAOF,UAAU,CAACC,eAAD,EAAkB;AACjCK,IAAAA,IAAI,EAAEJ,KAAK,CAACqB,UADqB;AAEjCf,IAAAA,IAAI,EAAEN,KAAK,CAACsB,UAFqB;AAGjCf,IAAAA,IAAI,EAAEP,KAAK,CAACuB,UAHqB;AAIjCf,IAAAA,KAAK,EAAER,KAAK,CAACwB;AAJoB,GAAlB,CAAjB;AAMD,CAPD","sourcesContent":["/**\n * @typedef drawBorder~parts\n * @property {string} left\n * @property {string} right\n * @property {string} body\n * @property {string} join\n */\n\n/**\n * @param {number[]} columnSizeIndex\n * @param {drawBorder~parts} parts\n * @returns {string}\n */\nconst drawBorder = (columnSizeIndex, parts) => {\n const columns = columnSizeIndex\n .map((size) => {\n return parts.body.repeat(size);\n })\n .join(parts.join);\n\n return parts.left + columns + parts.right + '\\n';\n};\n\n/**\n * @typedef drawBorderTop~parts\n * @property {string} topLeft\n * @property {string} topRight\n * @property {string} topBody\n * @property {string} topJoin\n */\n\n/**\n * @param {number[]} columnSizeIndex\n * @param {drawBorderTop~parts} parts\n * @returns {string}\n */\nconst drawBorderTop = (columnSizeIndex, parts) => {\n const border = drawBorder(columnSizeIndex, {\n body: parts.topBody,\n join: parts.topJoin,\n left: parts.topLeft,\n right: parts.topRight,\n });\n\n if (border === '\\n') {\n return '';\n }\n\n return border;\n};\n\n/**\n * @typedef drawBorderJoin~parts\n * @property {string} joinLeft\n * @property {string} joinRight\n * @property {string} joinBody\n * @property {string} joinJoin\n */\n\n/**\n * @param {number[]} columnSizeIndex\n * @param {drawBorderJoin~parts} parts\n * @returns {string}\n */\nconst drawBorderJoin = (columnSizeIndex, parts) => {\n return drawBorder(columnSizeIndex, {\n body: parts.joinBody,\n join: parts.joinJoin,\n left: parts.joinLeft,\n right: parts.joinRight,\n });\n};\n\n/**\n * @typedef drawBorderBottom~parts\n * @property {string} topLeft\n * @property {string} topRight\n * @property {string} topBody\n * @property {string} topJoin\n */\n\n/**\n * @param {number[]} columnSizeIndex\n * @param {drawBorderBottom~parts} parts\n * @returns {string}\n */\nconst drawBorderBottom = (columnSizeIndex, parts) => {\n return drawBorder(columnSizeIndex, {\n body: parts.bottomBody,\n join: parts.bottomJoin,\n left: parts.bottomLeft,\n right: parts.bottomRight,\n });\n};\n\nexport {\n drawBorder,\n drawBorderBottom,\n drawBorderJoin,\n drawBorderTop,\n};\n"],"file":"drawBorder.js"}
|
package/dist/drawRow.js
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* @typedef {object} drawRow~border
|
|
10
|
-
* @property {string} bodyLeft
|
|
11
|
-
* @property {string} bodyRight
|
|
12
|
-
* @property {string} bodyJoin
|
|
13
|
-
*/
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* @param {number[]} columns
|
|
17
|
-
* @param {drawRow~border} border
|
|
18
|
-
* @returns {string}
|
|
19
|
-
*/
|
|
20
|
-
const drawRow = (columns, border) => {
|
|
21
|
-
return border.bodyLeft + columns.join(border.bodyJoin) + border.bodyRight + '\n';
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
var _default = drawRow;
|
|
25
|
-
exports.default = _default;
|
|
26
|
-
//# sourceMappingURL=drawRow.js.map
|
package/dist/drawRow.js.flow
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @typedef {object} drawRow~border
|
|
3
|
-
* @property {string} bodyLeft
|
|
4
|
-
* @property {string} bodyRight
|
|
5
|
-
* @property {string} bodyJoin
|
|
6
|
-
*/
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* @param {number[]} columns
|
|
10
|
-
* @param {drawRow~border} border
|
|
11
|
-
* @returns {string}
|
|
12
|
-
*/
|
|
13
|
-
export default (columns, border) => {
|
|
14
|
-
return border.bodyLeft + columns.join(border.bodyJoin) + border.bodyRight + '\n';
|
|
15
|
-
};
|
package/dist/drawRow.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/drawRow.js"],"names":["columns","border","bodyLeft","join","bodyJoin","bodyRight"],"mappings":";;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;iBACgBA,O,EAASC,M,KAAW;AAClC,SAAOA,MAAM,CAACC,QAAP,GAAkBF,OAAO,CAACG,IAAR,CAAaF,MAAM,CAACG,QAApB,CAAlB,GAAkDH,MAAM,CAACI,SAAzD,GAAqE,IAA5E;AACD,C","sourcesContent":["/**\n * @typedef {object} drawRow~border\n * @property {string} bodyLeft\n * @property {string} bodyRight\n * @property {string} bodyJoin\n */\n\n/**\n * @param {number[]} columns\n * @param {drawRow~border} border\n * @returns {string}\n */\nexport default (columns, border) => {\n return border.bodyLeft + columns.join(border.bodyJoin) + border.bodyRight + '\\n';\n};\n"],"file":"drawRow.js"}
|
package/dist/drawTable.js
DELETED
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _drawBorder = require("./drawBorder");
|
|
9
|
-
|
|
10
|
-
var _drawRow = _interopRequireDefault(require("./drawRow"));
|
|
11
|
-
|
|
12
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* @param {Array} rows
|
|
16
|
-
* @param {object} border
|
|
17
|
-
* @param {Array} columnSizeIndex
|
|
18
|
-
* @param {Array} rowSpanIndex
|
|
19
|
-
* @param {Function} drawHorizontalLine
|
|
20
|
-
* @param {boolean} singleLine
|
|
21
|
-
* @returns {string}
|
|
22
|
-
*/
|
|
23
|
-
const drawTable = (rows, border, columnSizeIndex, rowSpanIndex, drawHorizontalLine, singleLine) => {
|
|
24
|
-
let output;
|
|
25
|
-
let realRowIndex;
|
|
26
|
-
let rowHeight;
|
|
27
|
-
const rowCount = rows.length;
|
|
28
|
-
realRowIndex = 0;
|
|
29
|
-
output = '';
|
|
30
|
-
|
|
31
|
-
if (drawHorizontalLine(realRowIndex, rowCount)) {
|
|
32
|
-
output += (0, _drawBorder.drawBorderTop)(columnSizeIndex, border);
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
rows.forEach((row, index0) => {
|
|
36
|
-
output += (0, _drawRow.default)(row, border);
|
|
37
|
-
|
|
38
|
-
if (!rowHeight) {
|
|
39
|
-
rowHeight = rowSpanIndex[realRowIndex];
|
|
40
|
-
realRowIndex++;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
rowHeight--;
|
|
44
|
-
|
|
45
|
-
if (!singleLine && rowHeight === 0 && index0 !== rowCount - 1 && drawHorizontalLine(realRowIndex, rowCount)) {
|
|
46
|
-
output += (0, _drawBorder.drawBorderJoin)(columnSizeIndex, border);
|
|
47
|
-
}
|
|
48
|
-
});
|
|
49
|
-
|
|
50
|
-
if (drawHorizontalLine(realRowIndex, rowCount)) {
|
|
51
|
-
output += (0, _drawBorder.drawBorderBottom)(columnSizeIndex, border);
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
return output;
|
|
55
|
-
};
|
|
56
|
-
|
|
57
|
-
var _default = drawTable;
|
|
58
|
-
exports.default = _default;
|
|
59
|
-
//# sourceMappingURL=drawTable.js.map
|
package/dist/drawTable.js.flow
DELETED
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
drawBorderTop,
|
|
3
|
-
drawBorderJoin,
|
|
4
|
-
drawBorderBottom,
|
|
5
|
-
} from './drawBorder';
|
|
6
|
-
import drawRow from './drawRow';
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* @param {Array} rows
|
|
10
|
-
* @param {object} border
|
|
11
|
-
* @param {Array} columnSizeIndex
|
|
12
|
-
* @param {Array} rowSpanIndex
|
|
13
|
-
* @param {Function} drawHorizontalLine
|
|
14
|
-
* @param {boolean} singleLine
|
|
15
|
-
* @returns {string}
|
|
16
|
-
*/
|
|
17
|
-
export default (rows, border, columnSizeIndex, rowSpanIndex, drawHorizontalLine, singleLine) => {
|
|
18
|
-
let output;
|
|
19
|
-
let realRowIndex;
|
|
20
|
-
let rowHeight;
|
|
21
|
-
|
|
22
|
-
const rowCount = rows.length;
|
|
23
|
-
|
|
24
|
-
realRowIndex = 0;
|
|
25
|
-
|
|
26
|
-
output = '';
|
|
27
|
-
|
|
28
|
-
if (drawHorizontalLine(realRowIndex, rowCount)) {
|
|
29
|
-
output += drawBorderTop(columnSizeIndex, border);
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
rows.forEach((row, index0) => {
|
|
33
|
-
output += drawRow(row, border);
|
|
34
|
-
|
|
35
|
-
if (!rowHeight) {
|
|
36
|
-
rowHeight = rowSpanIndex[realRowIndex];
|
|
37
|
-
|
|
38
|
-
realRowIndex++;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
rowHeight--;
|
|
42
|
-
|
|
43
|
-
if (!singleLine && rowHeight === 0 && index0 !== rowCount - 1 && drawHorizontalLine(realRowIndex, rowCount)) {
|
|
44
|
-
output += drawBorderJoin(columnSizeIndex, border);
|
|
45
|
-
}
|
|
46
|
-
});
|
|
47
|
-
|
|
48
|
-
if (drawHorizontalLine(realRowIndex, rowCount)) {
|
|
49
|
-
output += drawBorderBottom(columnSizeIndex, border);
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
return output;
|
|
53
|
-
};
|
package/dist/drawTable.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/drawTable.js"],"names":["rows","border","columnSizeIndex","rowSpanIndex","drawHorizontalLine","singleLine","output","realRowIndex","rowHeight","rowCount","length","forEach","row","index0"],"mappings":";;;;;;;AAAA;;AAKA;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;mBACgBA,I,EAAMC,M,EAAQC,e,EAAiBC,Y,EAAcC,kB,EAAoBC,U,KAAe;AAC9F,MAAIC,MAAJ;AACA,MAAIC,YAAJ;AACA,MAAIC,SAAJ;AAEA,QAAMC,QAAQ,GAAGT,IAAI,CAACU,MAAtB;AAEAH,EAAAA,YAAY,GAAG,CAAf;AAEAD,EAAAA,MAAM,GAAG,EAAT;;AAEA,MAAIF,kBAAkB,CAACG,YAAD,EAAeE,QAAf,CAAtB,EAAgD;AAC9CH,IAAAA,MAAM,IAAI,+BAAcJ,eAAd,EAA+BD,MAA/B,CAAV;AACD;;AAEDD,EAAAA,IAAI,CAACW,OAAL,CAAa,CAACC,GAAD,EAAMC,MAAN,KAAiB;AAC5BP,IAAAA,MAAM,IAAI,sBAAQM,GAAR,EAAaX,MAAb,CAAV;;AAEA,QAAI,CAACO,SAAL,EAAgB;AACdA,MAAAA,SAAS,GAAGL,YAAY,CAACI,YAAD,CAAxB;AAEAA,MAAAA,YAAY;AACb;;AAEDC,IAAAA,SAAS;;AAET,QAAI,CAACH,UAAD,IAAeG,SAAS,KAAK,CAA7B,IAAkCK,MAAM,KAAKJ,QAAQ,GAAG,CAAxD,IAA6DL,kBAAkB,CAACG,YAAD,EAAeE,QAAf,CAAnF,EAA6G;AAC3GH,MAAAA,MAAM,IAAI,gCAAeJ,eAAf,EAAgCD,MAAhC,CAAV;AACD;AACF,GAdD;;AAgBA,MAAIG,kBAAkB,CAACG,YAAD,EAAeE,QAAf,CAAtB,EAAgD;AAC9CH,IAAAA,MAAM,IAAI,kCAAiBJ,eAAjB,EAAkCD,MAAlC,CAAV;AACD;;AAED,SAAOK,MAAP;AACD,C","sourcesContent":["import {\n drawBorderTop,\n drawBorderJoin,\n drawBorderBottom,\n} from './drawBorder';\nimport drawRow from './drawRow';\n\n/**\n * @param {Array} rows\n * @param {object} border\n * @param {Array} columnSizeIndex\n * @param {Array} rowSpanIndex\n * @param {Function} drawHorizontalLine\n * @param {boolean} singleLine\n * @returns {string}\n */\nexport default (rows, border, columnSizeIndex, rowSpanIndex, drawHorizontalLine, singleLine) => {\n let output;\n let realRowIndex;\n let rowHeight;\n\n const rowCount = rows.length;\n\n realRowIndex = 0;\n\n output = '';\n\n if (drawHorizontalLine(realRowIndex, rowCount)) {\n output += drawBorderTop(columnSizeIndex, border);\n }\n\n rows.forEach((row, index0) => {\n output += drawRow(row, border);\n\n if (!rowHeight) {\n rowHeight = rowSpanIndex[realRowIndex];\n\n realRowIndex++;\n }\n\n rowHeight--;\n\n if (!singleLine && rowHeight === 0 && index0 !== rowCount - 1 && drawHorizontalLine(realRowIndex, rowCount)) {\n output += drawBorderJoin(columnSizeIndex, border);\n }\n });\n\n if (drawHorizontalLine(realRowIndex, rowCount)) {\n output += drawBorderBottom(columnSizeIndex, border);\n }\n\n return output;\n};\n"],"file":"drawTable.js"}
|