Releases: mui/mui-x
v4.0.0-alpha.21
Feb 27, 2021
Big thanks to the 7 contributors who made this release possible. Here are some highlights ✨:
-
🎁 Add support for CSV export (#1030) @DanailH.
This is the first iteration of the feature. You can either render theGridToolbarExport
component in the toolbar or use the apiRefexportDataAsCsv
/getDataAsCsv
methods.See the documentation for more details.
-
🌏 Improve the support for custom locales (#1096, #1079, #1109, #1077)
-
♿️ Fix a couple of accessibility issues with the popups (#1105, #1102)
@material-ui/[email protected] / @material-ui/[email protected]
Breaking changes
-
[DataGrid] Prefix all public API to fit into the global Material-UI namespace (#1069) @DanailH
This change gets the data grid one step closer to a stable release. It allows the data grid to fit into the global namespace of Material-UI. All the exported modules should have a unique name. It allows the search features, in Google, in the docs, and in the codebase to work effectively and efficiently.For the mirgration, prefixing a broken import with "grid" is often enough. In the case it's not working, head to the pull request's description. It details all the changes.
Changes
- [DataGrid] Add frFR locale (#1079) @oliviertassinari
- [DataGrid] Add missing TablePagination localizations (#1109) @DanailH
- [DataGrid] Add ptBR locale (#1077) @erikian
- [DataGrid] Fix checked checkbox when empty rows (#1068) @bigandy
- [DataGrid] Fix issue with visible rows state (#1113) @dtassone
- [DataGrid] Fix last row (#1071) @dtassone
- [DataGrid] Fix menu accessible (#1105) @DanailH
- [DataGrid] Fix missing translation filterOperatorAfter key (#1096) @DanailH
- [DataGrid] Fix preferences panel accessibility (#1102) @DanailH
- [DataGrid] Implement CSV export (#1030) @DanailH
Docs
- [docs] Add expand cell renderer demo (#1070) @dtassone
- [docs] Clarify align is separate from headerAlign (#1074) @alexdanilowicz
- [docs] Clarify product split (#1080) @oliviertassinari
Core
- [core] Fix storybook pagination stories (#1099) @dtassone
- [core] Pin playwright image to known working version (#1110) @oliviertassinari
- [test] Add visual regression tests (#1081) @oliviertassinari
- [test] Avoid Rate Limit Exceeded (#1059) @oliviertassinari
- [test] Fix containers size for screenshots (#1111) @oliviertassinari
- [test] Fix visual regression flakiness (#1115) @oliviertassinari
- [test] Improve BrowserStack configuration (#1100) @oliviertassinari
- [test] Speed-up rebuild in Karma (#1064) @oliviertassinari
4.0.0-alpha.20
Feb 17, 2021
Big thanks to the 4 contributors who made this release possible. Here are some highlights ✨:
- 📍 Add support for default locales (#983) @DanailH
We have built the infrastructure to support around 100 default locales. If you have localized the data grid in your application. Please do consider contributing new translations back to Material-UI by opening a pull request. - 🎁 Add new
selectionModel
prop (#986) @dtassone
The prop can be used to control the selected rows in the data grid. See the docs. - 💅 Add support for default props from theme (#1019) @DanailH
- 🙌 Fix scrollbar size on windows (#1061) @dtassone
- 🐛 Polish existing features, fix 9 issues.
@material-ui/[email protected] / @material-ui/[email protected]
Breaking changes
-
[DataGrid] Remove
sortDirection
from column definitions. Consolidate around fewer ways of doing the same thing. (#1015) @dtassone-columns[1] = { ...columns[1], sortDirection: 'asc' }; return ( <div> - <DataGrid rows={rows} columns={columns} /> + <DataGrid rows={rows} columns={columns} sortModel={[{ field: columns[1].field, sort: 'asc' }]} /> </div>
-
[DataGrid] Rename the
onSelectionChange
prop toonSelectionModelChange
for consistency. (#986) @dtassone-<DataGrid onSelectionChange={selectionChangeHandler} /> +<DataGrid onSelectionModelChange={onSelectionModelChangeHandler} />
-
[DataGrid] Remove
showToolbar
prop (#948) @DanailH-import { DataGrid } from '@material-ui/data-grid'; +import { DataGrid, GridToolbar } from '@material-ui/data-grid'; -<DataGrid showToolbar /> +<DataGrid components={{ Toolbar: GridToolbar }} />
-
[DataGrid] Change page index base, from 1 to 0. (#1021) @dtassone
This change is done for consistency withTablePagination
and JavaScript arrays that are 0-based. Material-UI still uses a 1-base page for thePagination
component that matches the URL's query.-const [page, setPage] = React.useState(1); +const [page, setPage] = React.useState(0); return ( <div className="grid-container"> <DataGrid rows={rows} columns={columns} page={page} /> </div>
Changes
- [DataGrid] Add bgBG locale (#983) @DanailH
- [DataGrid] Add last of the missing translations (#1033) @DanailH
- [DataGrid] Add support for default props from theme (#1019) @DanailH
- [DataGrid] Fix controllable filters and select all rows with filters (#1020) @dtassone
- [DataGrid] Fix onPageChange and onPageSizeChange event trigger (#1034) @dtassone
- [DataGrid] Fix process is not defined (EXPERIMENTAL_ENABLED) (#1027) @leontastic
- [DataGrid] Fix scrollbar size on windows (#1061) @dtassone
- [DataGrid] Fix warning with v5 (#1038) @oliviertassinari
- [DataGrid] Resolve the api ref at the same time as any other ref (#990) @oliviertassinari
- [DataGrid] Use the disableDensitySelector to disable the DensitySelector (#1031) @DanailH
- [DataGrid] Fix passing [] or undefined in sortModel prop (#1035) @dtassone
- [XGrid] Fix server-side multi filters (#1029) @dtassone
Docs
- [docs] Add code snippet for localization docs in the data grid (#1024) @DanailH
- [docs] Fix usage of the wrong type (#1062) @oliviertassinari
- [docs] Reduce fears around license upfront @oliviertassinari
- [docs] Update streaming docs (#1013) @dtassone
Core
- [core] Batch small changes (#991) @oliviertassinari
- [core] Save/restore actual yarn cache folder (#1039) @oliviertassinari
- [test] Increase yarn timeout (#1023) @oliviertassinari
- [test] Link CircleCI URL in BS (#1060) @oliviertassinari
v4.0.0-alpha.19
Feb 5, 2021
Big thanks to the 5 contributors who made this release possible. Here are some highlights ✨:
- 🎁 Add getRowId prop (#972) @dtassone
- 🚀 Add streaming delete row api (#980) @dtassone
- 💅 Fix autoHeight (#940) @oliviertassinari
- 🙌 Enable the data grid to work under strict mode (#933) @dtassone
- ⚡️ Add component slots for toolbar and preference panel (#971) @DanailH
- 🐛 Polish existing features, fix 9 issues.
@material-ui/[email protected] / @material-ui/[email protected]
- [DataGrid] Add component slots for toolbar and preference panel (#971) @DanailH
- [DataGrid] Add getRowId prop (#972) @dtassone
- [DataGrid] Add streaming delete row api (#980) @dtassone
- [DataGrid] Fix autoHeight (#940) @oliviertassinari
- [DataGrid] Fix column reorder instability (#950) @dtassone
- [DataGrid] Fix footer visual regression (#932) @dtassone
- [DataGrid] Fix strict mode issue with apiRef (#933) @dtassone
- [DataGrid] Work on the accessibility of the column menu (#900) @zj9495
- [DataGrid] Fix timing guarentee (#981) @oliviertassinari
- [DataGrid] Fix unstable footer height (#937) @oliviertassinari
- [DataGrid] Fix usage of the prop-types API (#955) @oliviertassinari
- [DataGrid] Fix duplicate aria-label (#953) @oliviertassinari
Docs
- [docs] Add sorting page in datagrid docs (#931) @dtassone
- [docs] Api page update with component slots (#969) @dtassone
- [docs] Catch leaks ahread of time (#979) @oliviertassinari
- [docs] Fix immutability with filter operator demos (#975) @dtassone
- [docs] Improve docs of DataGrid about filter operators (#973) @SaskiaKeil
- [docs] Improve the docs for the filtering feature (#945) @dtassone
Core
- [core] Add 'Order id 💳' section in issues (#952) @oliviertassinari
- [core] Improve prop-types handling (#978) @oliviertassinari
- [core] Investigate bundle size (#954) @oliviertassinari
v4.0.0-alpha.18
Jan 26, 2021
Big thanks to the 5 contributors who made this release possible. Here are some highlights ✨:
-
🎁 Add support for Material-UI v5-alpha (#855) @DanailH.
The data grid supports Material-UI v4 and v5. We aim to retain the support for v4 as long as v5 hasn't reached the beta phase. If you using v5, use the documentation of the component for v4. -
💅 Update the customization API to be closer to Material-UI v5. (#890, #851, #879) @dtassone
The date grid accepts two props:components
andcomponentsProps
.
The first prop allows to swapping specific components used in slots the grid, like the checkboxes.
The second one allows providing extra props to each slot. It avoids the need for using the React context to access information from outside the data grid.See the RFC for more details.
-
🐛 Polish existing features, fix 3 issues.
@material-ui/[email protected] / @material-ui/[email protected]
Breaking changes
-
[DataGrid] Implement customization pattern of Material-UI v5 (#851, #879) @dtassone
- Capitalize the keys of the
components
prop. This change aims to bring consistency with the customization pattern of Material-UI v5:
<DataGrid components={{ - noRowsOverlay: CustomNoRowsOverlay, + NoRowOverlay: CustomNoRowsOverlay, }} />
- Move all the icon components overrides in the
components
prop. And added the suffix 'Icon' on each icon component. This change aims to bring consistency with the customization pattern of Material-UI v5:
<DataGrid - icons: {{ - ColumnSortedAscending: SortedAscending, - }}, + components={{ + ColumnSortedAscendingIcon: SortedAscending, + }} />
- Change the props provided to the component of the
components
prop. Expose the whole state instead of an arbitrary set of props:
-function CustomPagination(props: ComponentProps) { - const { pagination, api } = props; +function CustomPagination(props: BaseComponentProps) { + const { state, api } = props; return ( <Pagination - page={pagination.page} - count={pagination.pageCount} + page={state.pagination.page} + count={state.pagination.pageCount} // ... <DataGrid components={{ Pagination: CustomPagination }} />
- Capitalize the keys of the
Changes
- [DataGrid] Add customisation on panels (#890) @dtassone
- [DataGrid] Add support for Material-UI v5-alpha (#855) @DanailH
- [DataGrid] Fix footer count not shown on small screen (#899) @mnajdova
- [DataGrid] Fix column selector crash when hiding columns (#875) @DanailH
- [DataGrid] Fix Shift + Space keyboard regression to select row (#897) @dtassone
Docs
- [docs] Fix imports for x-grid-data-generator (#887) @DanailH
- [docs] Skip download of playwright for docs @oliviertassinari
- [CHANGELOG] Polish @oliviertassinari
Core
- [core] Automation for duplicate issues (#878) @oliviertassinari
- [core] Replace commander with yargs (#872) @dependabot-preview
- [core] Update monorepo (#884) @oliviertassinari
v4.0.0-alpha.17
Jan 14, 2021
Big thanks to the 4 contributors who made this release possible. Here are some highlights ✨:
-
🎛 Add support for Column selector (#837) @DanailH @dtassone.
The feature can be triggered from the toolbar or the column menu. Check the documentation. -
🐛 A focus on fixing regressions from previous releases refactoring and bugs.
@material-ui/[email protected] / @material-ui/[email protected]
- [DataGrid] Fix
onPageChange
firing too often (#838) @dtassone - [DataGrid] Fix behavior of the
hideFooter
prop (#846) @dtassone - [DataGrid] Fix the display logic for "error messages" (#843) @dtassone
- [DataGrid] Fix wrong initial sort order (#841) @dtassone
- [DataGrid] Remove tslib dependency from packages (#832) @oliviertassinari
Docs
- [docs] Add docs for data grid column selector (#837) @DanailH
- [docs] Clarify feature split between pro and premium (#779) @oliviertassinari
Core
v4.0.0-alpha.15
Jan 7, 2021
Big thanks to the 2 contributors who made this release possible. Here are some highlights ✨:
- 🔗 Update peer dependencies for React 17 (#814) @DanailH
- 🐛 Fix keyboard event collisions inside DataGrid cells (#794) @DanailH
@material-ui/[email protected] / @material-ui/[email protected]
Docs
Core
- [core] Update peer dependencies for React 17 (#814) @DanailH
- [core] Batch small changes (#800) @oliviertassinari
- [CHANGELOG] Use the format of the main repository @oliviertassinari
v4.0.0-alpha.14
Dec 31, 2020
Big thanks to the 5 contributors who made this release possible. Here are some highlights ✨:
-
🌎 Add support for internationalization (#718) @DanailH
You can use the
localeText
prop to provide custom wordings in the data grid.
Check the documentation for a demo. -
📚 Start documenting the filtering feature 🧪 (#754) @dtassone
The work in progress filtering feature and documentation can be found following this link. Early feedback are welcome.
@material-ui/[email protected] / @material-ui/[email protected]
- [DataGrid] Convert remaining text to use locale text API (#791) @DanailH
- [DataGrid] Fix column width calculation after data changes (#756) @DanailH
- [DataGrid] Setup internationalization (#718) @DanailH
- [DataGrid] getValueError in valueGetter if incorrect field is supplied (#755) @ZeeshanTamboli
- [XGrid] Fix support for custom class name generators (#793) @DanailH
Docs
- [docs] Polish docs (#778) @oliviertassinari
- [docs] Start documentation for the data grid filter features (#754) @dtassone
- [docs] Sync with docs to fix images (#776) @oliviertassinari
Core
- [test] We don't need to wait 100ms (#773) @oliviertassinari
- [core] Remove useless clone (#757) @oliviertassinari
v4.0.0-alpha.13
Big thanks to the 4 contributors who made this release possible. Here are some highlights ✨:
- 🐛 Fix bugs from recently released features.
- 🧪 Continue the iteration on the data grid filtering feature, soon to be released @dtassone.
@material-ui/[email protected] / @material-ui/[email protected]
- [DataGrid] Fix density prop when toolbar is hidden (#717) @DanailH
- [DataGrid] Fix row cells leaking CSS 'text-align' from parent (#728) @ZeeshanTamboli
- [DataGrid] Add 'nonce' prop to allow inline style if user has CSP (#724) @ZeeshanTamboli
Docs
- [docs] Add missing props to DataGrid and XGrid api pages (#721) @DanailH
- [docs] Fix wrong link anchor @oliviertassinari
- [docs] Proxy production version @oliviertassinari
Core
- [security] Bump ini from 1.3.5 to 1.3.7 (#719) @dependabot-preview
- [core] Update monorepository (#725) @oliviertassinari
- [test] Polish refactor (#723) @oliviertassinari
- [test] Split data grid tests in multiple files (#722) @dtassone
- [test] Add tests for DataGrid filtering feature (#715) @dtassone
v4.0.0-alpha.12
Big thanks to the 6 contributors who made this release possible. Here are some highlights ✨:
- 🔍 Add a new data grid density selector feature (#606) @DanailH.
- 💄 A first iteration on the data grid's toolbar.
- 🧪 Continue the iteration on the data grid filtering feature, soon to be released @dtassone.
@material-ui/[email protected] / @material-ui/[email protected]
Changes
- [DataGrid] Add Density selector (#606) @DanailH
- [DataGrid] Fix swallowing of keyboard events (#673) @DanailH
- [DataGrid] Fix collision with react-virtualized on detectElementResize (#678) @tifosiblack
- [DataGrid] Fix component name, rm context, refact gridComponent (#707) @dtassone
- [DataGrid] Fix infinite loop with multiple grid, and fix performance (#679) @dtassone
- [DataGrid] Fix keyboard navigation in column picker (#674) @oliviertassinari
- [DataGrid] Fix server-side sorting (#704) @akandels
- [DataGrid] Improve the DX of popups (#686) @oliviertassinari
- [DataGrid] Refactor cols (#682) @dtassone
- [DataGrid] Rename hideToolbar prop to showToolbar (#706) @DanailH
- [DataGrid] Prepare server filters (#649) @dtassone
- [DataGrid] Fix display of selected rows in footer (#676) @oliviertassinari
Docs
- [docs] Enable codesandbox preview in PRs (#613) @oliviertassinari
Core
- [core] Batch small changes (#683) @oliviertassinari
- [test] Add regression test (#705) @oliviertassinari
- [test] Allow running all the tests in strict mode (#684) @oliviertassinari
v4.0.0-alpha.11
Big thanks to the 8 contributors who made this release possible. Here are some highlights ✨:
- 🐛 Fix bugs from recently released features.
- 🧪 Iterate on the upcoming filtering feature under an undocumented prop.
@material-ui/[email protected] / @material-ui/[email protected]
Breaking changes
-
[XGrid] Rows refactoring, flatten RowModel, remove RowData (#668) @dtassone
These changes simplify the API and avoid confusion between
RowData
andRowModel
.
Now we only have RowModel which is a flat object containing an id and the row data. It is the same object as the items of therows
prop array.The API to change update the rows using apiRef has changed:
-apiRef.current.updateRowDate() +apiRef.current.updateRows()
-apiRef.current.setRowModels() +apiRef.current.setRows()
apiRef.current.updateRowModels
has been removed, please useapiRef.current.updateRows
.
Changes
- [DataGrid] Fix server-side pagination (#639) @dtassone
- [DataGrid] Fix flex columns not taking into account "checkboxSelection" prop @DanailH
- [DataGrid] First iteration on filtering, basic support (#411) @dtassone
- [DataGrid] Improve filters (#635) @dtassone
- [DataGrid] Fix filters on rendering new rows (#642) @dtassone
- [DataGrid] Fix filters flex-shrink (#664) @oliviertassinari
Docs
- [docs] Data Grid depends on side effects (#666) @oliviertassinari
- [docs] Clarify the purpose of x-grid-data-generator (#634) @Elius94
- [docs] Data Grid is in the lab (#612) @oliviertassinari
- [docs] Fix Demo app, downgrade webpack-cli, known issue in latest version (#647) @dtassone
- [docs] Fix typo in columns.md @stojy
- [docs] Reduce confusion on /export page (#646) @SerdarMustafa1
Core
- [core] Introduce a feature toggle (#637) @oliviertassinari
- [core] Remove gitHead (#669) @oliviertassinari
- [core] Remove react-select (#658) @dependabot-preview
- [core] Replace Storybook knobs for args (#601) @tooppaaa
- [core] Update to Material-UI v4.11.1 (#636) @oliviertassinari