MUI X: Build complex and data-rich applications using a growing list of advanced React components, like the Data Grid, Date and Time Pickers, Charts, and more!
The Pro plan is receiving two new packages:
@mui/x-tree-view-pro
(available today!)@mui/x-charts-pro
(available in the coming weeks)As always, every feature released as part of the MIT plan will remain free and MIT licensed forever.
This expansion of the Pro plan comes with some adjustments to our pricing strategy. Learn more about those in the Upcoming changes to MUI X pricing in 2024 blog post.
We'd like to offer a big thanks to the 12 contributors who made this release possible. Here are some highlights β¨:
π Introduce item reordering using drag and drop on the RichTreeViewPro
component
π¦ Support Common JS bundle out of the box on @mui/x-charts
by adding vendored D3 dependencies.
This modifies how the package imports D3.js. It will impact you if you use d3
packages installed by @mui/x-charts
and don't have them in your package.json
. You shouldn't be affected otherwise.
For more context, the initial issue is caused by D3 only exporting ESM.
The solution up until now was to export charts with only ESM. But some frameworks are confused by this configuration.
So in order to fix this, we are providing a CJS version of D3.
π Improve Turkish (tr-TR) locale on the Data Grid
π Improve Finnish (fi-FI) locale on the Date and Time Pickers
π Bugfixes
π Documentation improvements
@mui/[email protected]
role=presentation
a11y issue (#13891) @romgrk@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
axisId
prop being allowed in xAxis/yAxis config. Use id
instead. (#13986) @JCQuintasSeriesProvider
to use in filtering (#14026) @JCQuintas@mui/[email protected]
onItemClick
on the Tree View components (#14018) @flaviendelangleisEventTargetInDescendants
(#13982) @flaviendelangleminDate
and maxDate
default
description (#14024) @LukasTyrenderCell
& autogenerated rows (#13879) @romgrkcharts
performance with codspeed (#13952) @JCQuintasvale
action paths
filtering (#14038) @LukasTyPublished by MBilalShafi 3 months ago
We'd like to offer a big thanks to the 18 contributors who made this release possible. Here are some highlights β¨:
Zoom
to be controllable for charts (#13858) @JCQuintas@mui/[email protected]
GridPreferencesPanel
(#13934) @k-rajat19@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
Same changes as in @mui/[email protected]
, plus:
api
object to events (#13893) @pcorpet@mui/[email protected]
@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
ownerState
function to slotProps
typing when available (#13965) @alexfauquetteZoom
to be controllable (#13858) @JCQuintasxAxisKey
/zAxisKey
in favor of xAxisId
/zAxisId
(#13940) @alexfauquette@mui/[email protected]
SparkLineChart
reference not being correctly capitalised (#13960) @duckboy81@mui/material-nextjs
to MUI Core
renovate group (#13966) @LukasTyuseReactVersion
script from the monorepo (#13710) @cherniavskiiPublished by cherniavskii 3 months ago
We'd like to offer a big thanks to the 13 contributors who made this release possible. Here are some highlights β¨:
@mui/[email protected]
gridEditRowsStateSelector
(#13877) @romgrkcolumnResizeStop
event not emitted when column is not resized (#13307) @mateuseapdate
and datetime-local
input types in GridFilterInputMultipleValue
type (#13411) @karudedios@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
Mui-selected
class to TimeClock
meridiem buttons (#13848) @LukasTy@mui/[email protected]
Same changes as in @mui/[email protected]
, plus:
name
prop propagation regression (#13821) @LukasTy@mui/[email protected]
useChartContainerProps
(#13817) @JCQuintasclassName
to root element (#13647) @JCQuintas@mui/[email protected]
useTreeView
hook (#13845) @flaviendelangleprocess.env.NODE_ENV
in production (#13869) @cherniavskiionChange
and onAccept
props (#13543) @flaviendelanglerenovate
group (#13846) @LukasTyimport/prefer-default-export
rule @oliviertassinari...other
and test imports in charts (#13844) @JCQuintasnext
tag for @mui/docs
package bumps (#13813) @LukasTy@mui/docs
dependency (#13760) @LukasTyEventManager
to @mui/x-internals
package (#13815) @flaviendelanglePublished by cherniavskii 3 months ago
We'd like to offer a big thanks to the 1 contributors who made this release possible. Here are some highlights β¨:
@mui/[email protected]
@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
Same changes as in @mui/[email protected]
.
Published by arminmeh 3 months ago
We'd like to offer a big thanks to the 12 contributors who made this release possible. Here are some highlights β¨:
@mui/[email protected]
'standard'
in GridFilterInputMultipleValue
(#13129) @tarunrajputreadonly
on more array props (#13331) @pcorpet@mui/[email protected]
Same changes as in @mui/[email protected]
, plus:
@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
readOnly
flag (#13688) @LukasTy@mui/[email protected]
Same changes as in @mui/[email protected]
, plus:
calendarHeader
slot props propagation (#13780) @LukasTyformat
from given views
(#13743) @LukasTy@mui/[email protected]
LineChart
when using the log
scale (#13791) @alexfauquetteOnSeriesItemClick
documentation (#13761) @tonyhallett@mui/[email protected]
getItemTree
and getItemOrderedChildrenIds
methods to the public API (#13804) @flaviendelangleloading
prop value (#13604) @oliviertassinariDateTimeRangePicker
to the "Commonly used components" demo (#13775) @flaviendelangleDATA_GRID_PROPS_DEFAULT_VALUES
alphabetically (#13783) @oliviertassinariPublished by DanailH 4 months ago
We'd like to offer a big thanks to the 7 contributors who made this release possible. Here are some highlights β¨:
selectItem
and getItemDOMElement
methods to the TreeView component public APIusePickersTranslations
hook public in the pickers component@mui/[email protected]
pagination={undefined}
(#13349) @sai6855@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
usePickersTranslations
hook public (#13657) @flaviendelangle@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
Zoom&Pan
to the Pro charts (unreleased) (#13405) @JCQuintas@mui/[email protected]
selectItem
and getItemDOMElement
methods to the public API (#13485) @flaviendelanglereact_next
workflow in CircleCI (#13360) @cherniavskiijscodeshift-add-imports
package (#13720) @LukasTy@mui/docs
usage (#13713) @LukasTyPublished by michelengelen 4 months ago
We'd like to offer a big thanks to the 2 contributors who made this release possible. Here are some highlights β¨:
@mui/[email protected]
@mui/[email protected]
AdapterDayjs
timezone behavior (#13373) @LukasTy@mui/[email protected]
Same changes as in @mui/[email protected]
.
Published by KenanYusuf 4 months ago
We'd like to offer a big thanks to the 10 contributors who made this release possible. Here are some highlights β¨:
π° Introduce server-side data source for improved server integration in the Data Grid.
Supports server-side pagination, sorting and filtering on plain and tree data, and automatic caching.
To enable, provide a getRows
function to the unstable_dataSource
prop on the Data Grid component.
const dataSource = {
getRows: async (params: GridServerGetRowsParams) => {
const data = await fetch(
`https://api.example.com/data?${new URLSearchParams({
page: params.page,
pageSize: params.pageSize,
sortModel: JSON.stringify(params.sortModel),
filterModel: JSON.stringify(params.filterModel),
}).toString()}`,
);
return {
rows: data.rows,
totalRows: data.totalRows,
};
},
}
<DataGridPro
unstable_dataSource={dataSource}
{...otherProps}
/>
See server-side data documentation for more details.
π Support Date data on the BarChart component
βοΈ Support custom column sort icons on the Data Grid
π±οΈ Support modifying the expansion trigger on the Tree View components
@mui/[email protected]
columnHeaderSortIcon
slot (#13563) @arminmehhideFooter
option is set (#13034) @tarunrajput@mui/[email protected]
Same changes as in @mui/[email protected]
, plus:
@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
Date
data (#13471) @alexfauquette@mui/[email protected]
expansionTrigger
prop (#13533) @noraleonteLuxon
throwOnInvalid
support (#13621) @LukasTy../internals
root (#13633) @JCQuintas\_app
folder with monorepo (#13582) @JanpotPublished by KenanYusuf 4 months ago
We'd like to offer a big thanks to the 2 contributors who made this release possible. Here are some highlights β¨:
@mui/[email protected]
rowCount
part of the state (#12406) @MBilalShafi@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
Same changes as in @mui/[email protected]
.
pnpm
notice (#13577) @LukasTyPublished by arthurbalduini 4 months ago
We'd like to offer a big thanks to the 14 contributors who made this release possible. Here are some highlights β¨:
@mui/[email protected]
@mui/[email protected]
Same changes as in @mui/[email protected]
, plus:
getTreeDataPath
reference (#13519) @cherniavskii@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
Space
key down (#13510) @flaviendelangleonAccept
callback (#13511) @flaviendelangleAdapterDateFnsV3
generated method types (#13464) @alexey-kozlenkovview
behavior (#13552) @LukasTy@mui/[email protected]
Same changes as in @mui/[email protected]
, plus:
@mui/[email protected]
CartesianProvider
to use logic in Pro package (#13531) @JCQuintasPro
versions of regular charts (#13547) @JCQuintasChartContainerPro
for future Zoom changes (#13532) @JCQuintas@mui/[email protected]
useTreeViewId
to the core plugins (#13566) @flaviendelangleuseTreeViewId
(#13579) @flaviendelangleitemId
with escaping characters when using SimpleTreeView
(#13487) @oukunanPickerValidDate
type override (#13476) @flaviendelangle@testing-library/react
dependency (#13478) @LukasTyPublished by arthurbalduini 4 months ago
We'd like to offer a big thanks to the 2 contributors who made this release possible. Here are some highlights β¨:
@mui/[email protected]
Space
(#13516) @flaviendelangleview
behavior (#13559) @LukasTyPublished by LukasTy 4 months ago
We'd like to offer a big thanks to the 12 contributors who made this release possible. Here are some highlights β¨:
@mui/[email protected]
getFilterState
method (#13418) @cherniavskii@mui/[email protected]
Same changes as in @mui/[email protected]
, plus:
@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
ResponsiveChartContainer
(#13398) @alexfauquetteZAxisContextProvider
by default in the ChartContainer
(#13465) @alexfauquette@mui/[email protected]
renderHeader
recipe to the Master Details docs (#13370) @michelengeleneslint-plugin-react-compiler
experimental version and rules (#13415) @JCQuintasTreeItem2
(#13314) @flaviendelanglePublished by michelengelen 5 months ago
We'd like to offer a big thanks to the 9 contributors who made this release possible. Here are some highlights β¨:
@mui/[email protected]
areElementSizesEqual
utility to improve code readability (#13254) @layerok@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
PageUp
and PageDown
editing on letter sections (#13310) @arthurbalduiniAdapterDayjs
timezone behavior (#13362) @LukasTyuseRtl
instead of useTheme
to access direction (#13363) @flaviendelangle@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
Initializable
type and behaviour to allow checking if a complex context has been initialized. (#13365) @JCQuintasxAxis
and yAxis
(#13372) @Valyok26tickInterval
(#13355) @alexfauquettequickFilterValues
(#12919) @michelengelenCSS.escape
for the future @oliviertassinaril10n
action setup (#13382) @LukasTymarked
dependency (#13383) @LukasTy@types/prettier
dependency (#13389) @LukasTydocs/.env.local
to .gitignore
(#13377) @KenanYusufPublished by LukasTy 5 months ago
We'd like to offer a big thanks to the 2 contributors who made this release possible. Here are some highlights β¨:
π Address the @mui/internal-test-utils
added as a direct dependency to @mui/x-data-grid
by mistake.
@mui/[email protected]
@mui/internal-test-utils
to dev dependency (#13318) @LukasTy@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
Same changes as in @mui/[email protected]
.
Published by noraleonte 5 months ago
We'd like to offer a big thanks to the 14 contributors who made this release possible. Here are some highlights β¨:
@mui/[email protected]
GridColumnHeadersProps
(#13229) @cherniavskii@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
Same changes as in @mui/[email protected]
, plus:
@mui/[email protected]
DateBuilderReturnType
when the date is undefined
(#13244) @alexey-kozlenkov@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
@mui/[email protected]
l10n
script execution with arguments (#13297) @LukasTy@mui/material
version used in sandboxes (#13260) @LukasTydescribeTreeView
for keyboard navigation tests on disabled items (#13184) @flaviendelangledescribeTreeView
for remaining items tests (#13262) @flaviendelangleDateRangePosition
type in favor of RangePosition
(#13288) @LukasTyPublished by alexfauquette 5 months ago
We'd like to offer a big thanks to the 2 contributors who made this release possible. Here are some highlights β¨:
@mui/[email protected]
@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
disableOpenPicker
prop behavior (#13221) @LukasTy@mui/[email protected]
Same changes as in @mui/[email protected]
.
Published by alexfauquette 5 months ago
We'd like to offer a big thanks to the 6 contributors who made this release possible. Here are some highlights β¨:
label
to be displayed in BarChart@mui/[email protected]
@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
disableOpenPicker
prop behavior (#13212) @LukasTy@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
label
to be displayed inside bars in BarChart (#12988) @JCQuintasapiRef
methods doc examples (#13193) @flaviendelangleraw-loader
package (#13160) @LukasTyyarn
to pnpm
in PropTypes
comment (#13167) @LukasTydescribeTreeView
for items test (partial) (#12893) @flaviendelangledescribeTreeView
for keyboard selection tests (#13164) @flaviendelangledescribeTreeView
for navigation tests (#12907) @flaviendelangledescribeTreeView
for items rendering edge-case tests (#13168) @flaviendelangletest:coverage:inspect
to allow easier debugging (#13198) @JCQuintasyarn proptypes
vs pnpm proptypes
(#13199) @JCQuintasnx
for lerna tasks (#13166) @LukasTyPublished by flaviendelangle 5 months ago
We'd like to offer a big thanks to the 10 contributors who made this release possible. Here are some highlights β¨:
@mui/[email protected]
rowModesModel
controlled prop (#13056) @Janpot@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
textField
slot placeholder value (#13148) @arthurbalduiniAdapterMomentJalaali
regression (#13144) @LukasTyAdapterDateFnsBase
in Jalali adapters (#13075) @LukasTy@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
trigger=axis
now follow touch on mobile (#13043) @wzdorowaseries.label
property to receive a function with the "location" it is going to be displayed on (#12830) @JCQuintasuseSlotProps
types (#13141) @alexfauquette@mui/[email protected]
@mui/x-date-pickers
imports (#13120) @LukasTySectionTitle
component in the doc (#13139) @alexfauquettePublished by flaviendelangle 5 months ago
We'd like to offer a big thanks to the 2 contributors who made this release possible. Here are some highlights β¨:
@mui/[email protected]
AdapterMomentJalaali
regression (#13150) @LukasTy@mui/[email protected]
Same changes as in @mui/[email protected]
.
Published by romgrk 6 months ago
We'd like to offer a big thanks to the 9 contributors who made this release possible. Here are some highlights β¨:
id
attribute on shortcut items of the Date and Time Pickersdate-fns-jalali
v3 in the Date and Time PickersBarChart
@mui/[email protected]
svg
element (#13028) @oukunan@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
AdapterDateFnsJalaliV3
adapter (#12891) @smmoosaviid
attribute on shortcut items (#12976) @noraleonte@mui/[email protected]
Same changes as in @mui/[email protected]
.
@mui/[email protected]
ChartsGrid
to themeAugmentation
(#13026) @noraleonteBarChart
(#12834) @JCQuintas@mui/[email protected]
TreeItem2
(#12889) @flaviendelangle