config
: An object adhering to the following schema
{
// options for all cells
cellOptions: {
on: {
// Cell handlers get event, element and props
click: (event, DOMElement, props) => { ... },
hover: (event, DOMElement, { isHovered, ...props }) => { ... },
}
},
// options for all rows
rowOptions: {
on: {
// Row handlers only get event and props
click: (event, props) => { ... },
hover: (event, { isHovered, ...props }) => { ... },
}
},
data: [
// config per column
{
order: 0, // the index of this column
name: 'id', // the name of this column
locked: true, // if this column is locked or not
size: 100, // the default size of this column
valueTransform: value => renderableValue, // transform the value to a renderable value
},
{
order: 1,
name: 'name',
locked: false,
size: 200,
// We can give each column specific
// handlers for that column
cellOptions: {
on: {
click,
hover,
}
}
}
]
}