Comparing version 3.7.9 to 3.7.10
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: true | ||
}); | ||
var _isNumber2 = require('lodash/isNumber'); | ||
var _lodash = require('lodash'); | ||
var _isNumber3 = _interopRequireDefault(_isNumber2); | ||
var _lodash2 = _interopRequireDefault(_lodash); | ||
var _isString2 = require('lodash/isString'); | ||
var _isString3 = _interopRequireDefault(_isString2); | ||
var _floor2 = require('lodash/floor'); | ||
var _floor3 = _interopRequireDefault(_floor2); | ||
var _repeat2 = require('lodash/repeat'); | ||
var _repeat3 = _interopRequireDefault(_repeat2); | ||
var _stringWidth = require('string-width'); | ||
@@ -29,9 +17,4 @@ | ||
var alignCenter = void 0, | ||
alignLeft = void 0, | ||
alignRight = void 0, | ||
alignments = void 0; | ||
const alignments = ['left', 'right', 'center']; | ||
alignments = ['left', 'right', 'center']; | ||
/** | ||
@@ -42,4 +25,4 @@ * @param {string} subject | ||
*/ | ||
alignLeft = function alignLeft(subject, width) { | ||
return subject + (0, _repeat3.default)(' ', width); | ||
const alignLeft = (subject, width) => { | ||
return subject + _lodash2.default.repeat(' ', width); | ||
}; | ||
@@ -52,4 +35,4 @@ | ||
*/ | ||
alignRight = function alignRight(subject, width) { | ||
return (0, _repeat3.default)(' ', width) + subject; | ||
const alignRight = (subject, width) => { | ||
return _lodash2.default.repeat(' ', width) + subject; | ||
}; | ||
@@ -62,14 +45,14 @@ | ||
*/ | ||
alignCenter = function alignCenter(subject, width) { | ||
var halfWidth = void 0; | ||
const alignCenter = (subject, width) => { | ||
let halfWidth; | ||
halfWidth = width / 2; | ||
halfWidth = width / 2; | ||
if (halfWidth % 2 === 0) { | ||
return (0, _repeat3.default)(' ', halfWidth) + subject + (0, _repeat3.default)(' ', halfWidth); | ||
} else { | ||
halfWidth = (0, _floor3.default)(halfWidth); | ||
if (halfWidth % 2 === 0) { | ||
return _lodash2.default.repeat(' ', halfWidth) + subject + _lodash2.default.repeat(' ', halfWidth); | ||
} else { | ||
halfWidth = _lodash2.default.floor(halfWidth); | ||
return (0, _repeat3.default)(' ', halfWidth) + subject + (0, _repeat3.default)(' ', halfWidth + 1); | ||
} | ||
return _lodash2.default.repeat(' ', halfWidth) + subject + _lodash2.default.repeat(' ', halfWidth + 1); | ||
} | ||
}; | ||
@@ -87,48 +70,44 @@ | ||
exports.default = function (subject, containerWidth, alignment) { | ||
var availableWidth = void 0, | ||
subjectWidth = void 0; | ||
exports.default = (subject, containerWidth, alignment) => { | ||
if (!_lodash2.default.isString(subject)) { | ||
throw new Error('Subject parameter value must be a string.'); | ||
} | ||
if (!(0, _isString3.default)(subject)) { | ||
throw new Error('Subject parameter value must be a string.'); | ||
} | ||
if (!_lodash2.default.isNumber(containerWidth)) { | ||
throw new Error('Container width parameter value must be a number.'); | ||
} | ||
if (!(0, _isNumber3.default)(containerWidth)) { | ||
throw new Error('Container width parameter value must be a number.'); | ||
} | ||
const subjectWidth = (0, _stringWidth2.default)(subject); | ||
subjectWidth = (0, _stringWidth2.default)(subject); | ||
if (subjectWidth > containerWidth) { | ||
// console.log('subjectWidth', subjectWidth, 'containerWidth', containerWidth, 'subject', subject); | ||
if (subjectWidth > containerWidth) { | ||
// console.log('subjectWidth', subjectWidth, 'containerWidth', containerWidth, 'subject', subject); | ||
throw new Error('Subject parameter value width cannot be greater than the container width.'); | ||
} | ||
throw new Error('Subject parameter value width cannot be greater than the container width.'); | ||
} | ||
if (!_lodash2.default.isString(alignment)) { | ||
throw new Error('Alignment parameter value must be a string.'); | ||
} | ||
if (!(0, _isString3.default)(alignment)) { | ||
throw new Error('Alignment parameter value must be a string.'); | ||
} | ||
if (alignments.indexOf(alignment) === -1) { | ||
throw new Error('Alignment parameter value must be a known alignment parameter value (left, right, center).'); | ||
} | ||
if (alignments.indexOf(alignment) === -1) { | ||
throw new Error('Alignment parameter value must be a known alignment parameter value (left, right, center).'); | ||
} | ||
if (subjectWidth === 0) { | ||
return _lodash2.default.repeat(' ', containerWidth); | ||
} | ||
if (subjectWidth === 0) { | ||
return (0, _repeat3.default)(' ', containerWidth); | ||
} | ||
const availableWidth = containerWidth - subjectWidth; | ||
availableWidth = containerWidth - subjectWidth; | ||
if (alignment === 'left') { | ||
return alignLeft(subject, availableWidth); | ||
} | ||
if (alignment === 'left') { | ||
return alignLeft(subject, availableWidth); | ||
} | ||
if (alignment === 'right') { | ||
return alignRight(subject, availableWidth); | ||
} | ||
if (alignment === 'right') { | ||
return alignRight(subject, availableWidth); | ||
} | ||
return alignCenter(subject, availableWidth); | ||
return alignCenter(subject, availableWidth); | ||
}; | ||
module.exports = exports['default']; | ||
//# sourceMappingURL=alignString.js.map | ||
module.exports = exports['default']; |
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: true | ||
}); | ||
var _map2 = require('lodash/map'); | ||
var _lodash = require('lodash'); | ||
var _map3 = _interopRequireDefault(_map2); | ||
var _lodash2 = _interopRequireDefault(_lodash); | ||
var _stringWidth = require('string-width'); | ||
var _stringWidth2 = _interopRequireDefault(_stringWidth); | ||
var _alignString = require('./alignString'); | ||
@@ -15,6 +19,2 @@ | ||
var _stringWidth = require('string-width'); | ||
var _stringWidth2 = _interopRequireDefault(_stringWidth); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
@@ -25,22 +25,18 @@ | ||
* @param {Object} config | ||
* @return {table~row[]} | ||
* @returns {table~row[]} | ||
*/ | ||
exports.default = (rows, config) => { | ||
return _lodash2.default.map(rows, cells => { | ||
return _lodash2.default.map(cells, (value, index1) => { | ||
const column = config.columns[index1]; | ||
exports.default = function (rows, config) { | ||
return (0, _map3.default)(rows, function (cells) { | ||
return (0, _map3.default)(cells, function (value, index1) { | ||
var column = void 0; | ||
column = config.columns[index1]; | ||
if ((0, _stringWidth2.default)(value) === column.width) { | ||
return value; | ||
} else { | ||
return (0, _alignString2.default)(value, column.width, column.alignment); | ||
} | ||
}); | ||
if ((0, _stringWidth2.default)(value) === column.width) { | ||
return value; | ||
} else { | ||
return (0, _alignString2.default)(value, column.width, column.alignment); | ||
} | ||
}); | ||
}); | ||
}; | ||
module.exports = exports['default']; | ||
//# sourceMappingURL=alignTableData.js.map | ||
module.exports = exports['default']; |
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: true | ||
}); | ||
var _ceil2 = require('lodash/ceil'); | ||
var _lodash = require('lodash'); | ||
var _ceil3 = _interopRequireDefault(_ceil2); | ||
var _lodash2 = _interopRequireDefault(_lodash); | ||
var _isInteger2 = require('lodash/isInteger'); | ||
var _isInteger3 = _interopRequireDefault(_isInteger2); | ||
var _isString2 = require('lodash/isString'); | ||
var _isString3 = _interopRequireDefault(_isString2); | ||
var _stringWidth = require('string-width'); | ||
@@ -35,26 +27,24 @@ | ||
*/ | ||
exports.default = function (value, columnWidth) { | ||
var useWrapWord = arguments.length <= 2 || arguments[2] === undefined ? false : arguments[2]; | ||
let useWrapWord = arguments.length <= 2 || arguments[2] === undefined ? false : arguments[2]; | ||
if (!(0, _isString3.default)(value)) { | ||
throw new Error('Value must be a string.'); | ||
} | ||
if (!_lodash2.default.isString(value)) { | ||
throw new Error('Value must be a string.'); | ||
} | ||
if (!(0, _isInteger3.default)(columnWidth)) { | ||
throw new Error('Column width must be an integer.'); | ||
} | ||
if (!_lodash2.default.isInteger(columnWidth)) { | ||
throw new Error('Column width must be an integer.'); | ||
} | ||
if (columnWidth < 1) { | ||
throw new Error('Column width must be greater than 0.'); | ||
} | ||
if (columnWidth < 1) { | ||
throw new Error('Column width must be greater than 0.'); | ||
} | ||
if (useWrapWord) { | ||
return (0, _wrapWord2.default)(value, columnWidth).length; | ||
} | ||
if (useWrapWord) { | ||
return (0, _wrapWord2.default)(value, columnWidth).length; | ||
} | ||
return (0, _ceil3.default)((0, _stringWidth2.default)(value) / columnWidth); | ||
return _lodash2.default.ceil((0, _stringWidth2.default)(value) / columnWidth); | ||
}; | ||
module.exports = exports['default']; | ||
//# sourceMappingURL=calculateCellHeight.js.map | ||
module.exports = exports['default']; |
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: true | ||
}); | ||
var _map2 = require('lodash/map'); | ||
var _lodash = require('lodash'); | ||
var _map3 = _interopRequireDefault(_map2); | ||
var _lodash2 = _interopRequireDefault(_lodash); | ||
@@ -21,12 +21,10 @@ var _stringWidth = require('string-width'); | ||
* @param {string[]} cells | ||
* @return {number[]} | ||
* @returns {number[]} | ||
*/ | ||
exports.default = function (cells) { | ||
return (0, _map3.default)(cells, function (value) { | ||
return (0, _stringWidth2.default)(value); | ||
}); | ||
exports.default = cells => { | ||
return _lodash2.default.map(cells, value => { | ||
return (0, _stringWidth2.default)(value); | ||
}); | ||
}; | ||
module.exports = exports['default']; | ||
//# sourceMappingURL=calculateCellWidthIndex.js.map | ||
module.exports = exports['default']; |
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: true | ||
}); | ||
var _forEach2 = require('lodash/forEach'); | ||
var _lodash = require('lodash'); | ||
var _forEach3 = _interopRequireDefault(_forEach2); | ||
var _lodash2 = _interopRequireDefault(_lodash); | ||
var _fill2 = require('lodash/fill'); | ||
var _fill3 = _interopRequireDefault(_fill2); | ||
var _calculateCellWidthIndex = require('./calculateCellWidthIndex'); | ||
@@ -25,30 +21,24 @@ | ||
* @param {Array[]} rows | ||
* @return {number[]} | ||
* @returns {number[]} | ||
*/ | ||
exports.default = rows => { | ||
if (!rows[0]) { | ||
throw new Error('Dataset must have at least one row.'); | ||
} | ||
exports.default = function (rows) { | ||
var columns = void 0; | ||
const columns = _lodash2.default.fill(Array(rows[0].length), 0); | ||
if (!rows[0]) { | ||
throw new Error('Dataset must have at least one row.'); | ||
} | ||
_lodash2.default.forEach(rows, row => { | ||
const columnWidthIndex = (0, _calculateCellWidthIndex2.default)(row); | ||
columns = (0, _fill3.default)(Array(rows[0].length), 0); | ||
(0, _forEach3.default)(rows, function (row) { | ||
var columnWidthIndex = void 0; | ||
columnWidthIndex = (0, _calculateCellWidthIndex2.default)(row); | ||
(0, _forEach3.default)(columnWidthIndex, function (valueWidth, index0) { | ||
if (columns[index0] < valueWidth) { | ||
columns[index0] = valueWidth; | ||
} | ||
}); | ||
_lodash2.default.forEach(columnWidthIndex, (valueWidth, index0) => { | ||
if (columns[index0] < valueWidth) { | ||
columns[index0] = valueWidth; | ||
} | ||
}); | ||
}); | ||
return columns; | ||
return columns; | ||
}; | ||
module.exports = exports['default']; | ||
//# sourceMappingURL=calculateMaximumColumnWidthIndex.js.map | ||
module.exports = exports['default']; |
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: true | ||
}); | ||
var _max2 = require('lodash/max'); | ||
var _lodash = require('lodash'); | ||
var _max3 = _interopRequireDefault(_max2); | ||
var _lodash2 = _interopRequireDefault(_lodash); | ||
var _isBoolean2 = require('lodash/isBoolean'); | ||
var _isBoolean3 = _interopRequireDefault(_isBoolean2); | ||
var _isNumber2 = require('lodash/isNumber'); | ||
var _isNumber3 = _interopRequireDefault(_isNumber2); | ||
var _fill2 = require('lodash/fill'); | ||
var _fill3 = _interopRequireDefault(_fill2); | ||
var _forEach2 = require('lodash/forEach'); | ||
var _forEach3 = _interopRequireDefault(_forEach2); | ||
var _calculateCellHeight = require('./calculateCellHeight'); | ||
@@ -38,37 +22,30 @@ | ||
* @param {Object} config | ||
* @return {number[]} | ||
* @returns {number[]} | ||
*/ | ||
exports.default = (rows, config) => { | ||
const tableWidth = rows[0].length; | ||
exports.default = function (rows, config) { | ||
var rowSpanIndex = void 0, | ||
tableWidth = void 0; | ||
const rowSpanIndex = []; | ||
tableWidth = rows[0].length; | ||
_lodash2.default.forEach(rows, cells => { | ||
const cellHeightIndex = _lodash2.default.fill(Array(tableWidth), 1); | ||
rowSpanIndex = []; | ||
_lodash2.default.forEach(cells, (value, index1) => { | ||
if (!_lodash2.default.isNumber(config.columns[index1].width)) { | ||
throw new Error('column[index].width must be a number.'); | ||
} | ||
(0, _forEach3.default)(rows, function (cells) { | ||
var cellHeightIndex = void 0; | ||
if (!_lodash2.default.isBoolean(config.columns[index1].wrapWord)) { | ||
throw new Error('column[index].wrapWord must be a boolean.'); | ||
} | ||
cellHeightIndex = (0, _fill3.default)(Array(tableWidth), 1); | ||
cellHeightIndex[index1] = (0, _calculateCellHeight2.default)(value, config.columns[index1].width, config.columns[index1].wrapWord); | ||
}); | ||
(0, _forEach3.default)(cells, function (value, index1) { | ||
if (!(0, _isNumber3.default)(config.columns[index1].width)) { | ||
throw new Error('column[index].width must be a number.'); | ||
} | ||
rowSpanIndex.push(_lodash2.default.max(cellHeightIndex)); | ||
}); | ||
if (!(0, _isBoolean3.default)(config.columns[index1].wrapWord)) { | ||
throw new Error('column[index].wrapWord must be a boolean.'); | ||
} | ||
cellHeightIndex[index1] = (0, _calculateCellHeight2.default)(value, config.columns[index1].width, config.columns[index1].wrapWord); | ||
}); | ||
rowSpanIndex.push((0, _max3.default)(cellHeightIndex)); | ||
}); | ||
return rowSpanIndex; | ||
return rowSpanIndex; | ||
}; | ||
module.exports = exports['default']; | ||
//# sourceMappingURL=calculateRowHeightIndex.js.map | ||
module.exports = exports['default']; |
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: true | ||
}); | ||
var _mapValues2 = require('lodash/mapValues'); | ||
var _lodash = require('lodash'); | ||
var _mapValues3 = _interopRequireDefault(_mapValues2); | ||
var _lodash2 = _interopRequireDefault(_lodash); | ||
var _trimEnd2 = require('lodash/trimEnd'); | ||
var _trimEnd3 = _interopRequireDefault(_trimEnd2); | ||
var _map2 = require('lodash/map'); | ||
var _map3 = _interopRequireDefault(_map2); | ||
var _makeStreamConfig = require('./makeStreamConfig'); | ||
@@ -55,31 +47,21 @@ | ||
var append = void 0, | ||
create = void 0, | ||
prepareData = void 0; | ||
/** | ||
* @param {string[]} row | ||
* @param {number[]} columnWidthIndex | ||
* @param {Array} data | ||
* @param {Object} config | ||
* @returns {undefined} | ||
* @returns {Array} | ||
*/ | ||
create = function create(row, columnWidthIndex, config) { | ||
var body = void 0, | ||
output = void 0, | ||
rows = void 0; | ||
const prepareData = (data, config) => { | ||
let rows; | ||
rows = prepareData([row], config); | ||
rows = (0, _stringifyTableData2.default)(data); | ||
body = (0, _map3.default)(rows, function (literalRow) { | ||
return (0, _drawRow2.default)(literalRow, config.border); | ||
}).join(''); | ||
rows = (0, _truncateTableData2.default)(data, config); | ||
output = ''; | ||
output += (0, _drawBorder.drawBorderTop)(columnWidthIndex, config.border); | ||
output += body; | ||
output += (0, _drawBorder.drawBorderBottom)(columnWidthIndex, config.border); | ||
const rowHeightIndex = (0, _calculateRowHeightIndex2.default)(rows, config); | ||
output = (0, _trimEnd3.default)(output); | ||
rows = (0, _mapDataUsingRowHeightIndex2.default)(rows, rowHeightIndex, config); | ||
rows = (0, _alignTableData2.default)(rows, config); | ||
rows = (0, _padTableData2.default)(rows, config); | ||
process.stdout.write(output); | ||
return rows; | ||
}; | ||
@@ -93,45 +75,46 @@ | ||
*/ | ||
append = function append(row, columnWidthIndex, config) { | ||
var body = void 0, | ||
output = void 0, | ||
rows = void 0; | ||
const create = (row, columnWidthIndex, config) => { | ||
const rows = prepareData([row], config); | ||
rows = prepareData([row], config); | ||
const body = _lodash2.default.map(rows, literalRow => { | ||
return (0, _drawRow2.default)(literalRow, config.border); | ||
}).join(''); | ||
// console.log('rows', rows); | ||
let output; | ||
body = (0, _map3.default)(rows, function (literalRow) { | ||
return (0, _drawRow2.default)(literalRow, config.border); | ||
}).join(''); | ||
output = ''; | ||
output = '\r\x1b[K'; | ||
output += (0, _drawBorder.drawBorderJoin)(columnWidthIndex, config.border); | ||
output += body; | ||
output += (0, _drawBorder.drawBorderBottom)(columnWidthIndex, config.border); | ||
output += (0, _drawBorder.drawBorderTop)(columnWidthIndex, config.border); | ||
output += body; | ||
output += (0, _drawBorder.drawBorderBottom)(columnWidthIndex, config.border); | ||
output = (0, _trimEnd3.default)(output); | ||
output = _lodash2.default.trimEnd(output); | ||
process.stdout.write(output); | ||
process.stdout.write(output); | ||
}; | ||
/** | ||
* @param {Array} data | ||
* @param {string[]} row | ||
* @param {number[]} columnWidthIndex | ||
* @param {Object} config | ||
* @returns {Array} | ||
* @returns {undefined} | ||
*/ | ||
prepareData = function prepareData(data, config) { | ||
var rowHeightIndex = void 0, | ||
rows = void 0; | ||
const append = (row, columnWidthIndex, config) => { | ||
const rows = prepareData([row], config); | ||
rows = (0, _stringifyTableData2.default)(data); | ||
const body = _lodash2.default.map(rows, literalRow => { | ||
return (0, _drawRow2.default)(literalRow, config.border); | ||
}).join(''); | ||
rows = (0, _truncateTableData2.default)(data, config); | ||
let output; | ||
rowHeightIndex = (0, _calculateRowHeightIndex2.default)(rows, config); | ||
output = '\r\x1b[K'; | ||
rows = (0, _mapDataUsingRowHeightIndex2.default)(rows, rowHeightIndex, config); | ||
rows = (0, _alignTableData2.default)(rows, config); | ||
rows = (0, _padTableData2.default)(rows, config); | ||
output += (0, _drawBorder.drawBorderJoin)(columnWidthIndex, config.border); | ||
output += body; | ||
output += (0, _drawBorder.drawBorderBottom)(columnWidthIndex, config.border); | ||
return rows; | ||
output = _lodash2.default.trimEnd(output); | ||
process.stdout.write(output); | ||
}; | ||
@@ -141,42 +124,39 @@ | ||
* @param {Object} userConfig | ||
* @return {Object} | ||
* @returns {Object} | ||
*/ | ||
exports.default = function () { | ||
var userConfig = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0]; | ||
let userConfig = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0]; | ||
var columnWidthIndex = void 0, | ||
config = void 0, | ||
empty = void 0; | ||
const config = (0, _makeStreamConfig2.default)(userConfig); | ||
config = (0, _makeStreamConfig2.default)(userConfig); | ||
const columnWidthIndex = _lodash2.default.mapValues(config.columns, column => { | ||
return column.width + column.paddingLeft + column.paddingRight; | ||
}); | ||
columnWidthIndex = (0, _mapValues3.default)(config.columns, function (column) { | ||
return column.width + column.paddingLeft + column.paddingRight; | ||
}); | ||
let empty; | ||
empty = true; | ||
empty = true; | ||
return { | ||
/** | ||
* @param {string[]} row | ||
* @returns {undefined} | ||
*/ | ||
write: function write(row) { | ||
if (row.length !== config.columnCount) { | ||
throw new Error('Row cell count does not match the config.columnCount.'); | ||
} | ||
return { | ||
/** | ||
* @param {string[]} row | ||
* @returns {undefined} | ||
*/ | ||
write: row => { | ||
if (row.length !== config.columnCount) { | ||
throw new Error('Row cell count does not match the config.columnCount.'); | ||
} | ||
if (empty) { | ||
empty = false; | ||
if (empty) { | ||
empty = false; | ||
return create(row, columnWidthIndex, config); | ||
} else { | ||
return append(row, columnWidthIndex, config); | ||
} | ||
} | ||
}; | ||
return create(row, columnWidthIndex, config); | ||
} else { | ||
return append(row, columnWidthIndex, config); | ||
} | ||
} | ||
}; | ||
}; | ||
module.exports = exports['default']; | ||
//# sourceMappingURL=createStream.js.map | ||
module.exports = exports['default']; |
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: true | ||
}); | ||
exports.drawBorderBottom = exports.drawBorderJoin = exports.drawBorderTop = exports.drawBorder = undefined; | ||
exports.drawBorderTop = exports.drawBorderJoin = exports.drawBorderBottom = exports.drawBorder = undefined; | ||
var _repeat2 = require('lodash/repeat'); | ||
var _lodash = require('lodash'); | ||
var _repeat3 = _interopRequireDefault(_repeat2); | ||
var _lodash2 = _interopRequireDefault(_lodash); | ||
var _map2 = require('lodash/map'); | ||
var _map3 = _interopRequireDefault(_map2); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
var drawBorder = void 0, | ||
drawBorderBottom = void 0, | ||
drawBorderJoin = void 0, | ||
drawBorderTop = void 0; | ||
/** | ||
@@ -36,12 +27,8 @@ * @typedef drawBorder~parts | ||
*/ | ||
exports.drawBorder = drawBorder = function drawBorder(columnSizeIndex, parts) { | ||
var columns = void 0; | ||
const drawBorder = (columnSizeIndex, parts) => { | ||
const columns = _lodash2.default.map(columnSizeIndex, size => { | ||
return _lodash2.default.repeat(parts.body, size); | ||
}).join(parts.join); | ||
columns = (0, _map3.default)(columnSizeIndex, function (size) { | ||
return (0, _repeat3.default)(parts.body, size); | ||
}); | ||
columns = columns.join(parts.join); | ||
return parts.left + columns + parts.right + '\n'; | ||
return parts.left + columns + parts.right + '\n'; | ||
}; | ||
@@ -60,11 +47,11 @@ | ||
* @param {drawBorderTop~parts} parts | ||
* @return {string} | ||
* @returns {string} | ||
*/ | ||
exports.drawBorderTop = drawBorderTop = function drawBorderTop(columnSizeIndex, parts) { | ||
return drawBorder(columnSizeIndex, { | ||
left: parts.topLeft, | ||
right: parts.topRight, | ||
body: parts.topBody, | ||
join: parts.topJoin | ||
}); | ||
const drawBorderTop = (columnSizeIndex, parts) => { | ||
return drawBorder(columnSizeIndex, { | ||
body: parts.topBody, | ||
join: parts.topJoin, | ||
left: parts.topLeft, | ||
right: parts.topRight | ||
}); | ||
}; | ||
@@ -85,9 +72,9 @@ | ||
*/ | ||
exports.drawBorderJoin = drawBorderJoin = function drawBorderJoin(columnSizeIndex, parts) { | ||
return drawBorder(columnSizeIndex, { | ||
left: parts.joinLeft, | ||
right: parts.joinRight, | ||
body: parts.joinBody, | ||
join: parts.joinJoin | ||
}); | ||
const drawBorderJoin = (columnSizeIndex, parts) => { | ||
return drawBorder(columnSizeIndex, { | ||
body: parts.joinBody, | ||
join: parts.joinJoin, | ||
left: parts.joinLeft, | ||
right: parts.joinRight | ||
}); | ||
}; | ||
@@ -108,15 +95,14 @@ | ||
*/ | ||
exports.drawBorderBottom = drawBorderBottom = function drawBorderBottom(columnSizeIndex, parts) { | ||
return drawBorder(columnSizeIndex, { | ||
left: parts.bottomLeft, | ||
right: parts.bottomRight, | ||
body: parts.bottomBody, | ||
join: parts.bottomJoin | ||
}); | ||
const drawBorderBottom = (columnSizeIndex, parts) => { | ||
return drawBorder(columnSizeIndex, { | ||
body: parts.bottomBody, | ||
join: parts.bottomJoin, | ||
left: parts.bottomLeft, | ||
right: parts.bottomRight | ||
}); | ||
}; | ||
exports.drawBorder = drawBorder; | ||
exports.drawBorderTop = drawBorderTop; | ||
exports.drawBorderBottom = drawBorderBottom; | ||
exports.drawBorderJoin = drawBorderJoin; | ||
exports.drawBorderBottom = drawBorderBottom; | ||
//# sourceMappingURL=drawBorder.js.map | ||
exports.drawBorderTop = drawBorderTop; |
@@ -6,2 +6,3 @@ 'use strict'; | ||
}); | ||
/** | ||
@@ -17,10 +18,8 @@ * @typedef {Object} drawRow~border | ||
* @param {drawRow~border} border | ||
* @return {string} | ||
* @returns {string} | ||
*/ | ||
exports.default = function (columns, border) { | ||
exports.default = (columns, border) => { | ||
return border.bodyLeft + columns.join(border.bodyJoin) + border.bodyRight + '\n'; | ||
}; | ||
module.exports = exports['default']; | ||
//# sourceMappingURL=drawRow.js.map | ||
module.exports = exports['default']; |
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: true | ||
}); | ||
var _forEach2 = require('lodash/forEach'); | ||
var _lodash = require('lodash'); | ||
var _forEach3 = _interopRequireDefault(_forEach2); | ||
var _lodash2 = _interopRequireDefault(_lodash); | ||
@@ -27,43 +27,38 @@ var _drawBorder = require('./drawBorder'); | ||
*/ | ||
exports.default = (rows, border, columnSizeIndex, rowSpanIndex, drawHorizontalLine) => { | ||
let output, realRowIndex, rowHeight; | ||
exports.default = function (rows, border, columnSizeIndex, rowSpanIndex, drawHorizontalLine) { | ||
var output = void 0, | ||
realRowIndex = void 0, | ||
rowCount = void 0, | ||
rowHeight = void 0; | ||
const rowCount = rows.length; | ||
rowCount = rows.length; | ||
realRowIndex = 0; | ||
realRowIndex = 0; | ||
output = ''; | ||
output = ''; | ||
if (drawHorizontalLine(realRowIndex, rowCount)) { | ||
output += (0, _drawBorder.drawBorderTop)(columnSizeIndex, border); | ||
} | ||
if (drawHorizontalLine(realRowIndex, rowCount)) { | ||
output += (0, _drawBorder.drawBorderTop)(columnSizeIndex, border); | ||
} | ||
_lodash2.default.forEach(rows, (row, index0) => { | ||
output += (0, _drawRow2.default)(row, border); | ||
(0, _forEach3.default)(rows, function (row, index0) { | ||
output += (0, _drawRow2.default)(row, border); | ||
if (!rowHeight) { | ||
rowHeight = rowSpanIndex[realRowIndex]; | ||
if (!rowHeight) { | ||
rowHeight = rowSpanIndex[realRowIndex]; | ||
realRowIndex++; | ||
} | ||
realRowIndex++; | ||
} | ||
rowHeight--; | ||
rowHeight--; | ||
if (rowHeight === 0 && index0 !== rowCount - 1 && drawHorizontalLine(realRowIndex, rowCount)) { | ||
output += (0, _drawBorder.drawBorderJoin)(columnSizeIndex, border); | ||
} | ||
}); | ||
if (rowHeight === 0 && index0 !== rowCount - 1 && drawHorizontalLine(realRowIndex, rowCount)) { | ||
output += (0, _drawBorder.drawBorderJoin)(columnSizeIndex, border); | ||
} | ||
}); | ||
if (drawHorizontalLine(realRowIndex, rowCount)) { | ||
output += (0, _drawBorder.drawBorderBottom)(columnSizeIndex, border); | ||
} | ||
if (drawHorizontalLine(realRowIndex, rowCount)) { | ||
output += (0, _drawBorder.drawBorderBottom)(columnSizeIndex, border); | ||
} | ||
return output; | ||
return output; | ||
}; | ||
module.exports = exports['default']; | ||
//# sourceMappingURL=drawTable.js.map | ||
module.exports = exports['default']; |
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: true | ||
}); | ||
/* eslint-disable sorting/sort-object-props */ | ||
/* eslint-disable sort-keys */ | ||
/** | ||
@@ -31,100 +32,98 @@ * @typedef border | ||
*/ | ||
exports.default = name => { | ||
if (name === 'honeywell') { | ||
return { | ||
topBody: '═', | ||
topJoin: '╤', | ||
topLeft: '╔', | ||
topRight: '╗', | ||
exports.default = function (name) { | ||
if (name === 'honeywell') { | ||
return { | ||
topBody: '═', | ||
topJoin: '╤', | ||
topLeft: '╔', | ||
topRight: '╗', | ||
bottomBody: '═', | ||
bottomJoin: '╧', | ||
bottomLeft: '╚', | ||
bottomRight: '╝', | ||
bottomBody: '═', | ||
bottomJoin: '╧', | ||
bottomLeft: '╚', | ||
bottomRight: '╝', | ||
bodyLeft: '║', | ||
bodyRight: '║', | ||
bodyJoin: '│', | ||
bodyLeft: '║', | ||
bodyRight: '║', | ||
bodyJoin: '│', | ||
joinBody: '─', | ||
joinLeft: '╟', | ||
joinRight: '╢', | ||
joinJoin: '┼' | ||
}; | ||
} | ||
joinBody: '─', | ||
joinLeft: '╟', | ||
joinRight: '╢', | ||
joinJoin: '┼' | ||
}; | ||
} | ||
if (name === 'norc') { | ||
return { | ||
topBody: '─', | ||
topJoin: '┬', | ||
topLeft: '┌', | ||
topRight: '┐', | ||
if (name === 'norc') { | ||
return { | ||
topBody: '─', | ||
topJoin: '┬', | ||
topLeft: '┌', | ||
topRight: '┐', | ||
bottomBody: '─', | ||
bottomJoin: '┴', | ||
bottomLeft: '└', | ||
bottomRight: '┘', | ||
bottomBody: '─', | ||
bottomJoin: '┴', | ||
bottomLeft: '└', | ||
bottomRight: '┘', | ||
bodyLeft: '│', | ||
bodyRight: '│', | ||
bodyJoin: '│', | ||
bodyLeft: '│', | ||
bodyRight: '│', | ||
bodyJoin: '│', | ||
joinBody: '─', | ||
joinLeft: '├', | ||
joinRight: '┤', | ||
joinJoin: '┼' | ||
}; | ||
} | ||
joinBody: '─', | ||
joinLeft: '├', | ||
joinRight: '┤', | ||
joinJoin: '┼' | ||
}; | ||
} | ||
if (name === 'ramac') { | ||
return { | ||
topBody: '-', | ||
topJoin: '+', | ||
topLeft: '+', | ||
topRight: '+', | ||
if (name === 'ramac') { | ||
return { | ||
topBody: '-', | ||
topJoin: '+', | ||
topLeft: '+', | ||
topRight: '+', | ||
bottomBody: '-', | ||
bottomJoin: '+', | ||
bottomLeft: '+', | ||
bottomRight: '+', | ||
bottomBody: '-', | ||
bottomJoin: '+', | ||
bottomLeft: '+', | ||
bottomRight: '+', | ||
bodyLeft: '|', | ||
bodyRight: '|', | ||
bodyJoin: '|', | ||
bodyLeft: '|', | ||
bodyRight: '|', | ||
bodyJoin: '|', | ||
joinBody: '-', | ||
joinLeft: '|', | ||
joinRight: '|', | ||
joinJoin: '|' | ||
}; | ||
} | ||
joinBody: '-', | ||
joinLeft: '|', | ||
joinRight: '|', | ||
joinJoin: '|' | ||
}; | ||
} | ||
if (name === 'void') { | ||
return { | ||
topBody: '', | ||
topJoin: '', | ||
topLeft: '', | ||
topRight: '', | ||
if (name === 'void') { | ||
return { | ||
topBody: '', | ||
topJoin: '', | ||
topLeft: '', | ||
topRight: '', | ||
bottomBody: '', | ||
bottomJoin: '', | ||
bottomLeft: '', | ||
bottomRight: '', | ||
bottomBody: '', | ||
bottomJoin: '', | ||
bottomLeft: '', | ||
bottomRight: '', | ||
bodyLeft: '', | ||
bodyRight: '', | ||
bodyJoin: '', | ||
bodyLeft: '', | ||
bodyRight: '', | ||
bodyJoin: '', | ||
joinBody: '', | ||
joinLeft: '', | ||
joinRight: '', | ||
joinJoin: '' | ||
}; | ||
} | ||
joinBody: '', | ||
joinLeft: '', | ||
joinRight: '', | ||
joinJoin: '' | ||
}; | ||
} | ||
throw new Error('Unknown border template "${name}".'); | ||
throw new Error('Unknown border template "' + name + '".'); | ||
}; | ||
module.exports = exports['default']; | ||
//# sourceMappingURL=getBorderCharacters.js.map | ||
module.exports = exports['default']; |
@@ -24,3 +24,2 @@ 'use strict'; | ||
exports.getBorderCharacters = _getBorderCharacters2.default; | ||
exports.default = _table2.default; | ||
//# sourceMappingURL=index.js.map | ||
exports.default = _table2.default; |
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: true | ||
}); | ||
var _cloneDeep2 = require('lodash/cloneDeep'); | ||
var _lodash = require('lodash'); | ||
var _cloneDeep3 = _interopRequireDefault(_cloneDeep2); | ||
var _lodash2 = _interopRequireDefault(_lodash); | ||
var _isUndefined2 = require('lodash/isUndefined'); | ||
var _isUndefined3 = _interopRequireDefault(_isUndefined2); | ||
var _times2 = require('lodash/times'); | ||
var _times3 = _interopRequireDefault(_times2); | ||
var _assign2 = require('lodash/assign'); | ||
var _assign3 = _interopRequireDefault(_assign2); | ||
var _getBorderCharacters = require('./getBorderCharacters'); | ||
@@ -37,5 +25,2 @@ | ||
var makeBorder = void 0, | ||
makeColumns = void 0; | ||
/** | ||
@@ -47,6 +32,6 @@ * Merges user provided border characters with the default border ("honeywell") characters. | ||
*/ | ||
makeBorder = function makeBorder() { | ||
var border = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0]; | ||
const makeBorder = function makeBorder() { | ||
let border = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0]; | ||
return (0, _assign3.default)({}, (0, _getBorderCharacters2.default)('honeywell'), border); | ||
return _lodash2.default.assign({}, (0, _getBorderCharacters2.default)('honeywell'), border); | ||
}; | ||
@@ -63,26 +48,24 @@ | ||
*/ | ||
makeColumns = function makeColumns(rows) { | ||
var columns = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1]; | ||
var columnDefault = arguments.length <= 2 || arguments[2] === undefined ? {} : arguments[2]; | ||
const makeColumns = function makeColumns(rows) { | ||
let columns = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1]; | ||
let columnDefault = arguments.length <= 2 || arguments[2] === undefined ? {} : arguments[2]; | ||
var maximumColumnWidthIndex = void 0; | ||
const maximumColumnWidthIndex = (0, _calculateMaximumColumnWidthIndex2.default)(rows); | ||
maximumColumnWidthIndex = (0, _calculateMaximumColumnWidthIndex2.default)(rows); | ||
_lodash2.default.times(rows[0].length, index => { | ||
if (_lodash2.default.isUndefined(columns[index])) { | ||
columns[index] = {}; | ||
} | ||
(0, _times3.default)(rows[0].length, function (index) { | ||
if ((0, _isUndefined3.default)(columns[index])) { | ||
columns[index] = {}; | ||
} | ||
columns[index] = _lodash2.default.assign({ | ||
alignment: 'left', | ||
paddingLeft: 1, | ||
paddingRight: 1, | ||
truncate: Infinity, | ||
width: maximumColumnWidthIndex[index], | ||
wrapWord: false | ||
}, columnDefault, columns[index]); | ||
}); | ||
columns[index] = (0, _assign3.default)({ | ||
alignment: 'left', | ||
width: maximumColumnWidthIndex[index], | ||
wrapWord: false, | ||
truncate: Infinity, | ||
paddingLeft: 1, | ||
paddingRight: 1 | ||
}, columnDefault, columns[index]); | ||
}); | ||
return columns; | ||
return columns; | ||
}; | ||
@@ -100,26 +83,23 @@ | ||
exports.default = function (rows) { | ||
var userConfig = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1]; | ||
let userConfig = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1]; | ||
var config = void 0; | ||
(0, _validateConfig2.default)('config.json', userConfig); | ||
(0, _validateConfig2.default)(userConfig); | ||
const config = _lodash2.default.cloneDeep(userConfig); | ||
config = (0, _cloneDeep3.default)(userConfig); | ||
config.border = makeBorder(config.border); | ||
config.columns = makeColumns(rows, config.columns, config.columnDefault); | ||
config.border = makeBorder(config.border); | ||
config.columns = makeColumns(rows, config.columns, config.columnDefault); | ||
if (!config.drawHorizontalLine) { | ||
/** | ||
* @returns {boolean} | ||
*/ | ||
config.drawHorizontalLine = () => { | ||
return true; | ||
}; | ||
} | ||
if (!config.drawHorizontalLine) { | ||
/** | ||
* @returns {boolean} | ||
*/ | ||
config.drawHorizontalLine = function () { | ||
return true; | ||
}; | ||
} | ||
return config; | ||
return config; | ||
}; | ||
module.exports = exports['default']; | ||
//# sourceMappingURL=makeConfig.js.map | ||
module.exports = exports['default']; |
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: true | ||
}); | ||
var _cloneDeep2 = require('lodash/cloneDeep'); | ||
var _lodash = require('lodash'); | ||
var _cloneDeep3 = _interopRequireDefault(_cloneDeep2); | ||
var _lodash2 = _interopRequireDefault(_lodash); | ||
var _isUndefined2 = require('lodash/isUndefined'); | ||
var _isUndefined3 = _interopRequireDefault(_isUndefined2); | ||
var _times2 = require('lodash/times'); | ||
var _times3 = _interopRequireDefault(_times2); | ||
var _assign2 = require('lodash/assign'); | ||
var _assign3 = _interopRequireDefault(_assign2); | ||
var _getBorderCharacters = require('./getBorderCharacters'); | ||
@@ -27,11 +15,8 @@ | ||
var _validateStreamConfig = require('./validateStreamConfig'); | ||
var _validateConfig = require('./validateConfig'); | ||
var _validateStreamConfig2 = _interopRequireDefault(_validateStreamConfig); | ||
var _validateConfig2 = _interopRequireDefault(_validateConfig); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
var makeBorder = void 0, | ||
makeColumns = void 0; | ||
/** | ||
@@ -43,6 +28,6 @@ * Merges user provided border characters with the default border ("honeywell") characters. | ||
*/ | ||
makeBorder = function makeBorder() { | ||
var border = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0]; | ||
const makeBorder = function makeBorder() { | ||
let border = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0]; | ||
return (0, _assign3.default)({}, (0, _getBorderCharacters2.default)('honeywell'), border); | ||
return _lodash2.default.assign({}, (0, _getBorderCharacters2.default)('honeywell'), border); | ||
}; | ||
@@ -59,22 +44,21 @@ | ||
*/ | ||
makeColumns = function makeColumns(columnCount) { | ||
var columns = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1]; | ||
var columnDefault = arguments.length <= 2 || arguments[2] === undefined ? {} : arguments[2]; | ||
const makeColumns = function makeColumns(columnCount) { | ||
let columns = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1]; | ||
let columnDefault = arguments.length <= 2 || arguments[2] === undefined ? {} : arguments[2]; | ||
(0, _times3.default)(columnCount, function (index) { | ||
if ((0, _isUndefined3.default)(columns[index])) { | ||
columns[index] = {}; | ||
} | ||
_lodash2.default.times(columnCount, index => { | ||
if (_lodash2.default.isUndefined(columns[index])) { | ||
columns[index] = {}; | ||
} | ||
columns[index] = (0, _assign3.default)({ | ||
alignment: 'left', | ||
// width: columnDefault.width, | ||
wrapWord: false, | ||
truncate: Infinity, | ||
paddingLeft: 1, | ||
paddingRight: 1 | ||
}, columnDefault, columns[index]); | ||
}); | ||
columns[index] = _lodash2.default.assign({ | ||
alignment: 'left', | ||
paddingLeft: 1, | ||
paddingRight: 1, | ||
truncate: Infinity, | ||
wrapWord: false | ||
}, columnDefault, columns[index]); | ||
}); | ||
return columns; | ||
return columns; | ||
}; | ||
@@ -108,25 +92,22 @@ | ||
exports.default = function () { | ||
var userConfig = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0]; | ||
let userConfig = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0]; | ||
var config = void 0; | ||
(0, _validateConfig2.default)('streamConfig.json', userConfig); | ||
(0, _validateStreamConfig2.default)(userConfig); | ||
const config = _lodash2.default.cloneDeep(userConfig); | ||
config = (0, _cloneDeep3.default)(userConfig); | ||
if (!config.columnDefault || !config.columnDefault.width) { | ||
throw new Error('Must provide config.columnDefault.width when creating a stream.'); | ||
} | ||
if (!config.columnDefault || !config.columnDefault.width) { | ||
throw new Error('Must provide config.columnDefault.width when creating a stream.'); | ||
} | ||
if (!config.columnCount) { | ||
throw new Error('Must provide config.columnCount.'); | ||
} | ||
if (!config.columnCount) { | ||
throw new Error('Must provide config.columnCount.'); | ||
} | ||
config.border = makeBorder(config.border); | ||
config.columns = makeColumns(config.columnCount, config.columns, config.columnDefault); | ||
config.border = makeBorder(config.border); | ||
config.columns = makeColumns(config.columnCount, config.columns, config.columnDefault); | ||
return config; | ||
return config; | ||
}; | ||
module.exports = exports['default']; | ||
//# sourceMappingURL=makeStreamConfig.js.map | ||
module.exports = exports['default']; |
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: true | ||
}); | ||
var _flatten2 = require('lodash/flatten'); | ||
var _lodash = require('lodash'); | ||
var _flatten3 = _interopRequireDefault(_flatten2); | ||
var _lodash2 = _interopRequireDefault(_lodash); | ||
var _forEach2 = require('lodash/forEach'); | ||
var _forEach3 = _interopRequireDefault(_forEach2); | ||
var _fill2 = require('lodash/fill'); | ||
var _fill3 = _interopRequireDefault(_fill2); | ||
var _map2 = require('lodash/map'); | ||
var _map3 = _interopRequireDefault(_map2); | ||
var _wrapString = require('./wrapString'); | ||
@@ -37,51 +25,36 @@ | ||
* @param {Object} config | ||
* @return {Array} | ||
* @returns {Array} | ||
*/ | ||
exports.default = (unmappedRows, rowHeightIndex, config) => { | ||
const tableWidth = unmappedRows[0].length; | ||
exports.default = function (unmappedRows, rowHeightIndex, config) { | ||
var mappedRows = void 0, | ||
tableWidth = void 0; | ||
const mappedRows = _lodash2.default.map(unmappedRows, (cells, index0) => { | ||
const rowHeight = _lodash2.default.times(rowHeightIndex[index0], () => { | ||
return _lodash2.default.fill(Array(tableWidth), ''); | ||
}); | ||
tableWidth = unmappedRows[0].length; | ||
// rowHeight | ||
// [{row index within rowSaw; index2}] | ||
// [{cell index within a virtual row; index1}] | ||
// console.log('unmappedRows', unmappedRows, 'rowHeightIndex', rowHeightIndex, 'config', config, 'tableWidth', tableWidth); | ||
_lodash2.default.forEach(cells, (value, index1) => { | ||
let chunkedValue; | ||
mappedRows = (0, _map3.default)(unmappedRows, function (cells, index0) { | ||
var rowHeight = void 0; | ||
if (config.columns[index1].wrapWord) { | ||
chunkedValue = (0, _wrapWord2.default)(value, config.columns[index1].width); | ||
} else { | ||
chunkedValue = (0, _wrapString2.default)(value, config.columns[index1].width); | ||
} | ||
rowHeight = (0, _map3.default)(Array(rowHeightIndex[index0]), function () { | ||
return (0, _fill3.default)(Array(tableWidth), ''); | ||
}); | ||
_lodash2.default.forEach(chunkedValue, (part, index2) => { | ||
rowHeight[index2][index1] = part; | ||
}); | ||
}); | ||
// console.log('rowHeight', rowHeight); | ||
return rowHeight; | ||
}); | ||
// rowHeight | ||
// [{row index within rowSaw; index2}] | ||
// [{cell index within a virtual row; index1}] | ||
(0, _forEach3.default)(cells, function (value, index1) { | ||
var chunkedValue = void 0; | ||
if (config.columns[index1].wrapWord) { | ||
chunkedValue = (0, _wrapWord2.default)(value, config.columns[index1].width); | ||
} else { | ||
chunkedValue = (0, _wrapString2.default)(value, config.columns[index1].width); | ||
} | ||
// console.log('chunkedValue', chunkedValue.length, 'rowHeight', rowHeight.length); | ||
(0, _forEach3.default)(chunkedValue, function (part, index2) { | ||
// console.log(rowHeight[index2]); | ||
rowHeight[index2][index1] = part; | ||
}); | ||
}); | ||
return rowHeight; | ||
}); | ||
return (0, _flatten3.default)(mappedRows); | ||
return _lodash2.default.flatten(mappedRows); | ||
}; | ||
module.exports = exports['default']; | ||
//# sourceMappingURL=mapDataUsingRowHeightIndex.js.map | ||
module.exports = exports['default']; |
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: true | ||
}); | ||
var _repeat2 = require('lodash/repeat'); | ||
var _lodash = require('lodash'); | ||
var _repeat3 = _interopRequireDefault(_repeat2); | ||
var _lodash2 = _interopRequireDefault(_lodash); | ||
var _map2 = require('lodash/map'); | ||
var _map3 = _interopRequireDefault(_map2); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
@@ -20,18 +16,14 @@ | ||
* @param {Object} config | ||
* @return {table~row[]} | ||
* @returns {table~row[]} | ||
*/ | ||
exports.default = (rows, config) => { | ||
return _lodash2.default.map(rows, cells => { | ||
return _lodash2.default.map(cells, (value, index1) => { | ||
const column = config.columns[index1]; | ||
exports.default = function (rows, config) { | ||
return (0, _map3.default)(rows, function (cells) { | ||
return (0, _map3.default)(cells, function (value, index1) { | ||
var column = void 0; | ||
column = config.columns[index1]; | ||
return (0, _repeat3.default)(' ', column.paddingLeft) + value + (0, _repeat3.default)(' ', column.paddingRight); | ||
}); | ||
return _lodash2.default.repeat(' ', column.paddingLeft) + value + _lodash2.default.repeat(' ', column.paddingRight); | ||
}); | ||
}); | ||
}; | ||
module.exports = exports['default']; | ||
//# sourceMappingURL=padTableData.js.map | ||
module.exports = exports['default']; |
{ | ||
"id": "config.json", | ||
"$schema": "http://json-schema.org/draft-04/schema#", | ||
"type": "object", | ||
@@ -14,3 +16,3 @@ "properties": { | ||
"drawHorizontalLine": { | ||
"type": "function" | ||
"typeof": "function" | ||
} | ||
@@ -17,0 +19,0 @@ }, |
{ | ||
"id": "streamConfig.json", | ||
"$schema": "http://json-schema.org/draft-04/schema#", | ||
"type": "object", | ||
@@ -3,0 +5,0 @@ "properties": { |
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: true | ||
}); | ||
var _map2 = require('lodash/map'); | ||
var _lodash = require('lodash'); | ||
var _map3 = _interopRequireDefault(_map2); | ||
var _lodash2 = _interopRequireDefault(_lodash); | ||
@@ -17,12 +17,10 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
* @param {table~row[]} rows | ||
* @return {table~row[]} | ||
* @returns {table~row[]} | ||
*/ | ||
exports.default = function (rows) { | ||
return (0, _map3.default)(rows, function (cells) { | ||
return (0, _map3.default)(cells, String); | ||
}); | ||
exports.default = rows => { | ||
return _lodash2.default.map(rows, cells => { | ||
return _lodash2.default.map(cells, String); | ||
}); | ||
}; | ||
module.exports = exports['default']; | ||
//# sourceMappingURL=stringifyTableData.js.map | ||
module.exports = exports['default']; |
@@ -93,3 +93,3 @@ 'use strict'; | ||
* @param {number} size | ||
* @return {boolean} | ||
* @returns {boolean} | ||
*/ | ||
@@ -110,12 +110,8 @@ | ||
* @param {table~config} userConfig | ||
* @return {string} | ||
* @returns {string} | ||
*/ | ||
exports.default = function (data) { | ||
var userConfig = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1]; | ||
let userConfig = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1]; | ||
var cellWidthIndex = void 0, | ||
config = void 0, | ||
rowHeightIndex = void 0, | ||
rows = void 0; | ||
let rows; | ||
@@ -126,7 +122,7 @@ (0, _validateTableData2.default)(data); | ||
config = (0, _makeConfig2.default)(rows, userConfig); | ||
const config = (0, _makeConfig2.default)(rows, userConfig); | ||
rows = (0, _truncateTableData2.default)(data, config); | ||
rowHeightIndex = (0, _calculateRowHeightIndex2.default)(rows, config); | ||
const rowHeightIndex = (0, _calculateRowHeightIndex2.default)(rows, config); | ||
@@ -137,3 +133,3 @@ rows = (0, _mapDataUsingRowHeightIndex2.default)(rows, rowHeightIndex, config); | ||
cellWidthIndex = (0, _calculateCellWidthIndex2.default)(rows[0]); | ||
const cellWidthIndex = (0, _calculateCellWidthIndex2.default)(rows[0]); | ||
@@ -143,3 +139,2 @@ return (0, _drawTable2.default)(rows, config.border, cellWidthIndex, rowHeightIndex, config.drawHorizontalLine); | ||
module.exports = exports['default']; | ||
//# sourceMappingURL=table.js.map | ||
module.exports = exports['default']; |
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: true | ||
}); | ||
var _truncate2 = require('lodash/truncate'); | ||
var _lodash = require('lodash'); | ||
var _truncate3 = _interopRequireDefault(_truncate2); | ||
var _lodash2 = _interopRequireDefault(_lodash); | ||
var _map2 = require('lodash/map'); | ||
var _map3 = _interopRequireDefault(_map2); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
@@ -21,16 +17,14 @@ | ||
* @param {Object} config | ||
* @return {table~row[]} | ||
* @returns {table~row[]} | ||
*/ | ||
exports.default = function (rows, config) { | ||
return (0, _map3.default)(rows, function (cells) { | ||
return (0, _map3.default)(cells, function (content, index) { | ||
return (0, _truncate3.default)(content, { | ||
length: config.columns[index].truncate | ||
}); | ||
}); | ||
exports.default = (rows, config) => { | ||
return _lodash2.default.map(rows, cells => { | ||
return _lodash2.default.map(cells, (content, index) => { | ||
return _lodash2.default.truncate(content, { | ||
length: config.columns[index].truncate | ||
}); | ||
}); | ||
}); | ||
}; | ||
module.exports = exports['default']; | ||
//# sourceMappingURL=truncateTableData.js.map | ||
module.exports = exports['default']; |
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: true | ||
}); | ||
var _ajv = require('ajv'); | ||
var _ajv2 = _interopRequireDefault(_ajv); | ||
var _ajvKeywords = require('ajv-keywords'); | ||
var _ajvKeywords2 = _interopRequireDefault(_ajvKeywords); | ||
var _config = require('./schemas/config.json'); | ||
@@ -11,17 +19,19 @@ | ||
var _tv = require('tv4'); | ||
var _streamConfig = require('./schemas/streamConfig.json'); | ||
var _tv2 = _interopRequireDefault(_tv); | ||
var _streamConfig2 = _interopRequireDefault(_streamConfig); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
/** | ||
* @typedef {string} cell | ||
*/ | ||
const ajv = new _ajv2.default({ | ||
allErrors: true | ||
}); | ||
/** | ||
* @typedef {cell[]} validateData~column | ||
*/ | ||
(0, _ajvKeywords2.default)(ajv, 'typeof'); | ||
ajv.addSchema(_config2.default); | ||
ajv.addSchema(_streamConfig2.default); | ||
/** | ||
* @param {string} schemaId | ||
* @param {formatData~config} config | ||
@@ -31,25 +41,24 @@ * @returns {undefined} | ||
exports.default = function () { | ||
var config = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0]; | ||
exports.default = function (schemaId) { | ||
let config = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1]; | ||
var result = void 0; | ||
if (!ajv.validate(schemaId, config)) { | ||
const errors = ajv.errors.map(error => { | ||
return { | ||
dataPath: error.dataPath, | ||
message: error.message, | ||
params: error.params, | ||
schemaPath: error.schemaPath | ||
}; | ||
}); | ||
result = _tv2.default.validateResult(config, _config2.default); | ||
/* eslint-disable no-console */ | ||
console.log('config', config); | ||
console.log('errors', errors); | ||
/* eslint-enable no-console */ | ||
if (!result.valid) { | ||
/* eslint-disable no-console */ | ||
console.log('config', config); | ||
console.log('error', { | ||
message: result.error.message, | ||
params: result.error.params, | ||
dataPath: result.error.dataPath, | ||
schemaPath: result.error.schemaPath | ||
}); | ||
/* eslint-enable no-console */ | ||
throw new Error('Invalid config.'); | ||
} | ||
throw new Error('Invalid config.'); | ||
} | ||
}; | ||
module.exports = exports['default']; | ||
//# sourceMappingURL=validateConfig.js.map | ||
module.exports = exports['default']; |
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: true | ||
}); | ||
var _forEach2 = require('lodash/forEach'); | ||
var _lodash = require('lodash'); | ||
var _forEach3 = _interopRequireDefault(_forEach2); | ||
var _lodash2 = _interopRequireDefault(_lodash); | ||
var _isArray2 = require('lodash/isArray'); | ||
var _isArray3 = _interopRequireDefault(_isArray2); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
@@ -29,40 +25,36 @@ | ||
*/ | ||
exports.default = rows => { | ||
if (!_lodash2.default.isArray(rows)) { | ||
throw new Error('Table data must be an array.'); | ||
} | ||
exports.default = function (rows) { | ||
var columnNumber = void 0; | ||
if (rows.length === 0) { | ||
throw new Error('Table must define at least one row.'); | ||
} | ||
if (!(0, _isArray3.default)(rows)) { | ||
throw new Error('Table data must be an array.'); | ||
} | ||
if (rows[0].length === 0) { | ||
throw new Error('Table must define at least one column.'); | ||
} | ||
if (rows.length === 0) { | ||
throw new Error('Table must define at least one row.'); | ||
const columnNumber = rows[0].length; | ||
_lodash2.default.forEach(rows, cells => { | ||
if (!_lodash2.default.isArray(cells)) { | ||
throw new Error('Table row data must be an array.'); | ||
} | ||
if (rows[0].length === 0) { | ||
throw new Error('Table must define at least one column.'); | ||
if (cells.length !== columnNumber) { | ||
throw new Error('Table must have a consistent number of cells.'); | ||
} | ||
columnNumber = rows[0].length; | ||
(0, _forEach3.default)(rows, function (cells) { | ||
if (!(0, _isArray3.default)(cells)) { | ||
throw new Error('Table row data must be an array.'); | ||
} | ||
if (cells.length !== columnNumber) { | ||
throw new Error('Table must have a consistent number of cells.'); | ||
} | ||
// @todo Make an exception for newline characters. | ||
// @see https://github.com/gajus/table/issues/9 | ||
(0, _forEach3.default)(cells, function (cell) { | ||
if (/[\x01-\x1A]/.test(cell)) { | ||
throw new Error('Table data must not contain control characters.'); | ||
} | ||
}); | ||
// @todo Make an exception for newline characters. | ||
// @see https://github.com/gajus/table/issues/9 | ||
_lodash2.default.forEach(cells, cell => { | ||
if (/[\x01-\x1A]/.test(cell)) { | ||
throw new Error('Table data must not contain control characters.'); | ||
} | ||
}); | ||
}); | ||
}; | ||
module.exports = exports['default']; | ||
//# sourceMappingURL=validateTableData.js.map | ||
module.exports = exports['default']; |
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: true | ||
}); | ||
var _trim2 = require('lodash/trim'); | ||
var _lodash = require('lodash'); | ||
var _trim3 = _interopRequireDefault(_trim2); | ||
var _lodash2 = _interopRequireDefault(_lodash); | ||
@@ -32,21 +32,18 @@ var _sliceAnsi = require('slice-ansi'); | ||
*/ | ||
exports.default = (subject, size) => { | ||
let subjectSlice; | ||
exports.default = function (subject, size) { | ||
var chunks = void 0, | ||
subjectSlice = void 0; | ||
subjectSlice = subject; | ||
subjectSlice = subject; | ||
const chunks = []; | ||
chunks = []; | ||
do { | ||
chunks.push((0, _sliceAnsi2.default)(subjectSlice, 0, size)); | ||
do { | ||
chunks.push((0, _sliceAnsi2.default)(subjectSlice, 0, size)); | ||
subjectSlice = _lodash2.default.trim((0, _sliceAnsi2.default)(subjectSlice, size)); | ||
} while ((0, _stringWidth2.default)(subjectSlice)); | ||
subjectSlice = (0, _trim3.default)((0, _sliceAnsi2.default)(subjectSlice, size)); | ||
} while ((0, _stringWidth2.default)(subjectSlice)); | ||
return chunks; | ||
return chunks; | ||
}; | ||
module.exports = exports['default']; | ||
//# sourceMappingURL=wrapString.js.map | ||
module.exports = exports['default']; |
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: true | ||
}); | ||
var _trim2 = require('lodash/trim'); | ||
var _lodash = require('lodash'); | ||
var _trim3 = _interopRequireDefault(_trim2); | ||
var _lodash2 = _interopRequireDefault(_lodash); | ||
@@ -26,39 +26,34 @@ var _sliceAnsi = require('slice-ansi'); | ||
*/ | ||
exports.default = (input, size) => { | ||
let subject; | ||
exports.default = function (input, size) { | ||
var chunk = void 0, | ||
chunks = void 0, | ||
re = void 0, | ||
subject = void 0; | ||
subject = input; | ||
subject = input; | ||
const chunks = []; | ||
chunks = []; | ||
// https://regex101.com/r/gY5kZ1/1 | ||
const re = new RegExp('(^.{1,' + size + '}(\\s+|$))|(^.{1,' + (size - 1) + '}(\\\\|/|_|\\.|,|;|-))'); | ||
// https://regex101.com/r/gY5kZ1/1 | ||
re = new RegExp('(^.{1,' + size + '}(\\s+|$))|(^.{1,' + (size - 1) + '}(\\\\|/|_|\\.|,|;|\-))'); | ||
do { | ||
let chunk; | ||
do { | ||
chunk = subject.match(re); | ||
chunk = subject.match(re); | ||
// console.log('chunk', chunk, re); | ||
if (chunk) { | ||
chunk = chunk[0]; | ||
if (chunk) { | ||
chunk = chunk[0]; | ||
subject = (0, _sliceAnsi2.default)(subject, (0, _stringWidth2.default)(chunk)); | ||
subject = (0, _sliceAnsi2.default)(subject, (0, _stringWidth2.default)(chunk)); | ||
chunk = _lodash2.default.trim(chunk); | ||
} else { | ||
chunk = (0, _sliceAnsi2.default)(subject, 0, size); | ||
subject = (0, _sliceAnsi2.default)(subject, size); | ||
} | ||
chunk = (0, _trim3.default)(chunk); | ||
} else { | ||
chunk = (0, _sliceAnsi2.default)(subject, 0, size); | ||
subject = (0, _sliceAnsi2.default)(subject, size); | ||
} | ||
chunks.push(chunk); | ||
} while ((0, _stringWidth2.default)(subject)); | ||
chunks.push(chunk); | ||
} while ((0, _stringWidth2.default)(subject)); | ||
return chunks; | ||
return chunks; | ||
}; | ||
module.exports = exports['default']; | ||
//# sourceMappingURL=wrapWord.js.map | ||
module.exports = exports['default']; |
@@ -8,14 +8,21 @@ { | ||
"dependencies": { | ||
"ajv": "^4.7.0", | ||
"ajv-keywords": "^1.0.0", | ||
"chalk": "^1.1.1", | ||
"lodash": "^4.0.0", | ||
"slice-ansi": "0.0.4", | ||
"string-width": "^1.0.1", | ||
"tv4": "^1.2.7" | ||
"string-width": "^1.0.1" | ||
}, | ||
"description": "Formats data into a string table.", | ||
"devDependencies": { | ||
"babel": "^6.5.2", | ||
"babel-cli": "^6.14.0", | ||
"babel-plugin-add-module-exports": "^0.2.1", | ||
"babel-preset-es2015-node4": "^2.1.0", | ||
"babel-register": "^6.14.0", | ||
"chai": "^3.4.1", | ||
"eslint": "^3.5.0", | ||
"eslint-config-canonical": "^1.8.6", | ||
"gitdown": "^2.4.0", | ||
"jsonlint": "^1.6.2", | ||
"pragmatist": "^3.0.2", | ||
"mocha": "^3.0.2", | ||
"sinon": "^1.17.2" | ||
@@ -38,11 +45,8 @@ }, | ||
"scripts": { | ||
"build": "npm run pragmatist build -- --es5", | ||
"format-config": "npm run format-json ./package.json", | ||
"format-json": "jsonlint --sort-keys --in-place --indent ' '", | ||
"lint": "npm run pragmatist lint", | ||
"pragmatist": "pragmatist", | ||
"build": "babel --copy-files ./src --out-dir ./dist", | ||
"lint": "eslint ./src ./tests", | ||
"readme": "gitdown ./.README/README.md --output-file ./README.md", | ||
"test": "npm run pragmatist test" | ||
"test": "mocha --compilers js:babel-register" | ||
}, | ||
"version": "3.7.9" | ||
"version": "3.7.10" | ||
} |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
150492
77
2553
6
11
+ Addedajv@^4.7.0
+ Addedajv-keywords@^1.0.0
+ Addedajv@4.11.8(transitive)
+ Addedajv-keywords@1.5.1(transitive)
+ Addedcall-bind@1.0.7(transitive)
+ Addedco@4.6.0(transitive)
+ Addeddefine-data-property@1.1.4(transitive)
+ Addedes-define-property@1.0.0(transitive)
+ Addedes-errors@1.3.0(transitive)
+ Addedfunction-bind@1.1.2(transitive)
+ Addedget-intrinsic@1.2.4(transitive)
+ Addedgopd@1.0.1(transitive)
+ Addedhas-property-descriptors@1.0.2(transitive)
+ Addedhas-proto@1.0.3(transitive)
+ Addedhas-symbols@1.0.3(transitive)
+ Addedhasown@2.0.2(transitive)
+ Addedisarray@2.0.5(transitive)
+ Addedjson-stable-stringify@1.1.1(transitive)
+ Addedjsonify@0.0.1(transitive)
+ Addedobject-keys@1.1.1(transitive)
+ Addedset-function-length@1.2.2(transitive)
- Removedtv4@^1.2.7
- Removedtv4@1.3.0(transitive)