Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
68 commits
Select commit Hold shift + click to select a range
4bacfc3
Renamed properties (eg. rowsCount to rowCount)
bvaughn Apr 29, 2016
7e9786e
Updated Collection :onSectionRendered signature to pass a named :indi…
bvaughn Apr 29, 2016
adbdfab
Updated signature for Collection's :cellRendered from (index: number)…
bvaughn Apr 29, 2016
245badd
Updated additional Collection methods to use named arguments.
bvaughn Apr 29, 2016
711a764
Updated FlexColumn :cellDataGetter to use named parameters. Added Flo…
bvaughn Apr 29, 2016
59336a4
Updated signature for VirtualScroll's :rowRenderer
bvaughn Apr 29, 2016
59f2cdf
Updated signature of VirtualScroll's :rowHeight function.
bvaughn Apr 29, 2016
d2764be
Functional changes to FlexTable#sort for named parameters
MikeMcElroy Apr 29, 2016
7ef3a36
FlexTable#sort docs
MikeMcElroy Apr 29, 2016
f67fb80
Updated signature of InfiniteLoader's :isRowLoaded.
bvaughn Apr 29, 2016
f3a7c5f
Changes to example.js for FlexTable#sort
MikeMcElroy Apr 29, 2016
fa795a4
Merge remote-tracking branch 'upstream/version-7' into version-7-helping
MikeMcElroy Apr 29, 2016
276356f
Functional/Testing changes for :rowHeight using named parameters acro…
MikeMcElroy Apr 29, 2016
fd1c1aa
Docs changes for :rowHeight using named parameters
MikeMcElroy Apr 29, 2016
43abf6b
Functional/Testing changes for rowDataGetter to use named parameters
MikeMcElroy Apr 29, 2016
220536f
Docs changes for rowDataGetter to use named parameters
MikeMcElroy Apr 29, 2016
a94eab9
Merge pull request #207 from MikeMcElroy/version-7-helping
bvaughn Apr 29, 2016
9d35bc8
Renamed FlexTable's sort() param from :dataKey to :sortBy
bvaughn Apr 29, 2016
82a7332
Updated Grid :columnWidth signature
bvaughn Apr 29, 2016
c7f39a9
Updated FlexTable's :rowClassName function signature from (index: num…
bvaughn Apr 29, 2016
9c5c8e1
Updated FlexTable :onRowClick signature from (index: number): void to…
bvaughn Apr 29, 2016
cccd365
Fixed a regression in ArrowKeyStepper and AutoSizer examples
bvaughn Apr 29, 2016
52f9675
Updated FlexTable's :onHeaderClick signature from to
bvaughn Apr 29, 2016
d4d4108
Updated signature of FlexColumn's :cellRenderer from to
bvaughn Apr 29, 2016
37a1d75
Docs/comment tweak
bvaughn Apr 29, 2016
3631cd0
Merge branch 'master' into version-7
bvaughn Apr 29, 2016
5152512
Added a codemod for renaming v6 to v7 properties
bvaughn Apr 30, 2016
7fcd6c2
Added CellSizeAndPositionManager utility for JIT calculating sizes an…
bvaughn May 2, 2016
9d23860
Added tests for CellSizeAndPositionManager
bvaughn May 2, 2016
6afe36b
fixed test
bvaughn May 2, 2016
d1a6e7f
Merge pull request #209 from bvaughn/version-7-jit
bvaughn May 2, 2016
4ec5423
Initial pass at CellMeasurer HOC; no tests yet
bvaughn May 3, 2016
84f56a6
Merge branch 'version-7' of github.com:bvaughn/react-virtualized into…
bvaughn May 3, 2016
fb3d29f
Renamed a method and replaced some vars with lets.
bvaughn May 3, 2016
f448501
Added playground files for Chat
bvaughn May 3, 2016
bd8ba79
Chat demo is full screen now
bvaughn May 3, 2016
015a27a
Chat remeasures on resize
bvaughn May 3, 2016
2980c94
Added CellMeasurer tests.
bvaughn May 4, 2016
e4ddab0
Avoid querying cell for :clientWidth or :clientHeight unless needed
bvaughn May 4, 2016
ff0fbac
Merged master
bvaughn May 5, 2016
0283842
Added better bounds checking to CellSizeAndPositionManager to fix an …
bvaughn May 5, 2016
b63c640
Merged master
bvaughn May 7, 2016
66d51ff
Cells are now cached during scroll to reduce unnecessary renders. Cac…
bvaughn May 7, 2016
a8cf803
cell renderers are now passed :isScrolling parameter
bvaughn May 7, 2016
f971c5c
Added v7 changelog entry
bvaughn May 7, 2016
8ae76b3
Changed cell cache to Object instead of Map. Added comments.
bvaughn May 7, 2016
e32a4b2
Udpated playground files to v7 syntax
bvaughn May 7, 2016
d15fa15
Added better docs for cellRangeRenderer
bvaughn May 7, 2016
2cf9d32
docs/comment tweak for Grid
bvaughn May 7, 2016
c5cfcb9
Added docs for `CellMeasurer`
bvaughn May 7, 2016
0d26e34
Increase warning tone for CellMeasurer docs
bvaughn May 7, 2016
639c3ec
Added :isScrolling param to Collection's :cellRenderer. Added test co…
bvaughn May 8, 2016
4d8167b
Merged master
bvaughn May 8, 2016
32a5ba3
Split FlexColumn default renderers into separate files so the docs co…
bvaughn May 8, 2016
6c1961f
Updated FlexTable demo/example to show header-hiding functionality
bvaughn May 8, 2016
1118db0
Docs tweak
bvaughn May 8, 2016
cd4289f
Updated ignore files.
bvaughn May 8, 2016
ce15f0e
Package version bump for upcoming release
bvaughn May 8, 2016
4859604
Organized codemods folder. Fixed some warnings
bvaughn May 8, 2016
45a5124
Changelog tweak
bvaughn May 8, 2016
d749659
Fixed lint issue with codemod
bvaughn May 8, 2016
4b2fa3f
Small example/demo tweaks
bvaughn May 8, 2016
2e1c3ad
Added more docs about limitations of InfiniteLoader
bvaughn May 9, 2016
ef1282c
Added FlexColumn :cellClassName to :className rename
bvaughn May 9, 2016
c03701b
Added support for inline styles to FlexTable, VirtualScroll, Grid, an…
bvaughn May 9, 2016
52b77d2
Small styling tweak to playground.html
bvaughn May 9, 2016
bac4b3a
Updated package to rc1
bvaughn May 9, 2016
c35495a
Updated package.json to v7.0.0
bvaughn May 9, 2016
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
.DS_Store
node_modules
npm-debug.log
build
coverage
dist
node_modules
npm-debug.log
1 change: 1 addition & 0 deletions .npmignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
build
codemods
coverage
docs
source
Expand Down
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
Changelog
------------

