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) => {
11 throw new Error('Can not draw header without header configuration');
13 const { alignment, paddingRight, paddingLeft, wrapWord } = config.header;
14 let { content } = config.header;
15 content = (0, truncateTableData_1.truncateString)(content, config.header.truncate);
16 const headerLines = (0, wrapCell_1.wrapCell)(content, width, wrapWord);
17 return headerLines.map((headerLine) => {
18 let line = (0, alignString_1.alignString)(headerLine, width, alignment);
19 line = (0, padTableData_1.padString)(line, paddingLeft, paddingRight);
20 return (0, drawRow_1.drawRow)([line], {
22 drawVerticalLine: (index) => {
23 const columnCount = config.columns.length;
24 return config.drawVerticalLine(index === 0 ? 0 : columnCount, columnCount);
29 exports.drawHeader = drawHeader;
30 //# sourceMappingURL=drawHeader.js.map