Sha256: 7e43197492620b10e2b1b60cbd3d6b9b5d41aaa873bac06c89661c2dee8a7ce4
Contents?: true
Size: 926 Bytes
Versions: 23
Compression:
Stored size: 926 Bytes
Contents
import _ from 'lodash'; import calculateCellHeight from './calculateCellHeight'; /** * Calculates the vertical row span index. * * @param {Array[]} rows * @param {Object} config * @returns {number[]} */ export default (rows, config) => { const tableWidth = rows[0].length; const rowSpanIndex = []; rows.forEach((cells) => { const cellHeightIndex = new Array(tableWidth).fill(1); cells.forEach((value, index1) => { if (!_.isNumber(config.columns[index1].width)) { throw new TypeError('column[index].width must be a number.'); } if (!_.isBoolean(config.columns[index1].wrapWord)) { throw new TypeError('column[index].wrapWord must be a boolean.'); } cellHeightIndex[index1] = calculateCellHeight(value, config.columns[index1].width, config.columns[index1].wrapWord); }); rowSpanIndex.push(_.max(cellHeightIndex)); }); return rowSpanIndex; };
Version data entries
23 entries across 23 versions & 1 rubygems