alignTableData.js 900 Bytes
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;

var _stringWidth = _interopRequireDefault(require("string-width"));

var _alignString = _interopRequireDefault(require("./alignString"));

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

/**
 * @param {table~row[]} rows
 * @param {Object} config
 * @returns {table~row[]}
 */
const alignTableData = (rows, config) => {
  return rows.map(cells => {
    return cells.map((value, index1) => {
      const column = config.columns[index1];

      if ((0, _stringWidth.default)(value) === column.width) {
        return value;
      } else {
        return (0, _alignString.default)(value, column.width, column.alignment);
      }
    });
  });
};

var _default = alignTableData;
exports.default = _default;
//# sourceMappingURL=alignTableData.js.map