UNPKG

4.98 kBSource Map (JSON)View Raw
1{"version":3,"sources":["table/TableHeader.jsx"],"names":["getHeaderRows","columns","currentRow","rows","forEach","column","rowSpan","length","push","cell","key","className","children","title","tabIndex","colSpan","filter","row","TableHeader","props","table","components","prefixCls","showHeader","onHeaderRow","expander","fixed","renderExpandIndentCell","HeaderWrapper","header","wrapper","map","index","propTypes","PropTypes","string","array","isRequired","object","func","contextTypes","any"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport TableHeaderRow from './TableHeaderRow';\n\nfunction getHeaderRows(columns, currentRow = 0, rows) {\n rows = rows || [];\n rows[currentRow] = rows[currentRow] || [];\n\n columns.forEach(column => {\n if (column.rowSpan && rows.length < column.rowSpan) {\n while (rows.length < column.rowSpan) {\n rows.push([]);\n }\n }\n const cell = {\n key: column.key,\n className: column.className || '',\n children: column.title,\n tabIndex: -1,\n column,\n };\n if (column.children) {\n getHeaderRows(column.children, currentRow + 1, rows);\n }\n if ('colSpan' in column) {\n cell.colSpan = column.colSpan;\n }\n if ('rowSpan' in column) {\n cell.rowSpan = column.rowSpan;\n }\n if (cell.colSpan !== 0) {\n rows[currentRow].push(cell);\n }\n });\n return rows.filter(row => row.length > 0);\n}\n\nexport default function TableHeader(props, { table }) {\n const { components } = table;\n const { prefixCls, showHeader, onHeaderRow } = table.props;\n const { expander, columns, fixed } = props;\n\n if (!showHeader) {\n return null;\n }\n\n const rows = getHeaderRows(columns);\n\n expander.renderExpandIndentCell(rows, fixed);\n\n const HeaderWrapper = components.header.wrapper;\n\n return (\n <HeaderWrapper className={`${prefixCls}-thead`}>\n {\n rows.map((row, index) => (\n <TableHeaderRow\n key={index}\n index={index}\n fixed={fixed}\n columns={columns}\n rows={rows}\n row={row}\n components={components}\n onHeaderRow={onHeaderRow}\n />\n ))\n }\n </HeaderWrapper>\n );\n}\n\nTableHeader.propTypes = {\n fixed: PropTypes.string,\n columns: PropTypes.array.isRequired,\n expander: PropTypes.object.isRequired,\n onHeaderRow: PropTypes.func,\n};\n\nTableHeader.contextTypes = {\n table: PropTypes.any,\n};\n"],"file":"TableHeader.js"}
\No newline at end of file