25'ten fazla konu seçemezsiniz Konular bir harf veya rakamla başlamalı, kısa çizgiler ('-') içerebilir ve en fazla 35 karakter uzunluğunda olabilir.

3 yıl önce
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. 'use strict';
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. var _drawBorder = require('./drawBorder');
  6. var _drawRow = require('./drawRow');
  7. var _drawRow2 = _interopRequireDefault(_drawRow);
  8. function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
  9. /**
  10. * @param {Array} rows
  11. * @param {Object} border
  12. * @param {Array} columnSizeIndex
  13. * @param {Array} rowSpanIndex
  14. * @param {Function} drawHorizontalLine
  15. * @returns {string}
  16. */
  17. exports.default = (rows, border, columnSizeIndex, rowSpanIndex, drawHorizontalLine) => {
  18. let output;
  19. let realRowIndex;
  20. let rowHeight;
  21. const rowCount = rows.length;
  22. realRowIndex = 0;
  23. output = '';
  24. if (drawHorizontalLine(realRowIndex, rowCount)) {
  25. output += (0, _drawBorder.drawBorderTop)(columnSizeIndex, border);
  26. }
  27. rows.forEach((row, index0) => {
  28. output += (0, _drawRow2.default)(row, border);
  29. if (!rowHeight) {
  30. rowHeight = rowSpanIndex[realRowIndex];
  31. realRowIndex++;
  32. }
  33. rowHeight--;
  34. if (rowHeight === 0 && index0 !== rowCount - 1 && drawHorizontalLine(realRowIndex, rowCount)) {
  35. output += (0, _drawBorder.drawBorderJoin)(columnSizeIndex, border);
  36. }
  37. });
  38. if (drawHorizontalLine(realRowIndex, rowCount)) {
  39. output += (0, _drawBorder.drawBorderBottom)(columnSizeIndex, border);
  40. }
  41. return output;
  42. };