We'd like to offer a big thanks to the 10 contributors who made this release possible. Here are some highlights ✨:
- 🎨 Data Grid theming improvements and default background color
- 📚 Documentation improvements
- 🐞 Bugfixes
Special thanks go out to the community contributors who have helped make this release possible:
@k-rajat19, @lauri865, @mateuseap.
Following are all team members who have contributed to this release:
@alexfauquette, @flaviendelangle, @JCQuintas, @KenanYusuf, @MBilalShafi, @romgrk, @arminmeh.
Data Grid
Breaking changes
-
viewportInnerSize.width
now includes pinned columns' widths (fixes recursive loops in updating dimensions <-> columns) -
The Data Grid now has a default background color, and its customization has moved from
theme.mixins.MuiDataGrid
totheme.palette.DataGrid
with the following properties:bg
: Sets the background color of the entire grid (new property)headerBg
: Sets the background color of the header (previously namedcontainerBackground
)pinnedBg
: Sets the background color of pinned rows and columns (previously namedpinnedBackground
)
const theme = createTheme({ - mixins: { - MuiDataGrid: { - containerBackground: '#f8fafc', - pinnedBackground: '#f1f5f9', - }, - }, + palette: { + DataGrid: { + bg: '#f8fafc', + headerBg: '#e2e8f0', + pinnedBg: '#f1f5f9', + }, + }, });
-
The
detailPanels
,pinnedColumns
, andpinnedRowsRenderZone
classes have been removed. -
Return type of the
useGridApiRef()
hook and the type ofapiRef
prop are updated to explicitly include the possibilty ofnull
. In addition to this,useGridApiRef()
returns a reference that is initialized withnull
instead of{}
.Only the initial value and the type are updated. Logic that initializes the API and its availability remained the same, which means that if you could access API in a particular line of your code before, you are able to access it as well after this change.
Depending on the context in which the API is being used, you can decide what is the best way to deal with
null
value. Some options are:- Use optional chaining
- Use non-null assertion operator if you are sure your code is always executed when the
apiRef
is notnull
- Return early if
apiRef
isnull
- Throw an error if
apiRef
isnull
@mui/x-data-grid@8.0.0-alpha.10
- [DataGrid] Fix
renderContext
calculation with scroll bounce / over-scroll (#16297) @lauri865 - [DataGrid] Remove unused classes from
gridClasses
(#16256) @mateuseap - [DataGrid] Add default background color to grid (#16066) @KenanYusuf
- [DataGrid] Add missing style overrides (#16272) @KenanYusuf
- [DataGrid] Add possibility of
null
in the return type of theuseGridApiRef()
hook (#16353) @arminmeh - [DataGrid] Fix header filters keyboard navigation when there are no rows (#16126) @k-rajat19
- [DataGrid] Fix order of
onClick
prop on toolbar buttons (#16356) @KenanYusuf - [DataGrid] Refactor row state propagation (#15627) @lauri865
- [DataGrid] Refactor: create TextField props (#16174) @romgrk
- [DataGrid] Remove outdated warning (#16360) @MBilalShafi
- [DataGrid] Respect width of
iconContainer
during autosizing (#16399) @michelengelen
@mui/x-data-grid-pro@8.0.0-alpha.10
Same changes as in @mui/x-data-grid@8.0.0-alpha.10
, plus:
- [DataGridPro] Fetch new rows only once when multiple models are changed in one cycle (#16101) @arminmeh
- [DataGridPro] Fix the return type of
useGridApiRef
for Pro and Premium packages on React < 19 (#16328) @arminmeh
@mui/x-data-grid-premium@8.0.0-alpha.10
Same changes as in @mui/x-data-grid-pro@8.0.0-alpha.10
.
Date and Time Pickers
Breaking changes
- The component passed to the
field
slot no longer receives theref
,disabled
,className
,sx
,label
,name
,formatDensity
,enableAccessibleFieldDOMStructure
,selectedSections
,onSelectedSectionsChange
andinputRef
props — Learn more - The
MuiPickersPopper
theme entry have been renamedMuiPickerPopper
and some of its props have been removed — Learn more
@mui/x-date-pickers@8.0.0-alpha.10
- [pickers] Clean the internals and the public API of
<PickersPopper />
(#16319) @flaviendelangle - [pickers] Improve the JSDoc of the
PickerContextValue
properties (#16327) @flaviendelangle - [pickers] Move more field props to the context (#16278) @flaviendelangle
- [pickers] Do not close the picker when doing keyboard editing (#16402) @flaviendelangle
@mui/x-date-pickers-pro@8.0.0-alpha.10
Same changes as in @mui/x-date-pickers@8.0.0-alpha.10
.
Charts
Breaking changes
- Replace
legend.position.horizontal
from"left" | "middle" | "right"
to"start" | "center" | "end"
.
This is to align with the CSS values and reflect the RTL ability of the legend component. - The default colors have changed. To keep using the old palette. It is possible to import
blueberryTwilightPalette
from@mui/x-charts/colorPalettes
and set it on thecolors
property of charts. - The
id
property is now optional on thePie
andScatter
data types.
@mui/x-charts@8.0.0-alpha.10
- [charts] Add new
bumpX
andbumpY
curve options (#16318) @JCQuintas - [charts] Move
tooltipGetter
toseriesConfig
(#16331) @JCQuintas - [charts] Move item highligh feature to plugin system (#16211) @alexfauquette
- [charts] Replace
legend.position.horizontal
from"left" | "middle" | "right"
to"start" | "center" | "end"
(#16315) @JCQuintas - [charts] New default colors (#16373) @JCQuintas
- [charts] Make
id
optional onPieValueType
andScatterValueType
(#16389) @JCQuintas
@mui/x-charts-pro@8.0.0-alpha.10
Same changes as in @mui/x-charts@8.0.0-alpha.10
.
Tree View
@mui/x-tree-view@8.0.0-alpha.10
Internal changes.
@mui/x-tree-view-pro@8.0.0-alpha.10
Same changes as in @mui/x-tree-view@8.0.0-alpha.10
.
Docs
- [docs] Improve release documentation (#16321) @MBilalShafi