@@ -10,6 +10,7 @@ import { Parser as FormulaParser } from "hot-formula-parser";
1010
1111import DefaultTable from "./Table" ;
1212import DefaultRow from "./Row" ;
13+ import DefaultHeaderRow from "./HeaderRow" ;
1314import DefaultCornerIndicator from "./CornerIndicator" ;
1415import DefaultColumnIndicator from "./ColumnIndicator" ;
1516import DefaultRowIndicator from "./RowIndicator" ;
@@ -80,6 +81,8 @@ export type Props<CellType extends Types.CellBase> = {
8081 Table ?: Types . TableComponent ;
8182 /** The Spreadsheet's row component. */
8283 Row ?: Types . RowComponent ;
84+ /** The spreadsheet's header row component */
85+ HeaderRow ?: Types . HeaderRowComponent ;
8386 /** The Spreadsheet's cell component. */
8487 Cell ?: Types . CellComponent < CellType > ;
8588 /** Component rendered for cells in view mode. */
@@ -127,6 +130,7 @@ const Spreadsheet = <CellType extends Types.CellBase>(
127130 onKeyDown,
128131 Table = DefaultTable ,
129132 Row = DefaultRow ,
133+ HeaderRow = DefaultHeaderRow ,
130134 CornerIndicator = DefaultCornerIndicator ,
131135 DataEditor = DefaultDataEditor ,
132136 DataViewer = DefaultDataViewer ,
@@ -400,7 +404,7 @@ const Spreadsheet = <CellType extends Types.CellBase>(
400404 const tableNode = React . useMemo (
401405 ( ) => (
402406 < Table columns = { size . columns } hideColumnIndicators = { hideColumnIndicators } >
403- < Row >
407+ < HeaderRow >
404408 { ! hideRowIndicators && ! hideColumnIndicators && < CornerIndicator /> }
405409 { ! hideColumnIndicators &&
406410 range ( size . columns ) . map ( ( columnNumber ) =>
@@ -418,9 +422,9 @@ const Spreadsheet = <CellType extends Types.CellBase>(
418422 < ColumnIndicator key = { columnNumber } column = { columnNumber } />
419423 )
420424 ) }
421- </ Row >
425+ </ HeaderRow >
422426 { range ( size . rows ) . map ( ( rowNumber ) => (
423- < Row key = { rowNumber } >
427+ < Row key = { rowNumber } row = { rowNumber } >
424428 { ! hideRowIndicators &&
425429 ( rowLabels ? (
426430 < RowIndicator
@@ -451,6 +455,7 @@ const Spreadsheet = <CellType extends Types.CellBase>(
451455 size . columns ,
452456 hideColumnIndicators ,
453457 Row ,
458+ HeaderRow ,
454459 hideRowIndicators ,
455460 CornerIndicator ,
456461 columnLabels ,
0 commit comments