@kanunilabs/datagrid-react / GridPinnedRowsProps
Interface: GridPinnedRowsProps<TRow>
Type Parameters
TRow
TRow = GridRowData
Properties
ariaRowBase
ariaRowBase:
number
Rows that precede this block in the ARIA row numbering: the header rows for a top block, plus the pinned-top rows and every data row for a bottom one.
A pinned row IS a row to a screen reader even though it is not one to the
row model, so it has to take a number in the same sequence — and the data
rows have to move down to make room. DataGrid does both from one count.
bandOffset?
optionalbandOffset?:number
Pixels of BAND rows above. Zero on a grid without column bands.
centerColumns
centerColumns:
ReactColumnRuntime<TRow>[]
centerIndices?
optionalcenterIndices?: readonlynumber[]
checkboxColumn?
optionalcheckboxColumn?:boolean
columnModel
columnModel:
ColumnModel<TRow>
detailColumn?
optionaldetailColumn?:boolean
gridId
gridId:
string
headerRowsBetween
headerRowsBetween:
number
How many header-height rows sit between this block and its sticky edge: above, the header (1) plus the filter row when shown (2); below, the footer row (1) or nothing (0).
A count rather than a pixel offset because the header's height is a THEME
token — --dg-header-height changes with the theme and the density, and a
number measured in JS at render time would be the previous theme's.
layout
layout:
ColumnLayout<TRow>
leadingSpacer
leadingSpacer:
number
rowHeight
rowHeight:
number
rowNumberColumn?
optionalrowNumberColumn?:boolean
Leading row-number column (gap analysis P3.5).
rows
rows: readonly
TRow[]
side
side:
"top"|"bottom"
Which edge — decides the sticky side and the border.
stickyInsets?
optionalstickyInsets?:ReadonlyMap<string,number>
trailingSpacer
trailingSpacer:
number