Skip to content

Commit 2ba0bf7

Browse files
6.0.0
* Use separate columns for Pivots and Expanders, more render options * Better expanding and aggregation control * Updated Renderer Keys and Stories (+ story cleanup) * Fixed Typo * Resizing Fixes, custom sorting, new api names * +Key constants, prop/callback changes, controllable filters and resizing, subRow + pivoting expansion * Remove console.log * Trying generalize expanders to work on any column * Fix up stories. * Better custom sorting * Finish fixing up stories with better source * Fix SubComponent Story * Updated Changelog * 6.0.0 * Use Correct PivotingOptions source * Handle edge cases in expandable hover states and event handlers * Add defaultExpanded prop * Rename sorting->sorted, onSortingChange->onSortedChange, defaultSorting->defaultSorted * filtering->filtered, onFilteringChange->onFilteredChange, defaultFiltering->defaultFiltered * Rename expandedRows->expanded, onExpandRow->onExpanded * Rename resizing->resized, defaultResizing->defaultResized, onResize->onResizedChange * Rename onExpanded->onExpandedChange * Cleanup Readme * Standardize global and column level resizable and sortable properties * Rename showFilters->filterable, hideFilter->filterable * Cleanup Changelog and lint errors * Remove unused prop * Remove unused prop from readme.
1 parent ad7d31c commit 2ba0bf7

40 files changed

+2110
-2785
lines changed

.storybook/config.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import Readme from '../README.md'
1313
import Simple from '../stories/Simple.js'
1414
import CellRenderers from '../stories/CellRenderers.js'
1515
import DefaultSorting from '../stories/DefaultSorting.js'
16+
import CustomSorting from '../stories/CustomSorting.js'
1617
import CustomWidths from '../stories/CustomWidths.js'
1718
import CustomComponentProps from '../stories/CustomComponentProps.js'
1819
import ServerSide from '../stories/ServerSide.js'
@@ -28,6 +29,7 @@ import Filtering from '../stories/Filtering.js'
2829
import ControlledTable from '../stories/ControlledTable.js'
2930
import PivotingOptions from '../stories/PivotingOptions.js'
3031
import EditableTable from '../stories/EditableTable.js'
32+
import SubRows from '../stories/SubRows.js'
3133
//
3234
configure(() => {
3335
storiesOf('1. Docs')
@@ -46,6 +48,7 @@ configure(() => {
4648
.add('Simple Table', Simple)
4749
.add('Cell Renderers & Custom Components', CellRenderers)
4850
.add('Default Sorting', DefaultSorting)
51+
.add('Custom Sorting', CustomSorting)
4952
.add('Custom Column Widths', CustomWidths)
5053
.add('Custom Component Props', CustomComponentProps)
5154
.add('Server-side Data', ServerSide)
@@ -61,4 +64,5 @@ configure(() => {
6164
.add('Custom Filtering', Filtering)
6265
.add('Controlled Component', ControlledTable)
6366
.add('Editable table', EditableTable)
67+
// .add('Sub Rows', SubRows)
6468
}, module)

CHANGELOG.md

Lines changed: 40 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,44 @@
11
## 6.0.0
22

3-
* Pivot Columns can now be sorted and filtered individually.
4-
* More control over Pivot Column rendering.
5-
* Prevent transitions while column resizing for a smoother resize effect.
6-
* Disable text selection while resizing columns.
3+
##### New Features
4+
- New Renderers:
5+
- `Aggregated` - Custom renderer for aggregated cells
6+
- `Pivot` - Custom renderer for Pivoted Cells (utilizes `Expander` and `PivotValue`)
7+
- `PivotValue` - Custom renderer for Pivot cell values (deprecates the undocumented `pivotRender` option)
8+
- `Expander` - Custom renderer for Pivot cell Expander
9+
- Added custom sorting methods per table via `defaultSortMethod` and per column via `column.sortMethod`
10+
- Pivot columns are now visibly separate and sorted/filtered independently.
11+
- Added `column.resizable` to override global table `resizable` option for specific columns.
12+
- Added `column.sortable` to override global table `sortable` option for specific columns.
13+
- Added `column.filterable` to override global table `filterable` option for specific columns.
14+
- Added `defaultExpanded` table option.
15+
- All callbacks can now be utilized without needing to hoist and manage the piece of state they export. That is what their prop counterparts are for, so now the corresponding prop is used instead of the callback to detect a "fully controlled" state.
16+
- Prevent transitions while column resizing for a smoother resize effect.
17+
- Disable text selection while resizing columns.
18+
719

820
##### Breaking API Changes
9-
* Removed `pivotRender` column option. You can now control how the value is displayed by overriding the `PivotValueComponent`.
10-
* Changed how special `expander: true` column renders pivot columns.
11-
See [Pivoting Options Story](https://react-table.js.org/?selectedKind=2.%20Demos&selectedStory=Pivoting%20Options&full=0&down=1&left=1&panelRight=0&downPanel=kadirahq%2Fstorybook-addon-actions%2Factions-panel) for a reference on how to customize pivot column rendering.
21+
- New Renderers:
22+
- `Cell` - deprecates and replaces `render`
23+
- `Header` - deprecates and replaces `header`
24+
- `Footer` - deprecates and replaces `footer`
25+
- `Filter`- deprecates and replaces `filterRender`
26+
- Callbacks now provide the destination state as the primary parameter(s). This makes hoisting and controlling the state in redux or component state much easier. eg.
27+
- `onSorting` no longer requires you to build your own toggle logic
28+
- `onResize` no longer requires you to build your own resize logic
29+
- Renamed `onChange` callback -> `onFetchData` which will always fire when a new data model needs to be fetched (or if not using `manual`, when new data is materialized internally).
30+
- Renamed `filtering` -> `filtered`
31+
- Renamed `sorting` -> `sorted`
32+
- Renamed `expandedRows` -> `expanded`
33+
- Renamed `resizing` -> `resized`
34+
- Renamed `defaultResizing` -> `defaultResized`
35+
- Renamed `defaultFiltering` -> `defaultFiltered`
36+
- Renamed `defaultSorting` -> `defaultSorted`
37+
- Renamed `onSortingChange` -> `onSortedChange`
38+
- Renamed `onFilteringChange` -> `onFilteredChange`
39+
- Renamed `onResize` -> `onResizedChange`
40+
- Renamed `onExpandRow` -> `onExpandedChange`
41+
- Renamed `showFilters` -> `filterable`
42+
- Renamed `hideFilter` -> `filterable` (Column option. Note the true/false value is now flipped.)
43+
- `cellInfo.row` and `rowInfo.row` now reference the materialize data for the table. To reference the original row, use `cellInfo.original` and `rowInfo.original`
44+
- Removed `pivotRender` column option. You can now control how the value is displayed by overriding the `PivotValueComponent` or the individual column's `PivotValue` renderer. See [Pivoting Options Story](https://react-table.js.org/?selectedKind=2.%20Demos&selectedStory=Pivoting%20Options&full=0&down=1&left=1&panelRight=0&downPanel=kadirahq%2Fstorybook-addon-actions%2Factions-panel) for a reference on how to customize pivot column rendering.

0 commit comments

Comments
 (0)