@spark-web/data-table
v0.3.3
Published
--- title: DataTable storybookPath: data-display-data-table isExperimentalPackage: true ---
Downloads
718
Readme
title: DataTable storybookPath: data-display-data-table isExperimentalPackage: true
The DataTable
component presents a list of data in table form.
It uses @tanstack/react-table
as a dependency to implement data selection
and filtering capabilities. As such, certain table options are available as
DataTable
props. For example, the items
and columns
prop are required
options.
Currently supported features from @tanstack/react-table
are the following:
- Row selection
- Multi-row selection
- Row expansion
- Column visibility
However, certain defaults have been set for the component:
enableHiding
is enabled by default;enableMultiRowSelection
is disabled by default, meaning row selection defaults to single-row;enableRowSelection
is automatically enabled when a callback value is passed inonRowSelectionChange
.- The
data
property in React Table options is renamed toitems
to align with the rest of Spark Web's usage ofdata
as a data attribute.
Example
<DataTable
items={[
{
id: 1,
name: 'Ken Adams',
category: 'Solar System',
amount: 3500,
},
]}
columns={[
{
id: 'id',
accessorKey: 'id',
header: 'ID',
cell: info => <Text size="small">{info.renderValue()}</Text>,
},
{
id: 'name',
accessorKey: 'name',
header: 'Name',
cell: info => <Text size="small">{info.renderValue()}</Text>,
},
{
id: 'category',
accessorKey: 'category',
header: 'Category',
cell: info => <Text size="small">{info.renderValue()}</Text>,
},
{
id: 'amount',
accessorKey: 'amount',
header: 'Amount',
cell: info => <Text size="small">{info.renderValue()}</Text>,
},
]}
/>