@fluentui/react-table 9.0.0-alpha.9 → 9.0.0-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.json +798 -1
- package/CHANGELOG.md +207 -2
- package/dist/index.d.ts +239 -133
- package/lib/components/DataGrid/DataGrid.js +1 -2
- package/lib/components/DataGrid/DataGrid.js.map +1 -1
- package/lib/components/DataGrid/DataGrid.types.js.map +1 -1
- package/lib/components/DataGrid/renderDataGrid.js +5 -2
- package/lib/components/DataGrid/renderDataGrid.js.map +1 -1
- package/lib/components/DataGrid/useDataGrid.js +49 -3
- package/lib/components/DataGrid/useDataGrid.js.map +1 -1
- package/lib/components/DataGrid/useDataGridContextValues.js +11 -1
- package/lib/components/DataGrid/useDataGridContextValues.js.map +1 -1
- package/lib/components/DataGrid/useDataGridStyles.js +0 -1
- package/lib/components/DataGrid/useDataGridStyles.js.map +1 -1
- package/lib/components/DataGridBody/DataGridBody.js +1 -2
- package/lib/components/DataGridBody/DataGridBody.js.map +1 -1
- package/lib/components/DataGridBody/DataGridBody.types.js.map +1 -1
- package/lib/components/DataGridBody/renderDataGridBody.js +13 -3
- package/lib/components/DataGridBody/renderDataGridBody.js.map +1 -1
- package/lib/components/DataGridBody/useDataGridBody.js +16 -2
- package/lib/components/DataGridBody/useDataGridBody.js.map +1 -1
- package/lib/components/DataGridBody/useDataGridBodyStyles.js +0 -1
- package/lib/components/DataGridBody/useDataGridBodyStyles.js.map +1 -1
- package/lib/components/DataGridCell/DataGridCell.js +1 -2
- package/lib/components/DataGridCell/DataGridCell.js.map +1 -1
- package/lib/components/DataGridCell/renderDataGridCell.js +0 -1
- package/lib/components/DataGridCell/renderDataGridCell.js.map +1 -1
- package/lib/components/DataGridCell/useDataGridCell.js +7 -3
- package/lib/components/DataGridCell/useDataGridCell.js.map +1 -1
- package/lib/components/DataGridCell/useDataGridCellStyles.js +0 -1
- package/lib/components/DataGridCell/useDataGridCellStyles.js.map +1 -1
- package/lib/components/DataGridHeader/DataGridHeader.js +1 -2
- package/lib/components/DataGridHeader/DataGridHeader.js.map +1 -1
- package/lib/components/DataGridHeader/renderDataGridHeader.js +0 -1
- package/lib/components/DataGridHeader/renderDataGridHeader.js.map +1 -1
- package/lib/components/DataGridHeader/useDataGridHeader.js +2 -2
- package/lib/components/DataGridHeader/useDataGridHeader.js.map +1 -1
- package/lib/components/DataGridHeader/useDataGridHeaderStyles.js +0 -1
- package/lib/components/DataGridHeader/useDataGridHeaderStyles.js.map +1 -1
- package/lib/components/DataGridHeaderCell/DataGridHeaderCell.js +1 -2
- package/lib/components/DataGridHeaderCell/DataGridHeaderCell.js.map +1 -1
- package/lib/components/DataGridHeaderCell/renderDataGridHeaderCell.js +0 -1
- package/lib/components/DataGridHeaderCell/renderDataGridHeaderCell.js.map +1 -1
- package/lib/components/DataGridHeaderCell/useDataGridHeaderCell.js +23 -3
- package/lib/components/DataGridHeaderCell/useDataGridHeaderCell.js.map +1 -1
- package/lib/components/DataGridHeaderCell/useDataGridHeaderCellStyles.js +0 -4
- package/lib/components/DataGridHeaderCell/useDataGridHeaderCellStyles.js.map +1 -1
- package/lib/components/DataGridRow/DataGridRow.js +1 -2
- package/lib/components/DataGridRow/DataGridRow.js.map +1 -1
- package/lib/components/DataGridRow/DataGridRow.types.js.map +1 -1
- package/lib/components/DataGridRow/renderDataGridRow.js +15 -3
- package/lib/components/DataGridRow/renderDataGridRow.js.map +1 -1
- package/lib/components/DataGridRow/useDataGridRow.js +56 -3
- package/lib/components/DataGridRow/useDataGridRow.js.map +1 -1
- package/lib/components/DataGridRow/useDataGridRowStyles.js +5 -2
- package/lib/components/DataGridRow/useDataGridRowStyles.js.map +1 -1
- package/lib/components/DataGridSelectionCell/DataGridSelectionCell.js +1 -2
- package/lib/components/DataGridSelectionCell/DataGridSelectionCell.js.map +1 -1
- package/lib/components/DataGridSelectionCell/renderDataGridSelectionCell.js +0 -1
- package/lib/components/DataGridSelectionCell/renderDataGridSelectionCell.js.map +1 -1
- package/lib/components/DataGridSelectionCell/useDataGridSelectionCell.js +33 -3
- package/lib/components/DataGridSelectionCell/useDataGridSelectionCell.js.map +1 -1
- package/lib/components/DataGridSelectionCell/useDataGridSelectionCellStyles.js +0 -4
- package/lib/components/DataGridSelectionCell/useDataGridSelectionCellStyles.js.map +1 -1
- package/lib/components/Table/Table.js +1 -2
- package/lib/components/Table/Table.js.map +1 -1
- package/lib/components/Table/Table.types.js.map +1 -1
- package/lib/components/Table/renderTable.js +2 -2
- package/lib/components/Table/renderTable.js.map +1 -1
- package/lib/components/Table/useTable.js +0 -2
- package/lib/components/Table/useTable.js.map +1 -1
- package/lib/components/Table/useTableContextValues.js.map +1 -1
- package/lib/components/Table/useTableStyles.js +13 -19
- package/lib/components/Table/useTableStyles.js.map +1 -1
- package/lib/components/TableBody/TableBody.js +1 -2
- package/lib/components/TableBody/TableBody.js.map +1 -1
- package/lib/components/TableBody/renderTableBody.js +3 -4
- package/lib/components/TableBody/renderTableBody.js.map +1 -1
- package/lib/components/TableBody/useTableBody.js +0 -2
- package/lib/components/TableBody/useTableBody.js.map +1 -1
- package/lib/components/TableBody/useTableBodyStyles.js +6 -10
- package/lib/components/TableBody/useTableBodyStyles.js.map +1 -1
- package/lib/components/TableCell/TableCell.js +1 -2
- package/lib/components/TableCell/TableCell.js.map +1 -1
- package/lib/components/TableCell/TableCell.types.js.map +1 -1
- package/lib/components/TableCell/renderTableCell.js +2 -2
- package/lib/components/TableCell/renderTableCell.js.map +1 -1
- package/lib/components/TableCell/useTableCell.js +4 -4
- package/lib/components/TableCell/useTableCell.js.map +1 -1
- package/lib/components/TableCell/useTableCellStyles.js +47 -26
- package/lib/components/TableCell/useTableCellStyles.js.map +1 -1
- package/lib/components/TableCellActions/TableCellActions.js +1 -2
- package/lib/components/TableCellActions/TableCellActions.js.map +1 -1
- package/lib/components/TableCellActions/renderTableCellActions.js +3 -4
- package/lib/components/TableCellActions/renderTableCellActions.js.map +1 -1
- package/lib/components/TableCellActions/useTableCellActions.js +2 -5
- package/lib/components/TableCellActions/useTableCellActions.js.map +1 -1
- package/lib/components/TableCellActions/useTableCellActionsStyles.js +11 -19
- package/lib/components/TableCellActions/useTableCellActionsStyles.js.map +1 -1
- package/lib/components/TableCellLayout/TableCellLayout.js +1 -2
- package/lib/components/TableCellLayout/TableCellLayout.js.map +1 -1
- package/lib/components/TableCellLayout/TableCellLayout.types.js.map +1 -1
- package/lib/components/TableCellLayout/renderTableCellLayout.js +10 -6
- package/lib/components/TableCellLayout/renderTableCellLayout.js.map +1 -1
- package/lib/components/TableCellLayout/useTableCellLayout.js +5 -5
- package/lib/components/TableCellLayout/useTableCellLayout.js.map +1 -1
- package/lib/components/TableCellLayout/useTableCellLayoutContextValues.js.map +1 -1
- package/lib/components/TableCellLayout/useTableCellLayoutStyles.js +41 -35
- package/lib/components/TableCellLayout/useTableCellLayoutStyles.js.map +1 -1
- package/lib/components/TableHeader/TableHeader.js +1 -2
- package/lib/components/TableHeader/TableHeader.js.map +1 -1
- package/lib/components/TableHeader/renderTableHeader.js +2 -2
- package/lib/components/TableHeader/renderTableHeader.js.map +1 -1
- package/lib/components/TableHeader/useTableHeader.js +1 -10
- package/lib/components/TableHeader/useTableHeader.js.map +1 -1
- package/lib/components/TableHeader/useTableHeaderStyles.js +6 -16
- package/lib/components/TableHeader/useTableHeaderStyles.js.map +1 -1
- package/lib/components/TableHeaderCell/TableHeaderCell.js +1 -2
- package/lib/components/TableHeaderCell/TableHeaderCell.js.map +1 -1
- package/lib/components/TableHeaderCell/TableHeaderCell.types.js.map +1 -1
- package/lib/components/TableHeaderCell/renderTableHeaderCell.js +6 -4
- package/lib/components/TableHeaderCell/renderTableHeaderCell.js.map +1 -1
- package/lib/components/TableHeaderCell/useTableHeaderCell.js +11 -8
- package/lib/components/TableHeaderCell/useTableHeaderCell.js.map +1 -1
- package/lib/components/TableHeaderCell/useTableHeaderCellStyles.js +69 -67
- package/lib/components/TableHeaderCell/useTableHeaderCellStyles.js.map +1 -1
- package/lib/components/TableRow/TableRow.js +1 -2
- package/lib/components/TableRow/TableRow.js.map +1 -1
- package/lib/components/TableRow/TableRow.types.js.map +1 -1
- package/lib/components/TableRow/renderTableRow.js +3 -4
- package/lib/components/TableRow/renderTableRow.js.map +1 -1
- package/lib/components/TableRow/useTableRow.js +7 -5
- package/lib/components/TableRow/useTableRow.js.map +1 -1
- package/lib/components/TableRow/useTableRowStyles.js +137 -162
- package/lib/components/TableRow/useTableRowStyles.js.map +1 -1
- package/lib/components/TableSelectionCell/TableSelectionCell.js +1 -2
- package/lib/components/TableSelectionCell/TableSelectionCell.js.map +1 -1
- package/lib/components/TableSelectionCell/TableSelectionCell.types.js.map +1 -1
- package/lib/components/TableSelectionCell/renderTableSelectionCell.js +6 -4
- package/lib/components/TableSelectionCell/renderTableSelectionCell.js.map +1 -1
- package/lib/components/TableSelectionCell/useTableSelectionCell.js +9 -5
- package/lib/components/TableSelectionCell/useTableSelectionCell.js.map +1 -1
- package/lib/components/TableSelectionCell/useTableSelectionCellStyles.js +43 -46
- package/lib/components/TableSelectionCell/useTableSelectionCellStyles.js.map +1 -1
- package/lib/contexts/columnIdContext.js +9 -0
- package/lib/contexts/columnIdContext.js.map +1 -0
- package/lib/contexts/dataGridContext.js +13 -0
- package/lib/contexts/dataGridContext.js.map +1 -0
- package/lib/contexts/rowIdContext.js +9 -0
- package/lib/contexts/rowIdContext.js.map +1 -0
- package/lib/contexts/tableContext.js +0 -1
- package/lib/contexts/tableContext.js.map +1 -1
- package/lib/contexts/tableHeaderContext.js.map +1 -1
- package/lib/hooks/createColumn.js +35 -0
- package/lib/hooks/createColumn.js.map +1 -0
- package/lib/hooks/index.js +4 -3
- package/lib/hooks/index.js.map +1 -1
- package/lib/hooks/selectionManager.js +16 -32
- package/lib/hooks/selectionManager.js.map +1 -1
- package/lib/hooks/types.js.map +1 -1
- package/lib/hooks/{useTable.js → useTableFeatures.js} +12 -9
- package/lib/hooks/useTableFeatures.js.map +1 -0
- package/lib/hooks/{useSelection.js → useTableSelection.js} +18 -18
- package/lib/hooks/useTableSelection.js.map +1 -0
- package/lib/hooks/{useSort.js → useTableSort.js} +12 -21
- package/lib/hooks/useTableSort.js.map +1 -0
- package/lib/index.js +2 -1
- package/lib/index.js.map +1 -1
- package/lib-commonjs/DataGrid.js +0 -2
- package/lib-commonjs/DataGrid.js.map +1 -1
- package/lib-commonjs/DataGridBody.js +0 -2
- package/lib-commonjs/DataGridBody.js.map +1 -1
- package/lib-commonjs/DataGridCell.js +0 -2
- package/lib-commonjs/DataGridCell.js.map +1 -1
- package/lib-commonjs/DataGridHeader.js +0 -2
- package/lib-commonjs/DataGridHeader.js.map +1 -1
- package/lib-commonjs/DataGridHeaderCell.js +0 -2
- package/lib-commonjs/DataGridHeaderCell.js.map +1 -1
- package/lib-commonjs/DataGridRow.js +0 -2
- package/lib-commonjs/DataGridRow.js.map +1 -1
- package/lib-commonjs/DataGridSelectionCell.js +0 -2
- package/lib-commonjs/DataGridSelectionCell.js.map +1 -1
- package/lib-commonjs/Table.js +0 -2
- package/lib-commonjs/Table.js.map +1 -1
- package/lib-commonjs/TableBody.js +0 -2
- package/lib-commonjs/TableBody.js.map +1 -1
- package/lib-commonjs/TableCell.js +0 -2
- package/lib-commonjs/TableCell.js.map +1 -1
- package/lib-commonjs/TableCellActions.js +0 -2
- package/lib-commonjs/TableCellActions.js.map +1 -1
- package/lib-commonjs/TableCellLayout.js +0 -2
- package/lib-commonjs/TableCellLayout.js.map +1 -1
- package/lib-commonjs/TableCellPrimaryLayout.js +0 -2
- package/lib-commonjs/TableCellPrimaryLayout.js.map +1 -1
- package/lib-commonjs/TableHeader.js +0 -2
- package/lib-commonjs/TableHeader.js.map +1 -1
- package/lib-commonjs/TableHeaderCell.js +0 -2
- package/lib-commonjs/TableHeaderCell.js.map +1 -1
- package/lib-commonjs/TableRow.js +0 -2
- package/lib-commonjs/TableRow.js.map +1 -1
- package/lib-commonjs/TableSelectionCell.js +0 -2
- package/lib-commonjs/TableSelectionCell.js.map +1 -1
- package/lib-commonjs/components/DataGrid/DataGrid.js +1 -8
- package/lib-commonjs/components/DataGrid/DataGrid.js.map +1 -1
- package/lib-commonjs/components/DataGrid/DataGrid.types.js.map +1 -1
- package/lib-commonjs/components/DataGrid/index.js +0 -6
- package/lib-commonjs/components/DataGrid/index.js.map +1 -1
- package/lib-commonjs/components/DataGrid/renderDataGrid.js +5 -5
- package/lib-commonjs/components/DataGrid/renderDataGrid.js.map +1 -1
- package/lib-commonjs/components/DataGrid/useDataGrid.js +49 -6
- package/lib-commonjs/components/DataGrid/useDataGrid.js.map +1 -1
- package/lib-commonjs/components/DataGrid/useDataGridContextValues.js +11 -4
- package/lib-commonjs/components/DataGrid/useDataGridContextValues.js.map +1 -1
- package/lib-commonjs/components/DataGrid/useDataGridStyles.js +0 -5
- package/lib-commonjs/components/DataGrid/useDataGridStyles.js.map +1 -1
- package/lib-commonjs/components/DataGridBody/DataGridBody.js +1 -7
- package/lib-commonjs/components/DataGridBody/DataGridBody.js.map +1 -1
- package/lib-commonjs/components/DataGridBody/DataGridBody.types.js.map +1 -1
- package/lib-commonjs/components/DataGridBody/index.js +0 -6
- package/lib-commonjs/components/DataGridBody/index.js.map +1 -1
- package/lib-commonjs/components/DataGridBody/renderDataGridBody.js +13 -6
- package/lib-commonjs/components/DataGridBody/renderDataGridBody.js.map +1 -1
- package/lib-commonjs/components/DataGridBody/useDataGridBody.js +16 -5
- package/lib-commonjs/components/DataGridBody/useDataGridBody.js.map +1 -1
- package/lib-commonjs/components/DataGridBody/useDataGridBodyStyles.js +0 -5
- package/lib-commonjs/components/DataGridBody/useDataGridBodyStyles.js.map +1 -1
- package/lib-commonjs/components/DataGridCell/DataGridCell.js +1 -7
- package/lib-commonjs/components/DataGridCell/DataGridCell.js.map +1 -1
- package/lib-commonjs/components/DataGridCell/DataGridCell.types.js.map +1 -1
- package/lib-commonjs/components/DataGridCell/index.js +0 -6
- package/lib-commonjs/components/DataGridCell/index.js.map +1 -1
- package/lib-commonjs/components/DataGridCell/renderDataGridCell.js +0 -4
- package/lib-commonjs/components/DataGridCell/renderDataGridCell.js.map +1 -1
- package/lib-commonjs/components/DataGridCell/useDataGridCell.js +7 -6
- package/lib-commonjs/components/DataGridCell/useDataGridCell.js.map +1 -1
- package/lib-commonjs/components/DataGridCell/useDataGridCellStyles.js +0 -5
- package/lib-commonjs/components/DataGridCell/useDataGridCellStyles.js.map +1 -1
- package/lib-commonjs/components/DataGridHeader/DataGridHeader.js +1 -7
- package/lib-commonjs/components/DataGridHeader/DataGridHeader.js.map +1 -1
- package/lib-commonjs/components/DataGridHeader/DataGridHeader.types.js.map +1 -1
- package/lib-commonjs/components/DataGridHeader/index.js +0 -6
- package/lib-commonjs/components/DataGridHeader/index.js.map +1 -1
- package/lib-commonjs/components/DataGridHeader/renderDataGridHeader.js +0 -4
- package/lib-commonjs/components/DataGridHeader/renderDataGridHeader.js.map +1 -1
- package/lib-commonjs/components/DataGridHeader/useDataGridHeader.js +2 -5
- package/lib-commonjs/components/DataGridHeader/useDataGridHeader.js.map +1 -1
- package/lib-commonjs/components/DataGridHeader/useDataGridHeaderStyles.js +0 -5
- package/lib-commonjs/components/DataGridHeader/useDataGridHeaderStyles.js.map +1 -1
- package/lib-commonjs/components/DataGridHeaderCell/DataGridHeaderCell.js +1 -7
- package/lib-commonjs/components/DataGridHeaderCell/DataGridHeaderCell.js.map +1 -1
- package/lib-commonjs/components/DataGridHeaderCell/DataGridHeaderCell.types.js.map +1 -1
- package/lib-commonjs/components/DataGridHeaderCell/index.js +0 -6
- package/lib-commonjs/components/DataGridHeaderCell/index.js.map +1 -1
- package/lib-commonjs/components/DataGridHeaderCell/renderDataGridHeaderCell.js +0 -4
- package/lib-commonjs/components/DataGridHeaderCell/renderDataGridHeaderCell.js.map +1 -1
- package/lib-commonjs/components/DataGridHeaderCell/useDataGridHeaderCell.js +23 -6
- package/lib-commonjs/components/DataGridHeaderCell/useDataGridHeaderCell.js.map +1 -1
- package/lib-commonjs/components/DataGridHeaderCell/useDataGridHeaderCellStyles.js +0 -8
- package/lib-commonjs/components/DataGridHeaderCell/useDataGridHeaderCellStyles.js.map +1 -1
- package/lib-commonjs/components/DataGridRow/DataGridRow.js +1 -7
- package/lib-commonjs/components/DataGridRow/DataGridRow.js.map +1 -1
- package/lib-commonjs/components/DataGridRow/DataGridRow.types.js.map +1 -1
- package/lib-commonjs/components/DataGridRow/index.js +0 -6
- package/lib-commonjs/components/DataGridRow/index.js.map +1 -1
- package/lib-commonjs/components/DataGridRow/renderDataGridRow.js +15 -6
- package/lib-commonjs/components/DataGridRow/renderDataGridRow.js.map +1 -1
- package/lib-commonjs/components/DataGridRow/useDataGridRow.js +56 -6
- package/lib-commonjs/components/DataGridRow/useDataGridRow.js.map +1 -1
- package/lib-commonjs/components/DataGridRow/useDataGridRowStyles.js +5 -6
- package/lib-commonjs/components/DataGridRow/useDataGridRowStyles.js.map +1 -1
- package/lib-commonjs/components/DataGridSelectionCell/DataGridSelectionCell.js +1 -7
- package/lib-commonjs/components/DataGridSelectionCell/DataGridSelectionCell.js.map +1 -1
- package/lib-commonjs/components/DataGridSelectionCell/DataGridSelectionCell.types.js.map +1 -1
- package/lib-commonjs/components/DataGridSelectionCell/index.js +0 -6
- package/lib-commonjs/components/DataGridSelectionCell/index.js.map +1 -1
- package/lib-commonjs/components/DataGridSelectionCell/renderDataGridSelectionCell.js +0 -4
- package/lib-commonjs/components/DataGridSelectionCell/renderDataGridSelectionCell.js.map +1 -1
- package/lib-commonjs/components/DataGridSelectionCell/useDataGridSelectionCell.js +33 -6
- package/lib-commonjs/components/DataGridSelectionCell/useDataGridSelectionCell.js.map +1 -1
- package/lib-commonjs/components/DataGridSelectionCell/useDataGridSelectionCellStyles.js +0 -8
- package/lib-commonjs/components/DataGridSelectionCell/useDataGridSelectionCellStyles.js.map +1 -1
- package/lib-commonjs/components/Table/Table.js +1 -8
- package/lib-commonjs/components/Table/Table.js.map +1 -1
- package/lib-commonjs/components/Table/Table.types.js.map +1 -1
- package/lib-commonjs/components/Table/index.js +0 -6
- package/lib-commonjs/components/Table/index.js.map +1 -1
- package/lib-commonjs/components/Table/renderTable.js +2 -7
- package/lib-commonjs/components/Table/renderTable.js.map +1 -1
- package/lib-commonjs/components/Table/useTable.js +0 -5
- package/lib-commonjs/components/Table/useTable.js.map +1 -1
- package/lib-commonjs/components/Table/useTableContextValues.js +0 -3
- package/lib-commonjs/components/Table/useTableContextValues.js.map +1 -1
- package/lib-commonjs/components/Table/useTableStyles.js +13 -23
- package/lib-commonjs/components/Table/useTableStyles.js.map +1 -1
- package/lib-commonjs/components/TableBody/TableBody.js +1 -7
- package/lib-commonjs/components/TableBody/TableBody.js.map +1 -1
- package/lib-commonjs/components/TableBody/TableBody.types.js.map +1 -1
- package/lib-commonjs/components/TableBody/index.js +0 -6
- package/lib-commonjs/components/TableBody/index.js.map +1 -1
- package/lib-commonjs/components/TableBody/renderTableBody.js +3 -8
- package/lib-commonjs/components/TableBody/renderTableBody.js.map +1 -1
- package/lib-commonjs/components/TableBody/useTableBody.js +0 -6
- package/lib-commonjs/components/TableBody/useTableBody.js.map +1 -1
- package/lib-commonjs/components/TableBody/useTableBodyStyles.js +6 -12
- package/lib-commonjs/components/TableBody/useTableBodyStyles.js.map +1 -1
- package/lib-commonjs/components/TableCell/TableCell.js +1 -7
- package/lib-commonjs/components/TableCell/TableCell.js.map +1 -1
- package/lib-commonjs/components/TableCell/TableCell.types.js.map +1 -1
- package/lib-commonjs/components/TableCell/index.js +0 -6
- package/lib-commonjs/components/TableCell/index.js.map +1 -1
- package/lib-commonjs/components/TableCell/renderTableCell.js +2 -6
- package/lib-commonjs/components/TableCell/renderTableCell.js.map +1 -1
- package/lib-commonjs/components/TableCell/useTableCell.js +4 -8
- package/lib-commonjs/components/TableCell/useTableCell.js.map +1 -1
- package/lib-commonjs/components/TableCell/useTableCellStyles.js +47 -30
- package/lib-commonjs/components/TableCell/useTableCellStyles.js.map +1 -1
- package/lib-commonjs/components/TableCellActions/TableCellActions.js +1 -7
- package/lib-commonjs/components/TableCellActions/TableCellActions.js.map +1 -1
- package/lib-commonjs/components/TableCellActions/TableCellActions.types.js.map +1 -1
- package/lib-commonjs/components/TableCellActions/index.js +0 -6
- package/lib-commonjs/components/TableCellActions/index.js.map +1 -1
- package/lib-commonjs/components/TableCellActions/renderTableCellActions.js +3 -8
- package/lib-commonjs/components/TableCellActions/renderTableCellActions.js.map +1 -1
- package/lib-commonjs/components/TableCellActions/useTableCellActions.js +1 -8
- package/lib-commonjs/components/TableCellActions/useTableCellActions.js.map +1 -1
- package/lib-commonjs/components/TableCellActions/useTableCellActionsStyles.js +11 -23
- package/lib-commonjs/components/TableCellActions/useTableCellActionsStyles.js.map +1 -1
- package/lib-commonjs/components/TableCellLayout/TableCellLayout.js +1 -8
- package/lib-commonjs/components/TableCellLayout/TableCellLayout.js.map +1 -1
- package/lib-commonjs/components/TableCellLayout/TableCellLayout.types.js.map +1 -1
- package/lib-commonjs/components/TableCellLayout/index.js +0 -6
- package/lib-commonjs/components/TableCellLayout/index.js.map +1 -1
- package/lib-commonjs/components/TableCellLayout/renderTableCellLayout.js +10 -11
- package/lib-commonjs/components/TableCellLayout/renderTableCellLayout.js.map +1 -1
- package/lib-commonjs/components/TableCellLayout/useTableCellLayout.js +5 -9
- package/lib-commonjs/components/TableCellLayout/useTableCellLayout.js.map +1 -1
- package/lib-commonjs/components/TableCellLayout/useTableCellLayoutContextValues.js +0 -3
- package/lib-commonjs/components/TableCellLayout/useTableCellLayoutContextValues.js.map +1 -1
- package/lib-commonjs/components/TableCellLayout/useTableCellLayoutStyles.js +41 -39
- package/lib-commonjs/components/TableCellLayout/useTableCellLayoutStyles.js.map +1 -1
- package/lib-commonjs/components/TableHeader/TableHeader.js +1 -7
- package/lib-commonjs/components/TableHeader/TableHeader.js.map +1 -1
- package/lib-commonjs/components/TableHeader/TableHeader.types.js.map +1 -1
- package/lib-commonjs/components/TableHeader/index.js +0 -6
- package/lib-commonjs/components/TableHeader/index.js.map +1 -1
- package/lib-commonjs/components/TableHeader/renderTableHeader.js +2 -7
- package/lib-commonjs/components/TableHeader/renderTableHeader.js.map +1 -1
- package/lib-commonjs/components/TableHeader/useTableHeader.js +1 -15
- package/lib-commonjs/components/TableHeader/useTableHeader.js.map +1 -1
- package/lib-commonjs/components/TableHeader/useTableHeaderStyles.js +6 -19
- package/lib-commonjs/components/TableHeader/useTableHeaderStyles.js.map +1 -1
- package/lib-commonjs/components/TableHeaderCell/TableHeaderCell.js +1 -7
- package/lib-commonjs/components/TableHeaderCell/TableHeaderCell.js.map +1 -1
- package/lib-commonjs/components/TableHeaderCell/TableHeaderCell.types.js.map +1 -1
- package/lib-commonjs/components/TableHeaderCell/index.js +0 -6
- package/lib-commonjs/components/TableHeaderCell/index.js.map +1 -1
- package/lib-commonjs/components/TableHeaderCell/renderTableHeaderCell.js +6 -8
- package/lib-commonjs/components/TableHeaderCell/renderTableHeaderCell.js.map +1 -1
- package/lib-commonjs/components/TableHeaderCell/useTableHeaderCell.js +10 -14
- package/lib-commonjs/components/TableHeaderCell/useTableHeaderCell.js.map +1 -1
- package/lib-commonjs/components/TableHeaderCell/useTableHeaderCellStyles.js +69 -71
- package/lib-commonjs/components/TableHeaderCell/useTableHeaderCellStyles.js.map +1 -1
- package/lib-commonjs/components/TableRow/TableRow.js +1 -7
- package/lib-commonjs/components/TableRow/TableRow.js.map +1 -1
- package/lib-commonjs/components/TableRow/TableRow.types.js.map +1 -1
- package/lib-commonjs/components/TableRow/index.js +0 -6
- package/lib-commonjs/components/TableRow/index.js.map +1 -1
- package/lib-commonjs/components/TableRow/renderTableRow.js +3 -8
- package/lib-commonjs/components/TableRow/renderTableRow.js.map +1 -1
- package/lib-commonjs/components/TableRow/useTableRow.js +7 -10
- package/lib-commonjs/components/TableRow/useTableRow.js.map +1 -1
- package/lib-commonjs/components/TableRow/useTableRowStyles.js +137 -170
- package/lib-commonjs/components/TableRow/useTableRowStyles.js.map +1 -1
- package/lib-commonjs/components/TableSelectionCell/TableSelectionCell.js +1 -7
- package/lib-commonjs/components/TableSelectionCell/TableSelectionCell.js.map +1 -1
- package/lib-commonjs/components/TableSelectionCell/TableSelectionCell.types.js.map +1 -1
- package/lib-commonjs/components/TableSelectionCell/index.js +0 -6
- package/lib-commonjs/components/TableSelectionCell/index.js.map +1 -1
- package/lib-commonjs/components/TableSelectionCell/renderTableSelectionCell.js +6 -8
- package/lib-commonjs/components/TableSelectionCell/renderTableSelectionCell.js.map +1 -1
- package/lib-commonjs/components/TableSelectionCell/useTableSelectionCell.js +8 -11
- package/lib-commonjs/components/TableSelectionCell/useTableSelectionCell.js.map +1 -1
- package/lib-commonjs/components/TableSelectionCell/useTableSelectionCellStyles.js +43 -50
- package/lib-commonjs/components/TableSelectionCell/useTableSelectionCellStyles.js.map +1 -1
- package/lib-commonjs/contexts/columnIdContext.js +16 -0
- package/lib-commonjs/contexts/columnIdContext.js.map +1 -0
- package/lib-commonjs/contexts/dataGridContext.js +20 -0
- package/lib-commonjs/contexts/dataGridContext.js.map +1 -0
- package/lib-commonjs/contexts/rowIdContext.js +16 -0
- package/lib-commonjs/contexts/rowIdContext.js.map +1 -0
- package/lib-commonjs/contexts/tableContext.js +0 -5
- package/lib-commonjs/contexts/tableContext.js.map +1 -1
- package/lib-commonjs/contexts/tableHeaderContext.js +0 -4
- package/lib-commonjs/contexts/tableHeaderContext.js.map +1 -1
- package/lib-commonjs/hooks/createColumn.js +42 -0
- package/lib-commonjs/hooks/createColumn.js.map +1 -0
- package/lib-commonjs/hooks/index.js +4 -8
- package/lib-commonjs/hooks/index.js.map +1 -1
- package/lib-commonjs/hooks/selectionManager.js +16 -34
- package/lib-commonjs/hooks/selectionManager.js.map +1 -1
- package/lib-commonjs/hooks/types.js.map +1 -1
- package/lib-commonjs/hooks/useTableFeatures.js +42 -0
- package/lib-commonjs/hooks/useTableFeatures.js.map +1 -0
- package/lib-commonjs/hooks/{useSelection.js → useTableSelection.js} +21 -28
- package/lib-commonjs/hooks/useTableSelection.js.map +1 -0
- package/lib-commonjs/hooks/{useSort.js → useTableSort.js} +15 -29
- package/lib-commonjs/hooks/useTableSort.js.map +1 -0
- package/lib-commonjs/index.js +27 -44
- package/lib-commonjs/index.js.map +1 -1
- package/package.json +15 -11
- package/lib/hooks/useSelection.js.map +0 -1
- package/lib/hooks/useSort.js.map +0 -1
- package/lib/hooks/useTable.js.map +0 -1
- package/lib-commonjs/hooks/useSelection.js.map +0 -1
- package/lib-commonjs/hooks/useSort.js.map +0 -1
- package/lib-commonjs/hooks/useTable.js +0 -42
- package/lib-commonjs/hooks/useTable.js.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -9,42 +9,62 @@ import type { ComponentState } from '@fluentui/react-utilities';
|
|
|
9
9
|
import type { ForwardRefComponent } from '@fluentui/react-utilities';
|
|
10
10
|
import type { Radio } from '@fluentui/react-radio';
|
|
11
11
|
import * as React_2 from 'react';
|
|
12
|
+
import { ReactNode } from 'react';
|
|
12
13
|
import type { Slot } from '@fluentui/react-utilities';
|
|
13
14
|
import type { SlotClassNames } from '@fluentui/react-utilities';
|
|
14
15
|
|
|
15
|
-
export declare
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
16
|
+
export declare type CellRenderFunction<TItem = unknown> = (column: TableColumnDefinition<TItem>) => React_2.ReactNode;
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Helper function to create column definition with defaults
|
|
20
|
+
* @param options - column definition options
|
|
21
|
+
* @returns - column definition with defaults
|
|
22
|
+
*/
|
|
23
|
+
export declare function createTableColumn<TItem>(options: CreateTableColumnOptions<TItem>): {
|
|
24
|
+
columnId: TableColumnId;
|
|
25
|
+
renderCell: (item: TItem) => ReactNode;
|
|
26
|
+
renderHeaderCell: () => ReactNode;
|
|
27
|
+
compare: (a: TItem, b: TItem) => number;
|
|
28
|
+
};
|
|
19
29
|
|
|
20
|
-
export declare
|
|
30
|
+
export declare interface CreateTableColumnOptions<TItem> extends Partial<TableColumnDefinition<TItem>> {
|
|
31
|
+
columnId: TableColumnId;
|
|
32
|
+
}
|
|
21
33
|
|
|
22
34
|
/**
|
|
23
|
-
* DataGrid component
|
|
35
|
+
* DataGrid component
|
|
24
36
|
*/
|
|
25
37
|
export declare const DataGrid: ForwardRefComponent<DataGridProps>;
|
|
26
38
|
|
|
27
39
|
/**
|
|
28
|
-
* DataGridBody component
|
|
40
|
+
* DataGridBody component
|
|
29
41
|
*/
|
|
30
|
-
export declare const DataGridBody: ForwardRefComponent<DataGridBodyProps
|
|
42
|
+
export declare const DataGridBody: ForwardRefComponent<DataGridBodyProps> & (<TItem>(props: DataGridBodyProps<TItem>) => JSX.Element);
|
|
31
43
|
|
|
32
44
|
export declare const dataGridBodyClassNames: SlotClassNames<DataGridBodySlots>;
|
|
33
45
|
|
|
34
46
|
/**
|
|
35
47
|
* DataGridBody Props
|
|
36
48
|
*/
|
|
37
|
-
export declare type DataGridBodyProps = TableBodyProps
|
|
49
|
+
export declare type DataGridBodyProps<TItem = unknown> = Omit<TableBodyProps, 'children'> & {
|
|
50
|
+
/**
|
|
51
|
+
* Render function for rows
|
|
52
|
+
*/
|
|
53
|
+
children: RowRenderFunction<TItem>;
|
|
54
|
+
};
|
|
38
55
|
|
|
39
56
|
export declare type DataGridBodySlots = TableBodySlots;
|
|
40
57
|
|
|
41
58
|
/**
|
|
42
59
|
* State used in rendering DataGridBody
|
|
43
60
|
*/
|
|
44
|
-
export declare type DataGridBodyState = TableBodyState
|
|
61
|
+
export declare type DataGridBodyState = TableBodyState & {
|
|
62
|
+
rows: TableRowData<unknown>[];
|
|
63
|
+
renderRow: RowRenderFunction;
|
|
64
|
+
};
|
|
45
65
|
|
|
46
66
|
/**
|
|
47
|
-
* DataGridCell component
|
|
67
|
+
* DataGridCell component
|
|
48
68
|
*/
|
|
49
69
|
export declare const DataGridCell: ForwardRefComponent<DataGridCellProps>;
|
|
50
70
|
|
|
@@ -64,15 +84,42 @@ export declare type DataGridCellState = TableCellState;
|
|
|
64
84
|
|
|
65
85
|
export declare const dataGridClassNames: SlotClassNames<DataGridSlots>;
|
|
66
86
|
|
|
67
|
-
export declare type
|
|
87
|
+
export declare type DataGridContextValue = TableFeaturesState<any> & {
|
|
88
|
+
/**
|
|
89
|
+
* How focus navigation will work in the datagrid
|
|
90
|
+
* @default cell
|
|
91
|
+
*/
|
|
92
|
+
focusMode: DataGridFocusMode;
|
|
93
|
+
/**
|
|
94
|
+
* Lets child components know if rows selection is enabled
|
|
95
|
+
* @see selectionMode prop enables row selection on the component
|
|
96
|
+
*/
|
|
97
|
+
selectableRows: boolean;
|
|
98
|
+
/**
|
|
99
|
+
* Enables subtle selection style
|
|
100
|
+
* @default false
|
|
101
|
+
*/
|
|
102
|
+
subtleSelection: boolean;
|
|
103
|
+
/**
|
|
104
|
+
* Row appearance when selected
|
|
105
|
+
* @default brand
|
|
106
|
+
*/
|
|
107
|
+
selectionAppearance: TableRowProps['appearance'];
|
|
108
|
+
};
|
|
109
|
+
|
|
110
|
+
export declare type DataGridContextValues = TableContextValues & {
|
|
111
|
+
dataGrid: DataGridContextValue;
|
|
112
|
+
};
|
|
113
|
+
|
|
114
|
+
export declare type DataGridFocusMode = 'none' | 'cell' | 'row_unstable';
|
|
68
115
|
|
|
69
116
|
/**
|
|
70
|
-
* DataGridHeader component
|
|
117
|
+
* DataGridHeader component
|
|
71
118
|
*/
|
|
72
119
|
export declare const DataGridHeader: ForwardRefComponent<DataGridHeaderProps>;
|
|
73
120
|
|
|
74
121
|
/**
|
|
75
|
-
* DataGridHeaderCell component
|
|
122
|
+
* DataGridHeaderCell component
|
|
76
123
|
*/
|
|
77
124
|
export declare const DataGridHeaderCell: ForwardRefComponent<DataGridHeaderCellProps>;
|
|
78
125
|
|
|
@@ -107,29 +154,48 @@ export declare type DataGridHeaderState = TableHeaderState;
|
|
|
107
154
|
/**
|
|
108
155
|
* DataGrid Props
|
|
109
156
|
*/
|
|
110
|
-
export declare type DataGridProps = TableProps
|
|
157
|
+
export declare type DataGridProps = TableProps & Pick<DataGridContextValue, 'items' | 'columns' | 'getRowId'> & Pick<Partial<DataGridContextValue>, 'focusMode' | 'subtleSelection' | 'selectionAppearance'> & Pick<UseTableSortOptions, 'sortState' | 'defaultSortState'> & Pick<UseTableSelectionOptions, 'defaultSelectedItems' | 'selectedItems'> & {
|
|
158
|
+
onSortChange?: (e: React_2.MouseEvent, sortState: SortState) => void;
|
|
159
|
+
onSelectionChange?: (e: React_2.MouseEvent | React_2.KeyboardEvent, data: OnSelectionChangeData) => void;
|
|
160
|
+
/**
|
|
161
|
+
* Enables row selection and sets the selection mode
|
|
162
|
+
* @default false
|
|
163
|
+
*/
|
|
164
|
+
selectionMode?: SelectionMode_2;
|
|
165
|
+
};
|
|
111
166
|
|
|
112
167
|
/**
|
|
113
|
-
* DataGridRow component
|
|
168
|
+
* DataGridRow component
|
|
114
169
|
*/
|
|
115
|
-
export declare const DataGridRow: ForwardRefComponent<DataGridRowProps
|
|
170
|
+
export declare const DataGridRow: ForwardRefComponent<DataGridRowProps> & (<TItem>(props: DataGridRowProps<TItem>) => JSX.Element);
|
|
116
171
|
|
|
117
172
|
export declare const dataGridRowClassNames: SlotClassNames<DataGridRowSlots>;
|
|
118
173
|
|
|
119
174
|
/**
|
|
120
175
|
* DataGridRow Props
|
|
121
176
|
*/
|
|
122
|
-
export declare type DataGridRowProps = TableRowProps
|
|
177
|
+
export declare type DataGridRowProps<TItem = unknown> = Omit<TableRowProps, 'children'> & Omit<ComponentProps<DataGridRowSlots>, 'children'> & {
|
|
178
|
+
children: CellRenderFunction<TItem>;
|
|
179
|
+
};
|
|
123
180
|
|
|
124
|
-
export declare type DataGridRowSlots = TableRowSlots
|
|
181
|
+
export declare type DataGridRowSlots = TableRowSlots & {
|
|
182
|
+
/**
|
|
183
|
+
* When selection is enabled on the @see DataGrid, all rows
|
|
184
|
+
* will render the selection cell.
|
|
185
|
+
*/
|
|
186
|
+
selectionCell?: Slot<typeof TableSelectionCell>;
|
|
187
|
+
};
|
|
125
188
|
|
|
126
189
|
/**
|
|
127
190
|
* State used in rendering DataGridRow
|
|
128
191
|
*/
|
|
129
|
-
export declare type DataGridRowState = TableRowState
|
|
192
|
+
export declare type DataGridRowState = TableRowState & ComponentState<DataGridRowSlots> & {
|
|
193
|
+
renderCell: CellRenderFunction;
|
|
194
|
+
columnDefs: TableColumnDefinition<any>[];
|
|
195
|
+
};
|
|
130
196
|
|
|
131
197
|
/**
|
|
132
|
-
* DataGridSelectionCell component
|
|
198
|
+
* DataGridSelectionCell component
|
|
133
199
|
*/
|
|
134
200
|
export declare const DataGridSelectionCell: ForwardRefComponent<DataGridSelectionCellProps>;
|
|
135
201
|
|
|
@@ -152,26 +218,12 @@ export declare type DataGridSlots = TableSlots;
|
|
|
152
218
|
/**
|
|
153
219
|
* State used in rendering DataGrid
|
|
154
220
|
*/
|
|
155
|
-
export declare type DataGridState = TableState
|
|
221
|
+
export declare type DataGridState = TableState & {
|
|
222
|
+
tableState: TableFeaturesState<unknown>;
|
|
223
|
+
} & Pick<DataGridContextValue, 'focusMode' | 'selectableRows' | 'subtleSelection' | 'selectionAppearance' | 'getRowId'>;
|
|
156
224
|
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
* The row data for rendering
|
|
160
|
-
* @param rowEnhancer - Enhances the row with extra user data
|
|
161
|
-
*/
|
|
162
|
-
getRows: <TRowState extends RowState<TItem> = RowState<TItem>>(rowEnhancer?: RowEnhancer<TItem, TRowState>) => TRowState[];
|
|
163
|
-
/**
|
|
164
|
-
* State and actions to manage row selection
|
|
165
|
-
*/
|
|
166
|
-
selection: TableSelectionState;
|
|
167
|
-
/**
|
|
168
|
-
* State and actions to manage row sorting
|
|
169
|
-
*/
|
|
170
|
-
sort: TableSortState<TItem>;
|
|
171
|
-
/**
|
|
172
|
-
* Table columns
|
|
173
|
-
*/
|
|
174
|
-
columns: ColumnDefinition<TItem>[];
|
|
225
|
+
declare interface OnSelectionChangeData {
|
|
226
|
+
selectedItems: Set<TableRowId>;
|
|
175
227
|
}
|
|
176
228
|
|
|
177
229
|
/**
|
|
@@ -254,37 +306,26 @@ export declare const renderTableRow_unstable: (state: TableRowState) => JSX.Elem
|
|
|
254
306
|
*/
|
|
255
307
|
export declare const renderTableSelectionCell_unstable: (state: TableSelectionCellState) => JSX.Element;
|
|
256
308
|
|
|
257
|
-
declare type RowEnhancer<TItem, TRowState extends
|
|
309
|
+
declare type RowEnhancer<TItem, TRowState extends TableRowData<TItem> = TableRowData<TItem>> = (row: TableRowData<TItem>) => TRowState;
|
|
258
310
|
|
|
259
|
-
export declare type
|
|
260
|
-
|
|
261
|
-
export declare interface RowState<TItem> {
|
|
262
|
-
/**
|
|
263
|
-
* User provided data
|
|
264
|
-
*/
|
|
265
|
-
item: TItem;
|
|
266
|
-
/**
|
|
267
|
-
* The row id, defaults to index position in the collection
|
|
268
|
-
*/
|
|
269
|
-
rowId: RowId;
|
|
270
|
-
}
|
|
311
|
+
export declare type RowRenderFunction<TItem = unknown> = (row: TableRowData<TItem>, ...rest: unknown[]) => React_2.ReactNode;
|
|
271
312
|
|
|
272
313
|
declare type SelectionMode_2 = 'single' | 'multiselect';
|
|
273
314
|
|
|
274
315
|
export declare type SortDirection = 'ascending' | 'descending';
|
|
275
316
|
|
|
276
317
|
declare interface SortState {
|
|
277
|
-
sortColumn:
|
|
318
|
+
sortColumn: TableColumnId | undefined;
|
|
278
319
|
sortDirection: SortDirection;
|
|
279
320
|
}
|
|
280
321
|
|
|
281
322
|
/**
|
|
282
|
-
* Table component
|
|
323
|
+
* Table component
|
|
283
324
|
*/
|
|
284
325
|
export declare const Table: ForwardRefComponent<TableProps>;
|
|
285
326
|
|
|
286
327
|
/**
|
|
287
|
-
* TableBody component
|
|
328
|
+
* TableBody component
|
|
288
329
|
*/
|
|
289
330
|
export declare const TableBody: ForwardRefComponent<TableBodyProps>;
|
|
290
331
|
|
|
@@ -307,12 +348,12 @@ export declare type TableBodySlots = {
|
|
|
307
348
|
export declare type TableBodyState = ComponentState<TableBodySlots> & Pick<TableContextValue, 'noNativeElements'>;
|
|
308
349
|
|
|
309
350
|
/**
|
|
310
|
-
* TableCell component
|
|
351
|
+
* TableCell component
|
|
311
352
|
*/
|
|
312
353
|
export declare const TableCell: ForwardRefComponent<TableCellProps>;
|
|
313
354
|
|
|
314
355
|
/**
|
|
315
|
-
* TableCellActions component
|
|
356
|
+
* TableCellActions component
|
|
316
357
|
*/
|
|
317
358
|
export declare const TableCellActions: ForwardRefComponent<TableCellActionsProps>;
|
|
318
359
|
|
|
@@ -343,7 +384,7 @@ export declare const tableCellClassName = "fui-TableCell";
|
|
|
343
384
|
export declare const tableCellClassNames: SlotClassNames<TableCellSlots>;
|
|
344
385
|
|
|
345
386
|
/**
|
|
346
|
-
* TableCellLayout component
|
|
387
|
+
* TableCellLayout component
|
|
347
388
|
*/
|
|
348
389
|
export declare const TableCellLayout: ForwardRefComponent<TableCellLayoutProps>;
|
|
349
390
|
|
|
@@ -359,6 +400,10 @@ declare type TableCellLayoutContextValues = {
|
|
|
359
400
|
* TableCellLayout Props
|
|
360
401
|
*/
|
|
361
402
|
export declare type TableCellLayoutProps = ComponentProps<Partial<TableCellLayoutSlots>> & {
|
|
403
|
+
/**
|
|
404
|
+
* Renders design variants of the table cell
|
|
405
|
+
* @default undefined
|
|
406
|
+
*/
|
|
362
407
|
appearance?: 'primary';
|
|
363
408
|
};
|
|
364
409
|
|
|
@@ -379,7 +424,7 @@ export declare type TableCellLayoutSlots = {
|
|
|
379
424
|
/**
|
|
380
425
|
* A layout wrapper for the main and description slots
|
|
381
426
|
*/
|
|
382
|
-
|
|
427
|
+
content: Slot<'div'>;
|
|
383
428
|
};
|
|
384
429
|
|
|
385
430
|
/**
|
|
@@ -387,7 +432,7 @@ export declare type TableCellLayoutSlots = {
|
|
|
387
432
|
*/
|
|
388
433
|
export declare type TableCellLayoutState = ComponentState<TableCellLayoutSlots> & Pick<TableCellLayoutProps, 'appearance'> & {
|
|
389
434
|
avatarSize: AvatarSizes | undefined;
|
|
390
|
-
}
|
|
435
|
+
} & Pick<TableContextValue, 'size'>;
|
|
391
436
|
|
|
392
437
|
/**
|
|
393
438
|
* TableCell Props
|
|
@@ -401,12 +446,21 @@ export declare type TableCellSlots = {
|
|
|
401
446
|
/**
|
|
402
447
|
* State used in rendering TableCell
|
|
403
448
|
*/
|
|
404
|
-
export declare type TableCellState = ComponentState<TableCellSlots> & Pick<TableContextValue, 'noNativeElements'>;
|
|
449
|
+
export declare type TableCellState = ComponentState<TableCellSlots> & Pick<TableContextValue, 'noNativeElements' | 'size'>;
|
|
405
450
|
|
|
406
451
|
export declare const tableClassName = "fui-Table";
|
|
407
452
|
|
|
408
453
|
export declare const tableClassNames: SlotClassNames<TableSlots>;
|
|
409
454
|
|
|
455
|
+
export declare interface TableColumnDefinition<TItem> {
|
|
456
|
+
columnId: TableColumnId;
|
|
457
|
+
compare: (a: TItem, b: TItem) => number;
|
|
458
|
+
renderHeaderCell: () => React_2.ReactNode;
|
|
459
|
+
renderCell: (item: TItem) => React_2.ReactNode;
|
|
460
|
+
}
|
|
461
|
+
|
|
462
|
+
export declare type TableColumnId = string | number;
|
|
463
|
+
|
|
410
464
|
export declare const TableContextProvider: React_2.Provider<TableContextValue | undefined>;
|
|
411
465
|
|
|
412
466
|
export declare type TableContextValue = {
|
|
@@ -414,14 +468,16 @@ export declare type TableContextValue = {
|
|
|
414
468
|
* Affects the sizes of all table subcomponents
|
|
415
469
|
* @default medium
|
|
416
470
|
*/
|
|
417
|
-
size: 'small' | '
|
|
471
|
+
size: 'extra-small' | 'small' | 'medium';
|
|
418
472
|
/**
|
|
419
|
-
* Render all table elements as divs
|
|
473
|
+
* Render all table elements as divs instead of semantic table elements
|
|
420
474
|
* Using divs no longer uses `display: table` layout but `display: flex`
|
|
475
|
+
* @default false
|
|
421
476
|
*/
|
|
422
477
|
noNativeElements: boolean;
|
|
423
478
|
/**
|
|
424
479
|
* Whether the table is sortable
|
|
480
|
+
* @default false
|
|
425
481
|
*/
|
|
426
482
|
sortable: boolean;
|
|
427
483
|
};
|
|
@@ -430,13 +486,35 @@ export declare type TableContextValues = {
|
|
|
430
486
|
table: TableContextValue;
|
|
431
487
|
};
|
|
432
488
|
|
|
489
|
+
export declare type TableFeaturePlugin = <TItem>(tableState: TableFeaturesState<TItem>) => TableFeaturesState<TItem>;
|
|
490
|
+
|
|
491
|
+
export declare interface TableFeaturesState<TItem> extends Pick<UseTableFeaturesOptions<TItem>, 'items' | 'getRowId'> {
|
|
492
|
+
/**
|
|
493
|
+
* The row data for rendering
|
|
494
|
+
* @param rowEnhancer - Enhances the row with extra user data
|
|
495
|
+
*/
|
|
496
|
+
getRows: <TRowState extends TableRowData<TItem> = TableRowData<TItem>>(rowEnhancer?: RowEnhancer<TItem, TRowState>) => TRowState[];
|
|
497
|
+
/**
|
|
498
|
+
* State and actions to manage row selection
|
|
499
|
+
*/
|
|
500
|
+
selection: TableSelectionState;
|
|
501
|
+
/**
|
|
502
|
+
* State and actions to manage row sorting
|
|
503
|
+
*/
|
|
504
|
+
sort: TableSortState<TItem>;
|
|
505
|
+
/**
|
|
506
|
+
* Table columns
|
|
507
|
+
*/
|
|
508
|
+
columns: TableColumnDefinition<TItem>[];
|
|
509
|
+
}
|
|
510
|
+
|
|
433
511
|
/**
|
|
434
|
-
* TableHeader component
|
|
512
|
+
* TableHeader component
|
|
435
513
|
*/
|
|
436
514
|
export declare const TableHeader: ForwardRefComponent<TableHeaderProps>;
|
|
437
515
|
|
|
438
516
|
/**
|
|
439
|
-
* TableHeaderCell component
|
|
517
|
+
* TableHeaderCell component
|
|
440
518
|
*/
|
|
441
519
|
export declare const TableHeaderCell: ForwardRefComponent<TableHeaderCellProps>;
|
|
442
520
|
|
|
@@ -448,6 +526,9 @@ export declare const tableHeaderCellClassNames: SlotClassNames<TableHeaderCellSl
|
|
|
448
526
|
* TableHeaderCell Props
|
|
449
527
|
*/
|
|
450
528
|
export declare type TableHeaderCellProps = ComponentProps<Partial<TableHeaderCellSlots>> & {
|
|
529
|
+
/**
|
|
530
|
+
* @default undefined
|
|
531
|
+
*/
|
|
451
532
|
sortDirection?: SortDirection;
|
|
452
533
|
};
|
|
453
534
|
|
|
@@ -489,7 +570,7 @@ export declare type TableHeaderState = ComponentState<TableHeaderSlots> & Pick<T
|
|
|
489
570
|
export declare type TableProps = ComponentProps<TableSlots> & Partial<TableContextValue>;
|
|
490
571
|
|
|
491
572
|
/**
|
|
492
|
-
* TableRow component
|
|
573
|
+
* TableRow component
|
|
493
574
|
*/
|
|
494
575
|
export declare const TableRow: ForwardRefComponent<TableRowProps>;
|
|
495
576
|
|
|
@@ -497,12 +578,28 @@ export declare const tableRowClassName = "fui-TableRow";
|
|
|
497
578
|
|
|
498
579
|
export declare const tableRowClassNames: SlotClassNames<TableRowSlots>;
|
|
499
580
|
|
|
581
|
+
export declare interface TableRowData<TItem> {
|
|
582
|
+
/**
|
|
583
|
+
* User provided data
|
|
584
|
+
*/
|
|
585
|
+
item: TItem;
|
|
586
|
+
/**
|
|
587
|
+
* The row id, defaults to index position in the collection
|
|
588
|
+
*/
|
|
589
|
+
rowId: TableRowId;
|
|
590
|
+
}
|
|
591
|
+
|
|
592
|
+
export declare type TableRowId = string | number;
|
|
593
|
+
|
|
594
|
+
export declare const TableRowIdContextProvider: React_2.Provider<TableRowId | undefined>;
|
|
595
|
+
|
|
500
596
|
/**
|
|
501
597
|
* TableRow Props
|
|
502
598
|
*/
|
|
503
599
|
export declare type TableRowProps = ComponentProps<TableRowSlots> & {
|
|
504
600
|
/**
|
|
505
|
-
* A table row can have different variants
|
|
601
|
+
* A table row can have different variants. These appearances are
|
|
602
|
+
* intended to be used with selection.
|
|
506
603
|
* @default none
|
|
507
604
|
*/
|
|
508
605
|
appearance?: 'brand' | 'neutral' | 'none';
|
|
@@ -515,10 +612,12 @@ export declare type TableRowSlots = {
|
|
|
515
612
|
/**
|
|
516
613
|
* State used in rendering TableRow
|
|
517
614
|
*/
|
|
518
|
-
export declare type TableRowState = ComponentState<TableRowSlots> & Pick<TableContextValue, 'noNativeElements' | 'size'> & Pick<Required<TableRowProps>, 'appearance'
|
|
615
|
+
export declare type TableRowState = ComponentState<TableRowSlots> & Pick<TableContextValue, 'noNativeElements' | 'size'> & Pick<Required<TableRowProps>, 'appearance'> & {
|
|
616
|
+
isHeaderRow: boolean;
|
|
617
|
+
};
|
|
519
618
|
|
|
520
619
|
/**
|
|
521
|
-
* TableSelectionCell component
|
|
620
|
+
* TableSelectionCell component
|
|
522
621
|
*/
|
|
523
622
|
export declare const TableSelectionCell: ForwardRefComponent<TableSelectionCellProps>;
|
|
524
623
|
|
|
@@ -527,18 +626,24 @@ export declare const tableSelectionCellClassNames: SlotClassNames<TableSelection
|
|
|
527
626
|
/**
|
|
528
627
|
* TableSelectionCell Props
|
|
529
628
|
*/
|
|
530
|
-
export declare type TableSelectionCellProps = ComponentProps<Partial<
|
|
629
|
+
export declare type TableSelectionCellProps = ComponentProps<Partial<TableSelectionCellSlots>> & {
|
|
531
630
|
/**
|
|
532
|
-
* A table can have two kinds of selection modes
|
|
631
|
+
* A table can have two kinds of selection modes.
|
|
632
|
+
* @default checkbox
|
|
533
633
|
*/
|
|
534
634
|
type?: 'checkbox' | 'radio';
|
|
635
|
+
/**
|
|
636
|
+
* @default false
|
|
637
|
+
*/
|
|
535
638
|
checked?: CheckboxProps['checked'];
|
|
536
639
|
/**
|
|
537
|
-
* Only visible when checked or the parent row is hovered
|
|
640
|
+
* Only visible when checked or the parent row is hovered/focused
|
|
641
|
+
* @default false
|
|
538
642
|
*/
|
|
539
643
|
subtle?: boolean;
|
|
540
644
|
/**
|
|
541
645
|
* Completely hides the selection cell visually but takes up the same space
|
|
646
|
+
* @default false
|
|
542
647
|
*/
|
|
543
648
|
hidden?: boolean;
|
|
544
649
|
};
|
|
@@ -563,27 +668,27 @@ export declare interface TableSelectionState {
|
|
|
563
668
|
/**
|
|
564
669
|
* Clears all selected rows
|
|
565
670
|
*/
|
|
566
|
-
clearRows: () => void;
|
|
671
|
+
clearRows: (e: React_2.SyntheticEvent) => void;
|
|
567
672
|
/**
|
|
568
673
|
* Selects single row
|
|
569
674
|
*/
|
|
570
|
-
selectRow: (rowId:
|
|
675
|
+
selectRow: (e: React_2.SyntheticEvent, rowId: TableRowId) => void;
|
|
571
676
|
/**
|
|
572
677
|
* De-selects single row
|
|
573
678
|
*/
|
|
574
|
-
deselectRow: (rowId:
|
|
679
|
+
deselectRow: (e: React_2.SyntheticEvent, rowId: TableRowId) => void;
|
|
575
680
|
/**
|
|
576
681
|
* Toggle selection of all rows
|
|
577
682
|
*/
|
|
578
|
-
toggleAllRows: () => void;
|
|
683
|
+
toggleAllRows: (e: React_2.SyntheticEvent) => void;
|
|
579
684
|
/**
|
|
580
685
|
* Toggle selection of single row
|
|
581
686
|
*/
|
|
582
|
-
toggleRow: (rowId:
|
|
687
|
+
toggleRow: (e: React_2.SyntheticEvent, rowId: TableRowId) => void;
|
|
583
688
|
/**
|
|
584
689
|
* Collection of row ids corresponding to selected rows
|
|
585
690
|
*/
|
|
586
|
-
selectedRows: Set<
|
|
691
|
+
selectedRows: Set<TableRowId>;
|
|
587
692
|
/**
|
|
588
693
|
* Whether all rows are selected
|
|
589
694
|
*/
|
|
@@ -595,7 +700,8 @@ export declare interface TableSelectionState {
|
|
|
595
700
|
/**
|
|
596
701
|
* Checks if a given rowId is selected
|
|
597
702
|
*/
|
|
598
|
-
isRowSelected: (rowId:
|
|
703
|
+
isRowSelected: (rowId: TableRowId) => boolean;
|
|
704
|
+
selectionMode: SelectionMode_2;
|
|
599
705
|
}
|
|
600
706
|
|
|
601
707
|
export declare type TableSlots = {
|
|
@@ -610,24 +716,24 @@ export declare interface TableSortState<TItem> {
|
|
|
610
716
|
/**
|
|
611
717
|
* Column id of the currently sorted column
|
|
612
718
|
*/
|
|
613
|
-
sortColumn:
|
|
719
|
+
sortColumn: TableColumnId | undefined;
|
|
614
720
|
/**
|
|
615
721
|
* Set the sort direction for the specified column
|
|
616
722
|
*/
|
|
617
|
-
setColumnSort: (columnId:
|
|
723
|
+
setColumnSort: (event: React_2.SyntheticEvent, columnId: TableColumnId, sortDirection: SortDirection) => void;
|
|
618
724
|
/**
|
|
619
725
|
* Toggles the sort direction for specified column
|
|
620
726
|
*/
|
|
621
|
-
toggleColumnSort: (columnId:
|
|
727
|
+
toggleColumnSort: (event: React_2.SyntheticEvent, columnId: TableColumnId) => void;
|
|
622
728
|
/**
|
|
623
729
|
* Returns the sort direction if a column is sorted,
|
|
624
730
|
* returns undefined if the column is not sorted
|
|
625
731
|
*/
|
|
626
|
-
getSortDirection: (columnId:
|
|
732
|
+
getSortDirection: (columnId: TableColumnId) => SortDirection | undefined;
|
|
627
733
|
/**
|
|
628
734
|
* Sorts rows and returns a **shallow** copy of original items
|
|
629
735
|
*/
|
|
630
|
-
sort: (rows:
|
|
736
|
+
sort: <TRowState extends TableRowData<TItem>>(rows: TRowState[]) => TRowState[];
|
|
631
737
|
}
|
|
632
738
|
|
|
633
739
|
/**
|
|
@@ -635,8 +741,6 @@ export declare interface TableSortState<TItem> {
|
|
|
635
741
|
*/
|
|
636
742
|
export declare type TableState = ComponentState<TableSlots> & Pick<Required<TableProps>, 'size' | 'noNativeElements'> & TableContextValue;
|
|
637
743
|
|
|
638
|
-
export declare type TableStatePlugin = <TItem>(tableState: HeadlessTableState<TItem>) => HeadlessTableState<TItem>;
|
|
639
|
-
|
|
640
744
|
/**
|
|
641
745
|
* Create the state required to render DataGrid.
|
|
642
746
|
*
|
|
@@ -749,46 +853,6 @@ export declare const useDataGridSelectionCellStyles_unstable: (state: DataGridSe
|
|
|
749
853
|
*/
|
|
750
854
|
export declare const useDataGridStyles_unstable: (state: DataGridState) => DataGridState;
|
|
751
855
|
|
|
752
|
-
export declare function useSelection<TItem>(options: UseSelectionOptions): (tableState: HeadlessTableState<TItem>) => HeadlessTableState<TItem>;
|
|
753
|
-
|
|
754
|
-
declare interface UseSelectionOptions {
|
|
755
|
-
/**
|
|
756
|
-
* Can be multi or single select
|
|
757
|
-
*/
|
|
758
|
-
selectionMode: SelectionMode_2;
|
|
759
|
-
/**
|
|
760
|
-
* Used in uncontrolled mode to set initial selected rows on mount
|
|
761
|
-
*/
|
|
762
|
-
defaultSelectedItems?: Set<RowId>;
|
|
763
|
-
/**
|
|
764
|
-
* Used to control row selection
|
|
765
|
-
*/
|
|
766
|
-
selectedItems?: Set<RowId>;
|
|
767
|
-
/**
|
|
768
|
-
* Called when selection changes
|
|
769
|
-
*/
|
|
770
|
-
onSelectionChange?: (selectedItems: Set<RowId>) => void;
|
|
771
|
-
}
|
|
772
|
-
|
|
773
|
-
export declare function useSort<TItem>(options: UseSortOptions): (tableState: HeadlessTableState<TItem>) => HeadlessTableState<TItem>;
|
|
774
|
-
|
|
775
|
-
declare interface UseSortOptions {
|
|
776
|
-
/**
|
|
777
|
-
* Used to control sorting
|
|
778
|
-
*/
|
|
779
|
-
sortState?: SortState;
|
|
780
|
-
/**
|
|
781
|
-
* Used in uncontrolled mode to set initial sort column and direction on mount
|
|
782
|
-
*/
|
|
783
|
-
defaultSortState?: SortState;
|
|
784
|
-
/**
|
|
785
|
-
* Called when sort changes
|
|
786
|
-
*/
|
|
787
|
-
onSortChange?: (state: SortState) => void;
|
|
788
|
-
}
|
|
789
|
-
|
|
790
|
-
export declare function useTable<TItem>(options: UseTableOptions<TItem>, plugins?: TableStatePlugin[]): HeadlessTableState<TItem>;
|
|
791
|
-
|
|
792
856
|
/**
|
|
793
857
|
* Create the state required to render Table.
|
|
794
858
|
*
|
|
@@ -866,6 +930,14 @@ export declare const useTableCellStyles_unstable: (state: TableCellState) => Tab
|
|
|
866
930
|
|
|
867
931
|
export declare const useTableContext: () => TableContextValue;
|
|
868
932
|
|
|
933
|
+
export declare function useTableFeatures<TItem>(options: UseTableFeaturesOptions<TItem>, plugins?: TableFeaturePlugin[]): TableFeaturesState<TItem>;
|
|
934
|
+
|
|
935
|
+
export declare interface UseTableFeaturesOptions<TItem> {
|
|
936
|
+
columns: TableColumnDefinition<TItem>[];
|
|
937
|
+
items: TItem[];
|
|
938
|
+
getRowId?: (item: TItem) => TableRowId;
|
|
939
|
+
}
|
|
940
|
+
|
|
869
941
|
/**
|
|
870
942
|
* Create the state required to render TableHeader.
|
|
871
943
|
*
|
|
@@ -898,12 +970,6 @@ export declare const useTableHeaderCellStyles_unstable: (state: TableHeaderCellS
|
|
|
898
970
|
*/
|
|
899
971
|
export declare const useTableHeaderStyles_unstable: (state: TableHeaderState) => TableHeaderState;
|
|
900
972
|
|
|
901
|
-
export declare interface UseTableOptions<TItem> {
|
|
902
|
-
columns: ColumnDefinition<TItem>[];
|
|
903
|
-
items: TItem[];
|
|
904
|
-
getRowId?: (item: TItem) => RowId;
|
|
905
|
-
}
|
|
906
|
-
|
|
907
973
|
/**
|
|
908
974
|
* Create the state required to render TableRow.
|
|
909
975
|
*
|
|
@@ -915,11 +981,15 @@ export declare interface UseTableOptions<TItem> {
|
|
|
915
981
|
*/
|
|
916
982
|
export declare const useTableRow_unstable: (props: TableRowProps, ref: React_2.Ref<HTMLElement>) => TableRowState;
|
|
917
983
|
|
|
984
|
+
export declare const useTableRowIdContext: () => TableRowId;
|
|
985
|
+
|
|
918
986
|
/**
|
|
919
987
|
* Apply styling to the TableRow slots based on the state
|
|
920
988
|
*/
|
|
921
989
|
export declare const useTableRowStyles_unstable: (state: TableRowState) => TableRowState;
|
|
922
990
|
|
|
991
|
+
export declare function useTableSelection<TItem>(options: UseTableSelectionOptions): (tableState: TableFeaturesState<TItem>) => TableFeaturesState<TItem>;
|
|
992
|
+
|
|
923
993
|
/**
|
|
924
994
|
* Create the state required to render TableSelectionCell.
|
|
925
995
|
*
|
|
@@ -936,6 +1006,42 @@ export declare const useTableSelectionCell_unstable: (props: TableSelectionCellP
|
|
|
936
1006
|
*/
|
|
937
1007
|
export declare const useTableSelectionCellStyles_unstable: (state: TableSelectionCellState) => TableSelectionCellState;
|
|
938
1008
|
|
|
1009
|
+
declare interface UseTableSelectionOptions {
|
|
1010
|
+
/**
|
|
1011
|
+
* Can be multi or single select
|
|
1012
|
+
*/
|
|
1013
|
+
selectionMode: SelectionMode_2;
|
|
1014
|
+
/**
|
|
1015
|
+
* Used in uncontrolled mode to set initial selected rows on mount
|
|
1016
|
+
*/
|
|
1017
|
+
defaultSelectedItems?: Set<TableRowId>;
|
|
1018
|
+
/**
|
|
1019
|
+
* Used to control row selection
|
|
1020
|
+
*/
|
|
1021
|
+
selectedItems?: Set<TableRowId>;
|
|
1022
|
+
/**
|
|
1023
|
+
* Called when selection changes
|
|
1024
|
+
*/
|
|
1025
|
+
onSelectionChange?(e: React_2.SyntheticEvent, data: OnSelectionChangeData): void;
|
|
1026
|
+
}
|
|
1027
|
+
|
|
1028
|
+
export declare function useTableSort<TItem>(options: UseTableSortOptions): (tableState: TableFeaturesState<TItem>) => TableFeaturesState<TItem>;
|
|
1029
|
+
|
|
1030
|
+
declare interface UseTableSortOptions {
|
|
1031
|
+
/**
|
|
1032
|
+
* Used to control sorting
|
|
1033
|
+
*/
|
|
1034
|
+
sortState?: SortState;
|
|
1035
|
+
/**
|
|
1036
|
+
* Used in uncontrolled mode to set initial sort column and direction on mount
|
|
1037
|
+
*/
|
|
1038
|
+
defaultSortState?: SortState;
|
|
1039
|
+
/**
|
|
1040
|
+
* Called when sort changes
|
|
1041
|
+
*/
|
|
1042
|
+
onSortChange?(e: React_2.SyntheticEvent, state: SortState): void;
|
|
1043
|
+
}
|
|
1044
|
+
|
|
939
1045
|
/**
|
|
940
1046
|
* Apply styling to the Table slots based on the state
|
|
941
1047
|
*/
|
|
@@ -4,9 +4,8 @@ import { renderDataGrid_unstable } from './renderDataGrid';
|
|
|
4
4
|
import { useDataGridStyles_unstable } from './useDataGridStyles';
|
|
5
5
|
import { useDataGridContextValues_unstable } from './useDataGridContextValues';
|
|
6
6
|
/**
|
|
7
|
-
* DataGrid component
|
|
7
|
+
* DataGrid component
|
|
8
8
|
*/
|
|
9
|
-
|
|
10
9
|
export const DataGrid = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
11
10
|
const state = useDataGrid_unstable(props, ref);
|
|
12
11
|
useDataGridStyles_unstable(state);
|