MRT V2 Changelog
Note: As of v2.12.0, the React and ReactDom peer dependencies have been moved back down to React v17 in order to help more people upgrade to MRT v2 without having to upgrade to React v18.
Version 2.13.1 - 2024-07-28
Upgraded to TanStack Table v8.19.3
Upgraded to TanStack Virtual v3.8.3
Fixed EditTextField to allow custom select props
Version 2.13.0 - 2024-04-18
Upgraded to TanStack Table v8.16.0
New
sortUndefined
"first"
and"last"
options to allow forcing undefined values to be pushed to the beginning or end of sorted rows.New
_features
table option to allow adding new custom internal features to the TanStack Table instance.fixed
column.getCanGroup
always resolving totrue
Started using the default modal
z-index
value from the MUI theme for the full-screen table dialog to avoid issues with other modals and app bar components.Disabled Edit Save Button when
isSaving
state istrue
Fixed DatePicker Types generic
Added
el
locale for Greek translations
Version 2.12.1 - 2024-02-28
Fixed
rangeFilterIndex
being undefined in filterProps callbackAdded
hr
locale for Croatian translationsUpgraded to TanStack Table v8.13.2
Fixed column.getIsVisible() not returning accurate value for parent group columns
Fixed Deep Keys type for Partial TData types
New pagination table instance APIs
Version 2.12.0 - 2024-02-26
Marked React 17 as a peer dependency instead of React 18 since concurrent features are not yet being utilized under the hood in MRT (not until MRT v3 now)
Filter label tooltip will show label instead of value when a label is provided to filterSelectOptions
Fixed Column and Row Dragging element animation to not go back to where it started when dragging
Replaced dv styles with dvh styles in full-screen mode
Version 2.11.3 - 2024-02-14
Upgraded to TanStack Table v8.12.0 for new column pinning/sizing/pinning instance APIs and better column resizing performance
Fixed "Clear selection" button to always clear selection for all pages
Version 2.11.2 - 2024-02-08
Fixed bugs with batch row selection and row pinning together
Fixed duplicate pinned rows when global filter is present for non-sticky row pinning modes
Fixed selected row count in toolbar alert banner with sub row selection
Version 2.11.1 - 2024-02-05
Fixed bug where new batch row selection feature did not account for
manualPagination
Fixed bug where parent selected checkbox should not be indeterminate when the row itself is selected
Version 2.11.0 - 2024-02-05
Added new
enableBatchRowSelection
table option that is enabled by default that allows users to select multiple rows at once by holding down the shift key and clicking on a rowAdded small "Clear selection" button to the toolbar alert banner selected message by default when rows are selected
Now exporting all
MRT_*Props
component prop typesAdded new override option for passing in custom spinner while loading data with the
muiCircularProgressProps.Component
propFixed Autocomplete filter showing filter values instead of display labels once value is selected
Removed default Header html title attribute on all header cells
Version 2.10.0 - 2024-01-31
Added automatic column order state recalculation for dynamic columns and dynamic MRT display columns being enabled/disabled
Fixed bugs where enabling a feature like row selection conditionally would add columns to the end of the table when columnOrder state was not manually managed
Fixed bugs where the show/hide columns menu would be empty when loading in dynamic column definitions without providing the columnOrder state manually
Added new Cell Actions features which will show a MUI context menu when a cell is right-clicked
New
enableCellActions
table optionNew
renderCellActionMenuItems
table and column optionsNew
MRT_ActionMenuItem
component to make styling all MRT menu items consistently (icons, text, spacing) easier to be consistent
Fixed bug where the show all columns action menu item ignored the
enableHiding
column option
Version 2.9.2 - 2024-01-25
Added
disableScrollLock: true
to all MUI Menus and Select Menus to keep menus with their anchor origin while scrolling by defaultSwitched pagination rows per page select to use native select by default in mobile viewports
Fixed pagination rows per page input label for accessibility attribute
Removed unnecessary
::after
pseudo elements on table cells if they were unusedFixed edge cases with footer cell alignment
Added
position: 'relative'
to table and all rows and cellsFixed semantic sticky header regression
Fixed row order/dragging with column virtualization enabled bug
Version 2.9.1 - 2024-01-25
Fixed row selection highlighting logic on grouped/aggregated rows
Version 2.9.0 - 2024-01-24
Added new
renderCaption
table option to allow for a<caption>
element to be rendered within the tableFixed row hover opacity style issues for pinned columns and selected rows with
::before
and::after
pseudo elements in pinned cellsStandardized
data-index
,data-pinned
, anddata-selected
attributes on body rows, head cells, body cells, and footer cells where applicableColumn virtualization performance optimizations
Version 2.8.0 - 2024-01-19
Removed internal display column def memoization that caused edge cases with enabling and disabling features conditionally. (like
enableRowActions
andenableEditing
, etc.)Improved Column Resizing and Column/Row DnD Performance by caching column definitions while user is dragging
Added new
grow
column option to allow for columns to grow to fill the remaining space in the table whenlayoutMode: 'grid-no-grow'
is enabled, or to force a column to not grow whenlayoutMode: 'grid'
is enabled andgrow: false
is setmrt-row-select
,mrt-row-drag
,mrt-row-pin
, andmrt-row-number
columns are now set togrow: false
by default nowmrt-row-expand
column is also set togrow: false
if only detail panels are enabledmrt-row-expand
is now set to asize: 100
by default (slightly wider)
Fixed indentation of mrt expand column when layoutMode was grid or grid-no-grow (using margin instead of padding now)
Modified
editSelectOptions
to allow for dynamic values on a per-cell basis.({ row, cell, etc. }) => []
Fixed edit textbox controlled component warning
Version 2.7.0 - 2024-01-18
New
'positionCreatingRow'
table option to customize where the creating row is rendered in the table bodyAll MRT MUI menus now use the
baseBackgroundColor
mrt theme color for the menu background colorFixed bug where the page index was not being reset to last page with rows when number of rows in the table changed
Made some tooltips text non-interactive to prevent accidental clicks
Simplified internal column preparation APIs
Version 2.6.1 - 2024-01-11
Upgraded to TanStack Table
v8.11.6
for SSR bugfix (document not defined)
Version 2.6.0 - 2024-01-11
Added support for Detail Panels and Row Virtualization at the same time
Added support for Conditional Detail Panels (expand button is disabled when renderDetailPanel returns falsy value). Empty detail panels
<tr>
still render for virtualization and striped rows to work properly.Fixed Row Selection indeterminate and checked state when sub-row selection is off
Fixed Expand Row Button padding and rotation in RTL mode
Fixed Pagination Icon Buttons in RTL mode
Set a default "right" cell alignment when theme.direction is "rtl"
Improved Header Group Column Sizing
Removed some internal
"@mui/material"
imports. (Could speed up dev server hot reloads in some cases)
Version 2.5.2 - 2024-01-10
Fixed bug where Date and Time Picker filters were not opening properly on mobile devices
Version 2.5.1 - 2024-01-09
Fixed selected row count in toolbar alert banner when using manualPagination
Fixed row dragging with column virtualization enabled
Fixed filter mode switching away from empty/notEmpty having an empty space value
Fixed any setDragImage errors with internal try/catch when refs are null
Fixed filter range slider not having a min width in popover columnFilterDisplayMode
Version 2.5.0 - 2024-01-08
Implemented better default UI for
groupedColumnMode: 'remove'
. Expand column shows grouped row valuesFixed grouped parent row selection toggling bugs
Tweaked media queries for search textbox on top of top toolbar alert banner
Version 2.4.1 - 2024-01-05
Fixed MUI Pagination disabled tooltip warning
Fixed Column Pinning Spacing with Column Virtualization
Fixed Column Action Clear Filter Item when filterFn was "empty" or "notEmpty"
Version 2.4.0 - 2024-01-04
Upgraded to TanStack Table
v8.11.3
for bug fixes with expanding and row selectionAdded
'datetime'
,'datetime-range'
,'time'
, and'time-range'
filter variantsAdded Tooltips to pagination buttons
Added new
MRT_ColumnVirtualizer
andMRT_RowVirtualizer
typesAdded behavior to not render Save Row button unless either
onCreatingRowSave
oronEditingRowSave
is providedAllowed
muiColumnActionsButtonProps.children
to be overridden with a custom iconFixed issue with Sticky Row Pinning and Row Virtualization
Version 2.3.1 - 2024-01-02
disable row selection for creating row
fixed virtualized column index warning
Version 2.3.0 - 2024-01-02
Added new
visibleInShowHideMenu
column option to allow for columns to be hidden from the show/hide columns menu, regardless of column visibility stateFixed bug where the Show All button in the show/hide columns menu did not properly skip columns with
enableHiding: false
setFixed bug where creatingRow did not work with virtualization enabled
Version 2.2.0 - 2024-01-01
Added new
useMRT_Rows
,useMRT_ColumnVirtualizer
, anduseMRT_RowVirtualizer
hooks to allow for more advanced use cases for headless modeFixed possible duplicate table body row keys warning
Version 2.1.0 - 2023-12-22
Upgraded to TanStack Table
v8.11.2
for newcolumnResizeDirection
table optionAdded proper column resizing support for right-to-left languages
Updated French locale
Fixed warning on edit textfield with outlined variant
Version 2.0.6 - 2023-12-15
Fixed horizontal scrollbar showing up in layoutMode grid with column resizing enabled
add
disabled
prop tomuiTablePaginationProps
Version 2.0.5 - 2023-12-05
Upgraded to TanStack Virtual
v3.0.1
stable releaseAdded
MuiTablePagination-root
class to mrt pagination root element for easier stylingFixed potential duplicate key warning while rendering skeleton rows when
getRowId
table option is provided and doesn't properly returnundefined
Fixed
muiSearchTextFieldProps.InputProps
now able to partially overridden
Version 2.0.4 - 2023-11-09
Add support for
'all'
rows pagination optionAdded
muiPaginationProps.SelectProps
support back to allow for native select
Version 2.0.3 - 2023-11-06
Locale updates
Version 2.0.2 - 2023-11-01
Fixed bug with popover filters null ref focus
Version 2.0.1 - 2023-10-31
Fixed bug where edit row action menu was created for all editDisplayModes
Fixed rest spread on table head row
Changed pagination text to a span instead of with hardcoded 0 margin and padding
Version 2.0.0 - 2023-10-27
Made
MaterialReactTable
a named export instead of a default export.Made
@mui/x-date-pickers
a required peer dependency.Added new
useMaterialReactTable
hook to replace the need for thetableInstanceRef
prop.Now exporting all
MRT_*
sub-components and utility functions frommaterial-react-table
package to allow for easier building of custom UIs in headless mode.Added
createMRTColumnHelper
utility function to help with creating columns with slightly more type-safety.Added new
mrtTheme
table option to allow for changing some basic mui theme colors that are hard to target with CSS or the mui theme provider.Added new
layoutMode: 'grid-no-grow'
option for better column resizing behavior.Improved column resizing UI.
Added new
columnFilterDisplayMode
option to allow for different filter UIs.Added new
createDisplayMode
table option to allow for different create/editing UIs. Added new functionality for creating new rows in the table.Renamed
editMode
prop toeditDisplayMode
table option.Added new
paginationDisplayMode
option to allow for different pagination UIs.Added new
rowPinningDisplayMode
table option and row pinning features.Added new
"autocomplete"
filterVariant.Added new
"date"
filterVariant.Added new
"date-range"
filterVariant.Added new loading overlay UI features when
isLoading
orshowLoadingOverlay
are true Progress bars no longer show whenisLoading
is true.Changed the default sort icon and show it as visible with a low opacity by default in table header cells.
Changed the filter label icon to show before the sort icon in table header cells.
Changed the default global filter search box UI to be compact and outlined.
Changed edit text field UI to be more compact by default.
Changed the default rowNumberDisplayMode to
"static"
.Changed how the full screen table UI works internally. (No more mui full screen dialog, just simple CSS)
Upgraded to TanStack Table
v8.10.7
Upgraded to TanStack Virtual
v3.0.0-beta.68
Renamed options
editingMode
->editDisplayMode
rowNumberMode
->rowNumberDisplayMode
enablePinning
->enableColumnPinning
andenableRowPinning
virtualizerInstanceRef
split intocolumnVirtualizerRef
androwVirtualizerRef
virtualizerProps
split intocolumnVirtualizerOptions
androwVirtualizerOptions
columnVirtualizerProps
->columnVirtualizerOptions
rowVirtualizerProps
->rowVirtualizerOptions
muiTablePaginationProps
->muiPaginationProps
muiTableBodyCellCopyButtonProps
->muiCopyButtonProps
muiTableBodyCellEditTextFieldProps
->muiEditTextFieldProps
muiTableBodyCellSkeletonProps
->muiSkeletonProps
muiTableBodyRowDragHandleProps
->muiRowDragHandleProps
muiTableDetailPanelProps
->muiDetailPanelProps
muiTableHeadCellColumnActionsButtonProps
->muiColumnActionsButtonProps
muiTableHeadCellDragHandleProps
->muiColumnDragHandleProps
muiTableHeadCellFilterCheckboxProps
->muiFilterCheckboxProps
muiTableHeadCellFilterTextFieldProps
->muiFilterTextFieldProps
muiTableHeadCellFilterSliderProps
->muiFilterSliderProps
MRT_FilterFnsState
->MRT_ColumnFilterFns
MaterialReactTableProps
->MRT_TableOptions
MRT_FullScreenToggleButton
=>MRT_ToggleFullScreenButton
Is anything missing from this v2 changelog? Make a PR or join the Discord to discuss.
Old MRT Version 1 Changelog
See the old V1 Changelog
Curious about future releases? Check out the Roadmap