# 7.0.0
Version 7 changes are described in detail on the [Version 7 Roadmap wiki page](https://github.com/bvaughn/react-virtualized/wiki/Version-7-Roadmap).
Upgrade instructions and [jscodeshift](https://github.com/facebook/jscodeshift) mods can also be found there.

##### 6.3.2
Fixed edge-case bug in `Collection` where initial `scrollLeft` and `scrollTop` would not correctly adjust inner offsets.
Thanks @edulan for the contribution!
Expand Down
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@ There are also a couple of how-to guides:
* [Displaying items in reverse order](docs/reverseList.md)
* [Using AutoSizer](docs/usingAutoSizer.md)
* [Creating an infinite-loading list](docs/creatingAnInfiniteLoadingList.md)
* [Displaying a reverse list](docs/reverseList.md)

Examples
---------------
Expand All @@ -71,6 +72,7 @@ Here are some online demos of each component:

* [ArrowKeyStepper](https://bvaughn.github.io/react-virtualized/?component=ArrowKeyStepper)
* [AutoSizer](https://bvaughn.github.io/react-virtualized/?component=AutoSizer)
* [CellMeasurer](https://bvaughn.github.io/react-virtualized/?component=CellMeasurer)
* [Collection](https://bvaughn.github.io/react-virtualized/?component=Collection)
* [ColumnSizer](https://bvaughn.github.io/react-virtualized/?component=ColumnSizer)
* [FlexTable](https://bvaughn.github.io/react-virtualized/?component=FlexTable)
Expand All @@ -82,6 +84,8 @@ Here are some online demos of each component:
And here are some "recipe" type demos:
* [Collapsable tree view](https://rawgit.com/bvaughn/react-virtualized/master/playground/tree.html)
* [Full-page grid (spreadsheet)](https://rawgit.com/bvaughn/react-virtualized/master/playground/grid.html)
* [Dyanmic cell measuring](https://rawgit.com/bvaughn/react-virtualized/master/playground/chat.html)
* [Cell hover effects](https://rawgit.com/bvaughn/react-virtualized/master/playground/hover.html)

Contributions
------------
Expand Down
63 changes: 63 additions & 0 deletions codemods/6-to-7/rename-properties.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
'use strict'

// Renames react-virtualized version 6.x properties to be version-7 compatible
module.exports = function transformer (file, api) {
const jscodeshift = api.jscodeshift

let source = file.source

// Rename variable references
for (var property in propertyRenameMap) {
source = jscodeshift(source)
.findVariableDeclarators(property)
.renameTo(propertyRenameMap[property])
.toSource()
}

// Rename JSX attributes
source = jscodeshift(source)
.find(jscodeshift.JSXAttribute)
.filter(shouldAttributeBeRenamed)
.replaceWith(renameReactVirtualizedAttribute)
.toSource()

return source
}

const reactVirtualizedElementNames = [
'ArrowKeyStepper',
'AutoSizer',
'Collection',
'ColumnSizer',
'FlexTable',
'Grid',
'ScrollSync',
'VirtualScroll'
]

// @param path jscodeshift.JSXAttribute
const attributeBelongsToReactVirtualizedElement = path => reactVirtualizedElementNames.includes(path.parent.value.name.name)

// See https://github.com/bvaughn/react-virtualized/wiki/Version-7-Roadmap#clean-up-property-names
const propertyRenameMap = {
cellClassName: 'className',
columnsCount: 'columnCount',
overscanColumnsCount: 'overscanColumnCount',
overscanRowsCount: 'overscanRowCount',
renderCell: 'cellRenderer',
renderCellRanges: 'cellRangeRenderer',
rowsCount: 'rowCount'
}

// @param path jscodeshift.JSXAttribute
const shouldAttributeBeRenamed = path => attributeBelongsToReactVirtualizedElement(path) && isAttributeInPropertyRenameMap(path)

// @param path jscodeshift.JSXAttribute
const isAttributeInPropertyRenameMap = path => propertyRenameMap.hasOwnProperty(path.value.name.name)

// @param path jscodeshift.JSXAttribute
const renameReactVirtualizedAttribute = path => {
path.value.name.name = propertyRenameMap[path.value.name.name] || path.value.name.name

return path.node
}
33 changes: 15 additions & 18 deletions docs/ArrowKeyStepper.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,18 +10,17 @@ The appearance of this wrapper element can be customized using the `className` p
### Prop Types
| Property | Type | Required? | Description |
|:---|:---|:---:|:---|
| children | Function | ✓ | Function respondible for rendering children. This function should implement the following signature: `({ onKeyDown, onSectionRendered, scrollToColumn, scrollToRow }) => PropTypes.element` |
| children | Function | ✓ | Function respondible for rendering children. This function should implement the following signature: `({ onSectionRendered: Function, scrollToColumn: number, scrollToRow: number }) => PropTypes.element` |
| className | String | | CSS class name to attach to the wrapper `<div>`. |
| columnsCount | Number | ✓ | Number of columns in grid; for `FlexTable` and `VirtualScroll` this property should always be `1`. |
| rowsCount | Number | ✓ | Number of rows in grid. |
| columnCount | Number | ✓ | Number of columns in grid; for `FlexTable` and `VirtualScroll` this property should always be `1`. |
| rowCount | Number | ✓ | Number of rows in grid. |

### Children function

The child function is passed the following named parameters:

| Parameter | Type | Description |
|:---|:---|:---:|
| onKeyDown | Function | Key-down event handler to be attached to the DOM hierarchy. |
|:---|:---|:---|
| onSectionRendered | Function | Pass-through callback to be attached to child component; informs the key-stepper which range of cells are currently visible. |
| scrollToColumn | Number | Specifies which column in the child component should be visible |
| scrollToRow | Number | Specifies which row in the child component should be visible |
Expand All @@ -38,20 +37,18 @@ import 'react-virtualized/styles.css'; // only needs to be imported once

ReactDOM.render(
<ArrowKeyStepper
columnsCount={columnsCount}
rowsCount={rowsCount}
columnCount={columnCount}
rowCount={rowCount}
>
{({ onKeyDown, onSectionRendered, scrollToColumn, scrollToRow }) => (
<div onKeyDown={onKeyDown}>
<Grid
columnsCount={columnsCount}
onSectionRendered={onSectionRendered}
rowsCount={rowsCount}
scrollToColumn={scrollToColumn}
scrollToRow={scrollToRow}
{...otherGridProps}
/>
</div>
{({ onSectionRendered, scrollToColumn, scrollToRow }) => (
<Grid
columnCount={columnCount}
onSectionRendered={onSectionRendered}
rowCount={rowCount}
scrollToColumn={scrollToColumn}
scrollToRow={scrollToRow}
{...otherGridProps}
/>
)}
</ArrowKeyStepper>,
document.getElementById('example')
Expand Down
10 changes: 5 additions & 5 deletions docs/AutoSizer.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@ High-order component that automatically adjusts the width and height of a single
### Prop Types
| Property | Type | Required? | Description |
|:---|:---|:---:|:---|
| children | Function | ✓ | Function respondible for rendering children. This function should implement the following signature: `({ height, width }) => PropTypes.element` |
| disableHeight | Boolean | | If true the child's `height` property will not be managed |
| disableWidth | Boolean | | If true the child's `width` property will not be managed |
| onResize | Function | Callback to be invoked on-resize; it is passed the following named parameters: `({ height, width })` |
| children | Function | ✓ | Function respondible for rendering children. This function should implement the following signature: `({ height: number, width: number }) => PropTypes.element` |
| disableHeight | Boolean | | Fixed `height`; if specified, the child's `height` property will not be managed |
| disableWidth | Boolean | | Fixed `width`; if specified, the child's `width` property will not be managed |
| onResize | Function | | Callback to be invoked on-resize; it is passed the following named parameters: `({ height: number, width: number })`. |

### Examples

Expand All @@ -36,7 +36,7 @@ ReactDOM.render(
<VirtualScroll
width={width}
height={height}
rowsCount={list.length}
rowCount={list.length}
rowHeight={20}
rowRenderer={
index => list[index] // Could also be a DOM element
Expand Down
65 changes: 65 additions & 0 deletions docs/CellMeasurer.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
CellMeasurer
---------------

High-order component for automatically measuring a cell's contents by rendering it in a way that is not visible to the user.
Specify a fixed width or height constraint if you only want to measure one dimension.

**Warning**: This HOC is fairly experimental and may change in future releases.
At this time it is only intended for use with a `Grid` (not `VirtualScroll` or `FlexTable` as their item rendering and cell measuring signatures are different).
Also note that in order to measure a column's width for a `Grid`, that column's content must be rendered for all rows in order to determine the maximum width.
For this reason it may not be a good idea to use this HOC for `Grid`s containing a large number of both columns _and_ cells.

### Prop Types
| Property | Type | Required? | Description |
|:---|:---|:---:|:---|
| cellRenderer | Function | ✓ | Renders a cell given its indices. `({ columnIndex: number, rowIndex: number }): PropTypes.node` |
| children | Function | ✓ | Function respondible for rendering a virtualized component; `({ getColumnWidth: Function, getRowHeight: Function, resetMeasurements: Function }) => PropTypes.element` |
| columnCount | number | ✓ | Number of columns in the `Grid`; in order to measure a row's height, all of that row's columns must be rendered. |
| container | | | A Node, Component instance, or function that returns either. If this property is not specified the document body will be used. |
| height | number | | Fixed height; specify this property to measure cell-width only. |
| rowCount | number | ✓ | Number of rows in the `Grid`; in order to measure a column's width, all of that column's rows must be rendered. |
| width | number | | Fixed width; specify this property to measure cell-height only. |

### Children function

The child function is passed the following named parameters:

| Parameter | Type | Description |
|:---|:---|:---|
| getColumnWidth | Function | Callback to set as the `columnWidth` property of a `Grid` |
| getRowHeight | Function | Callback to set as the `rowHeight` property of a `Grid` |
| resetMeasurements | Function | Use this function to clear cached measurements in `CellRenderer`; its size will be remeasured the next time it is requested. |

### Examples

This example shows a `Grid` with fixed column widths and dynamic row heights.
For more examples check out the component [demo page](https://bvaughn.github.io/react-virtualized/?component=CellMeasurer).

```javascript
import React from 'react';
import ReactDOM from 'react-dom';
import { CellMeasurer, Grid } from 'react-virtualized';
import 'react-virtualized/styles.css'; // only needs to be imported once

ReactDOM.render(
<CellMeasurer
cellRenderer={cellRenderer}
columnCount={columnCount}
height={height}
rowCount={rowCount}
>
{({ getColumnWidth }) => (
<Grid
columnCount={columnCount}
columnWidth={getColumnWidth}
height={height}
cellRenderer={cellRenderer}
rowCount={rowCount}
rowHeight={fixedRowHeight}
width={width}
/>
)}
</CellMeasurer>,
document.getElementById('example')
);
```
30 changes: 20 additions & 10 deletions docs/Collection.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,22 +4,25 @@ Collection
Renders scattered or non-linear data.
Unlike `Grid`, which renders checkerboard data, `Collection` can render arbitrarily positioned- even overlapping- data.

**Note** that this component's measuring and layout phase is more expensive than `Grid` since it can not assume a correlation between a cell's index and position. For this reason it will take signifnicantly longer to initialize than the more linear/checkerboard components.

### Prop Types
| Property | Type | Required? | Description |
|:---|:---|:---:|:---|
| className | String | | Optional custom CSS class name to attach to root Collection element. |
| cellCount | Number | ✓ | Number of cells in collection. |
| cellGroupRenderer | Function | ✓ | Responsible for rendering a group of cells given their indices.: `({ cellSizeAndPositionGetter:Function, indices: Array<number>, cellRenderer: Function }): Array<PropTypes.node>` |
| cellRenderer | Function | ✓ | Responsible for rendering a cell given an row and column index: `({ index: number, isScrolling: boolean }): PropTypes.element` |
| cellSizeAndPositionGetter | Function | ✓ | Callback responsible for returning size and offset/position information for a given cell (index): `({ index: number }): { height: number, width: number, x: number, y: number }` |
| height | Number | ✓ | Height of Collection; this property determines the number of visible (vs virtualized) rows. |
| noContentRenderer | Function | | Optional renderer to be rendered inside the grid when `cellCount` is 0: `(): PropTypes.node` |
| onSectionRendered | Function | | Callback invoked with information about the section of the Collection that was just rendered: `(indices: Array<number>): void` |
| onScroll | Function | | Callback invoked whenever the scroll offset changes within the inner scrollable region: `({ clientHeight, clientWidth, scrollHeight, scrollLeft, scrollTop, scrollWidth }): void` |
| cellRenderer | Function | ✓ | Responsible for rendering a cell given an row and column index: `(index: number): PropTypes.node` |
| cellGroupRenderer | Function | ✓ | Responsible for rendering a group of cells given their indices.: `({ cellSizeAndPositionGetter:Function, indices: Array<number>, cellRenderer: Function }): Array<PropTypes.node>` |
| cellSizeAndPositionGetter | Function | ✓ | Callback responsible for returning size and offset/position information for a given cell (index): `(index): { height: number, width: number, x: number, y: number }` |
| onSectionRendered | Function | | Callback invoked with information about the section of the Collection that was just rendered: `({ indices: Array<number> }): void` |
| onScroll | Function | | Callback invoked whenever the scroll offset changes within the inner scrollable region: `({ clientHeight: number, clientWidth: number, scrollHeight: number, scrollLeft: number, scrollTop: number, scrollWidth: number }): void` |
| scrollLeft | Number | | Horizontal offset |
| scrollToCell | Number | | Cell index to ensure visible (by scrolling if necessary) |
| scrollTop | Number | | Vertical offset |
| sectionSize | Number | | Optionally override the size of the sections a Collection's cells are split into. |
| sectionSize | Number | | Optionally override the size of the sections a Collection's cells are split into. This is an advanced option and should only be used for performance tuning purposes. |
| style | Object | | Optional custom inline style to attach to root Collection element. |
| width | Number | ✓ | Width of Collection; this property determines the number of visible (vs virtualized) columns. |

### Public Methods
Expand All @@ -29,7 +32,7 @@ Unlike `Grid`, which renders checkerboard data, `Collection` can render arbitrar
Recomputes cell sizes and positions.

This function should be called if cell sizes or positions have changed but nothing else has.
Since Collection only receives `cellCount` it has no way of detecting when the underlying data changes.
Since Collection only receives `cellCount` (and not the underlying List or Array) it has no way of detecting when the underlying data changes.

### Class names

Expand Down Expand Up @@ -62,9 +65,16 @@ const list = [
ReactDOM.render(
<Collection
cellCount={list.length}
cellRenderer={(index) => list[index].name}
cellSizeAndPositionGetter={(index) => list[index]}
columnsCount={list.length}
cellRenderer={({ index }) => list[index].name}
cellSizeAndPositionGetter={({ index }) => {
const datum = list[index]
return {
height: datum.height,
width: datum.width,
x: datum.x,
y: datum.y
}
}}
height={300}
width={300}
/>,
Expand Down
16 changes: 8 additions & 8 deletions docs/ColumnSizer.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ High-order component that auto-calculates column-widths for `Grid` cells.
### Prop Types
| Property | Type | Required? | Description |
|:---|:---|:---:|:---|
| children | Function | ✓ | Function respondible for rendering a virtualized Grid. This function should implement the following signature: `({ adjustedWidth, getColumnWidth, registerChild }) => PropTypes.element` |
| children | Function | ✓ | Function respondible for rendering a virtualized Grid. This function should implement the following signature: `({ adjustedWidth: number, getColumnWidth: Function, registerChild: Function }) => PropTypes.element` |
| columnMaxWidth | Number | | Optional maximum allowed column width |
| columnMinWidth | Number | | Optional minimum allowed column width |
| width | Number | ✓ | Width of Grid or `FlexTable` child |
Expand All @@ -16,14 +16,14 @@ High-order component that auto-calculates column-widths for `Grid` cells.
The child function is passed the following named parameters:

| Parameter | Type | Description |
|:---|:---|:---:|
|:---|:---|:---|
| adjustedWidth | Number | This number reflects the lesser of the overall `Grid` width or the width of all columns. Use this to make your `Grid` shrink to fit sparse content. |
| getColumnWidth | Function | This function should be passed to the `Grid`'s `columnWidth` property. |
| registerChild | Function | This function should be set as the child's `ref` property. It enables a set of rows to be refreshed once their data has finished loading. |
| adjustedWidth | Number | This number reflects the lesser of the overall `Grid` width or the width of all columns. Use this to make your `Grid` shrink to fit sparse content. |

### Examples

This example displays a `Grid` that shrinks to fit sparse content (using the `adjustedWidth` parameter).
This example displays a `Grid` that shrinks to fit sparse content (using the `adjustedWidth` parameter). An interactive demo of this component can be seen [here](https://bvaughn.github.io/react-virtualized/?component=ColumnSizer).

```javascript
import React from 'react';
Expand All @@ -38,18 +38,18 @@ ReactDOM.render(
<ColumnSizer
columnMaxWidth={100}
columnMinWidth={50}
columnsCount={numColumns}
columnCount={numColumns}
width={someCalculatedWidth}
>
{({ adjustedWidth, getColumnWidth, registerChild }) => (
<Grid
ref={registerChild}
columnWidth={getColumnWidth}
columnsCount={numColumns}
columnCount={numColumns}
height={someCalculatedHeight}
renderCell={someCellRenderer}
cellRenderer={someCellRenderer}
rowHeight={50}
rowsCount={numRows}
rowCount={numRows}
width={adjustedWidth}
/>
)}
Expand Down
Loading