@gridkitjs/core v0.10.0
Last updated August 30, 2026
Minor Changes#
-
bedd76c:
virtualized: renders only the rows near the current scroll position rather than every row at once, for a dataset too large to mount in full. Requiresheightto be set — a body with no bounded height has no viewport to window rows against, and a dev-timeconsole.errorfires ifvirtualizedis on without it.<DataGridComponent columns={columns} dataSource={rows} height={400} virtualized />Row height is measured per row rather than assumed uniform, so
.is-wrappedcells and group header/summary rows (which differ in height from data rows) lay out correctly. Two new props tune it:overscan(rows rendered outside the visible range on each side, default4) andestimatedRowHeight(the assumed height for a row never yet measured, default40) — both meaningful only withvirtualizedon.scrollToRowand keyboard navigation (arrow keys,Home/End,Ctrl+Home/Ctrl+End) both work correctly when their target row isn't currently mounted: they scroll it into range first, using measured heights where known, then correct the exact position once it mounts and is measured.Fully orthogonal to
paginatedandgroupBy— combinable with either, though virtualizing an already-small paginated page is low-value.@gridkitjs/coregainsvisibleRange(plus itsRowHeights/VisibleRangetypes) — the pure range mathvirtualizedis built on. Not something most consumers need directly; it's exported for the same reasonpaginateRowsis.