c4496b1377a7f9655e5a280f08978a8e.json 10 KB
{"ast":null,"code":"import * as React from 'react';\nimport HeaderRow from './HeaderRow';\nimport TableContext from '../context/TableContext';\n\nfunction parseHeaderRows(rootColumns) {\n  var rows = [];\n\n  function fillRowCells(columns, colIndex) {\n    var rowIndex = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0; // Init rows\n\n    rows[rowIndex] = rows[rowIndex] || [];\n    var currentColIndex = colIndex;\n    var colSpans = columns.filter(Boolean).map(function (column) {\n      var cell = {\n        key: column.key,\n        className: column.className || '',\n        children: column.title,\n        column: column,\n        colStart: currentColIndex\n      };\n      var colSpan = 1;\n      var subColumns = column.children;\n\n      if (subColumns && subColumns.length > 0) {\n        colSpan = fillRowCells(subColumns, currentColIndex, rowIndex + 1).reduce(function (total, count) {\n          return total + count;\n        }, 0);\n        cell.hasSubColumns = true;\n      }\n\n      if ('colSpan' in column) {\n        colSpan = column.colSpan;\n      }\n\n      if ('rowSpan' in column) {\n        cell.rowSpan = column.rowSpan;\n      }\n\n      cell.colSpan = colSpan;\n      cell.colEnd = cell.colStart + colSpan - 1;\n      rows[rowIndex].push(cell);\n      currentColIndex += colSpan;\n      return colSpan;\n    });\n    return colSpans;\n  } // Generate `rows` cell data\n\n\n  fillRowCells(rootColumns, 0); // Handle `rowSpan`\n\n  var rowCount = rows.length;\n\n  var _loop = function _loop(rowIndex) {\n    rows[rowIndex].forEach(function (cell) {\n      if (!('rowSpan' in cell) && !cell.hasSubColumns) {\n        // eslint-disable-next-line no-param-reassign\n        cell.rowSpan = rowCount - rowIndex;\n      }\n    });\n  };\n\n  for (var rowIndex = 0; rowIndex < rowCount; rowIndex += 1) {\n    _loop(rowIndex);\n  }\n\n  return rows;\n}\n\nfunction Header(_ref) {\n  var stickyOffsets = _ref.stickyOffsets,\n      columns = _ref.columns,\n      flattenColumns = _ref.flattenColumns,\n      onHeaderRow = _ref.onHeaderRow;\n\n  var _React$useContext = React.useContext(TableContext),\n      prefixCls = _React$useContext.prefixCls,\n      getComponent = _React$useContext.getComponent;\n\n  var rows = React.useMemo(function () {\n    return parseHeaderRows(columns);\n  }, [columns]);\n  var WrapperComponent = getComponent(['header', 'wrapper'], 'thead');\n  var trComponent = getComponent(['header', 'row'], 'tr');\n  var thComponent = getComponent(['header', 'cell'], 'th');\n  return React.createElement(WrapperComponent, {\n    className: \"\".concat(prefixCls, \"-thead\")\n  }, rows.map(function (row, rowIndex) {\n    var rowNode = React.createElement(HeaderRow, {\n      key: rowIndex,\n      flattenColumns: flattenColumns,\n      cells: row,\n      stickyOffsets: stickyOffsets,\n      rowComponent: trComponent,\n      cellComponent: thComponent,\n      onHeaderRow: onHeaderRow,\n      index: rowIndex\n    });\n    return rowNode;\n  }));\n}\n\nexport default Header;","map":{"version":3,"sources":["C:/Users/kkwan_000/Desktop/git/2017110269/minsung/node_modules/rc-table/es/Header/Header.js"],"names":["React","HeaderRow","TableContext","parseHeaderRows","rootColumns","rows","fillRowCells","columns","colIndex","rowIndex","arguments","length","undefined","currentColIndex","colSpans","filter","Boolean","map","column","cell","key","className","children","title","colStart","colSpan","subColumns","reduce","total","count","hasSubColumns","rowSpan","colEnd","push","rowCount","_loop","forEach","Header","_ref","stickyOffsets","flattenColumns","onHeaderRow","_React$useContext","useContext","prefixCls","getComponent","useMemo","WrapperComponent","trComponent","thComponent","createElement","concat","row","rowNode","cells","rowComponent","cellComponent","index"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport HeaderRow from './HeaderRow';\nimport TableContext from '../context/TableContext';\n\nfunction parseHeaderRows(rootColumns) {\n  var rows = [];\n\n  function fillRowCells(columns, colIndex) {\n    var rowIndex = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;\n    // Init rows\n    rows[rowIndex] = rows[rowIndex] || [];\n    var currentColIndex = colIndex;\n    var colSpans = columns.filter(Boolean).map(function (column) {\n      var cell = {\n        key: column.key,\n        className: column.className || '',\n        children: column.title,\n        column: column,\n        colStart: currentColIndex\n      };\n      var colSpan = 1;\n      var subColumns = column.children;\n\n      if (subColumns && subColumns.length > 0) {\n        colSpan = fillRowCells(subColumns, currentColIndex, rowIndex + 1).reduce(function (total, count) {\n          return total + count;\n        }, 0);\n        cell.hasSubColumns = true;\n      }\n\n      if ('colSpan' in column) {\n        colSpan = column.colSpan;\n      }\n\n      if ('rowSpan' in column) {\n        cell.rowSpan = column.rowSpan;\n      }\n\n      cell.colSpan = colSpan;\n      cell.colEnd = cell.colStart + colSpan - 1;\n      rows[rowIndex].push(cell);\n      currentColIndex += colSpan;\n      return colSpan;\n    });\n    return colSpans;\n  } // Generate `rows` cell data\n\n\n  fillRowCells(rootColumns, 0); // Handle `rowSpan`\n\n  var rowCount = rows.length;\n\n  var _loop = function _loop(rowIndex) {\n    rows[rowIndex].forEach(function (cell) {\n      if (!('rowSpan' in cell) && !cell.hasSubColumns) {\n        // eslint-disable-next-line no-param-reassign\n        cell.rowSpan = rowCount - rowIndex;\n      }\n    });\n  };\n\n  for (var rowIndex = 0; rowIndex < rowCount; rowIndex += 1) {\n    _loop(rowIndex);\n  }\n\n  return rows;\n}\n\nfunction Header(_ref) {\n  var stickyOffsets = _ref.stickyOffsets,\n      columns = _ref.columns,\n      flattenColumns = _ref.flattenColumns,\n      onHeaderRow = _ref.onHeaderRow;\n\n  var _React$useContext = React.useContext(TableContext),\n      prefixCls = _React$useContext.prefixCls,\n      getComponent = _React$useContext.getComponent;\n\n  var rows = React.useMemo(function () {\n    return parseHeaderRows(columns);\n  }, [columns]);\n  var WrapperComponent = getComponent(['header', 'wrapper'], 'thead');\n  var trComponent = getComponent(['header', 'row'], 'tr');\n  var thComponent = getComponent(['header', 'cell'], 'th');\n  return React.createElement(WrapperComponent, {\n    className: \"\".concat(prefixCls, \"-thead\")\n  }, rows.map(function (row, rowIndex) {\n    var rowNode = React.createElement(HeaderRow, {\n      key: rowIndex,\n      flattenColumns: flattenColumns,\n      cells: row,\n      stickyOffsets: stickyOffsets,\n      rowComponent: trComponent,\n      cellComponent: thComponent,\n      onHeaderRow: onHeaderRow,\n      index: rowIndex\n    });\n    return rowNode;\n  }));\n}\n\nexport default Header;"]},"metadata":{},"sourceType":"module"}